gemkeeper 0.7.0 → 0.7.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: bed56339bf29ed0dd82b9aec9c94a4a466b0d38364b3b3e5280d4d51b1101cf0
4
- data.tar.gz: '09132dd1f425d64e0c423386583a29c9010b0f73fe016088428e5a3fe5dbe57c'
3
+ metadata.gz: 1963f11f1398f4b7df5a3419c976c5fba5c7edee03e0970aafe05a05ae7b4edb
4
+ data.tar.gz: a9423d2e29edc43c226607aad64710cb89fcc5c6137c9fc77e81b25d6155f456
5
5
  SHA512:
6
- metadata.gz: 4e1178a59bda6fd8f299f1e16e68d828ae23b8176785dba7cff5c6c7f7d8776563e564fcadbb0746ea11bc8ce808a00be89de06836cf36dd49ecfbb52f401de4
7
- data.tar.gz: 81e4e60ce2f0ced3d809448f4bbbada9a959bbc33215f27808c5eaf4a7987e56f6905259e26c93b1e09b177c503b5422702d7fb940f08855ae2e314c84146670
6
+ metadata.gz: 149f78d533d763dc521fae974af15155f7a98d09f9f35b96589d037efff0fdf9b2511f311fa231928bab12177dd4e07d828aab3ba0d71d59c69b7b1abdc9213a
7
+ data.tar.gz: 4ceb27fc1db5d2d62323c99951997e6fbd8a52323ea1c266ac2f3cdd477da7b2409c3bc1f1bec51b3d6feb4ac80a1e9a7af9ef4c8a329807162cc15671c134b6
data/CHANGELOG.md CHANGED
@@ -1,5 +1,12 @@
1
1
  ## [Unreleased]
2
2
 
3
+ ## [0.7.1] - 2026-05-28
4
+
5
+ ### Fixed
6
+
7
+ - `gemkeeper setup` no longer duplicates entries when an existing `gemkeeper.yml` has `repo:`-only entries (no `name:`) whose URL basename differs from the manifest gem name.
8
+ The merge now resolves those entries by repo URL against the manifest to find the canonical name, then replaces the old entry in place rather than keeping it and appending a new one.
9
+
3
10
  ## [0.7.0] - 2026-05-28
4
11
 
5
12
  ### Changed
@@ -154,7 +161,8 @@
154
161
 
155
162
  - Initial release
156
163
 
157
- [Unreleased]: https://github.com/danhorst/gemkeeper/compare/v0.7.0...HEAD
164
+ [Unreleased]: https://github.com/danhorst/gemkeeper/compare/v0.7.1...HEAD
165
+ [0.7.1]: https://github.com/danhorst/gemkeeper/compare/0.7.0...0.7.1
158
166
  [0.7.0]: https://github.com/danhorst/gemkeeper/compare/0.6.7...0.7.0
159
167
  [0.6.7]: https://github.com/danhorst/gemkeeper/compare/0.6.6...0.6.7
160
168
  [0.6.6]: https://github.com/danhorst/gemkeeper/compare/0.6.5...0.6.6
@@ -66,7 +66,7 @@ module Gemkeeper
66
66
  end
67
67
 
68
68
  updated = existing_gems.map do |entry|
69
- name = entry["name"] || File.basename(entry["repo"].to_s, ".git").sub(/^ruby-/, "")
69
+ name = canonical_name(entry)
70
70
  if (new_entry = new_by_name.delete(name))
71
71
  entry.except("version", "repo", "name").merge(new_entry)
72
72
  else
@@ -77,5 +77,13 @@ module Gemkeeper
77
77
  updated += new_by_name.values
78
78
  existing.merge("gems" => updated)
79
79
  end
80
+
81
+ def canonical_name(entry)
82
+ return entry["name"] if entry["name"]
83
+
84
+ repo = entry["repo"].to_s
85
+ manifest_entry = @manifest.gems.find { |g| g[:repo] == repo }
86
+ manifest_entry&.fetch(:name) || File.basename(repo, ".git").sub(/^ruby-/, "")
87
+ end
80
88
  end
81
89
  end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Gemkeeper
4
- VERSION = "0.7.0"
4
+ VERSION = "0.7.1"
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: gemkeeper
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.7.0
4
+ version: 0.7.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Dan Brubaker Horst