Skip to content

Moera node & client 0.15.0-beta0

Pre-release
Pre-release
Compare
Choose a tag to compare
@smelamud smelamud released this 01 Feb 01:40
· 155 commits to master since this release

New features

  • Universal URLs. These new URLs of Moera pages use a central redirector at moera.page host and include a node name. Read the details in the documentation.

Improvements

  • Browser add-on support removed.
  • Node now requires Java 17 for running.
  • Developers' naming server is now used in development environments.
  • Converted all React components to be functional and use React hooks.
  • Generation of Node API classes, JSON schemas and routines in TypeScript and Python from Node API definition in YAML.
  • Improved the Node API documentation.
  • Improved debug logging of Redux actions, making possible to see actions that caused them.
  • Made WebSockets connection more reliable.
  • Improved accessibility of buttons that have no text on them.
  • Set correct dimensions of image placeholders in the text of posts/comments to avoid layout shifts when loading images.
  • Use more convenient wording: "create a blog" instead of "sign up", and "log in/out" instead of "connect/disconnect".
  • A lot of refactoring in the client.
  • Pass node name in X-Moera header.
  • Less punctuation and mathematical characters are now allowed in node names (thanks to @eliduvid[Eliyahu Duvidzon] for proposal).

Speed improvements

  • Improved Redux selectors to avoid unnecessary re-rendering of React components.
  • Made client initialization process faster.
  • Do not request information about the same node many times.
  • Migrated from create-react-app scripts.
  • Updated all dependencies that had security issues.
  • Replaced some minor dependencies with our own code.
  • Reduced size of the main bundle of the client by lazy-loading parts of the code that are not needed on the start.
  • Moved WebSockets events processing code to a web worker.
  • Precompile JSON schemas and perform validation in a web worker.
  • Do not build FontAwesome icon library on the start, because it blocks the main thread for a while.
  • Avoid duplicate requests to the naming server. Cache names for several naming servers and do not clean the cache after switching user.
  • Do not show a loading indicator if loading is fast enough.

Bugfixes

  • Remove escaping backslash only when it prepends a smiley (thanks to @tigra[Tigra] for reporting).
  • Allow <strike> tag. Use <s> for strikeout in the editor in HTML mode (thanks to @Igor.braginsky[Igor Braginsky] for reporting).