relaton 3.0.0.pre.alpha.2 → 3.0.0.pre.alpha.4

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: 37fab215eeedb21350f3e195a6a803d47680d35f75767d782600312cef05fa8e
4
- data.tar.gz: c4542c9253678a25c5656f213ca39e12689bef778f816b70a383333c0db422d8
3
+ metadata.gz: d2c4c35d668277f91fb1ad11eafe4da0b25f49fe9110ac81df83d8bae5bebcac
4
+ data.tar.gz: 6d0e6ce6134990d786cb67fc20c1a90a1992ced44907191e03340f3a34702c0c
5
5
  SHA512:
6
- metadata.gz: bd5901f08f8b7c4359598dc38eaa65411679884c4c860350b8b129943fa366a13dcb3f0bf91048a9922d199b364caeaf4f320cdc059898f78a5f8088364b30cd
7
- data.tar.gz: ccc9c3ce79b02416dd0a0c31a8dab36fe13da7556e9812ed5d403d66bcdc1c4ecb938d766f2376148315e4c0c3590e243c1ef5c5e97488df8a526df934df3af3
6
+ metadata.gz: dff41b1c067bc5eb8a5737b1fa6dc927dc9ef0d0b04a8e33a7bc4d637c6c78a99bbb8f4ec7cd3aeee5682cab61f099b4d15952884b990da8020db6fe9122df0d
7
+ data.tar.gz: 77c8b1aba1fb16829882b3e311416db6e2481d3800c898148810203d0805a4bd0caef2960831a464b44f9e357aff1cdad6cc9573dc02473518179621acf7f1b0
@@ -68,22 +68,30 @@ module Relaton
68
68
  self.content = pubid.exclude(:part, :subpart)
69
69
  end
70
70
 
71
- # Reduce to the all-parts form by wrapping `pubid` AS-IS (not a
72
- # part/date-stripped copy): `to_all_parts`'s own identity computation
73
- # already strips part/date for rendering (`#to_s`/`#===`), and wrapping
74
- # the original keeps `identifiers` holding the real identifier this
75
- # reference came from. BSI has no dedicated pubid `AllParts` subclass
76
- # (unlike ISO/IEC), so the wrapper is the generic
77
- # `Pubid::AllPartsIdentifier` — its `#to_s` DOES print a "(all parts)"
78
- # marker, unlike BSI's own renderer, which never had one. Because BSI
79
- # stores its parsed pubid as the single source of `content`
80
- # (`Iso::Type::Pubid`), `content` and `#pubid` can't diverge here the
81
- # way they do for flavors with a separately cached content string:
82
- # both now show the marker (see `#pubid` above, widened to accept it).
71
+ # Reduce to the all-parts form by wrapping `pubid` (not a part-stripped
72
+ # copy): `to_all_parts`'s own identity computation already strips
73
+ # part/date for rendering (`#to_s`/`#===`), and wrapping the original
74
+ # keeps `identifiers` holding the real identifier this reference came
75
+ # from. The one exception is a supplement's own year: pubid protects an
76
+ # `Amendment`/`Corrigendum`'s own date from a bare `exclude(:date)` (the
77
+ # same protection `#remove_date!` above relies on to drop the base
78
+ # year while keeping the amendment's), but `to_all_parts` builds its
79
+ # identity through that same `exclude`, so the protection would leave a
80
+ # consolidated id's amendment year distinguishing editions that
81
+ # "(all parts)" is meant to collapse — hence the explicit
82
+ # `exclude(:supplement_year)` pre-step, which force-clears it instead.
83
+ # BSI has no dedicated pubid `AllParts` subclass (unlike ISO/IEC), so
84
+ # the wrapper is the generic `Pubid::AllPartsIdentifier` — its `#to_s`
85
+ # DOES print a "(all parts)" marker, unlike BSI's own renderer, which
86
+ # never had one. Because BSI stores its parsed pubid as the single
87
+ # source of `content` (`Iso::Type::Pubid`), `content` and `#pubid`
88
+ # can't diverge here the way they do for flavors with a separately
89
+ # cached content string: both now show the marker (see `#pubid` above,
90
+ # widened to accept it).
83
91
  def to_all_parts!
84
92
  return if !pubid || pubid.all_parts?
85
93
 
86
- self.content = pubid.to_all_parts
94
+ self.content = pubid.exclude(:supplement_year).to_all_parts
87
95
  end
88
96
 
89
97
  private
@@ -1,3 +1,3 @@
1
1
  module Relaton
2
- VERSION = "3.0.0.pre.alpha.2".freeze
2
+ VERSION = "3.0.0.pre.alpha.4".freeze
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: relaton
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.0.0.pre.alpha.2
4
+ version: 3.0.0.pre.alpha.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ribose Inc.
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2026-09-24 00:00:00.000000000 Z
11
+ date: 2026-09-25 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: addressable
@@ -442,14 +442,14 @@ dependencies:
442
442
  requirements:
443
443
  - - "~>"
444
444
  - !ruby/object:Gem::Version
445
- version: '3.4'
445
+ version: '3.7'
446
446
  type: :runtime
447
447
  prerelease: false
448
448
  version_requirements: !ruby/object:Gem::Requirement
449
449
  requirements:
450
450
  - - "~>"
451
451
  - !ruby/object:Gem::Version
452
- version: '3.4'
452
+ version: '3.7'
453
453
  - !ruby/object:Gem::Dependency
454
454
  name: w3c_api
455
455
  requirement: !ruby/object:Gem::Requirement