gloo 7.0.3 → 7.0.4
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/docs/language_objects.md +3 -0
- data/docs/verbs.md +6 -0
- data/lib/VERSION +1 -1
- data/lib/VERSION_NOTES +4 -0
- data/lib/gloo/verbs/save.rb +4 -0
- metadata +2 -2
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 0f84c9907a97353612993852efc46b6880b119c962b785da1c43326f1d0710b3
|
|
4
|
+
data.tar.gz: 6582c120e0b04e9daaa3be9d70002d407f778b045fa668f87ca20fae68b22218
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 5ad11f0ed9bec1122fc796920029ee5b1bdea8dee0e3aecdedefd85241de70ff1f52e8fb893726d6fd135a0e86588aac44ab6598d2a3b6f071f61c2411281adc
|
|
7
|
+
data.tar.gz: ec26f94681a480a42bf9cf21ca7668de7896eba9937a731d501c1ca2a5998fe12dc08b26e9452c9aeafbee59f2eb3e21b1599af8e3211f8e5baa593d232a3146
|
data/docs/language_objects.md
CHANGED
|
@@ -106,6 +106,9 @@ floating comment in the file instead. When a name is declared in more
|
|
|
106
106
|
than one loaded file, the first non-empty doc wins (same rule as the
|
|
107
107
|
first value).
|
|
108
108
|
|
|
109
|
+
A doc belongs to its object: when the object is moved, extracted, or
|
|
110
|
+
deleted, its doc comment goes with it (see Verbs, Load & Save).
|
|
111
|
+
|
|
109
112
|
`list` can show every documented object in a listed tree: turn on the
|
|
110
113
|
`list_docs` setting (off by default) — see `list` and `settings` in the
|
|
111
114
|
in-app help.
|
data/docs/verbs.md
CHANGED
|
@@ -99,6 +99,12 @@ If the name can't be resolved to a file, `load` reports `File '{name}' was not f
|
|
|
99
99
|
|
|
100
100
|
A save is a **rewrite, not a regeneration**: comments, blank lines, and the original spacing are kept, and only the values you actually changed are re-written. A declaration you never touched comes back byte-for-byte.
|
|
101
101
|
|
|
102
|
+
What counts as a change is narrow: an object is changed when its value is set, or when it is created, moved (`move`, or extracted with `save … to`), or deleted (for example with `unload`); everything else is untouched and comes back exactly as written, wherever it lives. Adding, moving, or removing an object's children doesn't change the object itself: its own declaration stays as it was, and only the children's lines appear, move, or disappear.
|
|
103
|
+
|
|
104
|
+
An object's doc comment goes wherever the object goes: it moves with a moved or extracted object and disappears with a deleted one.
|
|
105
|
+
|
|
106
|
+
A save never loses or alters data: loading the saved files again gives back the same objects, with the same values and docs, under the same parents. The interpreter decides how a changed or new declaration is laid out; only what it says has to come back the same.
|
|
107
|
+
|
|
102
108
|
`save {obj} to {path}` doesn't just write a copy — `obj` stops being declared in its old file, wherever that was. Given `app.core.settings` declared inside `app.gloo`, `save app.core.settings to config/settings` leaves `app.gloo` without a `settings` subtree and writes `config/settings.gloo` with `app.core.settings [can] : ...` at the top level (the `app`/`core` prefix is implied via nested-container shorthand, not repeated as nested declarations) plus everything `settings` owns underneath, comments included. An object with no file of its own yet (brand new, or nested under an object that's never been saved) is simply written fresh — nothing to move.
|
|
103
109
|
|
|
104
110
|
If `obj`'s own subtree already has declarations spread across more than one file (the namespace-merge pattern below, applied *inside* the subtree being extracted, not just above it), extraction refuses rather than guessing which file's slice is authoritative — save each contributing file on its own first.
|
data/lib/VERSION
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
7.0.
|
|
1
|
+
7.0.4
|
data/lib/VERSION_NOTES
CHANGED
data/lib/gloo/verbs/save.rb
CHANGED
|
@@ -96,6 +96,10 @@ module Gloo
|
|
|
96
96
|
'state. This is a rewrite, not a regeneration: comments, ' \
|
|
97
97
|
'blank lines, and the original formatting are preserved, ' \
|
|
98
98
|
'and only values that actually changed are re-written. ' \
|
|
99
|
+
'A declaration you never touched comes back byte-for-byte. ' \
|
|
100
|
+
'An object counts as changed only when its value is set or ' \
|
|
101
|
+
'it is created, moved, or deleted (its doc comment goes with ' \
|
|
102
|
+
'it); changes to its children do not change it. ' \
|
|
99
103
|
'With a path, the object also stops being declared in its ' \
|
|
100
104
|
'old file (if it had one) -- both files are rewritten ' \
|
|
101
105
|
'together.',
|
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: gloo
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 7.0.
|
|
4
|
+
version: 7.0.4
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Eric Crane
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: exe
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2026-10-
|
|
11
|
+
date: 2026-10-19 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: bundler
|