"changelog":"## v0.3.0.0\n- Add a second program (`SortProgram`) which is run after the filtering, this\n program should return the list of items, but in the order in which they should appear in\n the playlist. The default is `(begin items)` which returns the list as is.\n- Extend builtin lisp definitions: add `qsort` and string comparison methods\n- Extend default program definitions: add `all-genres` and `any-genres` to quickly specify a list of genres which to include (or excluding when negating)\n- Update Jellyfin to v 10.10.3\n\n**Fixes**:\n- The progress report now correctly gives a percentage in the range [0, 100].\n\n## v0.2.2.0\n- Update Jellyfin to v 10.10.2\n\n## v0.2.1.0\n- Make default program configuration a textarea in the settings page\n- Add convinience definitions: `is-type`, `name-contains`\n- Update YamlDotNet to v 16.2.0\n\n**Fixes**:\n- The default program was malformed, a closing bracket was at the wrong position\n- The `haskeys` function could only be called on Objects\n\n## v0.2.0.0\n- Switch to yaml loading, old json files are still accepted\n- Rework lisp interpreter to be more conventional\n- Use arbitrary strings as ids for playlists\n- Add configuration page with some default definitions for\n the filter expressions.\n\n**Breaking Changes**:\n- The lisp interpreter will now only detect strings in double quotes (`\"`).\n- The interpreter will also not allow specifying lists without quoting them.\n `(1 2 3)` ... used to work but will no longer, replace by either specifying\n the list as `(list 1 2 3)` or `(quote (1 2 3))`.\n\n## v0.1.1.0\n- Initial Alpha release.\n",
"changelog":"## v0.2.2.0\n- Update Jellyfin to v 10.10.2\n\n## v0.2.1.0\n- Make default program configuration a textarea in the settings page\n- Add convinience definitions: `is-type`, `name-contains`\n- Update YamlDotNet to v 16.2.0\n\n**Fixes**:\n- The default program was malformed, a closing bracket was at the wrong position\n- The `haskeys` function could only be called on Objects\n\n## v0.2.0.0\n- Switch to yaml loading, old json files are still accepted\n- Rework lisp interpreter to be more conventional\n- Use arbitrary strings as ids for playlists\n- Add configuration page with some default definitions for\n the filter expressions.\n\n**Breaking Changes:**\n- The lisp interpreter will now only detect strings in double quotes (`\"`).\n- The interpreter will also not allow specifying lists without quoting them.\n `(1 2 3)` ... used to work but will no longer, replace by either specifying\n the list as `(list 1 2 3)` or `(quote (1 2 3))`.\n\n## v0.1.1.0\n- Initial Alpha release.\n",
"changelog":"## v0.2.1.0\n- Make default program configuration a textarea in the settings page\n- Add convinience definitions: `is-type`, `name-contains`\n- Update YamlDotNet to v 16.2.0\n\n**Fixes**:\n- The default program was malformed, a closing bracket was at the wrong position\n- The `haskeys` function could only be called on Objects\n\n## v0.2.0.0\n- Switch to yaml loading, old json files are still accepted\n- Rework lisp interpreter to be more conventional\n- Use arbitrary strings as ids for playlists\n- Add configuration page with some default definitions for\n the filter expressions.\n\n**Breaking Changes:**\n- The lisp interpreter will now only detect strings in double quotes (`\"`).\n- The interpreter will also not allow specifying lists without quoting them.\n `(1 2 3)` ... used to work but will no longer, replace by either specifying\n the list as `(list 1 2 3)` or `(quote (1 2 3))`.\n\n## v0.1.1.0\n- Initial Alpha release.\n",
"changelog":"## v0.2.0.0\n- Switch to yaml loading, old json files are still accepted\n- Rework lisp interpreter to be more conventional\n- Use arbitrary strings as ids for playlists\n- Add configuration page with some default definitions for\n the filter expressions.\n\n**Breaking Changes:**\n- The lisp interpreter will no only detect strings in double quotes (`\"`).\n- The interpreter will also not allow specifying lists without quoting them.\n `(1 2 3)` ... used to work but will no longer, replace by either specifying\n the list as `(list 1 2 3)` or (quote (1 2 3)).\n\n## v0.1.1.0\n- Initial Alpha release.\n",