Releases: dragonflyoss/nydus
Release list
Nydus v3.0.0-alpha.1
What's Changed
- feat(block): add NBD and ublk block-device on-demand services by @Zephyrcf in #2000
- fix: some improvements for v3 by @imeoer in #2003
- chore(accessor): release 0.1.1 by @imeoer in #2004
- Narrow NBD health check to actual backend read failures by @imeoer with @Copilot in #2005
- fix: keep EROFS inline data inside one metadata block by @imeoer in #2007
- feat(accessor): share the blob cache safely across processes by @imeoer in #2008
- chore(accessor): release 0.1.2 by @imeoer in #2009
Full Changelog: v3.0.0-alpha.0...v3.0.0-alpha.1
Nydus v3.0.0-alpha.0
What's Changed
- refactor: split accessor runtime into nydus-accessor crate by @imeoer in #1981
- feat: add fanotify pre-content on-demand service for native EROFS mounts by @Zephyrcf in #1982
- feat: redesign on-disk format family and add readiness fast path by @imeoer in #1985
- docs(readme): register fanotify doc in Documentation table by @Zephyrcf in #1986
- feat(nydusify): support multiple mixed sources in convert by @imeoer in #1987
- fix(nydus-accessor): prevent groupmap unlink race and footer crc over reserved tail by @imeoer in #1989
- perf(fanotify): drop fanotify marks from fully-ready blobs by @Zephyrcf in #1995
- feat(nydusify): use offline pattern file for optimize by @imeoer in #1996
- ci: add tag-triggered static release workflow by @imeoer in #1998
Full Changelog: https://github.com/dragonflyoss/nydus/commits/v3.0.0-alpha.0
v2.4.5
Binaries download mirror (sync within a few hours): https://registry.npmmirror.com/binary.html?path=nydus/v2.4.5/
What's Changed
- storage: fix backend user io merge for compressed chunks by @shu-pei in #1953
- storage: reduce BlobFactory lock scope during blob init by @Park-Jiyeonn in #1974
- fix: avoid panics on invalid inspect request arguments by @immanuwell in #1965
- fix(upgrade): handle full UDS state transfers by @Park-Jiyeonn in #1977
- chore: resolve cargo deny advisories (bump anyhow/crossbeam-epoch, ignore quick-xml) by @Zephyrcf in #1979
- kernel-patches: adapt fscache ondemand IO patch for newer kernel by @hwenwur in #1980
- storage: stop proxy health checker on shutdown by @Park-Jiyeonn in #1990
- builder: avoid coalescing hard-linked symlinks by @zaliasc in #1984
- fix(builder): preserve chunkdict source blob metadata by @shu-pei in #1994
New Contributors
Full Changelog: v2.4.4...v2.4.5
v2.4.4
Binaries download mirror (sync within a few hours): https://registry.npmmirror.com/binary.html?path=nydus/v2.4.4/
What's Changed
- feat: Introduce a uffd-based block device service for virtio-pmem DAX backend by @joy-allen in #1921
- nydusify: read chunkdict blobs from local content store by @shu-pei in #1946
- ci: pin nerdctl to v2.2.2 to fix smoke test failure by @Zephyrcf in #1947
- fix: correct typos and wrong entry type labels in error messages by @immanuwell in #1948
- fix: use canonical release URL and correct typos by @immanuwell in #1950
- builder: fix chunkdict chunk ordering by @shu-pei in #1949
- fix: validate nydusify tar paths before extraction by @immanuwell in #1951
- fix(nydusify): guard against empty mount slice in Manager.Inspect by @immanuwell in #1957
- fix: clamp nydusctl backend metric deltas on counter resets by @immanuwell in #1959
- utils: fix dns timeout cancelled handle by @imeoer in #1955
- chore(ci): bump actions for Node.js 24 and fix containerd config compat by @Zephyrcf in #1962
- fix: avoid logger deadlock on broken error channel by @tedcy in #1964
- fix: return an error for unreadable nydusctl mount config by @immanuwell in #1963
- builder: fix uninitialized compressed metadata when batch mode skips by @Zephyrcf in #1961
- fix(nydusd): avoid registry token refresh bursts by @Park-Jiyeonn in #1968
- Fix: RAFS v5 chunkdict bootstrap metadata by @shu-pei in #1952
- chore: bump acceleration-service to v0.2.27 by @Zephyrcf in #1970
New Contributors
- @joy-allen made their first contribution in #1921
- @immanuwell made their first contribution in #1948
- @Park-Jiyeonn made their first contribution in #1968
Full Changelog: v2.4.3...v2.4.4
v2.4.3
Binaries download mirror (sync within a few hours): https://registry.npmmirror.com/binary.html?path=nydus/v2.4.3/
What's Changed
- make CI runnable in forked repos by @bergwolf in #1919
- Fix fleaky ci by @bergwolf in #1926
- Fix token refresh firing every 20s instead of near expiry by @Fricounet in #1922
- [nydusd] Support custom TLS CA by @ecdatadog in #1925
- fusedev: fix remount invalidation for nested mountpoints by @tedcy in #1929
- nydus-image: fix chunkdict deduplicate image logic by @shu-pei in #1931
- nydus-image: fix chunkdict test size calculation by @shu-pei in #1933
- rafs: fix panic on handling prefetch batch size by @imeoer in #1902
- nydus-image: fix DBSCAN cluster expansion by @shu-pei in #1934
- ci: decrease patch coverage check to 80% by @imeoer in #1942
- storage: add proxy-aware request routing with Dragonfly P2P integration by @bergwolf in #1923
New Contributors
- @ecdatadog made their first contribution in #1925
- @shu-pei made their first contribution in #1931
Full Changelog: v2.4.2...v2.4.3
v2.4.1
Binaries download mirror (sync within a few hours): https://registry.npmmirror.com/binary.html?path=nydus/v2.4.1/
What's Changed
- tests: replace fmt.Println with log for better logging by @bergwolf in #1828
- ci: add Dependabot configuration for weekly updates by @bergwolf in #1833
- security: add ignore rule for RUSTSEC-2025-0141 by @bergwolf in #1832
- build(deps): bump golang.org/x/crypto from 0.37.0 to 0.45.0 in /contrib/nydusify by @dependabot[bot] in #1830
- build(deps): bump github.com/opencontainers/selinux from 1.12.0 to 1.13.0 in /contrib/nydusify by @dependabot[bot] in #1829
- build(deps): bump actions/stale from 9.1.0 to 10.1.1 by @dependabot[bot] in #1834
- build(deps): bump actions/upload-artifact from 4 to 6 by @dependabot[bot] in #1836
- build(deps): bump actions/download-artifact from 4 to 7 by @dependabot[bot] in #1835
- build(deps): bump goreleaser/goreleaser-action from 6.2.1 to 6.4.0 by @dependabot[bot] in #1838
- build(deps): bump golangci/golangci-lint-action from 6 to 9 by @dependabot[bot] in #1839
- build(deps): bump github.com/containerd/containerd from 1.7.27 to 1.7.29 in /contrib/nydusify by @dependabot[bot] in #1844
- build(deps): bump crc from 3.2.1 to 3.4.0 by @dependabot[bot] in #1841
- build(deps): bump procfs from 0.17.0 to 0.18.0 by @dependabot[bot] in #1843
- build(deps): bump google.golang.org/protobuf from 1.32.0 to 1.33.0 in /smoke by @dependabot[bot] in #1845
- build(deps): bump github.com/containerd/containerd/v2 from 2.1.2 to 2.1.5 in /smoke by @dependabot[bot] in #1848
- build(deps): bump github.com/opencontainers/selinux from 1.12.0 to 1.13.0 in /smoke by @dependabot[bot] in #1846
- build(deps): bump golang.org/x/crypto from 0.37.0 to 0.45.0 in /smoke by @dependabot[bot] in #1847
- Upgrade golangci-lint to v2.1 for golangci-lint-action@v9 compatibility by @imeoer in #1850
- build(deps): bump codecov/codecov-action from 4 to 5 by @Zephyrcf in #1862
- build(deps): bump actions/checkout from 4 to 6 by @dependabot[bot] in #1859
- docs: update version 3 containerd config format for snapshotter by @BraveY in #1863
- two minor smoke improvements by @bergwolf in #1865
- Fix clippy errors for Rust 1.93+ toolchains by @Copilot in #1867
- security: fix RUSTSEC-2024-0436 and RUSTSEC-2026-0007 advisory by @bergwolf in #1871
- CI: make codecov include both UT and smoke test code coverage by @bergwolf in #1873
- fix soundness issue in
nydus_storage::utils::alloc_bufby @mirthfulLee in #1874 - Update fuse-backend-rs and related rust-vmm dependencies by @bergwolf in #1877
- docs(maintainers) add Fricounet to maintainer list by @imeoer in #1880
- chore: bump crate versions by @BraveY in #1881
- fix: suppress RUSTSEC-2026-0009 for time crate in cargo deny by @Copilot in #1882
- tests: improve unit test coverage across multiple modules by @bergwolf in #1879
- api: support hot reload of registry authentication by @imeoer in #1864
- fix soundness issue of
nydus_utils::FileMapState::get_slice(_mut)by @mirthfulLee in #1885 - docs: deprecate local approvers and maintainers files by @mingcheng in #1888
- ci(ut): add ut for test coverage by @imeoer in #1892
- ci: add ut tests and gate for coverage by @imeoer in #1895
- chore: update CODEOWNERS to use nydus-approvers team by @gaius-qi in #1897
- build(deps): bump containerd/nydus-snapshotter from 0.15.9 to 0.15.12 in contrib/nydusify by @BraveY in #1898
New Contributors
- @Copilot made their first contribution in #1867
- @mirthfulLee made their first contribution in #1874
- @mingcheng made their first contribution in #1888
Full Changelog: v2.4.0...v2.4.1
v2.4.0
What's Changed
- nydus-image: modify compact interface by @SToPire in #1631
- rust: upgrade to 1.75.0 by @Desiki-high in #1634
- action: bump macos-13 by @Desiki-high in #1635
- nydusify supports localfs filesystem backend by @mhotan in #1637
- storage: introduce CasManager to support chunk dedup at runtime by @Desiki-high in #1626
- fix: correct some typo in nydus-fscache.md by @wswsmao in #1640
- fix: correct some typos about nerdctl image rm by @wswsmao in #1641
- support generating separate blob for prefetched files by @daiyongxuan in #1629
- docs: fix docker-env-setup.md by @peng-yq in #1645
- support generating new image with separate blob for prefetched files by @Maxing1997 in #1649
- rafs: fix typo by @liubogithub in #1653
- fix: #1644 and #1651 resolve Algorithm to_string and FromStr inconsistency by @cslinwang in #1656
- chore: rename repo Dragonfly2 to dragonfly by @gaius-qi in #1658
- fix(blobfs): Update fs ops for
fuse_backend_rs0.12.0 by @papazof in #1659 - chore(deps): update dependencies to resolve cargo deny check failures by @BraveY in #1660
- chore: bump deps to address rustsec warnning by @BraveY in #1666
- nydusify: add layer push retry for copy subcommand by @imeoer in #1662
- fix(nydusd): fix parsing of failover-policy argument by @BraveY in #1669
- nydusify: fix the issue of blob not found when modifying image name d… by @ymygogogo in #1673
- feat(nydusify): A short container id is supported when you commit a container by @ymygogogo in #1674
- nydusify: refactor check subcommand by @imeoer in #1652
- builder: remove redundant blobs for merge subcommand by @imeoer in #1677
- misc: remove centos image from image conversion CI by @imeoer in #1678
- chore(smoke): fix smoke test failed by @BraveY in #1676
- Support external blob by @BraveY in #1672
- chore: fix cargo-deny check failed by @BraveY in #1681
- Support CRC32 validation for both RAFS V5 and V6. by @BraveY in #1670
- nydusify(feat): add crc32 in file attributes by @BraveY in #1683
- nydusify(feat): support for specifing log file and concurrently proce… by @BraveY in #1684
- action: add free-disk-space job by @imeoer in #1685
- nydusify(refactor): handle layer with retry by @BraveY in #1686
- readme: add deepwiki reference by @bergwolf in #1690
- [storage] Modify redirect policy to follow 10 redirects by @Fricounet in #1688
- [registry] Fix auth token parsing for access_token by @Fricounet in #1689
- docs: add MAINTAINERS doc by @imeoer in #1701
- [Fix] Add "ssl" to fallback connection error messages by @Zephyrcf in #1708
- feat(nydusify): After converting the image, if the push operation fails, increase the number of retries. by @ymygogogo in #1703
- misc: add issue / PR stale workflow by @imeoer in #1709
- test: support miri for unit test in actions by @BraveY in #1712
- cargo: bump crates version by @imeoer in #1714
- fix: Add filesystem sync in both container and host namespaces before commit by @jackowfish in #1717
- Increase cache_v5.rs UT coverage by @bergwolf in #1700
- storage: fix redirect in registry backend by @imeoer in #1732
- [registry] Accept empty scope during token auth challenge by @Fricounet in #1733
- chore:Remove mirrors configuration by @sf1999817 in #1723
- build: fix error when running 'make contrib-build' by @lsc2001 in #1731
- [Feature] add comprehensive issue and pull request templates by @Zephyrcf in #1736
- [Improvement] unify token fetching and improve validation by @Zephyrcf in #1739
- nydusify: fix mount for standard nydus image by @imeoer in #1743
- [Feature] improve VFS State Saving for Daemon Transitions by @Zephyrcf in #1716
- Bump containerd to v2 by @Fricounet in #1746
- [nydusify] Bump acceleration-service to build manifests with artifactType by @Fricounet in #1747
- fix: correct nydus image detection logic by @BraveY in #1751
- converter: fix plain HTTP in conversion by @bergwolf in #1749
- Fix failed batch converted CI. by @BraveY in #1753
- [nydusify] Bump acceleration-service to v0.2.20 by @Fricounet in #1756
- fix: update delete-artifact action to v5 and specify explicit artifact names by @BraveY in #1762
- [Feature] Support resending fuse requests when restoring nydusd. by @lsc2001 in #1740
- update MAINTAINERS and APPROVERS list by @imeoer in #1766
- docs: remove expired dingtalk group invitation QR code and url by @imeoer in #1767
- fix: correct some bugs and add feature of backend config for optimize subcommand by @Maxing1997 in #1755
- feat(convert): add Nydus-to-OCI reverse conversion support by @J-jxr in #1741
- feat(nydusify): support zero-disk transfer by @daiyongxuan in #1765
- [nydusify] Bump acceleration-service to v0.2.21 by @Fricounet in #1771
- build: Move rust-vmm crates into workspace by @RuoqingHe in #1770
- Fix: add recursive inode/dentry invalidation and API smoke test by @sidneychang in #1745
- Use fuse-backend
try_with_writerwhen notify resend by @lsc2001 in #1780 - [Test] enhance hot upgrade test by @Zephyrcf in #1726
- [registry] Disable token refresh thread when prefetch is enabled by @Fricounet in #1784
- fix: save vfs_state_data before save FusedevBackendState #1788 by @wgeeker in #1790
- [nydusify] Convert nydus images to/from local archives by @Fricounet in #1789
- clippy: clean up clippy warnings by @jiangliu in #1792
- cargo: bump storage crates version by @Xynnn007 in #1791
- [nydusify] Bump acceleration service to v0.2.22 by @Fricounet in #1793
- build(deps): update nydus-snapshotter to v0.15.7 and acceleration-service to v0.2.24 by @sf1999817 in #1764
- [BlobcacheMetrics] Increment entries_count when chunks become ready by @Fricounet in #1805
- Fix: fix chunk flag compatibility by replacing error with warning by @sidneychang in #1786
- docs: fix linux git repo url for china mirror by @imeoer in #1806
- Fix typo docs chuanpu by @huiboxes in #1809
- [rafs] Allow configuration of prefetch batch_size with RAFS v6 by @Fricounet in #1816
- refactor(convert): restructure Nydus-to-OCI conversion workflow by @J-jxr in #1781
- fix: builder: fix panic when a symlink overwrites a directory by @Maxing1997 in #1817
- docs: update DeepWiki badge in README by @bergwolf in #1821
- cargo-deny: upgrade hyper related dependencies by @bergwolf in #1823
- action: fix up macos release by @bergwolf in #1822
- storage: fix flaky test by @bergwolf in https://github.com...
v2.3.9
Binaries download mirror (sync within a few hours): https://registry.npmmirror.com/binary.html?path=nydus/v2.3.9/
What's Changed
- [nydusify] Convert nydus images to/from local archives by @Fricounet in #1789
- clippy: clean up clippy warnings by @jiangliu in #1792
- cargo: bump storage crates version by @Xynnn007 in #1791
- [nydusify] Bump acceleration service to v0.2.22 by @Fricounet in #1793
- build(deps): update nydus-snapshotter to v0.15.7 and acceleration-service to v0.2.24 by @sf1999817 in #1764
New Contributors
Full Changelog: v2.3.8...v2.3.9
Nydus Image Service v2.3.8
Binaries download mirror (sync within a few hours): https://registry.npmmirror.com/binary.html?path=nydus/v2.3.8/
What's Changed
- build: Move rust-vmm crates into workspace by @RuoqingHe in #1770
- Fix: add recursive inode/dentry invalidation and API smoke test by @sidneychang in #1745
- Use fuse-backend
try_with_writerwhen notify resend by @lsc2001 in #1780 - [Test] enhance hot upgrade test by @Zephyrcf in #1726
- [registry] Disable token refresh thread when prefetch is enabled by @Fricounet in #1784
- fix: save vfs_state_data before save FusedevBackendState #1788 by @wgeeker in #1790
New Contributors
- @RuoqingHe made their first contribution in #1770
- @sidneychang made their first contribution in #1745
- @wgeeker made their first contribution in #1790
Full Changelog: v2.3.7...v2.3.8
v2.3.7
Binaries download mirror (sync within a few hours): https://registry.npmmirror.com/binary.html?path=nydus/v2.3.7/
What's Changed
- fix: update delete-artifact action to v5 and specify explicit artifact names by @BraveY in #1762
- [Feature] Support resending fuse requests when restoring nydusd. by @lsc2001 in #1740
- update MAINTAINERS and APPROVERS list by @imeoer in #1766
- docs: remove expired dingtalk group invitation QR code and url by @imeoer in #1767
- fix: correct some bugs and add feature of backend config for optimize subcommand by @Maxing1997 in #1755
- feat(convert): add Nydus-to-OCI reverse conversion support by @J-jxr in #1741
- feat(nydusify): support zero-disk transfer by @daiyongxuan in #1765
- [nydusify] Bump acceleration-service to v0.2.21 by @Fricounet in #1771
New Contributors
Full Changelog: v2.3.6...v2.3.7