Skip to content

Releases: cristianoliveira/aerospace-scratchpad

v0.5.0 - Structured Output and Scratchpad Management

06 Dec 14:56

Choose a tag to compare

Highlights

  • Added structured output support (--output flag) for move, show, summon, and next commands.
  • Introduced new list command to display scratchpad windows with filtering and sorting.
  • Added --all-floating flag to move all floating windows at once.
  • Updated AeroSpace compatibility documentation for v0.20.x.

Breaking Changes:

  • stdout: Replaced human-readable messages with structured output events for move, show, and summon commands.
  • move: Renamed --all flag to --all-matching for clarity.

Features:

  • list: Added new command to show scratchpad windows with scriptable output formats and filtering.
  • move: Added --all-floating flag to move all floating windows.
  • next: Added structured output support via --output flag.
  • docs: Added scriptable output examples and queue/stack implementation example.

Fixes:

  • list: Sort windows by app name and window ID for consistent ordering.
  • info: Improved error handling for incompatible server/client scenarios.

Refactors:

  • Updated window display format and simplified workspace check.
  • Updated IPC client and tests.
  • Refactored layout and focus services to use dedicated IPC packages.

Documentation:

  • Updated README with AeroSpace compatibility notes (v0.20.x requires v0.4.x or higher).
  • Added documentation for scriptable output and list command.
  • Updated documentation to include next command in structured output section.
  • Added example queue/stack implementation script.

Tests:

  • Added comprehensive tests for list command and output formatter.
  • Added test cases for info command.
  • Updated test snapshots for sorted window output.
  • Added tests for --all-floating flag functionality.

What's Changed

Full Changelog: v0.4.0...v0.5.0

v0.4.0 - AeroSpace v0.20.0 compatibility and documentation

30 Nov 13:11
d69ca86

Choose a tag to compare

Detailed Changes:

  • Refactored interface for setting focus, improving integration with new systems.
  • Updated documentation to include installation instructions for the nightly branch.
  • Clarified compatibility with AeroSpace v0.20.0.

Breaking changes

  • Minimum required AeroSpace now is v0.20.0.

Refactors:

  • SetFocus Interface: Changed SetFocusByWindowID to SetFocus with a new interface.
  • Aerospace IPC Upgrade: Upgraded to Aerospace IPC v0.3.0.

Chores:

  • Bug Reports: Added requirement for logs in bug reports.

Documentation:

  • Updated README with installation instructions for the nightly branch.
  • Clarified AeroSpace v0.20.0 compatibility.
  • Added warning for new AeroSpace v0.20.0.
  • Improved UX instructions and formatting for minimum version and configuration.
  • Updated Hook Integration Guide for accuracy and readability.

What's Changed

  • chore(nix): bump nix hashes and version by @github-actions[bot] in #105
  • chore(nix): bump nightly hashes and version by @github-actions[bot] in #106
  • chore(nix): bump nightly hashes and version by @github-actions[bot] in #107
  • chore(nix): bump nightly hashes and version by @github-actions[bot] in #110
  • chore: for bug reports please provide logs by @cristianoliveira in #113
  • docs: adds warning for new AeroSpace v0.20.0 by @cristianoliveira in #115
  • chore(nix): bump nightly hashes and version by @github-actions[bot] in #114
  • refactor: upgrade aerospace ipc v0 3 0 by @cristianoliveira in #116
  • refactor: change SetFocusByWindowID to SetFocus new interface by @cristianoliveira in #117

Full Changelog: v0.3.0...v0.4.0

v0.3.0 - Feature for better UX and fixes for move cmd

22 Nov 14:05

Choose a tag to compare

Release v0.3.0

Highlights:

  • Added the ability to move all matching windows with the --all flag.
  • Introduced a new command to manage .scratchpad focus.
  • Improved documentation for better user experience and clarified known issues.

Features:

  • move: allow moving all matching windows with --all
  • hook: add new command to handle .scratchpad taking focus

Fixes:

  • move: when no pattern is provided, only the focused window is moved

Documentation:

  • Update instructions for better UX
  • Update installation instructions and known issues, clarifying ongoing issue with scratchpad on dual monitors

What's Changed

  • chore(nix): bump nix hashes and version by @github-actions[bot] in #101
  • chore(nix): bump nightly hashes and version by @github-actions[bot] in #102
  • fix(move): when no pattern only the focused window is moved by @cristianoliveira in #103
  • feat(hook): add new command to handle .scratchpad taking focus by @cristianoliveira in #67
  • feat(move): allow moving all matching windows with --all by @cristianoliveira in #104

Full Changelog: v0.2.3...v0.3.0

v0.2.3 - Fixes

14 Nov 09:43
13168ff

Choose a tag to compare

Detailed Changes:

