psychedelicious
5f77ef7e99
feat(db): improve docstrings in migrator
2023-12-12 16:30:57 +11:00
Lincoln Stein
d277bd3c38
Merge branch 'main' into feat/enhance-model-db-migrate-script
2023-12-12 00:24:43 -05:00
Kevin Turner
fd4e041e7c
feat: serve HTTPS when configured with ssl_certfile
2023-12-12 16:01:43 +11:00
Lincoln Stein
15a3e8076f
Merge branch 'main' into feat/enhance-model-db-migrate-script
2023-12-11 23:10:04 -05:00
Lincoln Stein
b0cfa58526
allow the model record migrate script to update existing model records
2023-12-11 22:47:19 -05:00
psychedelicious
18ba7feca1
feat(db): update docstrings
2023-12-12 13:35:46 +11:00
psychedelicious
55b0c7cdc9
feat(db): tidy migration_2
2023-12-12 13:30:29 +11:00
psychedelicious
a69f518c76
feat(db): tidy dependencies for migrations
2023-12-12 13:09:09 +11:00
psychedelicious
0cf7fe43af
feat(db): refactor migrate callbacks to use dependencies, remote pre/post callbacks
2023-12-12 12:35:42 +11:00
psychedelicious
6063760ce2
feat(db): tweak docstring
2023-12-12 11:13:40 +11:00
psychedelicious
c5ba4f2ea5
feat(db): remove file backups
...
Instead of mucking about with the filesystem, we rely on SQLite transactions to handle failed migrations.
2023-12-12 11:12:46 +11:00
psychedelicious
3414437eea
feat(db): instantiate SqliteMigrator with a SqliteDatabase
...
Simplifies a couple things:
- Init is more straightforward
- It's clear in the migrator that the connection we are working with is related to the SqliteDatabase
2023-12-12 10:46:08 +11:00
psychedelicious
417db71471
feat(db): decouple SqliteDatabase from config object
...
- Simplify init args to path (None means use memory), logger, and verbose
- Add docstrings to SqliteDatabase (it had almost none)
- Update all usages of the class
2023-12-12 10:30:37 +11:00
psychedelicious
afe4e55bf9
feat(db): simplify migration registration validation
...
With the previous change to assert that the to_version == from_version + 1, this validation can be simpler.
2023-12-12 09:52:03 +11:00
psychedelicious
55acc16b2d
feat(db): require migration versions to be consecutive
2023-12-12 09:43:09 +11:00
skunkworxdark
f762940335
Merge branch 'main' into tiled-upscaling-graph
2023-12-11 16:57:36 +00:00
skunkworxdark
fefb78795f
- Even_spilt overlap renamed to overlap_fraction
...
- min_overlap removed * restrictions and round_to_8
- min_overlap handles tile size > image size by clipping the num tiles to 1.
- Updated assert test on min_overlap.
2023-12-11 16:55:27 +00:00
psychedelicious
290851016e
feat(db): move sqlite_migrator into its own module
2023-12-11 16:41:30 +11:00
psychedelicious
fa7d002175
fix(tests): fix typing issues
2023-12-11 16:22:29 +11:00
psychedelicious@windows
f1b6f78319
fix(db): fix windows db migrator tests
...
- Ensure db files are closed before manipulating them
- Use contextlib.closing() so that sqlite connections are closed on existing the context
2023-12-11 16:14:25 +11:00
psychedelicious
4f3c32a2ee
fix(db): remove errant print stmts
2023-12-11 16:14:25 +11:00
psychedelicious
41db92b9e8
feat(db): add check for missing migration from 0
2023-12-11 16:14:25 +11:00
psychedelicious
3227b30430
feat(db): extract non-stateful logic to class methods
2023-12-11 16:14:25 +11:00
psychedelicious
567f107a81
feat(db): return backup_db_path, move log stmt to run_migrations
2023-12-11 16:14:25 +11:00
psychedelicious
b3d5955bc7
fix(db): rename Migrator._migrations -> _migration_set
2023-12-11 16:14:25 +11:00
psychedelicious
8726b203d4
fix(db): fix migration chain validation
2023-12-11 16:14:25 +11:00
psychedelicious
b3f92e0547
fix(db): fix docstring
2023-12-11 16:14:25 +11:00
psychedelicious
72c9a7663f
fix(db): add docstring
2023-12-11 16:14:25 +11:00
psychedelicious
fcb9e89bd7
feat(db): tidy db naming utils
2023-12-11 16:14:25 +11:00
psychedelicious
56966d6d05
feat(db): only reinit db if migrations occurred
2023-12-11 16:14:25 +11:00
psychedelicious
e46dc9b34e
fix(db): close db conn before reinitializing
2023-12-11 16:14:25 +11:00
psychedelicious
e461f9925e
feat(db): invert backup/restore logic
...
Do the migration on a temp copy of the db, then back up the original and move the temp into its file.
2023-12-11 16:14:25 +11:00
psychedelicious
abeb1bd3b3
feat(db): reduce power MigrateCallback, only gets cursor
...
use partial to provide extra dependencies for the image workflow migration function
2023-12-11 16:14:25 +11:00
psychedelicious
83e820d721
feat(db): decouple from SqliteDatabase
2023-12-11 16:14:25 +11:00
psychedelicious
f8e4b93a74
feat(db): add migration lock file
2023-12-11 16:14:25 +11:00
psychedelicious
0710ec30cf
feat(db): incorporate feedback
2023-12-11 16:14:25 +11:00
psychedelicious
c382329e8c
feat(db): move migrator out of SqliteDatabase
2023-12-11 16:14:25 +11:00
psychedelicious
f2c6819d68
feat(db): add SQLiteMigrator to perform db migrations
2023-12-11 16:14:25 +11:00
Lincoln Stein
fd68c47920
Merge branch 'main' into refactor/model-manager-3
2023-12-10 21:26:44 -05:00
psychedelicious
daf00efa4d
fix(api): only attempt to serve UI build if it exists
2023-12-11 12:30:13 +11:00
Lincoln Stein
3b1ff4a7f4
resolve test failure caused by renamed sqlite_database module
2023-12-10 12:59:00 -05:00
Lincoln Stein
d7f7fbc8c2
Merge branch 'main' into refactor/model-manager-3
2023-12-10 12:55:28 -05:00
Lincoln Stein
2f3457c02a
rename installer __del__() to stop(). Improve probe error messages
2023-12-10 12:55:01 -05:00
skunkworxdark
4c97b619fb
Update tiles.py
...
merge with main
2023-12-09 22:05:23 +00:00
skunkworxdark
abdd840fb9
Merge branch 'main' into tiled-upscaling-graph
2023-12-09 22:03:18 +00:00
skunkworxdark
e656768eb2
more fixes from code review
2023-12-09 21:56:31 +00:00
skunkworxdark
494c2a9b05
Updates based on code review by @RyanJDick
2023-12-09 18:38:07 +00:00
psychedelicious
0ac33f36ef
fix(tests): fix pydantic warning about deprecated fields
...
Calling `inspect.getmembers()` on a pydantic field results in `getattr` being called on all members of the field. Pydantic has some attrs that are marked deprecated.
In our test suite, we do not filter deprecation warnings, so this is surfaced.
Use a context manager to ignore deprecation warnings when calling the function.
2023-12-09 16:31:41 +11:00
psychedelicious
7436aa8e3a
feat(workflow_records): do not use default_factory for workflow id
...
Using default_factory to autogenerate UUIDs doesn't make sense here, and results awkward typescript types.
Remove the default factory and instead manually create a UUID for workflow id. There are only two places where this needs to happen so it's not a big change.
2023-12-09 11:10:16 +11:00
psychedelicious
13c9f8ffb7
fix(nodes): fix mismatched invocation decorator
...
This got messed up during a merge commit
2023-12-09 11:10:16 +11:00