The Perl Toolchain Summit 2025 Needs You: You can help 🙏 Learn more

#!perl
use strict;
use v5.10;
my $bom = SBOM::CycloneDX->new(spec_version => 1.6);
$bom->metadata->licenses->push(SBOM::CycloneDX::License->new(id => 'Apache-2'));
diag 'CycloneDX 1.6 - Invalid Metadata License', "\n", "$bom";
isnt "$bom", '';
is $bom->spec_version, 1.6;
my @errors = $bom->validate;
isnt scalar @errors, 0;
done_testing();
__DATA__
{
"bomFormat": "CycloneDX",
"specVersion": "1.6",
"serialNumber": "urn:uuid:3e671687-395b-41f5-a30f-a58921a69b79",
"version": 1,
"metadata": {
"licenses": [
{
"license": {
"id": "Apache-2"
}
}
]
},
"components": []
}