Jump to heading Changelog
All notable changes to this project will be documented in this file.
Jump to heading [0.2.6]
Jump to heading Bug Fixes
- Enable rustls-tls for oauth2 crate to support HTTPS token endpoints ✔️
Jump to heading Dependencies
- Update dependency svelte to v5.45.10 ✔️
- Update dependency daisyui to v5.5.13 (#628) ✔️
- Update npm dependencies auto-merge (patch) ✔️
- Update dependency node to 24.12 ✔️
- Update dependency daisyui to v5.5.11 ✔️
Jump to heading [0.2.5]
Jump to heading Bug Fixes
- Resolve race conditions in task output streaming ✔️
Jump to heading Dependencies
- Update dependency svelte to v5.45.8 (#623) ✔️
- Update dependency @sveltejs/kit to v2.49.2 (#622) ✔️
- Update dependency svelte to v5.45.7 ✔️
- Update rust crate reqwest to v0.12.25 ✔️
- Update rust crate tower-http to v0.6.8 ✔️
- Update dependency typescript-eslint to v8.49.0 ✔️
Jump to heading Documentation
- Add new beads for new features ✔️
Jump to heading [0.2.4]
Jump to heading Bug Fixes
- Remove dates from changelog template to avoid timestamp issues ✔️
- Use tag timestamp for changelog dates and clarify release process ✔️
- Clear status line before command exits ✔️
- Add Default implementations for StatusLine and Ui to satisfy clippy ✔️
- Validate token in auth:status and return exit code 1 when invalid (GH#607) ✔️
- Clippy warning in test and strengthen pre-push hook ✔️
- Address code review feedback for HttpError ✔️
- Prioritize explicit access token over cached OAuth tokens in scottyctl ✔️
- Restore frontend/build/.gitkeep to fix CI builds ✔️
- Enable std feature for serde in scotty-types to support String deserialization ✔️
- Add ts-rs tag/content attributes to WebSocketMessage for proper TypeScript generation ✔️
- Address MR feedback - remove duplicate counter, fix naming confusion, optimize hot path ✔️
- Make metrics() return trait object with no-op fallback for tests ✔️
- Restore OAuth session count metrics ✔️
- Refresh app state on task completion for both success and failure ✔️
Jump to heading Dependencies
- Update rust dependencies auto-merge (patch) ✔️
- Update npm dependencies auto-merge (patch) (#611) ✔️
- Update rust crate uuid to v1.19.0 ✔️
- Update rust crate axum-test to v18.4.1 ✔️
- Update otel/opentelemetry-collector docker tag to v0.141.0 ✔️
- Update dependency typescript-eslint to v8.48.1 (#603) ✔️
- Update dependency svelte to v5.45.3 (#600) ✔️
- Update rust docker tag to v1.91 ✔️
- Update rust crate sysinfo to 0.37 ✔️
- Update dependency prettier to v3.7.3 ✔️
- Update dependency svelte to v5.45.2 ✔️
- Update rust dependencies auto-merge (patch) (#597) ✔️
- Update dependency prettier to v3.7.2 ✔️
Jump to heading Documentation
- Close issue tracking for scotty-28453 and scotty-a2dce - GH#607 complete ✔️
- Update issue tracking - close scotty-0791a, scotty-46245, create scotty-28453, scotty-6f06c, scotty-a2dce ✔️
- Track scottyctl auth precedence bug (scotty-a84a4, GH #609) ✔️
- Update AGENTS.md to clarify both telemetry transports can be enabled ✔️
- Clarify that telemetry-grpc and telemetry-http can be enabled simultaneously ✔️
Jump to heading Features
- Preserve HTTP status codes with custom error types ✔️
- Implement metrics tracking for task output streams ✔️
- Implement task output streaming metrics ✔️
- Add no-telemetry feature flag for minimal builds without OpenTelemetry ✔️
Jump to heading Performance
- Optimize compile times by disabling default features and adding telemetry feature flags ✔️
Jump to heading Refactor
- Improve status line cleanup documentation and consistency ✔️
- Improve status messages for auth commands ✔️
- Improve error handling with custom ApiError type ✔️
- Remove duplicate retry logic from scottyctl ✔️
- Move active count atomics from static to OtelRecorder instance ✔️
- Simplify telemetry feature logic and test all configurations in CI ✔️
- Remove redundant inherent methods from OtelRecorder ✔️
Jump to heading Testing
- Add comprehensive test coverage for auth:status token validation ✔️
Jump to heading [0.2.3]
Jump to heading Bug Fixes
- Update pre-release-hook to run from workspace root ✔️
- Resolve changelog generation issues with empty sections and subshell ✔️
- Skip empty version sections in per-crate changelogs ✔️
- Update changelog generation to preserve full version history per crate ✔️
- Correct build badge workflow filename ✔️
- Show error when auth token expired in auth:status ✔️
- Scope rust dependency to HEAD builds only ✔️
Jump to heading Dependencies
- Update rust crate once_cell to v1.21.3 ✔️
- Update rust crate tokio-metrics to 0.4 ✔️
Jump to heading Documentation
- Replace text header with logo in README ✔️
- Update logo to block-style design and remove padding ✔️
- Close scotty-df8eb as won't fix ✔️
- Add comprehensive documentation for domain-based assignments ✔️
- Track documentation tasks for domain-based authorization ✔️
Jump to heading Features
- Implement reproducible changelog generation from scratch ✔️
- Add per-crate filtered changelog generation ✔️
- Add domain-based user matching for Casbin RBAC ✔️
Jump to heading Refactor
- Use Casbin user_match_impl as single source of truth ✔️
- Use Casbin user_match_impl as single source of truth ✔️
- Move Permission enum to scotty-core and iterate over it ✔️
Jump to heading [0.2.1]
Jump to heading Bug Fixes
- Scope rust dependency to HEAD builds only ✔️
Jump to heading Documentation
- Cleanup changelog ✔️
Jump to heading Refactor
- Standardize to single workspace-level changelog ✔️
Jump to heading [0.2.0]
Jump to heading Bug Fixes
- Add Cargo workspace configuration for proper dependency updates ✔️
- Add missing ShellSessionRequest type and generate index.ts ✔️
- Enable TLS support for wss:// connections ✔️
- Implement case-insensitive email matching per RFC 5321 ✔️
- Add allow dead_code attribute to validate_domain_assignment ✔️
- Enable real-time task output streaming in scottyctl ✔️
- Enable real-time task output streaming in scottyctl ✔️
- Improve decompression error handling and size limit enforcement ✔️
- Address PR feedback with proper error handling and security ✔️
- Address PR feedback with tests and security improvements ✔️
- Extract and display error messages from API responses ✔️
- Propagate errors from handlers to tasks ✔️
- Prevent secrets in Docker images and clarify identifier vs token distinction ✔️
- Correct metric names in overview dashboard ✔️
- Reduce VictoriaMetrics retention and disk space threshold ✔️
- Set Y-axis minimum to 0 for memory panels ✔️
- Remove non-functional --workdir option from app:shell command ✔️
- Fix broken doctests after adding lib.rs ✔️
- Suppress dead_code warnings for test utils ✔️
- Resolve clippy warnings for pre-push hook ✔️
- Remove double-wrapping of shell commands ✔️
- Resolve critical TTY mode bugs for interactive shell ✔️
- Add .env file loading support for server configuration ✔️
- Use singleton ShellService across all handlers ✔️
- Add handler for ShellSessionData input ✔️
- Address critical rate limiting issues from PR review ✔️
- Add IP headers to rate limiting integration tests ✔️
- Protect PKCE verifier and CSRF token with MaskedSecret ✔️
- Use placeholder tokens for bearer-tokens ✔️
- Replace hardcoded localhost with configurable frontend base URL ✔️
- Apply constant-time comparison to login handler ✔️
- Replace hardcoded localhost with configurable frontend base URL ✔️
- Apply constant-time comparison to login handler ✔️
- Use constant-time comparison for bearer token validation ✔️
- Apply constant-time comparison to login handler ✔️
- Use constant-time comparison for bearer token validation ✔️
- Replace hardcoded localhost with configurable frontend base URL ✔️
- Generate index.ts with type guards and re-exports ✔️
- Run TypeScript generator from workspace root ✔️
- Run svelte-kit sync before build ✔️
- Point $generated alias to index.ts file explicitly ✔️
- Add $generated path alias for TypeScript generated files ✔️
- Use absolute path from CARGO_MANIFEST_DIR for Docker compatibility ✔️
- Update Dockerfile to use bun.lock instead of bun.lockb ✔️
- Remove tsconfig exclude to fix CI warning ✔️
- Prevent panic on UTF-8 character truncation ✔️
- Normalize URLs to prevent double slashes in API calls (#470) ✔️
- Resolve clippy linting errors in metrics modules ✔️
- Enable HTTP metrics middleware when metrics telemetry is enabled ✔️
- Correct OpenTelemetry metric names in Grafana dashboard ✔️
- Remove resourcedetection processor from otel-collector config ✔️
- Run TypeScript generator from correct working directory ✔️
- Cleanup frontend task output ✔️
- Resolve WebSocket dev mode authentication and security issues ✔️
- Resolve custom actions dropdown reactivity issues ✔️
- Resolve deadlock and lock contention in task management ✔️
- Resolve merge conflicts from main branch ✔️
- Prevent unwanted bindings directory creation ✔️
- Resolve WebSocket integration and task output issues ✔️
- Resolve wildcard scope expansion bug in authorization system ✔️
- Update secure_response_test for removed TaskDetails fields ✔️
- Show container status messages to clients via task output ✔️
- Fix code warning ✔️
- Improve bearer token authentication and error logging ✔️
- Align Casbin model matcher between test and production environments ✔️
- Resolve frontend linting errors ✔️
- Improve authorization security and robustness ✔️
- Resolve clippy warnings and improve code quality ✔️
- Resolve permission-based action button visibility race condition ✔️
- Update OIDC test data and apply code formatting ✔️
- Resolve clap panic in admin permissions test command ✔️
- Centralize user ID logic and fix bearer token authorization ✔️
- Update rust crate tempfile to v3.21.0 ✔️
- Scottyctl bearer token authentication with RBAC ✔️
- Resolve RBAC authorization middleware issues ✔️
- Remove unnecessary assert!(true) statements flagged by clippy ✔️
- Fix task activity indicator animation ✔️
- Resolve TypeScript lint errors and improve type safety ✔️
- Resolve clippy warnings and format code ✔️
Jump to heading CI
- Generate TypeScript bindings before frontend checks in pre-push hook ✔️
- Add TypeScript generation step to frontend build ✔️
- Trigger ci ✔️
Jump to heading Dependencies
- Update dependency svelte to v5.43.15 ✔️
- Update rust dependencies auto-merge (patch) ✔️
- Update otel/opentelemetry-collector docker tag to v0.140.1 ✔️
- Update rust crate tower-http to v0.6.7 (#583) ✔️
- Update rust crate tracing-subscriber to v0.3.20 [security] ✔️
- Update rust crate config to v0.15.15 ✔️
- Update npm dependencies auto-merge (patch) (#438) ✔️
- Update rust crate clap to v4.5.46 (#439) ✔️
- Update dependency typescript-eslint to v8.41.0 ✔️
Jump to heading Documentation
- Add readme to scotty-types ✔️
- Update app:shell documentation to reflect implementation ✔️
- Update frontend README with Scotty-specific documentation ✔️
- Complete CLI documentation with admin and auth commands ✔️
- Complete authorization documentation with admin permissions ✔️
- Clean up intermediate docs and fix OAuth authentication documentation ✔️
- Document task handle behavior and add WebSocket fallback logging ✔️
- Address PR feedback on hybrid auth documentation ✔️
- Add comprehensive hybrid OAuth + bearer token authentication documentation ✔️
- Add documentation for app:logs and app:shell commands ✔️
- Document .env file support for configuration ✔️
- Add comprehensive project documentation ✔️
- Address PR review feedback for rate limiting ✔️
- Add comprehensive rate limiting documentation ✔️
- Document frontend_base_url configuration option ✔️
- Add observability to documentation navigation menu ✔️
- Condense Prometheus compatibility section ✔️
- Add Prometheus compatibility and stack flexibility section ✔️
- Add comprehensive observability documentation (scotty-14) ✔️
- Research OpenTelemetry metrics with OTel Collector + VictoriaMetrics ✔️
- Move progress tracking from docs to beads issues ✔️
- Correct unified output system implementation status ✔️
- Clarify TaskDetails breaking change implementation ✔️
- Update documentation for Phase 3.7 infrastructure optimization ✔️
- Improve OAuth assignments documentation ✔️
- Update CLAUDE.md and PRD with Phase 3.6 completion details ✔️
- Update PRD and CLAUDE.md for Phase 3.5 completion ✔️
- Update PRD and CLAUDE.md to reflect Phase 3 completion ✔️
- Update CLAUDE.md with Phase 2 completion status ✔️
- Document Phase 1 completion and next steps ✔️
- Add code quality reminder to CLAUDE.md ✔️
- Add PRD for unified output system with logs and shell access ✔️
- Enhance bearer token security documentation ✔️
- Update authorization system terminology from groups to scopes ✔️
- Update authorization documentation for RBAC changes ✔️
- Fix CLI command format throughout documentation ✔️
- Add OAuth authentication documentation and update configuration ✔️
Jump to heading Features
- Add ASCII art logo with version and copyright ✔️
- Add validation, tests, and documentation for domain assignments ✔️
- Add domain-based role assignment support ✔️
- Add gzip compression for file uploads in app:create ✔️
- Add .scottyignore support for app:create ✔️
- Support bearer token fallback when OAuth is enabled ✔️
- Add structured audit logging for compliance ✔️
- Propagate exit codes in command mode ✔️
- Add terminal size support for interactive shell ✔️
- Implement interactive shell with raw terminal mode ✔️
- Add app:shell command and refactor service validation ✔️
- Add comprehensive rate limiting metrics ✔️
- Add rate limiting metrics and Grafana dashboard ✔️
- Implement comprehensive API rate limiting ✔️
- Implement session cleanup and comprehensive monitoring ✔️
- Instrument shell service with metrics (scotty-10) ✔️
- Add task output streaming metrics (scotty-16) ✔️
- Add WebSocket metrics instrumentation (scotty-11) ✔️
- Add AppList metrics for application monitoring (scotty-20) ✔️
- Upgrade to OpenTelemetry 0.31 and implement custom HTTP metrics ✔️
- Enhance metrics collection and add HTTP metrics infrastructure ✔️
- Add Tokio runtime metrics to Grafana dashboard ✔️
- Add stable Tokio task metrics tracking ✔️
- Add task metrics and refactor to use dedicated helper functions ✔️
- Add memory usage metrics (scotty-17) ✔️
- Add Grafana dashboard for scotty metrics ✔️
- Make OTLP endpoint configurable via environment variable ✔️
- Instrument log streaming service with OpenTelemetry metrics ✔️
- Add OpenTelemetry metrics module with ScottyMetrics struct ✔️
- Add OpenTelemetry metrics infrastructure with OTel Collector + VictoriaMetrics ✔️
- Implement container log viewer with navigation improvements ✔️
- Add dedicated OutputStreamType variants for status messages ✔️
- Implement real-time task output and WebSocket integration ✔️
- Enhance message types for frontend integration ✔️
- Add TypeScript bindings generation for WebSocket messages ✔️
- Add Zed debug configuration for scotty server ✔️
- Implement real-time task output streaming for Phase 3.6 ✔️
- Implement unified task output streaming system ✔️
- Improve log command UX and add terminal detection ✔️
- Improve log command options for better UX ✔️
- Simplify --timestamps flag to boolean behavior ✔️
- Implement authenticated WebSocket log streaming with improved UX ✔️
- Integrate logs and shell endpoints into API router ✔️
- Implement logs and shell API endpoints ✔️
- Integrate service errors with AppError ✔️
- Add helper methods for container lookup in AppData ✔️
- Implement bollard log streaming and shell services ✔️
- Add WebSocket message types for logs and shell sessions ✔️
- Refactor TaskDetails and TaskManager to use unified output ✔️
- Add unified output system and configuration ✔️
- Add bollard technical spike and findings documentation ✔️
- Add permission-based visibility for custom actions ✔️
- Implement comprehensive permission-based UI access control ✔️
- Implement OIDC profile picture support in user avatars ✔️
- Enhance OIDC user info capture and logging ✔️
- Use email addresses as user identifiers for OAuth users ✔️
- Implement shared admin types and enhance authentication logging ✔️
- Add comprehensive admin API for authorization management ✔️
- Implement comprehensive RBAC authorization system ✔️
- Unify OAuth error handling system and fix device flow polling ✔️
- Consolidate shared functionality and improve OAuth error handling ✔️
- Implement version compatibility check between scottyctl and server ✔️
- Add comprehensive authentication testing for scotty backend ✔️
- Implement complete OAuth device flow for scottyctl ✔️
- Refactor OAuth to OIDC-compliant provider-agnostic system with Gravatar support ✔️
- Implement OAuth session exchange for secure frontend authentication ✔️
- Optimize healthcheck configuration for faster startup ✔️
- Improve OAuth login flow and authentication validation ✔️
- Implement comprehensive OAuth authentication system ✔️
- Implement OAuth authentication system with hybrid auth modes ✔️
Jump to heading Performance
- Check bearer tokens before OAuth to avoid network latency ✔️
- Implement token caching to reduce filesystem access ✔️
Jump to heading Refactor
- Extract task completion logic into shared helper ✔️
- Streamline bearer token check and improve logging context ✔️
- Split monolithic Grafana dashboard into dedicated metric group dashboards ✔️
- Trim ShellSessionData payload in logs ✔️
- Add SessionGuard for panic-safe cleanup ✔️
- Migrate from REST to WebSocket-only implementation ✔️
- Remove unnecessary base64 encoding from PKCE verifier ✔️
- Replace barrel file with inline type guards ✔️
- Update authorization config to use serde_norway ✔️
- Move app metrics into dedicated dashboard row ✔️
- Use spawn_instrumented for consistent Tokio metrics tracking ✔️
- Reorganize observability stack into dedicated directory ✔️
- Consolidate observability stack into main docker-compose.yml ✔️
- Restructure task detail page for consistency ✔️
- Improve log output styling, performance, and controls ✔️
- Unify task completion handlers and fix state management ✔️
- Fix ESLint errors and improve code quality ✔️
- Embed TaskOutput directly in TaskDetails for tight coupling ✔️
- Reduce app state creation duplication in bearer_auth_tests ✔️
- Optimize build system and eliminate type duplication ✔️
- Centralize session management and eliminate token storage duplication ✔️
- Improve messaging consistency and error handling ✔️
- Consolidate message types in scotty-core ✔️
- Restructure handlers into REST and WebSocket modules ✔️
- Reorganize app commands into modular structure and add app:logs command ✔️
- Improve error handling and add helper methods ✔️
- Remove unused get_user_by_token method from AuthorizationService ✔️
- Streamline admin CLI command error handling ✔️
- Remove emojis from admin command success messages ✔️
- Replace authorization groups terminology with scopes ✔️
- Make RBAC configuration mandatory and improve logging ✔️
- Update auth commands to use UI helper and reduce emoji usage ✔️
Jump to heading Security
- Fix domain extraction to prevent bypass via multiple @ symbols ✔️
Jump to heading Styling
- Apply cargo fmt and fix clippy warnings ✔️
- Apply cargo fmt formatting ✔️
- Apply cargo fmt formatting fixes ✔️
Jump to heading Testing
- Add E2E WebSocket integration tests ✔️
- Add comprehensive unit tests for shell feature ✔️
- Add comprehensive tests for logs and shell services ✔️
Jump to heading [0.1.0]
Jump to heading Bug Fixes
- Correct cargo-release README.md path in workspace metadata ✔️
- Increase registry cleanup rate to 100 images per run ✔️
- Improve error reporting and fix env vars in custom actions ✔️
- Restore custom actions dropdown functionality and divider visibility ✔️
Jump to heading CI
- Update docker-cleanup.yml to delete all tags ✔️
Jump to heading Dependencies
- Update traefik docker tag to v3.6 ✔️
- Update dependency typescript-eslint to v8.48.0 ✔️
- Update dependency svelte to v5.43.14 (#578) ✔️
- Update dependency typescript-eslint to v8.47.0 ✔️
- Update dependency @sveltejs/kit to v2.49.0 ✔️
- Update rust dependencies auto-merge (patch) (#577) ✔️
- Update rust crate clap to v4.5.52 (#571) ✔️
- Update dependency svelte to v5.43.8 (#569) ✔️
- Update dependency daisyui to v5.5.5 (#567) ✔️
- Update dependency svelte to v5.43.7 (#566) ✔️
- Update rust crate axum to v0.8.7 (#565) ✔️
- Update dependency daisyui to v5.5.4 (#564) ✔️
- Update dependency @sveltejs/kit to v2.48.5 ✔️
- Update rust crate config to v0.15.19 ✔️
- Update npm dependencies auto-merge (patch) ✔️
- Update dependency daisyui to v5.5.0 ✔️
- Update dependency typescript-eslint to v8.46.4 (#558) ✔️
- Update dependency svelte to v5.43.5 (#555) ✔️
- Update dependency eslint to v9.39.1 ✔️
- Update dependency daisyui to v5.4.7 (#554) ✔️
- Update npm dependencies auto-merge (patch) (#553) ✔️
- Update dependency daisyui to v5.4.4 ✔️
- Update npm dependencies auto-merge (patch) (#548) ✔️
- Update dependency @iconify/svelte to v5.1.0 ✔️
- Update rust crate bollard to v0.19.4 (#540) ✔️
- Update dependency daisyui to v5.3.11 (#539) ✔️
- Update dependency globals to v16.5.0 ✔️
- Update dependency eslint-plugin-svelte to v3.13.0 ✔️
- Update rust docker tag to v1.91 ✔️
- Update dependency @sveltejs/kit to v2.48.4 (#536) ✔️
- Update dependency svelte to v5.43.2 ✔️
- Update rust dependencies auto-merge (patch) (#533) ✔️
- Update dependency @sveltejs/kit to v2.48.3 (#532) ✔️
- Update dependency eslint to v9.38.0 ✔️
- Update dependency node to v24 ✔️
- Update dependency svelte to v5.43.0 ✔️
- Update dependency daisyui to v5.3.10 (#530) ✔️
- Update dependency @sveltejs/vite-plugin-svelte to v6.2.1 ✔️
- Update dependency @sveltejs/kit to v2.48.2 ✔️
- Update npm dependencies auto-merge (patch) (#511) ✔️
- Update dependency @sveltejs/kit to v2.47.3 ✔️
- Update dependency node to 22.21 ✔️
- Update rust crate tokio to v1.48.0 ✔️
- Update rust crate tempfile to v3.23.0 ✔️
Jump to heading Documentation
- Add version to readme ✔️
Jump to heading [0.1.0-alpha.38]
Jump to heading Bug Fixes
- Sanitize service names in autogenerated environment variables ✔️
- Address code review feedback ✔️
- Apply environment variables to all containers, not only public services ✔️
- Normalize URLs to prevent double slashes in API calls (#470) ✔️
- Update dependency @tailwindcss/typography to v0.5.18 ✔️
- Update npm dependencies auto-merge (patch) to v5.0.2 ✔️
- Update rust crate tempfile to v3.22.0 ✔️
- Update dependency @iconify/svelte to v5 ✔️
- Update rust crate tempfile to v3.21.0 ✔️
- Fix UI issues and provide sort handler default ✔️
- Remove unused CustomActionResponse struct ✔️
- Correct method calls for table column modification ✔️
- Correct function call for formatting services commands ✔️
- Rename format_services_command to format_services_commands for clarity ✔️
- Fix iteration and formatting issues in blueprint lifecycle actions ✔️
- Update usage of InspectContainerOptions for compatibility ✔️
Jump to heading CI
- Trigger ci ✔️
- Increase retained container versions for cleanup ✔️
- Update cleanup workflow to new action version ✔️
Jump to heading Dependencies
- Update dependency svelte to v5.41.1 ✔️
- Update dependency vite to v6.4.1 [security] ✔️
- Update rust crate clap to v4.5.50 (#505) ✔️
- Update npm dependencies auto-merge (patch) (#504) ✔️
- Update npm dependencies auto-merge (patch) (#496) ✔️
- Update rust crate zeroize to v1.8.2 ✔️
- Update dependency globals to v16.4.0 ✔️
- Update dependency typescript-eslint to v8.46.1 ✔️
- Update rust crate regex to v1.12.2 ✔️
- Update dependency daisyui to v5.3.2 (#494) ✔️
- Update dependency svelte to v5.40.0 ✔️
- Update dependency daisyui to v5.3.1 ✔️
- Update dependency node to 22.20 ✔️
- Update rust dependencies auto-merge (patch) (#484) ✔️
- Update npm dependencies auto-merge (patch) (#486) ✔️
- Update dependency @sveltejs/kit to v2.46.5 ✔️
- Update dependency svelte to v5.39.3 ✔️
- Update dependency svelte to v5.39.2 ✔️
- Update dependency daisyui to v5.1.13 (#479) ✔️
- Update rust dependencies auto-merge (patch) (#477) ✔️
- Update dependency typescript-eslint to v8.44.0 ✔️
- Update dependency @factorial/docs to v0.5.6 (#476) ✔️
- Update rust dependencies auto-merge (patch) (#474) ✔️
- Update rust dependencies auto-merge (patch) (#473) ✔️
- Update dependency @sveltejs/kit to v2.39.1 (#472) ✔️
- Update dependency svelte to v5.38.10 (#471) ✔️
- Update dependency @sveltejs/kit to v2.39.0 ✔️
- Update dependency svelte to v5.38.9 (#468) ✔️
- Update dependency @sveltejs/kit to v2.38.1 ✔️
- Update dependency eslint-plugin-svelte to v3.12.3 ✔️
- Update dependency daisyui to v5.1.10 ✔️
- Update dependency svelte to v5.38.8 (#461) ✔️
- Update rust crate chrono to v0.4.42 (#459) ✔️
- Update dependency vite to v6.3.6 (#458) ✔️
- Update dependency eslint-plugin-svelte to v3.12.2 (#457) ✔️
- Update dependency @sveltejs/kit to v2.37.1 (#456) ✔️
- Update dependency svelte to v5.38.7 (#454) ✔️
- Update dependency typescript-eslint to v8.42.0 ✔️
- Update dependency @sveltejs/kit to v2.37.0 ✔️
- Update dependency eslint-plugin-svelte to v3.12.1 (#453) ✔️
- Update npm dependencies auto-merge (patch) to v4.1.13 ✔️
- Update dependency eslint-plugin-svelte to v3.12.0 ✔️
- Update dependency svelte to v5.38.6 ✔️
- Update rust dependencies auto-merge (patch) (#446) ✔️
- Update dependency @sveltejs/vite-plugin-svelte to v6.1.4 (#445) ✔️
- Update dependency node to 22.19 ✔️
- Update rust crate tracing-subscriber to v0.3.20 [security] ✔️
- Update rust crate config to v0.15.15 ✔️
- Update npm dependencies auto-merge (patch) (#438) ✔️
- Update rust crate clap to v4.5.46 (#439) ✔️
- Update dependency typescript-eslint to v8.41.0 ✔️
- Update rust crate regex to v1.11.2 (#435) ✔️
- Update dependency @sveltejs/kit to v2.36.2 (#434) ✔️
- Update dependency svelte to v5.38.3 (#433) ✔️
- Update rust crate url to v2.5.7 (#432) ✔️
- Update dependency @sveltejs/kit to v2.36.1 ✔️
- Update dependency eslint to v9.34.0 ✔️
- Update rust crate url to v2.5.6 (#429) ✔️
- Update dependency @sveltejs/kit to v2.36.0 ✔️
- Update rust crate thiserror to v2.0.16 (#428) ✔️
- Update dependency @sveltejs/vite-plugin-svelte to v6.1.3 (#425) ✔️
- Update rust crate serde_json to v1.0.143 (#424) ✔️
- Update dependency @sveltejs/kit to v2.33.0 ✔️
- Update dependency typescript-eslint to v8.40.0 ✔️
- Update dependency node to 22.18 ✔️
- Update dependency svelte to v5.38.2 ✔️
- Update rust crate bcrypt to v0.17.1 ✔️
- Update rust crate uuid to v1.18.0 ✔️
- Update npm dependencies auto-merge (patch) to v4.1.12 ✔️
- Update rust crate thiserror to v2.0.15 ✔️
- Update rust crate async-trait to v0.1.89 (#413) ✔️
- Update dependency @sveltejs/kit to v2.30.1 ✔️
- Update dependency @sveltejs/kit to v2.30.0 ✔️
- Update dependency @sveltejs/kit to v2.29.1 ✔️
- Update frontend dependencies to latest versions ✔️
- Update rust dependencies auto-merge (patch) (#407) ✔️
- Update rust crate reqwest to v0.12.23 (#406) ✔️
- Update dependency @sveltejs/kit to v2.28.0 ✔️
- Update rust dependencies auto-merge (patch) (#403) ✔️
- Update dependency typescript-eslint to v8.39.1 (#402) ✔️
- Update dependency typescript to v5.9.2 ✔️
- Update rust docker tag to v1.89 ✔️
- Update dependency eslint to v9.33.0 ✔️
- Update rust crate clap_complete to v4.5.56 (#397) ✔️
- Update npm dependencies auto-merge (patch) ✔️
- Update dependency @sveltejs/kit to v2.27.2 ✔️
- Update rust crate clap to v4.5.43 ✔️
- Update dependency @sveltejs/kit to v2.27.1 ✔️
- Update dependency typescript-eslint to v8.39.0 ✔️
- Update rust dependencies auto-merge (patch) (#390) ✔️
- Update dependency eslint-plugin-svelte to v3.11.0 ✔️
- Update dependency globals to v16.3.0 ✔️
- Bump form-data from 4.0.1 to 4.0.4 in /docs ✔️
- Update dependency eslint to v9.32.0 ✔️
- Update traefik docker tag to v3.5 ✔️
- Update dependency daisyui to v5.0.50 (#388) ✔️
- Update dependency svelte-check to v4.3.1 ✔️
- Update dependency daisyui to v5.0.47 (#386) ✔️
- Update dependency @sveltejs/kit to v2.26.1 ✔️
- Update dependency typescript-eslint to v8.38.0 ✔️
- Update rust crate serde_json to v1.0.141 (#383) ✔️
- Update dependency eslint-config-prettier to v10.1.8 (#382) ✔️
- Update dependency @sveltejs/kit to v2.24.0 ✔️
- Update dependency typescript-eslint to v8.37.0 ✔️
- Update dependency @sveltejs/kit to v2.23.0 ✔️
- Update dependency eslint to v9.31.0 ✔️
- Update rust docker tag to v1.88 ✔️
- Update dependency @sveltejs/kit to v2.22.5 (#371) ✔️
- Update rust crate thiserror to v2.0.12 (#369) ✔️
- Update rust crate thiserror to v2 ✔️
- Update dependency eslint to v9.30.1 ✔️
- Update rust crate tabled to 0.20.0 ✔️
- Update dependency daisyui to v5.0.46 ✔️
- Update rust dependencies auto-merge (patch) ✔️
- Update rust crate utoipa to v5.4.0 ✔️
- Update dependency @sveltejs/kit to v2.22.4 ✔️
- Update dependency prettier to v3.6.2 ✔️
- Update dependency typescript-eslint to v8.36.0 ✔️
- Update rust crate owo-colors to v4.2.2 (#364) ✔️
- Update dependency eslint-plugin-svelte to v3.9.3 (#361) ✔️
- Update dependency svelte-check to v4.2.2 (#360) ✔️
- Update npm dependencies auto-merge (patch) (#358) ✔️
- Update rust crate bollard to v0.19.1 (#357) ✔️
- Update dependency eslint to v9.29.0 ✔️
- Update dependency @sveltejs/kit to v2.21.5 (#355) ✔️
- Update dependency postcss to v8.5.5 (#354) ✔️
- Update rust crate reqwest to v0.12.20 (#353) ✔️
- Update npm dependencies auto-merge (patch) (#352) ✔️
- Update rust crate clap_complete to v4.5.54 ✔️
- Update rust dependencies auto-merge (patch) ✔️
- Update dependency typescript-eslint to v8.34.0 ✔️
- Update rust crate bollard to 0.19.0 ✔️
- Update dependency @sveltejs/kit to v2.21.3 (#347) ✔️
Jump to heading Documentation
- Document augmented environment variables for blueprint actions ✔️
- Correct typo in middleware section ✔️
- Update CLI documentation with new installation instructions and options ✔️
- Update preferred CLI installation method ✔️
Jump to heading Features
- Migrate core secrets to MaskedSecret (Phase 1) ✔️
- Implement MaskedSecret and SecretHashMap for memory-safe secret handling ✔️
- Replace serde_yml with serde_norway dependency ✔️
- Upgrade frontend to latest major versions ✔️
- Add Traefik middleware support and examples ✔️
- Add custom actions dropdown component for app blueprints ✔️
- Add notification type for completed custom app actions ✔️
- Restructure blueprint actions with unified description format ✔️
- Add blueprint:info command and action descriptions ✔️
- Add support for custom actions on apps ✔️
Jump to heading Refactor
- Migrate environment variables to SecretHashMap ✔️
- Simplify lifecycle action handling ✔️
- Update import path for InspectContainerOptions ✔️
Jump to heading Styling
- Normalize indentation in app.css ✔️
- Apply new Rust format string syntax ✔️
- Reformat confirmation prompt for clarity ✔️
Jump to heading Testing
- Add serialization and deserialization tests for AppTtl ✔️
Jump to heading [0.1.0-alpha.37]
Jump to heading Bug Fixes
- Try to fix homebrew formula ✔️
Jump to heading [0.1.0-alpha.36]
Jump to heading Bug Fixes
- Try to fix homebrew formula ✔️
Jump to heading [0.1.0-alpha.35]
Jump to heading Bug Fixes
- Try to fix homebrew formula ✔️
Jump to heading [0.1.0-alpha.34]
Jump to heading CI
- Rewrite Homebrew formula publishing workflow ✔️
- Use new token for brew ✔️
Jump to heading Dependencies
- Update dependency @sveltejs/kit to v2.21.2 (#345) ✔️
Jump to heading [0.1.0-alpha.33]
Jump to heading Bug Fixes
- Add SecureJson wrapper to mask sensitive env vars in API responses ✔️
- Update rust dependencies auto-merge (patch) (#343) ✔️
Jump to heading Dependencies
- Add tempfile as a dev dependency ✔️
- Update npm dependencies auto-merge (patch) (#342) ✔️
- Update dependency eslint to v9.28.0 ✔️
- Update dawidd6/action-homebrew-bump-formula action to v4 ✔️
Jump to heading [0.1.0-alpha.32]
Jump to heading Bug Fixes
- Reduce lock scope in wait_for_all_containers_handler ✔️
- Remove duplicate WaitForAllContainers handler ✔️
- Add container readiness check and improve Drush commands ✔️
- Update rust dependencies auto-merge (patch) (#337) ✔️
Jump to heading CI
- Combine release and Homebrew publishing workflows ✔️
Jump to heading Dependencies
- Update dependency typescript-eslint to v8.33.0 ✔️
- Update dependency daisyui to v5.0.43 ✔️
Jump to heading Documentation
- Clarify install instructions ✔️
Jump to heading Features
- Wait for containers to be ready before running post-actions ✔️
Jump to heading Refactor
- Improve error handling and simplify collection logic ✔️
- Refactor app_data.rs into modular components ✔️
Jump to heading [0.1.0-alpha.31]
Jump to heading Features
- Update homebrew tap on new releases ✔️
Jump to heading [0.1.0-alpha.30]
Jump to heading Bug Fixes
- Standardize domain hash to 6 fixed-width hex characters ✔️
- Use domain-safe app names when creating domains (Fixes #328) ✔️
- Use domain-safe app names when creating domains (Fixes #328) ✔️
- Make AppContext fields private with getter methods ✔️
- Update rust dependencies auto-merge (patch) (#332) ✔️
- Update rust dependencies auto-merge (patch) (#329) ✔️
- Update rust dependencies auto-merge (patch) ✔️
- Update rust dependencies auto-merge (patch) (#324) ✔️
- Replace atty dependency with std::io::IsTerminal ✔️
Jump to heading Dependencies
- Update npm dependencies auto-merge (patch) (#333) ✔️
- Update dependency daisyui to v5.0.40 (#331) ✔️
- Update dependency daisyui to v5.0.38 (#327) ✔️
- Update dependency eslint-plugin-svelte to v3.9.0 ✔️
- Update dependency globals to v16.2.0 ✔️
- Update rust crate uuid to v1.17.0 ✔️
- Update dependency daisyui to v5.0.37 (#322) ✔️
- Update dependency svelte to v4.2.20 (#321) ✔️
- Update dependency @sveltejs/kit to v2.21.1 (#320) ✔️
- Update dependency eslint to v9.27.0 ✔️
- Update dependency eslint-plugin-svelte to v3.7.0 ✔️
- Update dependency @sveltejs/kit to v2.21.0 ✔️
- Update dependency svelte-check to v4.2.1 ✔️
- Update rust crate owo-colors to v4.2.1 ✔️
- Update rust docker tag to v1.87 ✔️
- Update dependency prettier-plugin-svelte to v3.4.0 ✔️
- Update dependency eslint-plugin-svelte to v3.6.0 ✔️
- Update npm dependencies auto-merge (patch) (#307) ✔️
Jump to heading Features
- Refactor to use shared AppContext with unified UI ✔️
- Add retry mechanism with backoff for API calls ✔️
- Expose public URLs as environment variables to actions ✔️
Jump to heading Refactor
- Refactor app_data.rs into modular components ✔️
Jump to heading [0.1.0-alpha.29]
Jump to heading Bug Fixes
- Remove trailing newlines from UI messages ✔️
- Fix: Change task output from stderr to stdout if it was targeted to stdout ❌
- Include file path in env file parse error message ✔️
- Fix environment variable precedence in app creation ✔️
- Update rust crate tempfile to v3.20.0 ✔️
- Support binary file handling in file reading ✔️
- Enhance error messages for root folder path resolution ✔️
- Update rust crate tempfile to v3.19.1 ✔️
Jump to heading Dependencies
- Update dependency typescript-eslint to v8.32.0 ✔️
- Update dependency globals to v16.1.0 ✔️
- Update rust dependencies auto-merge (patch) (#304) ✔️
- Update dependency eslint-config-prettier to v10.1.5 (#303) ✔️
- Update rust crate tower-http to v0.6.3 (#302) ✔️
- Update dependency eslint-config-prettier to v10.1.3 (#300) ✔️
- Update rust crate tokio to v1.45.0 ✔️
- Update rust crate axum to v0.8.4 (#297) ✔️
- Update rust crate axum to 0.8.0 ✔️
- Update traefik docker tag to v3.4 ✔️
- Update rust dependencies auto-merge (patch) ✔️
- Update dependency eslint to v9.26.0 ✔️
- Update npm dependencies auto-merge (patch) (#291) ✔️
- Update rust crate config to 0.15.0 ✔️
- Update dependency daisyui to v5 ✔️
Jump to heading Documentation
- Improve examples in AppData documentation ✔️
Jump to heading Features
- Enhance user interface with status line functionality ✔️
- Enhance status line with emoji indicators ✔️
- Embed frontend files into the executable ✔️
Jump to heading Refactor
- Modularize and reorganize file and parser utilities ✔️
- Implement custom debug for file structure ✔️
- Introduce StatusLine for better status tracking and UI feedback ✔️
- Streamline router setup for improved clarity ✔️
- Upgrade axum to 0.8.1 ✔️
- Improve builder pattern for configuration loading ✔️
Jump to heading [0.1.0-alpha.28]
Jump to heading Features
- Add title management for dynamic page titles ✔️
- Add dynamic page titles across key sections ✔️
- Enhance environment-variable display and add defaults ✔️
Jump to heading Refactor
- Utilize reusable Pill component for status display ✔️
Jump to heading [0.1.0-alpha.27]
Jump to heading Bug Fixes
- Allow test commits to be included in change logs ✔️
Jump to heading [0.1.0-alpha.26]
Jump to heading [0.1.0-alpha.25]
Jump to heading Dependencies
- Update dependency vite to v5.4.19 [security] (#288) ✔️
Jump to heading Refactor
- Change AppSettings from_file to return Option ✔️
Jump to heading Testing
- Add tests for handling edge cases in environment variable parsing ✔️
Jump to heading [0.1.0-alpha.24]
Jump to heading Bug Fixes
- Improve password masking in URI handling ✔️
- Update security scheme to bearerAuth ✔️
- Improve error handling for missing environment variables ✔️
Jump to heading Dependencies
- Update rust crate tabled to 0.19.0 ✔️
- Update rust dependencies auto-merge (patch) ✔️
- Update dependency typescript-eslint to v8.31.1 ✔️
- Update dependency eslint to v9.25.1 (#281) ✔️
- Update rust crate clap to v4.5.37 (#280) ✔️
- Update dependency eslint to v9.25.0 ✔️
Jump to heading Documentation
- Document bearer token authentication with utoipa ✔️
Jump to heading Features
- Display application last checked timestamp ✔️
- Enhance sensitive data handling with URI credential masking ✔️
- Add redaction for sensitive environment variables ✔️
- Add environment variable substitution functionality ✔️
- Enhance Docker Compose validation for environment variables ✔️
- Add support for environment variables in docker-compose validation ✔️
Jump to heading Refactor
- Improve environment variable checking in Docker Compose validation ✔️
- Simplify environment variable checks and service validation ✔️
- Simplify environment variable processing ✔️
- Streamline regex initialization in environment variable processing ✔️
- Enhance docker-compose command execution with better error handling and documentation ✔️
Jump to heading Styling
- Improve readability of conditional statement ✔️
- Format code for consistency and readability ✔️
Jump to heading [0.1.0-alpha.23]
Jump to heading Refactor
- Improve env var parsing logic ✔️
Jump to heading [0.1.0-alpha.22]
Jump to heading Bug Fixes
- Fix crash wehn blueprint cant be found, return proper error now ✔️
- Small syntax fix in svelte-code ✔️
- CI use latest actions for rust ✔️
- CI use latest actions for rust ✔️
- CI use latest actions for rust ✔️
- CI setup ✔️
- Fix some linting errors, setup editorconfig ✔️
Jump to heading Dependencies
- Update npm dependencies auto-merge (patch) (#274) ✔️
- Update dependency typescript-eslint to v8.30.0 ✔️
- Update dependency @sveltejs/kit to v2.20.6 [security] ✔️
- Update rust crate anyhow to v1.0.98 (#271) ✔️
- Update dependency svelte-check to v4.1.6 ✔️
- Update rust crate clap to v4.5.36 (#269) ✔️
- Update dependency eslint-config-prettier to v10.1.2 (#268) ✔️
- Update dependency vite to v5.4.18 ✔️
- Update dependency @sveltejs/kit to v2.20.5 ✔️
- Update dependency @sveltejs/adapter-auto to v6 ✔️
- Update dependency eslint to v9.24.0 ✔️
- Update npm dependencies auto-merge (patch) (#262) ✔️
- Update rust docker tag to v1.86 ✔️
- Bump tokio from 1.42.0 to 1.44.2 ✔️
- Bump openssl from 0.10.70 to 0.10.72 ✔️
- Update dependency eslint to v9.23.0 ✔️
- Update dependency typescript-eslint to v8.29.0 ✔️
- Update dependency vite to v5.4.17 ✔️
- Update dependency eslint-plugin-svelte to v3.5.1 ✔️
- Update rust crate clap to v4.5.35 (#251) ✔️
- Update dependency vite to v5.4.16 [security] ✔️
- Update dependency @sveltejs/kit to v2.20.3 ✔️
- Update rust dependencies auto-merge (patch) (#247) ✔️
- Update dependency vite to v5.4.15 [security] (#245) ✔️
- Update dependency eslint-plugin-svelte to v3.4.0 ✔️
- Bump zip from 2.2.2 to 2.4.1 ✔️
- Update rust crate deunicode to v1.6.1 (#241) ✔️
- Update dependency @sveltejs/kit to v2.19.2 ✔️
- Update rust crate async-trait to v0.1.88 (#239) ✔️
- Update dependency @sveltejs/kit to v2.19.1 (#238) ✔️
- Update rust crate uuid to v1.16.0 ✔️
- Update rust crate reqwest to v0.12.14 (#236) ✔️
- Update dependency eslint-plugin-svelte to v3.1.0 ✔️
- Bump ring from 0.17.8 to 0.17.13 ✔️
- Update rust crate reqwest to v0.12.13 ✔️
- Bump prismjs from 1.29.0 to 1.30.0 in /docs ✔️
- Update rust crate clap to v4.5.32 (#233) ✔️
- Update dependency typescript-eslint to v8.26.1 ✔️
- Update rust crate serde to v1.0.219 (#230) ✔️
- Update dependency autoprefixer to v10.4.21 (#229) ✔️
- Update dependency @sveltejs/kit to v2.19.0 ✔️
- Update dependency eslint to v9.22.0 ✔️
- Update dependency @sveltejs/kit to v2.18.0 ✔️
- Update dependency eslint-config-prettier to v10.1.1 ✔️
- Update dependency svelte-check to v4.1.5 ✔️
- Update dependency eslint-plugin-svelte to v3.0.3 ✔️
- Update rust crate readonly to v0.2.13 (#221) ✔️
- Update dependency typescript-eslint to v8.26.0 ✔️
- Update rust dependencies auto-merge (patch) (#219) ✔️
- Update dependency prettier to v3.5.3 (#218) ✔️
- Update dependency typescript-eslint to v8.25.0 ✔️
- Update dependency eslint to v9.21.0 ✔️
- Update dependency typescript to v5.8.2 ✔️
- Update dependency prettier to v3.5.2 ✔️
- Update npm dependencies auto-merge (patch) (#210) ✔️
- Update dependency globals to v16 ✔️
- Update dependency @sveltejs/vite-plugin-svelte to v5 ✔️
- Update dependency vite to v6 ✔️
- Update rust crate owo-colors to v4.2.0 ✔️
- Update rust crate uuid to v1.15.1 ✔️
- Update rust docker tag to v1.85 ✔️
- Update dependency eslint to v9.21.0 ✔️
- Update dependency globals to v15.15.0 ✔️
- Update opentelemetry packages ✔️
- Update dependency typescript-eslint to v8.25.0 ✔️
- Update dependency typescript to v5.8.2 ✔️
- Update dependency prettier to v3.5.2 ✔️
- Update rust dependencies auto-merge (patch) ✔️
- Update npm dependencies auto-merge (patch) (#195) ✔️
- Update dependency eslint-config-prettier to v10 ✔️
- Update rust crate bcrypt to 0.17.0 ✔️
- Update rust crate tabled to 0.18.0 ✔️
Jump to heading Documentation
- Clarify usage, and prevent some frustration when trying to get things running ✔️
Jump to heading Features
- Add new flag destroy_on_ttl which lets you destroy an app instead of stopping it after the TTL expired. ✔️
- Add dotenv integration and restructure scottyctl command handling ✔️
- Lint + check frontend in ci ✔️
Jump to heading [0.1.0-alpha.21]
Jump to heading Bug Fixes
- Fix middleware setup for traefik config and multiple domains #194 ✔️
- Enable docker registry cleanup ✔️
- Try to fix docker cleanup ✔️
Jump to heading Dependencies
- Update rust crate uuid to v1.13.1 ✔️
- Update dependency tailwindcss to v4 ✔️
- Update rust docker tag to v1.84 ✔️
- Bump nanoid from 3.3.7 to 3.3.8 in /frontend ✔️
- Update dependency @sveltejs/adapter-auto to v4 ✔️
- Update rust dependencies auto-merge (patch) (#182) ✔️
- Update dependency @sveltejs/kit to v2.17.1 ✔️
- Bump openssl from 0.10.68 to 0.10.70 ✔️
Jump to heading Documentation
- Clarify documentation (#181) ✔️
- Clarify autocompletion ✔️
Jump to heading [0.1.0-alpha.20]
Jump to heading Bug Fixes
- Log into registry before trying to run docker run ✔️
- Update dependency @iconify/svelte to v4.2.0 ✔️
- Apply clippy fixes ✔️
- Update npm dependencies auto-merge (patch) ✔️
Jump to heading Dependencies
- Update rust crate uuid to v1.12.1 ✔️
- Update dependency typescript-eslint to v8.21.0 ✔️
- Update rust dependencies auto-merge (patch) ✔️
- Update dependency postcss to v8.5.1 ✔️
- Update dependency vite to v5.4.12 [security] ✔️
- Update dependency @factorial/docs to v0.5.5 ✔️
- Update rust dependencies auto-merge (patch) (#160) ✔️
- Update npm dependencies auto-merge (patch) ✔️
- Update dependency eslint to v9.18.0 ✔️
- Update rust crate axum-tracing-opentelemetry to 0.25.0 ✔️
- Update dependency typescript to v5.7.3 (#165) ✔️
- Update traefik docker tag to v3.3 ✔️
- Update dependency typescript-eslint to v8.19.1 ✔️
Jump to heading Documentation
- Clarify installation from source ✔️
Jump to heading Testing
- Add a test for haproxy and custom domains ✔️
Jump to heading [0.1.0-alpha.19]
Jump to heading Bug Fixes
- Fork slugify to support up to two dashes as separator ✔️
Jump to heading [0.1.0-alpha.18]
Jump to heading Bug Fixes
- Slugify app-names passed to the API -- (Fixes #158) ✔️
Jump to heading [0.1.0-alpha.17]
Jump to heading Bug Fixes
- Fix for wrong traefik config regarding TLS (Fixes #157) ✔️
Jump to heading Dependencies
- Update rust crate async-trait to v0.1.84 (#156) ✔️
- Update rust dependencies auto-merge (patch) (#154) ✔️
Jump to heading Documentation
- Update docs how to create a release ✔️
Jump to heading [0.1.0-alpha.16]
Jump to heading Bug Fixes
- Update rust crate init-tracing-opentelemetry to 0.25.0 (#128) ✔️
Jump to heading Dependencies
- Update dependency typescript-eslint to v8.19.0 (#150) ✔️
- Update rust crate serde to v1.0.217 (#153) ✔️
Jump to heading Documentation
- Fix cli docs ✔️
- Add readmes for all three apps/libs ✔️
- Update readme ✔️
- Update badges ✔️
- Update the readme and remove redundancy ✔️
- Add documentation for shell autocompletion ✔️
Jump to heading Features
- Restructure into workspaces (#152) ✔️
- Add new subcommand to generate completion scripts for shell autocompletion ✔️
Jump to heading [0.1.0-alpha.15]
Jump to heading Dependencies
- Update dependency @sveltejs/kit to v2.15.1 ✔️
Jump to heading [0.1.0-alpha.14]
Jump to heading Bug Fixes
- Update rust crate anyhow to v1.0.95 (#146) ✔️
- Update rust crate serde_json to v1.0.134 (#144) ✔️
- Fix for crash when docker container with specific id is not available (Fixes #139) ✔️
- Recreate loadbalancer config for app:rebuild ✔️
- Rename migrate to adopt also for the cli ✔️
Jump to heading Dependencies
- Update dependency daisyui to v4.12.23 (#149) ✔️
- Update dependency typescript-eslint to v8.18.2 (#148) ✔️
- Update dependency @sveltejs/kit to v2.14.1 (#145) ✔️
- Update dependency @sveltejs/adapter-static to v3.0.8 (#143) ✔️
- Update dependency @sveltejs/kit to v2.13.0 ✔️
- Update dependency @sveltejs/kit to v2.12.2 ✔️
- Update dependency globals to v15.14.0 ✔️
- Update dependency tailwindcss to v3.4.17 (#137) ✔️
- Update dependency typescript-eslint to v8.18.1 (#136) ✔️
- Update dependency eslint to v9.17.0 ✔️
Jump to heading Documentation
- First version of the documentation ✔️
Jump to heading Features
- Add
blueprint:listcommand to scotty cli ✔️
Jump to heading [0.1.0-alpha.13]
Jump to heading Bug Fixes
- Update app detail when needed ✔️
- Check for app-changes every 15 secs ✔️
- Use proper type for AppTtl ✔️
- Handle missing domains in yaml files correctly, print an error message if the settings file couldnt be read ✔️
- Update rust crate serde to v1.0.216 (#129) ✔️
- Update dependency @iconify/svelte to v4.1.0 ✔️
- Update url dependency to prevent dependabot alert #8 ✔️
- Increase default ttl to 7 days ✔️
- Update rust crate init-tracing-opentelemetry to v0.24.2 ✔️
Jump to heading Dependencies
- Update dependency @sveltejs/kit to v2.11.1 ✔️
- Update dependency daisyui to v4.12.22 (#132) ✔️
- Update dependency daisyui to v4.12.21 (#131) ✔️
- Update dependency @sveltejs/kit to v2.10.1 ✔️
Jump to heading Features
- Try to adopt basic_auth data when available ✔️
- Rename app:migrate to app:adopt ✔️
- Show version string in footer ✔️
- Add support for multiple domains and settings in UI ✔️
- Reenable dark theme ✔️
- Support multiple domains for a service (fixes #126) ✔️
- Export env-vars to settings when migrating an app ✔️
Jump to heading [0.1.0-alpha.12]
Jump to heading Bug Fixes
- Update rust crate tokio to v1.42.0 ✔️
- Fix frontend build ✔️
- Update rust crate chrono to v0.4.39 (#118) ✔️
- Update rust crate tokio-stream to v0.1.17 (#115) ✔️
- Update rust crate clap to v4.5.23 (#114) ✔️
- Update rust crate clap to v4.5.22 (#112) ✔️
Jump to heading Dependencies
- Update dependency globals to v15.13.0 ✔️
- Update dependency typescript-eslint to v8.18.0 ✔️
- Update dependency @sveltejs/kit to v2.9.1 ✔️
- Update dependency daisyui to v4.12.20 (#117) ✔️
- Update dependency prettier to v3.4.2 (#113) ✔️
- Update npm dependencies auto-merge (patch) (#110) ✔️
Jump to heading Features
- Apply environment also when running the docker-compose commands, Add a preliminary migrate command to create a .scotty-file ✔️
Jump to heading [0.1.0-alpha.11]
Jump to heading Bug Fixes
- Make 1password config optional in settings-file ✔️
- Update rust crate anyhow to v1.0.94 (#111) ✔️
- Adapt code so it works with new major version of utoipa ✔️
- Update utoipa packages ✔️
- Update rust crate tracing-subscriber to v0.3.19 ✔️
- Update rust dependencies auto-merge (patch) (#100) ✔️
- Update rust dependencies auto-merge (patch) to v0.24.1 (#92) ✔️
- Update opentelemetry packages ✔️
- Update rust crate tabled to 0.17.0 ✔️
- Update rust crate bollard to v0.18.1 (#85) ✔️
- Update rust crate tower-http to v0.6.2 (#83) ✔️
- Update rust crate bcrypt to 0.16.0 ✔️
- Update rust crate serde_json to v1.0.133 (#81) ✔️
- Update rust crate bollard to 0.18.0 ✔️
- Update rust crate axum to v0.7.9 (#78) ✔️
- Update rust crate axum to v0.7.8 (#75) ✔️
- Update rust crate clap to v4.5.21 (#71) ✔️
- Update rust crate serde to v1.0.215 (#68) ✔️
- Update rust crate tokio to v1.41.1 ✔️
- Update opentelemetry packages ✔️
- Update rust crate thiserror to v1.0.69 (#60) ✔️
- Update rust crate anyhow to v1.0.93 ✔️
- Update rust crate thiserror to v1.0.68 ✔️
- Update rust crate thiserror to v1.0.67 ✔️
Jump to heading Dependencies
- Update rust docker tag to v1.83 ✔️
- Update dependency @sveltejs/kit to v2.9.0 ✔️
- Update dependency eslint-plugin-svelte to v2.46.1 ✔️
- Update dependency eslint to v9.16.0 ✔️
- Update dependency prettier to v3.4.1 ✔️
- Update mariadb docker tag to v10.11 ✔️
- Update dependency @sveltejs/kit to v2.8.5 (#99) ✔️
- Update dependency @sveltejs/kit to v2.8.4 (#95) ✔️
- Update dependency typescript-eslint to v8.16.0 ✔️
- Update dependency @sveltejs/kit to v2.8.3 ✔️
- Update dependency prettier-plugin-svelte to v3.3.2 ✔️
- Update dependency svelte-check to v4.1.0 ✔️
- Update dependency @sveltejs/kit to v2.8.2 ✔️
- Update dependency typescript to v5.7.2 ✔️
- Update dependency typescript-eslint to v8.15.0 ✔️
- Update dependency eslint to v9.15.0 ✔️
- Update dependency svelte-check to v4.0.9 ✔️
- Bump cross-spawn from 7.0.3 to 7.0.5 in /frontend ✔️
- Update dependency svelte-check to v4.0.8 (#74) ✔️
- Update dependency tailwindcss to v3.4.15 (#73) ✔️
- Update npm dependencies auto-merge (patch) (#69) ✔️
- Update dependency @sveltejs/kit to v2.8.0 ✔️
- Update dependency prettier-plugin-svelte to v3.2.8 ✔️
- Update dependency svelte-check to v4.0.7 ✔️
- Update dependency typescript-eslint to v8.14.0 ✔️
- Update dependency vite to v5.4.11 ✔️
- Update dependency postcss to v8.4.48 ✔️
- Update dependency svelte-check to v4.0.6 ✔️
- Update dependency @sveltejs/kit to v2.7.7 ✔️
- Update dependency @sveltejs/kit to v2.7.6 ✔️
- Update dependency globals to v15.12.0 ✔️
- Update dependency typescript-eslint to v8.13.0 ✔️
- Update dependency @sveltejs/kit to v2.7.5 ✔️
- Update dependency typescript-eslint to v8.12.2 ✔️
Jump to heading Documentation
- Update readme and section about notifications ✔️
Jump to heading Features
- Implement gitlab MR notifications, smaller code restructuring ✔️
- Implement initial notification service ✔️
- Finish add/remove notification logic in scottyctl and api ✔️
- Implement initial notification service ✔️
- Implement initial notification service ✔️
- Implement initial notification service ✔️
- Implement initial notification service ✔️
- Onepassword integration (#91) ✔️
- 1password-connect integration ✔️
- Create apic-call supports payload up to 50M, configurable via settings. ✔️
- Add option to allow robots for scottyctl create ✔️
Jump to heading [0.1.0-alpha.10]
Jump to heading Bug Fixes
- Cleanup will also work with unsupported apps ✔️
- Increase default cleanup ttl to 7 days ✔️
- Update rust crate anyhow to v1.0.92 ✔️
- Update rust crate thiserror to v1.0.66 ✔️
- Update rust dependencies auto-merge (patch) ✔️
Jump to heading Dependencies
- Update dependency @sveltejs/kit to v2.7.4 ✔️
- Update dependency eslint to v9.14.0 ✔️
- Update dependency typescript-eslint to v8.12.1 ✔️
- Update dependency typescript-eslint to v8.12.0 ✔️
- Update dependency daisyui to v4.12.14 (#39) ✔️
Jump to heading Documentation
- Better help texts ✔️
- Add clarifying comment on how to map the apps folder into the docker-container ✔️
Jump to heading Features
- Try to get registry from docker metadata for legacy apps and use that when needed ✔️
- Add support for custom domain per service ✔️
- Allow separate blueprint config files in config/blueprints ✔️
- Add ttl-option for scottyctl create ✔️
Jump to heading [0.1.0-alpha.9]
Jump to heading Bug Fixes
- Update rust crate regex to v1.11.1 ✔️
- Update rust crate config to v0.14.1 ✔️
- Frontend app list did not update on changes, made reactive ✔️
- Update rust dependencies auto-merge (patch) ✔️
Jump to heading Dependencies
- Update dependency @sveltejs/adapter-auto to v3.3.1 ✔️
- Update dependency typescript-eslint to v8.11.0 ✔️
- Update dependency @sveltejs/adapter-static to v3.0.6 ✔️
- Update dependency @sveltejs/kit to v2.7.3 ✔️
- Update dependency vite to v5.4.10 ✔️
Jump to heading Features
- Add unsupported status to Apps, prevent running commands against unsupported apps ✔️
- Validate docker-compose for the create task better ✔️
- Expose version via API and CLI for both ctl and server ✔️
Jump to heading [0.1.0-alpha.8]
Jump to heading CI
- Fix cross compiling for linux, disable linux arm for now ✔️
Jump to heading [0.1.0-alpha.7]
Jump to heading CI
- Fix cross compiling for linux ✔️
Jump to heading [0.1.0-alpha.6]
Jump to heading Bug Fixes
- Update rust crate serde to v1.0.211 ✔️
- Update rust crate serde_json to v1.0.132 ✔️
- Update rust crate serde_json to v1.0.131 ✔️
- Update rust dependencies auto-merge (patch) ✔️
- Update rust crate uuid to v1.11.0 ✔️
- Update rust dependencies auto-merge (patch) (#3) ✔️
Jump to heading CI
- Fix cross compiling for linux ✔️
- Do not run ci actions in parallel ✔️
- Fine-tune docker cleanup ✔️
- Add docker cleanup action, dry-run for now ✔️
- Remove arm64 docker builds again, as they are slow as hell ✔️
- Remove openssl again, as it breaks docker-builds ✔️
Jump to heading Dependencies
- Update dependency @sveltejs/kit to v2.7.2 ✔️
- Update mariadb docker tag to v11 ✔️
- Update dependency eslint to v9.13.0 ✔️
- Update docker/build-push-action action to v6 ✔️
- Update rust docker tag to v1.82 ✔️
- Update docker/setup-buildx-action action to v3 ✔️
- Update docker/login-action action to v3 ✔️
- Update actions/checkout action to v4 ✔️
- Update dependency typescript-eslint to v8.10.0 ✔️
Jump to heading Features
- Smaller improvements to the frontend ui ✔️
Jump to heading [0.1.0-alpha.5]
Jump to heading CI
- Add openssl to dependencies to fix problem with cross-compilation in ci ✔️
Jump to heading Documentation
- Document how to create a new release ✔️
Jump to heading [0.1.0-alpha.4]
Jump to heading CI
- Enable changelog for ci changes ✔️