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