* Add pull command.
* Add publish command.
* Enforce start's old semantics.
* Add pull test cases:
- Pull with no events anywhere
- Pull with one event on mobilizon and none on the db
- Pull with one event on mobilizon and another on the db
- Pull with one event on mobilizon and the same event on the db
* Add pull tests:
- Sequence: pull->start
- Sequence: start->pull
- Sequence: pull->new event on mobilizon -> pull
* manifest.scm: Add cloc.
* query: read: Prefer return list to generators.
* tests: pull: Actually test that models are written to the DB.
* config: get_settings_files_paths: Return first existing path.
* tests: Set SETTINGS_FOR_DYNACONF at import time.
* config: get_settings_files_paths: Log config path.
* manifest.scm: Add docker-compose.
* build_docker_image.sh: Allow building debug image.
* storage: db: Use the same configuration for Tortoise and Aerich.
* Distribuite migration queries.
* storage: implement_db_changes: Use pkg_resources.
* Add [guix](https://guix.gnu.org/) package.
This enables:
- [direnv](https://direnv.net/) integration to setup and tear down
a suitable development environment;
- if you're not a direnv user you can always
`guix environment -l guix.scm` to spawn a shell
with all the necessary dependencies;
- Export of Mobilizon Reshare and its dependencies
to one of the formats supported by `guix pack`. Right now they are:
+ tarball Self-contained tarball, ready to run on another machine
+ squashfs Squashfs image suitable for Singularity
+ docker Docker image ready for 'docker load'
+ deb Debian archive installable via dpkg/apt
* Add docker image and docker-compose.yml.
* Add Github CI workflow.