Skip to content

Releases: LucasPickering/slumber

2.0.0 - 2024-09-06

08 Sep 02:21
Compare
Choose a tag to compare

Release Notes

2.0 is headlined by a highly requested feature: one-off edits to recipes! If you need to tweak a query parameter or edit a body, but don't want to modify your collection file, you can now highlight the value in question and hit e to modify it. The override will be retained until you modify the collection file or exit Slumber, at which point it will revert to its original value.

Aside from the major new feature, there is one breaking change to the escape syntax of templates. The old backslash-based syntax was fraught with edge cases and unpredictable behavior. This new syntax is simpler to use, simpler to implement, and much more bulletproof. This syntax was rare to use to begin with, so most people will be unimpacted by this change.

Here's the full list of changes:

Breaking

  • Replace backslash escape sequence with a simpler scheme based on _
    • For example, previously a key would be escaped as \{{. This introduced complexities around how to handle additional backslashes, and also required doubling up backslashes in YAML
    • The new equivalent would be {_{, which parses as {{
    • The goal of this change is to make escaping behavior simpler and more consistent
    • For more info on the new behavior, see the docs
  • Remove --log CLI argument
    • See note on log files in Changed section for why this is no longer necessary

Added

  • Edit recipe values (query params, headers, etc.) in the TUI to provide one-off values
  • Add editor field to the config, allowing you to customize what editor Slumber opens for in-app editing
  • Add !select chain type, allowing your collection to prompt the user to select a value from a static list (thanks @anussel5559)

Changed

  • !json bodies are now prettified when sent to the server
  • Use vim as default editor if none is configured
  • Move logs back to a shared file
    • They had been split into one file per session, which made them hard to find
    • The file is now eventually deleted once it exceeds a certain size

Fixed

  • Fix basic auth being label as bearer auth in Recipe Authentication pane
  • Use correct binding for search action in the placeholder of the response filter textbox
    • Previously it was hardcoded to display the default of /
  • Fix response body filter not applying on new responses
  • Support quoted arguments in editor commands
  • Fix certain UI values not persisting correctly
  • Propagate unconsumed key events from text boxes
    • E.g. F5 will now refresh the collection while a text box is in focus
  • Redraw TUI when terminal is resized
  • Clamp text window scroll state when window is resized or text changes
  • Fix extraneous input events when exiting Vim #351
  • Improve performance and fix crashes when handling large request/response bodies #356
    • Further improvements for large bodies will be coming in the future

Install slumber 2.0.0

Install prebuilt binaries via shell script

curl --proto '=https' --tlsv1.2 -LsSf https://github.com/LucasPickering/slumber/releases/download/v2.0.0/slumber-installer.sh | sh

Install prebuilt binaries via powershell script

powershell -ExecutionPolicy ByPass -c "irm https://github.com/LucasPickering/slumber/releases/download/v2.0.0/slumber-installer.ps1 | iex"

Install prebuilt binaries via Homebrew

brew install LucasPickering/tap/slumber

Download slumber 2.0.0

File Platform Checksum
slumber-aarch64-apple-darwin.tar.xz Apple Silicon macOS checksum
slumber-x86_64-apple-darwin.tar.xz Intel macOS checksum
slumber-x86_64-pc-windows-msvc.zip x64 Windows checksum
slumber-x86_64-unknown-linux-gnu.tar.xz x64 Linux checksum
slumber-x86_64-unknown-linux-musl.tar.xz x64 MUSL Linux checksum

1.8.0 - 2024-08-09

09 Aug 13:25
Compare
Choose a tag to compare

Release Notes

The highlight (no pun intended) of this release is syntax highlighting. Beyond that, the release contains a variety of small fixes and improvements.

Added

  • Add syntax highlighting to recipe, request, and response display #264

Changed

  • Change layout of internal database for request and UI state storage
    • This shouldn't have any user impact, it's just a technical improvement. If you notice any issues such as missing or incorrect request history, please let me know
  • Upgrade to Rust 1.80
  • Disable unavailable menu actions #222
  • Support template for header names in the section field of !request chains
  • Expand ~ to the home directory in !file chain sources and when saving response body as a file
  • Ignore key events with additional key modifiers
    • For example, an action bound to w will no longer match ctrl w
  • Actions can now be unbound by specifying an empty binding
    • For example, binding submit: [] will make the submit action inaccessible

Fixed

  • Fix cargo install slumber when not using --locked
  • Don't type in text boxes when modifiers keys (other than shift) are enabled
    • Should mitigate some potential confusing behavior when using terminal key sequences
  • Query parameter and header toggle rows no longer lose their state when switching profiles

Install slumber 1.8.0

Install prebuilt binaries via shell script

curl --proto '=https' --tlsv1.2 -LsSf https://github.com/LucasPickering/slumber/releases/download/v1.8.0/slumber-installer.sh | sh

Install prebuilt binaries via powershell script

powershell -c "irm https://github.com/LucasPickering/slumber/releases/download/v1.8.0/slumber-installer.ps1 | iex"

Install prebuilt binaries via Homebrew

brew install LucasPickering/homebrew-tap/slumber

Download slumber 1.8.0

File Platform Checksum
slumber-aarch64-apple-darwin.tar.xz Apple Silicon macOS checksum
slumber-x86_64-apple-darwin.tar.xz Intel macOS checksum
slumber-x86_64-pc-windows-msvc.zip x64 Windows checksum
slumber-x86_64-unknown-linux-gnu.tar.xz x64 Linux checksum
slumber-x86_64-unknown-linux-musl.tar.xz x64 MUSL Linux checksum

1.7.0 - 2024-07-22

22 Jul 21:22
Compare
Choose a tag to compare

Release Notes

This release focuses on minor fixes and improvements. There are no new major features or added functionality.

Added

  • Add global --log argument to CLI, to print the log file being used for that invocation

Changes

  • Checkbox row state and folder expand/collapse state are now toggled via the spacebar instead of enter
    • Enter now sends a request from anywhere. While this change may be annoying, it will hopefully be more intuitive in the long run.
    • This can be rebound (see docs)
  • Show folder tree in recipe pane when a folder is selected
  • Don't exit body filter text box on Enter #270
  • Show elapsed time for failed requests (e.g. in case of network error)

Fixes

  • Fix latest request not being pre-selected correctly if it's not a successful response
  • Detect infinite loops in chain configuration templates
  • Duplicated chains in a recipe will only be rendered once #118
  • Never trigger chained requests when rendering template previews in the TUI
  • Use a different log file for each session #61

Install slumber 1.7.0

Install prebuilt binaries via shell script

curl --proto '=https' --tlsv1.2 -LsSf https://github.com/LucasPickering/slumber/releases/download/v1.7.0/slumber-installer.sh | sh

Install prebuilt binaries via powershell script

powershell -c "irm https://github.com/LucasPickering/slumber/releases/download/v1.7.0/slumber-installer.ps1 | iex"

Install prebuilt binaries via Homebrew

brew install LucasPickering/homebrew-tap/slumber

Download slumber 1.7.0

File Platform Checksum
slumber-aarch64-apple-darwin.tar.xz Apple Silicon macOS checksum
slumber-x86_64-apple-darwin.tar.xz Intel macOS checksum
slumber-x86_64-pc-windows-msvc.zip x64 Windows checksum
slumber-x86_64-unknown-linux-gnu.tar.xz x64 Linux checksum
slumber-x86_64-unknown-linux-musl.tar.xz x64 MUSL Linux checksum

1.6.0 - 2024-07-07

07 Jul 14:39
Compare
Choose a tag to compare

Release Notes

Added

  • Initial support for importing collections from an OpenAPIv3 specification #106
    • Currently only OpenAPI 3.0 (not 3.1) is supported. Please try this out and give feedback if anything doesn't work.

Changed

  • Allow escaping keys in templates #149
    • While this is technically a breaking change, this is not a major version bump because it's extremely unlikely that this will break anything in practice for a user
    • See docs

Fixed

  • Support TLS certificates in native certificate store #275

Install slumber 1.6.0

Install prebuilt binaries via shell script

curl --proto '=https' --tlsv1.2 -LsSf https://github.com/LucasPickering/slumber/releases/download/v1.6.0/slumber-installer.sh | sh

Install prebuilt binaries via powershell script

powershell -c "irm https://github.com/LucasPickering/slumber/releases/download/v1.6.0/slumber-installer.ps1 | iex"

Install prebuilt binaries via Homebrew

brew install LucasPickering/homebrew-tap/slumber

Download slumber 1.6.0

File Platform Checksum
slumber-aarch64-apple-darwin.tar.xz Apple Silicon macOS checksum
slumber-x86_64-apple-darwin.tar.xz Intel macOS checksum
slumber-x86_64-pc-windows-msvc.zip x64 Windows checksum
slumber-x86_64-unknown-linux-gnu.tar.xz x64 Linux checksum
slumber-x86_64-unknown-linux-musl.tar.xz x64 MUSL Linux checksum

1.5.0 - 2024-06-17

17 Jun 22:20
Compare
Choose a tag to compare

Release Notes

Added

  • Add !env chain source, for loading environment variables
    • This is intended to replace the existing {{env.VARIABLE}} syntax, which is now deprecated and will be removed in the future

Changed

  • "Edit Collection" action now uses the editor set in $VISUAL/$EDITOR instead of whatever editor you have set as default for .yaml/.yml files #262
    • In most cases this means you'll now get vim instead of VSCode or another GUI editor
    • Closing the editor will return you to Slumber, meaning you can stay in the terminal the entire time

Fixed

  • Environment variables in {{env.VARIABLE}} templates are now loaded as strings according to the OS encoding, as opposed to always being decoded as UTF-8

Install slumber 1.5.0

Install prebuilt binaries via shell script

curl --proto '=https' --tlsv1.2 -LsSf https://github.com/LucasPickering/slumber/releases/download/v1.5.0/slumber-installer.sh | sh

Install prebuilt binaries via powershell script

powershell -c "irm https://github.com/LucasPickering/slumber/releases/download/v1.5.0/slumber-installer.ps1 | iex"

Install prebuilt binaries via Homebrew

brew install LucasPickering/homebrew-tap/slumber

Download slumber 1.5.0

File Platform Checksum
slumber-aarch64-apple-darwin.tar.xz Apple Silicon macOS checksum
slumber-x86_64-apple-darwin.tar.xz Intel macOS checksum
slumber-x86_64-pc-windows-msvc.zip x64 Windows checksum
slumber-x86_64-unknown-linux-gnu.tar.xz x64 Linux checksum
slumber-x86_64-unknown-linux-musl.tar.xz x64 MUSL Linux checksum

Version 1.5.0-beta.1

13 Jun 21:03
Compare
Choose a tag to compare
Version 1.5.0-beta.1 Pre-release
Pre-release

Release Notes

Changed

  • "Edit Collection" action now uses the editor set in $VISUAL/$EDITOR instead of whatever editor you have set as default for .yaml/.yml files
    • In most cases this means you'll now get vim instead of VSCode or another GUI editor
    • Closing the editor will return you to Slumber, meaning you can stay in the terminal the entire time

Install slumber 1.5.0-beta.1

Install prebuilt binaries via shell script

curl --proto '=https' --tlsv1.2 -LsSf https://github.com/LucasPickering/slumber/releases/download/v1.5.0-beta.1/slumber-installer.sh | sh

Install prebuilt binaries via powershell script

powershell -c "irm https://github.com/LucasPickering/slumber/releases/download/v1.5.0-beta.1/slumber-installer.ps1 | iex"

Install prebuilt binaries via Homebrew

brew install LucasPickering/homebrew-tap/slumber

Download slumber 1.5.0-beta.1

File Platform Checksum
slumber-aarch64-apple-darwin.tar.xz Apple Silicon macOS checksum
slumber-x86_64-apple-darwin.tar.xz Intel macOS checksum
slumber-x86_64-pc-windows-msvc.zip x64 Windows checksum
slumber-x86_64-unknown-linux-gnu.tar.xz x64 Linux checksum
slumber-x86_64-unknown-linux-musl.tar.xz x64 MUSL Linux checksum

1.4.0 - 2024-06-11

11 Jun 22:14
Compare
Choose a tag to compare

Release Notes

Added

  • Structured bodies can now be defined with tags on the body field of a recipe, making it more convenient to construct bodies of common types. Supported types are:
  • Support multiple instances of the same query param #245 (@maksimowiczm)
    • Query params can now be defined as a list of <param>=<value> entries
    • See docs
  • Templates can now render binary values in certain contexts

Changed

  • When a modal/dialog is open q now exits the dialog instead of the entire app
  • Upgrade to Rust 1.76

Fixed

  • Fix "Unknown request ID" error showing on startup #238

Install slumber 1.4.0

Install prebuilt binaries via shell script

curl --proto '=https' --tlsv1.2 -LsSf https://github.com/LucasPickering/slumber/releases/download/v1.4.0/slumber-installer.sh | sh

Install prebuilt binaries via powershell script

powershell -c "irm https://github.com/LucasPickering/slumber/releases/download/v1.4.0/slumber-installer.ps1 | iex"

Install prebuilt binaries via Homebrew

brew install LucasPickering/homebrew-tap/slumber

Download slumber 1.4.0

File Platform Checksum
slumber-aarch64-apple-darwin.tar.xz Apple Silicon macOS checksum
slumber-x86_64-apple-darwin.tar.xz Intel macOS checksum
slumber-x86_64-pc-windows-msvc.zip x64 Windows checksum
slumber-x86_64-unknown-linux-gnu.tar.xz x64 Linux checksum
slumber-x86_64-unknown-linux-musl.tar.xz x64 MUSL Linux checksum

1.3.2 - 2024-05-27

27 May 12:18
Compare
Choose a tag to compare

Release Notes

Changed

  • Show "Copy URL", "Copy Body" and "Copy as cURL" actions from the Recipe list #224
    • Previously this was only available in the Recipe detail pane
  • Fix Edit Collection action in menu
  • Persist response body query text box contents
    • Previously it would reset whenever you made a new request or changed recipes

Install slumber 1.3.2

Install prebuilt binaries via shell script

curl --proto '=https' --tlsv1.2 -LsSf https://github.com/LucasPickering/slumber/releases/download/v1.3.2/slumber-installer.sh | sh

Install prebuilt binaries via Homebrew

brew install LucasPickering/homebrew-tap/slumber

Install prebuilt binaries via powershell script

powershell -c "irm https://github.com/LucasPickering/slumber/releases/download/v1.3.2/slumber-installer.ps1 | iex"

Download slumber 1.3.2

File Platform Checksum
slumber-aarch64-apple-darwin.tar.xz Apple Silicon macOS checksum
slumber-x86_64-apple-darwin.tar.xz Intel macOS checksum
slumber-x86_64-pc-windows-msvc.zip x64 Windows checksum
slumber-x86_64-unknown-linux-gnu.tar.xz x64 Linux checksum
slumber-x86_64-unknown-linux-musl.tar.xz x64 MUSL Linux checksum

1.3.1 - 2024-05-21

21 May 01:51
Compare
Choose a tag to compare

Release Notes

Fixed

  • Fix double key events on Windows #226

Install slumber 1.3.1

Install prebuilt binaries via shell script

curl --proto '=https' --tlsv1.2 -LsSf https://github.com/LucasPickering/slumber/releases/download/v1.3.1/slumber-installer.sh | sh

Install prebuilt binaries via Homebrew

brew install LucasPickering/homebrew-tap/slumber

Install prebuilt binaries via powershell script

powershell -c "irm https://github.com/LucasPickering/slumber/releases/download/v1.3.1/slumber-installer.ps1 | iex"

Download slumber 1.3.1

File Platform Checksum
slumber-aarch64-apple-darwin.tar.xz Apple Silicon macOS checksum
slumber-x86_64-apple-darwin.tar.xz Intel macOS checksum
slumber-x86_64-pc-windows-msvc.zip x64 Windows checksum
slumber-x86_64-unknown-linux-gnu.tar.xz x64 Linux checksum
slumber-x86_64-unknown-linux-musl.tar.xz x64 MUSL Linux checksum

1.3.0 - 2024-05-17

17 May 22:10
Compare
Choose a tag to compare

Release Notes

The biggest feature in this release is the ability to browse request history. Slumber has already had the ability to track history, meaning all your history since you started using it will already be there! In addition, this release contains some UI improvements, as well as some pretty major internal refactors to enable these UI changes. These will also make future UI improvements easier and faster to implement.

Added

  • Request history is now browsable! #55
  • Add scrollbars to lists and text windows #220

Changed

  • Merge request & response panes
    • The request pane often isn't needed, so it doesn't deserve top-level space
  • Mouse events (e.g. scrolling) are now sent to unfocused elements

Install slumber 1.3.0

Install prebuilt binaries via shell script

curl --proto '=https' --tlsv1.2 -LsSf https://github.com/LucasPickering/slumber/releases/download/v1.3.0/slumber-installer.sh | sh

Install prebuilt binaries via Homebrew

brew install LucasPickering/homebrew-tap/slumber

Install prebuilt binaries via powershell script

powershell -c "irm https://github.com/LucasPickering/slumber/releases/download/v1.3.0/slumber-installer.ps1 | iex"

Download slumber 1.3.0

File Platform Checksum
slumber-aarch64-apple-darwin.tar.xz Apple Silicon macOS checksum
slumber-x86_64-apple-darwin.tar.xz Intel macOS checksum
slumber-x86_64-pc-windows-msvc.zip x64 Windows checksum
slumber-x86_64-unknown-linux-gnu.tar.xz x64 Linux checksum
slumber-x86_64-unknown-linux-musl.tar.xz x64 MUSL Linux checksum