Skip to content

2022.4

Compare
Choose a tag to compare
@cgwalters cgwalters released this 06 Jun 18:00
· 1090 commits to main since this release
v2022.4

The big change in this release is that we have merged the Rust bindings repository into the main one:
#2575
As of right now though, this is just (somewhat) simplifying development of the Rust bindings, as we can now more easily share CI configuration and a single PR can add a new API and update the Rust bindings in one step.

As of right now though, the "libostree" C library will still be buildable without depending on Rust itself. We may change that in the future; for more, please see and discuss at: #2427

There are a few other additions in this release:

  • A new repository option bls-append-except-default intended to help with enabling GRUB password locking
  • Further fixes for s390x SE
  • Various CI improvements
  • Several API additions and fixes to the Rust bindings (on top of the prior release)
Colin Walters (80):
      configure: post-release version bump
      repo: Add concurrency=send
      ci: Add GH action to build
      Update to 2021.2
      Bump versions
      Bump sys version requirement
      Mark src/auto/* as generated
      ci: Fix buildroot to use new official image
      Update to glib 0.14
      Bump versions
      Add 2021.3 feature
      Re-export glib, gio
      Deny unused results, warn on missing docs (except auto/)
      Add new GLib 0.14 variant types for metadata types
      Add more documentation for --features=v2021_3
      Fix build with --features=v2021_3, use in CI by default
      Use glib-sys via re-exported `glib::ffi` (and similar for gio)
      Release 0.12.2
      lib: Export ffi too
      Cargo.toml: Bump to glib 0.14.4
      Release 0.12.3
      Release 0.13
      sys: Release 0.9.0
      lib: Reexport libc::AT_FDCWD
      Make `SePolicy` have `Send`
      repo: Expose dfd_as_file()
      (cargo-release) version 0.13.1
      (cargo-release) start next development iteration 0.13.2-alpha.0
      repo: Add `auto_transaction` and `TransactionGuard`
      (cargo-release) version 0.13.2
      (cargo-release) version 0.13.3-alpha.1
      Update to 2021.5
      Bump ostree-sys version
      (cargo-release) version 0.13.3
      (cargo-release) start next development iteration 0.13.4-alpha.0
      repo: Add `require_rev` method
      repo: Add an API to read and parse directory metadata
      Release 0.13.4
      Add a `cap-std-apis` feature with open/create
      repo: Add two more cap-std APIs
      Add `COMMIT_META_CONTAINER_CMD` constant
      Release 0.13.5
      Fast-track fix for `ostree_gpg_verify_result_get_all()`
      Release 0.13.6
      Add manual bindings for MutableTree reading
      repo: Add `query_file` API
      lib: Run `cargo fmt`
      Add a `repo()` accessor to `TransactionGuard`
      build-sys: Adjust for merge of ostree-rs
      docs/ima: Also link the SUSE docs
      cfg.mk: Don't even look at rust-bindings/
      Add APIs to get xattrs from disk
      tests/inst: Fix install rules for ostree-rs merger
      ci: Work around GH actions `container:` + git + security bug
      tests/inst: Add .gitignore
      ci: Move rust-bindings CI to toplevel
      rust-bindings: Remove some unused CI/test bits
      Merge pull request #2602 from cgwalters/fix-docs-ci
      Merge pull request #2601 from cgwalters/expose-get-xattrs
      Merge pull request #2575 from cgwalters/merge-ostree-rs
      ci: use cargo-deny
      sysroot: Quiet one gcc `-fanalyzer` warning
      sysroot: Strengthen several `g_return_if_fail` into `g_assert()`
      ci: Drop gcc `-fanalyzer` by default
      ci: Drop all `runAsUser: 0` in builds
      Merge pull request #2608 from cgwalters/fanalyzer-fixes
      ci: Move codestyle and min build to GH actions
      Merge pull request #2580 from nikita-dubrovskii/sdboot_partition
      Merge pull request #2612 from HuijingHei/deploy-karg-delete
      Merge pull request #2605 from saqibali-2k/pr/bls-append
      ci: Drop libsoup build in jenkins
      ci: Drop an unused files
      ci: Add a codestyle.sh
      gitignore: Add ci-build/
      Rename ostree-cmdprivate to drop out of introspection
      Drop `OSTREE_BUILT_FEATURES` from introspection
      rust-bindings: Delete committed gir files
      rust-bindings: Use OSTree-1.0.gir from our own builddir
      rust-bindings: Update to latest git
      Release 2022.4

Dusty Mabe (1):
      Merge pull request #2614 from nikita-dubrovskii/issue-2867

Felix Krull (357):
      Add config file and gir files
      Add initial gir output
      Add external libraries and regenerate
      Update names and dependencies
      Add manual definition for stat
      Start describing libostree
      Add build files for libostree
      Generate
      Add some basic types and regenerate
      Add a prelude module for star imports
      Add a test/sample program
      Add additional 'new' method to Repo
      Add as much of Repo as easily possible
      Integrate docs into source
      Generate functions and constants
      Try implementing traverse_commit by hand
      Ignore Cargo.lock in libs
      sample: try to extract a file from the repo
      Add ObjectName wrapper to solve hashing issues
      repo: change custom new method to std::path::Path-alike
      repo: remove now-incorrect comment
      object_name: extend ObjectName
      Add RepoListRefsExtFlags
      repo: implement list_refs and list_refs_ext
      Add simple repo roundtrip test
      Remove sample
      Add Makefile
      Regenerate libostree-sys
      Regenerate libostree
      repo: newlines
      Add docs to generated files
      Copy autodocs to hand-implemented methods in RepoExtManual
      Generate docs for RepoExtManual
      Ignore internal structs in libostree-sys
      Regenerate libostree-sys
      Add include to make libostree-sys tests work
      Run cargo fmt on the custom code
      Explicitly implement PartialEq for ObjectName to satisfy clippy
      Exclude generated code from clippy
      Un-bump versions
      Add workspace Cargo.toml
      Add CI config
      Install libostree in CI
      Use libostree from backports
      Also install libostree-dev for libostree builds
      Install libostree for everything, actually
      Do release build and simply job names
      Remove package stage for now
      Add some metadata to libostree-sys
      Add libostree-sys publish step
      Fix libostree-sys publish step
      Fix Gitlab URL & remove readme
      Add docs build
      Always build docs
      Only publish for master & set docs urls
      Remove release builds
      Bump -sys version
      Try setting up docs.rs capable build
      libostree-sys: switch to docs.rs and add license file
      libostree: add metadata, readme, and license file
      Disable libostree docs
      Strip the libostree docs
      Bump -sys version
      Add libostree release task
      libostree-sys: remove license file
      libostree: include API docs at build time using a feature flag
      Remove docs targets
      Build API docs with LGPL parts
      Always build docs
      Fix docs build hopefully
      Keep only one license file in the repo root
      Add a symlink to the package readme in the repo root
      Move readme to repo root and copy it to the code prior to packaging
      Update docs back to self-hosted
      Add Gitlab badge
      Bump versions
      Add LICENSE to packages
      Update readme a lot
      Add badge-with-link to docs
      Fix -sys pre-package
      --allow-dirty to deal with the extra files we copy in
      Add back API docs merge to Makefile
      Remove lgpl-docs feature
      Update readme
      Add CMake to build gir
      Add features
      Move main crate into repo root
      Move installed tools into target/tools
      Exclude unnecessary files correctly
      Update gitlab-ci.yml
      Get rid of pre-package workaround
      Reorganise gitlab-ci.yml a bit
      Move libostree-sys/ to sys/
      Remove some methods that are not generated correctly
      Test with all features
      sys: regenerate
      Repo rename
      Pin gir version
      Remove version constants to fix build with different libostree versions
      Remove unnecessary gir/* aliases
      Rename libostree-sys to ostree-sys
      Rename libostree to ostree
      Rename libostree to ostree
      Add note about crate rename
      Update base gir files
      Update OSTree gir and regenerate
      Test sys with v2018_9 until I can get 2019.2 for CI
      Add explanatory comments to ostree-sys.toml
      Fix features in Repo
      Build CollectionRef manually
      Fix return type for CollectionRef::new
      Add some sanity tests for CollectionRef
      Sanity test for ObjectName
      Fix a few more missing methods
      Add some tests for Repo
      Fix some issues with RepoFile
      Add some explanatory comments to gir config
      Pin rustdoc-stripper version
      Add more types
      sys: regenerate with external version file
      Add version features
      Update gir version
      sys: regenerate with new gir
      Add missing version features
      Regenerate and update to new gir and glib-rs version
      Build with older libostree version for now
      Reorganise test code
      Switch to generated CollectionRef
      Clarify reasons for async exclude
      Fix
      Add docs for methods that were moved to RepoExtManual
      Switch ObjectName to GString
      Add some more unsorted types
      Refactor tests and add test for traverse_commit
      Don't allow nightly runs to fail
      Add other interesting pipeline stages
      Don't separately build ostree-sys with nightly
      Disable CollectionRef tests on too-old features
      Suppress unused import warnings in generated code
      Try caching
      Also cache docs
      Add fmt check, check, clippy
      Fix gitlab-ci
      Don't fmt and check for now
      Add html_root_url
      Build docs more smartly
      Fix docs publish
      Change gir targets
      Update gir and regenerate
      Move extra Repo methods to plain impl as well
      Add more checks to the pipeline
      Adjust CI check flags
      Add test for checkout_tree
      Add ignored test for empty FileInfo crash
      We don't need to patch the hand-written Repo symbols any more
      Improve doc blurb a bit
      Document Repo::new_for_path
      Clean up some comments
      Ignore deprecated (and reportedly unsafe) method
      Document ObjectName
      collection_ref: add accessors for collection_id and ref_name
      Add copies of the various LGPL versions and notes about their relevance
      Check that we haven't included extraneous generated files
      Remove extraneous generated files
      Bump version
      Update version in README and add some notes on version bumps
      ci: use sccache
      Force clippy to run even after check
      Oh wait, check doesn't actually do anything useful for us...
      Disallow clippy warnings
      Ignore clippy issues in generated code
      Fix clippy issues
      Consolidate some pipeline stages
      Simplify docs build
      Revert "Simplify docs build"
      lib: RepoCheckoutAtOptions
      lib: handle ino cache and sepolicy options
      lib: satisfy clippy
      tests: fix checkout_at tests
      ci: run clippy with default features as well
      lib: implement CheckoutOptions::filter (hackishly)
      tests: fix imports with default features
      tests: reorganise repo tests so they have fewer feature flags
      lib: split out RepoCheckoutFilter
      lib: clean up types for RepoCheckoutFilter
      lib: add repo_checkout_filter function for better ergonomics
      lib: add docs and safety notes to RepoCheckoutFilter
      lib: fix clippy
      lib: catch unwinds in RepoCheckoutFilter
      lib: brush up some docs
      lib: generate some additional classes
      ci: add Makefile target to run gir -m not_bound
      lib: add some glib types to generate more functions
      conf: clean up comments a bit
      conf: add some more loose types
      Bump version
      Add notes about releases and tags
      Bump gir version
      Update to new glib-rs versions
      Enable futures feature
      ci: add job for futures feature
      conf: remove a problematic function that was fixed in gir
      ci: fix futures job maybe
      Fix tests on nightly (by avoiding UB, even)
      ci: include `futures` in docs
      ci: remove separate futures build
      ci: clean up image
      ci: still need before_script for docs
      ci: fix features for -sys
      ci: I guess we did need CMake
      ci: fix
      ci: use libostree from unstable
      Update gir version
      Add features for docs.rs build
      Enable some functions that seem to work now
      Revert "Enable some functions that seem to work now"
      ci: fix feature flags
      Update gir files
      Update OSTree-1.0.gir
      Disable build features constant
      Regenerate -sys
      Ignore BUILT_FEATURES from main crate
      Clean up docs.rs sections in Cargo.tomls
      Regenerate main crate
      ci: bump used version
      Add generated KernelArgs (not working yet)
      Make kernel_args compile
      kernel_args: enable and fix argv methods
      kernel_args: fix feature flags
      Implement Checksum type for binary checksums
      Implement Repo::write_content
      Implement Repo::write_metadata
      Implement Repo::write_content_async
      Implement Repo::write_metadata_async
      Add SePolicy::fscreatecon_cleanup
      Fix file mode
      Use pointer coercion instead of messing with -sys
      Implement ostree::checksum_file
      Implement ostree::checksum_file_from_input
      Implement ostree::checksum_file_async
      Implement ostree::checksum_file_at
      checksum: implement conversion from string and to base64
      checksum: implement more traits and functions
      Bump crate versions
      ci: fix build
      ci: run crates.io publish on release tags
      ci: update sccache
      ci: switch to Fedora Rawhide
      Fix clippy issue
      Set up cargo workspace
      ci: don't reformat -sys
      ci: install make
      ci: install sccache during docs build
      ci: fix setup, again
      Add feature alias for the latest OSTree version
      Update bundled glib gir files
      Update gir file
      Fix lint in tests
      Add some ignored types
      Bump versions
      gir: update OSTree-1.0.gir
      Regenerate files
      Add 2019.6 feature
      Bump versions
      Update glib + gir and regenerate
      Start taking out futures feature
      Rewrite handwritten futures functions
      Bump versions
      ci: ignore changes in versions.txt lines
      Revert "ci: ignore changes in versions.txt lines"
      Remove repo hash from versions.txt
      ci: disable clippy warnings for the moment
      gir: update to OSTree 2020.2 gir
      Regenerate for OSTree 2020.2
      Bump versions
      Bump ostree version
      gir-files: update to 2020.3
      ci: ignore gir differences in version files
      ci: build every feature level separately
      ci: install fewer things
      ci: simplify pipeline a bit maybe
      repo_checkout_at_options: fix version flags
      Bump version
      Ignore ci-cached directories so they don't interfere with the publish
      Add LICENSE to ostree-sys
      Change branch name references
      gir: update bundled gir files
      Start adding more update instructions to README
      Regenerate with new gir files
      Update gir version and regenerate
      Switch from lazy_static to once_cell
      Bump dependency versions
      gir: patch ostree_repo_finder_avahi_new
      conf: disable RepoFinder methods that don't autogenerate correctly
      sys: remove pkg-config dependency
      Use forked gir with updated shell-words and cleaned-up build.rs
      tests: use RepoMode::Archive (seems to be less finicky)
      src: use libc::c_char to improve non-x86 compatibility
      ci: update sccache
      ci: use --workspace instead of --all
      ci: test building for non-x86 target
      Switch back to upstream gir
      ci: change docs build command
      Update rustdoc-stripper
      ci: refactor pipeline
      ci: update readme (and pipeline)
      Add command to grab latest OSTree-1.0.gir from Fedora Rawhide
      Also remove OSTree-1.0.gir when cleaning gir files
      Add Vagrantfile
      Bump versions
      Fix indentation in readme
      Add script to get OSTree-1.0.gir from libostree source build
      Update to OSTree 2020.4
      Add feature levels to Cargo.toml
      Update docs
      ci: try different Fedora image?
      PATCH: version on ostree_repo_commit_modifier_set_sepolicy_from_commit
      PATCH: version on OSTREE_SIGN_NAME_ED25519
      PATCH: versions on ostree_sign_* functions
      Switch ostree source to git
      gir: switch to gir based on patched upstream source
      gir: start fixing OSTree.Sign
      gir: add missing version tag
      gir: fix out parameters not being marked correctly
      gir: fix another out parameter
      sign: add sanity check for sign API
      conf: disable internal Sign subtypes
      Update to OSTree 2020.5
      Disable some irrelevant functions
      src: add CommitSizesEntry
      conf: remove some unfixable TODOs
      Makefile: only depend on gir bin in gir-report
      src: add support for write_deployments_with_options
      src: reimplement checksum hex and base64 en/decoding
      conf: annotate ignores better
      src: add Checksum::from_bytes
      conf: ignore some more special-cased functions
      Bump versions
      conf: anchor function name patterns to avoid unexpected exclusions
      Update gir file to 2020.6
      gir: update misc gir files
      gir: update OSTree gir
      Regenerate based on new gir
      Switch to patched ostree gir
      ci: fix rawhide stages?
      src: manually implement SysrootDeployTreeOpts
      src: fix tests
      Remove outdated sentence in readme
      Bump versions
      Update common gir files
      Fix ostree gir file update
      Update OSTree-1.0.gir to 2021.1
      Regenerate
      Switch to patched ostree gir
      Regenerate
      Bump all versions
      Update rustdoc-stripper

Huijing Hei (3):
      Teach --karg-delete option to ostree admin deploy
      Fix GNU style of two spaces for indent in https://github.com/ostreedev/ostree/pull/2612
      Remove dup "--os=OSNAME" line in output of "ostree admin config-diff --help"

James Westman (1):
      Fix annotations on ostree_mutable_tree_lookup()

Jonathan Lebon (7):
      Merge pull request #2596 from cgwalters/release-2022-3
      Merge pull request #2615 from nikita-dubrovskii/handle_errors
      copr: mark git checkout as safe
      Merge pull request #2619 from nikita-dubrovskii/skip_gzip_unpacking
      Merge pull request #2621 from cgwalters/drop-jenkins-soup
      Merge pull request #2622 from cgwalters/more-ci
      Merge pull request #2627 from cgwalters/bindings-drop-committed-gir

Joseph Marrero Corchado (6):
      Merge pull request #2598 from lucab/ups/without-systemd-fix
      Merge pull request #2600 from cgwalters/link-suse-ima
      Merge pull request #2603 from cgwalters/use-cargo-deny
      Merge pull request #2610 from cgwalters/ci-tweaks-2
      Merge pull request #2624 from cgwalters/misc-introspection-fixes
      Merge pull request #2625 from cgwalters/drop-features-introspection

Luca BRUNO (21):
      lib/ostree-sysroot-deploy: add a missing include for stdint.h
      ci/github: add a job for --without-libsystemd
      repo_transaction_stats: move to a manual implementation
      cargo: fix version in features chain
      lib: fix 'dox' feature
      cargo: point to docs.rs and clean up
      ostree: release 0.12.1
      cargo: bump ostree-sys to 0.8.1
      sysroot: add a builder object
      sysroot: support create and load actions on builder
      sys/cargo: refresh manifest
      lib: fix new clippy warnings
      lib: run rustfmt
      ci: add jobs for MSRV checks and linting
      gir-files: bump to v2022.2
      ostree-sys: refresh after gir bump
      ostree-sys: release 0.9.2
      ostree/cargo: bump to ostree-sys 0.9.2
      ostree: refresh after gir bump
      ostree: manually patch generated files
      ostree: release 0.13.7

Luca Bruno (5):
      Merge pull request #2606 from ostreedev/dependabot/submodules/libglnx-c59eb27
      Merge pull request #2616 from HuijingHei/dup-osname
      Merge pull request #2618 from jlebon/pr/copr-fix
      Merge pull request #2613 from GuiltyDoggy/man-update
      Merge pull request #2620 from jameswestman/lookup-annotations

Manuel Stühn (5):
      implement list_objects-function an test
      switch from if-else to match
      update result type
      add ObjectDetails-struct and use it in list_objects-function
      Update impl Display, omit to_string, change wording

Nikita Dubrovskii (4):
      s390x: generate sd-boot at its own partition
      s390x: ensure SecureExecution is enabled before sd-boot generation
      s390x: fail on error during reading of SecureExecution sysfs flag
      s390x: do not unpack existing initrd, just append LUKS keys to its copy

Saqib Ali (2):
      ostree-systroot-deploy: parse bls-append-except-default key
      man/ostree.repo-config.xml: add docs for bls-append-except-default key

Yosuke Matsumura (1):
      man: Fix ostree-admin-instutil subcommands

dependabot[bot] (1):
      build(deps): bump libglnx from `c71f7ae` to `c59eb27`