• 2.0.2 48bd3bf10e

    2.0.2 Stable

    muppeth released this 2024-05-13 22:54:51 +02:00 | 19 commits to main since this release

    Compatibility changes

    • Socket io has been updated to 4.7.5. This means that the json.send function won't work anymore and needs to be changed to .emit('message', myObj)
    • Deprecating npm version 6 in favor of pnpm: We have made the decision to switch to the well established pnpm (https://pnpm.io/). It works by symlinking dependencies into a global directory allowing you to have a cleaner and more reliable environment.
    • Introducing Typescript to the Etherpad core: Etherpad core logic has been rewritten in Typescript allowing for compiler checking of errors.
    • Rewritten Admin Panel: The Admin panel has been rewritten in React and now features a more pleasant user experience. It now also features an integrated pad searching with sorting functionality.

    Notable enhancements and fixes

    Bugfixes

    • Fixed a bug where a plugin depending on a scoped dependency would not install successfully.
    • Live Plugin Manager: The live plugin manager caused problems when a plugin had depdendencies defined. This issue is now resolved.

    Enhancements

    • pnpm Workspaces: In addition to pnpm we introduced workspaces. A clean way to manage multiple bounded contexts like the admin panel or the bin folder.
    • Bin folder: The bin folder has been moved from the src folder to the root folder. This change was necessary as the contained scripts do not represent core functionality of the user.
    • Starting Etherpad: Etherpad can now be started with a single command: pnpm run prod in the root directory.
    • Installing Etherpad: Etherpad no longer symlinks itself in the root directory. This is now also taken care by pnpm, and it just creates a node_modules folder with the src directory`s ep_etherpad-lite folder
    • Fixed the locale loading in the admin panel
    • Added OAuth2.0 support for the Etherpad API. You can now log in into the Etherpad API with your admin user using OAuth2
    • Plugins can now be installed simply via the command: pnpm run install-plugins first-plugin second-plugin or if you want to install from path you can do: pnpm run install-plugins --path ../path-to-plugin

    This wouldn't be possible as a single developer. Special thanks to:

    @HMarzban for jumping in to update socket io
    @Gared for implementing and fixing the Live Plugin Manager
    @JannikStreek for adapting the Etherpad Docker build process, introducing PNPM workspaces and separating the bin and src folder
    @AugustinMauroy for the roadmap and inspiration of modernizing the Etherpad structure
    
    Downloads