From 50fb28ddd950dc69baec974f2a265cff0d93452e Mon Sep 17 00:00:00 2001 From: witchcraze Date: Fri, 22 Nov 2024 15:07:31 +0900 Subject: [PATCH] update dart classifier Signed-off-by: witchcraze --- .../binary/classifier_cataloger_test.go | 22 ++++++++++++++++++ syft/pkg/cataloger/binary/classifiers.go | 6 ++++- .../snippets/dart/2.12.4/linux-amd64/dart | Bin 0 -> 348 bytes .../snippets/dart/3.0.0/linux-arm/dart | Bin 0 -> 348 bytes .../binary/test-fixtures/config.yaml | 15 ++++++++++++ 5 files changed, 42 insertions(+), 1 deletion(-) create mode 100644 syft/pkg/cataloger/binary/test-fixtures/classifiers/snippets/dart/2.12.4/linux-amd64/dart create mode 100644 syft/pkg/cataloger/binary/test-fixtures/classifiers/snippets/dart/3.0.0/linux-arm/dart diff --git a/syft/pkg/cataloger/binary/classifier_cataloger_test.go b/syft/pkg/cataloger/binary/classifier_cataloger_test.go index d477d6e7fab..45ff37652c7 100644 --- a/syft/pkg/cataloger/binary/classifier_cataloger_test.go +++ b/syft/pkg/cataloger/binary/classifier_cataloger_test.go @@ -1067,6 +1067,28 @@ func Test_Cataloger_PositiveCases(t *testing.T) { Metadata: metadata("swipl-binary"), }, }, + { + logicalFixture: "dart/2.12.4/linux-amd64", + expected: pkg.Package{ + Name: "dart", + Version: "2.12.4", + Type: "binary", + PURL: "pkg:generic/dart@2.12.4", + Locations: locations("dart"), + Metadata: metadata("dart-binary"), + }, + }, + { + logicalFixture: "dart/3.0.0/linux-arm", + expected: pkg.Package{ + Name: "dart", + Version: "3.0.0", + Type: "binary", + PURL: "pkg:generic/dart@3.0.0", + Locations: locations("dart"), + Metadata: metadata("dart-binary"), + }, + }, { logicalFixture: "dart/3.5.2/linux-amd64", expected: pkg.Package{ diff --git a/syft/pkg/cataloger/binary/classifiers.go b/syft/pkg/cataloger/binary/classifiers.go index ddd17b26f7f..2eb52408fd9 100644 --- a/syft/pkg/cataloger/binary/classifiers.go +++ b/syft/pkg/cataloger/binary/classifiers.go @@ -458,7 +458,11 @@ func DefaultClassifiers() []Classifier { Class: "dart-binary", FileGlob: "**/dart", EvidenceMatcher: FileContentsVersionMatcher( - `(?m)Dart,GC"\x00(?P[0-9]+\.[0-9]+\.[0-9]+(-[0-9]+(\.[0-9]+)?\.beta)?) `, + // MathAtan[NUL]2.12.4 (stable) + // "%s"[NUL]3.0.0 (stable) + // Dart,GC"[NUL]3.5.2 (stable) + // Dart,GC"[NUL]3.6.0-216.1.beta (beta) + `(?m)\x00(?P[0-9]+\.[0-9]+\.[0-9]+(-[0-9]+(\.[0-9]+)?\.beta)?) `, ), Package: "dart", PURL: mustPURL("pkg:generic/dart@version"), diff --git a/syft/pkg/cataloger/binary/test-fixtures/classifiers/snippets/dart/2.12.4/linux-amd64/dart b/syft/pkg/cataloger/binary/test-fixtures/classifiers/snippets/dart/2.12.4/linux-amd64/dart new file mode 100644 index 0000000000000000000000000000000000000000..1e69fc8156fb9e8b3b4b333488fd40cd1c4c12bd GIT binary patch literal 348 zcmXv~L2AP=5X@PxSO_Hvfgr6VS@JE=YflZmmX)-M1CDKMg*Lyh3hix}8D@58q&s(z zXenaKdF9eUc*8G~d)7OhcMHCBe! zw+&K6lpfjHtfdg!?H0nbF#MefWr92n!}JAJ5(`t|<CO6==CW?mQOQm8$N3 Ky8{D3e*6IKGG&zj literal 0 HcmV?d00001 diff --git a/syft/pkg/cataloger/binary/test-fixtures/classifiers/snippets/dart/3.0.0/linux-arm/dart b/syft/pkg/cataloger/binary/test-fixtures/classifiers/snippets/dart/3.0.0/linux-arm/dart new file mode 100644 index 0000000000000000000000000000000000000000..6377f28030fb5d5b9b9a8c2ebf65358e4ebb75f5 GIT binary patch literal 348 zcmXv~%WA_g5X{+Mu{abGsKZK@w2~pG_S#c>FOs}U46+?;g*Ja*L)+s#7-nYjBX`jI zrBriDE0+$WBjb>&%+sY@I}j49bsBCrF7H<_wdsJ+`DC>Bt!5H}qG4%>r420w=X_8? z1i?xt$Idz4B2|w`lQu#bZK^b6{tq*oH})u!(5Y8sduffZ6s@w(rNG!)VxyDi7?cx< zQq(=StRpH)ma1yM-$Qs5hQFFnW=M0+^A~JV1@+Tf@A4ddW;p+%_Jk*d!&-dEe1yZt z^$u_T0SZubLUf2AQMS+^As%6#pw7c||NivLSnukguXjyThLJaxo3$+L$Msyl%;RmF KwmiRXkNyDFI%2H= literal 0 HcmV?d00001 diff --git a/syft/pkg/cataloger/binary/test-fixtures/config.yaml b/syft/pkg/cataloger/binary/test-fixtures/config.yaml index 22c9948c901..1b0723314e3 100644 --- a/syft/pkg/cataloger/binary/test-fixtures/config.yaml +++ b/syft/pkg/cataloger/binary/test-fixtures/config.yaml @@ -78,6 +78,21 @@ from-images: paths: - /usr/lib/swipl/bin/x86_64-linux/swipl + - version: 2.12.4 + images: + - ref: dart:2.12.4-sdk@sha256:0da5d8c9727f5b90e585bcc55a078d981029f4e13044f206299e00f23993a4a8 + platform: linux/amd64 + + paths: + - /usr/lib/dart/bin/dart + + - version: 3.0.0 + images: + - ref: dart:3.0.0-sdk@sha256:67708c6011199d59336bf6cd0f9e618e55dd3632c79a43375f5a082795f0b724 + platform: linux/arm + paths: + - /usr/lib/dart/bin/dart + - version: 3.5.2 images: - ref: dart:3.5.2@sha256:1fd62cb5036bdc42de89bdae747683277986639be9b0b0a0751d2c50bbd9441f