Releases: ni-kismet/systemlink-cli
v0.23.0
v0.23.0 (2026-01-07)
Features
-
feat: add policy management commands
-
docs: document auth policy management commands and examples
-
feat: support workspace name/ID in --workspace-policies option
- Add workspace name resolution using resolve_workspace_id() - Update help text to clarify both name and ID are supported - Improve validation with better error messages - Update README examples to show workspace name usage - All tests passing (44 user tests)
-
fix: Address PR review comments - DRY workspace policy parsing, fix test mocking, add error coverage (#44)
-
Initial plan
-
fix: Address PR review comments - extract helper, fix tests, add error coverage
Co-authored-by: fredvisser 1458528+fredvisser@users.noreply.github.com
Co-authored-by: copilot-swe-agent[bot] 198982749+Copilot@users.noreply.github.com Co-authored-by: fredvisser 1458528+fredvisser@users.noreply.github.com
Co-authored-by: Copilot 198982749+Copilot@users.noreply.github.com
What's Changed
- feat: Add auth policy management commands + docs by @fredvisser in #43
Full Changelog: v0.22.2...v0.23.0
v0.22.2
v0.22.1
v0.22.1 (2026-01-06)
Bug Fixes
- Tag set-value for dates and uint64 (
2936df8)
Full Changelog: v0.22.0...v0.22.1
v0.22.0
v0.22.0 (2026-01-06)
Features
- feat: add tag management commands
What's Changed
- Add tag commands by @fredvisser in #41
Full Changelog: v0.21.0...v0.22.0
v0.21.0
v0.21.0 (2026-01-06)
Features
- Add spec-compliance-notebooks example with notebook publishing support
- Create new example 'spec-compliance-notebooks' that publishes three Jupyter notebooks (Spec Compliance Calculation, Spec Analysis & Compliance Calculation, Specfile Extraction) to SystemLink with File Analysis interface - Move notebooks from Jupyter/ to spec-compliance-notebooks/notebooks/ - Enhance example_provisioner._create_file() to support notebook creation via file_path and notebook_interface properties - Add _create_notebook_from_file() helper to load .ipynb files from example directory and create notebooks with interface assignment - Update example_loader and schema to support 'file' resource type for notebooks - All unit tests pass; no regressions
-
feat: add spec notebook example
-
review feedback
What's Changed
- Add spec compliance notebook example by @fredvisser in #40
Full Changelog: v0.20.1...v0.21.0
v0.20.1
v0.20.1 (2025-12-30)
Bug Fixes
What's Changed
- Include examples in PyInstaller build by @fredvisser in #39
Full Changelog: v0.20.0...v0.20.1
v0.20.0
v0.20.0 (2025-12-19)
Features
-
Phase 1: Example configuration system - loader, CLI, and demo config
-
Add support for new resource types: workflow, work_item, work_order, test_result, data_table, file. Create comprehensive demo-complete-workflow example showing full resource hierarchy (Tier 0-3)
-
doc cleanup and initial reviews
-
prompt updates
-
lint
-
remove openapi schema
-
readme and example list changes
-
fix: Add missing get_base_url mocks and fix mypy type errors in tests
-
fix: Add explanatory comments to bare except clauses in example_provisioner.py
- Added comments explaining why exceptions are silently handled in query/getter methods - These methods fail gracefully (returning None/empty list) when APIs are unavailable - Addresses Copilot PR review comments on 8 bare except clauses across getter methods
What's Changed
- Substring filters for templates/notebooks/webapps by @fredvisser in #37
- Add example CLI workflow, schemas, and review guidance by @fredvisser in #38
Full Changelog: v0.19.1...v0.20.0
v0.19.1
v0.19.1 (2025-12-16)
Bug Fixes
-
Make file delete command consistent with other delete subcommands (#36,
f3c765d) -
Change 'file delete' from positional argument to --id/-i flag
-
All delete subcommands now use consistent --id/-i flag pattern
-
Update tests to use new flag-based syntax
-
Update README documentation with new command syntax
-
All tests passing (34 file tests + linting + type checking)
What's Changed
- fix: make file delete command consistent with other delete subcommands by @fredvisser in #36
Full Changelog: v0.19.0...v0.19.1
v0.19.0
v0.19.0 (2025-12-16)
Features
-
Improve workspace list command with pagination and filtering (
1524f82) -
Add _fetch_all_workspaces() helper with proper pagination using take=100 and skip
-
API's max take parameter is 100, use skip and totalCount for multi-page retrieval
-
Add --filter flag for case-insensitive substring matching on workspace names
-
Update disable_workspace and get_workspace to use pagination helper
-
Update _get_workspace_map to use the helper for consistency
-
Documentation updated with new filtering examples
Changes:
- slcli/workspace_click.py: Added pagination helper and --filter option
- README.md: Updated workspace list command examples with new features
Testing:
- All 266 unit tests passing
- mypy type checking clean
- linting clean
Testing
-
Add comprehensive tests for workspace pagination and filtering (
68adf16) -
test_list_workspaces_with_filter: Test --filter flag with substring matching
-
test_list_workspaces_filter_json: Test --filter with JSON output format
-
test_list_workspaces_pagination: Test pagination with skip/totalCount handling
-
test_list_workspaces_filter_case_insensitive: Test case-insensitive filtering
All tests pass (270 total, +4 new tests) mypy: clean linting: clean
What's Changed
- feat: improve workspace list with pagination and filtering by @fredvisser in #35
Full Changelog: v0.18.0...v0.19.0
v0.18.0
v0.18.0 (2025-12-15)
Features
-
Resolve PR review comments for notebook interface support (
94b39bd) -
Add interface validation in update command before adding to metadata
-
Validate interface early in create command to fail fast on invalid input
-
Simplify properties dict creation in list to avoid empty dicts
-
All tests passing (266 passed), mypy clean, lint clean
-
Notebook interface support (
f3938c8)
What's Changed
- feat: notebook interface support by @fredvisser in #34
Full Changelog: v0.17.0...v0.18.0