Alex Goodman
4c77783461
Re-introduce linux kernel cataloger ( #2526 )
...
* re-add linux kernel cataloger
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
* ensure there is at least a directory or image tag on each task
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
* fix CLI tests to account for kernel finding (+2)
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
---------
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
2024-01-22 16:31:41 +00:00
Dan Luhring
df582e8463
fix: minor cataloger and docs nits ( #2519 )
...
Signed-off-by: Dan Luhring <dluhring@chainguard.dev >
2024-01-19 17:29:47 -05:00
Alex Goodman
3eab5932e5
Deduplicate digests from user configuration ( #2522 )
...
* deduplicate digests from user configuration
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
* backout pointer reciever change on imageSource
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
---------
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
2024-01-19 21:51:55 +00:00
Alex Goodman
b0ab75fd89
Replace core SBOM-creation API with builder pattern ( #1383 )
...
* remove existing cataloging API
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
* add file cataloging config
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
* add package cataloging config
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
* add configs for cross-cutting concerns
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
* rename CLI option configs to not require import aliases later
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
* update all nested structs for the Catalog struct
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
* update Catalog cli options
- add new cataloger selection options (selection and default)
- remove the excludeBinaryOverlapByOwnership
- deprecate "catalogers" flag
- add new javascript configuration
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
* migrate relationship capabilities to separate internal package
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
* refactor golang cataloger to use configuration options when creating packages
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
* create internal object to facilitate reading from and writing to an SBOM
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
* create a command-like object (task) to facilitate partial SBOM creation
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
* add cataloger selection capability
- be able to parse string expressions into a set of resolved actions against sets
- be able to use expressions to select/add/remove tasks to/from the final set of tasks to run
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
* add package, file, and environment related tasks
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
* update existing file catalogers to use nested UI elements
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
* add CreateSBOMConfig that drives the SBOM creation process
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
* capture SBOM creation info as a struct
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
* add CreateSBOM() function
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
* fix tests
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
* update docs with SBOM selection help + breaking changes
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
* fix multiple override default inputs
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
* fix deprecation flag printing to stdout
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
* refactor cataloger selection description to separate object
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
* address review comments
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
* keep expression errors and show specific suggestions only
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
* address additional review feedback
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
* address more review comments
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
* addressed additional PR review feedback
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
* fix file selection references
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
* remove guess language data generation option
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
* add tests for coordinatesForSelection
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
* rename relationship attributes
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
* add descriptions to relationships config fields
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
* improve documentation around configuration options
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
* add explicit errors around legacy config entries
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
---------
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
2024-01-12 17:39:13 -05:00
Alex Goodman
4adfbeb5f0
Generalize UI events for cataloging tasks ( #2369 )
...
* generalize ui events for cataloging tasks
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
* moderate review comments
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
* incorporate review comments
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
* rename cataloger task progress object
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
* migrate cataloger task fn to bus helper
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
---------
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
2023-11-30 16:25:50 +00:00
Alex Goodman
5565bdef0c
Remove the power-user command and related catalogers ( #2306 )
...
* remove the power-user command
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
* remove secrets + classifier catalogers
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
* bump json schema
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
* regenerate json schema
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
---------
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
2023-11-20 15:44:28 +00:00
Alex Goodman
502971a1b2
Add accessPath on Location objects to syft-json output ( #2287 )
...
* add accessPath on Location objects to syft-json output
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
* generate json schema v12.0.1
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
---------
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
2023-11-08 17:05:30 -06:00
Alex Goodman
1aaa644007
Remove MetadataType from core package object and normalize JSON metadataType values ( #1983 )
...
* [wip]
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
* distinct the package metadata functions
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
* remove metadata type from package core model
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
* incorporate review feedback for names
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
* add RPM archive metadata and split parser helpers
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
* clarify the python package metadata type
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
* rename the KB metadata type
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
* break hackage and composer types by use case
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
* linting fix
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
* fix encoding and decoding for syft-json and cyclonedx
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
* bump json schema to 11
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
* update cyclonedx-json snapshots
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
* update cyclonedx-xml snapshots
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
* update spdx-json snapshots
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
* update spdx-tv snapshots
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
* update syft-json snapshots
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
* correct metadata type in stack yaml parser test
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
* fix bom-ref redactor for cyclonedx-xml
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
* add tests for legacy package metadata names
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
* regenerate json schema v11
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
* fix legacy HackageMetadataType reflect type value check
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
* fix linting
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
* packagemetadata discovery should account for type shadowing
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
* fix linting
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
* fix cli tests
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
* bump json schema version to v12
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
* update json schema to incorporate changes from main
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
* add syft-json legacy config option
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
* add tests around v11-v12 json decoding
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
* add docs for SYFT_JSON_LEGACY
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
* rename structs to be compliant with new naming scheme
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
---------
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
2023-10-30 12:12:04 -04:00
Colm O hEigeartaigh
1daf18fee9
feat: Perform case insensitive matching on Java license files ( #2235 )
...
Signed-off-by: Colm O hEigeartaigh <coheigea@apache.org >
2023-10-25 09:51:59 -04:00
Alex Goodman
7392d607b6
Split the sbom.Format interface by encode and decode use cases ( #2186 )
...
* split up sbom.Format into encode and decode ops
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
* update cmd pkg to inject format configs
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
* bump cyclonedx schema to 1.5
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
* redact image metadata from github encoder tests
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
* add more testing around format decoder identify
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
* add test case for format version options
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
* fix cli tests
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
* fix CLI test
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
* [wip] - review comments
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
* keep encoder creation out of post load function
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
* keep decider and identify functions
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
* add a few more doc comments
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
* remove format encoder default function helpers
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
* address PR feedback
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
* move back to streaming based decode functions
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
* with common convention for encoder constructors
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
* fix tests and allow for encoders to be created from cli options
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
* fix cli tests
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
* fix linting
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
* buffer reads from stdin to support seeking
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
---------
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
2023-10-25 13:43:06 +00:00
Alex Goodman
7018573bf7
Remove internal string set ( #2219 )
...
* remove internal string set
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
* incorporate changes from #2227
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
* beef up the pkg.License.Merg() doc string
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
---------
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
2023-10-17 12:52:11 -04:00
Colm O hEigeartaigh and Alex Goodman
144ed725a7
Add additional license filenames ( #2227 )
...
* Add additional license filenames
Signed-off-by: Colm O hEigeartaigh <coheigea@apache.org >
* add comment about the license list being manually updated
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
---------
Signed-off-by: Colm O hEigeartaigh <coheigea@apache.org >
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
Co-authored-by: Alex Goodman <wagoodman@users.noreply.github.com >
2023-10-16 13:20:00 +00:00
Alex Goodman
ef759038f5
Add relationships for dpkg packages ( #2212 )
...
* add relationships for deb packages
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
* update snapshots
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
* bump json schema
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
* small refactor to remove duplicate code
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
---------
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
2023-10-11 08:56:26 -04:00
Christopher Angelo Phillips
30f0686353
chore: update license list to 3.22 ( #2201 )
2023-10-06 10:56:47 -04:00
Stefan Profanter
ec4d595920
feat: add dependency information to conan lockfile parser ( #2131 )
...
Signed-off-by: Stefan Profanter <stefan.profanter@agile-robots.com >
2023-09-15 14:31:08 -04:00
Keith Zantow
a46d12270f
fix: encode and decode FileLicenses and FileContents in Syft JSON ( #2083 )
...
Signed-off-by: Keith Zantow <kzantow@gmail.com >
2023-09-13 16:14:20 -04:00
Keith Zantow and Alex Goodman
2b7a9d0be3
chore: update CLI to CLIO ( #2001 )
...
Signed-off-by: Keith Zantow <kzantow@gmail.com >
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
Co-authored-by: Alex Goodman <wagoodman@users.noreply.github.com >
2023-08-29 15:52:26 -04:00
b03e9c6868
Add registry certificate verification support ( #1734 )
...
* add registry certificate verification support
* replace stereoscope version
* modify go.mod
* pull in stereoscope update
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
* rename registry cert options, add docs, and add test
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
* update to account for changes in anchore/stereoscope#195
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
* fix cli tests
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
---------
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
Co-authored-by: lishituo <24578666@qq.com >
Co-authored-by: Alex Goodman <wagoodman@users.noreply.github.com >
2023-08-29 11:45:20 -04:00
Sirish Bathina
62f689824c
Detect golang boring crypto and fipsonly modules ( #2021 )
...
* Extending build info to include crypto settings
Signed-off-by: Sirish Bathina <sirish@kasten.io >
* Use kasten fork for goversion module
Signed-off-by: Sirish Bathina <sirish@kasten.io >
* go mod tidy
Signed-off-by: Sirish Bathina <sirish@kasten.io >
* change key to GoCryptoSettings and lint fix
Signed-off-by: Sirish Bathina <sirish@kasten.io >
* Addressing feedback
Signed-off-by: Sirish Bathina <sirish@kasten.io >
---------
Signed-off-by: Sirish Bathina <sirish@kasten.io >
2023-08-24 09:49:59 -04:00
Christopher Angelo Phillips
466da7cbda
931: binary cataloger exclusion defaults for ownership by overlap ( #1948 )
...
Fixes #931
PR #1948 introduces a new implicit exclusion for binary packages that overlap by file ownership and have certain characteristics:
1) the relationship between packages is OwnershipByFileOverlap
2) the parent package is an "os" package - see changelog for included catalogers
3) the child is a synthetic package generated by the binary cataloger - see changelog for included catalogers
4) the package names are identical
---------
Signed-off-by: Christopher Phillips <christopher.phillips@anchore.com >
2023-08-08 13:00:52 -04:00
Alex Goodman and manifestori
063e9da65d
Guess unpinned versions in python requirements.txt ( #1966 )
...
* feat: python requirements.txt parsing inclusive
Signed-off-by: manifestori <ori@manifestcyber.com >
* refactor: parseVersion
Signed-off-by: manifestori <ori@manifestcyber.com >
* add python config for optional requirements version constraint resolution
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* fix tests
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
* allow for python requirements metadata to be optional
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
* restore cyclonedx dependency
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
---------
Signed-off-by: manifestori <ori@manifestcyber.com >
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
Co-authored-by: manifestori <ori@manifestcyber.com >
2023-07-27 14:26:59 -04:00
Alex Goodman
d84120f499
bump JSON schema to account for simplified python env markers ( #1967 )
...
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
2023-07-27 14:13:17 +00:00
Tristan Farkas
e1c1832f84
Add cataloger for Swift Package Manager. ( #1919 )
...
Signed-off-by: Tristan Farkas <Tristan.Farkas@axis.com >
2023-07-25 14:35:21 -04:00
Dan Luhring and Alex Goodman
8478e0bef7
Add support for parsing .NET assemblies ( #1943 )
...
* Add support for parsing .NET assemblies
Signed-off-by: Dan Luhring <dluhring@chainguard.dev >
Former-commit-id: 69c33fe4d77357d843c11590f3b07825bc6249ac
* Add dll and exe files
Signed-off-by: Dan Luhring <dluhring@chainguard.dev >
Former-commit-id: b9d204efa6d2ef385b5fbb7a59a3474ecabea641
* Add PE cataloger to directory catalogers
Signed-off-by: Dan Luhring <dluhring@chainguard.dev >
Former-commit-id: 9711c00d9da92e2887e0c1f92edd740ea5345849
* Don't set language to dotnet for PEs
Signed-off-by: Dan Luhring <dluhring@chainguard.dev >
Former-commit-id: 368313fddac9160d8a06a01ebe8c5ac7990232f5
* Fix spelling of cataloger in constructor
Signed-off-by: Dan Luhring <dluhring@chainguard.dev >
Former-commit-id: e42fd77b2f8b6d42e076a84f6cce386861260941
* Adjust which cases in PE parsing return errors
Signed-off-by: Dan Luhring <dluhring@chainguard.dev >
Former-commit-id: 95b25f8fc3a7d4e18fe30e489b09851f316795ff
* remove build binary from branch
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
Former-commit-id: fa54c0d0aef0998d5520e9f44cae51f5f9cd38a2
* Fix failing CLI tests
Signed-off-by: Dan Luhring <dluhring@chainguard.dev >
---------
Signed-off-by: Dan Luhring <dluhring@chainguard.dev >
Co-authored-by: Alex Goodman <wagoodman@users.noreply.github.com >
2023-07-19 15:34:07 -04:00
Christopher Angelo Phillips
72616db81f
fix: "or-later" suffix updated to consider deprecated "+" operator ( #1907 )
...
* fix: or-later suffix has been updated to consider deprecated +
If a given license has the suffix "or-later" it previously could have
been considered or represented with a "+". Example "GFDL-1.0-or-later"
could have been represented as "GFDL-1.0+". This PR allows the license
list generation to consider "or-later" as == to "+" when generating
permutations for upgrading deprecated licenses.
---------
Signed-off-by: Christopher Phillips <christopher.phillips@anchore.com >
2023-07-11 16:21:29 +00:00
Avi Deitcher and Keith Zantow
4ab9f393fc
feat: CLI flag for directory base ( #1867 )
...
Signed-off-by: Avi Deitcher <avi@deitcher.net >
Signed-off-by: Keith Zantow <kzantow@gmail.com >
Co-authored-by: Keith Zantow <kzantow@gmail.com >
2023-07-10 13:36:41 -04:00
Alex Goodman
f8b832e6c3
Switch UI to bubbletea ( #1888 )
...
* add bubbletea UI
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* swap pipeline to go 1.20.x and add attest guard for cosign binary
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
* update note in developing.md about the required golang version
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
* fix merge conflict for windows path handling
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
* temp test for attest handler
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
* add addtional test iterations for background reader
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
---------
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
2023-07-06 09:00:46 -04:00
Alex Goodman
cfbb9f703b
add file source digest support ( #1914 )
...
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
2023-07-05 13:47:13 -04:00
Alex Goodman
4da3be864f
Refactor source API ( #1846 )
...
* refactor source API and syft json source block
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* update source detection and format test utils
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* generate list of all source metadata types
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
* extract base and root normalization into helper functions
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
* preserve syftjson model package name import ref
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
* alias should not be a pointer
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
---------
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com >
2023-06-30 14:19:16 +00:00
Keith Zantow
631d50d038
chore: update SPDX license list to 3.21 ( #1885 )
2023-06-20 15:47:02 +00:00
Christopher Angelo Phillips and guoguangwu
f07581f504
Pr 1825 ( #1865 )
...
chore: code cleanup
Signed-off-by: guoguangwu <guoguangwu@magic-shield.com >
---------
Signed-off-by: guoguangwu <guoguangwu@magic-shield.com >
Signed-off-by: Christopher Phillips <christopher.phillips@anchore.com >
Co-authored-by: guoguangwu <guoguangwu@magic-shield.com >
2023-06-05 17:01:00 +00:00
Keith Zantow
79a955b1a9
feat: source-version flag ( #1859 )
2023-06-05 10:36:34 -04:00
James Neate
c69cdd9f4a
feat: add scope to pom properties ( #1779 )
...
* feat: add scope to pom properties
Signed-off-by: James Neate <jamesmneate@gmail.com >
* fix: fixed conflict with schema bump
Signed-off-by: James Neate <jamesmneate@gmail.com >
---------
Signed-off-by: James Neate <jamesmneate@gmail.com >
2023-06-01 12:22:29 +00:00
Alex Goodman
07e76907f6
Migrate location-related structs to the file package ( #1751 )
...
* migrate location structs to file package
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* replace source.Location refs with file package call
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* fix linting
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* remove hardlink test for file based catalogers
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* remove hardlink test for all-regular-files testing
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* migrate file resolver implementations to separate package
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* fix linting
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* [wip] migrate resolvers to internal
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* migrate resolvers to syft/internal
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
---------
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
Signed-off-by: <>
2023-05-24 17:06:38 -04:00
Christopher Angelo Phillips
42fa9e4965
feat: update syft license concept to complex struct ( #1743 )
...
this PR makes the following changes to update the underlying license model to have more expressive capabilities
it also provides some guarantee's surrounding the license values themselves
- Licenses are updated from string -> pkg.LicenseSet which contain pkg.License with the following fields:
- original `Value` read by syft
- If it's possible to construct licenses will always have a valid SPDX expression for downstream consumption
- the above is run against a generated list of SPDX license ID to try and find the correct ID
- SPDX concluded vs declared is added to the new struct
- URL source for license is added to the new struct
- Location source is added to the new struct to show where the expression was pulled from
2023-05-15 16:23:39 -04:00
William Murphy
da3624644a
feat: Add R cataloger ( #1790 )
...
Add a cataloger that detects installed R packages by looking for DESCRIPTION
files. The base R package is now picked up in coverageImage tests in
test/cli/packages_cmd_test.go, so increment expected package counts for the
tests that use that image.
Signed-off-by: Will Murphy <will.murphy@anchore.com >
2023-05-10 12:30:11 -04:00
Shane Dell
a07bfe7dfa
Create python requirements metadata ( #1759 )
...
- Create new metadata struct and type for python requirements.
- Update parsing of python requirements to use python requirements metadata.
- Remove extras and url from line. Add them to metadata instead.
- Add unit test to test that extras are removed from package name.
- Update test to look at requirements metadata.
- Will need updated in future to support more than just == for the version constraint.
- Update JSON schema data
Closes anchore/grype#1246
Closes anchore/grype#1251
Signed-off-by: Shane Dell <shanedell100@gmail.com >
2023-04-27 09:04:30 -04:00
b69259534d
feat: Support scanning license files in golang packages over the network ( #1630 )
...
Signed-off-by: Avi Deitcher <avi@deitcher.net >
Signed-off-by: Keith Zantow <kzantow@gmail.com >
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
Co-authored-by: Keith Zantow <kzantow@gmail.com >
Co-authored-by: Alex Goodman <alex.goodman@anchore.com >
2023-04-14 15:13:29 -04:00
Alex Goodman
44422853be
Add package-to-file location evidence relationships ( #1698 )
...
* add evident-by relationship
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* wire up evident-by relationship geneation
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* handle evident-by relationship in spdx formats
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* fix decoding file info for syft json format
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* bump json schema to incorporate file size attribute
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* refactor to create relationships for primary evidence only
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* fix linting
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* remove unused 7.0.2 json schema
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
---------
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
2023-04-14 15:08:46 -04:00
Avi Deitcher and Alex Goodman
cc731c7b19
Add Linux Kernel cataloger ( #1694 )
...
* add kernel handler
Signed-off-by: Avi Deitcher <avi@deitcher.net >
* [wip] combine kernel and kernel module cataloging
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* [wip] combine kernel and kernel module cataloging
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
Signed-off-by: Avi Deitcher <avi@deitcher.net >
* rename Kernel package to LinuxKernel package
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* split kernel and module packages within cataloger
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* wire up application configuration with kernel cataloger options
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* dont use references for packages on relationships
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* fix linting and tests
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* kernel cataloger should be resistent to partial failure
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* log upon kernel module metadata missing
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* add tests for linux kernel cataloger
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* update integration tests
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* update cli package test counts
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* add evidence annotations for kernel packages
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* reduce noise in cli test output
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* missed cli test to reduce noise for
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* fix package counts
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* update docs with linux kernel cataloging refs
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* bump json schema with new metadata fields
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
---------
Signed-off-by: Avi Deitcher <avi@deitcher.net >
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
Signed-off-by: <>
Co-authored-by: Alex Goodman <alex.goodman@anchore.com >
2023-04-14 14:33:36 -04:00
Alex Goodman
5d156b8241
Add annotations for evidence on package locations ( #1723 )
...
* add location annotations + deb evidence annotations
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* rename LocationData struct and Annotation helper function
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* add failing integration test for evidence coverage
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* add evidence to aplm cataloger locations
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* change location annotation helper to return a location copy
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* add evidence to binary cataloger locations
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* updated remaining catalogers with location annotations
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* fix unit tests
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* fix linting
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* bump json schema
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* partial addressing of review comments
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* rename location.WithAnnotation
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
---------
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
2023-04-13 17:02:29 -04:00
7464079a09
Add Nix cataloger ( #1696 )
...
* Add Basic Nix Cataloger
Signed-off-by: Julio Tain Sueiras <juliosueiras@gmail.com >
* Update nix def for the latest syft definition
Signed-off-by: Julio Tain Sueiras <juliosueiras@gmail.com >
* capture nix package files on pkg.NixStoreMetadata
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* fix unit tests and linting
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* update JSON schema
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* address review comments
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* Update syft/pkg/cataloger/nix/parse_nix_store_path_test.go
Co-authored-by: Florian Klink <flokli@flokli.de >
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* support unstable version conventions
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* update json schema relative to main branch
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* update syft json with v7.1.1 schema
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* fix CLI tests
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* remove extra continue statement
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* add Nix to list of supported ecosystems
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
---------
Signed-off-by: Julio Tain Sueiras <juliosueiras@gmail.com >
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
Co-authored-by: Julio Tain Sueiras <juliosueiras@gmail.com >
Co-authored-by: Florian Klink <flokli@flokli.de >
2023-04-04 10:53:56 -04:00
Alex Goodman
681d250fdc
Capture file ownership relationships from portage ecosystem ( #1702 )
...
* add portage as file owners
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* fix tests
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* fix linting
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* update json schema with NPM files
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
---------
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
2023-04-03 09:46:18 -04:00
Christopher Angelo Phillips
dfcc07e512
feat: Add config option to allow user to select the default image source location
...
Signed-off-by: Christopher Phillips <christopher.phillips@anchore.com >
2023-03-31 10:04:10 -04:00
Christopher Angelo Phillips
f473bb75a8
1577 spdxlicense generate ( #1691 )
...
Update the license_list.go to have more permissible inputs for greater SPDXID matching.
EX:
GPL3 gpl3 gpl-3 and GPL-3 can all map to GPL-3.0-only
By moving all strings to lower and removing the "-" we're able to return valid SPDX license ID for a greater diversity of input strings.
---------
Signed-off-by: Christopher Phillips <christopher.phillips@anchore.com >
2023-03-23 11:48:24 -04:00
Avi Deitcher and Keith Zantow
9fd532246a
feat: scan local go mod cache for licenses of golang packages ( #1645 )
...
Signed-off-by: Avi Deitcher <avi@deitcher.net >
Co-authored-by: Keith Zantow <kzantow@gmail.com >
2023-03-23 10:38:15 -04:00
Alex Goodman
100cf1003d
Remove more side effects from application config testing ( #1684 )
...
* remove a few side effects from config testing
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* fix xdg config app name prefix
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* account for restoring and protecting xdg state throughout testing
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
---------
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
2023-03-20 20:53:45 +00:00
Aidan Delaney and Christopher Phillips
f11a7b5e9f
Deprecate config.yaml as valid config source; Add unit regression for correct config paths ( #1640 )
...
Warn user of future deprecation of ./config.yaml for v1.0.0 release
---------
Signed-off-by: Aidan Delaney <adelaney21@bloomberg.net >
Signed-off-by: Christopher Phillips <christopher.phillips@anchore.com >
Co-authored-by: Christopher Phillips <christopher.phillips@anchore.com >
2023-03-20 15:13:35 -04:00
anchore-actions-token-generator[bot]
434aa7fd46
chore: Update syft bootstrap tools to latest versions. ( #1682 )
...
Signed-off-by: Keith Zantow <kzantow@gmail.com >
2023-03-20 13:20:48 -04:00
Benji Visser
9e953b1da3
feat: add support for SUPPORT_END in /etc/os-release ( #1612 )
...
Signed-off-by: Benji Visser <benji@093b.org >
2023-02-27 13:43:19 -05:00