Releases: ultralytics/actions
v0.0.43 - Update summarize_release.py (#369)
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)
🌟 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
to0.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
- Always retrieve previous tag via API by @glenn-jocher in #368
Full Changelog: v0.0.41...v0.0.42
v0.0.41 - Update summarize_release.py for initial releases (#367)
🌟 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
to0.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
- Standardize license headers in Python files by @pderrenger in #363
- Standardize license headers in TOML/YAML files by @pderrenger in #364
- Bump astral-sh/setup-uv from 4 to 5 in /.github/workflows by @dependabot[bot] in #366
- Bump astral-sh/setup-uv from 4 to 5 by @dependabot[bot] in #365
- Update summarize_release.py for initial releases by @glenn-jocher in #367
Full Changelog: v0.0.40...v0.0.41
v0.0.40 - Update to `ruff>=0.9.1` (#362)
🌟 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:
- 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)
- Updated pip command in GitHub Actions to use
- 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 andruff
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
- Fix retry/action.yml by @glenn-jocher in #354
- Revert retry/action.yml changes by @glenn-jocher in #355
- Update Python retry by @glenn-jocher in #356
- Fix bash retry action by @glenn-jocher in #357
- Fix
uv
install for Ubuntu 24.04 by @glenn-jocher in #358 - Add docstrings to GitHub utils by @glenn-jocher in #359
- Apply
ruff==0.9.0
formatting by @glenn-jocher in #360 - Add prettier arg
--list-different
by @glenn-jocher in #361 - Update to
ruff>=0.9.1
by @glenn-jocher in #362
Full Changelog: v0.0.39...v0.0.40
v0.0.39 - Add more restricted labels (#353)
🌟 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
to0.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
- Disable cache for speed by @glenn-jocher in #351
- Ultralytics Refactor https://ultralytics.com/actions by @glenn-jocher in #352
- Add more restricted labels by @Y-T-G in #353
New Contributors
Full Changelog: v0.0.38...v0.0.39
v0.0.38 - Fix `is_url()` wildcards (#350)
🌟 Summary
Release v0.0.38
improves URL validation compatibility, enhances software reliability with better testing, and updates documentation for clarity. 🚀
📊 Key Changes
- Refined URL Validation (
is_url()
):- Enhanced HTTP headers for broader compatibility with different web server configurations.
- Improved
User-Agent
and wildcard-basedAccept
headers for more robust URL handling.
- Increased Test Coverage:
- Introduced a new example test URL (
bus.jpg
) to validate the functionality ofis_url()
. - Added a test print statement in the main script to demonstrate and verify URL handling behavior.
- Introduced a new example test URL (
- Documentation Update:
- README clarified to specify that Swift code formatting requires the
macos-latest
runner in the workflow setup.
- README clarified to specify that Swift code formatting requires the
- Version Bump: Official transition to version
0.0.38
.
🎯 Purpose & Impact
- Better URL Handling 🌐:
- Strengthens the
is_url()
utility by making it more compatible with diverse web server environments. - Helps avoid issues when verifying links, ensuring smoother web resource validation for users and automated scripts.
- Strengthens the
- Enhanced Reliability 🔍:
- Added test cases and examples bolster confidence in URL-handling functionality while making debugging easier.
- Improved Documentation 📖:
- Clearer README documentation reduces confusion, making it easier for users to configure workflows, particularly those targeting Swift code workflows.
- User Experience Boost 💡:
- These changes collectively lead to more consistent tool performance and a better developer experience.
What's Changed
- Update README.md by @glenn-jocher in #349
- Fix
is_url()
wildcards by @glenn-jocher in #350
Full Changelog: v0.0.37...v0.0.38
v0.0.37 - Update test_urls.py (#348)
🌟 Summary
This update focuses on improving testing reliability, enhancing URL validation, and extending test coverage for better system stability and accurate functionality. 🚀
📊 Key Changes
-
Enhanced CI Workflows:
- Added
fail-fast: false
to ensure tests run across all platforms even if one fails. - Enabled verbose test outputs (
pytest -v
) to make debugging easier. - Introduced better configurations in
pyproject.toml
for test settings, such as skipping unnecessary directories and enablingdoctest
options.
- Added
-
Improved URL Validation Utilities:
- Strengthened URL parsing logic (
is_url
) to better handle malformed or incomplete URLs. - Adjusted regular expressions to refine domain name validation for increased accuracy.
- Strengthened URL parsing logic (
-
Expanded Test Coverage:
- Added test cases for various URL-related functionalities, including markdown links, HTML links, duplicates, case sensitivity, and URLs with queries or fragments.
- Comprehensive edge case handling for invalid, missing, or non-standard URLs ensures robustness.
🎯 Purpose & Impact
- Reliability in Automated Testing:
The improved CI workflow ensures uninterrupted testing across all environments, reducing the chances of missing platform-specific issues. 🎛️ - Better Debugging Experience:
Verbose test outputs and refined configurations make diagnosing failures simpler and faster for developers. 🛠️ - Stronger URL Validation:
More accurate link validation minimizes incorrect detections and guarantees consistency in handling web resources. 🌐 - Broader Test Coverage:
Widespread test additions reduce the risk of undetected bugs while ensuring the system is future-proof against edge cases. 🧪
This update delivers a significant boost to development stability and user experience, especially in ensuring comprehensive and reliable URL functionality. 🙌
What's Changed
- Update test_urls.py by @glenn-jocher in #348
Full Changelog: v0.0.36...v0.0.37
v0.0.36 - Add tests (#346)
🌟 Summary
This release (v0.0.36) introduces a robust testing system with a new GitHub Actions CI workflow, enhances project reliability through improved testing coverage, and updates dependencies for cleaner development. 🚀
📊 Key Changes
- 🛠️ New CI Workflow: Added a GitHub Actions
ci.yml
for testing onubuntu-latest
andmacos-latest
with Python versions 3.12 and 3.13. - ⏰ Scheduled Tests: Introduced daily runs at 00:00 UTC for consistent testing and maintenance.
- 📦 Dependency Updates:
- Removed
"black"
from development dependencies. - Added the
requests
library, enabling future utilities requiring external requests.
- Removed
- ✅ New Tests: Created
test_urls.py
to ensure URL validation using theis_url
function. - 🔄 Version Updated: Bumped project version from 0.0.35 to 0.0.36.
🎯 Purpose & Impact
- Improved Reliability: The new CI system ensures automated and thorough testing across multiple OS and Python environments, minimizing bugs and enhancing maintainability. 🌍
- Streamlined Development: Removing unused dependencies like
"black"
simplifies the setup, whilerequests
opens the door for more robust functionality. ✨ - Enhanced Test Coverage: The new
test_urls.py
ensures core utilities such as URL validation are reliable, reducing potential integration errors. 🔍 - Proactive Maintenance: Scheduled tests help identify and fix issues early, improving project stability for long-term sustainability. 🕒
This release is all about improving the backbone of development—better tools, cleaner code, and reliable testing pave the way for smoother, bug-free future updates. 🚂
What's Changed
- Add tests by @glenn-jocher in #346
Full Changelog: v0.0.35...v0.0.36
v0.0.35 - Update `ruff>=0.8.4` (#343)
🌟 Summary
The v0.0.35
release updates dependencies, optimizes workflows, and improves functionality, security, and compatibility, ensuring a smoother experience for developers and users. 🚀
📊 Key Changes
-
Dependency Updates:
- Upgraded
ruff
to>=0.8.4
(previously>=0.1.6
) for enhanced linting and code quality checks. 📦 - Updated
requests
library to>=2.32.3
for security fixes and improved stability. 🛡️ - Bumped GitHub Action
astral-sh/setup-uv
to v5 for better pipeline efficiency and caching defaults. 🔄
- Upgraded
-
Workflow Enhancements:
- Updated GitHub workflows (
format.yml
andpublish.yml
) to ensure token fallback reliability and utilize the latest action versions. ⚙️ - Optimized formatting and package installation processes for macOS compatibility and minimized redundant installations. 🍎
- Updated GitHub workflows (
-
Code Improvements:
- Broader URL validation support by adding domains like LinkedIn, Twitter, and Google Cloud Storage to the allowlist. 🌐
- Modernized link checking with
requests.head
for better performance and simplified code. 🛠️ - Multi-threaded link validation for faster processing. ⚡
🎯 Purpose & Impact
- Improved Development Efficiency: Keeping dependencies up to date ensures access to the latest features, security enhancements, and compatibility fixes. 🏗️
- Enhanced Reliability: Workflow improvements and better URL validation reduce potential errors and improve robustness in CI/CD pipelines. ✅
- Faster Processing: Multi-threaded URL checking ensures performance remains optimal for large datasets or projects with numerous links. 🚀
- Simplified Maintenance: Streamlining workflows, removing unused dependencies, and modernizing tools make the codebase leaner and easier to manage. 🧹
This release delivers critical quality-of-life updates to developers and reinforces the infrastructure to prevent potential issues while improving speed and adaptability. 📈
What's Changed
- Update format.yml by @glenn-jocher in #338
- Update
is_url
link checking by @glenn-jocher in #341 - Update
check_links_in_string
by @glenn-jocher in #342 - Update requests>=2.32.3 by @glenn-jocher in #344
- Bump astral-sh/setup-uv from 4 to 5 by @dependabot[bot] in #339
- Update format.yml by @glenn-jocher in #345
- Bump astral-sh/setup-uv from 4 to 5 in /.github/workflows by @dependabot[bot] in #340
- Update ruff>=0.8.4 by @glenn-jocher in #343
Full Changelog: v0.0.34...v0.0.35
v0.0.34 - Convert to classes (#336)
🌟 Summary
The v0.0.34 release brings a major refactor to GitHub Actions utilities by transitioning API logic to a new Action
class, streamlining event handling, and simplifying code maintainability while enforcing standardized linting and formatting configurations.
📊 Key Changes
-
🏗️ Transition to
Action
Class- Replaced usage of hardcoded GitHub environment variables with an
Action
class for handling API calls and event data. - Centralized logic for GitHub interactions, such as fetching PR diffs, updating metadata, and executing GraphQL queries.
- Replaced usage of hardcoded GitHub environment variables with an
-
🔄 Enhanced Modularization
- Refactored repository, labeling, and discussion APIs into encapsulated, reusable methods within the
Action
class. - Unified headers and API interaction logic for a more streamlined approach to event processing.
- Refactored repository, labeling, and discussion APIs into encapsulated, reusable methods within the
-
✨ Improved Formatting and Linting
- Added Ruff for Python linting with a 120-character line limit.
- Integrated
docformatter
to ensure consistent docstring wrapping and formatting across the codebase.
-
🧹 Code Cleanup
- Removed unused variables and simplified GraphQL queries, reducing clutter while improving clarity.
- Reorganized exports (
__all__
) to include only relevant functions.
🎯 Purpose & Impact
Purpose:
- Simplify Development: By encapsulating logic in the
Action
class, developers now have a cleaner, modular codebase that’s easier to maintain. - Enhance Standards: Enforced consistent formatting and linting ensures code is readable, professional, and easy to collaborate on.
Impact:
- Streamline Operations: Key GitHub workflows such as auto-labeling and issue triaging are now more efficient.
- Reduced Technical Debt: Refactoring helps future-proof the repository by removing redundancies and improving extensibility.
- Better Collaboration: Formatting and modularization simplify contributions by creating a shared standard for all contributors.
This release empowers developers to interact with GitHub Actions more intuitively while benefiting from improved code quality and maintenance practices. 🚀
What's Changed
- Update first_interaction.py by @glenn-jocher in #334
- Cleanup by @glenn-jocher in #335
- Update pyproject.toml by @glenn-jocher in #337
- Convert to classes by @glenn-jocher in #336
Full Changelog: v0.0.33...v0.0.34