Highlights:

  • Added support for window-id filter to enhance filtering capabilities.
  • Fixed focus issue when sending windows to scratchpad, improving user workflow.
  • Updated documentation for better guidance on multi-monitor setups.

Fixes:

  • focus: Avoid focusing workspace when sending window to scratchpad
  • window-id: Add support for window-id filter

Refactors:

  • codebase: Apply Go lint golden rules

Documentation:

  • multi-monitor setups: Adds guidance for configuring scratchpads
  • known issues: Update known issues with multiple monitors

CI:

  • golintci: Fixes golintci config
  • golangci-lint: Specify version v2 in Makefile for reproducibility

Chores:

  • dx: Avoid watching .tmp folders
  • dx: Add log file tailing and enhance window focus logging
  • post-install: Show version after install
  • go caches: Use workspace-local go caches

What's Changed

  • chore(nix): bump nix hashes and version by @github-actions[bot] in #88
  • chore(nix): bump nightly hashes and version by @github-actions[bot] in #89
  • chore(nix): bump nightly hashes and version by @github-actions[bot] in #90
  • refactor: apply go lint golden rules by @cristianoliveira in #91
  • ci: fixes golint config by @cristianoliveira in #92
  • ci: adds read permission by @cristianoliveira in #93
  • chore(nix): bump nightly hashes and version by @github-actions[bot] in #94
  • chore(nix): bump nightly hashes and version by @github-actions[bot] in #95
  • chore(nix): bump nightly hashes and version by @github-actions[bot] in #97
  • chore(nix): bump nightly hashes and version by @github-actions[bot] in #98
  • fix(focus): when sending win to scratchpad avoid focusing ws by @cristianoliveira in #96
  • chore(nix): bump nightly hashes and version by @github-actions[bot] in #99
  • fix: add support for window-id filter by @jacobromero in #100

New Contributors

Full Changelog: v0.2.2...v0.2.3

v0.2.2 - Fix build bin with correct release version

02 Oct 17:27

Choose a tag to compare

What's Changed

  • chore(nix): bump nix hashes and version by @github-actions[bot] in #86

Full Changelog: v0.2.1...v0.2.2

v0.2.1 - Command fixes and consistency improvements + DX

02 Oct 15:53
3081845

Choose a tag to compare

What's Changed

  • chore(nix): bump nix hashes and version by @github-actions[bot] in #75
  • feat: make moving output message consistent by @cristianoliveira in #76
  • feat: make next command output consistent by @cristianoliveira in #77
  • refactor: centralize filter flag configuration to ensure consistency by @cristianoliveira in #78
  • docs: add example using aerospace-marks by @cristianoliveira in #79
  • chore(nix): bump nightly hashes and version by @github-actions[bot] in #80
  • chore(nix): bump nightly hashes and version by @github-actions[bot] in #81
  • fix(summon): when window is on workspace set focus by @cristianoliveira in #83
  • chore(deps): add funzzy to devShell dependencies by @cristianoliveira in #84

Full Changelog: v0.2.0...v0.2.1

v0.2.0 - Granular filter, dry-run and shorthand flags

23 Aug 12:48

Choose a tag to compare

Release v0.2.0

Features:

  • Filter Flag for Window Matching: Introduced a new mechanism to filter windows based on app-name, window-title, and app-bundle-id using regex, adding a --filter command-line flag.
  • Logging and IPC Library: Added a logger and upgraded the aerospace-ipc to latest.
  • Dry-Run Mode: Enabled a dry-run mode for commands, allowing for command execution without actioning the changes on windows.
  • Shorthand Flags: Added short hands for common flags

Refactors:

  • Renaming of packages and variables for consistency and clarity.
  • Removing dead code and simplifying regex usage.
  • Ensured consistent command responses across different commands.

Tests:

  • Increased test coverage for various packages, focusing on the querier, summon, and move tests.
  • Test cases for new functionalities like the filter flag.

Chores:

  • Multiple commits focused on updating the code format, and bumping nix hashes and versions to keep dependencies up-to-date.
  • Development experience improvements, such as adding debugging tools and watchers.

Documentation:

  • Updated documentation to cover new features like filter flag usage and dry-run mode.

Detailed Changes:

Command response consistency (move.go, show.go, summon.go):

  • Refactored commands to use a common pattern for filtering windows.
  • Added filter flag support to restrict the operation to specific windows based on properties like window title and app-name.
  • Introduced a --dry-run flag to allow command execution testing without making actual changes.

Nix Packaging (flake.nix, package-default.nix, package-nightly.nix):

  • Updates to Nix package scripts, likely to accommodate new version changes and dependencies (e.g., socat for connection debugging).

Miscellaneous:

  • Bump Go module version for aerospace-ipc.
  • Update Go version dependencies (go.mod, go.sum) to include newer versions and address semantic import versioning.
  • A new .watch.yaml file has been added for configuring tasks like formatting Go code and running tests with gotestsum.
  • Updates to README.md provide additional documentation, explaining configuration assignments for workspaces and monitors.
  • Better CI workflows for releasing binaries with correct version

