1
0
Fork 0
mirror of https://github.com/imjasonh/apidiff-action synced 2026-07-06 22:52:43 +00:00
Commit graph

55 commits

Author SHA1 Message Date
Jason Hall
61eca62053 chore: use node test runner 2025-08-08 18:20:53 -04:00
dependabot[bot]
bfa2dc902b
build(deps-dev): bump lint-staged in the development-dependencies group (#13)
Bumps the development-dependencies group with 1 update: [lint-staged](https://github.com/lint-staged/lint-staged).


Updates `lint-staged` from 16.1.2 to 16.1.4
- [Release notes](https://github.com/lint-staged/lint-staged/releases)
- [Changelog](https://github.com/lint-staged/lint-staged/blob/main/CHANGELOG.md)
- [Commits](https://github.com/lint-staged/lint-staged/compare/v16.1.2...v16.1.4)

---
updated-dependencies:
- dependency-name: lint-staged
  dependency-version: 16.1.4
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: development-dependencies
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-08-04 04:53:25 +00:00
Jason Hall
37a808e3a3
Merge pull request #12 from imjasonh/add-dependabot-auto-merge
Add workflow to auto-merge Dependabot PRs
2025-07-30 15:25:29 -04:00
Jason Hall
60052f4ed3
Merge branch 'main' into add-dependabot-auto-merge 2025-07-30 15:24:51 -04:00
Jason Hall
845b729cd2
Add workflow to auto-merge Dependabot PRs
This workflow automatically enables auto-merge for Dependabot PRs that
contain patch or minor version updates. Major updates are skipped as
they may contain breaking changes.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-07-30 15:21:53 -04:00
Jason Hall
57397487bc
Merge pull request #11 from imjasonh/fix-dist-folder
Fix critical issue: commit dist/index.js
2025-07-30 11:03:07 -04:00
Jason Hall
422a3478df
fix: improve dist update messaging and ensure proper CI flow
- Add clear message when dist is auto-updated
- Exit with code 1 to prevent auto-merge of out-of-date dist
- This ensures the PR must pass CI again after dist update
2025-07-30 11:01:34 -04:00
Jason Hall
cf69be2f04
refactor: consolidate dist checking and updating into ci.yml
- Moves all dist functionality into the main CI workflow
- Checks dist on every CI run
- Auto-updates dist on PRs from same repo
- Fails with clear instructions for fork PRs
- Simplifies workflow structure
2025-07-30 11:00:34 -04:00
Jason Hall
1d4800cfa2
refactor: combine dist workflows into single dist.yml
- Merges check-dist and update-dist into one workflow
- For PRs from same repo: automatically updates dist if needed
- For PRs from forks: fails with clear instructions
- For pushes to main: just checks and fails if out of date
- Adds PR comment when dist is auto-updated
2025-07-30 10:55:12 -04:00
Jason Hall
f90a1c237c
docs: document automatic dist updates 2025-07-30 10:16:17 -04:00
github-actions[bot]
82a5da160f chore: update dist 2025-07-30 14:14:35 +00:00
Jason Hall
e6fd309a7b
fix: skip hooks when updating dist in CI
- Add --no-verify to skip pre-commit hooks
- Prevents ESLint errors from blocking dist updates
2025-07-30 10:13:15 -04:00
Jason Hall
5479fe6adc
feat: add update-dist workflow for automatic dist updates
- Runs on PRs to automatically update dist if needed
- Can also be triggered manually via workflow_dispatch
- Only runs on PRs from the same repo (not forks)
2025-07-30 10:10:33 -04:00
Jason Hall
f9e2109299
feat: add check-dist workflow based on actions/javascript-action
- Uses exact same approach as official GitHub template
- References .node-version file for consistency
- Uses standard git diff options
2025-07-30 10:08:38 -04:00
Jason Hall
2dc724bd9b
fix: remove check-dist workflow and add contributing guide
- The check-dist workflow has OS-specific build differences
- Add CONTRIBUTING.md to document the build process
- Developers must manually run 'npm run build' before committing
2025-07-30 10:01:03 -04:00
Jason Hall
36bb228576
fix: use more aggressive whitespace ignoring in check-dist
- Ignore all whitespace differences to handle OS-specific formatting
- This prevents false positives from macOS vs Ubuntu build differences
2025-07-30 09:58:47 -04:00
Jason Hall
b91371174f
refactor: simplify dist management to match GitHub Actions template
- Remove pre-commit hooks for building/checking dist
- Add check-dist.yml workflow that validates dist in CI
- This matches the approach used by actions/javascript-action
- Eliminates OS-specific build differences affecting commits
2025-07-30 09:53:16 -04:00
Jason Hall
c8230cc936
fix: make pre-commit scripts work in CI without nvm
- Check if already on Node 20 before trying to use nvm
- This fixes CI where nvm is not available but Node 20 is already set
2025-07-30 09:35:56 -04:00
Jason Hall
113224a225
fix: ensure pre-commit hooks use Node 20
- Create dedicated scripts for pre-commit hooks that source nvm
- Ensure dist is always built with Node 20 to match CI environment
- This prevents Node version mismatches between local and CI builds
2025-07-30 09:32:45 -04:00
Jason Hall
051f997977
Enforce Node 20 in pre-commit hooks
- Add Node version check to build-dist pre-commit hook
- Create helper script to switch to Node 20
- Update documentation with clear instructions
- Fix YAML syntax in pre-commit config

This ensures dist is always built with Node 20, preventing CI failures
due to version mismatches.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-07-30 09:22:44 -04:00
Jason Hall
f2b49d3bf2
Remove automated build workflow, require local builds
- Remove build-dist.yml workflow
- Update documentation to clarify local build requirement
- Keep pre-commit hooks to ensure dist is always up to date

This ensures developers build dist locally with the correct Node version
before committing, which is checked by CI.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-07-30 09:17:40 -04:00
Jason Hall
9f05344e16
Configure Node.js v20 for local development
- Add .node-version and .nvmrc files specifying Node 20.9.0
- Add engines field to package.json requiring Node 20
- Re-enable dist build/check hooks in pre-commit
- Add build-dist workflow for automated builds with Node 20
- Update documentation with Node version requirements

This ensures consistent builds between local development and CI.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-07-30 09:13:03 -04:00
Jason Hall
1cabe34a14
Standardize on Node.js v20 and disable dist checks
- Keep action.yml using node20 (GitHub Actions supported version)
- Document requirement to use Node v20 for development
- Disable pre-commit dist build/check hooks since output varies between Node versions
- Update CLAUDE.md with Node version requirements

This ensures consistency between local development and CI.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-07-30 09:02:24 -04:00
Jason Hall
4fb67b86d5
Re-enable check-dist hook now that dist/ is committed 2025-07-30 08:56:03 -04:00
Jason Hall
25b3f0a37e
Prepare to commit dist/index.js
- Remove dist/ from .gitignore
- Exclude dist/ from pre-commit hooks
- Exclude *.md from prettier formatting
- Update CLAUDE.md with build documentation
- Temporarily disable check-dist hook

This prepares for committing the compiled dist/index.js file.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-07-30 08:55:35 -04:00
Jason Hall
a627281753
Remove release workflow (#10)
The release workflow is not needed when creating releases through
GitHub's UI. The workflow was failing because:

1. Creating a release in GitHub UI automatically creates the tag
2. The tag creation triggers the workflow
3. The workflow tries to create a release that already exists

Since releases are being created manually through the UI, this
workflow adds no value and only causes confusion with failures.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-authored-by: Claude <noreply@anthropic.com>
2025-07-30 12:45:42 +00:00
Jason Hall
75baff3043
Add CLAUDE.md for Claude Code guidance (#9)
This file provides essential guidance for future Claude instances working
on this repository, including:

- Common development commands
- High-level architecture overview
- Testing structure and local testing instructions
- Build process details
- Key design decisions

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-authored-by: Claude <noreply@anthropic.com>
2025-07-30 12:40:39 +00:00
Jason Hall
ca7b01f792
Merge pull request #8 from imjasonh/exclude-package-lock-from-json-formatting
Exclude package-lock.json from pretty-format-json hook
2025-07-30 08:31:00 -04:00
Jason Hall
796d4dde5c
Exclude package-lock.json from pretty-format-json hook
This prevents Dependabot PRs from failing CI due to package-lock.json
formatting differences. The file is auto-generated by npm and its exact
formatting is not important as long as it's valid JSON.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-07-30 08:29:39 -04:00
Jason Hall
9ad9e36f2c
Merge pull request #6 from imjasonh/dependabot/npm_and_yarn/development-dependencies-648a19f458
Bump the development-dependencies group with 6 updates
2025-07-30 08:28:14 -04:00
Jason Hall
b52db364a6
Fix package-lock.json formatting for pre-commit hooks 2025-07-30 08:26:52 -04:00
Jason Hall
abe2cb62d2
Merge pull request #7 from imjasonh/setup-husky-hooks
Set up husky pre-commit hooks
2025-07-29 18:06:23 -04:00
Jason Hall
deed53e7b8
Add husky pre-commit hook
- Runs lint-staged for automatic formatting of JS/JSON/YAML
- Runs pre-commit for all validation checks
- Ensures code quality before commits reach the repository
- Prevents CI failures due to formatting issues
2025-07-29 18:05:10 -04:00
dependabot[bot]
06055fb27b
Bump the development-dependencies group with 6 updates
Bumps the development-dependencies group with 6 updates:

| Package | From | To |
| --- | --- | --- |
| [eslint](https://github.com/eslint/eslint) | `8.57.1` | `9.32.0` |
| [eslint-config-prettier](https://github.com/prettier/eslint-config-prettier) | `9.1.2` | `10.1.8` |
| [husky](https://github.com/typicode/husky) | `8.0.3` | `9.1.7` |
| [jest](https://github.com/jestjs/jest/tree/HEAD/packages/jest) | `29.7.0` | `30.0.5` |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/jest) | `29.5.14` | `30.0.0` |
| [lint-staged](https://github.com/lint-staged/lint-staged) | `15.5.2` | `16.1.2` |


Updates `eslint` from 8.57.1 to 9.32.0
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v8.57.1...v9.32.0)

Updates `eslint-config-prettier` from 9.1.2 to 10.1.8
- [Release notes](https://github.com/prettier/eslint-config-prettier/releases)
- [Changelog](https://github.com/prettier/eslint-config-prettier/blob/main/CHANGELOG.md)
- [Commits](https://github.com/prettier/eslint-config-prettier/commits/v10.1.8)

Updates `husky` from 8.0.3 to 9.1.7
- [Release notes](https://github.com/typicode/husky/releases)
- [Commits](https://github.com/typicode/husky/compare/v8.0.3...v9.1.7)

Updates `jest` from 29.7.0 to 30.0.5
- [Release notes](https://github.com/jestjs/jest/releases)
- [Changelog](https://github.com/jestjs/jest/blob/main/CHANGELOG.md)
- [Commits](https://github.com/jestjs/jest/commits/v30.0.5/packages/jest)

Updates `@types/jest` from 29.5.14 to 30.0.0
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/jest)

Updates `lint-staged` from 15.5.2 to 16.1.2
- [Release notes](https://github.com/lint-staged/lint-staged/releases)
- [Changelog](https://github.com/lint-staged/lint-staged/blob/main/CHANGELOG.md)
- [Commits](https://github.com/lint-staged/lint-staged/compare/v15.5.2...v16.1.2)

---
updated-dependencies:
- dependency-name: eslint
  dependency-version: 9.32.0
  dependency-type: direct:development
  update-type: version-update:semver-major
  dependency-group: development-dependencies
- dependency-name: eslint-config-prettier
  dependency-version: 10.1.8
  dependency-type: direct:development
  update-type: version-update:semver-major
  dependency-group: development-dependencies
- dependency-name: husky
  dependency-version: 9.1.7
  dependency-type: direct:development
  update-type: version-update:semver-major
  dependency-group: development-dependencies
- dependency-name: jest
  dependency-version: 30.0.5
  dependency-type: direct:development
  update-type: version-update:semver-major
  dependency-group: development-dependencies
- dependency-name: "@types/jest"
  dependency-version: 30.0.0
  dependency-type: direct:development
  update-type: version-update:semver-major
  dependency-group: development-dependencies
- dependency-name: lint-staged
  dependency-version: 16.1.2
  dependency-type: direct:development
  update-type: version-update:semver-major
  dependency-group: development-dependencies
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-29 22:03:33 +00:00
Jason Hall
3d82cf94dd
Merge pull request #5 from imjasonh/add-dependabot
Add Dependabot configuration
2025-07-29 18:02:05 -04:00
Jason Hall
f47f0ff743
Fix formatting in dependabot.yml
- Apply prettier formatting (single quotes)
- Add newline at end of file
2025-07-29 18:00:34 -04:00
Jason Hall
3d17f2e7e8
Add Dependabot configuration
- Enable automatic dependency updates for npm packages
- Enable automatic updates for GitHub Actions
- Group updates to reduce PR noise:
  - Production dependencies in one group
  - Development dependencies in another group
  - All GitHub Actions updates grouped together
- Schedule weekly checks on Mondays
2025-07-29 17:55:14 -04:00
Jason Hall
c6b0ae7b48
Merge pull request #4 from imjasonh/imjasonh-patch-1
Update README.md
2025-07-29 17:41:54 -04:00
Jason Hall
c464ce8241
Update README.md 2025-07-29 17:41:16 -04:00
Jason Hall
6a27c8d063
Merge pull request #2 from imjasonh/convert-to-action
Convert to apidiff-action GitHub Action
2025-07-29 17:35:16 -04:00
Jason Hall
f9bedf8b44
Use pre-commit action in CI
- Replace individual lint/test/build steps with pre-commit action
- Ensures CI runs exactly the same checks as local development
- Includes dist up-to-date check via pre-commit hooks
2025-07-29 17:21:43 -04:00
Jason Hall
805c061497
Fix lint errors and formatting
- Remove unused variables
- Add .eslintignore to exclude dist/
- Apply prettier formatting
- Fix all pre-commit hook issues
2025-07-29 17:07:15 -04:00
Jason Hall
e3eca548b6
Fix apidiff path handling for export files
Use relative paths when comparing export files
2025-07-29 17:04:28 -04:00
Jason Hall
99351e17cb
Fix apidiff export path handling
Use relative paths when creating export files in subdirectories
2025-07-29 17:00:26 -04:00
Jason Hall
d05e5461cf
Merge main and resolve conflicts
Keep Node.js-based configuration for both CI and pre-commit
2025-07-29 16:44:48 -04:00
Jason Hall
b92e3a611c
Transform to apidiff-action GitHub Action
- Remove all Go code and replace with Node.js GitHub Action
- Use official golang.org/x/exp/cmd/apidiff tool
- Add PR comment functionality
- Support both git refs and directory comparisons
- Add comprehensive test suite with testdata examples
- Update CI to test action with breaking/safe/clean examples

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-07-29 16:33:49 -04:00
Jason Hall
e99c464ef3
Merge pull request #1 from imjasonh/add-ci-cd
Simplify CI workflow to use pre-commit action
2025-07-29 15:05:05 -04:00
Jason Hall
24ccbeb042
Remove golangci config to support v2
golangci-lint v2.3.0 works best with default configuration

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-07-29 15:01:40 -04:00
Jason Hall
986abe49b3
Fix CI: Install goimports and add golangci-lint to pre-commit
- Add goimports installation to CI workflow
- Add golangci-lint to pre-commit hooks
- Fix deprecated golangci-lint config options (gomnd→mnd, check-shadowing→shadow)
- Remove duplicate issues section in golangci.yml

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-07-29 14:54:53 -04:00
Jason Hall
23799581ad
Simplify CI workflow to use pre-commit action 2025-07-29 14:47:09 -04:00