Bug #39355
openGemfile.lock pins older versions of amazing_print, ffi, multi_json
Description
The Hammer CLI Gemfile.lock pins older versions of several gems compared to other Foreman ecosystem projects (Foreman, Smart Proxy). This causes list_updatable_packages in foreman-packaging to emit CONFLICT warnings and skip automatic version bumps for the corresponding RPM packages.
Affected gems¶
| Gem | Hammer CLI pin | Other projects | Note |
|---|---|---|---|
| amazing_print | 1.6.0 | 1.7.2 (foreman) | stale lock |
| ffi | 1.16.3 | 1.17.4 (foreman, smart-proxy) | intentional ffi (< 1.17) constraint in Gemfile |
| multi_json | 1.15.0 | 1.19.1 (foreman, smart-proxy) | stale lock |
Note: ffi is not just a stale lock — hammer-cli's Gemfile explicitly constrains ffi (< 1.17). Resolving this requires removing or relaxing the constraint in the Gemfile, not just running bundle update.
Impact¶
The list_updatable_packages script in foreman-packaging merges Gemfile.lock versions from multiple CI jobs (foreman, smart-proxy, hammer-cli, hammer-cli-foreman). When the same gem has different pinned versions across locks, the script marks it as CONFLICT and skips the package entirely — preventing automated version bumps.
Suggested fix¶
amazing_print,multi_json: Runbundle update amazing_print multi_jsonand commit the updated Gemfile.lock.ffi: Remove or relax theffi (< 1.17)constraint in the Gemfile, then runbundle update ffi.
Updated by Ondřej Gajdušek 3 months ago
- Related to Bug #39353: Gemfile.lock pins older versions of concurrent-ruby, jwt, thor, unicode-display_width added
Updated by Ondřej Gajdušek 3 months ago
- Related to Bug #39354: Gemfile.lock pins older versions of thor and unicode-display_width added
Updated by Ondřej Gajdušek 3 months ago
- Found in Releases hammer-cli-5.0.0 added