kettle-jem 7.1.34 → 7.1.36

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: e652034338fd5859484f79531a6d6a14e1e12379e3d2b72144f4df384bfb7d66
4
- data.tar.gz: 0e96ba0332102c087f9f431569996228dd242b698076a9ca1536c29fa5205690
3
+ metadata.gz: '0094c748646fa2cd3b6323dd9f33a91fade4d50beccd1228fa3110a1fafb8eb4'
4
+ data.tar.gz: 0cc786c8fc4b58d259b83b3ed95f4415f40d42220f18d4a8de9014d9efe829ed
5
5
  SHA512:
6
- metadata.gz: fecfbcc62374cf07646674827e23baabffaec9d7d294b1d6434d3806561b0c8a6c6573ee2a82bf99e765ae3fbc6063761a419f57e33c20e6b29edef84cf093dd
7
- data.tar.gz: 8566b17caba41147787adf29ce20730f0a6ba5073b263ec05a96bb09f17d072bb6cb3387b5e05ef01746f73cde2b3132aa77dd5d0fef5a1e34e1fdd457326901
6
+ metadata.gz: b23a45cb7fe8737bd1a1fc0fe62b62b7b9639c7b7c9f9311cf178a4dd0dde4f9ea422e143eec8a91c923315251a081674566e29b0a88f7ce125d8d26f90e286d
7
+ data.tar.gz: 00e22914f132cce23ff0fceaa4d052d947a90460a7a60595db3b2367fb9b64d6d5c91990c71c8b219b0a01961a491fd00a07046475b99b910007f637784eb54d
checksums.yaml.gz.sig CHANGED
Binary file
data/CHANGELOG.md CHANGED
@@ -30,6 +30,28 @@ Please file a bug if you notice a violation of semantic versioning.
30
30
 
31
31
  ### Security
32
32
 
33
+ ## [7.1.36] - 2026-10-20
34
+
35
+ - TAG: [v7.1.36][7.1.36t]
36
+ - COVERAGE: 93.45% -- 11392/12191 lines in 17 files
37
+ - BRANCH COVERAGE: 77.08% -- 4908/6367 branches in 17 files
38
+ - 19.90% documented
39
+
40
+ ### Fixed
41
+
42
+ - Recognize linked Git worktrees of the local RuboCop-LTS checkout and skip redundant branch switching during templating.
43
+
44
+ ## [7.1.35] - 2026-10-20
45
+
46
+ - TAG: [v7.1.35][7.1.35t]
47
+ - COVERAGE: 93.46% -- 11385/12182 lines in 17 files
48
+ - BRANCH COVERAGE: 77.09% -- 4907/6365 branches in 17 files
49
+ - 19.87% documented
50
+
51
+ ### Fixed
52
+
53
+ - Match direct-versus-modular dependency decisions across a modular Gemfile and its _local.gemfile counterpart.
54
+
33
55
  ## [7.1.34] - 2026-10-20
34
56
 
35
57
  - TAG: [v7.1.34][7.1.34t]
@@ -2348,7 +2370,11 @@ Please file a bug if you notice a violation of semantic versioning.
2348
2370
  - Released kettle-jem as part of the initial StructuredMerge Ruby 7.0.0 gem set.
2349
2371
  - Included packaged templates and parser-backed merge support for Ruby gem templating.
2350
2372
 
2351
- [Unreleased]: https://github.com/structuredmerge/structuredmerge-ruby/compare/v7.1.34...HEAD
2373
+ [Unreleased]: https://github.com/structuredmerge/structuredmerge-ruby/compare/v7.1.36...HEAD
2374
+ [7.1.36]: https://github.com/structuredmerge/structuredmerge-ruby/compare/v7.1.35...v7.1.36
2375
+ [7.1.36t]: https://github.com/structuredmerge/structuredmerge-ruby/releases/tag/v7.1.36
2376
+ [7.1.35]: https://github.com/structuredmerge/structuredmerge-ruby/compare/v7.1.34...v7.1.35
2377
+ [7.1.35t]: https://github.com/structuredmerge/structuredmerge-ruby/releases/tag/v7.1.35
2352
2378
  [7.1.34]: https://github.com/structuredmerge/structuredmerge-ruby/compare/v7.1.33...v7.1.34
2353
2379
  [7.1.34t]: https://github.com/structuredmerge/structuredmerge-ruby/releases/tag/v7.1.34
2354
2380
  [7.1.33]: https://github.com/structuredmerge/structuredmerge-ruby/compare/v7.1.32...v7.1.33
data/README.md CHANGED
@@ -923,7 +923,7 @@ Thanks for RTFM. ☺️
923
923
  [📌gitmoji]: https://gitmoji.dev
924
924
  [📌gitmoji-img]: https://img.shields.io/badge/gitmoji_commits-%20%F0%9F%98%9C%20%F0%9F%98%8D-34495e.svg?style=flat-square
925
925
  [🧮kloc]: https://www.youtube.com/watch?v=dQw4w9WgXcQ
926
- [🧮kloc-img]: https://img.shields.io/badge/KLOC-12.178-FFDD67.svg?style=for-the-badge&logo=YouTube&logoColor=blue
926
+ [🧮kloc-img]: https://img.shields.io/badge/KLOC-12.191-FFDD67.svg?style=for-the-badge&logo=YouTube&logoColor=blue
927
927
  [🔐security]: https://github.com/structuredmerge/structuredmerge-ruby/blob/main/SECURITY.md
