Skip to content

Releases: porla/porla

Porla v0.39.0

04 Apr 19:37
6bbe62b
Compare
Choose a tag to compare

I did a boo-boo in the 0.38 release and the web UI wasn't embedded properly. This has been fixed.

What's changed

  • fix: adjust path to webui.zip by @vktr in #315

Full Changelog: v0.38.0...v0.39.0

Porla v0.38.0

04 Apr 16:35
8a6b6c9
Compare
Choose a tag to compare

This release replaces vcpkg with a dev container and manual dependency management in order to fix our static builds. It also adds per-torrent metrics to the Prometheus exporter.

What's changed

New contributors

Full Changelog: v0.37.0...v0.38.0

Porla v0.37.0

10 Feb 18:12
Compare
Choose a tag to compare

What's Changed

  • Sync PQL with torrent context by @vktr in #171
  • Separate listen device from port with a colon by @vktr in #172
  • Use properties on the torrent context by @vktr in #173
  • Add support for free functions, and editing tags by @vktr in #174
  • Update vcpkg by @vktr in #175
  • Docker: Upgrade Alpine to 1.18 and add bash to container by @samip5 in #176
  • Fix duration properties by @vktr in #182
  • build-env: Support arm64 by @samip5 in #181
  • Set up BuildJet by @vktr in #186
  • Improved workflow for build and deploy by @vktr in #187
  • Use short SHA instead of semver by @vktr in #188
  • Download Docker artifacts only by @vktr in #189
  • Add correct permissions to workflow by @vktr in #190
  • Keep Docker images in same package repo by @vktr in #191
  • Remove platform suffix from binary by @vktr in #192
  • Bump vite from 3.1.8 to 3.2.7 in /html by @dependabot in #179
  • Fix crash when specifying a workflow_dir that doesn't exist by @vktr in #195
  • Apply session settings base early by @vktr in #196
  • fix(readme): link to workflow guide by @nuxencs in #198
  • Handle error when adding torrents by @vktr in #197
  • Add basic plugins by @vktr in #184
  • Allow configuring libsodium memlimit by @vktr in #202
  • Map category and tags in torrents.add method by @vktr in #205
  • Replace Boost.Beast with uWebSockets by @vktr in #206
  • Add durations to the torrents.list API method by @vktr in #207
  • Merge workflow and plugin API by @vktr in #200
  • Fine tune workflows by @vktr in #210
  • Skip non .lua files in workflow_dir by @vktr in #211
  • Only set flags as per the bit mask by @vktr in #212
  • Skip loading workflows that errors by @vktr in #215
  • Better reannounce by @vktr in #216
  • Make Lua torrents.add and JSONRPC torrents.add similar by @vktr in #217
  • Move signal invoking outside the alert loop by @vktr in #218
  • Forward HTTP headers in workflow action by @vktr in #223
  • Initialize should_cancel to false, add some logging by @vktr in #219
  • Add last_download, last_upload to torrents.list JSONRPC response by @vktr in #228
  • Add support for multiple libtorrent sessions by @vktr in #226
  • Use alpine image from ghcr.io repository to avoid rate limits by @vktr in #229
  • Replace std::future with ipstream by @vktr in #230
  • Always toggle flags according to existing ones by @vktr in #231
  • Improve developer experience for torrent flags by @vktr in #232
  • Add Lua APIs to get and set session settings by @vktr in #233
  • Add fs.space to Lua API by @vktr in #235
  • Build in debian:12.1-slim by @vktr in #236
  • Allow cancelling cron schedule by @vktr in #237
  • Add hexdump to embed web UI by @vktr in #238
  • feat(http): add TYPE, HELP and timestamp to metrics endpoint by @vktr in #241
  • feat(lua): add missing torrent workflow triggers by @vktr in #242
  • feat(lua): add properties for v1 and v2 info hashes by @vktr in #244
  • feat(lua): resolve body in http workflow action by @vktr in #245
  • fix(logs): improve cURL error logging by @vktr in #246
  • fix(core): store if we trigger the torrent finished signal by @vktr in #247
  • feat(lua): add torrent info api by @vktr in #248
  • fix(core): use the configured sodium memlimit by @vktr in #250
  • feat(lua)!: lua api now maps much more closely to the libtorrent api by @vktr in #249
  • feat(lua): treat workflows as plugins by @vktr in #251
  • feat(lua): add os package, add process.search_path, add app config by @vktr in #252
  • feat(lua): add file storage api, add torrent state property by @vktr in #253
  • feat(lua): add ratio property to torrent status by @vktr in #254
  • fix(core): move plugin files and namespaces around by @vktr in #255
  • fix(core): bad optional access when running in docker by @vktr in #256
  • feat(lua): add added_time and completed_time to torrent status by @vktr in #257
  • fix(lua): adding tags by @vktr in #258
  • fix(http): sort torrents with no eta last by @vktr in #260
  • fix(core): failed to load session when torrent had no tags by @vktr in #262
  • Bump actions/checkout from 3 to 4 by @dependabot in #264
  • Bump docker/build-push-action from 4 to 5 by @dependabot in #267
  • Bump docker/setup-buildx-action from 2 to 3 by @dependabot in #268
  • feat(api): add preset json data by @vktr in #274
  • feat(lua): emit event when file_error_alert occurs by @vktr in #276
  • Bump docker/login-action from 2 to 3 by @dependabot in #269
  • Skip invalid handles when iterating by @vktr in #282
  • Handle adding duplicate magnet links by @vktr in #283
  • Bump docker/setup-qemu-action from 2 to 3 by @dependabot in #270
  • chore: bump postcss from 8.4.18 to 8.4.31 in /html by @dependabot in #280
  • Bump @babel/traverse from 7.19.6 to 7.23.2 in /html by @dependabot in #281
  • Bump semver from 6.3.0 to 6.3.1 in /html by @dependabot in #204
  • feat: cache lt::torrent status by @vktr in #295
  • chore: update dependencies by @vktr in #291
  • chore: bump vite from 3.2.7 to 3.2.8 in /html by @dependabot in #298
  • chore: pushing a tag creates a release by @vktr in #302

