Releases: kubernetes-sigs/bom
v0.7.1
v0.7.0
Changes by Kind
Feature
- Added
-f/--findcommand line argument to thedocument outlinecommand. This filters the output to only show queried nodes and nodes and nodes directly on the path there from the root node. (#532, @zeb33n)
Failing Test
- Bom now supports the spdx license list's new versioning scheme with a patch number in the license tag. (#462, @puerco)
Bug or Regression
- Cache filenames generated by the license downloader will now be derived from a SHA256 digest of the URL, rather than the URL itself + SHA256("") (#524, @mcsaucy)
Other (Cleanup or Flake)
- Builder image updated to
latest-go1.22-bookworm(#414, @puerco) - Group dependabot updates
- HTTP requests are now done using the HTTP agent from
sigs.k8s.io/release-utils(#464, @puerco) - Update cloudbuild job to use go1.24 and fix deprecated field (#539, @cpanato)
- Update license data to v3.23 (#401, @cpanato)
- Update license data to v3.24.0 (#437, @cpanato)
Dependencies
Added
- github.com/avast/retry-go/v4: v4.6.1
- github.com/containerd/errdefs/pkg: v0.3.0
- github.com/containerd/errdefs: v1.0.0
- github.com/containerd/log: v0.1.0
- github.com/distribution/reference: v0.6.0
- github.com/fatih/color: v1.15.0
- github.com/felixge/httpsnoop: v1.0.4
- github.com/go-logr/stdr: v1.2.2
- github.com/keybase/go-keychain: v0.0.1
- github.com/mattn/go-colorable: v0.1.13
- github.com/moby/docker-image-spec: v1.3.1
- github.com/moby/sys/atomicwriter: v0.1.0
- github.com/olekukonko/errors: v1.1.0
- github.com/olekukonko/ll: v0.0.9
- github.com/olekukonko/ts: 78ecb04
- github.com/rivo/uniseg: v0.2.0
- github.com/santhosh-tekuri/jsonschema/v5: v5.3.1
- go.opentelemetry.io/auto/sdk: v1.1.0
- go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp: v0.61.0
- go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp: v1.33.0
- go.opentelemetry.io/otel/metric: v1.36.0
- go.opentelemetry.io/otel/trace: v1.36.0
- go.opentelemetry.io/otel: v1.36.0
- go.yaml.in/yaml/v2: v2.4.2
- go.yaml.in/yaml/v3: v3.0.4
- golang.org/x/telemetry: 1a19826
- sigs.k8s.io/randfill: v1.0.0
- sigs.k8s.io/yaml: v1.6.0
Changed
- cloud.google.com/go/compute/metadata: v0.2.3 → v0.7.0
- github.com/Azure/go-ansiterm: d185dfc → faa5f7b
- github.com/Masterminds/semver/v3: v3.2.1 → v3.3.1
- github.com/Microsoft/go-winio: v0.6.1 → v0.6.2
- github.com/ProtonMail/go-crypto: 3c4c8a2 → v1.1.6
- github.com/cloudflare/circl: v1.3.3 → v1.6.1
- github.com/containerd/stargz-snapshotter/estargz: v0.14.3 → v0.16.3
- github.com/cpuguy83/go-md2man/v2: v2.0.3 → v2.0.7
- github.com/cyphar/filepath-securejoin: v0.2.4 → v0.4.1
- github.com/danieljoos/wincred: v1.1.2 → v1.2.2
- github.com/docker/cli: v24.0.0+incompatible → v28.2.2+incompatible
- github.com/docker/distribution: v2.8.2+incompatible → v2.8.3+incompatible
- github.com/docker/docker-credential-helpers: v0.7.0 → v0.9.3
- github.com/docker/docker: v24.0.0+incompatible → v28.2.2+incompatible
- github.com/docker/go-connections: v0.4.0 → v0.5.0
- github.com/elazarl/goproxy: 2592e75 → v1.7.2
- github.com/gliderlabs/ssh: v0.3.5 → v0.3.8
- github.com/go-git/go-billy/v5: v5.5.0 → v5.6.2
- github.com/go-git/go-git/v5: v5.11.0 → v5.16.2
- github.com/go-logr/logr: v0.1.0 → v1.4.3
- github.com/golang/groupcache: 41bb18b → 2c02b82
- github.com/golang/protobuf: v1.5.3 → v1.5.2
- github.com/google/go-cmp: v0.6.0 → v0.7.0
- github.com/google/go-containerregistry: v0.17.0 → v0.20.6
- github.com/google/uuid: v1.5.0 → v1.6.0
- github.com/klauspost/compress: v1.16.5 → v1.18.0
- github.com/knqyf263/go-rpmdb: 067d98b → v0.1.1
- github.com/mattn/go-runewidth: v0.0.9 → v0.0.16
- github.com/maxbrunsfeld/counterfeiter/v6: v6.8.1 → v6.12.0
- github.com/moby/term: v0.5.0 → v0.5.2
- github.com/olekukonko/tablewriter: v0.0.5 → v1.1.0
- github.com/onsi/gomega: v1.30.0 → v1.38.2
- github.com/opencontainers/image-spec: v1.1.0-rc3 → v1.1.1
- github.com/package-url/packageurl-go: v0.1.2 → v0.1.3
- github.com/pjbgf/sha1cd: v0.3.0 → v0.3.2
- github.com/rogpeppe/go-internal: v1.11.0 → v1.14.1
- github.com/sergi/go-diff: v1.2.0 → 5b0b94c
- github.com/skeema/knownhosts: v1.2.1 → v1.3.1
- github.com/spf13/cobra: v1.8.0 → v1.10.1
- github.com/spf13/pflag: v1.0.5 → v1.0.9
- github.com/stretchr/objx: v0.5.0 → v0.5.2
- github.com/stretchr/testify: v1.8.4 → v1.11.1
- github.com/urfave/cli: v1.22.12 → v1.22.16
- github.com/uwu-tools/magex: v0.10.0 → v0.10.1
- github.com/vbatts/tar-split: v0.11.3 → v0.12.1
- gitlab.alpinelinux.org/alpine/go: v0.8.0 → v0.10.1
- golang.org/x/crypto: v0.18.0 → v0.41.0
- golang.org/x/exp: d852ddb → 8a7402a
- golang.org/x/mod: v0.14.0 → v0.28.0
- golang.org/x/net: v0.20.0 → v0.43.0
- golang.org/x/oauth2: v0.8.0 → v0.30.0
- golang.org/x/sync: v0.6.0 → v0.17.0
- golang.org/x/sys: v0.16.0 → v0.36.0
- golang.org/x/term: v0.16.0 → v0.35.0
- golang.org/x/text: v0.14.0 → v0.29.0
- golang.org/x/tools: v0.17.0 → v0.36.0
- google.golang.org/protobuf: v1.30.0 → v1.36.3
- k8s.io/klog/v2: v2.0.0 → v2.80.1
- k8s.io/utils: 3a6ce19 → 0af2bda
- mvdan.cc/sh/v3: v3.7.0 → v3.8.0
- sigs.k8s.io/release-utils: v0.7.7 → v0.12.2
Removed
- cloud.google.com/go/compute: v1.19.3
- github.com/BurntSushi/toml: v1.2.1
- github.com/andybalholm/brotli: v1.0.3
- github.com/dsnet/compress: f669936
- github.com/dsnet/golib: 1ea1667
- github.com/golang/snappy: v0.0.3
- github.com/klauspost/cpuid: v1.2.0
- github.com/klauspost/pgzip: v1.2.5
- github.com/mholt/archiver/v3: v3.5.1
- github.com/nwaples/rardecode: v1.1.0
- github.com/pierrec/lz4/v4: v4.1.2
- github.com/spf13/afero:...
v0.6.0
Changes by Kind
Feature
- Add attestation in the release job (#271, @cpanato)
- Added support for scanning images with RPM package managers (#342, @micahhausler)
- Bom now ships with the SPDX license list version v3.21 embedded. (#307, @puerco)
- Improved the query help output, most importantly there is now help for the purl matcher
- New flag
--purlto output purls instead of names - The name matching filter now supports full regexes and not just substring matching
- New pluggable printer interface to output in more formats
- bom document query now can output in JSON and CSV in addition to the usual line printer using
--format - New
--fieldsflag controls which fields of the sbom will be printed on the query output - Piped data on STDIN is now autodetected, you can now pipe an SBOM to
bom document queryand skip the filename (#291, @puerco)
- New flag
- OS Packages now can include an auto-generated download location. Initially supports Debian and Wolfi. (#270, @puerco)
- The
bomjson parser now supports top-level elements specified with aDESCRIBESrelationship to the document.documentDescribesis, of course, still suppoirted - Update license-data to v3.22 (#357, @cpanato)
bomnow supports scanning OS packages from images based on distroless.bomwill now autodetect when STDIN is open to outline an SBOM to avoid specifying it with a dash (#260, @puerco)
Bug or Regression
- Bom will now read the SBOM until it detects the SBOM encoding data, enabling it to parse SBOMs with the document data defined at the end of the file.
- Fixed a race condition where concurrent files canning processes could clash and cause a segfault (thanks to @howardjohn for reporting) (#312, @puerco)
- JSON-encoded files now include supplier and originator data. (#269, @puerco)
Other (Cleanup or Flake)
- Go.mod: Update github.com/uwu-tools/magex to v0.10.0 (#275, @cpanato)
- SPDX packages representing container images are now named using their full reference and digest:
registry.com/repository/image@sha256:digest(#289, @puerco)
Dependencies
Added
- dario.cat/mergo: v1.0.0
- github.com/MakeNowJust/heredoc/v2: v2.0.1
- github.com/cyphar/filepath-securejoin: v0.2.4
- github.com/dustin/go-humanize: v1.0.1
- github.com/elazarl/goproxy: 2592e75
- github.com/glebarez/go-sqlite: v1.22.0
- github.com/go-jose/go-jose/v3: v3.0.0
- github.com/golang/groupcache: 41bb18b
- github.com/google/pprof: e6195bd
- github.com/hashicorp/errwrap: v1.0.0
- github.com/hashicorp/go-multierror: v1.1.1
- github.com/kballard/go-shellquote: 95032a8
- github.com/klauspost/cpuid/v2: v2.2.3
- github.com/knqyf263/go-rpmdb: 067d98b
- github.com/mattn/go-isatty: v0.0.20
- github.com/mattn/go-sqlite3: v1.14.16
- github.com/remyoudompheng/bigfft: 24d4a6f
- github.com/uwu-tools/magex: v0.10.0
- golang.org/x/exp: d852ddb
- golang.org/x/tools/go/vcs: v0.1.0-deprecated
- lukechampine.com/uint128: v1.3.0
- modernc.org/cc/v3: v3.41.0
- modernc.org/ccgo/v3: v3.16.15
- modernc.org/httpfs: v1.0.6
- modernc.org/libc: v1.37.6
- modernc.org/mathutil: v1.6.0
- modernc.org/memory: v1.7.2
- modernc.org/opt: v0.1.3
- modernc.org/sqlite: v1.28.0
- modernc.org/strutil: v1.2.0
- modernc.org/tcl: v1.15.2
- modernc.org/token: v1.1.0
- modernc.org/z: v1.7.3
Changed
- cloud.google.com/go/compute: v1.18.0 → v1.19.3
- github.com/BurntSushi/toml: v0.3.1 → v1.2.1
- github.com/Masterminds/semver/v3: v3.1.1 → v3.2.1
- github.com/Microsoft/go-winio: v0.6.0 → v0.6.1
- github.com/ProtonMail/go-crypto: 7d5c6f0 → 3c4c8a2
- github.com/cloudflare/circl: v1.1.0 → v1.3.3
- github.com/cpuguy83/go-md2man/v2: v2.0.2 → v2.0.3
- github.com/docker/cli: v23.0.1+incompatible → v24.0.0+incompatible
- github.com/docker/distribution: v2.8.1+incompatible → v2.8.2+incompatible
- github.com/docker/docker: v23.0.1+incompatible → v24.0.0+incompatible
- github.com/go-git/gcfg: v1.5.0 → 3a3c614
- github.com/go-git/go-billy/v5: v5.4.1 → v5.5.0
- github.com/go-git/go-git-fixtures/v4: v4.3.1 → 55a9409
- github.com/go-git/go-git/v5: v5.6.1 → v5.11.0
- github.com/google/go-cmp: v0.5.9 → v0.6.0
- github.com/google/go-containerregistry: v0.14.0 → v0.17.0
- github.com/google/uuid: v1.3.0 → v1.5.0
- github.com/in-toto/in-toto-golang: v0.7.0 → v0.9.0
- github.com/klauspost/compress: v1.16.0 → v1.16.5
- github.com/kr/pretty: v0.3.0 → v0.3.1
- github.com/magefile/mage: v1.14.0 → v1.15.0
- github.com/maxbrunsfeld/counterfeiter/v6: v6.6.1 → v6.8.1
- github.com/moby/term: 3f7ff69 → v0.5.0
- github.com/onsi/gomega: v1.26.0 → v1.30.0
- github.com/opencontainers/image-spec: v1.1.0-rc2 → v1.1.0-rc3
- github.com/package-url/packageurl-go: d704593 → v0.1.2
- github.com/rogpeppe/go-internal: v1.8.1 → v1.11.0
- github.com/secure-systems-lab/go-securesystemslib: v0.5.0 → v0.6.0
- github.com/sirupsen/logrus: v1.9.0 → v1.9.3
- github.com/skeema/knownhosts: v1.1.0 → v1.2.1
- github.com/spf13/cobra: v1.6.1 → v1.8.0
- github.com/spiffe/go-spiffe/v2: v2.1.2 → v2.1.3
- github.com/stretchr/testify: v1.8.2 → v1.8.4
- github.com/urfave/cli: v1.22.4 → v1.22.12
- github.com/vbatts/tar-split: v0.11.2 → v0.11.3
- gitlab.alpinelinux.org/alpine/go: v0.6.0 → v0.8.0
- golang.org/x/crypto: v0.6.0 → v0.18.0
- golang.org/x/mod: v0.9.0 → v0.14.0
- golang.org/x/net: v0.8.0 → v0.20.0
- golang.org/x/oauth2: v0.6.0 → v0.8.0
- golang.org/x/sync: v0.1.0 → v0.6.0
- golang.org/x/sys: v0.6.0 → v0.16.0
- golang.org/x/term: v0.6.0 → v0.16.0
- golang.org/x/text: v0.8.0 → v0.14.0
- golang.org/x/tools: v0.7.0 → v0.17.0
- golang.org/x/xerrors: 5ec99f8 → 104605a
- google.golang.org/genproto: 76db087 → 637eb22
- google.golang.org/grpc: v1.53.0 → v1.54.0
- google.golang.org/protobuf: v1.29.0 → v1.30.0
- mvdan.cc/sh/v3: v3.5.1 → v3.7.0
- sigs.k8s.io/release-utils: 2b998c6 → v0.7.7
Removed
v0.5.1
v0.5.0
Changes by Kind
Feature
- -
bomnow embeds the latest SPDX license list. This avoids pulling the license list from the internet, speeding up SBOM generation - Bom will now correctly register in the SBOM the license list it used to scan code to detect licenses
- Bom will now generate package listings out of apk-based systems (alpine and wolfi) (#224, @puerco)
- Replace the registry with cgr.dev (#199, @developer-guy)
- The license list downloader now cached the license list zip file
- Upgrade to go1.20 (#250, @cpanato)
bom document outlinenow displays version numbers along package names by default. This can be turned off with--version=false
Documentation
- Corrected the go install instructions to install the latest version (#252, @puerco)
- Updated the readme to show up to date features
Bug or Regression
- Fixed a bug where SBOMs were not ingested when the supplier of a package was
NOASSERTION. (#203, @puerco) - Fixed a bug where bom would crash when outlining an SBOM containing files at the top level of the document.. (#190, @puerco)
- Fixed a bug where the license downloader was always returning nil data leading to licenses not being detected. (#241, @puerco)
- Fixed a bug where the tool version was not getting included in the document creator info. The new Creator field has the app name, version tag and commit: ``bom-v0.4.1-102-g98baf66 (#242, @puerco)
- Fixed a recursion loop in
spdx.recursiveIDSearchwhich lead to panics when generating sboms describing multiple artifacts. (#244, @puerco)
Other (Cleanup or Flake)
- Fixed a bug where bom would open each file unnecessarily when checksumming (#200, @puerco)
- LicenseDeclared in packages and licenseConcluded in files and packages will now be omitted in SPDX 2.3 documents.
- [API Change] the
PackageVerificationCodein the package JSON types (both in 2.2 and 2.3) has been changed and is now a pointer. This is a breaking change for anything depending on the bom types. This fixes a bug where JSON SBOMs contained an empty package verification code struct. - licenseInfoInFile in both packages and files is now committed from the JSON output when empty. (#243, @puerco)
- [API Change] the
- SBOM ingestion now supports external references with both
PACKAGE-MANAGERandPACKAGE-MANAGERin the category field. Output is always SPDX 2.3 which calls forPACKAGE-MANAGERin the schema. (#221, @puerco)
Uncategorized
- Add checksums binaries (#191, @cpanato)
- Fixed a bug where
bomwould panic when generating an SBOM of an image specified with a digest. (#225, @sbs2001)
Dependencies
Added
- cloud.google.com/go/compute/metadata: v0.2.3
- github.com/MakeNowJust/heredoc: v1.0.0
- github.com/bwesterb/go-ristretto: v1.2.0
- github.com/cloudflare/circl: v1.1.0
- github.com/frankban/quicktest: v1.14.0
- github.com/google/renameio: v1.0.1
- github.com/mmcloughlin/avo: v0.5.0
- github.com/pjbgf/sha1cd: v0.3.0
- github.com/skeema/knownhosts: v1.1.0
- github.com/spiffe/go-spiffe/v2: v2.1.2
- github.com/zeebo/errs: v1.3.0
- gitlab.alpinelinux.org/alpine/go: v0.6.0
- golang.org/x/arch: v0.1.0
- google.golang.org/genproto: 76db087
- google.golang.org/grpc: v1.53.0
- gopkg.in/ini.v1: v1.67.0
- gopkg.in/square/go-jose.v2: v2.6.0
- mvdan.cc/editorconfig: v0.2.0
- mvdan.cc/sh/v3: v3.5.1
- rsc.io/pdf: v0.1.1
Changed
- cloud.google.com/go/compute: v1.10.0 → v1.18.0
- github.com/ProtonMail/go-crypto: 04723f9 → 7d5c6f0
- github.com/acomagu/bufpipe: v1.0.3 → v1.0.4
- github.com/anmitsu/go-shlex: 648efa6 → 38f4b40
- github.com/containerd/stargz-snapshotter/estargz: v0.12.1 → v0.14.3
- github.com/creack/pty: v1.1.9 → v1.1.17
- github.com/docker/cli: v20.10.20+incompatible → v23.0.1+incompatible
- github.com/docker/docker: v20.10.20+incompatible → v23.0.1+incompatible
- github.com/emirpasic/gods: v1.12.0 → v1.18.1
- github.com/gliderlabs/ssh: v0.2.2 → v0.3.5
- github.com/go-git/go-billy/v5: v5.3.1 → v5.4.1
- github.com/go-git/go-git-fixtures/v4: v4.2.1 → v4.3.1
- github.com/go-git/go-git/v5: v5.4.2 → v5.6.1
- github.com/golang/protobuf: v1.5.2 → v1.5.3
- github.com/google/go-containerregistry: v0.12.0 → v0.14.0
- github.com/imdario/mergo: v0.3.12 → v0.3.13
- github.com/in-toto/in-toto-golang: af1f9fb → v0.7.0
- github.com/inconshreveable/mousetrap: v1.0.1 → v1.1.0
- github.com/kevinburke/ssh_config: 4977a11 → v1.2.0
- github.com/klauspost/compress: v1.15.11 → v1.16.0
- github.com/maxbrunsfeld/counterfeiter/v6: v6.5.0 → v6.6.1
- github.com/onsi/gomega: v1.18.1 → v1.26.0
- github.com/secure-systems-lab/go-securesystemslib: v0.3.0 → v0.5.0
- github.com/stretchr/testify: v1.8.1 → v1.8.2
- github.com/xanzy/ssh-agent: v0.3.0 → v0.3.3
- golang.org/x/crypto: v0.1.0 → v0.6.0
- golang.org/x/mod: v0.6.0 → v0.9.0
- golang.org/x/net: v0.1.0 → v0.8.0
- golang.org/x/oauth2: v0.1.0 → v0.6.0
- golang.org/x/sys: v0.1.0 → v0.6.0
- golang.org/x/term: v0.1.0 → v0.6.0
- golang.org/x/text: v0.4.0 → v0.8.0
- golang.org/x/tools: v0.2.0 → v0.7.0
- google.golang.org/protobuf: v1.28.1 → v1.29.0
- sigs.k8s.io/release-utils: v0.7.3 → 2b998c6
Removed
New Contributors
Full Changelog: v0.4.1...v0.5.0
v0.4.1
Release Notes
Changes by Kind
Bug or Regression
- Fixed a bug where bom would crash when outlining an SBOM containing files at the top level of the document.. (#190, @puerco)
- Fixed a bug where the secondary license list returned by the classifier was not being returned
Dependencies
Added
Nothing has changed.
Changed
- github.com/spf13/cobra: v1.6.0 → v1.6.1
- github.com/stretchr/objx: v0.4.0 → v0.5.0
- github.com/stretchr/testify: v1.8.0 → v1.8.1
- golang.org/x/tools: v0.1.12 → v0.2.0
Removed
Nothing has changed.
v0.4.0
Release Notes
Changes by Kind
API Change
Feature
- Allow specifying URLs in
bom document query/outline. (#170, @saschagrunert) - Bump go to 1.19 (#175, @cpanato)
- Chore: use different base image to include go (#136, @developer-guy)
- Feat: use mage pkg to generate ldflags (#154, @developer-guy)
- Image archives are treated as files now. The SBOM structure now consists of a package representing the tar, with the OCI artifacts inside.
- Introduced a new presubmit workflow to validate SPDX conformance check on the documents generated by bom using the SPDX java tools. (#159, @puerco)
- SBOM can now parse
spdx+jsondocuments which means that they can be outlined and queried just as their tag-value counterparts. (#133, @puerco) bomnow generates SBOMs conformant to SPDX version 2.3 🎉
Bug or Regression
- Fix: ko version output in magefile (#152, @developer-guy)
- Fixed a bug where Debian packages were listed in the SBOM with the version appended, now
Nameonly has the name as expected (#138, @puerco) - Fixed a bug where
FileTypein compressed tars was not categorized asARCHIVE(#156, @puerco) - Looking for precached images in the local daemon is now removed as it broke multiarch image SBOMs
- The license module in bom is now compatible with the latest
google/licenseclassifierv2 prereleases. (#161, @puerco) - When indexing golang repos,
bomwould throw a fatal error if nogo.sumfile was found. Now it returns an empty dependency list and generates the SBOM from the repository correctly. (#162, @puerco)
Dependencies
Added
Changed
- cloud.google.com/go/compute: v1.6.1 → v1.10.0
- github.com/BurntSushi/toml: v0.4.1 → v0.3.1
- github.com/Microsoft/go-winio: v0.5.2 → v0.6.0
- github.com/carolynvs/magex: v0.8.1 → v0.9.0
- github.com/containerd/stargz-snapshotter/estargz: v0.11.4 → v0.12.1
- github.com/danieljoos/wincred: v1.1.0 → v1.1.2
- github.com/docker/cli: v20.10.16+incompatible → v20.10.20+incompatible
- github.com/docker/docker-credential-helpers: v0.6.4 → v0.7.0
- github.com/docker/docker: v20.10.16+incompatible → v20.10.20+incompatible
- github.com/docker/go-units: v0.4.0 → v0.5.0
- github.com/google/go-cmp: v0.5.8 → v0.5.9
- github.com/google/go-containerregistry: v0.10.0 → v0.12.0
- github.com/google/licenseclassifier/v2: v2.0.0-alpha.1 → v2.0.0
- github.com/inconshreveable/mousetrap: v1.0.0 → v1.0.1
- github.com/klauspost/compress: v1.15.4 → v1.15.11
- github.com/konsorten/go-windows-terminal-sequences: v1.0.3 → v1.0.1
- github.com/magefile/mage: v1.13.0 → v1.14.0
- github.com/matryer/is: v1.4.0 → v1.2.0
- github.com/opencontainers/image-spec: 8b9d41f → v1.1.0-rc2
- github.com/sirupsen/logrus: v1.8.1 → v1.9.0
- github.com/spf13/cobra: v1.5.0 → v1.6.0
- github.com/yuin/goldmark: v1.4.1 → v1.4.13
- golang.org/x/crypto: e495a2d → v0.1.0
- golang.org/x/mod: 86c51ed → v0.6.0
- golang.org/x/net: 1d687d4 → v0.1.0
- golang.org/x/oauth2: 622c5d5 → v0.1.0
- golang.org/x/sync: 0976fa6 → v0.1.0
- golang.org/x/sys: bc2c85a → v0.1.0
- golang.org/x/term: 03fcf44 → v0.1.0
- golang.org/x/text: v0.3.7 → v0.4.0
- golang.org/x/tools: v0.1.11 → v0.1.12
- golang.org/x/xerrors: f3a8303 → 5ec99f8
- google.golang.org/protobuf: v1.28.0 → v1.28.1
- sigs.k8s.io/release-utils: v0.7.1 → v0.7.3
Removed
- 4d63.com/gochecknoglobals: v0.1.0
- bitbucket.org/creachadair/shell: v0.0.6
- cloud.google.com/go/bigquery: v1.8.0
- cloud.google.com/go/datastore: v1.1.0
- cloud.google.com/go/firestore: v1.6.0
- cloud.google.com/go/pubsub: v1.5.0
- cloud.google.com/go/spanner: v1.7.0
- cloud.google.com/go/storage: v1.10.0
- cloud.google.com/go: v0.93.3
- contrib.go.opencensus.io/exporter/stackdriver: v0.13.4
- dmitri.shuralyov.com/gpu/mtl: 666a987
- github.com/Antonboom/errname: v0.1.5
- github.com/Antonboom/nilnil: v0.1.0
- github.com/BurntSushi/xgb: 27f1227
- github.com/Djarvur/go-err113: aea10b5
- github.com/Masterminds/goutils: v1.1.0
- github.com/Masterminds/semver: v1.5.0
- github.com/Masterminds/sprig: v2.22.0+incompatible
- github.com/OneOfOne/xxhash: v1.2.2
- github.com/OpenPeeDeeP/depguard: v1.0.1
- github.com/StackExchange/wmi: v1.2.1
- github.com/alecthomas/template: fb15b89
- github.com/alecthomas/units: c3de453
- github.com/alexkohler/prealloc: v1.0.0
- github.com/antihax/optional: v1.0.0
- github.com/aokoli/goutils: v1.0.1
- github.com/armon/circbuf: bbbad09
- github.com/armon/consul-api: eb2c6b5
- github.com/armon/go-metrics: f0300d1
- github.com/armon/go-radix: v1.0.0
- github.com/ashanbrown/forbidigo: v1.2.0
- github.com/ashanbrown/makezero: b626158
- github.com/aws/aws-sdk-go: v1.36.30
- github.com/beorn7/perks: v1.0.1
- github.com/bgentry/speakeasy: v0.1.0
- github.com/bketelsen/crypt: v0.0.4
- github.com/bkielbasa/cyclop: v1.2.0
- github.com/blang/semver: v3.5.1+incompatible
- github.com/blizzy78/varnamelen: v0.3.0
- github.com/bombsimon/wsl/v3: v3.3.0
- github.com/breml/bidichk: v0.1.1
- github.com/butuzov/ireturn: v0.1.1
- github.com/census-instrumentation/opencensus-proto: v0.2.1
- github.com/cespare/xxhash/v2: v2.1.1
- github.com/cespare/xxhash: v1.1.0
- github.com/charithe/durationcheck: v0.0.9
- github.com/chavacava/garif: e8a0a40
- github.com/chzyer/logex: v1.1.10
- github.com/chzyer/readline: 2972be2
- github.com/chzyer/test: a1ea475
- github.com/client9/misspell: v0.3.4
- github.com/cncf/udpa/go: 5459f2c
- github.com/cncf/xds/go: fbca930
- github.com/cockroachdb/datadriven: 80d97fb
- github.com/coreos/etcd: ...
Release v0.3.0
This release of bom introduces a ton of new features including JSON support document querying reading SBOMs from STDIN and more. bom now has a website too!. Thanks to our contributors for making this our biggest release so far :)
Release Notes
Changes by Kind
Feature
- --file now works with glob patterns (#70, @sbs2001)
- Added support for verifying whole directories via
bom validate -d. (#123, @saschagrunert) - Bom now adds
ExternalRefs with Package URLs (purls) for all system packages, go dependencies and OCI images. (#69, @puerco) - Feat: upgrade ko, utilize KOCACHE (#66, @developer-guy)
- SBOM can now parse
spdx+jsondocuments which means that they can be outlined and queried just as their tag-value counterparts. (#133, @puerco) - SBOMs can now be read from STDIN by passing
-as a path wherever a filename is expected - Upgrade go to 1.18 (#107, @cpanato)
- We now have image promotion manifests for canary jobs (#90, @puerco)
bomcan now validate artifacts! We now have a new validate subcommand that can be used to check files attached to the top of the SBOM:bom validate sbom.spdx file.txt. No more checksum.txt files! 🎉 (#46, @puerco)
Documentation
- Fixed minor typos in documentation (#62, @jspeed-meyers)
Bug or Regression
- Added
externalDocumentRefsto the json types (#130, @puerco) - Fixed a panic where
bomwould die when no OS packages could be read from a debian base layer. - Fixes a bug in the go dependency generator where var scope was handled wrong and errors were not being surfaced correctly
- Reverted licenseclassifier update because it includes a runtime panic regression. (#128, @saschagrunert)
- Update github.com/google/go-containerregistry to v0.9.0
Other (Cleanup or Flake)
- Cobra commands in the CLI now can be reused and now share the same import pattern (#68, @puerco)
- Package names generated from go modules do not include the module's version anymore. (#99, @puerco)
- The bom project now features canary releases published to the staging bucket (#93, @puerco)
- Update version command to use the one from release-utils (#60, @cpanato)
Uncategorized
- bom now can write SBOMs in JSON!
- New
bom document querysubcommand allows querying SBOMs using a new filtering language (#104, @jdolitsky)
- New
- Fix: check local image cache first (#73, @developer-guy)
bomnow has a website! For now, it is hosted in https://kubernetes-sigs.github.io/bom while we finish setting up the k8s.io domain. (#131, @sbs2001)
Dependencies
Added
- 4d63.com/gochecknoglobals: v0.1.0
- bitbucket.org/creachadair/shell: v0.0.6
- cloud.google.com/go/compute: v1.6.1
- cloud.google.com/go/spanner: v1.7.0
- contrib.go.opencensus.io/exporter/stackdriver: v0.13.4
- github.com/Antonboom/errname: v0.1.5
- github.com/Antonboom/nilnil: v0.1.0
- github.com/Djarvur/go-err113: aea10b5
- github.com/Masterminds/goutils: v1.1.0
- github.com/Masterminds/semver: v1.5.0
- github.com/Masterminds/sprig: v2.22.0+incompatible
- github.com/OpenPeeDeeP/depguard: v1.0.1
- github.com/StackExchange/wmi: v1.2.1
- github.com/alexkohler/prealloc: v1.0.0
- github.com/aokoli/goutils: v1.0.1
- github.com/ashanbrown/forbidigo: v1.2.0
- github.com/ashanbrown/makezero: b626158
- github.com/bketelsen/crypt: v0.0.4
- github.com/bkielbasa/cyclop: v1.2.0
- github.com/blizzy78/varnamelen: v0.3.0
- github.com/bombsimon/wsl/v3: v3.3.0
- github.com/breml/bidichk: v0.1.1
- github.com/butuzov/ireturn: v0.1.1
- github.com/charithe/durationcheck: v0.0.9
- github.com/chavacava/garif: e8a0a40
- github.com/common-nighthawk/go-figure: 734e95f
- github.com/coreos/go-etcd: v2.0.0+incompatible
- github.com/cpuguy83/go-md2man: v1.0.10
- github.com/daixiang0/gci: v0.2.9
- github.com/denis-tingajkin/go-header: v0.4.2
- github.com/esimonov/ifshort: v1.0.3
- github.com/ettle/strcase: v0.1.1
- github.com/fatih/structtag: v1.2.0
- github.com/fullstorydev/grpcurl: v1.6.0
- github.com/fzipp/gocyclo: v0.3.1
- github.com/go-critic/go-critic: v0.6.1
- github.com/go-ole/go-ole: v1.2.6
- github.com/go-redis/redis: v6.15.8+incompatible
- github.com/go-sql-driver/mysql: v1.5.0
- github.com/go-task/slim-sprig: 348f09d
- github.com/go-toolsmith/astcast: v1.0.0
- github.com/go-toolsmith/astcopy: v1.0.0
- github.com/go-toolsmith/astequal: v1.0.1
- github.com/go-toolsmith/astfmt: v1.0.0
- github.com/go-toolsmith/astinfo: 9809ff7
- github.com/go-toolsmith/astp: v1.0.0
- github.com/go-toolsmith/pkgload: v1.0.0
- github.com/go-toolsmith/strparse: v1.0.0
- github.com/go-toolsmith/typep: v1.0.2
- github.com/go-xmlfmt/xmlfmt: d5b6f63
- github.com/gobwas/glob: v0.2.3
- github.com/gofrs/flock: v0.8.1
- github.com/golangci/check: cfe4005
- github.com/golangci/dupl: 3e9179a
- github.com/golangci/go-misc: 927a3d8
- github.com/golangci/gofmt: 244bba7
- github.com/golangci/golangci-lint: v1.43.0
- github.com/golangci/lint-1: 297bf36
- github.com/golangci/maligned: b1d8939
- github.com/golangci/misspell: v0.3.5
- github.com/golangci/revgrep: c22e500
- github.com/golangci/unconvert: 28b1c44
- github.com/google/certificate-transparency-go: v1.1.1
- github.com/google/trillian: v1.3.11
- github.com/gookit/color: v1.4.2
- github.com/gordonklaus/ineffassign: 2e10b26
- github.com/gorhill/cronexpr: 88b0669
- github.com/gostaticanalysis/analysisutil: v0.7.1
- github.com/gostaticanalysis/comment: v1.4.2
- github.com/gostaticanalysis/forcetypeassert: 01d4955
- github.com/gostaticanalysis/nilerr: v0.1.1
- github.com/gostaticanalysis/testutil: v0.4.0
- github.com/hashicorp/go-version: v1.2.1
- github.com/hashicorp/go.net: v0.0.1
- github.com/huand...
v0.3.0-rc1
What's Changed
- Validate Subcommand! by @puerco in #46
- Add
ok-to-testlabel to dependabot PRs by @cpanato in #59 - update version command to use the one from release-utils by @cpanato in #60
- Fix minor typo in documentation by @jspeed-meyers in #62
- Support Parsing SBOMs from STDIN by @puerco in #63
- Add cloudbuild job to generate binaries and images by @cpanato in #45
- Fix image build command by @cpanato in #65
- update ko command by @cpanato in #67
- build(deps): bump github.com/carolynvs/magex from 0.6.0 to 0.6.1 by @dependabot in #64
- feat: upgrade ko, utilize KOCACHE by @developer-guy in #66
- generate+document commands refactor by @puerco in #68
- Generate purls from read sources by @puerco in #69
- build(deps): bump github.com/spf13/cobra from 1.3.0 to 1.4.0 by @dependabot in #71
- Support glob in 'generate --files' by @sbs2001 in #70
- build(deps): bump golang.org/x/tools from 0.1.9 to 0.1.10 by @dependabot in #75
- fix: check local image cache first by @developer-guy in #73
- build(deps): bump github.com/magefile/mage from 1.12.1 to 1.13.0 by @dependabot in #79
- build(deps): bump github.com/maxbrunsfeld/counterfeiter/v6 from 6.4.1 to 6.5.0 by @dependabot in #78
- build(deps): bump github.com/stretchr/testify from 1.7.0 to 1.7.1 by @dependabot in #76
- Add docs for YAML config by @sbs2001 in #83
- build(deps): bump github.com/carolynvs/magex from 0.6.1 to 0.7.0 by @dependabot in #85
- Fix panic when emtpy os deps, readd document by @puerco in #84
- build(deps): bump github.com/carolynvs/magex from 0.7.0 to 0.7.1 by @dependabot in #86
- build(deps): bump sigs.k8s.io/release-utils from 0.5.0 to 0.6.0 by @dependabot in #87
- update build image to use latest go by @cpanato in #88
- update version font and ko version by @cpanato in #89
New Contributors
- @jspeed-meyers made their first contribution in #62
- @developer-guy made their first contribution in #66
- @sbs2001 made their first contribution in #70
Full Changelog: v0.2.2...v0.3.0-rc1
Release v0.2.2
This release brings an important fix to avoid duplicating SPDX IDs when generating complex SBOMs that repeast elements such as base images. It also adds to the API a new function to query documents and other minor fixes. Thanks a lot to everyone for your contributions and feedback
Release Notes
Changes by Kind
Feature
- New XML-DOM inspired
x.GetElementByID()allows querying documents, Files and Packages for elements that match an ID. - The YAML configuration file now supports adding archives using
type: archive(#50, @puerco)
Bug or Regression
-
./bom document outline
bom document outline → Draw structure of a SPDX document",This subcommand draws a tree-like outline to help the user visualize
the structure of the bom. Even when an SBOM represents a graph structure,
drawing a tree helps a lot to understand what is contained in the document.You can define a level of depth to limit the expansion of the entities.
For example set --depth=1 to only visualize only the files and packages
attached directly to the root of the document.bom will try to add useful information to the oultine but, if needed, you can
set the --spdx-ids to only output the IDs of the entities.Usage:
bom document outline [SPDX File To Draw] [flags]Flags:
-d, --depth int recursion level (default -1)
-h, --help help for outline
--spdx-ids use SPDX identifiers in tree nodes instead of namesGlobal Flags:
--log-level string the logging verbosity, either 'panic', 'fatal', 'error', 'warning', 'info', 'debug', 'trace' (default "info")
FATA You should only specify one file (#54, @jeremyrickard) -
Released
bombinaries are now statically compiled (#47, @puerco) -
When applying ignore patterns,
bomwill now refuse to build an empty SBOM if the patterns result in zero files included (#58, @kfaseela)
Other (Cleanup or Flake)
- Replaced the animation on the main GitHub page with a link to external page as it caused high CPU consumption (#39, @puerco)
- When generating an SBOM,
bomwill now print its version before running to record it in CI/CD logs (#51, @puerco)
Dependencies
Added
Nothing has changed.
Changed
- github.com/Azure/go-ansiterm: d6e3b33 → d185dfc
- github.com/moby/term: df9cb8a → 3f7ff69
- sigs.k8s.io/release-utils: v0.3.0 → v0.4.0
Removed
Nothing has changed.