Skip to content

Releases: ultralytics/actions

v0.0.48 - Add 403 and 410 http error codes (#382)

25 Jan 17:43
e0408a0
Compare
Choose a tag to compare

🌟 Summary

This release (v0.0.48) improves handling of HTTP errors during URL validation by introducing a centralized mechanism for managing bad status codes. This update enhances code maintainability, increases reliability, and provides clearer functionality. 🌐🚀

📊 Key Changes

  • 🛠️ Introduced a BAD_HTTP_CODES frozenset to consolidate and manage HTTP error codes used in URL validation (e.g., 404, 500, 503).
  • 🔄 Replaced hardcoded error codes throughout the codebase with the new BAD_HTTP_CODES construct.
  • 🔢 Bumped the version from 0.0.47 to 0.0.48 for clarity in tracking updates.

🎯 Purpose & Impact

  • 🧹 Cleaner Code: Centralizing error codes into a single reusable frozenset improves maintainability and ensures consistency across the project.
  • 🛡️ Improved Reliability: By addressing a broader range of HTTP errors (e.g., 403, 410), URL validation now accounts for additional scenarios, reducing potential failures or false positives.
  • 📈 User-Focused Improvements: Developers benefit from a robust and reliable URL-checking mechanism that is easier to understand and adapt for different applications.

This update ensures better management of HTTP error handling, paving the way for more effective and user-friendly integrations. ✅

What's Changed

Full Changelog: v0.0.47...v0.0.48

v0.0.47 - Revert URL parenthesis fix (#381)

24 Jan 18:46
cd5bde7
Compare
Choose a tag to compare

🌟 Summary

This release improves the way URLs are identified and processed, particularly in Markdown text, by refining the logic and handling edge cases like trailing parentheses and mixed formats.

📊 Key Changes

  • 🔧 URL Parsing Update: Revised the regular expression logic for detecting URLs in Markdown, ensuring better handling of trailing characters and parentheses.
  • 🧪 Expanded Test Coverage: Modified test cases to cover more edge cases, like mixed URL formatting and trailing punctuation.
  • 📈 Version Bump: Updated project version from 0.0.46 to 0.0.47 to reflect these fixes.

🎯 Purpose & Impact

  • Enhanced Reliability: By fixing edge case bugs, URL parsing becomes more precise and less prone to errors—increases workflow stability.
  • 🌟 User Experience Boost: Users can expect smoother behavior when working with complicated link formatting in Markdown or text files.
  • 🛠️ Improved Development Workflow: Developers gain confidence in link handling through stronger validation and testing practices.

This update ensures cleaner and more accurate handling of links, which is crucial for Markdown-heavy documentation, automation workflows, or any application dealing with varying URL formats. 🌐✨

What's Changed

Full Changelog: v0.0.46...v0.0.47

v0.0.46 - Fix parenthesis in broken link checks (#380)

24 Jan 17:18
8ef38fc
Compare
Choose a tag to compare

🌟 Summary

The release of v0.0.46 improves URL parsing and handling, enhances link validation in Markdown and plaintext formats, and refines spell-check and CI tooling to boost developer productivity. 🔧✨


📊 Key Changes

  • Enhanced URL Handling:

    • Updated regex (URL_PATTERN) to correctly parse Markdown links with spaces and parentheses.
    • Expanded test cases covering Markdown with special characters, HTML links, and plaintext URLs.
    • Introduced URL_IGNORE_LIST (frozenset) for efficient handling of URLs needing exclusion during checks.
  • Improved Spell-Check Configuration:

    • Refined codespell settings by ignoring all URIs and adding domain-specific words like "Carmel," "FPR," and "Hach" to reduce false positives.
  • Miscellaneous Improvements:

    • Cleaned up redundant sections of code for better readability and maintainability.
    • Incremented package version to 0.0.46.

🎯 Purpose & Impact

  • 📈 Improved Reliability: The updated regex and tests ensure accurate handling of complex Markdown and plaintext URL structures, reducing broken links and validation errors.
  • ✅ Enhanced Developer Workflow: Streamlined spell-check ignores unnecessary alerts from URIs and domain-specific words, minimizing interruptions during CI processes.
  • 🛠️ Easier Maintenance: More organized and efficient code improves future feature development and debugging efforts.

This release focuses on refining core tooling aspects, benefiting developers by improving link validation accuracy and reducing workflow friction. 🚀

What's Changed

Full Changelog: v0.0.45...v0.0.46

v0.0.45 - `v0.0.45` requests `HEADERS` constant (#374)

19 Jan 00:58
37ce210
Compare
Choose a tag to compare

🌟 Summary

v0.0.45 focuses on enhancing URL validation, processing, and performance through optimized HTTP request handling, reusable headers, and streamlined code structure. 🚀

📊 Key Changes

  • Introduced REQUESTS_HEADERS, a reusable default header for HTTP requests, improving consistency across operations.
  • Refactored the is_url function to include optional session usage for performance gains.
  • Enhanced URL-checking logic to better handle HTTP methods like HEAD and GET with smarter error filtering.
  • Upgraded multi-threaded link-checking to utilize sessions, improving reliability and connection stability.
  • Updated test coverage with new URLs for validation and consistency checks.
  • Standardized URL formatting in documentation/tests by ensuring accurate, redirect-free links.

🎯 Purpose & Impact

  • 📈 Improved Performance: Reduced redundant HTTP initialization with reusable headers and sessions, boosting request efficiency.
  • 🔒 Increased Reliability: Smarter error handling and session usage help maintain consistent link-checking even with complex URLs.
  • 🛠️ Simplified Maintenance: Centralized header definitions make future updates easier and more scalable.
  • ✅ Better Compatibility: Compliance with site restrictions (like blocking automated requests) ensures smoother functionality.
  • 🚀 Enhanced User Experience: Standardized URLs eliminate navigation issues, while robust testing assures high confidence in correctness.

Overall, this update ensures faster, more reliable interactions for both developers and end-users when working with URLs. 🌐

What's Changed

Full Changelog: v0.0.44...v0.0.45

v0.0.44 - `v0.0.44` Improved URL check robustness (#372)

18 Jan 15:40
8a24152
Compare
Choose a tag to compare

🌟 Summary

The v0.0.44 release improves URL verification mechanisms for enhanced accuracy and reliability while refining related testing suites. 🚀

📊 Key Changes

  • Enhanced URL Checking Logic:
    • Strengthened HTTP headers for better server compatibility and user-agent emulation.
    • Added robust handling for HEAD and fallback to GET requests, reducing false negatives when verifying URLs.
    • Introduced handling of "bad response codes" (e.g., 404, 500) to better flag non-functional URLs.
  • Expanded and Refined Test Cases:
    • Included more diverse and real-world URL samples to broaden test coverage.
    • Improved existing tests for accuracy by adjusting expected outcomes.
  • Documentation Fixes:
    • Updated "Code of Conduct" and "Security Policy" links for consistent formatting and better readability.
    • Refined bug report instructions for clarity, simplifying user contributions.
  • Version Update: Package version upgraded from 0.0.43 to 0.0.44.

🎯 Purpose & Impact

  • 🌐 More Reliable URL Validation: Enhanced logic ensures better compatibility with various server configurations, empowering users with accurate URL validation.
  • 🔍 Improved Testing Rigor: Comprehensive testing mitigates potential edge cases, leading to more robust and predictable behavior.
  • 📘 Better User Documentation: Clearer and consistent content enhances usability for both developers and end-users.
  • Smooth User Experience: The fixes help users interact seamlessly with the package, building confidence and utility.

This release is a quality-focused update, ensuring long-term stability and user satisfaction for URL validation functionality. 👍

What's Changed

Full Changelog: v0.0.43...v0.0.44

v0.0.43 - Update summarize_release.py (#369)

16 Jan 21:44
0163cb6
Compare
Choose a tag to compare

It seems that no specific PR details or release differences are provided. Without this information, I can't generate a summary for you. If you could provide more details about the changes in this release, I’d be happy to help! 😊

What's Changed

Full Changelog: 0163cb6...v0.0.43

v0.0.42 - Always retrieve previous tag via API (#368)

16 Jan 16:09
cf8f408
Compare
Choose a tag to compare

🌟 Summary

This release (v0.0.42) introduces an improved automation workflow for release summaries by refining how previous tags are retrieved in the codebase. ✨

📊 Key Changes

  • 🔄 Updated version from 0.0.41 to 0.0.42.
  • ✂️ Removed reliance on the PREVIOUS_TAG environment variable in the release summarization script.
  • 🔧 Introduced get_previous_tag() to dynamically and consistently fetch the previous tag.

🎯 Purpose & Impact

  • 🛠 Simplified Codebase: By removing the dependency on PREVIOUS_TAG, the code is now cleaner, easier to manage, and less error-prone.
  • 🚀 Enhanced Release Automation: Automating the retrieval of previous tags ensures a more reliable and seamless release workflow for developers.
  • 📈 Developer Focused: Minimal direct user impact but provides better project maintainability and developer efficiency in managing releases.

This release refines the behind-the-scenes functionality, ensuring workflows remain smooth and maintainable over time. Perfect for keeping the technical processes streamlined! 🌟

What's Changed

Full Changelog: v0.0.41...v0.0.42

v0.0.41 - Update summarize_release.py for initial releases (#367)

16 Jan 15:58
971c219
Compare
Choose a tag to compare

🌟 Summary

Version v0.0.41 introduces improved Git tagging for release management, standardized license formatting across files, and updated dependencies to maintain compatibility. 🚀


📊 Key Changes

  • 🔧 Improved Git Tag Handling: Updated summarize_release.py to retrieve initial commit SHA when tags are absent, ensuring robust tag identification.
  • 📝 Consistent License Headers: Standardized license headers across Python, YAML, and TOML files.
  • 🔄 Dependency Update: Bumped astral-sh/setup-uv from v4 to v5 for GitHub Actions workflows to optimize configurations.
  • 🔢 Version increment from 0.0.40 to 0.0.41.

🎯 Purpose & Impact

  • Enhanced Release Generation: Ensures release summaries are accurate and reliable, even in repositories without prior tags, streamlining CI/CD workflows.
  • Clearer Licensing: Standardized license formatting improves readability and adheres to best practices for transparency in file metadata.
  • Improved Workflow Efficiency: Dependency updates enhance GitHub Actions performance, leveraging caching by default for faster, more cost-efficient builds.

🌟 Impact: Greater consistency, efficiency, and reliability for all users. 🌟

What's Changed

Full Changelog: v0.0.40...v0.0.41

v0.0.40 - Update to `ruff>=0.9.1` (#362)

13 Jan 20:33
9b0cee5
Compare
Choose a tag to compare

🌟 Summary

The v0.0.40 release incorporates enhancements aimed at improving tool compatibility, code maintainability, CI reliability, and formatting visibility. 🚀


📊 Key Changes

  • Dependency Update: ruff (linter) updated to version >=0.9.1 for improved linting and bug fixes. (PR #362)
  • Enhanced CI Retry Logic:
    • Added a retry workflow for GitHub Actions, ensuring steps automatically retry upon failure. 🛠️ (PRs #354, #355, #357)
    • Improved script execution with robust temporary file handling and cleanup for retries. 🗑️ (PR #356)
  • Improved Package Installation:
    • Updated pip command in GitHub Actions to use --break-system-packages for seamless compatibility across systems like Ubuntu 24.04. (PR #358)
  • Better Formatting Feedback: Integrated the --list-different flag in Prettier to list files with formatting issues without applying changes. ✨ (PR #361)
  • Added Documentation: Enhanced GitHub utility methods with clear docstrings for better understanding. 📚 (PR #359)
  • Streamlined Formatting: Latest Ruff version formatting rules applied for improved code structure. (PR #360)

🎯 Purpose & Impact

  • Improved Reliability in CI: The updated retry logic ensures automated workflows handle transient errors gracefully, saving time during CI runs. 🔄
  • Enhanced Compatibility: Adjustments like the --break-system-packages flag and ruff update boost compatibility, reducing dependency conflicts across environments. 🛠️
  • Better Code Clarity: Improved docstrings, updated linting rules, and streamlined code improve understanding and maintainability for developers contributing to the project. 📖
  • Faster Debugging: With visible formatting discrepancies (via Prettier) and enhanced retry error logs, developers can identify and solve issues faster. 🚀

This release focuses on minor upgrades but delivers significant improvements in workflow efficiency, developer experience, and compatibility. 😊

What's Changed

Full Changelog: v0.0.39...v0.0.40

v0.0.39 - Add more restricted labels (#353)

08 Jan 15:51
6e5f72c
Compare
Choose a tag to compare

🌟 Summary

The v0.0.39 release enhances GitHub workflows by refining label automation, improving action performance, and optimizing code for efficiency. 🚀


📊 Key Changes

  • 🏷️ Extended Excluded Labels: Added more restricted labels (e.g., "research," "non-reproducible," "popular") to exclude them from automatic labeling in issues and PRs.
  • Caching Disabled: Explicitly disabled caching in the GitHub action setup to improve reliability.
  • 🗑️ Code Clean-Up: Removed deprecated Python scripts related to MkDocs and eliminated other redundant logic.
  • 🔄 Version Update: Bumped the action version from 0.0.38 to 0.0.39 for tracking improvements.

🎯 Purpose & Impact

  • Better Label Accuracy: The expanded excluded label list ensures only meaningful labels are automatically applied, reducing mislabeling and keeping GitHub workflows tidy. ✅
  • Streamlined Workflows: Disabling caching minimizes potential issues during action setup, making workflows more predictable and faster. 🚀
  • Improved Maintainability: Removing unused and redundant code cleans up the codebase, making it easier for maintainers to manage and update. 🛠️
  • Higher Efficiency: Optimized functions and simplified logic deliver faster execution and smoother development experiences. 🌟

This release is a quality-of-life improvement for contributors and maintainers, ensuring a more organized and effective development workflow. 💡

What's Changed

New Contributors

Full Changelog: v0.0.38...v0.0.39