parsanol 1.3.119 → 1.3.120

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: 67aae8e5d3989aea79f8b7934427aa3bc48f5538e376b064b41139f2cf2a7ee5
4
- data.tar.gz: 20e5ad4cf20805a5f5f3416bd3b9e01c6f641dae2445d426e3d18940f675084d
3
+ metadata.gz: e61dcbc90916d0c5bc6d82ecfa1f4c1f76987df549b49460a20e01622bb0a159
4
+ data.tar.gz: 3a4214dcc35b10e44819910f78cc1905dce036c1789ab7162c8819f92ffc15a6
5
5
  SHA512:
6
- metadata.gz: 1c841924f938fb86048edc8aef0f3634e9f0a9a25285bf654867896ece9c5158d9e21f680a5f8d89d01dd0bf383777e6b646a40dcbc94a65b40e3f75543dbf3b
7
- data.tar.gz: 99f3cfd84878458d5657f3a3626c17f74af3e7faf7bd63af4977ca6d133cdb7d9adcbb130087a783d452e4155443b51ffdfe14b77cc04019fe87c3a4ce76c44a
6
+ metadata.gz: b9be0ac6018e475fbaba69dc3f95a0ca55567f8664049aaab3b7ffa20a5dafc7c2508da7d3aa66768010373a6b926426761e134ce39b490e0663b0394ea0ffb7
7
+ data.tar.gz: 0373d7ad8a5e0c5dad37702b59c22e12fd75646a2de59fbe1dbaa7d02dcd9a297b099c8a32759a3a048acf0c63e9d7b7a8f212a616e4f7c8caf41fa8be29776c
data/Cargo.lock CHANGED
@@ -307,9 +307,9 @@ checksum = "9f7c3e4beb33f85d45ae3e3a1792185706c8e16d043238c593331cc7cd313b50"
307
307
 
308
308
  [[package]]
309
309
  name = "parsanol"
310
- version = "0.19.16"
310
+ version = "0.19.17"
311
311
  source = "registry+https://github.com/rust-lang/crates.io-index"
312
- checksum = "f596e68877779b96fc95f22596888ae5aa225808d3036b07bbe4bdea64dc1ce7"
312
+ checksum = "761b572291fd7bad4514b55492cc402d297dd1586e48d1daad6ca25a927968b1"
313
313
  dependencies = [
314
314
  "ahash",
315
315
  "getrandom 0.3.4",
@@ -326,9 +326,9 @@ dependencies = [
326
326
 
327
327
  [[package]]
328
328
  name = "parsanol-derive"
329
- version = "0.19.16"
329
+ version = "0.19.17"
330
330
  source = "registry+https://github.com/rust-lang/crates.io-index"
331
- checksum = "6c143eb5133735869adbf4740919948c5f6a2cf234beb16e0b57bcfd5fdbd1a6"
331
+ checksum = "3831668982431ef76e72800bd4cb399c38f0b51554541d4e4263a09fe461f460"
332
332
  dependencies = [
333
333
  "proc-macro2",
334
334
  "quote",
@@ -37,8 +37,8 @@ module Parsanol
37
37
  @grammar_name = nil
38
38
  # The default capture dialect is v1 (the owner's reversal,
39
39
  # 2026-10-28): runtime compiles of unpinned sources keep the
40
- # legacy shapes — the pubid fleet froze against them. mode "v2"
41
- # stays the named-trees opt-in via the grammar header.
40
+ # legacy shapes — the pubid fleet froze against them. edition
41
+ # "v2" is the named-trees opt-in via the grammar header.
42
42
  @edition = "v1"
43
43
  @version = "0.0.0"
44
44
  @source = nil
@@ -261,12 +261,16 @@ module Parsanol
261
261
  # the author declares, per grammar, which tree semantics the
262
262
  # grammar means. THE DEFAULT IS 1 (the legacy shapes — the
263
263
  # owner's 2026-10-28 reversal). 2 = fully named trees +
264
- # explicit spans. `mode` remains accepted as a deprecated
265
- # alias for the keyword. The edition is canonicalized here —
266
- # everything downstream only ever sees "v1"/"v2".
267
- if peek&.type == :ident && %w[edition mode].include?(peek.value)
264
+ # explicit spans. The edition is canonicalized here —
265
+ # everything downstream only ever sees "v1"/"v2". The
266
+ # pre-1.3.113 `mode` alias was removed (the owner's
267
+ # 2026-10-31 ruling): the header fails with the fix named.
268
+ if peek&.type == :ident && peek.value == "edition"
268
269
  advance
269
270
  document.edition = edition_value
271
+ elsif peek&.type == :ident && peek.value == "mode"
272
+ raise ParseError,
273
+ 'the grammar header keyword is edition; mode (the pre-1.3.113 alias) was removed — write edition "v1" or edition "v2"'
270
274
  end
271
275
  punct("{")
272
276
  skip_newlines
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Parsanol
4
- VERSION = "1.3.119"
4
+ VERSION = "1.3.120"
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: parsanol
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.3.119
4
+ version: 1.3.120
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ribose Inc.