Refine CHANGELOG.md

This commit is contained in:
Richard Hansen 2021-11-20 22:04:07 -05:00
parent 868c6852de
commit bbd71cea22

View file

@ -17,52 +17,54 @@
### Compatibility changes ### Compatibility changes
* The `logconfig` setting is deprecated. * The `logconfig` setting is deprecated.
* For plugin authors:
* Etherpad now uses [jsdom](https://github.com/jsdom/jsdom) instead of #### For plugin authors
[cheerio](https://cheerio.js.org/) for processing HTML imports. There are
two consequences of this change: * Etherpad now uses [jsdom](https://github.com/jsdom/jsdom) instead of
* `require('ep_etherpad-lite/node_modules/cheerio')` no longer works. To [cheerio](https://cheerio.js.org/) for processing HTML imports. There are two
fix, your plugin should directly depend on `cheerio` and do consequences of this change:
`require('cheerio')`. * `require('ep_etherpad-lite/node_modules/cheerio')` no longer works. To fix,
* The `node` context argument passed to the `collectContentImage` hook is your plugin should directly depend on `cheerio` and do `require('cheerio')`.
now an * The `collectContentImage` hook's `node` context property is now an
[`HTMLImageElement`](https://developer.mozilla.org/en-US/docs/Web/API/HTMLImageElement) [`HTMLImageElement`](https://developer.mozilla.org/en-US/docs/Web/API/HTMLImageElement)
object rather than a Cheerio Node-like object, so the API is slightly object rather than a Cheerio Node-like object, so the API is slightly
different. See different. See
[citizenos/ep_image_upload#49](https://github.com/citizenos/ep_image_upload/pull/49) [citizenos/ep_image_upload#49](https://github.com/citizenos/ep_image_upload/pull/49)
for an example fix. for an example fix.
* The `clientReady` server-side hook is deprecated; use the new `userJoin` * The `clientReady` server-side hook is deprecated; use the new `userJoin` hook
hook instead. instead.
* The `init_<pluginName>` server-side hooks are now run every time Etherpad * The `init_<pluginName>` server-side hooks are now run every time Etherpad
starts up, not just the first time after the named plugin is installed. starts up, not just the first time after the named plugin is installed.
* The `userLeave` server-side hook's context properties have changed: * The `userLeave` server-side hook's context properties have changed:
* `auth`: Deprecated. * `auth`: Deprecated.
* `author`: Deprecated; use the new `authorId` property instead. * `author`: Deprecated; use the new `authorId` property instead.
* `readonly`: Deprecated; use the new `readOnly` property instead. * `readonly`: Deprecated; use the new `readOnly` property instead.
* `rev`: Deprecated. * `rev`: Deprecated.
* Changes to the `src/static/js/Changeset.js` library: * Changes to the `src/static/js/Changeset.js` library:
* `opIterator()`: The unused start index parameter has been removed, as has * `opIterator()`: The unused start index parameter has been removed, as has
the unused `lastIndex()` method on the returned object. the unused `lastIndex()` method on the returned object.
* `smartOpAssembler()`: The returned object's `appendOpWithText()` method is * `smartOpAssembler()`: The returned object's `appendOpWithText()` method is
deprecated without a replacement available to plugins (if you need one, deprecated without a replacement available to plugins (if you need one, let
let us know and we can make the private `opsFromText()` function public). us know and we can make the private `opsFromText()` function public).
* Several functions that should have never been public are no longer * Several functions that should have never been public are no longer exported:
exported: `applyZip()`, `assert()`, `clearOp()`, `cloneOp()`, `copyOp()`, `applyZip()`, `assert()`, `clearOp()`, `cloneOp()`, `copyOp()`, `error()`,
`error()`, `followAttributes()`, `opString()`, `stringOp()`, `followAttributes()`, `opString()`, `stringOp()`, `textLinesMutator()`,
`textLinesMutator()`, `toBaseTen()`, `toSplices()`. `toBaseTen()`, `toSplices()`.
### Notable enhancements ### Notable enhancements
* Simplified pad reload after importing an `.etherpad` file. * Simplified pad reload after importing an `.etherpad` file.
* For plugin authors:
* `clientVars` was added to the context for the `postAceInit` client-side #### For plugin authors
hook. Plugins should use this instead of the `clientVars` global variable.
* New `userJoin` server-side hook. * `clientVars` was added to the context for the `postAceInit` client-side hook.
* The `userLeave` server-side hook has a new `socket` context property. Plugins should use this instead of the `clientVars` global variable.
* The `helper.aNewPad()` function (accessible to client-side tests) now * New `userJoin` server-side hook.
* The `userLeave` server-side hook has a new `socket` context property.
* The `helper.aNewPad()` function (accessible to client-side tests) now
accepts hook functions to inject when opening a pad. This can be used to accepts hook functions to inject when opening a pad. This can be used to
test any new client-side hooks your plugin provides. test any new client-side hooks your plugin provides.
* Chat improvements: * Chat improvements:
* The `chatNewMessage` client-side hook context has new properties: * The `chatNewMessage` client-side hook context has new properties:
* `message`: Provides access to the raw message object so that plugins can * `message`: Provides access to the raw message object so that plugins can
see the original unprocessed message text and any added metadata. see the original unprocessed message text and any added metadata.
@ -130,8 +132,8 @@
* Disabled wtfnode dump by default. * Disabled wtfnode dump by default.
* Send `USER_NEWINFO` messages on reconnect. * Send `USER_NEWINFO` messages on reconnect.
* Fixed loading in a hidden iframe. * Fixed loading in a hidden iframe.
* Fixed a race condition with composition. (Thanks @ingoncalves for an exceptionally * Fixed a race condition with composition. (Thanks @ingoncalves for an
detailed analysis and @rhansen for the fix.) exceptionally detailed analysis and @rhansen for the fix.)
# 1.8.13 # 1.8.13
@ -158,11 +160,13 @@
# 1.8.12 # 1.8.12
Special mention: Thanks to Sauce Labs for additional testing tunnels to help us grow! :) Special mention: Thanks to Sauce Labs for additional testing tunnels to help us
grow! :)
### Security patches ### Security patches
* Fixed a regression in v1.8.11 which caused some pad names to cause Etherpad to restart. * Fixed a regression in v1.8.11 which caused some pad names to cause Etherpad to
restart.
### Notable fixes ### Notable fixes
@ -171,8 +175,8 @@ Special mention: Thanks to Sauce Labs for additional testing tunnels to help us
* Fixed a regression in v1.8.8 that caused "Uncaught TypeError: Cannot read * Fixed a regression in v1.8.8 that caused "Uncaught TypeError: Cannot read
property '0' of undefined" with some plugins (#4885) property '0' of undefined" with some plugins (#4885)
* Less warnings in server console for supported element types on import. * Less warnings in server console for supported element types on import.
* Support Azure and other network share installations by using a * Support Azure and other network share installations by using a more truthful
more truthful relative path. relative path.
### Notable enhancements ### Notable enhancements