@weave-js/core 0.9.4 → 0.11.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (98) hide show
  1. package/lib/ExtendableError.js +33 -0
  2. package/lib/broker/context.js +25 -13
  3. package/lib/broker/{default-options.js → defaultOptions.js} +25 -6
  4. package/lib/broker/index.js +224 -194
  5. package/lib/buildRuntime.js +70 -0
  6. package/lib/cache/adapters/base.js +143 -0
  7. package/lib/cache/adapters/inMemory.js +154 -0
  8. package/lib/cache/adapters/inMemoryLru.js +140 -0
  9. package/lib/cache/adapters/index.js +46 -0
  10. package/lib/cache/base.js +49 -44
  11. package/lib/cache/lock.js +21 -4
  12. package/lib/constants.js +8 -5
  13. package/lib/errorHandler.js +19 -0
  14. package/lib/errors.js +17 -10
  15. package/lib/helper/{define-action.js → defineAction.js} +3 -1
  16. package/lib/helper/{define-broker-options.js → defineBrokerOptions.js} +2 -0
  17. package/lib/helper/{define-service.js → defineService.js} +4 -1
  18. package/lib/index.js +17 -92
  19. package/lib/logger/format/asHumanReadable.js +4 -3
  20. package/lib/logger/index.js +7 -1
  21. package/lib/logger/levels.js +8 -7
  22. package/lib/logger/tools.js +4 -0
  23. package/lib/logger/utils/format.js +18 -4
  24. package/lib/metrics/constants.js +8 -6
  25. package/lib/metrics/types/gauge.js +1 -1
  26. package/lib/middlewares/action-hooks/index.js +62 -14
  27. package/lib/middlewares/bulkhead/index.js +5 -4
  28. package/lib/middlewares/cache/index.js +106 -0
  29. package/lib/middlewares/circuit-breaker/index.js +41 -16
  30. package/lib/middlewares/context-tracker/index.js +3 -3
  31. package/lib/middlewares/error-handler/index.js +3 -3
  32. package/lib/middlewares/index.js +2 -1
  33. package/lib/middlewares/metrics/getMiddlewareWrapper.js +2 -2
  34. package/lib/middlewares/metrics/index.js +2 -2
  35. package/lib/middlewares/retry/index.js +11 -10
  36. package/lib/middlewares/timeout/index.js +5 -5
  37. package/lib/middlewares/tracing/index.js +27 -14
  38. package/lib/middlewares/tracing/tags.js +43 -0
  39. package/lib/middlewares/validator/index.js +6 -6
  40. package/lib/registry/{action-endpoint.js → actionEndpoint.js} +0 -0
  41. package/lib/registry/collections/{action-collection.js → actionCollection.js} +2 -2
  42. package/lib/registry/collections/{endpoint-collection.js → endpointCollection.js} +19 -3
  43. package/lib/registry/collections/{event-collection.js → eventCollection.js} +15 -9
  44. package/lib/registry/collections/{node-collection.js → nodeCollection.js} +1 -1
  45. package/lib/registry/collections/{service-collection.js → serviceCollection.js} +2 -2
  46. package/lib/registry/{event-endpoint.js → eventEndpoint.js} +1 -1
  47. package/lib/registry/node.js +1 -1
  48. package/lib/registry/registry.js +19 -38
  49. package/lib/registry/service/service.js +2 -2
  50. package/lib/registry/{service-item.js → serviceItem.js} +1 -1
  51. package/lib/runtime/{init-action-invoker.js → initActionInvoker.js} +3 -3
  52. package/lib/runtime/initCache.js +19 -0
  53. package/lib/runtime/{init-context-factory.js → initContextFactory.js} +2 -2
  54. package/lib/runtime/{init-eventbus.js → initEventbus.js} +11 -10
  55. package/lib/runtime/{init-logger.js → initLogger.js} +0 -0
  56. package/lib/runtime/{init-metrics.js → initMetrics.js} +11 -10
  57. package/lib/runtime/{init-middleware-manager.js → initMiddlewareManager.js} +1 -1
  58. package/lib/runtime/{init-registry.js → initRegistry.js} +1 -1
  59. package/lib/runtime/{init-service-manager.js → initServiceManager.js} +0 -0
  60. package/lib/runtime/{init-tracing.js → initTracing.js} +2 -1
  61. package/lib/runtime/{init-transport.js → initTransport.js} +0 -0
  62. package/lib/runtime/{init-uuid-factory.js → initUuidFactory.js} +0 -0
  63. package/lib/runtime/{init-validator.js → initValidator.js} +1 -1
  64. package/lib/tracing/collectors/base.js +11 -19
  65. package/lib/tracing/collectors/event.js +2 -2
  66. package/lib/tracing/collectors/index.js +2 -2
  67. package/lib/tracing/span.js +8 -6
  68. package/lib/transport/InboundTransformStream.js +75 -0
  69. package/lib/transport/adapters/{adapter-base.js → adapteBase.js} +16 -1
  70. package/lib/transport/adapters/adapters.js +1 -1
  71. package/lib/transport/adapters/dummy/index.js +3 -3
  72. package/lib/transport/adapters/index.js +1 -1
  73. package/lib/transport/adapters/tcp/discovery/index.js +45 -31
  74. package/lib/transport/adapters/tcp/index.js +20 -13
  75. package/lib/transport/adapters/tcp/tcpReader.js +1 -0
  76. package/lib/transport/adapters/tcp/tcpWriteStream.js +1 -1
  77. package/lib/transport/adapters/tcp/tcpWriter.js +2 -2
  78. package/lib/transport/createMessage.js +11 -0
  79. package/lib/transport/createTransport.js +215 -172
  80. package/lib/transport/errorPayloadFactory.js +18 -0
  81. package/lib/transport/{message-handlers.js → messageHandlers.js} +92 -23
  82. package/lib/transport/messageTypes.js +23 -0
  83. package/lib/types.js +86 -75
  84. package/lib/utils/index.js +1 -1
  85. package/lib/utils/options.js +4 -2
  86. package/lib/utils/{restore-error.js → restoreError.js} +1 -1
  87. package/package.json +6 -12
  88. package/CHANGELOG.md +0 -1317
  89. package/lib/cache/index.js +0 -48
  90. package/lib/cache/memory.js +0 -91
  91. package/lib/middlewares/tracing/buildTags.js +0 -17
  92. package/lib/new-errors.js +0 -25
  93. package/lib/runtime/init-cache.js +0 -10
  94. package/lib/tracing/collectors/console.js +0 -34
  95. package/lib/tracing/index.js +0 -3
  96. package/lib/tracing/tracer.js +0 -64
  97. package/lib/transport/message-types.js +0 -59
  98. package/lib/transport/message.js +0 -16
