moxml 0.5.67 → 0.5.68

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: 945e557e4dbc4028aa2c97eff20d12d62e34e866a1b27b788908ead119f9fbac
4
- data.tar.gz: 7e327b86a60671f9824fec042b61da3a41753d8e13103062346a5941c3d14980
3
+ metadata.gz: c7ec66b00a34ed3918ab24c9b8bcc494e487927f99ad7557909ddf7e6701f8e3
4
+ data.tar.gz: f0ee8feffee4bbf33c403dd5e1f6d3b44c7b8dee5efa7410bab490d3de0157a7
5
5
  SHA512:
6
- metadata.gz: fd59e3f68acd8471903331eff3696af0fae5e64b06a49bd7d7526a5b4ee52078bc52d763e4bc2554f8294f90a4540836f1c2c2e0a8d6f9c3505706f4383a119e
7
- data.tar.gz: e5ac7c12f77a6f89e2e3e55252cf7d67acce9340d61702e344fa818f8168749e59bc91c831c41e446509134e17e9f7fc526ba8105040ef34a66ef33a3a57f984
6
+ metadata.gz: aa0d67f8dec259694dae78abd1a009710beecf97b785297092bef801b53ebe14f9bf980d9ac671d3be0cd8f003773e8556bcfb8ba85eeb5830ff5fd779703042
7
+ data.tar.gz: 4e18e8625fae38b9b1857489b3e8d04649c6930b1ace17be78a3863c42a33e2402a329be95e78fb3804fb7d2207d1bbf6d4f22588b868e8291cf156337b87b5a
@@ -3,10 +3,10 @@
3
3
  module Moxml
4
4
  module Adapter
5
5
  module CustomizedLeptris
6
- # Wrapper for an XML declaration. libleptris stores declaration
7
- # data on the document struct (read-only, serialized via options)
8
- # and has no first-class declaration node, so Moxml exposes this
9
- # mutable value object instead.
6
+ # Wrapper for an XML declaration. libleptris gained declaration
7
+ # setters (#1094) but has no first-class declaration node and no
8
+ # way to clear the state, so Moxml exposes this mutable,
9
+ # removable value object instead.
10
10
  class Declaration
11
11
  attr_accessor :version, :encoding, :standalone, :parent_doc
12
12
 
@@ -3,9 +3,11 @@
3
3
  module Moxml
4
4
  module Adapter
5
5
  module CustomizedLeptris
6
- # Wrapper for a programmatic DOCTYPE. libleptris only parses
7
- # DOCTYPEs from source; it has no API to create one, so Moxml
8
- # stores this value object in the document's attachments.
6
+ # Wrapper for a programmatic DOCTYPE. libleptris can create
7
+ # one (Document#set_doctype, 1.9.176 / #212) but cannot unset
8
+ # it, and the facade contract makes DOCTYPEs removable nodes —
9
+ # so Moxml keeps this value object as the lifecycle record in
10
+ # the document's attachments.
9
11
  class Doctype
10
12
  attr_accessor :name, :external_id, :system_id, :parent_doc
11
13
 
@@ -9,7 +9,8 @@ module Moxml
9
9
  # the root), reachable through Document#processing_instructions
10
10
  # as [target, data] pairs. This pseudo-native gives the pairs a
11
11
  # node identity so the moxml contract can list them as document
12
- # children.
12
+ # children (and answer mutations: creation routes native via
13
+ # add_pi; removal has no engine entry).
13
14
  class DocumentPI
14
15
  attr_accessor :target, :data, :parent_doc
15
16
  alias content data
@@ -3,9 +3,11 @@
3
3
  module Moxml
4
4
  module Adapter
5
5
  module CustomizedLeptris
6
- # libleptris expands the five built-in entities at parse time
7
- # and has no custom ones; the adapter carries entity references
8
- # as Moxml::Entity::Reference values over marker-bearing text.
6
+ # Parse-path face: libleptris expands the five built-in entities
7
+ # at parse time and has no custom ones, so parsed references are
8
+ # carried as Moxml::Entity::Reference values over marker-bearing
9
+ # text. Programmatic creation is native (NATIVE_ENTITY_REFS,
10
+ # binding >= 1.9.177).
9
11
  EntityReference = ::Moxml::Entity::Reference
10
12
  end
11
13
  end
@@ -12,9 +12,12 @@ module Moxml
12
12
  # Adapter over the leptris FFI binding (libleptris C library).
13
13
  #
14
14
  # libleptris provides DOM parsing, a native XPath 1.0 engine, SAX,
15
- # and serialization. It has no first-class XML declaration or
16
- # programmatic DOCTYPE, so those live in CustomizedLeptris value
17
- # objects stored through NativeAttachment.
15
+ # and serialization. Its document-level creation surfaces exist
16
+ # (set_doctype 1.9.176/#212, declaration setters #1094) but are
17
+ # SET-ONLY no unset for declaration, DOCTYPE, or document PIs —
18
+ # while the moxml facade contract makes those parts removable
19
+ # nodes. CustomizedLeptris value objects therefore remain the
20
+ # lifecycle record, attached through NativeAttachment.
18
21
  class Leptris < Base
19
22
  # The binding floor (issue #149): 1.9.32 carried the traverse
20
23
  # fix (leptris-ruby#89) and made built documents reflect their
data/lib/moxml/version.rb CHANGED
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Moxml
4
- VERSION = "0.5.67"
4
+ VERSION = "0.5.68"
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: moxml
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.67
4
+ version: 0.5.68
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ribose Inc.