Commit graph

17 commits

Author SHA1 Message Date
73a8a42e5f fix(history): support a migration history with entries without file extensions (.js is assumed in such case) 2024-01-18 15:18:35 +01:00
9f91bdcfa0 feat(cli): add the --import option for importing modules/packages before commands are run
Can for instance be used to load environment variables using Dotenv
2023-12-20 11:08:27 +01:00
f9a16d87a1 feat: add color option to CLI and configuration file
The option is used to force enable/disable color output and is passed to the reporter which should respect it
2023-12-20 09:11:01 +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
bad4e252f3
feat(reporters): pass the CLI's version number to reporters (#38) 2023-12-14 13:11:55 +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
e7288fcbfb test(up): add more tests for the "up" command 2023-12-08 13:47:36 +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
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
43a220d633 test(up): start writing some tests for the "up" command 2023-12-07 10:48:02 +01:00
d8a6a2428a feat(remove): implement the "remove" command for removing migrations from the history 2023-11-24 15:45:17 +01:00
9447d28ad8 fix(history): don't let different migration directories interfere with each other even though they share storage 2023-11-24 11:10:01 +01:00
8347fc1fa4 feat(up): improve error handling and presentation 2023-11-22 15:47:17 +01:00
b57c86eaab fix(up): only load the JavaScript loader plugin if necessary 2023-11-22 15:40:53 +01:00
53cdb23237 feat(cli): implement the "list" command for listing migration history and pending migrations 2023-11-22 14:35:37 +01:00
d4d87036df refactor(cli): move commands to a separate folder 2023-11-22 14:35:36 +01:00