summaryrefslogtreecommitdiffabout
path: root/lib/SlackBuild
authorSergey Poznyakoff <gray@gnu.org.ua>2019-03-20 08:19:18 (GMT)
committer Sergey Poznyakoff <gray@gnu.org.ua>2019-03-20 08:19:18 (GMT)
commita6040f631367a33f4e96759ce6ceefb759303f25 (patch) (side-by-side diff)
tree41f2add536a02ae1ae3be70143c47d6d661924c0 /lib/SlackBuild
parent023d027a1a0f5e227bd251d281ea65bb98accd5d (diff)
downloadslackbuilder-a6040f631367a33f4e96759ce6ceefb759303f25.tar.gz
slackbuilder-a6040f631367a33f4e96759ce6ceefb759303f25.tar.bz2
Use YAML format for requests
Both JSON and YAML are now supported. * lib/SlackBuild/Request/Auto.pm (req): Parse YAML requests. Guess if the file is JSON or YAML by its first character. Valid JSON requests start with a curly brace.
Diffstat (limited to 'lib/SlackBuild') (more/less context) (ignore whitespace changes)
-rw-r--r--lib/SlackBuild/Request/Auto.pm6
1 files changed, 5 insertions, 1 deletions
diff --git a/lib/SlackBuild/Request/Auto.pm b/lib/SlackBuild/Request/Auto.pm
index 08832d6..576d39d 100644
--- a/lib/SlackBuild/Request/Auto.pm
+++ b/lib/SlackBuild/Request/Auto.pm
@@ -6,6 +6,7 @@ use File::Basename;
use File::Spec;
use Net::SBo;
use JSON;
+use YAML;
use Carp;
sub req {
@@ -17,7 +18,10 @@ sub req {
open(my $fd, $reqname) or croak "can't open file $reqname: $!";
my $string = <$fd>;
close $fd;
- return decode_json($string);
+ if ($string =~ /^\{/) {
+ return decode_json($string);
+ }
+ return YAML::Load($string);
}
if (-d $reqname) {

Return to:

Send suggestions and report system problems to the System administrator.