928
928
  [🔐security-img]: https://img.shields.io/badge/security-policy-259D6C.svg?style=flat
929
929
  [📄copyright-notice-explainer]: https://opensource.stackexchange.com/questions/5778/why-do-licenses-such-as-the-mit-license-specify-a-single-year
@@ -928,7 +928,7 @@ module Kettle
928
928
  end
929
929
 
930
930
  checkout = File.join(local_root, "rubocop-lts")
931
- if project_root && same_path?(project_root, checkout)
931
+ if project_root && (same_path?(project_root, checkout) || same_git_repository?(project_root, checkout))
932
932
  return {
933
933
  name: "rubocop_lts_local_branch",
934
934
  status: "skipped",
@@ -963,6 +963,21 @@ module Kettle
963
963
  Kettle::Dev::Paths.same?(left.to_s, right.to_s)
964
964
  end
965
965
 
966
+ def same_git_repository?(left, right)
967
+ left_common_dir = git_common_dir(left)
968
+ right_common_dir = git_common_dir(right)
969
+ left_common_dir && right_common_dir && same_path?(left_common_dir, right_common_dir)
970
+ end
971
+
972
+ def git_common_dir(path)
973
+ stdout, _stderr, status = Open3.capture3("git", "-C", path.to_s, "rev-parse", "--git-common-dir")
974
+ return unless status.success?
975
+
976
+ File.expand_path(stdout.to_s.strip, path.to_s)
977
+ rescue Errno::ENOENT
978
+ nil
979
+ end
980
+
966
981
  def rubocop_lts_local_root(env)
967
982
  env ||= {}
968
983
  # RUBOCOP_LTS_LOCAL is a compatibility alias for projects generated
@@ -5,7 +5,7 @@ module Kettle
5
5
  # Version namespace for this gem.
6
6
  module Version
7
7
  # Current gem version.
8
- VERSION = "7.1.34"
8
+ VERSION = "7.1.36"
9
9
  end
10
10
  # Current gem version exposed at the traditional constant location.
11
11
  VERSION = Version::VERSION # Traditional Constant Location
data/lib/kettle/jem.rb CHANGED
@@ -9875,15 +9875,26 @@ module Kettle
9875
9875
  entries.any? do |entry|
9876
9876
  entry["gem"] == conflict.fetch(:name) &&
9877
9877
  entry["direct"] == conflict.fetch(:direct) &&
9878
- entry["modular"] == conflict.fetch(:modular)
9878
+ modular_dependency_paths_match?(entry["modular"], conflict.fetch(:modular))
9879
9879
  end
9880
9880
  end
9881
9881
 
9882
+ # Local modular Gemfiles are environment-selected counterparts of the
9883
+ # released modular Gemfile. Treat their paths as one logical decision key;
9884
+ # otherwise a decision for style.gemfile will not cover style_local.gemfile.
9885
+ def modular_dependency_paths_match?(left, right)
9886
+ normalize_modular_dependency_path(left) == normalize_modular_dependency_path(right)
9887
+ end
9888
+
9889
+ def normalize_modular_dependency_path(path)
9890
+ path.to_s.sub(/_local\.gemfile\z/, ".gemfile")
9891
+ end
9892
+
9882
9893
  def modular_dependency_conflict_decided?(decisions, conflict)
9883
9894
  decisions.any? do |decision|
9884
9895
  decision.fetch("gem") == conflict.fetch(:name) &&
9885
9896
  decision.fetch("direct") == conflict.fetch(:direct) &&
9886
- decision.fetch("modular") == conflict.fetch(:modular) &&
9897
+ modular_dependency_paths_match?(decision.fetch("modular"), conflict.fetch(:modular)) &&
9887
9898
  case decision.fetch("action")
9888
9899
  when "remove_modular_gem", "remove_x_std_lib_eval", "remove_direct_gem"
9889
9900
  true
data.tar.gz.sig CHANGED
Binary file
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: kettle-jem
3
3
  version: !ruby/object:Gem::Version
4
- version: 7.1.34
4
+ version: 7.1.36
5
5
  platform: ruby
6
6
  authors:
7
7
  - Peter H. Boling
@@ -997,10 +997,10 @@ licenses:
997
997
  - PolyForm-Small-Business-1.0.0
998
998
  metadata:
999
999
  homepage_uri: https://structuredmerge.org
1000
- source_code_uri: https://github.com/structuredmerge/structuredmerge-ruby/tree/v7.1.34
1001
- changelog_uri: https://github.com/structuredmerge/structuredmerge-ruby/blob/v7.1.34/CHANGELOG.md
1000
+ source_code_uri: https://github.com/structuredmerge/structuredmerge-ruby/tree/v7.1.36
1001
+ changelog_uri: https://github.com/structuredmerge/structuredmerge-ruby/blob/v7.1.36/CHANGELOG.md
1002
1002
  bug_tracker_uri: https://github.com/structuredmerge/structuredmerge-ruby/issues
1003
- documentation_uri: https://www.rubydoc.info/gems/kettle-jem/7.1.34
1003
+ documentation_uri: https://www.rubydoc.info/gems/kettle-jem/7.1.36
1004
1004
  funding_uri: https://github.com/sponsors/pboling
1005
1005
  wiki_uri: https://github.com/structuredmerge/structuredmerge-ruby/wiki
1006
1006
  news_uri: https://www.railsbling.com/tags/kettle-jem
metadata.gz.sig CHANGED
Binary file