Skip to content

0.7.5

Latest

Choose a tag to compare

@JanMiksovsky JanMiksovsky released this 02 Nov 19:46
· 1 commit to main since this release

This is a minor release.

No upgrade steps should be necessary for Origami files. If you have custom JavaScript functions that accept files, see below.

JavaScript functions that unpack files

Origami builtins previously contained logic to implicitly unpack file buffers that were passed to them. That logic has now been moved to the language runtime — when the runtime sees that your Origami code is calling a builtin, and the builtin says that it wants unpacked data, then the runtime will unpack any file buffers before calling the builtin. This change simplifies the code for the builtins.

One ramification of this change is that, if you have a JavaScript function that accepts a file buffer as input, and your function is then passing the input to a builtin, your function will need to unpack the file buffer before calling the builtin. See manually unpacking files for two different techniques for doing that.

Other changes

  • Argument validation for Tree. operations (Tree.map, etc.) has been consolidated and applied more consistently.
  • A small set of tree operations (Tree.sort, Tree.shuffle, Tree.reverse, Tree.withKeys) now return a SyncMap instead of an AsyncMap if all of map and function arguments are synchronous. SyncMap instances are generally much easier to use and debug, so this is an experiment to explore expanding this idea to the complete set of tree operations.
  • The server uses an alternate strategy for caching server responses to avoid sporadic issues. Thanks to @jimniels for drawing attention to the issue.
  • A small but long-standing bug prevented Origami from working on Microsoft Windows; that has now been fixed. Thanks to Mick for reporting the issue.

Extensions

The following extensions have been updated to work with this release:

  • @weborigami/dropbox
  • @weborigami/gdrive
  • @weborigami/json-schema
  • @weborigami/neocities
  • @weborigami/netlify
  • @weborigami/pagefind — This includes today's release of Pagefind 1.6.0
  • @weborigami/ts