What's Changed

  • chore(nix): bump nix hashes and version by @github-actions[bot] in #57
  • chore(nix): bump nightly hashes and version by @github-actions[bot] in #58
  • chore(nix): bump nightly hashes and version by @github-actions[bot] in #62
  • docs: adds monitor assignment in the recommended config by @cristianoliveira in #63
  • chore(nix): bump nightly hashes and version by @github-actions[bot] in #64
  • feat: enable dry-run for all commands by @cristianoliveira in #69
  • tests: increase coverage for summon and move tests + dry-run by @cristianoliveira in #70
  • chore(nix): bump nightly hashes and version by @github-actions[bot] in #71
  • feat: allow filter flag for more granular window matching by @cristianoliveira in #66
  • refactor: rename package for name consistency and increase test coverage by @cristianoliveira in #72
  • chore(nix): bump nix hashes and version by @github-actions[bot] in #73
  • chore(nix): bump nix hashes and version by @github-actions[bot] in #74

Full Changelog: v0.1.4...v0.2.0

v0.1.4 - Fixes and CI improvments

27 Jun 20:39

Choose a tag to compare

Release Notes

Fixes

  • cmd: Correctly handle exit status of 1 when no matching window patterns are found. (6cb4605)
  • cmd: Update return exit status to 1 for non-matching windows. (4d9d629)
  • show: Prevent setting focus if already focused. (2890963)

Documentation

  • templates: Added more context for bug and feature issue templates. (2319e5c)
  • Corrected grammatical errors in the documentation. (c5e4a94)

Refactoring

  • Message System: Standardized messages for consistency across the application. (d8dc79)

Tests

  • Added a special test logger to assist with debugging. (7270a1e)

Chores

  • ci: Improved git clone process to include more commits for better tracking. (f5c6feb)
  • ci: Skipped hash generation when no code changes detected. (83d7b78)
  • Allowed scripts to run in a worktree. (833bd02)
  • Removed outdated to-do items from the code. (ff7e782)

What's Changed

  • chore(nix): bump nix hashes and version by @github-actions in #42
  • chore(ci): allow running script in worktree by @cristianoliveira in #43
  • fix(show): avoid setting focus when already focused by @cristianoliveira in #44
  • chore(nix): bump nightly hashes and version by @github-actions in #45
  • chore(ci): skip hash generation if no code changes by @cristianoliveira in #49
  • chore(nix): bump nightly hashes and version by @github-actions in #48
  • chore(ci): git clone with more commits by @cristianoliveira in #50
  • chore(nix): bump nightly hashes and version by @github-actions in #51
  • chore(nix): bump nightly hashes and version by @github-actions in #54
  • fix(cmd): fails no matching windows pattern with exit 1 by @cristianoliveira in #56

Full Changelog: v0.1.3...v0.1.4

v0.1.3 - Fixes and performance improvement

09 Jun 15:59

Choose a tag to compare

Release Notes

Feature

  • No new features in this release.

Fixes

  • fix(cmd): Ensure windows are correctly sent to scratchpad.

CI

  • chore: Adds issue template.
  • chore(nix): Several updates to bump nightly hashes and version.

Other

  • refactor(deps): Upgraded socket client and aerospace-ipc.
  • refactor(info): Updated socket path retrieval and module version.
  • refactor: Avoided using internal methods to get socket path.
  • chore: Updated TODO list for improved task tracking.

What's Changed

  • chore(nix): bump nix hashes and version by @github-actions in #30
  • chore(nix): bump nightly hashes and version by @github-actions in #32
  • chore(nix): bump nightly hashes and version by @github-actions in #33
  • chore(nix): bump nightly hashes and version by @github-actions in #34
  • chore(nix): bump nightly hashes and version by @github-actions in #35
  • refactor(deps): upgrade socket client by @cristianoliveira in #36
  • chore(nix): bump nightly hashes and version by @github-actions in #37
  • chore: adds issue template by @cristianoliveira in #40
  • fix(cmd): ensure windows are correctly sent to scratchpad by @cristianoliveira in #41

Full Changelog: v0.1.2...v0.1.3

v0.1.2 - Fixes and increased log coverage

03 Jun 19:21

Choose a tag to compare

What's Changed

  • chore(nix): bump nix hashes and version by @github-actions in #24
  • feat(logs): introduce logging capabilities by @cristianoliveira in #25
  • chore(nix): bump nightly hashes and version by @github-actions in #26
  • docs: add troubleshooting section by @cristianoliveira in #27
  • chore(nix): bump nightly hashes and version by @github-actions in #28
  • fix: handle lengthy socket responses by @cristianoliveira in #29

Full Changelog: v0.1.1...v0.1.2