yeptris 0.6.36.0-arm-linux-eabihf → 0.6.37.0-arm-linux-eabihf
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/lib/yeptris.rb +1 -1
- data/libyeptris.so +0 -0
- data/vendor/libyeptris/CMakeLists.txt +1 -1
- data/vendor/libyeptris/src/yeptris/parse/engine.c +41 -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: 44ed87328cad120f1577a2b5589e4d135c6425f303249979a473c1930fd53df5
|
|
4
|
+
data.tar.gz: b7c2349853b512553bddf90aeb32b63dc66bb418b706e1b08a2520af24611055
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: b61f9b9170af15d6b61872cca0770608aa3ccb6f9d5991d5f1843a4af8838ecb583943021d1f2cee7aba210230d9e7727fa7956b9b0e253a6e775403cb73e60c
|
|
7
|
+
data.tar.gz: 613f1e8311f422eba343de0f2298f6100bb323baf70cf77d6b632f3d931dd0e4295c0c42da1123a2301d42ab67b9c12464be4fbde01ada7964cb41ffe264a4c5
|
data/lib/yeptris.rb
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
module Yeptris
|
|
4
4
|
# The gem's version lives in the parent namespace's file — the last
|
|
5
5
|
# internal require (yeptris/version) retired with it.
|
|
6
|
-
VERSION = "0.6.
|
|
6
|
+
VERSION = "0.6.37.0".freeze
|
|
7
7
|
|
|
8
8
|
# Informational notices are OPT-IN (yeptris-ruby#217): consumers
|
|
9
9
|
# embed yeptris inside CLIs that assert clean stderr, and a
|
data/libyeptris.so
CHANGED
|
Binary file
|
|
@@ -1275,6 +1275,27 @@ static void e_props(yep_engine* e, yep_view* anchor, yep_view* tag) {
|
|
|
1275
1275
|
e_fail(e, YEP_ERR_UNEXPECTED, e->pos);
|
|
1276
1276
|
return;
|
|
1277
1277
|
}
|
|
1278
|
+
/* The flow-follower colon law (the nightly's round 29,
|
|
1279
|
+
* crash-47eb4054): a name ending at a riding colon whose
|
|
1280
|
+
* follower is a FLOW collection un-consumes the colon.
|
|
1281
|
+
* libyaml ACCEPTS "&k2: [1,\n2]" — the anchor names the
|
|
1282
|
+
* implicit-null KEY and the flow is the value — so the
|
|
1283
|
+
* riding law (2SXE) must yield exactly where its result
|
|
1284
|
+
* is observable in the differential; the plain-led twins
|
|
1285
|
+
* keep it (libyaml rejects those: "&a: key: v", W5VH's
|
|
1286
|
+
* value position — suite-VALID, ledgered). The colon
|
|
1287
|
+
* re-lexes as the key indicator and the existing colon
|
|
1288
|
+
* arm builds the anchored null key. */
|
|
1289
|
+
if (e->p[e->pos - 1] == ':') {
|
|
1290
|
+
size_t t = e->pos;
|
|
1291
|
+
while (t < e->len && (e->p[t] == ' ' || e->p[t] == '\t')) {
|
|
1292
|
+
t++;
|
|
1293
|
+
}
|
|
1294
|
+
if (t < e->len && (e->p[t] == '[' || e->p[t] == '{')) {
|
|
1295
|
+
anchor->len -= 1;
|
|
1296
|
+
e->pos -= 1;
|
|
1297
|
+
}
|
|
1298
|
+
}
|
|
1278
1299
|
if (e->pos < e->len && e->p[e->pos] == '#') {
|
|
1279
1300
|
/* the name ends at a blank or flow indicator; a glued
|
|
1280
1301
|
* '#' is junk on the name (libyaml: "did not find
|
|
@@ -4942,7 +4963,26 @@ static size_t step_scan(yep_stepstate* st) {
|
|
|
4942
4963
|
st->bs_indent = (uint32_t)-1; /* root rule: markers only */
|
|
4943
4964
|
}
|
|
4944
4965
|
}
|
|
4945
|
-
|
|
4966
|
+
/* the line before a marker must not be a
|
|
4967
|
+
* directive-LOOKING line: the scan's quote
|
|
4968
|
+
* state can close a quote where the parser
|
|
4969
|
+
* reads content (or vice versa), so a %-led
|
|
4970
|
+
* line may ride an open quote the scan
|
|
4971
|
+
* believes in -- cutting then strands the
|
|
4972
|
+
* directive from its --- and the window
|
|
4973
|
+
* rejects it (the nightly's round 27,
|
|
4974
|
+
* crash-95bbd95f: "i\n\"\n...\n%TAG ! \"\n--- ").
|
|
4975
|
+
* The check is byte-level, independent of the
|
|
4976
|
+
* quote tracking's verdict. */
|
|
4977
|
+
int prev_pct = 0;
|
|
4978
|
+
if (i > 0) {
|
|
4979
|
+
size_t ls = i - 1; /* the break before the marker */
|
|
4980
|
+
while (ls > 0 && p[ls - 1] != '\n' && p[ls - 1] != '\r') {
|
|
4981
|
+
ls--;
|
|
4982
|
+
}
|
|
4983
|
+
prev_pct = p[ls] == '%';
|
|
4984
|
+
}
|
|
4985
|
+
if (st->saw_directive == 0 && i > 0 && !st->bs_open && !prev_pct) {
|
|
4946
4986
|
last_cut = i; /* interior document boundary */
|
|
4947
4987
|
}
|
|
4948
4988
|
st->saw_directive = 0; /* this --- owns the directives */
|