@thi.ng/transducers 8.0.8 → 8.1.3

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.
package/CHANGELOG.md CHANGED
@@ -1,628 +1,911 @@
1
1
  # Change Log
2
2
 
3
+ - **Last updated**: 2021-12-13T10:26:00Z
4
+ - **Generator**: [thi.ng/monopub](https://thi.ng/monopub)
5
+
3
6
  All notable changes to this project will be documented in this file.
4
- See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
7
+ See [Conventional Commits](https://conventionalcommits.org/) for commit guidelines.
8
+
9
+ **Note:** Unlisted _patch_ versions only involve non-code or otherwise excluded changes
10
+ and/or version bumps of transitive dependencies.
11
+
12
+ ## [8.1.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/transducers@8.1.0) (2021-11-17)
13
+
14
+ #### 🚀 Features
15
+
16
+ - Using workspaces for local tools ([bf7a404](https://github.com/thi-ng/umbrella/commit/bf7a404))
17
+ Improving the overall build ergonomics
18
+ - introduced a tools workspaces
19
+ - imported it in all needed packages/examples
20
+ - inclusive project root
21
+ - add rechunk() xform ([10d0e9f](https://github.com/thi-ng/umbrella/commit/10d0e9f))
22
+ - update readme
23
+
24
+ #### ♻️ Refactoring
25
+
26
+ - testrunner to binary ([4ebbbb2](https://github.com/thi-ng/umbrella/commit/4ebbbb2))
27
+ this commit reverts (partly) changes made in:
28
+ ef346d7a8753590dc9094108a3d861a8dbd5dd2c
29
+ overall purpose is better testament ergonomics:
30
+ instead of having to pass NODE_OPTIONS with every invocation
31
+ having a binary to handle this for us.
32
+
33
+ ### [8.0.8](https://github.com/thi-ng/umbrella/tree/@thi.ng/transducers@8.0.8) (2021-11-10)
5
34
 
6
- ## [8.0.8](https://github.com/thi-ng/umbrella/compare/@thi.ng/transducers@8.0.7...@thi.ng/transducers@8.0.8) (2021-11-10)
35
+ #### ♻️ Refactoring
7
36
 
8
- **Note:** Version bump only for package @thi.ng/transducers
37
+ - update all countdown loops ([a5f374b](https://github.com/thi-ng/umbrella/commit/a5f374b))
9
38
 
39
+ ### [8.0.1](https://github.com/thi-ng/umbrella/tree/@thi.ng/transducers@8.0.1) (2021-10-13)
10
40
 
41
+ #### ♻️ Refactoring
11
42
 
43
+ - update imports in all tests/pkgs ([effd591](https://github.com/thi-ng/umbrella/commit/effd591))
44
+ - update imports in all pkgs ([5fa2b6f](https://github.com/thi-ng/umbrella/commit/5fa2b6f))
45
+ - add .js suffix for all relative imports
12
46
 
47
+ # [8.0.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/transducers@8.0.0) (2021-10-12)
13
48
 
14
- ## [8.0.7](https://github.com/thi-ng/umbrella/compare/@thi.ng/transducers@8.0.6...@thi.ng/transducers@8.0.7) (2021-11-03)
49
+ #### 🛑 Breaking changes
15
50
 
16
- **Note:** Version bump only for package @thi.ng/transducers
51
+ - restructure package ([4d643f5](https://github.com/thi-ng/umbrella/commit/4d643f5))
52
+ - BREAKING CHANGE: restructure/flatten pkg, remove sub folders
53
+ - migrate all /func, /iter, /rfn, /xform files to main /src folder
54
+ - major update of ALL pkgs (export maps, ESM only) ([0d1d6ea](https://github.com/thi-ng/umbrella/commit/0d1d6ea))
55
+ - BREAKING CHANGE: discontinue CommonJS & UMD versions
56
+ - only ESM modules will be published from now on
57
+ - CJS obsolete due to ESM support in recent versions of node:
58
+ - i.e. launch NodeJS via:
59
+ - `node --experimental-specifier-resolution=node --experimental-repl-await`
60
+ - in the node REPL use `await import(...)` instead of `require()`
61
+ - UMD obsolete due to widespread browser support for ESM
62
+ Also:
63
+ - normalize/restructure/reorg all package.json files
64
+ - cleanup all build scripts, remove obsolete
65
+ - switch from mocha to [@thi.ng/testament](https://github.com/thi-ng/umbrella/tree/main/packages/testament) for all tests
17
66
 
67
+ #### ♻️ Refactoring
18
68
 
69
+ - update deps & imports in various pkgs ([e1cf29e](https://github.com/thi-ng/umbrella/commit/e1cf29e))
70
+ - largely related to recent updates/restructuring of these packages:
71
+ - api
72
+ - defmulti
73
+ - errors
74
+ - logger
75
+ - update imports ([138571a](https://github.com/thi-ng/umbrella/commit/138571a))
76
+ - update all tests in _all_ pkgs ([8b582bc](https://github.com/thi-ng/umbrella/commit/8b582bc))
77
+ - update all to use [@thi.ng/testament](https://github.com/thi-ng/umbrella/tree/main/packages/testament)
19
78
 
79
+ ### [7.9.2](https://github.com/thi-ng/umbrella/tree/@thi.ng/transducers@7.9.2) (2021-09-03)
20
80
 
81
+ #### 🩹 Bug fixes
21
82
 
22
- # [8.0.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/transducers@7.9.2...@thi.ng/transducers@8.0.0) (2021-10-12)
83
+ - fix [#310](https://github.com/thi-ng/umbrella/issues/310), update flatten/flattenWith ([bfbd726](https://github.com/thi-ng/umbrella/commit/bfbd726))
84
+ - fix `flatten()`/`flattenWith()` return types
85
+ - update generics to allow specifying explicit result type, but
86
+ use new `DeepArrayValue<A>` mapped type as default
87
+ - update `flattenWith()` predicate arg type to `any` since current
88
+ restriction on top-level input type was (potentially) wrong for
89
+ deeper levels. Also lift restriction and update pred's return type
90
+ to `MaybeIterable<any>` (for same reason).
23
91
 
92
+ ### [7.9.1](https://github.com/thi-ng/umbrella/tree/@thi.ng/transducers@7.9.1) (2021-08-19)
24
93
 
25
- ### Build System
94
+ #### 🩹 Bug fixes
26
95
 
27
- * major update of ALL pkgs (export maps, ESM only) ([0d1d6ea](https://github.com/thi-ng/umbrella/commit/0d1d6ea9fab2a645d6c5f2bf2591459b939c09b6))
96
+ - update normFrequenciesAuto() ([5b5200b](https://github.com/thi-ng/umbrella/commit/5b5200b))
97
+ - actually use `key` fn arg (if given)
28
98
 
99
+ ## [7.9.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/transducers@7.9.0) (2021-08-19)
29
100
 
30
- ### Code Refactoring
101
+ #### 🚀 Features
31
102
 
32
- * **transducers:** restructure package ([4d643f5](https://github.com/thi-ng/umbrella/commit/4d643f57a276ddd73e6214f9ea78d3302076d466))
103
+ - add normalized frequencies() reducers ([d09db8d](https://github.com/thi-ng/umbrella/commit/d09db8d))
104
+ - add normCount()
105
+ - add normFrequencies()
106
+ - add normFrequenciesAuto()
107
+ - update readme
33
108
 
109
+ ## [7.8.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/transducers@7.8.0) (2021-08-04)
34
110
 
35
- ### BREAKING CHANGES
111
+ #### 🚀 Features
36
112
 
37
- * **transducers:** restructure/flatten pkg, remove sub folders
113
+ - add minMax() reducer ([5f8a722](https://github.com/thi-ng/umbrella/commit/5f8a722))
114
+ - update repeatedly(), iterate() ([b7d9ba4](https://github.com/thi-ng/umbrella/commit/b7d9ba4))
115
+ - add iteration counter arg for repeatedly()
116
+ - minor refactor iterate()
38
117
 
39
- - migrate all /func, /iter, /rfn, /xform files to main /src folder
40
- * discontinue CommonJS & UMD versions
118
+ ## [7.7.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/transducers@7.7.0) (2021-04-07)
41
119
 
42
- - only ESM modules will be published from now on
43
- - CJS obsolete due to ESM support in recent versions of node:
44
- - i.e. launch NodeJS via:
45
- - `node --experimental-specifier-resolution=node --experimental-repl-await`
46
- - in the node REPL use `await import(...)` instead of `require()`
47
- - UMD obsolete due to widespread browser support for ESM
120
+ #### 🚀 Features
48
121
 
49
- Also:
50
- - normalize/restructure/reorg all package.json files
51
- - cleanup all build scripts, remove obsolete
52
- - switch from mocha to @thi.ng/testament for all tests
122
+ - add partitionWhen() xform ([d2dd4d9](https://github.com/thi-ng/umbrella/commit/d2dd4d9))
53
123
 
124
+ ### [7.6.10](https://github.com/thi-ng/umbrella/tree/@thi.ng/transducers@7.6.10) (2021-04-03)
54
125
 
126
+ #### ♻️ Refactoring
55
127
 
128
+ - minor updates ([c582a1a](https://github.com/thi-ng/umbrella/commit/c582a1a))
56
129
 
130
+ ### [7.6.2](https://github.com/thi-ng/umbrella/tree/@thi.ng/transducers@7.6.2) (2021-03-03)
57
131
 
132
+ #### 🩹 Bug fixes
58
133
 
59
- ## [7.9.2](https://github.com/thi-ng/umbrella/compare/@thi.ng/transducers@7.9.1...@thi.ng/transducers@7.9.2) (2021-09-03)
134
+ - add missing type anno (TS4.2) ([7ced9be](https://github.com/thi-ng/umbrella/commit/7ced9be))
60
135
 
61
- ### Bug Fixes
136
+ ## [7.6.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/transducers@7.6.0) (2021-02-20)
62
137
 
63
- - **transducers:** fix [#310](https://github.com/thi-ng/umbrella/issues/310), update flatten/flattenWith ([bfbd726](https://github.com/thi-ng/umbrella/commit/bfbd7269fe506c0f40c109f1701a1ea50dc944e9))
138
+ #### 🚀 Features
64
139
 
65
- ## [7.9.1](https://github.com/thi-ng/umbrella/compare/@thi.ng/transducers@7.9.0...@thi.ng/transducers@7.9.1) (2021-08-19)
140
+ - add TweenOpts.easing, update tween() ([f3a50f4](https://github.com/thi-ng/umbrella/commit/f3a50f4))
66
141
 
67
- ### Bug Fixes
142
+ #### ♻️ Refactoring
68
143
 
69
- - **transducers:** update normFrequenciesAuto() ([5b5200b](https://github.com/thi-ng/umbrella/commit/5b5200b6d4e61df6c2e6458b99b8b10ea9f3bb65))
144
+ - use clamp0() ([47d5e54](https://github.com/thi-ng/umbrella/commit/47d5e54))
70
145
 
71
- # [7.9.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/transducers@7.8.4...@thi.ng/transducers@7.9.0) (2021-08-19)
146
+ ### [7.5.2](https://github.com/thi-ng/umbrella/tree/@thi.ng/transducers@7.5.2) (2020-12-07)
72
147
 
73
- ### Features
148
+ #### ♻️ Refactoring
74
149
 
75
- - **transducers:** add normalized frequencies() reducers ([d09db8d](https://github.com/thi-ng/umbrella/commit/d09db8d47be81e78dea1f4e16917249924b65e35))
150
+ - update type-only imports ([6407f7d](https://github.com/thi-ng/umbrella/commit/6407f7d))
151
+ - update type-only imports in various tests/pkgs ([3fd9c24](https://github.com/thi-ng/umbrella/commit/3fd9c24))
76
152
 
77
- # [7.8.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/transducers@7.7.5...@thi.ng/transducers@7.8.0) (2021-08-04)
153
+ ## [7.5.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/transducers@7.5.0) (2020-11-24)
78
154
 
79
- ### Features
155
+ #### 🚀 Features
80
156
 
81
- - **transducers:** add minMax() reducer ([5f8a722](https://github.com/thi-ng/umbrella/commit/5f8a72215010645cce039cedab3313fae722e363))
82
- - **transducers:** update repeatedly(), iterate() ([b7d9ba4](https://github.com/thi-ng/umbrella/commit/b7d9ba42b812c3b39909e86be5eebfa4e235f535))
157
+ - add minMag/maxMag() reducers ([f7496b3](https://github.com/thi-ng/umbrella/commit/f7496b3))
158
+ - add reduceRight/transduceRight() ([b71ff9c](https://github.com/thi-ng/umbrella/commit/b71ff9c))
159
+ - update readme
83
160
 
84
- # [7.7.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/transducers@7.6.10...@thi.ng/transducers@7.7.0) (2021-04-07)
161
+ #### ♻️ Refactoring
85
162
 
86
- ### Features
163
+ - dedupe transduce/transduceRight() internals ([2246ef4](https://github.com/thi-ng/umbrella/commit/2246ef4))
164
+ - update destructuring ([d944b54](https://github.com/thi-ng/umbrella/commit/d944b54))
87
165
 
88
- - **transducers:** add partitionWhen() xform ([d2dd4d9](https://github.com/thi-ng/umbrella/commit/d2dd4d92895622bfa38d8458472d86f9e89e8952))
166
+ ## [7.4.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/transducers@7.4.0) (2020-09-22)
89
167
 
90
- ## [7.6.2](https://github.com/thi-ng/umbrella/compare/@thi.ng/transducers@7.6.1...@thi.ng/transducers@7.6.2) (2021-03-03)
168
+ #### 🚀 Features
91
169
 
92
- ### Bug Fixes
170
+ - add mapcatIndexed() xform ([4f3d6e0](https://github.com/thi-ng/umbrella/commit/4f3d6e0))
93
171
 
94
- - **transducers:** add missing type anno (TS4.2) ([7ced9be](https://github.com/thi-ng/umbrella/commit/7ced9be6b0dc41567c4b65517e8caba1d0bfffe2))
172
+ ### [7.3.1](https://github.com/thi-ng/umbrella/tree/@thi.ng/transducers@7.3.1) (2020-09-13)
95
173
 
96
- # [7.6.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/transducers@7.5.8...@thi.ng/transducers@7.6.0) (2021-02-20)
174
+ #### ♻️ Refactoring
97
175
 
98
- ### Features
176
+ - update imports ([e166cda](https://github.com/thi-ng/umbrella/commit/e166cda))
99
177
 
100
- - **transducers:** add TweenOpts.easing, update tween() ([f3a50f4](https://github.com/thi-ng/umbrella/commit/f3a50f46c800c23e8aa3e42ebd90e6b028c6a0db))
178
+ ## [7.3.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/transducers@7.3.0) (2020-08-28)
101
179
 
102
- # [7.5.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/transducers@7.4.0...@thi.ng/transducers@7.5.0) (2020-11-24)
180
+ #### 🚀 Features
103
181
 
104
- ### Features
182
+ - fix normRange2d, add normRange3d ([db75605](https://github.com/thi-ng/umbrella/commit/db75605))
183
+ - add normRange2 ([1125930](https://github.com/thi-ng/umbrella/commit/1125930))
105
184
 
106
- - **transducers:** add minMag/maxMag() reducers ([f7496b3](https://github.com/thi-ng/umbrella/commit/f7496b3989c0209f51c561cdba9b50d19f976357))
107
- - **transducers:** add reduceRight/transduceRight() ([b71ff9c](https://github.com/thi-ng/umbrella/commit/b71ff9c63ea158d44187b1ab5b25d1833eebde3c))
185
+ #### 🩹 Bug fixes
108
186
 
109
- # [7.4.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/transducers@7.3.1...@thi.ng/transducers@7.4.0) (2020-09-22)
187
+ - type ([dedce3f](https://github.com/thi-ng/umbrella/commit/dedce3f))
110
188
 
111
- ### Features
189
+ #### ♻️ Refactoring
112
190
 
113
- - **transducers:** add mapcatIndexed() xform ([4f3d6e0](https://github.com/thi-ng/umbrella/commit/4f3d6e02a0ff3fe7307cd03404277c03123f83e9))
191
+ - update/fix normRange2d/3d() ([d40c4a7](https://github.com/thi-ng/umbrella/commit/d40c4a7))
114
192
 
115
- # [7.3.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/transducers@7.2.2...@thi.ng/transducers@7.3.0) (2020-08-28)
193
+ ## [7.2.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/transducers@7.2.0) (2020-07-28)
116
194
 
117
- ### Bug Fixes
195
+ #### 🚀 Features
118
196
 
119
- - **transducers:** type ([dedce3f](https://github.com/thi-ng/umbrella/commit/dedce3fe874960769c4f6e178fd591bfd6eef263))
197
+ - add autoObj() reducer ([26ad12a](https://github.com/thi-ng/umbrella/commit/26ad12a))
120
198
 
121
- ### Features
199
+ ## [7.1.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/transducers@7.1.0) (2020-06-14)
122
200
 
123
- - **tranducers:** fix normRange2d, add normRange3d ([db75605](https://github.com/thi-ng/umbrella/commit/db75605a65a7ca47fae146935b78d20ec3569d11))
124
- - **transducers:** add normRange2 ([1125930](https://github.com/thi-ng/umbrella/commit/1125930e3ea32d80793876daa98729e7ee51fe76))
201
+ #### 🚀 Features
125
202
 
126
- # [7.2.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/transducers@7.1.6...@thi.ng/transducers@7.2.0) (2020-07-28)
203
+ - add keyPermutations, tests, update readme ([5110d50](https://github.com/thi-ng/umbrella/commit/5110d50))
127
204
 
128
- ### Features
205
+ # [7.0.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/transducers@7.0.0) (2020-06-01)
129
206
 
130
- - **transducers:** add autoObj() reducer ([26ad12a](https://github.com/thi-ng/umbrella/commit/26ad12a1ae73c563a944baf1db643930bba3fdb0))
207
+ #### 🛑 Breaking changes
131
208
 
132
- # [7.1.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/transducers@7.0.0...@thi.ng/transducers@7.1.0) (2020-06-14)
209
+ - update readme ([47b6cef](https://github.com/thi-ng/umbrella/commit/47b6cef))
210
+ - BREAKING CHANGE: `flatten` string handling now *always* atomic
133
211
 
134
- ### Features
212
+ #### 🩹 Bug fixes
135
213
 
136
- - **transducers:** add keyPermutations, tests, update readme ([5110d50](https://github.com/thi-ng/umbrella/commit/5110d50ba0c499c48c288820b9fb73ee42f9142f))
214
+ - [#186](https://github.com/thi-ng/umbrella/issues/186), Fix crash when using empty string as source for several transducers. ([ef7a798](https://github.com/thi-ng/umbrella/commit/ef7a798))
137
215
 
138
- # [7.0.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/transducers@6.7.0...@thi.ng/transducers@7.0.0) (2020-06-01)
216
+ #### ♻️ Refactoring
139
217
 
140
- ### Bug Fixes
218
+ - update flatten & flattenWith ([35c2aaf](https://github.com/thi-ng/umbrella/commit/35c2aaf))
141
219
 
142
- - **transducers:** [#186](https://github.com/thi-ng/umbrella/issues/186), Fix crash when using empty string as source for several transducers. ([ef7a798](https://github.com/thi-ng/umbrella/commit/ef7a798d35c172d50b2f4453f4522260d0fe81e4))
220
+ ## [6.7.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/transducers@6.7.0) (2020-06-01)
143
221
 
144
- ### Documentation
222
+ #### 🚀 Features
145
223
 
146
- - **transducers:** update readme ([47b6cef](https://github.com/thi-ng/umbrella/commit/47b6cefe2344d0e33a9d597b4bb758f2a2f7512e))
224
+ - add IDeref support slidingWindow() ([13f4184](https://github.com/thi-ng/umbrella/commit/13f4184))
225
+ (cherry picked from commit [c75175689544f172acde856b4261ca9dc128d1dd](https://github.com/thi-ng/umbrella/commit/c75175689544f172acde856b4261ca9dc128d1dd))
226
+ - add IDeref support slidingWindow() ([c751756](https://github.com/thi-ng/umbrella/commit/c751756))
147
227
 
148
- ### BREAKING CHANGES
228
+ ## [6.6.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/transducers@6.6.0) (2020-05-29)
149
229
 
150
- - **transducers:** `flatten` string handling now *always* atomic
230
+ #### 🚀 Features
151
231
 
152
- # [6.7.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/transducers@6.6.0...@thi.ng/transducers@6.7.0) (2020-06-01)
232
+ - add rangeNd(), add/update tests ([9239d6f](https://github.com/thi-ng/umbrella/commit/9239d6f))
153
233
 
154
- ### Features
234
+ #### ♻️ Refactoring
155
235
 
156
- - **transducers:** add IDeref support slidingWindow() ([13f4184](https://github.com/thi-ng/umbrella/commit/13f4184f755fadb0a585b7e443c1218a7e2df5db))
236
+ - update rangeNd() arg types ([d5aab14](https://github.com/thi-ng/umbrella/commit/d5aab14))
157
237
 
158
- # [6.6.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/transducers@6.5.0...@thi.ng/transducers@6.6.0) (2020-05-29)
238
+ ## [6.5.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/transducers@6.5.0) (2020-05-14)
159
239
 
160
- ### Features
240
+ #### 🚀 Features
161
241
 
162
- - **transducers:** add rangeNd(), add/update tests ([9239d6f](https://github.com/thi-ng/umbrella/commit/9239d6fbf4de66300ed924b9de9a0fa67df0235c))
242
+ - [#221](https://github.com/thi-ng/umbrella/issues/221), add partitionSync() key add/removal ops ([2ab4bf5](https://github.com/thi-ng/umbrella/commit/2ab4bf5))
243
+ - add PartitionSync type
244
+ - attach ops to dynamically manipulate & query input set
245
+ - make input removal cleanup optional (enabled by default)
246
+ - add/update tests
163
247
 
164
- # [6.5.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/transducers@6.4.9...@thi.ng/transducers@6.5.0) (2020-05-14)
248
+ ## [6.4.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/transducers@6.4.0) (2020-03-01)
165
249
 
166
- ### Features
250
+ #### 🚀 Features
167
251
 
168
- - **transducers:** [#221](https://github.com/thi-ng/umbrella/issues/221), add partitionSync() key add/removal ops ([2ab4bf5](https://github.com/thi-ng/umbrella/commit/2ab4bf5858b1c0162f8adb8780507a05cf16a831))
252
+ - update mapKeys() key fns to accept 2nd arg ([749d2cd](https://github.com/thi-ng/umbrella/commit/749d2cd))
253
+ - pass original input value as 2nd arg to each key transform fn
254
+ - this allows creating new keys based on other values in the object
255
+ - add partitionTime() transducer ([efafd0b](https://github.com/thi-ng/umbrella/commit/efafd0b))
169
256
 
170
- # [6.4.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/transducers@6.3.2...@thi.ng/transducers@6.4.0) (2020-03-01)
257
+ ## [6.3.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/transducers@6.3.0) (2020-02-25)
171
258
 
172
- ### Features
259
+ #### 🚀 Features
173
260
 
174
- - **transducers:** add partitionTime() transducer ([efafd0b](https://github.com/thi-ng/umbrella/commit/efafd0ba3f5cfc52a42bb39819caadf35d6b2f42))
175
- - **transducers:** update mapKeys() key fns to accept 2nd arg ([749d2cd](https://github.com/thi-ng/umbrella/commit/749d2cd2fef29f6991bde75a775d6715600c3b34))
261
+ - add peek() xform, update readme ([26aa228](https://github.com/thi-ng/umbrella/commit/26aa228))
176
262
 
177
- # [6.3.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/transducers@6.2.1...@thi.ng/transducers@6.3.0) (2020-02-25)
263
+ #### ♻️ Refactoring
178
264
 
179
- ### Features
265
+ - update imports ([f081687](https://github.com/thi-ng/umbrella/commit/f081687))
180
266
 
181
- - **transducers:** add peek() xform, update readme ([26aa228](https://github.com/thi-ng/umbrella/commit/26aa2284309dcf07cca3714dec23a799efd44f30))
267
+ ## [6.2.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/transducers@6.2.0) (2020-01-24)
182
268
 
183
- # [6.2.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/transducers@6.1.0...@thi.ng/transducers@6.2.0) (2020-01-24)
269
+ #### 🚀 Features
184
270
 
185
- ### Bug Fixes
271
+ - add IXform interface & TxLike type alias, update related functions ([49c62b7](https://github.com/thi-ng/umbrella/commit/49c62b7))
272
+ - update all fns expecting Transducer args
273
+ - add internal ensureTransducer() helper
274
+ - update curve(), line(), iterate() ([3581a9d](https://github.com/thi-ng/umbrella/commit/3581a9d))
275
+ - curve(): use new/improved logic from [@thi.ng/dsp](https://github.com/thi-ng/umbrella/tree/main/packages/dsp)
276
+ - iterate(): add opt step count
277
+ - add opt limit for cycle() ([186daff](https://github.com/thi-ng/umbrella/commit/186daff))
278
+ - add line(), curve() ([31bd5b9](https://github.com/thi-ng/umbrella/commit/31bd5b9))
279
+ - add dup() & palindrome(), update readme ([546bf9f](https://github.com/thi-ng/umbrella/commit/546bf9f))
280
+ - add sortedKeys() iterator ([fa9343c](https://github.com/thi-ng/umbrella/commit/fa9343c))
281
+ - add pushSort() reducer ([444d2ee](https://github.com/thi-ng/umbrella/commit/444d2ee))
186
282
 
187
- - **transducers:** update keep() xform to accept nullable ([1bc561b](https://github.com/thi-ng/umbrella/commit/1bc561bde02f116a5b1e2aff7a3d432d737fc4ae))
188
- - **transducers:** use child reducer completion step in groupByMap/Obj() ([ff44fcb](https://github.com/thi-ng/umbrella/commit/ff44fcbc877d75a5d7458459656f3b86ab6a0399))
283
+ #### 🩹 Bug fixes
189
284
 
190
- ### Features
285
+ - update keep() xform to accept nullable ([1bc561b](https://github.com/thi-ng/umbrella/commit/1bc561b))
286
+ - use child reducer completion step in groupByMap/Obj() ([ff44fcb](https://github.com/thi-ng/umbrella/commit/ff44fcb))
191
287
 
192
- - **transducers:** add dup() & palindrome(), update readme ([546bf9f](https://github.com/thi-ng/umbrella/commit/546bf9ffaa25c926f3e8af365049723bc9fe5877))
193
- - **transducers:** add IXform interface & TxLike type alias, update related functions ([49c62b7](https://github.com/thi-ng/umbrella/commit/49c62b7932eb943a8db472c3e1de0f18a35c43c6))
194
- - **transducers:** add line(), curve() ([31bd5b9](https://github.com/thi-ng/umbrella/commit/31bd5b9758a8da828cb9cc79820333279f810345))
195
- - **transducers:** add opt limit for cycle() ([186daff](https://github.com/thi-ng/umbrella/commit/186daff00edeb9b3a7e1475e3f903f3b1f0b75c2))
196
- - **transducers:** add pushSort() reducer ([444d2ee](https://github.com/thi-ng/umbrella/commit/444d2ee6b5111e4855b8cb3f2417738ccd934861))
197
- - **transducers:** add sortedKeys() iterator ([fa9343c](https://github.com/thi-ng/umbrella/commit/fa9343c8028c3f02e0322362db97a126f5c8a564))
198
- - **transducers:** update curve(), line(), iterate() ([3581a9d](https://github.com/thi-ng/umbrella/commit/3581a9d7c9eba9e3fa6cf8ec6a0a63e662157e83))
288
+ #### Performance improvements
199
289
 
200
- ### Performance Improvements
290
+ - update string version of palindrome() ([315cbf8](https://github.com/thi-ng/umbrella/commit/315cbf8))
291
+ - avoid char-wise iteration of original input
201
292
 
202
- - **transducers:** update string version of palindrome() ([315cbf8](https://github.com/thi-ng/umbrella/commit/315cbf80b577966e19f6a135d2c4256205c4a251))
293
+ #### ♻️ Refactoring
203
294
 
204
- # [6.1.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/transducers@6.0.0...@thi.ng/transducers@6.1.0) (2019-11-30)
295
+ - update ConvolutionOpts ([0748d97](https://github.com/thi-ng/umbrella/commit/0748d97))
205
296
 
206
- ### Bug Fixes
297
+ ## [6.1.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/transducers@6.1.0) (2019-11-30)
207
298
 
208
- - **transducers:** add type hints ([651e281](https://github.com/thi-ng/umbrella/commit/651e281df6ca7f713e78d17c656bb59bea52f877))
299
+ #### 🩹 Bug fixes
209
300
 
210
- ### Features
301
+ - add type hints ([651e281](https://github.com/thi-ng/umbrella/commit/651e281))
211
302
 
212
- - **transducers:** add back pressure support for partitionSync() ([6e14952](https://github.com/thi-ng/umbrella/commit/6e1495229c3e9527c168ffe573533124088c3006))
303
+ # [6.0.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/transducers@6.0.0) (2019-11-09)
213
304
 
214
- # [6.0.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/transducers@5.4.5...@thi.ng/transducers@6.0.0) (2019-11-09)
305
+ #### 🛑 Breaking changes
215
306
 
216
- ### Code Refactoring
307
+ - update tween() args ([5523582](https://github.com/thi-ng/umbrella/commit/5523582))
308
+ - add TweenOpts
309
+ - add/update docstrings
310
+ - BREAKING CHANGE: replace tween() args w/ `TweenOpts` config object
311
+ - rename old `interpolate` => `tween` ([918721d](https://github.com/thi-ng/umbrella/commit/918721d))
312
+ - BREAKING CHANGE: rename `interpolate` iterator => `tween`
313
+ - simplify args for extendSides, padSides, wrapSides ([a36651a](https://github.com/thi-ng/umbrella/commit/a36651a))
314
+ - rename wrap() => wrapSides()
315
+ - remove obsolete & deprecated wrapLeft/Right/Both
316
+ - BREAKING CHANGE: Rename wrap() => wrapSides(), update signature to be
317
+ aligned w/ related iterators
217
318
 
218
- - **transducers:** rename old `interpolate` => `tween` ([918721d](https://github.com/thi-ng/umbrella/commit/918721dada9bab8045e397f13a2f77290eea2c88))
219
- - **transducers:** simplify args for extendSides, padSides, wrapSides ([a36651a](https://github.com/thi-ng/umbrella/commit/a36651a3aadb951a3d8bd117ddfa0dddf48d36ac))
220
- - **transducers:** update tween() args ([5523582](https://github.com/thi-ng/umbrella/commit/552358207cdf1dfdcb2ca78deac326ecad895fa9))
319
+ #### 🚀 Features
221
320
 
222
- ### Features
321
+ - add new transducers: interpolate, interpolateHermite/Linear ([c3fa9ab](https://github.com/thi-ng/umbrella/commit/c3fa9ab))
322
+ - add new iterators: extendSides/padSides/symmetric() ([47001fc](https://github.com/thi-ng/umbrella/commit/47001fc))
223
323
 
224
- - **transducers:** add new iterators: extendSides/padSides/symmetric() ([47001fc](https://github.com/thi-ng/umbrella/commit/47001fc9c16f53af427e872b04929113d69463aa))
225
- - **transducers:** add new transducers: interpolate, interpolateHermite/Linear ([c3fa9ab](https://github.com/thi-ng/umbrella/commit/c3fa9ab90797af1d89e05f1c3821a87f9aa8a543))
324
+ #### ♻️ Refactoring
226
325
 
227
- ### BREAKING CHANGES
326
+ - fix [#166](https://github.com/thi-ng/umbrella/issues/166), update wrapSides() bounds check ([963c73a](https://github.com/thi-ng/umbrella/commit/963c73a))
327
+ - add type hints (TS 3.6.4) ([a1582c0](https://github.com/thi-ng/umbrella/commit/a1582c0))
228
328
 
229
- - **transducers:** replace tween() args w/ `TweenOpts` config object
230
- - **transducers:** rename `interpolate` iterator => `tween`
231
- - **transducers:** Rename wrap() => wrapSides(), update signature to be aligned w/ related iterators
329
+ ### [5.4.5](https://github.com/thi-ng/umbrella/tree/@thi.ng/transducers@5.4.5) (2019-09-21)
232
330
 
233
- ## [5.4.5](https://github.com/thi-ng/umbrella/compare/@thi.ng/transducers@5.4.4...@thi.ng/transducers@5.4.5) (2019-09-21)
331
+ #### 🚀 Features
234
332
 
235
- ### Bug Fixes
333
+ - add back pressure support for partitionSync() ([6e14952](https://github.com/thi-ng/umbrella/commit/6e14952))
236
334
 
237
- - **transducers:** fix mean() for reduce w/ init value ([d993bf2](https://github.com/thi-ng/umbrella/commit/d993bf2))
335
+ #### 🩹 Bug fixes
238
336
 
239
- # [5.4.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/transducers@5.3.7...@thi.ng/transducers@5.4.0) (2019-07-07)
337
+ - fix mean() for reduce w/ init value ([d993bf2](https://github.com/thi-ng/umbrella/commit/d993bf2))
240
338
 
241
- ### Bug Fixes
339
+ ### [5.4.4](https://github.com/thi-ng/umbrella/tree/@thi.ng/transducers@5.4.4) (2019-08-21)
242
340
 
243
- - **transducers:** fix cat/mapcat arg types ([0d9b7cb](https://github.com/thi-ng/umbrella/commit/0d9b7cb))
341
+ #### ♻️ Refactoring
244
342
 
245
- ### Features
343
+ - extract internal helpers, update rfns & xforms ([7772f9b](https://github.com/thi-ng/umbrella/commit/7772f9b))
344
+ Impacted reducers:
345
+ - add/mul/sub
346
+ - groupByMap/Obj
347
+ Xforms:
348
+ - movingMedian
349
+ - partitionSort / streamSort
350
+ - takeLast
351
+ - update/split reduce() ([820e7c7](https://github.com/thi-ng/umbrella/commit/820e7c7))
352
+ - update kernelLookup destructuring ([acaa38e](https://github.com/thi-ng/umbrella/commit/acaa38e))
353
+ - extract common logic for add/mul/sub reducers ([7caa71a](https://github.com/thi-ng/umbrella/commit/7caa71a))
246
354
 
247
- - **transducers:** enable TS strict compiler flags (refactor) ([2f8ec89](https://github.com/thi-ng/umbrella/commit/2f8ec89))
355
+ ## [5.4.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/transducers@5.4.0) (2019-07-07)
248
356
 
249
- ## [5.3.3](https://github.com/thi-ng/umbrella/compare/@thi.ng/transducers@5.3.2...@thi.ng/transducers@5.3.3) (2019-04-03)
357
+ #### 🚀 Features
250
358
 
251
- ### Bug Fixes
359
+ - enable TS strict compiler flags (refactor) ([2f8ec89](https://github.com/thi-ng/umbrella/commit/2f8ec89))
252
360
 
253
- - **transducers:** fix [#82](https://github.com/thi-ng/umbrella/issues/82), update partitionSync required key checks, add tests ([8b2f3fe](https://github.com/thi-ng/umbrella/commit/8b2f3fe))
361
+ #### 🩹 Bug fixes
254
362
 
255
- # [5.3.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/transducers@5.2.2...@thi.ng/transducers@5.3.0) (2019-03-21)
363
+ - fix cat/mapcat arg types ([0d9b7cb](https://github.com/thi-ng/umbrella/commit/0d9b7cb))
256
364
 
257
- ### Bug Fixes
365
+ #### ♻️ Refactoring
258
366
 
259
- - **transducers:** update mean() completion step to avoid div by zero ([f644ecd](https://github.com/thi-ng/umbrella/commit/f644ecd))
367
+ - address TS strictNullChecks flag ([c681aae](https://github.com/thi-ng/umbrella/commit/c681aae))
260
368
 
261
- ### Features
369
+ ### [5.3.3](https://github.com/thi-ng/umbrella/tree/@thi.ng/transducers@5.3.3) (2019-04-03)
262
370
 
263
- - **transducers:** add toggle() xform ([b5c744e](https://github.com/thi-ng/umbrella/commit/b5c744e))
371
+ #### 🩹 Bug fixes
264
372
 
265
- # [5.2.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/transducers@5.1.2...@thi.ng/transducers@5.2.0) (2019-03-10)
373
+ - fix [#82](https://github.com/thi-ng/umbrella/issues/82), update partitionSync required key checks, add tests ([8b2f3fe](https://github.com/thi-ng/umbrella/commit/8b2f3fe))
266
374
 
267
- ### Features
375
+ ## [5.3.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/transducers@5.3.0) (2019-03-21)
268
376
 
269
- - **transducers:** add / update convolution fns ([31e594b](https://github.com/thi-ng/umbrella/commit/31e594b))
377
+ #### 🚀 Features
270
378
 
271
- ## [5.1.2](https://github.com/thi-ng/umbrella/compare/@thi.ng/transducers@5.1.1...@thi.ng/transducers@5.1.2) (2019-03-03)
379
+ - add toggle() xform ([b5c744e](https://github.com/thi-ng/umbrella/commit/b5c744e))
272
380
 
273
- ### Bug Fixes
381
+ #### 🩹 Bug fixes
274
382
 
275
- - **transducers:** update dedupe() w/ predicate arg ([c414423](https://github.com/thi-ng/umbrella/commit/c414423))
383
+ - update mean() completion step to avoid div by zero ([f644ecd](https://github.com/thi-ng/umbrella/commit/f644ecd))
276
384
 
277
- # [5.1.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/transducers@5.0.0...@thi.ng/transducers@5.1.0) (2019-02-26)
385
+ ## [5.2.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/transducers@5.2.0) (2019-03-10)
278
386
 
279
- ### Bug Fixes
387
+ #### 🚀 Features
280
388
 
281
- - **transducers:** update converge() & update readme ([9aca912](https://github.com/thi-ng/umbrella/commit/9aca912))
389
+ - add / update convolution fns ([31e594b](https://github.com/thi-ng/umbrella/commit/31e594b))
390
+ - add buildKernel1d, convolve1d
282
391
 
283
- ### Features
392
+ #### ♻️ Refactoring
284
393
 
285
- - **transducers:** add converge() xform, add iter arg to iterate() ([8393a95](https://github.com/thi-ng/umbrella/commit/8393a95))
394
+ - re-use type aliases from [@thi.ng/api](https://github.com/thi-ng/umbrella/tree/main/packages/api) ([0d2fdff](https://github.com/thi-ng/umbrella/commit/0d2fdff))
286
395
 
287
- # [5.0.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/transducers@4.0.1...@thi.ng/transducers@5.0.0) (2019-02-15)
396
+ ### [5.1.2](https://github.com/thi-ng/umbrella/tree/@thi.ng/transducers@5.1.2) (2019-03-03)
288
397
 
289
- ### Code Refactoring
398
+ #### 🩹 Bug fixes
290
399
 
291
- - **transducers:** remove obsolete fns, update to use [@thi](https://github.com/thi).ng/arrays ([83cb816](https://github.com/thi-ng/umbrella/commit/83cb816))
292
- - **transducers:** remove obsolete randomID() & weightedRandom() ([4b0eec6](https://github.com/thi-ng/umbrella/commit/4b0eec6))
293
- - **transducers:** restructure, migrate / remove various functions ([05bf213](https://github.com/thi-ng/umbrella/commit/05bf213))
400
+ - update dedupe() w/ predicate arg ([c414423](https://github.com/thi-ng/umbrella/commit/c414423))
401
+ - if pred is given, do not call pred for 1st value (always passes)
294
402
 
295
- ### BREAKING CHANGES
403
+ ## [5.1.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/transducers@5.1.0) (2019-02-26)
296
404
 
297
- - **transducers:** migrate / remove various functions to other packages
298
- - constantly(), delay(), identity() => @thi.ng/compose
299
- - randomID(), weightedRandom() => @thi.ng/random
300
- - remove re-exports:
301
- - even(), odd() (from @thi.ng/checks)
302
- - juxt() (from @thi.ng/compose)
303
- - remove obsolete hex() fn (use @thi.ng/strings fns instead)
304
- - **transducers:** migrate randomID() & weightedRandom() to @thi.ng/random
305
- - update choices() iterator
306
- - **transducers:** migrate various support fns to @thi.ng/arrays
307
- - remove/migrate functions:
308
- - binarySearch()
309
- - ensureArray() / ensureIterable()
310
- - fuzzyMatch()
311
- - peek()
312
- - shuffleN()
313
- - swizzler()
314
- - add support for IRandom in:
315
- - randomID()
316
- - choices()
317
- - weightedRandom()
318
- - sample()
319
- - update deps / readme
405
+ #### 🚀 Features
320
406
 
321
- # [4.0.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/transducers@3.0.2...@thi.ng/transducers@4.0.0) (2019-02-05)
407
+ - add converge() xform, add iter arg to iterate() ([8393a95](https://github.com/thi-ng/umbrella/commit/8393a95))
322
408
 
323
- ### Bug Fixes
409
+ #### 🩹 Bug fixes
324
410
 
325
- - **transducers:** ensure all vals in hexDump iterator version ([ae83bb2](https://github.com/thi-ng/umbrella/commit/ae83bb2))
411
+ - update converge() & update readme ([9aca912](https://github.com/thi-ng/umbrella/commit/9aca912))
326
412
 
327
- ### Code Refactoring
413
+ # [5.0.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/transducers@5.0.0) (2019-02-15)
328
414
 
329
- - **transducers:** migrate binary related ops to new package ([a7c1ef7](https://github.com/thi-ng/umbrella/commit/a7c1ef7))
415
+ #### 🛑 Breaking changes
330
416
 
331
- ### BREAKING CHANGES
417
+ - restructure, migrate / remove various functions ([05bf213](https://github.com/thi-ng/umbrella/commit/05bf213))
418
+ - BREAKING CHANGE: migrate / remove various functions to other packages
419
+ - constantly(), delay(), identity() => [@thi.ng/compose](https://github.com/thi-ng/umbrella/tree/main/packages/compose)
420
+ - randomID(), weightedRandom() => [@thi.ng/random](https://github.com/thi-ng/umbrella/tree/main/packages/random)
421
+ - remove re-exports:
422
+ - even(), odd() (from [@thi.ng/checks](https://github.com/thi-ng/umbrella/tree/main/packages/checks))
423
+ - juxt() (from [@thi.ng/compose](https://github.com/thi-ng/umbrella/tree/main/packages/compose))
424
+ - remove obsolete hex() fn (use [@thi.ng/strings](https://github.com/thi-ng/umbrella/tree/main/packages/strings) fns instead)
425
+ - remove obsolete randomID() & weightedRandom() ([4b0eec6](https://github.com/thi-ng/umbrella/commit/4b0eec6))
426
+ - BREAKING CHANGE: migrate randomID() & weightedRandom() to [@thi.ng/random](https://github.com/thi-ng/umbrella/tree/main/packages/random)
427
+ - update choices() iterator
428
+ - remove obsolete fns, update to use [@thi.ng/arrays](https://github.com/thi-ng/umbrella/tree/main/packages/arrays) ([83cb816](https://github.com/thi-ng/umbrella/commit/83cb816))
429
+ - BREAKING CHANGE: migrate various support fns to [@thi.ng/arrays](https://github.com/thi-ng/umbrella/tree/main/packages/arrays)
430
+ - remove/migrate functions:
431
+ - binarySearch()
432
+ - ensureArray() / ensureIterable()
433
+ - fuzzyMatch()
434
+ - peek()
435
+ - shuffleN()
436
+ - swizzler()
437
+ - add support for IRandom in:
438
+ - randomID()
439
+ - choices()
440
+ - weightedRandom()
441
+ - sample()
442
+ - update deps / readme
332
443
 
333
- - **transducers:** migrate all binary data related ops to new package @thi.ng/transducers-binary
444
+ #### ♻️ Refactoring
334
445
 
335
- Removed: - bits - base64Encode/Decode - hexDump - partitionBits - utf8Encode/Decode
446
+ - update [@thi.ng/arrays](https://github.com/thi-ng/umbrella/tree/main/packages/arrays) call sites ([f95ab38](https://github.com/thi-ng/umbrella/commit/f95ab38))
336
447
 
337
- # [3.0.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/transducers@2.3.2...@thi.ng/transducers@3.0.0) (2019-01-21)
448
+ # [4.0.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/transducers@4.0.0) (2019-02-05)
338
449
 
339
- ### Bug Fixes
450
+ #### 🛑 Breaking changes
340
451
 
341
- - **transducers:** update juxt re-export ([a894a24](https://github.com/thi-ng/umbrella/commit/a894a24))
452
+ - migrate binary related ops to new package ([a7c1ef7](https://github.com/thi-ng/umbrella/commit/a7c1ef7))
453
+ - update readme
454
+ - BREAKING CHANGE: migrate all binary data related ops to new package [@thi.ng/transducers-binary](https://github.com/thi-ng/umbrella/tree/main/packages/transducers-binary)
455
+ Removed:
456
+ - bits
457
+ - base64Encode/Decode
458
+ - hexDump
459
+ - partitionBits
460
+ - utf8Encode/Decode
342
461
 
343
- ### Build System
462
+ #### 🩹 Bug fixes
463
+
464
+ - ensure all vals in hexDump iterator version ([ae83bb2](https://github.com/thi-ng/umbrella/commit/ae83bb2))
465
+
466
+ #### ♻️ Refactoring
467
+
468
+ - deprecate & rename tuples() => zip() ([d1151ce](https://github.com/thi-ng/umbrella/commit/d1151ce))
469
+ - update refs / re-exports
470
+
471
+ # [3.0.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/transducers@3.0.0) (2019-01-21)
472
+
473
+ #### 🛑 Breaking changes
344
474
 
345
475
  - update package build scripts & outputs, imports in ~50 packages ([b54b703](https://github.com/thi-ng/umbrella/commit/b54b703))
476
+ - BREAKING CHANGE: enabled multi-outputs (ES6 modules, CJS, UMD)
477
+ - build scripts now first build ES6 modules in package root, then call
478
+ `scripts/bundle-module` to build minified CJS & UMD bundles in `/lib`
479
+ - all imports MUST be updated to only refer to package level
480
+ (not individual files anymore). tree shaking in user land will get rid of
481
+ all unused imported symbols.
482
+
483
+ #### 🩹 Bug fixes
484
+
485
+ - update juxt re-export ([a894a24](https://github.com/thi-ng/umbrella/commit/a894a24))
486
+
487
+ #### ♻️ Refactoring
488
+
489
+ - use arrow fns ([e9f0542](https://github.com/thi-ng/umbrella/commit/e9f0542))
490
+
491
+ ### [2.3.2](https://github.com/thi-ng/umbrella/tree/@thi.ng/transducers@2.3.2) (2019-01-02)
492
+
493
+ #### 🩹 Bug fixes
494
+
495
+ - add reduced() handling for cat() ([cd17586](https://github.com/thi-ng/umbrella/commit/cd17586))
496
+
497
+ ### [2.3.1](https://github.com/thi-ng/umbrella/tree/@thi.ng/transducers@2.3.1) (2018-12-29)
498
+
499
+ #### 🩹 Bug fixes
500
+
501
+ - interpolate() interval selection, add minPos/maxPos ([a90a712](https://github.com/thi-ng/umbrella/commit/a90a712))
502
+
503
+ ## [2.3.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/transducers@2.3.0) (2018-12-28)
504
+
505
+ #### 🚀 Features
506
+
507
+ - add interpolate() iterator, update readme ([846ab5c](https://github.com/thi-ng/umbrella/commit/846ab5c))
508
+
509
+ ### [2.2.7](https://github.com/thi-ng/umbrella/tree/@thi.ng/transducers@2.2.7) (2018-12-17)
510
+
511
+ #### 🩹 Bug fixes
512
+
513
+ - add return type for range() ([0470505](https://github.com/thi-ng/umbrella/commit/0470505))
514
+
515
+ ### [2.2.3](https://github.com/thi-ng/umbrella/tree/@thi.ng/transducers@2.2.3) (2018-12-01)
516
+
517
+ #### ♻️ Refactoring
518
+
519
+ - implement range() as class w/ IReducible impl ([0e77d2c](https://github.com/thi-ng/umbrella/commit/0e77d2c))
520
+
521
+ ## [2.2.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/transducers@2.2.0) (2018-10-17)
522
+
523
+ #### 🚀 Features
524
+
525
+ - update wrap*() fns to accept iterables ([515e5ba](https://github.com/thi-ng/umbrella/commit/515e5ba))
526
+
527
+ #### 🩹 Bug fixes
528
+
529
+ - minor TS3.1 fixes ([1ef2361](https://github.com/thi-ng/umbrella/commit/1ef2361))
530
+
531
+ #### ♻️ Refactoring
532
+
533
+ - add ensureArrayLike(), update permutations() ([f257330](https://github.com/thi-ng/umbrella/commit/f257330))
534
+ - update Infinity consts in various packages ([296e1e0](https://github.com/thi-ng/umbrella/commit/296e1e0))
535
+
536
+ ### [2.1.6](https://github.com/thi-ng/umbrella/tree/@thi.ng/transducers@2.1.6) (2018-09-26)
537
+
538
+ #### 🩹 Bug fixes
539
+
540
+ - fix matchLast(), fix & update return match*() types ([823d828](https://github.com/thi-ng/umbrella/commit/823d828))
541
+ - use iterator() instead of iterator1() for matchLast()
542
+ - fix return type decls for both matchFirst() / matchLast()
543
+ - update doc strings
544
+
545
+ ### [2.1.2](https://github.com/thi-ng/umbrella/tree/@thi.ng/transducers@2.1.2) (2018-09-22)
546
+
547
+ #### 🩹 Bug fixes
548
+
549
+ - add missing type annotation ([022101f](https://github.com/thi-ng/umbrella/commit/022101f))
550
+
551
+ ### [2.1.2-alpha.1](https://github.com/thi-ng/umbrella/tree/@thi.ng/transducers@2.1.2-alpha.1) (2018-09-17)
552
+
553
+ #### 🚀 Features
554
+
555
+ - add randomID() ([b488d2b](https://github.com/thi-ng/umbrella/commit/b488d2b))
556
+
557
+ #### 🩹 Bug fixes
558
+
559
+ - str() initial result handling ([f001314](https://github.com/thi-ng/umbrella/commit/f001314))
560
+ - update arg types for choices() & weightedRandom() ([eb67426](https://github.com/thi-ng/umbrella/commit/eb67426))
561
+
562
+ ## [2.1.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/transducers@2.1.0) (2018-09-08)
563
+
564
+ #### 🚀 Features
565
+
566
+ - rename window() => slidingWindow(), update readme ([1f22867](https://github.com/thi-ng/umbrella/commit/1f22867))
567
+ - update partitionSync() xform & PartitionSyncOpts ([d8fdc01](https://github.com/thi-ng/umbrella/commit/d8fdc01))
568
+ - add `mergeOnly` option to allow partially populated result tuples
569
+ - add window() xform ([2f0f3d4](https://github.com/thi-ng/umbrella/commit/2f0f3d4))
570
+
571
+ ### [2.0.3](https://github.com/thi-ng/umbrella/tree/@thi.ng/transducers@2.0.3) (2018-09-03)
572
+
573
+ #### ♻️ Refactoring
574
+
575
+ - update normRange() ([4a16bd5](https://github.com/thi-ng/umbrella/commit/4a16bd5))
576
+ - add opt flag to exclude last value
577
+
578
+ # [2.0.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/transducers@2.0.0) (2018-08-24)
579
+
580
+ #### 🛑 Breaking changes
346
581
 
347
- ### BREAKING CHANGES
582
+ - add GroupByOpts interface, update groupBy* reducers ([2c3a114](https://github.com/thi-ng/umbrella/commit/2c3a114))
583
+ - add support for direct reduction if optional iterable is provided
584
+ - BREAKING CHANGE: groupByMap() & groupByObj() args now given as
585
+ options object
586
+ - update all xforms to also work as iterator ([bae8a1d](https://github.com/thi-ng/umbrella/commit/bae8a1d))
587
+ - if input iterable is provided, return iterator version
588
+ - add opt initial result arg for scan()
589
+ - utf8Decode() w/ input returns string
590
+ - update tests
591
+ - BREAKING CHANGE: replace some xform args with options objects, impacted are:
592
+ - convolve2d()
593
+ - filterFuzzy()
594
+ - hexDump()
595
+ - movingMedian()
596
+ - partitionSort()
597
+ - partitionSync()
598
+ - streamSort()
599
+ - wordWrap()
600
+ - rename inspect() => trace() ([e713704](https://github.com/thi-ng/umbrella/commit/e713704))
601
+ - BREAKING CHANGE: rename inspect() => trace()
348
602
 
349
- - enabled multi-outputs (ES6 modules, CJS, UMD)
350
- - build scripts now first build ES6 modules in package root, then call `scripts/bundle-module` to build minified CJS & UMD bundles in `/lib`
351
- - all imports MUST be updated to only refer to package level (not individual files anymore). tree shaking in user land will get rid of all unused imported symbols.
603
+ #### 🚀 Features
352
604
 
353
- ## [2.3.2](https://github.com/thi-ng/umbrella/compare/@thi.ng/transducers@2.3.1...@thi.ng/transducers@2.3.2) (2019-01-02)
605
+ - update base64Encode() to return string if input given ([599f2b6](https://github.com/thi-ng/umbrella/commit/599f2b6))
606
+ - update all reducers to accept opt iterables ([89b4ad5](https://github.com/thi-ng/umbrella/commit/89b4ad5))
607
+ - add $$reduce helper
608
+ - fix str() to use string concatenation (instead of Array.join())
609
+ - add opt init vals for add() & mul()
610
+ - add sub() & div() reducers
611
+ - add fill() & fillN() reducers ([0bd860e](https://github.com/thi-ng/umbrella/commit/0bd860e))
354
612
 
355
- ### Bug Fixes
613
+ #### 🩹 Bug fixes
356
614
 
357
- - **transducers:** add reduced() handling for cat() ([cd17586](https://github.com/thi-ng/umbrella/commit/cd17586))
615
+ - arg handling in rename() ([7a5be21](https://github.com/thi-ng/umbrella/commit/7a5be21))
616
+ - copy&paste error (push) ([832e57f](https://github.com/thi-ng/umbrella/commit/832e57f))
617
+ - iterator1() final reduced value handling ([d861bdd](https://github.com/thi-ng/umbrella/commit/d861bdd))
618
+ - hex type decl ([723da5b](https://github.com/thi-ng/umbrella/commit/723da5b))
358
619
 
359
- ## [2.3.1](https://github.com/thi-ng/umbrella/compare/@thi.ng/transducers@2.3.0...@thi.ng/transducers@2.3.1) (2018-12-29)
620
+ #### ⏱ Performance improvements
360
621
 
361
- ### Bug Fixes
622
+ - add IReducible, update reduce() ([9d83255](https://github.com/thi-ng/umbrella/commit/9d83255))
623
+ - add IReducible interface for custom/optimized iteration
624
+ and source value provision for reduce()
625
+ - add array-like check to reduce() and switch to version without
626
+ forcing array iterator (`for..of..`)
627
+ - add iterator1(), update various xforms ([ab662d8](https://github.com/thi-ng/umbrella/commit/ab662d8))
628
+ - iterator1() is speed optimized for 0-or-1 result xforms
629
+ w/o completion step
630
+ - update $iter to accept iterator impl
362
631
 
363
- - **transducers:** interpolate() interval selection, add minPos/maxPos ([a90a712](https://github.com/thi-ng/umbrella/commit/a90a712))
632
+ #### ♻️ Refactoring
364
633
 
365
- # [2.3.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/transducers@2.2.8...@thi.ng/transducers@2.3.0) (2018-12-28)
634
+ - replace local types w/ external defs ([3a8bd08](https://github.com/thi-ng/umbrella/commit/3a8bd08))
635
+ - re-use Fn & SEMAPHORE ([@thi.ng/api](https://github.com/thi-ng/umbrella/tree/main/packages/api))
636
+ - replace comp() and juxt() ([@thi.ng/compose](https://github.com/thi-ng/umbrella/tree/main/packages/compose))
637
+ - add shared SortOpts, update xforms ([8a111ef](https://github.com/thi-ng/umbrella/commit/8a111ef))
638
+ - replace opts for movingMedian(), partitionSort(), streamSort()
639
+ - move convolution types to src/xform/convole.ts
640
+ - move StructField to src/xform/struct.ts
641
+ - add ReductionFn type alias, update Reducer ([45e4993](https://github.com/thi-ng/umbrella/commit/45e4993))
366
642
 
367
- ### Features
643
+ ## [1.16.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/transducers@1.16.0) (2018-08-08)
368
644
 
369
- - **transducers:** add interpolate() iterator, update readme ([846ab5c](https://github.com/thi-ng/umbrella/commit/846ab5c))
645
+ #### 🚀 Features
370
646
 
371
- ## [2.2.7](https://github.com/thi-ng/umbrella/compare/@thi.ng/transducers@2.2.6...@thi.ng/transducers@2.2.7) (2018-12-17)
647
+ - add partitionBits() xform & tests ([a5e2c28](https://github.com/thi-ng/umbrella/commit/a5e2c28))
372
648
 
373
- ### Bug Fixes
649
+ #### ♻️ Refactoring
374
650
 
375
- - **transducers:** add return type for range() ([0470505](https://github.com/thi-ng/umbrella/commit/0470505))
651
+ - deprecate hex(), update hexDump() xform & deps ([b1ea9a5](https://github.com/thi-ng/umbrella/commit/b1ea9a5))
376
652
 
377
- # [2.2.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/transducers@2.1.6...@thi.ng/transducers@2.2.0) (2018-10-17)
653
+ ## [1.15.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/transducers@1.15.0) (2018-08-02)
378
654
 
379
- ### Bug Fixes
655
+ #### 🚀 Features
380
656
 
381
- - **transducers:** minor TS3.1 fixes ([1ef2361](https://github.com/thi-ng/umbrella/commit/1ef2361))
657
+ - add peek() helper fn ([e50fd10](https://github.com/thi-ng/umbrella/commit/e50fd10))
382
658
 
383
- ### Features
659
+ ## [1.14.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/transducers@1.14.0) (2018-07-19)
384
660
 
385
- - **transducers:** update wrap*() fns to accept iterables ([515e5ba](https://github.com/thi-ng/umbrella/commit/515e5ba))
661
+ #### 🚀 Features
386
662
 
387
- ## [2.1.6](https://github.com/thi-ng/umbrella/compare/@thi.ng/transducers@2.1.5...@thi.ng/transducers@2.1.6) (2018-09-26)
663
+ - add asIterable() helper ([ccc37c6](https://github.com/thi-ng/umbrella/commit/ccc37c6))
664
+ - allow key arrays for rename(), simplify call sites ([092154c](https://github.com/thi-ng/umbrella/commit/092154c))
665
+ - update multiplexObj() & struct() xforms
666
+ - add juxtR() for multiplexed reductions from same src ([9b07d12](https://github.com/thi-ng/umbrella/commit/9b07d12))
667
+ - add tests & docs
388
668
 
389
- ### Bug Fixes
669
+ #### ⏱ Performance improvements
390
670
 
391
- - **transducers:** fix matchLast(), fix & update return match*() types ([823d828](https://github.com/thi-ng/umbrella/commit/823d828))
671
+ - update movingAverage() xform, add docs ([9874ace](https://github.com/thi-ng/umbrella/commit/9874ace))
392
672
 
393
- ## [2.1.2](https://github.com/thi-ng/umbrella/compare/@thi.ng/transducers@2.1.2-alpha.1...@thi.ng/transducers@2.1.2) (2018-09-22)
673
+ ## [1.13.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/transducers@1.13.0) (2018-07-13)
394
674
 
395
- ### Bug Fixes
675
+ #### 🚀 Features
396
676
 
397
- - **transducers:** add missing type annotation ([022101f](https://github.com/thi-ng/umbrella/commit/022101f))
677
+ - add wordWrap() xform ([81223dc](https://github.com/thi-ng/umbrella/commit/81223dc))
398
678
 
399
- ## [2.1.2-alpha.1](https://github.com/thi-ng/umbrella/compare/@thi.ng/transducers@2.1.2-alpha.0...@thi.ng/transducers@2.1.2-alpha.1) (2018-09-17)
679
+ ### [1.12.2](https://github.com/thi-ng/umbrella/tree/@thi.ng/transducers@1.12.2) (2018-07-09)
400
680
 
401
- ### Bug Fixes
681
+ #### 🩹 Bug fixes
402
682
 
403
- - **transducers:** str() initial result handling ([f001314](https://github.com/thi-ng/umbrella/commit/f001314))
404
- - **transducers:** update arg types for choices() & weightedRandom() ([eb67426](https://github.com/thi-ng/umbrella/commit/eb67426))
683
+ - revert mean() from regression introduced in [095e6ef](https://github.com/thi-ng/umbrella/commit/095e6ef) ([03543ee](https://github.com/thi-ng/umbrella/commit/03543ee))
405
684
 
406
- ### Features
685
+ ### [1.12.1](https://github.com/thi-ng/umbrella/tree/@thi.ng/transducers@1.12.1) (2018-07-09)
407
686
 
408
- - **transducers:** add randomID() ([b488d2b](https://github.com/thi-ng/umbrella/commit/b488d2b))
687
+ #### ♻️ Refactoring
409
688
 
410
- # [2.1.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/transducers@2.0.4...@thi.ng/transducers@2.1.0) (2018-09-08)
689
+ - add reducer() helper, update existing reducers ([095e6ef](https://github.com/thi-ng/umbrella/commit/095e6ef))
411
690
 
412
- ### Features
691
+ ## [1.12.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/transducers@1.12.0) (2018-07-03)
413
692
 
414
- - **transducers:** add window() xform ([2f0f3d4](https://github.com/thi-ng/umbrella/commit/2f0f3d4))
415
- - **transducers:** rename window() => slidingWindow(), update readme ([1f22867](https://github.com/thi-ng/umbrella/commit/1f22867))
416
- - **transducers:** update partitionSync() xform & PartitionSyncOpts ([d8fdc01](https://github.com/thi-ng/umbrella/commit/d8fdc01))
693
+ #### 🚀 Features
417
694
 
418
- # [2.0.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/transducers@1.16.0...@thi.ng/transducers@2.0.0) (2018-08-24)
695
+ - add ensureArray(), refactor reverse() ([677c7cc](https://github.com/thi-ng/umbrella/commit/677c7cc))
419
696
 
420
- ### Bug Fixes
697
+ ## [1.11.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/transducers@1.11.0) (2018-06-19)
421
698
 
422
- - **transducers:** arg handling in rename() ([7a5be21](https://github.com/thi-ng/umbrella/commit/7a5be21))
423
- - **transducers:** copy&paste error (push) ([832e57f](https://github.com/thi-ng/umbrella/commit/832e57f))
424
- - **transducers:** hex type decl ([723da5b](https://github.com/thi-ng/umbrella/commit/723da5b))
425
- - **transducers:** iterator1() final reduced value handling ([d861bdd](https://github.com/thi-ng/umbrella/commit/d861bdd))
699
+ #### 🚀 Features
426
700
 
427
- ### Code Refactoring
701
+ - add matchFirst()/matchLast() xforms, update readme ([bc261e5](https://github.com/thi-ng/umbrella/commit/bc261e5))
428
702
 
429
- - **transducers:** rename inspect() => trace() ([e713704](https://github.com/thi-ng/umbrella/commit/e713704))
703
+ ### [1.10.1](https://github.com/thi-ng/umbrella/tree/@thi.ng/transducers@1.10.1) (2018-05-14)
430
704
 
431
- ### Features
705
+ #### ♻️ Refactoring
432
706
 
433
- - **transducers:** add fill() & fillN() reducers ([0bd860e](https://github.com/thi-ng/umbrella/commit/0bd860e))
434
- - **transducers:** add GroupByOpts interface, update groupBy* reducers ([2c3a114](https://github.com/thi-ng/umbrella/commit/2c3a114))
435
- - **transducers:** update all reducers to accept opt iterables ([89b4ad5](https://github.com/thi-ng/umbrella/commit/89b4ad5))
436
- - **transducers:** update all xforms to also work as iterator ([bae8a1d](https://github.com/thi-ng/umbrella/commit/bae8a1d))
437
- - **transducers:** update base64Encode() to return string if input given ([599f2b6](https://github.com/thi-ng/umbrella/commit/599f2b6))
707
+ - replace wrapBoth/Left/Right w/ wrap() ([e238541](https://github.com/thi-ng/umbrella/commit/e238541))
708
+ - deprecate existing wrap*() iters
709
+ - update docs & readme
438
710
 
439
- ### Performance Improvements
711
+ ## [1.10.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/transducers@1.10.0) (2018-05-14)
440
712
 
441
- - **transducers:** add IReducible, update reduce() ([9d83255](https://github.com/thi-ng/umbrella/commit/9d83255))
442
- - **transducers:** add iterator1(), update various xforms ([ab662d8](https://github.com/thi-ng/umbrella/commit/ab662d8))
713
+ #### 🚀 Features
443
714
 
444
- ### BREAKING CHANGES
715
+ - add filterFuzzy() xform ([2bebba2](https://github.com/thi-ng/umbrella/commit/2bebba2))
716
+ - add fuzzyMatch() predicate
717
+ - add wrap*() iterators ([306625d](https://github.com/thi-ng/umbrella/commit/306625d))
718
+ - add wrapBoth()
719
+ - add wrapLeft()
720
+ - add wrapRight()
445
721
 
446
- - **transducers:** groupByMap() & groupByObj() args now given as options object
447
- - **transducers:** replace some xform args with options objects, impacted are:
448
- - convolve2d()
449
- - filterFuzzy()
450
- - hexDump()
451
- - movingMedian()
452
- - partitionSort()
453
- - partitionSync()
454
- - streamSort()
455
- - wordWrap()
456
- - **transducers:** rename inspect() => trace()
722
+ ## [1.9.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/transducers@1.9.0) (2018-05-10)
457
723
 
458
- # [1.16.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/transducers@1.15.0...@thi.ng/transducers@1.16.0) (2018-08-08)
724
+ #### 🚀 Features
459
725
 
460
- ### Features
726
+ - add normRange() iterator ([55f29b8](https://github.com/thi-ng/umbrella/commit/55f29b8))
461
727
 
462
- - **transducers:** add partitionBits() xform & tests ([a5e2c28](https://github.com/thi-ng/umbrella/commit/a5e2c28))
728
+ ### [1.8.6](https://github.com/thi-ng/umbrella/tree/@thi.ng/transducers@1.8.6) (2018-05-10)
463
729
 
464
- # [1.15.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/transducers@1.14.3...@thi.ng/transducers@1.15.0) (2018-08-02)
730
+ #### ♻️ Refactoring
465
731
 
466
- ### Features
732
+ - update deps & imports in all packages due to [@thi.ng/api](https://github.com/thi-ng/umbrella/tree/main/packages/api) split ([bc45636](https://github.com/thi-ng/umbrella/commit/bc45636))
467
733
 
468
- - **transducers:** add peek() helper fn ([e50fd10](https://github.com/thi-ng/umbrella/commit/e50fd10))
734
+ ### [1.8.1](https://github.com/thi-ng/umbrella/tree/@thi.ng/transducers@1.8.1) (2018-04-18)
469
735
 
470
- # [1.14.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/transducers@1.13.0...@thi.ng/transducers@1.14.0) (2018-07-19)
736
+ #### 🩹 Bug fixes
471
737
 
472
- ### Features
738
+ - add generics for compR(), fix types in mapNth() ([3b7c9d9](https://github.com/thi-ng/umbrella/commit/3b7c9d9))
473
739
 
474
- - **transducer:** add asIterable() helper ([ccc37c6](https://github.com/thi-ng/umbrella/commit/ccc37c6))
475
- - **transducers:** add juxtR() for multiplexed reductions from same src ([9b07d12](https://github.com/thi-ng/umbrella/commit/9b07d12))
476
- - **transducers:** allow key arrays for rename(), simplify call sites ([092154c](https://github.com/thi-ng/umbrella/commit/092154c))
740
+ ## [1.8.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/transducers@1.8.0) (2018-04-11)
477
741
 
478
- ### Performance Improvements
742
+ #### 🚀 Features
479
743
 
480
- - **transducers:** update movingAverage() xform, add docs ([9874ace](https://github.com/thi-ng/umbrella/commit/9874ace))
744
+ - add run() for executing side effects only, update readme ([52c7508](https://github.com/thi-ng/umbrella/commit/52c7508))
481
745
 
482
- # [1.13.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/transducers@1.12.2...@thi.ng/transducers@1.13.0) (2018-07-13)
746
+ ### [1.7.1](https://github.com/thi-ng/umbrella/tree/@thi.ng/transducers@1.7.1) (2018-03-21)
483
747
 
484
- ### Features
748
+ #### ♻️ Refactoring
485
749
 
486
- - **transducers:** add wordWrap() xform ([81223dc](https://github.com/thi-ng/umbrella/commit/81223dc))
750
+ - update error handling ([ca099e5](https://github.com/thi-ng/umbrella/commit/ca099e5))
487
751
 
488
- ## [1.12.2](https://github.com/thi-ng/umbrella/compare/@thi.ng/transducers@1.12.1...@thi.ng/transducers@1.12.2) (2018-07-09)
752
+ ## [1.7.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/transducers@1.7.0) (2018-03-19)
489
753
 
490
- ### Bug Fixes
754
+ #### 🚀 Features
491
755
 
492
- - **transducers:** revert mean() from regression introduced in 095e6ef ([03543ee](https://github.com/thi-ng/umbrella/commit/03543ee))
756
+ - add mapVals() xform ([abc195a](https://github.com/thi-ng/umbrella/commit/abc195a))
757
+ - add partitionSync() xform ([bebd118](https://github.com/thi-ng/umbrella/commit/bebd118))
493
758
 
494
- # [1.12.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/transducers@1.11.1...@thi.ng/transducers@1.12.0) (2018-07-03)
759
+ #### ♻️ Refactoring
495
760
 
496
- ### Features
761
+ - update labeled(), mapIndexed(), partition() ([3bc8d54](https://github.com/thi-ng/umbrella/commit/3bc8d54))
762
+ - labeled() - add support for label fn instead of just static label
763
+ - mapIndexed() - add optional start index arg
764
+ - partition() - minor update in completing reducer
497
765
 
498
- - **transducers:** add ensureArray(), refactor reverse() ([677c7cc](https://github.com/thi-ng/umbrella/commit/677c7cc))
766
+ ## [1.6.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/transducers@1.6.0) (2018-03-03)
499
767
 
500
- # [1.11.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/transducers@1.10.3...@thi.ng/transducers@1.11.0) (2018-06-19)
768
+ #### 🚀 Features
501
769
 
502
- ### Features
770
+ - add permutations()/permutationsN() generators ([91938ed](https://github.com/thi-ng/umbrella/commit/91938ed))
503
771
 
504
- - **transducers:** add matchFirst()/matchLast() xforms, update readme ([bc261e5](https://github.com/thi-ng/umbrella/commit/bc261e5))
772
+ #### ♻️ Refactoring
505
773
 
506
- # [1.10.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/transducers@1.9.4...@thi.ng/transducers@1.10.0) (2018-05-14)
774
+ - extract compR() into its own file, update refs, update readme ([8c180bc](https://github.com/thi-ng/umbrella/commit/8c180bc))
775
+ - update swizzler() arg types ([2f5abce](https://github.com/thi-ng/umbrella/commit/2f5abce))
776
+ - update permutations()/permutationsN(), add tests ([488462e](https://github.com/thi-ng/umbrella/commit/488462e))
507
777
 
508
- ### Features
778
+ ### [1.5.1](https://github.com/thi-ng/umbrella/tree/@thi.ng/transducers@1.5.1) (2018-03-02)
509
779
 
510
- - **transducers:** add filterFuzzy() xform ([2bebba2](https://github.com/thi-ng/umbrella/commit/2bebba2))
511
- - **transducers:** add wrap*() iterators ([306625d](https://github.com/thi-ng/umbrella/commit/306625d))
780
+ #### 🩹 Bug fixes
512
781
 
513
- # [1.9.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/transducers@1.8.6...@thi.ng/transducers@1.9.0) (2018-05-10)
782
+ - flattenWith() ([3d8aa32](https://github.com/thi-ng/umbrella/commit/3d8aa32))
514
783
 
515
- ### Features
784
+ ## [1.5.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/transducers@1.5.0) (2018-02-26)
516
785
 
517
- - **transducers:** add normRange() iterator ([55f29b8](https://github.com/thi-ng/umbrella/commit/55f29b8))
786
+ #### 🚀 Features
518
787
 
519
- ## [1.8.1](https://github.com/thi-ng/umbrella/compare/@thi.ng/transducers@1.8.0...@thi.ng/transducers@1.8.1) (2018-04-18)
788
+ - add keys()/vals() iterators, refactor pairs() ([9824844](https://github.com/thi-ng/umbrella/commit/9824844))
520
789
 
521
- ### Bug Fixes
790
+ ## [1.4.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/transducers@1.4.0) (2018-02-23)
522
791
 
523
- - **transducers:** add generics for compR(), fix types in mapNth() ([3b7c9d9](https://github.com/thi-ng/umbrella/commit/3b7c9d9))
524
- - **transducers:** Provide argument types for compR() and deepTransform() ([de89f00](https://github.com/thi-ng/umbrella/commit/de89f00))
792
+ #### 🚀 Features
525
793
 
526
- # [1.8.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/transducers@1.7.5...@thi.ng/transducers@1.8.0) (2018-04-11)
794
+ - add deepTransform & mapDeep xform ([f0fdfa1](https://github.com/thi-ng/umbrella/commit/f0fdfa1))
527
795
 
528
- ### Features
796
+ #### ♻️ Refactoring
529
797
 
530
- - **transducers:** add run() for executing side effects only, update readme ([52c7508](https://github.com/thi-ng/umbrella/commit/52c7508))
798
+ - add TransformSubSpec, fix test, minor update docs ([2a11ff6](https://github.com/thi-ng/umbrella/commit/2a11ff6))
531
799
 
532
- # [1.7.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/transducers@1.6.2...@thi.ng/transducers@1.7.0) (2018-03-19)
800
+ ## [1.3.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/transducers@1.3.0) (2018-02-19)
533
801
 
534
- ### Features
802
+ #### 🚀 Features
535
803
 
536
- - **transducers:** add mapVals() xform ([abc195a](https://github.com/thi-ng/umbrella/commit/abc195a))
537
- - **transducers:** add partitionSync() xform ([bebd118](https://github.com/thi-ng/umbrella/commit/bebd118))
804
+ - add lookup1d/2d/3d helpers, update re-exports ([193058d](https://github.com/thi-ng/umbrella/commit/193058d))
538
805
 
539
- # [1.6.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/transducers@1.5.1...@thi.ng/transducers@1.6.0) (2018-03-03)
806
+ ## [1.2.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/transducers@1.2.0) (2018-02-18)
540
807
 
541
- ### Features
808
+ #### 🚀 Features
542
809
 
543
- - **transducers:** add permutations()/permutationsN() generators ([91938ed](https://github.com/thi-ng/umbrella/commit/91938ed))
810
+ - add convolve2d xform & types ([ab8a855](https://github.com/thi-ng/umbrella/commit/ab8a855))
811
+ - add movingMedian() xform ([d7b1d0d](https://github.com/thi-ng/umbrella/commit/d7b1d0d))
812
+ - add range2d / range3d generators ([722042b](https://github.com/thi-ng/umbrella/commit/722042b))
544
813
 
545
- ## [1.5.1](https://github.com/thi-ng/umbrella/compare/@thi.ng/transducers@1.5.0...@thi.ng/transducers@1.5.1) (2018-03-02)
814
+ #### 🩹 Bug fixes
546
815
 
547
- ### Bug Fixes
816
+ - update imports `step()` ([48f8bb8](https://github.com/thi-ng/umbrella/commit/48f8bb8))
548
817
 
549
- - **transducers:** flattenWith() ([3d8aa32](https://github.com/thi-ng/umbrella/commit/3d8aa32))
818
+ #### ♻️ Refactoring
550
819
 
551
- # [1.5.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/transducers@1.4.0...@thi.ng/transducers@1.5.0) (2018-02-26)
820
+ - add/update range2d/range3d arity handling ([63a4953](https://github.com/thi-ng/umbrella/commit/63a4953))
552
821
 
553
- ### Features
822
+ ## [1.1.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/transducers@1.1.0) (2018-02-08)
554
823
 
555
- - **transducers:** add keys()/vals() iterators, refactor pairs() ([9824844](https://github.com/thi-ng/umbrella/commit/9824844))
824
+ #### 🚀 Features
556
825
 
557
- # [1.4.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/transducers@1.3.0...@thi.ng/transducers@1.4.0) (2018-02-23)
826
+ - add page() xform, update readme ([855d803](https://github.com/thi-ng/umbrella/commit/855d803))
558
827
 
559
- ### Features
828
+ #### ♻️ Refactoring
560
829
 
561
- - **transducers:** add deepTransform & mapDeep xform ([f0fdfa1](https://github.com/thi-ng/umbrella/commit/f0fdfa1))
830
+ - re-use even/odd from [@thi.ng/checks](https://github.com/thi-ng/umbrella/tree/main/packages/checks) ([445c857](https://github.com/thi-ng/umbrella/commit/445c857))
562
831
 
563
- # [1.3.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/transducers@1.2.0...@thi.ng/transducers@1.3.0) (2018-02-19)
832
+ ### [1.0.6](https://github.com/thi-ng/umbrella/tree/@thi.ng/transducers@1.0.6) (2018-02-01)
564
833
 
565
- ### Features
834
+ #### 🩹 Bug fixes
566
835
 
567
- - **transducers:** add lookup1d/2d/3d helpers, update re-exports ([193058d](https://github.com/thi-ng/umbrella/commit/193058d))
836
+ - update comp() for typescript 2.7.* ([febe39f](https://github.com/thi-ng/umbrella/commit/febe39f))
568
837
 
569
- # [1.2.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/transducers@1.1.0...@thi.ng/transducers@1.2.0) (2018-02-18)
838
+ ### [1.0.5](https://github.com/thi-ng/umbrella/tree/@thi.ng/transducers@1.0.5) (2018-01-31)
570
839
 
571
- ### Bug Fixes
840
+ #### ♻️ Refactoring
572
841
 
573
- - **transducers:** update imports `step()` ([48f8bb8](https://github.com/thi-ng/umbrella/commit/48f8bb8))
842
+ - use Predicate2 ([4753afb](https://github.com/thi-ng/umbrella/commit/4753afb))
574
843
 
575
- ### Features
844
+ ### [1.0.2](https://github.com/thi-ng/umbrella/tree/@thi.ng/transducers@1.0.2) (2018-01-29)
576
845
 
577
- - **transducers:** add convolve2d xform & types ([ab8a855](https://github.com/thi-ng/umbrella/commit/ab8a855))
578
- - **transducers:** add movingMedian() xform ([d7b1d0d](https://github.com/thi-ng/umbrella/commit/d7b1d0d))
579
- - **transducers:** add range2d / range3d generators ([722042b](https://github.com/thi-ng/umbrella/commit/722042b))
846
+ #### Performance improvements
580
847
 
581
- # [1.1.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/transducers@1.0.7...@thi.ng/transducers@1.1.0) (2018-02-08)
848
+ - avoid result object cloning in struct() xform ([d774e32](https://github.com/thi-ng/umbrella/commit/d774e32))
849
+ - disable copying in mapKeys() step
582
850
 
583
- ### Features
851
+ # [1.0.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/transducers@1.0.0) (2018-01-28)
584
852
 
585
- - **transducers:** add page() xform, update readme ([855d803](https://github.com/thi-ng/umbrella/commit/855d803))
853
+ #### 🛑 Breaking changes
586
854
 
587
- ## [1.0.6](https://github.com/thi-ng/umbrella/compare/@thi.ng/transducers@1.0.5...@thi.ng/transducers@1.0.6) (2018-02-01)
855
+ - update throttle(), refactor take/dropNth ([e1a282c](https://github.com/thi-ng/umbrella/commit/e1a282c))
856
+ - throttle() requires stateful predicate now
857
+ - add throttleTime() as replacement for prev throttle() impl
858
+ - refactor takeNth()/dropNth() to use throttle()
859
+ - BREAKING CHANGE: throttle() requires stateful predicate now
860
+ - rename join() => str() rfn ([e268e35](https://github.com/thi-ng/umbrella/commit/e268e35))
861
+ - BREAKING CHANGE:
862
+ rename join() => str() reduer in prep for actual set join() op
863
+ - update step() to support multiple results ([1f32fc0](https://github.com/thi-ng/umbrella/commit/1f32fc0))
864
+ - respect reduced value termination
865
+ - internal use of push() vs. last() to support multiple results per transduction step
866
+ - add docs
867
+ - BREAKING CHANGE:
868
+ now possibly returns array instead of single value if wrapped transducer produced multiple results
588
869
 
589
- ### Bug Fixes
870
+ #### 🚀 Features
590
871
 
591
- - **transducers:** update comp() for typescript 2.7.* ([febe39f](https://github.com/thi-ng/umbrella/commit/febe39f))
872
+ - add noop() xform, update readme ([7b21aa6](https://github.com/thi-ng/umbrella/commit/7b21aa6))
873
+ - update re-exports, extract throttleTime() into own file ([45d6bc6](https://github.com/thi-ng/umbrella/commit/45d6bc6))
874
+ - add labeled() xform ([0b3c786](https://github.com/thi-ng/umbrella/commit/0b3c786))
875
+ - add multiplexObj() ([931b67f](https://github.com/thi-ng/umbrella/commit/931b67f))
876
+ - add every(), some() rfns ([63344e4](https://github.com/thi-ng/umbrella/commit/63344e4))
877
+ - update re-exports, minor update reductions() ([e555ff5](https://github.com/thi-ng/umbrella/commit/e555ff5))
878
+ - update frequencies() & groupByMap() ([4b8d037](https://github.com/thi-ng/umbrella/commit/4b8d037))
879
+ - add opt key fn for frequencies(), delegate to groupByMap()
880
+ - use identity as default key fn
881
+ - add multiplex() xform & docs ([beb2cee](https://github.com/thi-ng/umbrella/commit/beb2cee))
882
+ - add utf8Encode()/utf8Decode() xforms ([e50fa26](https://github.com/thi-ng/umbrella/commit/e50fa26))
592
883
 
593
- ## [1.0.2](https://github.com/thi-ng/umbrella/compare/@thi.ng/transducers@1.0.1...@thi.ng/transducers@1.0.2) (2018-01-29)
884
+ #### 🩹 Bug fixes
594
885
 
595
- ### Performance Improvements
886
+ - scan() complete handling ([44db970](https://github.com/thi-ng/umbrella/commit/44db970))
887
+ - pass final inner result to outer complete only if different
888
+ - add "complete" step handling in scan() ([8e5204d](https://github.com/thi-ng/umbrella/commit/8e5204d))
596
889
 
597
- - **transducers:** avoid result object cloning in struct() xform ([d774e32](https://github.com/thi-ng/umbrella/commit/d774e32))
890
+ #### ♻️ Refactoring
598
891
 
599
- # [1.0.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/transducers@0.11.2...@thi.ng/transducers@1.0.0) (2018-01-28)
892
+ - udate cat() to accept iterables, not just arrays ([58f1477](https://github.com/thi-ng/umbrella/commit/58f1477))
600
893
 
601
- ### Bug Fixes
894
+ ### [0.11.2](https://github.com/thi-ng/umbrella/tree/@thi.ng/transducers@0.11.2) (2018-01-25)
602
895
 
603
- - **transducers:** add "complete" step handling in scan() ([8e5204d](https://github.com/thi-ng/umbrella/commit/8e5204d))
604
- - **transducers:** scan() complete handling ([44db970](https://github.com/thi-ng/umbrella/commit/44db970))
896
+ #### 🩹 Bug fixes
605
897
 
606
- ### Code Refactoring
898
+ - include 1st val in benchmark() ([b3ce275](https://github.com/thi-ng/umbrella/commit/b3ce275))
899
+ - base64 imports ([75bb161](https://github.com/thi-ng/umbrella/commit/75bb161))
900
+ - project links in readme files ([e290d75](https://github.com/thi-ng/umbrella/commit/e290d75))
607
901
 
608
- - **transducers:** rename join() => str() rfn ([e268e35](https://github.com/thi-ng/umbrella/commit/e268e35))
902
+ #### ♻️ Refactoring
609
903
 
610
- ### Features
904
+ - update reverse(), add deps ([a2c3bc4](https://github.com/thi-ng/umbrella/commit/a2c3bc4))
905
+ - simplify concat(), add docs ([0c116c1](https://github.com/thi-ng/umbrella/commit/0c116c1))
611
906
 
612
- - **transducers:** add every(), some() rfns ([63344e4](https://github.com/thi-ng/umbrella/commit/63344e4))
613
- - **transducers:** add labeled() xform ([0b3c786](https://github.com/thi-ng/umbrella/commit/0b3c786))
614
- - **transducers:** add multiplex() xform & docs ([beb2cee](https://github.com/thi-ng/umbrella/commit/beb2cee))
615
- - **transducers:** add multiplexObj() ([931b67f](https://github.com/thi-ng/umbrella/commit/931b67f))
616
- - **transducers:** add noop() xform, update readme ([7b21aa6](https://github.com/thi-ng/umbrella/commit/7b21aa6))
617
- - **transducers:** add utf8Encode()/utf8Decode() xforms ([e50fa26](https://github.com/thi-ng/umbrella/commit/e50fa26))
618
- - **transducers:** update frequencies() & groupByMap() ([4b8d037](https://github.com/thi-ng/umbrella/commit/4b8d037))
619
- - **transducers:** update re-exports, extract throttleTime() into own file ([45d6bc6](https://github.com/thi-ng/umbrella/commit/45d6bc6))
620
- - **transducers:** update re-exports, minor update reductions() ([e555ff5](https://github.com/thi-ng/umbrella/commit/e555ff5))
621
- - **transducers:** update step() to support multiple results ([1f32fc0](https://github.com/thi-ng/umbrella/commit/1f32fc0))
622
- - **transducers:** update throttle(), refactor take/dropNth ([e1a282c](https://github.com/thi-ng/umbrella/commit/e1a282c))
907
+ ### [0.11.1](https://github.com/thi-ng/umbrella/tree/@thi.ng/transducers@0.11.1) (2018-01-24)
623
908
 
624
- ### BREAKING CHANGES
909
+ #### 🚀 Features
625
910
 
626
- - **transducers:** throttle() requires stateful predicate now
627
- - **transducers:** rename join() => str() reduer in prep for actual set join() op
628
- - **transducers:** now possibly returns array instead of single value if wrapped transducer produced multiple results
911
+ - initial re-import as monorepo, update readme files, cleanup imports ([04ff6e9](https://github.com/thi-ng/umbrella/commit/04ff6e9))