Skip to content

Conversation

@mrbandler
Copy link
Owner

Description

Adds space initialization and XDG compliant configuration.

Type of Change

  • 🐛 Bug fix (non-breaking change that fixes an issue)
  • ✨ New feature (non-breaking change that adds functionality)
  • 💥 Breaking change (fix or feature that would cause existing functionality to change)
  • 📚 Documentation (changes to documentation only)
  • 🔧 Refactor (code changes that neither fix a bug nor add a feature)
  • 🧪 Tests (adding or updating tests)
  • 🏗️ CI/Build (changes to CI configuration or build process)

Testing

  • I have run cargo test --workspace --all-features

This includes the emergence of the abstraction pattern used within the
core library.

Idea is to always work from a trait which defines the interface, thus
allowing a default implemenation to be implemented while still being
open to easily add new implemenations and proper unit testing without
the hassle of too much mockery.
Also allowed unused license execption, since it only originates from the
project's crates.
The path locator will be implemented once the configuration system is in
place.
Also introduces the command trait and common global arguments for each
sub-command.
Previously when the given path did not exist a error was reported.
Currently works with two files:
- ~/.config/flow/config.json > Holds all user defined global settings
- ~/.config/flow/spaces.json > Holds registered spaces and currently
active one via `flow open` CLI
Also includes some minor refactoring to make the code more readable.
Common arguments like Output and Space no longer control the logging
behaviour based on the given arguments.
@mrbandler mrbandler self-assigned this Jan 21, 2026
@mrbandler mrbandler merged commit ac8c66d into main Jan 21, 2026
24 checks passed
@mrbandler mrbandler deleted the feat/core branch January 21, 2026 20:08
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants