Commit graph

184 commits

Author SHA1 Message Date
f63fa9d864 ci: add GitHub Pages deployment 2023-12-18 15:32:53 +01:00
665f0ad9cf docs: fix some faulty links 2023-12-18 15:32:53 +01:00
5911331889 docs(generators): add some documentation for generator plugins 2023-12-18 15:32:53 +01:00
13e370362a docs: fix some links 2023-12-18 15:32:53 +01:00
7da778c767 docs(reporters): write some documentation for the reporters 2023-12-18 15:32:53 +01:00
1843bf893d docs: remove staggering of cards 2023-12-18 15:32:53 +01:00
43f4df5f37 docs(style): use Tailwind to customize the docs colors 2023-12-18 15:32:53 +01:00
bf52bd0d3c docs(commands): use more idiomatic commands per package manager 2023-12-18 15:32:53 +01:00
418737f97d docs: add logo 2023-12-18 15:32:53 +01:00
445fe69e60 docs: update all command docs with package manager variants 2023-12-18 15:32:53 +01:00
1fc24269f4 docs: add a basic FAQ section 2023-12-18 15:32:53 +01:00
2a82897ba8 docs: add documentation for the commands: up, list, new and remove 2023-12-18 15:32:53 +01:00
c460ae7459 docs: split the getting started guide into two separate pages in the "introduction" section 2023-12-18 15:32:53 +01:00
99d189aeb9 docs: move all plugin types under the same "Plugins" category 2023-12-18 15:32:53 +01:00
d5c6e9b1db docs: first commit for the docs 2023-12-18 15:32:53 +01:00
987374dbd5
chore(release): version packages (#43)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2023-12-15 14:43:10 +01:00
cae6d11d53
feat(types): move Emigrate types to separate package and improve types (#41)
* feat(types): move Emigrate types to separate package

Also refactor the types to use discriminating unions for easier error handling and such.
Errors passed to storage plugins should now be serialized and storage plugins are expected to return already serialized errors on failed history entries.

* fix(mysql): handle the new type changes

* fix(storage-fs): handle the new type changes

* feat(cli): better error handling and types

Adapt to the new types from the @emigrate/types package, like discriminating union types and serializing and deserializing errors
2023-12-15 13:03:35 +01:00
afe56594c5
chore(release): version packages (#40)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2023-12-15 12:55:48 +01:00
dependabot[bot]
499d6685e6
chore(deps): bump tsx from 4.1.2 to 4.6.2 (#25)
Bumps [tsx](https://github.com/privatenumber/tsx) from 4.1.2 to 4.6.2.
- [Release notes](https://github.com/privatenumber/tsx/releases)
- [Changelog](https://github.com/privatenumber/tsx/blob/develop/release.config.cjs)
- [Commits](https://github.com/privatenumber/tsx/compare/v4.1.2...v4.6.2)

---
updated-dependencies:
- dependency-name: tsx
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-12-15 11:55:00 +01:00
dependabot[bot]
98e167972b
chore(deps): bump the commitlint group with 2 updates (#32)
Bumps the commitlint group with 2 updates: [@commitlint/cli](https://github.com/conventional-changelog/commitlint/tree/HEAD/@commitlint/cli) and [@commitlint/config-conventional](https://github.com/conventional-changelog/commitlint/tree/HEAD/@commitlint/config-conventional).


Updates `@commitlint/cli` from 18.4.2 to 18.4.3
- [Release notes](https://github.com/conventional-changelog/commitlint/releases)
- [Changelog](https://github.com/conventional-changelog/commitlint/blob/master/@commitlint/cli/CHANGELOG.md)
- [Commits](https://github.com/conventional-changelog/commitlint/commits/v18.4.3/@commitlint/cli)

Updates `@commitlint/config-conventional` from 18.4.2 to 18.4.3
- [Release notes](https://github.com/conventional-changelog/commitlint/releases)
- [Changelog](https://github.com/conventional-changelog/commitlint/blob/master/@commitlint/config-conventional/CHANGELOG.md)
- [Commits](https://github.com/conventional-changelog/commitlint/commits/v18.4.3/@commitlint/config-conventional)

---
updated-dependencies:
- dependency-name: "@commitlint/cli"
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: commitlint
- dependency-name: "@commitlint/config-conventional"
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: commitlint
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-12-15 08:58:10 +01:00
dependabot[bot]
210858540d
chore(deps): bump prettier from 3.1.0 to 3.1.1 (#33)
Bumps [prettier](https://github.com/prettier/prettier) from 3.1.0 to 3.1.1.
- [Release notes](https://github.com/prettier/prettier/releases)
- [Changelog](https://github.com/prettier/prettier/blob/main/CHANGELOG.md)
- [Commits](https://github.com/prettier/prettier/compare/3.1.0...3.1.1)

---
updated-dependencies:
- dependency-name: prettier
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-12-15 08:50:41 +01:00
1434be5d5e
feat(reporter): print Emigrate CLI's version number and relative paths to migrations (#39)
* feat(reporter-default): print CLI version number

* feat(reporter-default): print relative paths to migrations instead of only the file names

This makes the output clickable in most shells

* feat(reporter-pino): include the Emigrate CLI version in each log
2023-12-14 13:45:02 +01:00
480796e95b
chore(release): version packages (#36)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2023-12-14 13:29:02 +01:00
bad4e252f3
feat(reporters): pass the CLI's version number to reporters (#38) 2023-12-14 13:11:55 +01:00
dependabot[bot]
bf34cc427a
chore(deps): bump @types/node from 20.9.2 to 20.10.4 (#29)
Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 20.9.2 to 20.10.4.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

---
updated-dependencies:
- dependency-name: "@types/node"
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-12-14 12:54:50 +01:00
2b9a16d6fd
fix(cli): make main command non-strict to let other commands handle their options (#37) 2023-12-14 11:47:36 +01:00
960ce08674
feat(cli): add --help and --version options to main command (#35) 2023-12-14 10:49:54 +01:00
dependabot[bot]
dac43ce95d
chore(deps): bump @changesets/cli from 2.26.2 to 2.27.1 (#34)
Bumps [@changesets/cli](https://github.com/changesets/changesets) from 2.26.2 to 2.27.1.
- [Release notes](https://github.com/changesets/changesets/releases)
- [Changelog](https://github.com/changesets/changesets/blob/main/docs/modifying-changelog-format.md)
- [Commits](https://github.com/changesets/changesets/compare/@changesets/cli@2.26.2...@changesets/cli@2.27.1)

---
updated-dependencies:
- dependency-name: "@changesets/cli"
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-12-13 15:59:51 +01:00
27b319fa96 chore: group commitlint packages for dependabot 2023-12-12 16:20:44 +01:00
af360ca6a4
chore(release): version packages (#31)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2023-12-12 16:06:44 +01:00
8cc43a8f83 refactor(cli): introduce the migration-runner helper for less code duplication and fewer return paths
Thanks to the migration-runner the "up" and "list" commands are now very similar code wise
2023-12-12 15:47:37 +01:00
5307e87242 fix(list): don't log info about locked migrations as it doesn't happen in this command 2023-12-12 15:38:24 +01:00
bc33e63e3e feat(reporter-default): improve error logging by logging all own properties of the errors 2023-12-12 15:36:30 +01:00
a79f8e8e37 feat(plugin-tools): improve error serialization and let each storage plugin serialize errors themselves 2023-12-12 15:32:58 +01:00
09181f284d feat(reporter-pino): don't log the full metadata object for each migration 2023-12-12 15:25:22 +01:00
e7288fcbfb test(up): add more tests for the "up" command 2023-12-08 13:47:36 +01:00
8f7f9a71d0 chore(deps): upgrade import-from-esm 2023-12-08 13:14:56 +01:00
bc85211009 chore: remove dependencies from "build:watch" task as it can make the process halt/exit 2023-12-08 13:14:56 +01:00
3db7e995d7
chore(release): version packages (#30)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2023-12-08 13:10:41 +01:00
703e6f028a feat(storage): add "end" method to storage for cleaning up resources when commands are finished 2023-12-08 13:01:46 +01:00
334e2099bb feat(mysql): implement the first version of the MySQL plugin package 2023-12-08 13:01:45 +01:00
a8db22680e feat(up): handle storage initialization errors and present missing loader errors in a better way 2023-12-08 13:01:45 +01:00
c1d55978d7 feat(up): serialize errors before passing them to storage plugins 2023-12-08 13:01:45 +01:00
3b2b21f729
chore(release): version packages (#28)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2023-12-08 11:14:45 +01:00
3619d86750 feat(reporter-pino): first version of the package 2023-12-07 14:36:30 +01:00
d916043061 fix(plugin-tools): load plugins correctly when specified as strings 2023-12-07 14:34:47 +01:00
20ed2e8a50 fix(plugin-tools): prioritize prefixed plugin names over non-prefixed names when importing plugins
This is to not accidentally importing for instance the "pino" package if reporter is set to just "pino" and instead import the "@emigrate/reporter-pino" package if that's the case.
2023-12-07 14:33:01 +01:00
43a220d633 test(up): start writing some tests for the "up" command 2023-12-07 10:48:02 +01:00
de5fccfa52 chore(deps): remove unused Vitest dependency 2023-12-06 08:40:16 +01:00
871fb47aac
chore(release): version packages (#19)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2023-11-24 16:04:55 +01:00