37 lines
1.7 KiB
Markdown
37 lines
1.7 KiB
Markdown
# Releasing new versions of `exiftool-vendored`
|
|
|
|
1. `git clone` this repo into `~/src`
|
|
|
|
2. On a POSIX machine, clone
|
|
[exiftool-vendored.pl](https://github.com/photostructure/exiftool-vendored.pl)
|
|
into `~/src` (or another common subdirectory)
|
|
|
|
3. On a Windows machine, clone
|
|
[exiftool-vendored.exe](https://github.com/photostructure/exiftool-vendored.exe)
|
|
|
|
4. On POSIX, in `../exiftool-vendored.pl`:
|
|
|
|
1. Run the "check-updates" GitHub Action. If there is a pending update, a PR is generated.
|
|
1. Verify and merge the PR
|
|
1. Run the "release" GitHub Action.
|
|
|
|
5. On Windows, in `...\exiftool-vendored.exe\`:
|
|
(The terminal built into vscode plays with `ncu` and `release-it` a bit nicer than CMD or Windows for Git's terminal)
|
|
|
|
1. `git stash -u && git fetch && git checkout main && npm install && npm run update && npm run test`
|
|
1. Verify diffs are reasonable, and commit
|
|
1. `npx release-it --only-version`
|
|
|
|
6. Finally, back on the POSIX box, release `exiftool-vendored`:
|
|
|
|
1. `cd ../exiftool-vendored.js`
|
|
1. `npm run u`
|
|
1. `npm run mktags ../test-images` # < assumes `../test-images` has the full ExifTool sample image suite
|
|
1. `npm run fmt && npm run lint && npm run docs`
|
|
1. Verify docs were rebuilt successfully at <http://localhost:3000/index.html>
|
|
1. `npm run test`
|
|
1. Verify diffs are reasonable, `git commit` and `git push`
|
|
1. Verify [](https://github.com/photostructure/exiftool-vendored.js/actions/workflows/node.js.yml)
|
|
1. Update the [CHANGELOG.md](https://github.com/photostructure/exiftool-vendored.js/blob/main/CHANGELOG.md)
|
|
1. `npx release-it --only-version`
|