UNPKG

10.2 kBMarkdownView Raw
1# bedrock ChangeLog
2
3## 1.13.0 - 2018-09-20
4
5## Added
6- Add `bedrock-cli.parsed` event.
7
8### Changed
9- Update copyright notices.
10- Style fixes.
11
12## 1.12.1 - 2018-05-10
13
14### Changed
15- Update async-node-events to 1.0.0.
16
17## 1.12.0 - 2018-05-08
18
19### Added
20- Return Promse from `events.emit` and `events.emitLater` that
21 resolves to `undefined` once the event has been emitted to all
22 listeners or to `false` if it was canceled.
23
24## 1.11.0 - 2018-05-08
25
26### Added
27- Add `util.callbackify` helper to produce functions that can be
28 called with a callback function or that will return a Promise
29 if the callback function is omitted. This utility function
30 is used in bedrock modules that are written using Promises
31 internally and that expose Promise-based public APIs that
32 also support legacy callback patterns.
33
34## 1.10.0 - 2018-04-06
35
36### Added
37- `--log-exclude` option to eliminate logging from certain modules.
38
39## 1.9.2 - 2018-03-28
40
41### Changed
42- Update to newer worker API.
43- Improve errors in runOnce calls.
44- Use logger to handle uncaught error formatting.
45
46## 1.9.1 - 2018-03-07
47
48### Changed
49- Update from istanbul to nyc for coverage.
50
51## 1.9.0 - 2018-03-01
52
53### Changed
54- Update jsonld to 1.0.0.
55
56## 1.8.0 - 2018-02-13
57
58### Changed
59- Update jsonld to 0.5.x.
60- Update many other dependencies.
61
62### Added
63- `--log-only` option to log only certain modules.
64
65## 1.7.1 - 2017-11-13
66
67### Fixed
68- Update mocha dependency which addresses multiple security vulnerabilities.
69
70## 1.7.0 - 2017-08-10
71
72### Added
73- Add `assertNoError(err)` global test helper which makes an assertion that
74 `err` should be falsy. If an error does occur, the full error will be
75 logged to the console. The additional logging is helpful when troubleshooting
76 tests that are failing due to a regression. This helper should be used in
77 place of the commonly used `should.not.exist(err)` assertion.
78
79## 1.6.0 - 2017-07-27
80
81### Changed
82- Upgrade test related dependencies: mocha, chai, chai-as-promised.
83
84## 1.5.0 - 2017-07-24
85
86### Added
87- Add `child(meta)` method to create a child logger with common metadata for
88 each logging call. The special `module` meta key can be used to prefix
89 messages with `[module] ` and is removed from the message details.
90 `child(name)` is a shortcut for `child({module: name})`.
91
92## 1.4.1 - 2017-02-02
93
94### Changed
95- Deprecated default values for `config.paths`. A warning will be printed. A
96 future major version will force values to be set by applications.
97
98## 1.4.0 - 2016-12-09
99
100### Added
101- Add `config.paths` with `log` and `cache` entries. This is designed to be a
102 simple single point of configuration for the root logging and cache paths.
103
104### Changed
105- Use computed configs:
106 - Add common cache and log paths to config.paths.
107 - Use common log path for default log files.
108
109## 1.3.0 - 2016-12-07
110
111### Added
112- Add `bedrock.util.config` utilities:
113 - Add `bedrock.util.config.Config` OO wrapper API.
114 - Common `bedrock.util.config.main` Config wrapper for `bedrock.config`.
115 - See README for usage details.
116- ci-test target with tap mocha reporter.
117
118### Changed
119- Updated dependencies.
120- Updated to node >= 6.
121
122## 1.2.5 - 2016-07-29
123
124### Fixed
125- Fix chown bug when posix doesn't exist and usernames are used.
126
127## 1.2.4 - 2016-06-09
128
129### Changed
130- Improve logging of simple object unhandled errors.
131
132## 1.2.3 - 2016-06-01
133
134### Changed
135- Use improved common uncaught exception handler.
136
137## 1.2.2 - 2016-05-30
138
139### Changed
140- Update docs.
141- Update jscs linter rules.
142
143## 1.2.1 - 2016-04-04
144
145### Fixed
146- `enableChownDir` check typo.
147
148## 1.2.0 - 2016-03-30
149
150### Added
151- `bedrock.config.loggers.*.bedrock` for bedrock specific options.
152- Add `...bedrock.enableChownDir` boolean option to control `chown`ing file
153 logger directory to runtime userId.
154
155## 1.1.1 - 2016-02-22
156
157### Fixed
158- Check `config.loggers` properties are Objects before accsesing
159 sub-properties. Fixes older configs that set other non-Object meta-data
160 along with loggers.
161
162## 1.1.0 - 2016-02-11
163
164### Added
165- Add simpler and more explicit mechanism for adding new winston transports.
166 Now a call to `bedrock.loggers.addTransport` can be made in event listeners
167 handling the `bedrock-loggers.init` event.
168
169## 1.0.10 - 2016-01-31
170
171### Changed
172- Updated dependencies.
173
174## 1.0.9 - 2015-10-27
175
176### Changed
177- Updated jsonld.js to 0.4.2 to get URDNA2015 support.
178
179## 1.0.8 - 2015-10-15
180
181### Changed
182- Initialize jsonld document loader in `bedrock.init` event phase. Done to
183 allow access to fully setup config. Warn if default document loader is used
184 before jsonld initialized.
185
186### Fixed
187- `bedrock.config.jsonld.strictSSL` used if available to configure jsonld
188 document loader.
189
190## 1.0.7 - 2015-10-15
191
192### Changed
193- `exit` now calls worker kill() vs disconnect() and process.exit(). Appears to
194 be more correct and works around a bug in node 4.x.
195
196## 1.0.6 - 2015-09-15
197
198### Changed
199- Update posix version to be compatible with node 4.0.0.
200
201## 1.0.5 - 2015-09-14
202
203### Changed
204- Updated jsonld and other versions.
205
206## 1.0.4 - 2015-08-27
207
208### Changed
209- Updated async to version 1.4.x.
210
211## 1.0.3 - 2015-07-16
212
213### Fixed
214- Bug that caused workers to not be restarted.
215
216## 1.0.2 - 2015-07-12
217
218### Fixed
219- Handle cycles in log message meta data.
220
221## 1.0.1 - 2015-05-07
222
223### Changed
224- Update dependencies.
225
226## 1.0.0 - 2015-04-08
227
228### Changed
229- **BREAKING**: A new event `bedrock.admin.init` was introduced that emits
230 prior to `bedrock.init`. This new event is emitted while the process has
231 any elevated privileges and after it is handled, elevated privileges are
232 dropped. This changes `bedrock.init` so that it runs without elevated
233 privileges. This only affected `bedrock.server` in a negative way; this
234 module has been updated to comply with the change. Also, `bedrock.init`
235 should no longer be used to emit custom events; these should be deferred
236 to `bedrock.start` to prevent scenarios where a listener of an event
237 emitted by one module can't use the API of another unrelated module because
238 it hasn't been initialized yet. Deferring custom event emitting to
239 `bedrock.start` as a best practice avoids this scenario.
240- Updated JSCS rules.
241
242## 0.3.2 - 2015-02-24
243
244### Fixed
245- Fixed default command after upgrade to commander 2.6.
246
247## 0.3.1 - 2015-02-23
248
249### Changed
250- Updated commander to version 2.6.0.
251
252## 0.3.0 - 2015-02-16
253
254### Breaking Changes
255
256- Major package reorganization:
257 - Files split into many sub-projects.
258 - Bedrock server split into `bedrock-*` modules.
259 - Bedrock frontend components split into `bedrock-angular-*` modules.
260- Infrastructure changed to make composing a project from modules much easier.
261- **bedrock**:
262 - New event system for module initialization and communication.
263 - Removed old bedrock.modules API.
264 - `config.app.*` changed to `config.core.*`.
265 - `config.server.workers` changed to `config.core.workers`.
266 - Various code moved to modules or removed (`iso8601` library, etc)
267 - `bedrock.security` API removed. Other libraries such as `jsonld-signatures` can be used.
268 - `bedrock.tools` renamed to `bedrock.util`; `bedrock.tools` is deprecated.
269 - Config files:
270 - Most files moved as examples in `bedrock-seed`.
271 - Some values added as defaults in appropriate modules.
272 - `configs` dir removed.
273 - Development uses defaults.
274 - Testing uses `lib/test.config.js`.
275 - Removed `config.environment` in favor of feature flags.
276 - `config.core.starting.groupId` and `config.core.starting.userId` used for
277 master before logging initialized.
278 - `config.core.running.groupId` and `config.core.running.userId` used for
279 master and workers after logging initialized.
280 - `config.core.errors.showStack` used to control general error stack traces.
281 - `config.jsonld.strictSSL` used to control strict SSL of jsonld library.
282 - `config.views.serviceUnavailable` to control 503 Service Unavailable for
283 all requests.
284 - `config.core.masterTitle` changed to `config.core.master.title`.
285 - `config.core.workerTitle` changed to `config.core.worker.title`.
286 - `config.core.restartWorkers` changed to `config.core.worker.restart`.
287 - Remove uses of `MODULE_NS`.
288 - Remove prefixes from errors and use simpler names.
289 - Change many `*NotFound` error types to just `NotFound`.
290- **mail**:
291 - Per-module mapper files removed.
292 - Modules push event handlers to `bedrock.config.mail.events` array:
293 - `{type: 'EVENT-TYPE', template: 'TEMPLATE-HANDLER-ID'}`
294 - Modules set config objects in `bedrock.config.mail.templates.config[ID]`:
295 - `{filename: 'FULL-FILENAME', [disabled: true]}`
296- **express**:
297 - `config.server.cache.*` renamed to `config.express.cache.*`.
298 - `config.server.session.*` renamed to `config.express.session.*`.
299 - `config.server.static` renamed to `config.express.static`.
300 - `config.server.staticOptions` renamed to `config.express.staticOptions`.
301 - `config.express.useSession` to control session support.
302 - `config.express.dumpExceptions` to control error exceptions.
303 - `config.express.showStack` to control error stack traces.
304- **i18n**:
305 - `config.website.i18nPaths` renamed to `config.i18n.localePath`.
306 - `config.website.writeLocales` renamed to `config.i18n.writeLocales`.
307- **schemas**:
308 - Schemas moved to `bedrock-validation` and other modules.
309 - Modules push paths to `bedrock.config.validation.schemas.paths` array.
310- **mongodb**:
311 - `config.database` changed to `config.mongodb`.
312 - `bedrock-mongodb` module now uses version 2.x of the Node.js driver, see [Migrating to 2.X](http://mongodb.github.io/node-mongodb-native/2.0/tutorials/changes-from-1.0/).
313 - Support for mongodb 2.2 has been dropped.
314- **cli**:
315 - `-R/--reporter` changed to `--mocha-reporter`.
316- **views**:
317 - `config.website.views` moved to `config.views`.
318 - `config.views.vars` are now shared between client and server templates except for any vars under `_private` which are server-only.
319 - `config.views.vars.clientData` has been removed.
320 - `config.views.vars.session` moved to `config.views.vars.idp.session`.
321 - A number of unused keys in `config.views.vars` have been removed: `session.auth`, `session.loaded`, `serviceHost`, `serviceDomain`, `productionMode`.
322
323## 0.2.0 (up to early 2015)
324
325- See git history for changes.