Skip to content

v0.7.1

Choose a tag to compare

@github-actions github-actions released this 17 Mar 04:23
· 48 commits to main since this release

v0.7.1 (2026-03-17)

Bug Fixes

  • Extract duplicated "folders/" literal to constant in loaders (b292a3e)

SonarCloud S1192: the string "folders/" was duplicated 5 times. Extract to module-level _FOLDER_PREFIX constant.

Co-Authored-By: Claude Opus 4.6 (1M context) noreply@anthropic.com

  • Resolve SonarCloud code quality issues (054bdbe)

Addresses 19 of 31 SonarCloud findings:

S1192 (CRITICAL): Extract duplicated string literals into module-level constants - Added _RESOURCE_PREFIX_PROJECTS, _RESOURCE_PREFIX_FOLDERS, _RESOURCE_PREFIX_ORGS - Added _RESOURCE_PREFIXES tuple and _REFRESH_HELP constant - Replaced all occurrences in cli.py

S1871 (MAJOR): Merge duplicate branches - formatters.py: Merged Folder/Project branches in get_display_path and _get_node_label - parsers.py: Merged hasattr/get and isinstance/dict checks in extract_value

S3358 (MAJOR): Extract nested ternaries into if/else blocks - loaders.py: Refactored folder_parent and project parent_res determination logic

S3776 (CRITICAL): Reduce cognitive complexity with helper extraction - cli.py: Extracted _try_read_cache() from _load_hierarchy() - core.py: Extracted _find_orgless_project() from get_resource_name() - loaders.py: Extracted _build_single_ancestor_chain() from fix_folder_ancestors()

S7504 (MINOR): Remove unnecessary list() call - loaders.py: Changed list(node.folders.values()) to node.folders.values()

S2737 (MINOR): Remove bare except clause - core.py: Removed no-op try/except that just re-raised

S2772 (MINOR): Remove unneeded pass - tests/test_cli.py: Replaced pass with meaningful assertion

S1481 (MINOR): Fix unused variable - tests/test_formatters.py: Changed folders to _ for unused variable

Co-Authored-By: Claude Opus 4.6 noreply@anthropic.com

Testing

  • Add coverage for extracted helper functions (ab315ee)

Add direct tests for:

  • _build_single_ancestor_chain (loaders.py)
  • _find_orgless_project (core.py)
  • _try_read_cache (cli.py)

Coverage improved from 87% to 88%

Co-Authored-By: Claude Opus 4.6 noreply@anthropic.com

  • Add coverage for loader conditional branches and remove dead code (37b7f01)

Cover the refactored if/elif/else branches in load_folders_asset and load_projects_asset that handle fallback parent resolution. Remove unreachable elif/else in the last else-branch where ancestors is guaranteed non-empty.

Co-Authored-By: Claude Opus 4.6 (1M context) noreply@anthropic.com


Detailed Changes: v0.7.0...v0.7.1