8000 Release 3.0.0 · rohaquinlop/complexipy · GitHub
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

3.0.0

Latest
Compare
Choose a tag to compare
@rohaquinlop rohaquinlop released this 16 Jun 02:01
9f91a67

complexipy v3.0.0 Release Notes

We are thrilled to announce the release of complexipy v3.0.0, a major update that brings significant new features, enhancements, and important changes to the complexipy ecosystem. This release focuses on expanding the reach of complexipy with WebAssembly (WASM) support, improving usability with new output options, and strengthening integrations with developer workflows.

⚠️ Breaking Changes

  • Simplified Complexity Threshold: The --max-complexity argument has been removed. complexipy now uses a fixed cognitive complexity threshold of 15. The tool will exit with an error if any function meets or exceeds this threshold. This change simplifies configuration and aligns with established cognitive complexity best practices. To show all functions regardless of their complexity score, use the new --ignore-complexity (-i) flag. (PR #73)

🚀 What's New in v3.0.0

Major Features & Enhancements

  • WebAssembly (WASM) Support
    complexipy's core analysis engine can now be compiled to WebAssembly! This is a game-changer, allowing cognitive complexity analysis to run directly in the browser. This opens up exciting possibilities for interactive web applications and enhances tools like the VSCode extension. (PR #72)

  • JSON Output for Seamless Integrations
    We've introduced a new --output-json (-j) option in the CLI. You can now get complexity analysis results in a machine-readable JSON format, making it easier to integrate complexipy into your scripts and development toolchains. (PR #74)

💻 Command Line Interface (CLI)

  • Enhanced Analysis and Reporting: The CLI has been overhauled for better control and clarity (PR #73):
    • A new --ignore-complexity (-i) flag has been added to display all functions, regardless of whether they exceed the complexity threshold.
    • The --details (-d) option now also affects CSV and JSON outputs, allowing you to generate reports that include all functions or only those exceeding the complexity limit.
    • You can now sort results by complexity score (asc, desc) or by name.

⚙️ Ecosystem & Integrations

This release also strengthens the ecosystem around complexipy, making it easier than ever to integrate into your daily workflow.

  • Pre-commit Hook
    You can now use complexipy as a pre-commit hook to automatically check for code complexity before you commit. This is a great way to enforce code quality standards across your team. The documentation has been updated with clear instructions for easy setup. (PR #75)

  • VSCode Extension
    The complexipy VSCode extension continues to provide real-time complexity analysis directly in your editor, with visual indicators to help you write more maintainable code.

  • GitHub Action
    Automate complexity checks in your CI/CD pipeline with the complexipy GitHub Action. It's a powerful way to ensure that code quality remains high with every pull request.

Full Changelog

0