Commit graph

91 commits

Author SHA1 Message Date
570bd1fa2b feat(cli): make the default reporter print the full command output when done
In interactive mode the output is normally clipped to the number of lines that the current terminal window can show without scrolling
so to remedy that the full command output is now printed to the console when done
2023-11-22 14:35:38 +01:00
8f623efd45 feat(cli): ignore letter casing of commands 2023-11-22 14:35:37 +01:00
53cdb23237 feat(cli): implement the "list" command for listing migration history and pending migrations 2023-11-22 14:35:37 +01:00
e79dd4bca9 feat(storage-fs): serialize errors recursively if "cause" is an Error instance 2023-11-22 14:35:37 +01:00
da1eee3c75 feat(cli): add "reporter" option for the "new" command for improved logging 2023-11-22 14:35:35 +01:00
5e8572b67f feat(plugin-tools): pass the current command to the reporter 2023-11-22 14:35:35 +01:00
1940885134 fix(cli): remove the double period before file extension in new migration files 2023-11-22 14:35:35 +01:00
7d8ac9b185 feat(storage-fs): adapt to the new storage option and rename the package 2023-11-22 14:35:35 +01:00
8e87ade5c0 feat(cli): storage and reporter are now their own options
Instead of mixing storages and reporters with other plugins in the plugin option they now have their own separate options.
This is for increased future flexibility and to be more similar to other CLI tools.

BREAKING CHANGE: the storage to use must now be specified using the "storage" configuration option or the "--storage" CLI option instead of having it among other plugins.
2023-11-22 14:35:35 +01:00
a51192f730
chore(release): version packages (#13)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2023-11-17 12:58:19 +01:00
59ec16b87b feat(cli): improve "up" command output and flow a lot 2023-11-17 12:50:35 +01:00
e5eec7cdf1 fix(plugin-storage-fs): throw a more descriptive error when a lock couldn't be acquired 2023-11-17 12:50:33 +01:00
8f35812fed feat(cli): add support for "reporter" plugins and include a default reporter 2023-11-17 12:50:33 +01:00
b61072a3b6
chore(release): version packages (#12)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2023-11-16 12:59:28 +01:00
30a448b4cf feat(cli): improve error handling with more custom Error instances 2023-11-16 12:01:32 +01:00
8dadfe9a5b feat(cli): support NodeJS callback style migration functions 2023-11-16 11:24:00 +01:00
0c49249bd9 feat(plugin-storage-fs): implement the first version of the File System Storage plugin 2023-11-16 11:07:17 +01:00
46b9104cda fix(cli): don't run any migrations if any previous migration have failed 2023-11-16 10:59:54 +01:00
3b36b3de52 feat(cli): implement a default "loader" for JavaScript files
Supports any of the `.js`, `.cjs` and `.mjs` file extensions
2023-11-16 10:58:35 +01:00
62bd5a45e5 feat(plugin-tools): add more properties to the MigrationMetadata type 2023-11-16 10:54:34 +01:00
1799b6e399 fix(plugin-tools): add missing types and utils for the "loader" plugins 2023-11-16 10:53:09 +01:00
a1debba2e1 fix(cli): allow creating new migration files with only the "extension" option 2023-11-16 10:51:43 +01:00
b56794a269 feat(cli): implement the "up" command with support for "storage" and "loader" plugins 2023-11-15 16:14:10 +01:00
a058ebf888 feat(cli): handle file extensions with or without a leading period 2023-11-15 16:11:28 +01:00
23a323c675 feat(plugin-tools): add convenience functions getOrLoadPlugin and getOrLoadPlugins 2023-11-15 16:02:57 +01:00
81fde2ebd3 feat(plugin-tools): add types for "loader" plugins 2023-11-15 16:00:21 +01:00
0b78d5cf32 refactor(cli): rename the emigrate package to @emigrate/cli to be more in line with other tools 2023-11-15 14:42:10 +01:00
9f5abf727d refactor: simplify plugin interfaces by getting rid of the "type" property
This is to prepare for having packages that contains multiple different plugins in the same file.
2023-11-15 14:11:06 +01:00
3e0ff07a64 chore: specify which files to include in published packages 2023-11-15 13:54:06 +01:00
github-actions[bot]
72df2385a0
chore(release): version packages (#11)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2023-11-15 12:25:48 +01:00
50fce0a5ed chore: add some basic README files 2023-11-15 10:32:47 +01:00
d99777820c chore(release): version bump 2023-11-15 09:20:30 +01:00
aa878003b9 feat(emigrate): add support for reading config from emigrate.config.js (and others)
Also add a new "extension" option for generating empty migration files with the right file extension.
2023-11-14 16:19:58 +01:00
9880778650 chore(release): bump versions 2023-11-10 10:55:42 +01:00
9c239e0ae5 feat(plugins): automatically prefix plugins when loading if necessary
I.e. when specifying only "--plugin generate-js" Emigrate will load the @emigrate/plugin-generate-js plugin.
2023-11-10 10:45:15 +01:00
ca3ab9ec62 feat(cli): add template support for the "new" command 2023-11-10 09:59:40 +01:00
16340940b7 fix(plugin-tools): remove double and trailing underscores from filenames and lower case the result 2023-11-10 09:33:08 +01:00
ce4693d957 feat(plugin-generate-js): first version 2023-11-09 22:00:43 +01:00
cdafd05c20 feat(plugin-tools): first version of the package with some nice plugin utilities 2023-11-09 09:26:48 +01:00
59780207bd feat(tsconfig): stricten up the default TypeScript config some more 2023-11-09 08:37:37 +01:00
9c5f9ebf23 chore: first commit 🎉 2023-11-08 11:41:05 +01:00