namo 0.13.0 → 0.13.2

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.
Files changed (5) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG +31 -0
  3. data/README.md +2 -2
  4. data/lib/Namo/VERSION.rb +1 -1
  5. metadata +1 -1
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: ed83092f20799b8589b970ffa06ba8d9c976dc25e4545670e72e600895273548
4
- data.tar.gz: ad2b6d939418fe8c0197fdc415a0f884179b374009a3397480b9e25e1814b993
3
+ metadata.gz: 480baeb4c1da195bc5e9800df21267467dd784a4ef6b4fc41cd1997925c36432
4
+ data.tar.gz: d1794682a82a35578e87734569808b61171ceb95f2d0548e761b42052ea5223b
5
5
  SHA512:
6
- metadata.gz: 791f6bd3afa3589546df37e9c6fb7b016de75a6c368202554b53cbc55b92e23c7e9821837ce2057ac8ea40b7f13ef42ec493bfcd061667fa3d293a217608996b
7
- data.tar.gz: ec205a0df5900931bdf2df644522cffdbd7ef53d6d665fc8fa0ca3b18e79fc5e97971e0c089ea7254e446124866db91d43eed91dda9b0230b5a6f8d6abb9ada3
6
+ metadata.gz: 203c4416d177b726d3f8bec5bebf5225f9bb28cbf2ca3fbae1365f8f0d4062ce95018233e4342ec29b33f2bf753849acc512f1ff017f0925eec629caece73781
7
+ data.tar.gz: a9ca4f20b7319825652588fe780e59601744447c38cddbfe0d2ce2c624200d249ce1ff43113a5d543737ab5789890392a48ff2fcf3dca52c3d5f25c999838bee
data/CHANGELOG CHANGED
@@ -1,6 +1,37 @@
1
1
  CHANGELOG
2
2
  _________
3
3
 
4
+ 20260608
5
+ 0.13.2: Narrow the planned 0.14.0 block-form scope to the composition operators and document the rationale.
6
+
7
+ 1. ~ ROADMAP.md: Rewrite the 0.14.0 section from "blocks on comparison, composition, and
8
+ set operators" to "blocks on composition operators (*, **)". State the governing
9
+ principle (a block belongs only where the operator's matching is underdetermined).
10
+ Remove the comparison-operator and set-operator block subsections; note that their use
11
+ cases are expressed by comparing projections and by projection + proc selection
12
+ respectively. State explicitly that / takes no block. Replace "The unifying pattern"
13
+ with the composition-only rationale.
14
+ 2. ~ ROADMAP.md: Rescope the Summary's "next phase" pointer to composition-only block forms.
15
+ 3. ~ COMPARISON.md: Replace the "Blocks on set operators" subsection (feature no longer
16
+ planned) with a shipped "Keyed anti-join" entry expressing keyed exclusion via projection
17
+ + proc selection; repoint the composition "Conditional join with block" entry to planned
18
+ (0.14.0). Date bumped to 20260608.
19
+ 4. ~ Namo::VERSION: /0.13.1/0.13.2/
20
+
21
+ 20260604
22
+ 0.13.1: Correct the row-order claim across the docs and document the same-dimension-order precondition.
23
+
24
+ 1. ~ README.md: Scope the "row order is ignored" statement to the comparison operators
25
+ (==, eql?, ===, <, <=, >, >=) in the Equality section; drop "accident of ingestion".
26
+ + Positive note that row order is preserved through to_h/values, each, first, last,
27
+ take, drop, and +.
28
+ 2. ~ README.md: At Concatenation, state that the set operators require the same dimension
29
+ names in the same order, with guidance to normalise inputs to a common column order
30
+ before combining.
31
+ 3. ~ ROADMAP.md: Scope the 0.6.0 section's "row order is an accident of ingestion" to the
32
+ comparison operators; drop "accident of ingestion". Date bumped to 20260604.
33
+ 4. ~ Namo::VERSION: /0.13.0/0.13.1/
34
+
4
35
  20260601
5
36
  0.13.0: Polymorphic []= — proc registers a formula, scalar broadcasts to every row.
6
37
 
data/README.md CHANGED
@@ -226,7 +226,7 @@ all_sales = q1_sales + q2_sales
226
226
  # ]>
227
227
  ```
228
228
 
229
- The dimensions must match — concatenating Namo objects with different dimensions raises an `ArgumentError`. Formulae carry through from the left-hand side.
229
+ The dimensions must match — the same dimension names in the same order — or the operator raises an `ArgumentError`. Two Namos holding the same columns in a different order must be normalised to a common column order before they can be combined. Formulae carry through from the left-hand side.
230
230
 
231
231
  ### Row Removal
232
232
 
@@ -449,7 +449,7 @@ This is the same pattern that makes `Array#-` useful with arrays that aren't sub
449
449
 
450
450
  ### Equality
451
451
 
452
- Comparison on Namos is **multiset-theoretic on rows**: row order is ignored (it's an accident of ingestion, not data), but row multiplicities count (they *are* data). The same stance carries across the equality, pattern-match, and subset/superset operators below.
452
+ Comparison on Namos is **multiset-theoretic on rows**: the comparison operators — `==`, `eql?`, `===`, `<`, `<=`, `>`, `>=` — ignore row order, so two Namos holding the same rows in a different order compare equal, while row multiplicities count (they *are* data). That stance is shared across the equality, pattern-match, and subset/superset operators documented below. Row order is otherwise preserved: `to_h` and `values` depend on it for columnar alignment, and `each`, `first`, `last`, `take`, `drop`, and `+` all observe it. It is the comparison operators alone that treat the sequence of rows as a multiset.
453
453
 
454
454
  `==` is multiset equality on rows. Class and formulae are ignored; row order is ignored; row multiplicities are not.
455
455
 
data/lib/Namo/VERSION.rb CHANGED
@@ -2,5 +2,5 @@
2
2
  # Namo::VERSION
3
3
 
4
4
  class Namo
5
- VERSION = '0.13.0'
5
+ VERSION = '0.13.2'
6
6
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: namo
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.13.0
4
+ version: 0.13.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - thoran