leptris 1.9.115.1 → 1.9.118.0
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 +4 -4
- data/CHANGELOG.md +12 -0
- data/Rakefile +1 -1
- data/TODO.restructure/21-typeddata-variant-prototype.md +14 -10
- data/lib/leptris/version.rb +1 -1
- metadata +1 -1
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 163efcd5264a70cbd74204b74981f9f5267f0b30ee6c86e3709b20e043046e34
|
|
4
|
+
data.tar.gz: 5dafbc1093a2679d9331cb704f695ca051f047c72ce301a0ac68c0a3d893d802
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 8ea54c8480c128025cbadf96a76cf4e136214fcafdfe76a4535f8479cfb1aeedecc9a6fdb2da05abd2db87d4f05c4cf56e5769acf4dddfb22240d8200bf03b6b
|
|
7
|
+
data.tar.gz: 2fa7498af2f234831dcc3d198ef0eaf55fda80f85cce3b148448eee31aa1b45ad49800df7d4a4caa478d5c8ab209e13f0372b8a9ec2c814f8737856ce3eb5794
|
data/CHANGELOG.md
CHANGED
|
@@ -14,6 +14,18 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
14
14
|
Jing's override rules, `<param>` datatype facets (portable
|
|
15
15
|
matcher), and schema errors on `leptris_last_error`. Required by
|
|
16
16
|
the RelaxNG binding (#165).
|
|
17
|
+
## [1.9.118.0] - 2026-09-09
|
|
18
|
+
|
|
19
|
+
### Changed
|
|
20
|
+
|
|
21
|
+
- **Lockstep with libleptris 1.9.118** (1.9.116 → 1.9.118; no new
|
|
22
|
+
C surface — audit 270/270): HTML modes record the DOCTYPE
|
|
23
|
+
(1.9.116); structural `<head>`/`<body>` — every WHATWG document
|
|
24
|
+
is `html>[head, body]`, html4 keeps Nokogiri's no-empty-head
|
|
25
|
+
shape (1.9.117); `<template>` placed where the tokenizer meets
|
|
26
|
+
it + explicit head/body honored in place (1.9.118). Corpus:
|
|
27
|
+
WHATWG 623→652, Nokogiri-parity 777→783. Four specs.
|
|
28
|
+
|
|
17
29
|
## [1.9.115.1] - 2026-09-09
|
|
18
30
|
|
|
19
31
|
### Added
|
data/Rakefile
CHANGED
|
@@ -8,7 +8,7 @@ RSpec::Core::RakeTask.new(:spec)
|
|
|
8
8
|
# Pin for `rake compile` and the platform-gem builds. Keep in lockstep
|
|
9
9
|
# with .github/workflows/build.yml (which calls `rake compile`) and the
|
|
10
10
|
# CHANGELOG when libleptris releases.
|
|
11
|
-
LIBLEPTRIS_VERSION = "1.9.
|
|
11
|
+
LIBLEPTRIS_VERSION = "1.9.118"
|
|
12
12
|
# Vendored alongside libleptris for fn:normalize-unicode (TODO
|
|
13
13
|
# .restructure/20): built per platform with a RELOCATABLE @rpath
|
|
14
14
|
# install name, loaded by ffi.rb before libleptris so the
|
|
@@ -1,18 +1,22 @@
|
|
|
1
1
|
# 21 — #147 option B: TypedData wrapper variant (owner greenlit)
|
|
2
2
|
|
|
3
|
-
Status:
|
|
3
|
+
Status: PROTOTYPE DONE — hypothesis VALIDATED (114 B/node measured)
|
|
4
4
|
|
|
5
5
|
The greenlight arrived ("proceed with all"); the execution plan,
|
|
6
6
|
in verification order:
|
|
7
7
|
|
|
8
|
-
- [
|
|
9
|
-
(pointer, document-ref)
|
|
10
|
-
|
|
11
|
-
- [
|
|
12
|
-
|
|
13
|
-
~
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
8
|
+
- [x] Minimal C ext (one file): a TypedData class holding
|
|
9
|
+
(pointer, document-ref) — prototype built and measured
|
|
10
|
+
(ext + bench preserved under /tmp/typedproto, /tmp/bench_typed.rb).
|
|
11
|
+
- [x] Measured (100k holders, GC.settled RSS deltas):
|
|
12
|
+
FFI::Pointer-backed 154 B/node vs TypedData 40 B/node —
|
|
13
|
+
**114 B/node saved**, ~40% of the wrapper layer (#147's
|
|
14
|
+
+552 kB/doc → ~+330 kB/doc, held 1.57x → ~1.2x Nokogiri).
|
|
15
|
+
The mark-function document ref works (no GC-safety loss).
|
|
16
|
+
- [ ] VALIDATED — build phase: the `Node.construct` factory seam
|
|
17
|
+
selects wrapper classes per variant (OCP — one seam, no
|
|
18
|
+
scatter), then the variant gem + 9-platform matrix with the
|
|
19
|
+
compiled ext. Multi-round build (new gemspec, ext
|
|
20
|
+
compilation per platform, packaging).
|
|
17
21
|
- [ ] If NOT validated (win < ~15%): record the negative result on
|
|
18
22
|
#147 and close option B with data.
|
data/lib/leptris/version.rb
CHANGED