canon 0.3.41 → 0.3.42

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: 3b6ae46cc828d11dd9474dbaad7453e48cd8c6282d6523732683e06812c919ba
4
- data.tar.gz: d9245d48440921bca331af7c3be00843c21647cbd043473580c6a218f6a15f77
3
+ metadata.gz: 0a54063c501419f65316ce159b9ff85c7179d49afc6a0c7d3d17f5adef2981a0
4
+ data.tar.gz: f535a9131aed98326fe7c8fa13c70fe39f2913451b39a83a82d2df6ab636219c
5
5
  SHA512:
6
- metadata.gz: 7e9eb37f4285e047e2defa49566b19f3d2ddec40cb1fe55f6711c16674dcd076a805244c1716996a442b1bac99dc44af8e2c56ef89c49d677a5cf6649096adcc
7
- data.tar.gz: f39f78aae5823e33033d328138da4dc5a748c3ee1c55079190457f926bcebeea4767ffc5e515132cd3e767347d80b4065c7fdd1d8e60e7a0833306053271b2e3
6
+ metadata.gz: 82f5cb1c13b63065112deb746b569e9abf902322c8cff3e94568a05db86f605872f739aa15ca0f82ccab425f92494dd5fcfc9f83ee2b99b4a8309c4c34533474
7
+ data.tar.gz: 72002e2e958716c54fa353ffd6fffda94b98e7eeac8e05510af5fa92f4c576fe37c2f5c06fa9d44feae84ba8e9a698ededd8405504b49f28620cc29418f21f22
data/lib/canon/version.rb CHANGED
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Canon
4
- VERSION = "0.3.41"
4
+ VERSION = "0.3.42"
5
5
  end
@@ -22,13 +22,20 @@ module Canon
22
22
  processor.process(root_node)
23
23
  end
24
24
 
25
- # leptris' C-side C14N 1.1 — ~50x faster than the Ruby processor
26
- # but NOT yet byte-identical on canon's edge-case corpus
27
- # (attribute ordering, `>` escaping, document-level PIs, one
28
- # prefix case leptris#1015; the parity spec pins
29
- # each). Opt-in via CANON_C14N_BACKEND=leptris until those
30
- # close; comments mode keeps the Ruby path regardless (the
31
- # native seam exposes no with-comments form).
25
+ # leptris' C-side C14N 1.1 — 23x faster than the Ruby processor
26
+ # through canon's own API (1MB document). libleptris 1.9.164
27
+ # closed four of the five leptris#1015 families (attribute
28
+ # ordering, prefix loss and rebinding, `>` and TAB escaping —
29
+ # unpinned in the parity spec since gem 1.9.174.0). A local
30
+ # default-flip attempt surfaced three MORE divergences the
31
+ # edge corpus did not cover, so the lane stays opt-in
32
+ # (CANON_C14N_BACKEND=leptris) until they close (leptris#1096):
33
+ # redundant namespace redeclarations are kept (Ruby removes
34
+ # them), xmlns:xml with the standard URI is kept (Ruby omits
35
+ # it), and document-level processing instructions are dropped.
36
+ # The Ruby lane additionally validates relative namespace URIs
37
+ # at parse time — a future flip must carry that check into the
38
+ # native wrapper. Comments mode keeps the Ruby path regardless.
32
39
  def self.native_canonicalize(xml, with_comments)
33
40
  return nil if with_comments
34
41
  return nil if RUBY_ENGINE == "opal"
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: canon
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.41
4
+ version: 0.3.42
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ribose Inc.