package/CHANGELOG.md DELETED
@@ -1,1317 +0,0 @@
1
- # Change Log
2
-
3
- All notable changes to this project will be documented in this file.
4
- See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
-
6
- ## [0.9.4](https://github.com/fachw3rk/weave/compare/@weave-js/core@0.9.3...@weave-js/core@0.9.4) (2021-09-09)
7
-
8
-
9
- ### Features
10
-
11
- * Added detection for TTY and an human-readable log output. ([9434a7b](https://github.com/fachw3rk/weave/commit/9434a7b9f5722550e20a1de073a5629f204827f9))
12
- * Implemented better human readable log output ([72d0faa](https://github.com/fachw3rk/weave/commit/72d0faa744b0e407502d90320bfc81af9e0ae866))
13
-
14
-
15
-
16
-
17
-
18
- ## [0.9.3](https://github.com/fachw3rk/weave/compare/@weave-js/core@0.9.2...@weave-js/core@0.9.3) (2021-08-30)
19
-
20
-
21
- ### Bug Fixes
22
-
23
- * Fixed log message for remote events ([32b8666](https://github.com/fachw3rk/weave/commit/32b8666f09936f0c687f95a57b7b20a4c24f544d))
24
- * removed unnecessary module import ([5febbe7](https://github.com/fachw3rk/weave/commit/5febbe7567f9b8b1f2c2c1d23eaa2e1d93a35cb8))
25
-
26
-
27
-
28
-
29
-
30
- ## [0.9.2](https://github.com/fachw3rk/weave/compare/@weave-js/core@0.9.1...@weave-js/core@0.9.2) (2021-08-18)
31
-
32
-
33
- ### Bug Fixes
34
-
35
- * Fixed @weave-js/utils references ([69f2d90](https://github.com/fachw3rk/weave/commit/69f2d9010210782e42b0f168f9ac88e3d40c3150))
36
-
37
-
38
-
39
-
40
-
41
- ## [0.9.1](https://github.com/fachw3rk/weave/compare/@weave-js/core@0.9.0...@weave-js/core@0.9.1) (2021-08-17)
42
-
43
-
44
- ### Bug Fixes
45
-
46
- * Fixed wrong gossip message constants. ([ad7ca04](https://github.com/fachw3rk/weave/commit/ad7ca04a131a7facb10cfa5a9473f167087fd894))
47
-
48
-
49
- ### Features
50
-
51
- * **core:** The possibility to validate responses via a "responseSchema" implemented in validator middleware. ([3387fe1](https://github.com/fachw3rk/weave/commit/3387fe1e9616c4ee882b7c863b53912851fd7a1b))
52
-
53
-
54
-
55
-
56
-
57
- # [0.9.0](https://github.com/fachw3rk/weave/compare/@weave-js/core@0.9.0-beta.13...@weave-js/core@0.9.0) (2021-08-02)
58
-
59
-
60
- ### Bug Fixes
61
-
62
- * unit test ([d76bad7](https://github.com/fachw3rk/weave/commit/d76bad7b9a723c45c9e92951dd9aa88b976ec56e))
63
- * **logger:** Fixed wrong service name in log object ([56bed33](https://github.com/fachw3rk/weave/commit/56bed335d7470d118e878428744a244934fcfd81))
64
-
65
-
66
-
67
-
68
-
69
- # [0.9.0-beta.13](https://github.com/fachw3rk/weave/compare/@weave-js/core@0.9.0-beta.12...@weave-js/core@0.9.0-beta.13) (2021-07-26)
70
-
71
-
72
- ### Bug Fixes
73
-
74
- * Added missing event name in Event parameter validation error message ([33c8365](https://github.com/fachw3rk/weave/commit/33c83659151f0926cdc02cbeb3aaf90dca819622))
75
- * Fixed context tracking ([cda3a17](https://github.com/fachw3rk/weave/commit/cda3a171029f26fb059cf9eab8fdb95835282750))
76
- * Fixed service reference for error message ([62daab6](https://github.com/fachw3rk/weave/commit/62daab6bcfa9f8bc053aa87a103c9570a9f67742))
77
- * Fixed unit tests (new Jest version) ([6db1d40](https://github.com/fachw3rk/weave/commit/6db1d407dc0b39717d9d6cb884b0d6600144326a))
78
-
79
-
80
- ### Features
81
-
82
- * **logger:** Added destination stream property to options. ([1c7531c](https://github.com/fachw3rk/weave/commit/1c7531c282487a1951b848f04c01495e023bb035))
83
-
84
-
85
-
86
-
87
-
88
- # [0.9.0-beta.12](https://github.com/fachw3rk/weave/compare/@weave-js/core@0.9.0-beta.11...@weave-js/core@0.9.0-beta.12) (2021-06-28)
89
-
90
-
91
- ### Bug Fixes
92
-
93
- * **core:** Fixes streaming unit test ([c39672b](https://github.com/fachw3rk/weave/commit/c39672be24e89d9af4df5c0c0cc59ea6a51fe2e6))
94
-
95
-
96
- ### Features
97
-
98
- * **weave-core:** Added support for validator strict mode. ([8412c07](https://github.com/fachw3rk/weave/commit/8412c07df90014b15663c1effdbdcf2bd1a9fb49))
99
-
100
-
101
-
102
-
103
-
104
- # [0.9.0-beta.11](https://github.com/fachw3rk/weave/compare/@weave-js/core@0.9.0-beta.10...@weave-js/core@0.9.0-beta.11) (2021-05-31)
105
-
106
-
107
- ### Bug Fixes
108
-
109
- * Removed buggy context assignment for lifecycle hooks ([b471408](https://github.com/fachw3rk/weave/commit/b471408c481752b02da26d225119f8e18e89880d))
110
-
111
-
112
-
113
-
114
-
115
- # [0.9.0-beta.10](https://github.com/fachw3rk/weave/compare/@weave-js/core@0.9.0-beta.9...@weave-js/core@0.9.0-beta.10) (2021-05-30)
116
-
117
-
118
- ### Bug Fixes
119
-
120
- * Fixed log action names if the actionName param refers to an endpoint. ([3100b42](https://github.com/fachw3rk/weave/commit/3100b427b126cd826b6f7fd0a25208bc4ceba255))
121
-
122
-
123
-
124
-
125
-
126
- # [0.9.0-beta.9](https://github.com/fachw3rk/weave/compare/@weave-js/core@0.9.0-beta.8...@weave-js/core@0.9.0-beta.9) (2021-05-27)
127
-
128
-
129
- ### Bug Fixes
130
-
131
- * Fixed context tracker ([ab2869e](https://github.com/fachw3rk/weave/commit/ab2869e98f5459256faafa7955e5b817a611639e))
132
- * fixed unrefed timers ([04fe50b](https://github.com/fachw3rk/weave/commit/04fe50b2e88e863f6783b4804ce4cfb74f910e3c))
133
-
134
-
135
- ### Features
136
-
137
- * **metrics:** Added time measurement tool ([245d272](https://github.com/fachw3rk/weave/commit/245d272aa300f926df44088233ea10379008e055))
138
- * Added validator for events ([da5044e](https://github.com/fachw3rk/weave/commit/da5044ef5acbe3bd4a9984e98e0d2caa00cb0f26))
139
- * **core:** Added afterSchemasMerged service lifetime hook ([0f8a19a](https://github.com/fachw3rk/weave/commit/0f8a19ac592786b54621eb52486405efbcb6c126))
140
- * **core:** Added stoping sequence to metric adapters ([cf7b657](https://github.com/fachw3rk/weave/commit/cf7b6573f93c8d3cdaa128fbc3eaf9962d529725))
141
- * **core:** Refactoring metrics ([edf2a62](https://github.com/fachw3rk/weave/commit/edf2a62a46417a3221949519fb46c28b070f327b))
142
- * Refactoring ([b79ca4f](https://github.com/fachw3rk/weave/commit/b79ca4fe4a07bd4c1cdf433f514d89f028fd8d9d))
143
-
144
-
145
-
146
-
147
-
148
- # [0.9.0-beta.8](https://github.com/fachw3rk/weave/compare/@weave-js/core@0.9.0-beta.7...@weave-js/core@0.9.0-beta.8) (2021-04-29)
149
-
150
- **Note:** Version bump only for package @weave-js/core
151
-
152
-
153
-
154
-
155
-
156
- # [0.9.0-beta.7](https://github.com/fachw3rk/weave/compare/@weave-js/core@0.9.0-beta.6...@weave-js/core@0.9.0-beta.7) (2021-04-28)
157
-
158
- **Note:** Version bump only for package @weave-js/core
159
-
160
-
161
-
162
-
163
-
164
- # [0.9.0-beta.6](https://github.com/fachw3rk/weave/compare/@weave-js/core@0.9.0-beta.5...@weave-js/core@0.9.0-beta.6) (2021-04-23)
165
-
166
- **Note:** Version bump only for package @weave-js/core
167
-
168
-
169
-
170
-
171
-
172
- # [0.9.0-beta.5](https://github.com/fachw3rk/weave/compare/@weave-js/core@0.9.0-beta.4...@weave-js/core@0.9.0-beta.5) (2021-04-22)
173
-
174
- **Note:** Version bump only for package @weave-js/core
175
-
176
-
177
-
178
-
179
-
180
- # [0.9.0-beta.4](https://github.com/fachw3rk/weave/compare/@weave-js/core@0.9.0-beta.3...@weave-js/core@0.9.0-beta.4) (2021-04-17)
181
-
182
- **Note:** Version bump only for package @weave-js/core
183
-
184
-
185
-
186
-
187
-
188
- # [0.9.0-beta.3](https://github.com/fachw3rk/weave/compare/@weave-js/core@0.9.0-beta.2...@weave-js/core@0.9.0-beta.3) (2021-04-13)
189
-
190
- **Note:** Version bump only for package @weave-js/core
191
-
192
-
193
-
194
-
195
-
196
- # [0.9.0-beta.2](https://github.com/fachw3rk/weave/compare/@weave-js/core@0.9.0-beta.1...@weave-js/core@0.9.0-beta.2) (2021-04-12)
197
-
198
- **Note:** Version bump only for package @weave-js/core
199
-
200
-
201
-
202
-
203
-
204
- # [0.9.0-beta.1](https://github.com/fachw3rk/weave/compare/@weave-js/core@0.9.0-beta.0...@weave-js/core@0.9.0-beta.1) (2021-04-12)
205
-
206
- **Note:** Version bump only for package @weave-js/core
207
-
208
-
209
-
210
-
211
-
212
- # [0.9.0-beta.0](https://github.com/fachw3rk/weave/compare/@weave-js/core@0.8.1...@weave-js/core@0.9.0-beta.0) (2021-04-12)
213
-
214
- **Note:** Version bump only for package @weave-js/core
215
-
216
-
217
-
218
-
219
-
220
- ## [0.8.1](https://github.com/fachw3rk/weave/compare/@weave-js/core@0.8.0...@weave-js/core@0.8.1) (2021-01-18)
221
-
222
- **Note:** Version bump only for package @weave-js/core
223
-
224
-
225
-
226
-
227
-
228
- # [0.8.0](https://github.com/fachw3rk/weave/compare/@weave-js/core@0.8.0-alpha.7...@weave-js/core@0.8.0) (2021-01-05)
229
-
230
-
231
- ### Features
232
-
233
- * implement a max chung size for stream chunks ([d898184](https://github.com/fachw3rk/weave/commit/d89818415c94b3ee71c37358647bb3a10c65c094))
234
-
235
-
236
-
237
-
238
-
239
- # [0.8.0-alpha.7](https://github.com/fachw3rk/weave/compare/@weave-js/core@0.8.0-alpha.6...@weave-js/core@0.8.0-alpha.7) (2020-11-09)
240
-
241
-
242
- ### Features
243
-
244
- * Added custom UUID generator function in Options ([2aed695](https://github.com/fachw3rk/weave/commit/2aed695a0075d0a445b500393243f1fea9633e0f))
245
-
246
-
247
-
248
-
249
-
250
- # [0.8.0-alpha.6](https://github.com/fachw3rk/weave/compare/@weave-js/core@0.8.0-alpha.5...@weave-js/core@0.8.0-alpha.6) (2020-10-01)
251
-
252
- **Note:** Version bump only for package @weave-js/core
253
-
254
-
255
-
256
-
257
-
258
- # [0.8.0-alpha.5](https://github.com/fachw3rk/weave/compare/@weave-js/core@0.8.0-alpha.4...@weave-js/core@0.8.0-alpha.5) (2020-10-01)
259
-
260
-
261
- ### Bug Fixes
262
-
263
- * fixed unit test ([d58900c](https://github.com/fachw3rk/weave/commit/d58900c7ec74a4c5681d255caa07b02af68d66cb))
264
-
265
-
266
-
267
-
268
-
269
- # [0.8.0-alpha.4](https://github.com/fachw3rk/weave/compare/@weave-js/core@0.8.0-alpha.3...@weave-js/core@0.8.0-alpha.4) (2020-09-07)
270
-
271
- **Note:** Version bump only for package @weave-js/core
272
-
273
-
274
-
275
-
276
-
277
- # [0.8.0-alpha.3](https://github.com/fachw3rk/weave/compare/@weave-js/core@0.8.0-alpha.2...@weave-js/core@0.8.0-alpha.3) (2020-09-02)
278
-
279
- **Note:** Version bump only for package @weave-js/core
280
-
281
-
282
-
283
-
284
-
285
- # [0.8.0-alpha.2](https://github.com/fachw3rk/weave/compare/@weave-js/core@0.8.0-alpha.1...@weave-js/core@0.8.0-alpha.2) (2020-09-02)
286
-
287
- **Note:** Version bump only for package @weave-js/core
288
-
289
-
290
-
291
-
292
-
293
- # [0.8.0-alpha.1](https://github.com/fachw3rk/weave/compare/@weave-js/core@0.7.0-rc.25...@weave-js/core@0.8.0-alpha.1) (2020-09-02)
294
-
295
- **Note:** Version bump only for package @weave-js/core
296
-
297
-
298
-
299
-
300
-
301
- # [0.7.0-rc.25](https://github.com/fachw3rk/weave/compare/@weave-js/core@0.7.0-rc.24...@weave-js/core@0.7.0-rc.25) (2020-07-27)
302
-
303
-
304
- ### Bug Fixes
305
-
306
- * Option merging for mixins ([c76996f](https://github.com/fachw3rk/weave/commit/c76996f4cced0fb27e8aaa29d5bedbb569ce90e5))
307
-
308
-
309
-
310
-
311
-
312
- # [0.7.0-rc.24](https://github.com/fachw3rk/weave/compare/@weave-js/core@0.7.0-rc.23...@weave-js/core@0.7.0-rc.24) (2020-07-27)
313
-
314
-
315
- ### Bug Fixes
316
-
317
- * Fixed merging of action hooks if the target does not exist. ([9be8f28](https://github.com/fachw3rk/weave/commit/9be8f289be3ab3e93afb0bac5cc2ec317fa1d80e))
318
-
319
-
320
-
321
-
322
-
323
- # [0.7.0-rc.23](https://github.com/fachw3rk/weave/compare/@weave-js/core@0.7.0-rc.22...@weave-js/core@0.7.0-rc.23) (2020-06-13)
324
-
325
-
326
- ### Bug Fixes
327
-
328
- * Added missing mixin schema merge ([6b16470](https://github.com/fachw3rk/weave/commit/6b1647038bdc0094ae995c0aea70468b075b80db))
329
-
330
-
331
- ### Features
332
-
333
- * Added support for object streams ([6b174dd](https://github.com/fachw3rk/weave/commit/6b174ddd6dd66969c79f8ce9d2fa09f9fdfd55d1))
334
-
335
-
336
-
337
-
338
-
339
- # [0.7.0-rc.22](https://github.com/fachw3rk/weave/compare/@weave-js/core@0.7.0-rc.21...@weave-js/core@0.7.0-rc.22) (2020-06-11)
340
-
341
-
342
- ### Bug Fixes
343
-
344
- * Config merge from file ([edfdc86](https://github.com/fachw3rk/weave/commit/edfdc86a86dc96582622d15a3c914c7f2c266e41))
345
-
346
-
347
-
348
-
349
-
350
- # [0.7.0-rc.21](https://github.com/fachw3rk/weave/compare/@weave-js/core@0.7.0-rc.20...@weave-js/core@0.7.0-rc.21) (2020-06-09)
351
-
352
- **Note:** Version bump only for package @weave-js/core
353
-
354
-
355
-
356
-
357
-
358
- # [0.7.0-rc.20](https://github.com/fachw3rk/weave/compare/@weave-js/core@0.7.0-rc.19...@weave-js/core@0.7.0-rc.20) (2020-06-09)
359
-
360
- **Note:** Version bump only for package @weave-js/core
361
-
362
-
363
-
364
-
365
-
366
- # [0.7.0-rc.19](https://github.com/fachw3rk/weave/compare/@weave-js/core@0.7.0-rc.18...@weave-js/core@0.7.0-rc.19) (2020-04-28)
367
-
368
- **Note:** Version bump only for package @weave-js/core
369
-
370
-
371
-
372
-
373
-
374
- # [0.7.0-rc.18](https://github.com/fachw3rk/weave/compare/@weave-js/core@0.7.0-rc.17...@weave-js/core@0.7.0-rc.18) (2020-04-28)
375
-
376
- **Note:** Version bump only for package @weave-js/core
377
-
378
-
379
-
380
-
381
-
382
- # [0.7.0-rc.17](https://github.com/fachw3rk/weave/compare/@weave-js/core@0.7.0-rc.16...@weave-js/core@0.7.0-rc.17) (2020-04-28)
383
-
384
-
385
- ### Bug Fixes
386
-
387
- * linting ([a592f35](https://github.com/fachw3rk/weave/commit/a592f35524d934b61841655bb0fc794b3bf46b99))
388
-
389
-
390
-
391
-
392
-
393
- # [0.7.0-rc.16](https://github.com/fachw3rk/weave/compare/@weave-js/core@0.7.0-rc.15...@weave-js/core@0.7.0-rc.16) (2020-02-25)
394
-
395
- **Note:** Version bump only for package @weave-js/core
396
-
397
-
398
-
399
-
400
-
401
- # [0.7.0-rc.15](https://github.com/fachw3rk/weave/compare/@weave-js/core@0.7.0-rc.14...@weave-js/core@0.7.0-rc.15) (2020-02-25)
402
-
403
-
404
- ### Features
405
-
406
- * Added sequence number to streams for upcoming changes ([4252a94](https://github.com/fachw3rk/weave/commit/4252a9437173b5f002682c6e8de640d49442f0ea))
407
-
408
-
409
-
410
-
411
-
412
- # [0.7.0-rc.14](https://github.com/fachw3rk/weave/compare/@weave-js/core@0.7.0-rc.13...@weave-js/core@0.7.0-rc.14) (2020-01-22)
413
-
414
-
415
- ### Bug Fixes
416
-
417
- * Another fix for meta data ([243c716](https://github.com/fachw3rk/weave/commit/243c7169b7c0d54eaffa4715a5784ebabf175cfc))
418
-
419
-
420
-
421
-
422
-
423
- # [0.7.0-rc.13](https://github.com/fachw3rk/weave/compare/@weave-js/core@0.7.0-rc.12...@weave-js/core@0.7.0-rc.13) (2020-01-22)
424
-
425
-
426
- ### Bug Fixes
427
-
428
- * Pass meta data through response ([558752a](https://github.com/fachw3rk/weave/commit/558752ad547285bcc31c8a0256d9a9dc4bc6d413))
429
-
430
-
431
-
432
-
433
-
434
- # [0.7.0-rc.12](https://github.com/fachw3rk/weave/compare/@weave-js/core@0.7.0-rc.11...@weave-js/core@0.7.0-rc.12) (2020-01-22)
435
-
436
-
437
- ### Bug Fixes
438
-
439
- * Pass meta data through response ([80fb3d7](https://github.com/fachw3rk/weave/commit/80fb3d729342dfabe60ae23ec856cbd9c959b985))
440
-
441
-
442
-
443
-
444
-
445
- # [0.7.0-rc.11](https://github.com/fachw3rk/weave/compare/@weave-js/core@0.7.0-rc.10...@weave-js/core@0.7.0-rc.11) (2020-01-22)
446
-
447
-
448
- ### Bug Fixes
449
-
450
- * Fatal error if a stream throws an error. ([7c6c847](https://github.com/fachw3rk/weave/commit/7c6c8470f01765c27f8fce46271df5b3e71a6c7f))
451
-
452
-
453
-
454
-
455
-
456
- # [0.7.0-rc.10](https://github.com/fachw3rk/weave/compare/@weave-js/core@0.7.0-rc.9...@weave-js/core@0.7.0-rc.10) (2020-01-12)
457
-
458
-
459
- ### Bug Fixes
460
-
461
- * Changed service init order. ([7b09831](https://github.com/fachw3rk/weave/commit/7b09831c8ef610351ece339dbb327a0a8b211713))
462
-
463
-
464
-
465
-
466
-
467
- # [0.7.0-rc.9](https://github.com/fachw3rk/weave/compare/@weave-js/core@0.7.0-rc.8...@weave-js/core@0.7.0-rc.9) (2019-12-21)
468
-
469
-
470
- ### Bug Fixes
471
-
472
- * Node list ([7169b20](https://github.com/fachw3rk/weave/commit/7169b202ae502ea0de8037ae16ffdceca02896ce))
473
- * Removed raw information from node list ([fd9bad1](https://github.com/fachw3rk/weave/commit/fd9bad1a6758560d13ac2053fcc832424737eaa2))
474
-
475
-
476
- ### Features
477
-
478
- * Added support for transport connection strings. ([c3473ba](https://github.com/fachw3rk/weave/commit/c3473baa4f40f72f6e196e6615f09a9971fc4cf5))
479
- * Connection string support added. ([fbd2654](https://github.com/fachw3rk/weave/commit/fbd26546cc333510594b29ec13547e519a968c7c))
480
- * getServiceList short hand method ([cb59016](https://github.com/fachw3rk/weave/commit/cb59016ae9e7040b5c6e077fac019a8e915958da))
481
-
482
-
483
-
484
-
485
-
486
- # [0.7.0-rc.8](https://github.com/fachw3rk/weave/compare/@weave-js/core@0.7.0-rc.7...@weave-js/core@0.7.0-rc.8) (2019-11-27)
487
-
488
-
489
- ### Bug Fixes
490
-
491
- * Fixed blocking waitForService method on broker stop ([1c5178e](https://github.com/fachw3rk/weave/commit/1c5178eb70fb8a86c1f8715fb06add2148defb06))
492
- * Fixed object logs ([0f05dbe](https://github.com/fachw3rk/weave/commit/0f05dbe3b19c2c6ce4223b695f3c139aece75c25))
493
- * Remove circular references from remote nodes ([14ae7a8](https://github.com/fachw3rk/weave/commit/14ae7a8499d175a2221854ffd9f47124158fb157))
494
-
495
-
496
-
497
-
498
-
499
- # [0.7.0-rc.7](https://github.com/fachw3rk/weave/compare/@weave-js/core@0.7.0-rc.1...@weave-js/core@0.7.0-rc.7) (2019-11-06)
500
-
501
-
502
- ### Bug Fixes
503
-
504
- * Added missing dependency ([602aafb](https://github.com/fachw3rk/weave/commit/602aafb1dcbaf55dc37d5a49e7b56edcbe20aaee))
505
-
506
-
507
-
508
-
509
-
510
- # [0.7.0-rc.2](https://github.com/fachw3rk/weave/compare/@weave-js/core@0.7.0-rc.1...@weave-js/core@0.7.0-rc.2) (2019-11-06)
511
-
512
-
513
- ### Bug Fixes
514
-
515
- * Added missing dependency ([602aafb](https://github.com/fachw3rk/weave/commit/602aafb1dcbaf55dc37d5a49e7b56edcbe20aaee))
516
-
517
-
518
-
519
-
520
-
521
- # [0.7.0-rc.3](https://github.com/fachw3rk/weave/compare/@weave-js/core@0.7.0-rc.1...@weave-js/core@0.7.0-rc.3) (2019-11-06)
522
-
523
-
524
- ### Bug Fixes
525
-
526
- * Added missing dependency ([602aafb](https://github.com/fachw3rk/weave/commit/602aafb1dcbaf55dc37d5a49e7b56edcbe20aaee))
527
-
528
-
529
-
530
-
531
-
532
- # [0.7.0-rc.2](https://github.com/fachw3rk/weave/compare/@weave-js/core@0.7.0-rc.1...@weave-js/core@0.7.0-rc.2) (2019-11-06)
533
-
534
-
535
- ### Bug Fixes
536
-
537
- * Added missing dependency ([602aafb](https://github.com/fachw3rk/weave/commit/602aafb1dcbaf55dc37d5a49e7b56edcbe20aaee))
538
-
539
-
540
-
541
-
542
-
543
- # [0.7.0-rc.1](https://github.com/fachw3rk/weave/compare/@weave-js/core@0.7.0-rc.0...@weave-js/core@0.7.0-rc.1) (2019-11-06)
544
-
545
- **Note:** Version bump only for package @weave-js/core
546
-
547
-
548
-
549
-
550
-
551
- # [0.7.0-rc.0](https://github.com/fachw3rk/weave/compare/@weave-js/core@0.7.0-alpha.20...@weave-js/core@0.7.0-rc.0) (2019-11-06)
552
-
553
-
554
- ### Bug Fixes
555
-
556
- * Fixed direct call with node ID ([8cfc1cb](https://github.com/fachw3rk/weave/commit/8cfc1cb2ff1d16367d93c292fcd43688368f5867))
557
- * Fixed silent argument fpr weave runner ([1173e9e](https://github.com/fachw3rk/weave/commit/1173e9e55aa24a679dc552eac69d0fdbda1beb9c))
558
- * Memory leak ([c255ab2](https://github.com/fachw3rk/weave/commit/c255ab2322197b6c84009e73a5d5dbe6de7463bb))
559
- * Throw an error if service creation fails ([b9f01f0](https://github.com/fachw3rk/weave/commit/b9f01f03bddab1c2ba83154a5866f4e0096774fd))
560
-
561
-
562
-
563
-
564
-
565
- # [0.7.0-alpha.20](https://github.com/fachw3rk/weave/compare/@weave-js/core@0.7.0-alpha.19...@weave-js/core@0.7.0-alpha.20) (2019-10-03)
566
-
567
-
568
- ### Bug Fixes
569
-
570
- * made ioredis package optional for redis cache ([004c02f](https://github.com/fachw3rk/weave/commit/004c02f))
571
-
572
-
573
-
574
-
575
-
576
- # [0.7.0-alpha.19](https://github.com/fachw3rk/weave/compare/@weave-js/core@0.7.0-rc.6...@weave-js/core@0.7.0-alpha.19) (2019-10-02)
577
-
578
-
579
- ### Bug Fixes
580
-
581
- * Changed order of mixin merge ([40ac322](https://github.com/fachw3rk/weave/commit/40ac322))
582
- * Improved logger performance. ([0be7543](https://github.com/fachw3rk/weave/commit/0be7543))
583
- * level of trace ([84713da](https://github.com/fachw3rk/weave/commit/84713da))
584
- * Service settings for remote services are now stored correctly ([c230f03](https://github.com/fachw3rk/weave/commit/c230f03))
585
-
586
-
587
- ### Features
588
-
589
- * Added "ping" function to broker ([e43ffed](https://github.com/fachw3rk/weave/commit/e43ffed))
590
- * Added raw messages to done hook ([ad94e2f](https://github.com/fachw3rk/weave/commit/ad94e2f))
591
-
592
-
593
-
594
-
595
-
596
- # [0.7.0-rc.6](https://github.com/fachw3rk/weave/compare/@weave-js/core@0.7.0-rc.5...@weave-js/core@0.7.0-rc.6) (2019-03-28)
597
-
598
-
599
- ### Bug Fixes
600
-
601
- * Method "getNextActionEndpoint" now returns an error if no service is available ([63771b8](https://github.com/fachw3rk/weave/commit/63771b8))
602
-
603
-
604
-
605
-
606
-
607
- # [0.7.0-rc.5](https://github.com/fachw3rk/weave/compare/@weave-js/core@0.7.0-rc.4...@weave-js/core@0.7.0-rc.5) (2019-03-22)
608
-
609
-
610
- ### Bug Fixes
611
-
612
- * Added missing jsdoc schema for weave options ([78d590f](https://github.com/fachw3rk/weave/commit/78d590f))
613
-
614
-
615
- ### Features
616
-
617
- * Maximum offline time editable ([9528c17](https://github.com/fachw3rk/weave/commit/9528c17))
618
-
619
-
620
-
621
-
622
-
623
- # [0.7.0-rc.4](https://github.com/fachw3rk/weave/compare/@weave-js/core@0.7.0-rc.3...@weave-js/core@0.7.0-rc.4) (2019-03-11)
624
-
625
- **Note:** Version bump only for package @weave-js/core
626
-
627
-
628
-
629
-
630
-
631
- # [0.7.0-rc.3](https://github.com/fachw3rk/weave/compare/@weave-js/core@0.7.0-rc.2...@weave-js/core@0.7.0-rc.3) (2019-03-11)
632
-
633
- **Note:** Version bump only for package @weave-js/core
634
-
635
-
636
-
637
-
638
-
639
- # [0.7.0-rc.2](https://github.com/fachw3rk/weave/compare/@weave-js/core@0.6.2...@weave-js/core@0.7.0-rc.2) (2019-03-11)
640
-
641
-
642
- ### Features
643
-
644
- * Added the new method "multiCall" to call multiple service actions at once ([d28b969](https://github.com/fachw3rk/weave/commit/d28b969))
645
-
646
-
647
-
648
-
649
-
650
- ## [0.6.2](https://github.com/fachw3rk/weave/compare/@weave-js/core@0.6.1...@weave-js/core@0.6.2) (2019-03-07)
651
-
652
- **Note:** Version bump only for package @weave-js/core
653
-
654
-
655
-
656
-
657
-
658
- ## [0.6.1](https://github.com/fachw3rk/weave/compare/@weave-js/core@0.6.0...@weave-js/core@0.6.1) (2019-02-09)
659
-
660
-
661
- ### Bug Fixes
662
-
663
- * Service loader ([8669596](https://github.com/fachw3rk/weave/commit/8669596))
664
-
665
-
666
-
667
-
668
-
669
- # [0.6.0](https://github.com/fachw3rk/weave/compare/@weave-js/core@0.5.33...@weave-js/core@0.6.0) (2019-02-08)
670
-
671
-
672
- ### Features
673
-
674
- * Implemented hooks by method name ([bf56291](https://github.com/fachw3rk/weave/commit/bf56291))
675
-
676
-
677
-
678
-
679
-
680
- ## [0.5.33](https://github.com/fachw3rk/weave/compare/@weave-js/core@0.5.32...@weave-js/core@0.5.33) (2019-01-15)
681
-
682
- **Note:** Version bump only for package @weave-js/core
683
-
684
-
685
-
686
-
687
-
688
- ## [0.5.32](https://github.com/fachw3rk/weave/compare/@weave-js/core@0.5.31...@weave-js/core@0.5.32) (2018-12-19)
689
-
690
- **Note:** Version bump only for package @weave-js/core
691
-
692
-
693
-
694
-
695
-
696
- ## [0.5.31](https://github.com/fachw3rk/weave/compare/@weave-js/core@0.5.30...@weave-js/core@0.5.31) (2018-12-18)
697
-
698
- **Note:** Version bump only for package @weave-js/core
699
-
700
-
701
-
702
-
703
-
704
- ## [0.5.30](https://github.com/fachw3rk/weave/compare/@weave-js/core@0.5.29...@weave-js/core@0.5.30) (2018-12-15)
705
-
706
- **Note:** Version bump only for package @weave-js/core
707
-
708
-
709
-
710
-
711
-
712
- ## [0.5.29](https://github.com/fachw3rk/weave/compare/@weave-js/core@0.5.28...@weave-js/core@0.5.29) (2018-12-15)
713
-
714
- **Note:** Version bump only for package @weave-js/core
715
-
716
-
717
-
718
-
719
-
720
- ## [0.5.28](https://github.com/fachw3rk/weave/compare/@weave-js/core@0.5.27...@weave-js/core@0.5.28) (2018-12-15)
721
-
722
- **Note:** Version bump only for package @weave-js/core
723
-
724
-
725
-
726
-
727
-
728
- ## [0.5.27](https://github.com/fachw3rk/weave/compare/@weave-js/core@0.5.26...@weave-js/core@0.5.27) (2018-12-13)
729
-
730
- **Note:** Version bump only for package @weave-js/core
731
-
732
-
733
-
734
-
735
-
736
- ## [0.5.26](https://github.com/fachw3rk/weave/compare/@weave-js/core@0.5.25...@weave-js/core@0.5.26) (2018-12-11)
737
-
738
- **Note:** Version bump only for package @weave-js/core
739
-
740
-
741
-
742
-
743
-
744
- ## [0.5.25](https://github.com/fachw3rk/weave/compare/@weave-js/core@0.5.24...@weave-js/core@0.5.25) (2018-12-11)
745
-
746
- **Note:** Version bump only for package @weave-js/core
747
-
748
-
749
-
750
-
751
-
752
- ## [0.5.24](https://github.com/fachw3rk/weave/compare/@weave-js/core@0.5.23...@weave-js/core@0.5.24) (2018-12-10)
753
-
754
- **Note:** Version bump only for package @weave-js/core
755
-
756
-
757
-
758
-
759
-
760
- ## [0.5.23](https://github.com/fachw3rk/weave/compare/@weave-js/core@0.5.22...@weave-js/core@0.5.23) (2018-12-08)
761
-
762
- **Note:** Version bump only for package @weave-js/core
763
-
764
-
765
-
766
-
767
-
768
- ## [0.5.22](https://github.com/fachw3rk/weave/compare/@weave-js/core@0.5.21...@weave-js/core@0.5.22) (2018-11-30)
769
-
770
- **Note:** Version bump only for package @weave-js/core
771
-
772
-
773
-
774
-
775
-
776
- ## [0.5.21](https://github.com/fachw3rk/weave/compare/@weave-js/core@0.5.20...@weave-js/core@0.5.21) (2018-11-28)
777
-
778
- **Note:** Version bump only for package @weave-js/core
779
-
780
-
781
-
782
-
783
-
784
- ## [0.5.20](https://github.com/fachw3rk/weave/compare/@weave-js/core@0.5.19...@weave-js/core@0.5.20) (2018-11-28)
785
-
786
- **Note:** Version bump only for package @weave-js/core
787
-
788
-
789
-
790
-
791
-
792
- ## [0.5.19](https://github.com/fachw3rk/weave/compare/@weave-js/core@0.5.18...@weave-js/core@0.5.19) (2018-11-26)
793
-
794
- **Note:** Version bump only for package @weave-js/core
795
-
796
-
797
-
798
-
799
-
800
- ## [0.5.18](https://github.com/fachw3rk/weave/compare/@weave-js/core@0.5.17...@weave-js/core@0.5.18) (2018-11-01)
801
-
802
- **Note:** Version bump only for package @weave-js/core
803
-
804
-
805
-
806
-
807
-
808
- ## [0.5.17](https://github.com/fachw3rk/weave/compare/@weave-js/core@0.5.16...@weave-js/core@0.5.17) (2018-10-29)
809
-
810
- **Note:** Version bump only for package @weave-js/core
811
-
812
-
813
-
814
-
815
-
816
- ## [0.5.16](https://github.com/fachw3rk/weave/compare/@weave-js/core@0.5.15...@weave-js/core@0.5.16) (2018-10-28)
817
-
818
- **Note:** Version bump only for package @weave-js/core
819
-
820
-
821
-
822
-
823
-
824
- ## [0.5.15](https://github.com/fachw3rk/weave/compare/@weave-js/core@0.5.14...@weave-js/core@0.5.15) (2018-10-28)
825
-
826
- **Note:** Version bump only for package @weave-js/core
827
-
828
-
829
-
830
-
831
-
832
- ## [0.5.14](https://github.com/fachw3rk/weave/compare/@weave-js/core@0.5.13...@weave-js/core@0.5.14) (2018-10-23)
833
-
834
- **Note:** Version bump only for package @weave-js/core
835
-
836
-
837
-
838
-
839
-
840
- ## [0.5.13](https://github.com/fachw3rk/weave/compare/@weave-js/core@0.5.12...@weave-js/core@0.5.13) (2018-10-23)
841
-
842
- **Note:** Version bump only for package @weave-js/core
843
-
844
-
845
-
846
-
847
-
848
- ## [0.5.12](https://github.com/fachw3rk/weave/compare/@weave-js/core@0.5.11...@weave-js/core@0.5.12) (2018-10-23)
849
-
850
- **Note:** Version bump only for package @weave-js/core
851
-
852
-
853
-
854
-
855
-
856
- ## [0.5.11](https://github.com/fachw3rk/weave/compare/@weave-js/core@0.5.10...@weave-js/core@0.5.11) (2018-10-21)
857
-
858
- **Note:** Version bump only for package @weave-js/core
859
-
860
-
861
-
862
-
863
-
864
- ## [0.5.10](https://github.com/fachw3rk/weave/compare/@weave-js/core@0.5.9...@weave-js/core@0.5.10) (2018-10-21)
865
-
866
- **Note:** Version bump only for package @weave-js/core
867
-
868
-
869
-
870
-
871
-
872
- <a name="0.5.9"></a>
873
- ## [0.5.9](https://github.com/fachw3rk/weave/compare/@weave-js/core@0.5.8...@weave-js/core@0.5.9) (2018-10-21)
874
-
875
- **Note:** Version bump only for package @weave-js/core
876
-
877
-
878
-
879
-
880
-
881
- <a name="0.5.7"></a>
882
- ## [0.5.7](https://github.com/fachw3rk/weave/compare/@weave-js/core@0.5.6...@weave-js/core@0.5.7) (2018-10-02)
883
-
884
- **Note:** Version bump only for package @weave-js/core
885
-
886
-
887
-
888
-
889
-
890
- <a name="0.5.6"></a>
891
- ## [0.5.6](https://github.com/fachw3rk/weave/compare/@weave-js/core@0.5.5...@weave-js/core@0.5.6) (2018-09-18)
892
-
893
- **Note:** Version bump only for package @weave-js/core
894
-
895
-
896
-
897
-
898
-
899
- <a name="0.5.5"></a>
900
- ## 0.5.5 (2018-09-18)
901
-
902
- **Note:** Version bump only for package @weave-js/core
903
-
904
-
905
-
906
-
907
-
908
- <a name="0.5.4"></a>
909
- ## 0.5.4 (2018-09-18)
910
-
911
- **Note:** Version bump only for package @weave-js/core
912
-
913
-
914
-
915
-
916
-
917
- <a name="0.5.3"></a>
918
- ## 0.5.3 (2018-09-18)
919
-
920
- **Note:** Version bump only for package @weave-js/core
921
-
922
-
923
-
924
-
925
-
926
- <a name="0.5.2"></a>
927
- ## 0.5.2 (2018-09-18)
928
-
929
- **Note:** Version bump only for package @weave-js/core
930
-
931
-
932
-
933
-
934
-
935
- <a name="0.5.1"></a>
936
- ## 0.5.1 (2018-09-18)
937
-
938
- **Note:** Version bump only for package @weave-js/core
939
-
940
-
941
-
942
-
943
-
944
- <a name="0.5.0"></a>
945
- # 0.5.0 (2018-09-18)
946
-
947
- **Note:** Version bump only for package @weave-js/core
948
-
949
-
950
-
951
-
952
-
953
- <a name="0.5.0"></a>
954
- # 0.5.0 (2018-09-17)
955
-
956
- **Note:** Version bump only for package @weave/@weave-js/core
957
-
958
-
959
-
960
-
961
-
962
- <a name="0.5.0"></a>
963
- # [0.5.0]() (2018-09-05)
964
-
965
- # Breaking Changes
966
-
967
- Changed the interface of the module. The weave factory method is now provided as a property of the module.
968
-
969
- ```js
970
- const { Weave, Errors, TransportAdapters, Constants } = require('@weave-js/core')
971
-
972
- const broker = Weave({
973
- nodeId: 'node-1',
974
- transport: TransportAdapters.Fake()
975
- })
976
- ```
977
-
978
- # New
979
-
980
-
981
- ## Service watcher
982
-
983
- Weave now supports hot reload of services. When weave detects a change in a service file, it stops the service, removes it from internal and external registries and restarts the service with the changes without stopping the node.
984
-
985
- ```js
986
- const broker = Weave({
987
- nodeId: 'node-1',
988
- watchServices: true
989
- })
990
- ```
991
-
992
- ### weave runner example
993
-
994
- ```bash
995
- weave-runner services -W
996
- ```
997
-
998
- ## Support for streams
999
-
1000
- Streaming support has been implemented. Node.js streams can be transferred as params or as response. You can use it to transfer uploaded file from a gateway or encode/decode or compress/decompress streams.
1001
-
1002
- ### Send file example
1003
-
1004
- ```js
1005
- const fileStream = fs.createReadStream(fileName)
1006
-
1007
- broker.call('storage.save', stream, { meta: { filename }})
1008
- ```
1009
-
1010
- ### Receive file example
1011
-
1012
- ```js
1013
- const fileStream = fs.createWriteStream(fileName);
1014
-
1015
- broker.createService({
1016
- name: 'storage',
1017
- actions: {
1018
- save (context) {
1019
- const fileStream = fs.createWriteStream(`/temp/${context.meta.filename}`)
1020
- context.data.pipe(fileStream)
1021
- }
1022
- }
1023
- })
1024
- ```
1025
-
1026
- ### Recturn stream example
1027
-
1028
- ```js
1029
- const fileStream = fs.createWriteStream(fileName);
1030
-
1031
- broker.createService({
1032
- name: 'storage',
1033
- params: {
1034
- filename: { type: 'string' }
1035
- }
1036
- actions: {
1037
- save (context) {
1038
- return fs.createReadStream(context.data.filename)
1039
- }
1040
- }
1041
- })
1042
- ```
1043
-
1044
- ## New beforeCreate hook for services
1045
-
1046
- Added a new hook to intercept before service is created.
1047
-
1048
- ```js
1049
- module.exports = {
1050
- name: 'math',
1051
- actions: {
1052
- ...
1053
- },
1054
- beforeCreate () {
1055
- this.actions.newAction = {
1056
- params: {...},
1057
- handler (context) {...}
1058
- }
1059
- }
1060
- }
1061
- ```
1062
- # Changes
1063
- ## Changed Log level for heartbeat
1064
-
1065
- The broker heartbeat is now only displayed at log level "trace".
1066
-
1067
-
1068
- <a name="0.4.0"></a>
1069
- # [0.4.0]() (2018-07-27)
1070
-
1071
- # New
1072
- ## Enhanced Middlewares
1073
-
1074
- Middlewares are now on state of the art. You cann use a more detailed hook system to add features to your middlewares.
1075
-
1076
- ## New beforeCreate hook for services
1077
-
1078
- Added a new hook to intercept before service is created.
1079
-
1080
- ```js
1081
- module.exports = {
1082
- name: 'math',
1083
- actions: {
1084
- ...
1085
- },
1086
- beforeCreate () {
1087
- this.actions.newAction = {
1088
- params: {...},
1089
- handler (context) {...}
1090
- }
1091
- }
1092
- }
1093
- ```
1094
-
1095
- <a name="0.3.0"></a>
1096
- # [0.3.0]() (2018-05-11)
1097
-
1098
- # New
1099
- ## NATS transporter
1100
-
1101
- New Transporter for NATS.
1102
-
1103
- ## New beforeCreate hook for services
1104
-
1105
- Added a new hook to intercept before service is created.
1106
-
1107
- ```js
1108
- module.exports = {
1109
- name: 'math',
1110
- actions: {
1111
- ...
1112
- },
1113
- beforeCreate () {
1114
- this.actions.newAction = {
1115
- params: {...},
1116
- handler (context) {...}
1117
- }
1118
- }
1119
- }
1120
- ```
1121
-
1122
-
1123
- ## Reconnect lost nodes
1124
- If a node1 get heartbeats from a actually disconnected node2. Node1 will send a discovery request to get the current infos from node2 and reconnect it.
1125
-
1126
- # Fixed
1127
-
1128
- ## Cleanup for TCP Transporter
1129
-
1130
- Old TCP-Mesh module removed.
1131
-
1132
- --------------------------------------------------
1133
- <a name="0.2.19"></a>
1134
- # [0.2.19]() (2018-02-05)
1135
-
1136
- # New
1137
-
1138
- ## Reconnect lost nodes
1139
- If a node1 get heartbeats from a actually disconnected node2. Node1 will send a discovery request to get the current infos from node2 and reconnect it.
1140
-
1141
- # Fixed
1142
-
1143
- ## Cleanup for TCP Transporter
1144
-
1145
- Old TCP-Mesh module removed.
1146
-
1147
- --------------------------------------------------
1148
- <a name="0.2.18"></a>
1149
- # [0.2.19]() (2018-02-05)
1150
-
1151
- # New
1152
-
1153
- # Fixed
1154
-
1155
- Fixed metrics finish method.
1156
-
1157
- --------------------------------------------------
1158
-
1159
- <a name="0.2.18"></a>
1160
- # [0.2.18]() (2018-02-05)
1161
-
1162
- # New
1163
-
1164
- # Fixed
1165
-
1166
- Fixed metrics for action calls.
1167
-
1168
- --------------------------------------------------
1169
- <a name="0.2.17"></a>
1170
- # [0.2.17]() (2018-01-28)
1171
-
1172
- # New
1173
-
1174
- ## Add new service setting for private services.
1175
-
1176
- If you set the property $private to true, the service is only reachable from the local node.
1177
-
1178
- ```js
1179
- module.exports = {
1180
- name: 'math',
1181
- mixins: [TestMixin],
1182
- settings: {
1183
- $private: true
1184
- },
1185
- actions: {
1186
- add: {
1187
- params: {
1188
- a: { type: 'number' },
1189
- b: { type: 'number' }
1190
- },
1191
- handler({ params }) {
1192
- return params.a + params.b;
1193
- }
1194
- }
1195
- }
1196
- }
1197
- ```
1198
-
1199
- ## Add new internal action $node.list
1200
-
1201
- List all connected nodes.
1202
-
1203
- ```js
1204
- [Node {
1205
- id: 'testnode',
1206
- local: true,
1207
- client: {
1208
- type: 'nodejs',
1209
- version: '0.2.17',
1210
- langVersion: 'v8.7.0'
1211
- },
1212
- cpu: null,
1213
- lastHeartbeatTime: 1517162496548,
1214
- isAvailable: true,
1215
- services: null,
1216
- events: null,
1217
- IPList: ['192.168.178.21', '192.168.99.1']
1218
- } ]
1219
- ```
1220
-
1221
- ## Add new internal action $node.actions
1222
-
1223
- List all actions.
1224
-
1225
- ```js
1226
- [{
1227
- name: '$node.services',
1228
- hasAvailable: true,
1229
- hasLocal: true,
1230
- count: 1,
1231
- action: {
1232
- name: '$node.services',
1233
- version: undefined
1234
- }
1235
- },
1236
- {
1237
- name: '$node.actions',
1238
- hasAvailable: true,
1239
- hasLocal: true,
1240
- count: 1,
1241
- action: {
1242
- name: '$node.actions',
1243
- version: undefined
1244
- }
1245
- }]
1246
- ```
1247
-
1248
- # Fixed
1249
-
1250
- Internal registry errors.
1251
-
1252
- --------------------------------------------------
1253
- <a name="0.2.16"></a>
1254
- # [0.2.16]() (2018-01-22)
1255
-
1256
- # New
1257
-
1258
- ## Add new cache features
1259
- In action cache, you now have the possibility to override the TTL.
1260
-
1261
- ```js
1262
- module.exports = {
1263
- name: 'example',
1264
- actions: {
1265
- show: {
1266
- cache: {
1267
- keys: ['name', 'site'],
1268
- ttl: 5 // Set ttl to 5ms.
1269
- }
1270
- }
1271
- }
1272
- }
1273
- ```
1274
-
1275
- --------------------------------------------------
1276
-
1277
- <a name="0.2.15"></a>
1278
- # [0.2.15]() (2018-01-21)
1279
-
1280
- # New
1281
-
1282
- ## Project runner script
1283
- There is a new weave project runner script in the bin folder. You can use it if you want to create small repositories for services. In this case you needn't to create a weave instance with options. Just create a weave.config.js or weave.config.json file in the root of repository, fill it with your options and call the weave-runner within the NPM scripts. As an other solution you can put it to the environment variables instead of putting options to file.
1284
-
1285
-
1286
- Example to start all services from the `services` folder.
1287
-
1288
- ```bash
1289
- $ weave-runner services
1290
- ```
1291
-
1292
-
1293
- Example weave.config.js file with a REDIS transport, placed in the root of your project.
1294
-
1295
- ```js
1296
- const Weave = require('@weave-js/core')
1297
-
1298
- module.exports = {
1299
- level: 'debug',
1300
- cacher: true,
1301
- metrics: false,
1302
- requestTimeout: 2000,
1303
- transport: Weave.transports.Redis({
1304
- host: process.env['REDIS_HOST']
1305
- })
1306
- }
1307
-
1308
- ```
1309
-
1310
- --------------------------------------------------
1311
-
1312
- <a name="0.2.14"></a>
1313
- # [0.2.14]() (2018-01-20)
1314
-
1315
- # New
1316
-
1317
- ## Add Changelog to project