cddl 0.12.10 → 0.12.11

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.
Files changed (4) hide show
  1. checksums.yaml +4 -4
  2. data/cddl.gemspec +1 -1
  3. data/lib/cddl.rb +12 -2
  4. metadata +3 -6
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 49a1d0bc5804fcc0cc5d3a67b3b6754e917146021043b63fb53de148e568029b
4
- data.tar.gz: ab3c7a943a3d8acf7f557f1f796ca30de5572417ea5bb7ad198edf6453ceed4c
3
+ metadata.gz: cfdab2f7b34bf400cc492abf8c301a90e01176423c6d1fb41ec45cc439a7757f
4
+ data.tar.gz: 06e53c2536c2a7aa1510f989b2cf8d01d0becbbc71a7264aa8355f29adddb0ad
5
5
  SHA512:
6
- metadata.gz: e395661ff52a4dd30cfa8e22275c1a247f0ffbe24643a568c431372b7ed86a487ce6d2334cdbe07786e96e0931ed265c653e03c65917a3f82e5b5bdb1046e77b
7
- data.tar.gz: b022f002061187c6d35312e4e9339dcc01b7b7da3a25f536e8789463f7dd0ec070df99e3ccba93e06e267a3ec938725c05301e3331f60cbb0d441f3be379fab3
6
+ metadata.gz: 170ddd4fa055f9efd24092af3147d4175fdb089e290eafcd418e6a16204250cfa6769f3d53124c5fc6161608301b21186e4d2348bae489175d8ab546230ff5b0
7
+ data.tar.gz: 17025b96351c9def9fe171cd74fc9398eeba3e927eb715b691880b2dd9812e1ea7268bbfc42dfe896d5be3cbf8ad0535cbb0a942cae80b04cdbc97a84e5eb293
data/cddl.gemspec CHANGED
@@ -1,6 +1,6 @@
1
1
  spec = Gem::Specification.new do |s|
2
2
  s.name = 'cddl'
3
- s.version = '0.12.10'
3
+ s.version = '0.12.11'
4
4
  s.summary = "CDDL generator and validator."
5
5
  s.description = %{A parser, generator, and validator for CDDL}
6
6
  s.add_dependency('cbor-diag')
data/lib/cddl.rb CHANGED
@@ -119,6 +119,16 @@ module CDDL
119
119
  r.compact
120
120
  end
121
121
 
122
+ def longest_initial_match(old, now)
123
+ md = /\A(.*)(.*)\n\1(.*)\z/.match([old,now].join("\n"))
124
+ md[1..3]
125
+ end
126
+
127
+ def diff_message(old, now)
128
+ c, l, r = longest_initial_match(old, now)
129
+ "-- common: >#{c}< -- old: >#{l}< -- new: >#{r}<"
130
+ end
131
+
122
132
  def cname(s)
123
133
  s.to_s.gsub(/-/, "_")
124
134
  end
@@ -205,7 +215,7 @@ module CDDL
205
215
  ids = g.children(:id).map(&:to_s)
206
216
  # puts ["ids", ids].inspect
207
217
  if b = @generics[n]
208
- fail "Duplicate generics definition #{n} as #{rule_ast} (was #{b})"
218
+ fail "Duplicate generics definition #{n} #{diff_message(strip_nodes(b[0]).inspect, strip_nodes(rule_ast).inspect)}"
209
219
  end
210
220
  @generics[n] = [rule_ast, ids]
211
221
  else
@@ -217,7 +227,7 @@ module CDDL
217
227
  if a == b
218
228
  warn "*** Warning: Identical redefinition of #{n} as #{a}"
219
229
  else
220
- fail "Duplicate rule definition #{n} as #{b} (was #{a})"
230
+ fail "Duplicate rule definition #{n} #{diff_message(b, a)}"
221
231
  end
222
232
  end
223
233
  @rules[n] = rule_ast
metadata CHANGED
@@ -1,14 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: cddl
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.12.10
4
+ version: 0.12.11
5
5
  platform: ruby
6
6
  authors:
7
7
  - Carsten Bormann
8
- autorequire:
9
8
  bindir: bin
10
9
  cert_chain: []
11
- date: 2025-01-09 00:00:00.000000000 Z
10
+ date: 2025-05-07 00:00:00.000000000 Z
12
11
  dependencies:
13
12
  - !ruby/object:Gem::Dependency
14
13
  name: cbor-diag
@@ -277,7 +276,6 @@ homepage: https://www.rfc-editor.org/rfc/rfc8610#appendix-F
277
276
  licenses:
278
277
  - MIT
279
278
  metadata: {}
280
- post_install_message:
281
279
  rdoc_options: []
282
280
  require_paths:
283
281
  - lib
@@ -292,8 +290,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
292
290
  - !ruby/object:Gem::Version
293
291
  version: '0'
294
292
  requirements: []
295
- rubygems_version: 3.5.14
296
- signing_key:
293
+ rubygems_version: 3.6.2
297
294
  specification_version: 4
298
295
  summary: CDDL generator and validator.
299
296
  test_files: []