Skip to content

Releases: Matejkob/swift-macro-compatibility-check

v1.0.1

25 Sep 18:37
04caea6
Compare
Choose a tag to compare

What's Changed

  • Add new swift-syntax version–600.0.1 by @Matejkob in #13

Full Changelog: v1.0.0...v1.0.1

v1.0.0

20 Sep 19:48
25b8ad0
Compare
Choose a tag to compare

Key Features:

  • Version Compatibility Testing: Automatically checks the compatibility of your Swift package with various swift-syntax versions.

    • Supports all versions from 509.0.0 to 600.0.0.
    • Option to check either all versions or major versions only.
  • Test Automation:

    • Optional flag (--run-tests) to run your unit tests after resolving and building each swift-syntax version.
  • Flexible Configurations:

    • Flag to run checks against all versions or major versions only (--major-versions-only).
    • Option to enable verbose mode (--verbose) for detailed output, making it easier to debug issues.
  • Detailed Summary:

    • The action provides a comprehensive summary of compatibility results, listing both successful and failed versions with clear messaging.
  • Color-Coded Output:

    • Makes use of color-coded console output to highlight key information, such as successful builds (green), skipped tests (yellow), and failures (red).

Usage:

To integrate this Action into your workflow, add the following snippet to your GitHub Actions .yml file:

name: Swift Macro Compatibility Check

on:
  push:
    branches:
      - main
  pull_request:
    branches:
      - main

jobs:
  compatibility-check:
    runs-on: macos-latest
    steps:
    - name: Checkout code
      uses: actions/checkout@v3

    - name: Run Swift Macro Compatibility Check
      run: |
        ./swift-macro-compatibility-check.sh --run-tests --major-versions-only --verbose

Inputs:

  • --run-tests: Run your Swift package tests after building each swift-syntax version.
  • --major-versions-only: Limit compatibility checks to major versions of swift-syntax.
  • --verbose: Output detailed build and test logs to assist in debugging.

v0.1.0

29 Jun 19:06
170995c
Compare
Choose a tag to compare

This is the initial beta release of the Swift Macro Compatibility Check GitHub Action.

Features

  • Automatically checks Swift package compatibility with multiple swift-syntax versions
  • Supports all swift-syntax versions from 509.0.0 to 510.0.2
  • Option to test only against major versions (509.0.0 and 510.0.0)
  • Configurable test execution
  • Verbose output option for detailed build and test logs

Key Benefits

  • Ensures your Swift macros work across different swift-syntax versions
  • Helps prevent dependency conflicts in the Swift ecosystem
  • Simplifies the process of testing macro compatibility

How to Use

Add this action to your GitHub workflow:

- name: Run Swift Macro Compatibility Check
  uses: Matejkob/swift-macro-compatibility-check@v0.1.0

For more detailed usage instructions and configuration options, please refer to the README.

Feedback

As this is a beta release, we welcome your feedback and bug reports. Please open an issue on the GitHub repository if you encounter any problems or have suggestions for improvements.