feat: add the import-versions command, handler logic

only works if wutta-continuum is already installed and enabled.

this also rearranges some existing classes, for better consistency
This commit is contained in:
Lance Edgar 2025-12-18 20:03:47 -06:00
parent c38cd2c179
commit fc250a433c
19 changed files with 1345 additions and 76 deletions

View file

@ -0,0 +1,6 @@
``wuttasync.cli.import_versions``
=================================
.. automodule:: wuttasync.cli.import_versions
:members:

View file

@ -0,0 +1,6 @@
``wuttasync.importing.versions``
================================
.. automodule:: wuttasync.importing.versions
:members:

View file

@ -31,6 +31,13 @@ exclude_patterns = ["_build", "Thumbs.db", ".DS_Store"]
intersphinx_mapping = {
"python": ("https://docs.python.org/3/", None),
"rattail-manual": ("https://docs.wuttaproject.org/rattail-manual/", None),
"sqlalchemy": ("http://docs.sqlalchemy.org/en/latest/", None),
"sqlalchemy-continuum": (
"https://sqlalchemy-continuum.readthedocs.io/en/latest/",
None,
),
"sqlalchemy-utils": ("https://sqlalchemy-utils.readthedocs.io/en/latest/", None),
"wutta-continuum": ("https://docs.wuttaproject.org/wutta-continuum/", None),
"wuttjamaican": ("https://docs.wuttaproject.org/wuttjamaican/", None),
}

View file

@ -73,10 +73,12 @@ cf. :doc:`rattail-manual:data/sync/index`.
api/wuttasync.cli
api/wuttasync.cli.base
api/wuttasync.cli.import_csv
api/wuttasync.cli.import_versions
api/wuttasync.importing
api/wuttasync.importing.base
api/wuttasync.importing.csv
api/wuttasync.importing.handlers
api/wuttasync.importing.model
api/wuttasync.importing.versions
api/wuttasync.importing.wutta
api/wuttasync.util

View file

@ -25,3 +25,24 @@ types may not behave as expected etc.
Defined in: :mod:`wuttasync.cli.import_csv`
.. program-output:: wutta import-csv --help
.. _wutta-import-versions:
``wutta import-versions``
-------------------------
Import latest data to version tables, for the Wutta :term:`app
database`.
The purpose of this is to ensure version tables accurately reflect
the current "live" data set, for given table(s). It is only
relevant/usable if versioning is configured and enabled. For more
on that see :doc:`wutta-continuum:index`.
This command can check/update version tables for any versioned class
in the :term:`app model`.
Defined in: :mod:`wuttasync.cli.import_versions`
.. program-output:: wutta import-versions --help