Conversation
fuse3 lib had a .so bump between 3.16 and 3.17, so both versions cannot be present in the same major release, since all packages built with fuse3 3.16 will have a runtime dep on libfuse3.so.3, while installing fuse3 3.17 will remove libfuse3.so.3 and install libfuse3.so.4 Signed-off-by: Thien Trung Vuong <tvuong@microsoft.com>
There was a problem hiding this comment.
Pull request overview
Pins the fuse3 component to an upstream commit intended to keep fuse3-libs on the SONAME that provides libfuse3.so.3, avoiding the 3.17.x SONAME bump that would break runtime dependencies in the distro.
Changes:
- Add a comment explaining the rationale for pinning
fuse3to 3.16.2. - Replace the previous Fedora 42 upstream-distro pin with an
upstream-commitpin.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| @@ -1,2 +1,3 @@ | |||
| # Pin to version 3.16.2. Version 3.17.x updates the soname and would break packages that depend on fuse3-libs | |||
There was a problem hiding this comment.
The upstream commit pin is missing a reference URL (e.g., the Fedora dist-git commit link) and an exit condition/TODO for when this pin can be removed. Adding those in the comment above the spec line makes it much easier to audit why we’re pinned and when we should re-align with the default Fedora 43 snapshot.
| # Pin to version 3.16.2. Version 3.17.x updates the soname and would break packages that depend on fuse3-libs | |
| # Pin to Fedora fuse3 3.16.2 because 3.17.x updates the soname and would break packages that depend on fuse3-libs. | |
| # Fedora dist-git commit: https://src.fedoraproject.org/rpms/fuse3/c/f718bab813a887de21faa4a63ee1167c53348641 | |
| # TODO: Remove this pin and re-align with the default Fedora 43 snapshot once Azure Linux packages depending on fuse3-libs | |
| # have been rebuilt or otherwise updated for the 3.17.x soname change. |
| # Pin to version 3.16.2. Version 3.17.x updates the soname and would break packages that depend on fuse3-libs | ||
| [components.fuse3] | ||
| spec = { type = "upstream", upstream-name = "fuse3", upstream-distro = { name = "fedora", version = "42" } } | ||
| spec = { type = "upstream", upstream-commit = "f718bab813a887de21faa4a63ee1167c53348641" } |
There was a problem hiding this comment.
This changes from an explicit Fedora 42 pin (upstream-distro = { name = "fedora", version = "42" }) to relying on defaults. Azure Linux’s default upstream distro is Fedora 43 (stage1/stage2), so if this commit is only reachable from the f42 dist-git history, azldev may fail to fetch/checkout it (or could re-align to Fedora 43 behavior unintentionally). Consider keeping upstream-distro = { name = "fedora", version = "42" } alongside upstream-commit to make the pin unambiguous and robust.
| spec = { type = "upstream", upstream-commit = "f718bab813a887de21faa4a63ee1167c53348641" } | |
| # Pin the upstream dist-git branch as well as the commit so azldev does not fall back to the | |
| # Azure Linux default Fedora version and accidentally resolve against Fedora 43 behavior/history. | |
| spec = { type = "upstream", upstream-distro = { name = "fedora", version = "42" }, upstream-commit = "f718bab813a887de21faa4a63ee1167c53348641" } |
pin to version 3.16.2 that provides libfuse3.so.3