New Contributors

Full Changelog: v0.35.0...v0.37.0

Porla v0.35.0

14 Apr 21:46
725abc2
Compare
Choose a tag to compare

Significant changes

This version of Porla brings a lot of new goodies for the workflows! The biggest new feature is that workflows can now be triggered by a cron schedule which means that you can create some pretty nice workflows to pause, move and remove torrents that meet certain criterias.

Another workflow related feature is the HttpRequest action which lets you make HTTP(S) requests without needing to launch an external process and manage arguments for that. Please refer to the HttpRequest documentation for more information.

ℹ️ If you're currently using workflows, beware that the syntax has changed for how the workflow is triggered (on), and how it is filtered (filter). Please see the updated docs on workflows to learn more.

  • Add interval and cron based workflow triggers (by @vktr in #159)
  • Add HttpRequest action based on libcurl (by @vktr in #162)
  • Add curl to the base Docker image (by @l1meju1ce in #160)
  • Allow omitting args in Exec action (by @vktr in #163)
  • Add more properties to the Lua torrent context (by @vktr in #166)

New contributors

Full Changelog: v0.34.0...v0.35.0

Updating

  • docker pull ghcr.io/porla/porla:0.35.0
  • or, by downloading the binary matching your system below.

Porla v0.34.0

31 Mar 08:46
919c984
Compare
Choose a tag to compare

Significant changes

This release removes the ability to set settings in the UI (for now). This was not optimal since it lead to confusion about in which order settings were applied.

Session settings in Porla are now read from the TOML configuration file only. Refer to the documentation to learn more.

  • Allow trigger workflow on TorrentMoved (#141)
  • Fix issue when workflow_dir is empty (#143)
  • Better settings (#144)

Full Changelog: v0.33.0...v0.34.0

Updating

  • docker pull ghcr.io/porla/porla:0.34.0
  • or, by downloading the binary matching your system below.

Porla v0.33.0

22 Feb 19:59
44e4a92
Compare
Choose a tag to compare

Significant changes

This release is a bigger release that finally upgrades workflows to be Lua based, which means that the "old" YAML based workflows are not a thing anymore. Moving to Lua will bring more possibilities and generally be easier to use and maintain.

A few new actions has been added as well, such as Exec which will run an executable with (optional) stdin, and pass output to the next action. Please refer to the workflow documentation to learn more!

  • Add not operator to PQL flags (#130)
  • Allow alternate auth header (#132)
  • Lua workflows (#138)

Full Changelog: v0.32.0...v0.33.0

Updating

  • docker pull ghcr.io/porla/porla:0.33.0
  • or, by downloading the binary matching your system below.

Porla v0.32.0

12 Feb 18:53
b907f70
Compare
Choose a tag to compare

Significant changes

A smaller release with some grand changes. Porla now supports PQL, an embedded query language for querying and filtering torrents making it easier to find and browse among all your managed torrents.

More, the reannounce workflow action has been improved and will now retry until the announce is successful or the max retry limit is reached. This is backed by libtorrent alerts and will greatly improve reliability when racing.

  • Add simple query language (#125)
  • Make reannouncing action better (#128)

Full Changelog: v0.31.0...v0.32.0

Updating

  • docker pull ghcr.io/porla/porla:0.32.0
  • or, by downloading the binary matching your system below.

Porla v0.31.0

28 Jan 18:43
45eecde
Compare
Choose a tag to compare

Significant changes

This release adds a pretty cool feature - media info parsing. When enabled, Porla will prioritize torrent pieces to download the first few pieces of each media file in the torrent, so it can then parse it and add media information to the torrent. This information can then be used in workflows (or queried via the API) to take action - for example Sonarr, Radarr, etc can use it to reject certain torrent based on actual file format information rather than parsing it from the torrent name.

Further, a new JSONRPC method named fs.space has been added which returns the available space for the input path. The method also respects Linux quotas, and will correctly return quota information if the path passed is quota managed. This will help users on shared servers to get a correct view of the available disk space.

The UI has also been improved and the torrents table now supports sorting by clicking on the column headers.

  • Add method to get free space (#108)
  • Add quota check to fs.space method (#109)
  • Allow adding multiple torrents (#110)
  • Update vcpkg deps (#111)
  • Update readme (#112)
  • Only use quotactl on Linux (#113)
  • Use libtorrent userdata to store our own data (#114)
  • Allow sorting in the UI (#115)
  • Show available space for save path (#116)
  • Handle JSONRPC 'id' parameter (#120)
  • Parse media info (#117)
  • Allow disabling HTTP JWT auth with env var (#107)

Full Changelog: v0.30.0...v0.31.0

Updating

  • docker pull ghcr.io/porla/porla:0.31.0
  • or, by downloading the binary matching your system below.

Porla v0.30.0

16 Jan 19:50
ce01e1a
Compare
Choose a tag to compare

Significant changes

💘 Workflows are now generally available. They have replaced actions (and webhooks). Read more in the documentation.

  • Add YAML workflows (#106)

Full Changelog: v0.29.0...v0.30.0

Updating

  • docker pull ghcr.io/porla/porla:0.30.0
  • or, by downloading the binary matching your system below.

Porla v0.29.0

27 Dec 20:01
a8fc06a
Compare
Choose a tag to compare

Significant changes

💘 Actions are now generally available. Read more in the documentation.

  • Add simple actions (#97)
  • Allow filtering on save path (#99)
  • Add rechecking (#100)

Full Changelog: v0.28.1...v0.29.0

Updating

  • docker pull ghcr.io/porla/porla:0.29.0
  • or, by downloading the binary matching your system below.