]> git.ipfire.org Git - pbs.git/commit
Migrate to an even more async design
authorMichael Tremer <michael.tremer@ipfire.org>
Tue, 21 Jan 2025 10:38:58 +0000 (10:38 +0000)
committerMichael Tremer <michael.tremer@ipfire.org>
Tue, 21 Jan 2025 10:38:58 +0000 (10:38 +0000)
commit5c0f2c782a0fa67ddec8e34a1b2bbcb962b80fb2
tree3d67605ec57879ca8bb3fb36416a1d41f6eab721
parent9c1a364250f4a520889a5c17ab969b20910d7c30
Migrate to an even more async design

This monster commit replaces our database engine by SQLAlchemy so that
we can utilise eager loading and don't have to implement this on our
own. Although Jinja is a lot more flexible and allows us to
asynchronically fetch any data, we cannot really have async properties.
Therefore it is a good idea to have some eager loading happening when we
fetch certain objects that will always depend on some other objects.

This has been a major rewrite of the backend which still isn't done, but
I needed to commit this somehow. There was little point it doing it
gradually so here is this mountain of a commit. Enjoy.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
104 files changed:
Makefile.am
src/buildservice/__init__.py
src/buildservice/base.py
src/buildservice/bugtracker.py
src/buildservice/builders.py
src/buildservice/builds.py
src/buildservice/database.py
src/buildservice/distribution.py
src/buildservice/events.py
src/buildservice/jobs.py
src/buildservice/keys.py
src/buildservice/mirrors.py
src/buildservice/misc.py
src/buildservice/packages.py
src/buildservice/releasemonitoring.py
src/buildservice/repository.py
src/buildservice/sessions.py
src/buildservice/sources.py
src/buildservice/uploads.py
src/buildservice/users.py
src/scripts/pakfire-web
src/templates/base.html
src/templates/bugs/macros.html [moved from src/web/events.py with 52% similarity]
src/templates/bugs/modules/list.html [deleted file]
src/templates/builders/index.html
src/templates/builders/macros.html [new file with mode: 0644]
src/templates/builders/modules/stats.html [deleted file]
src/templates/builders/show.html
src/templates/builds/groups/macros.html [new file with mode: 0644]
src/templates/builds/groups/modules/list.html [deleted file]
src/templates/builds/groups/show.html
src/templates/builds/index.html
src/templates/builds/macros.html [new file with mode: 0644]
src/templates/builds/modules/list.html [deleted file]
src/templates/builds/modules/watchers.html [deleted file]
src/templates/builds/show.html
src/templates/distros/index.html
src/templates/distros/macros.html [new file with mode: 0644]
src/templates/distros/modules/list.html [deleted file]
src/templates/distros/releases/show.html
src/templates/distros/show.html
src/templates/events/macros.html [new file with mode: 0644]
src/templates/events/modules/build-comment.html [deleted file]
src/templates/events/modules/list.html [deleted file]
src/templates/events/modules/system-message.html [deleted file]
src/templates/events/modules/user-message.html [deleted file]
src/templates/index.html
src/templates/jobs/macros.html [new file with mode: 0644]
src/templates/jobs/modules/list.html [deleted file]
src/templates/jobs/modules/queue.html [deleted file]
src/templates/log.html
src/templates/macros.html [moved from src/web/bugs.py with 74% similarity]
src/templates/mirrors/index.html
src/templates/mirrors/macros.html [new file with mode: 0644]
src/templates/mirrors/modules/list.html [deleted file]
src/templates/mirrors/show.html
src/templates/modules/commit-message.html [deleted file]
src/templates/modules/link-to-user.html [deleted file]
src/templates/modules/packages-files-table.html [deleted file]
src/templates/modules/text.html [deleted file]
src/templates/monitorings/macros.html [new file with mode: 0644]
src/templates/monitorings/modules/releases-list.html [deleted file]
src/templates/monitorings/show.html
src/templates/packages/index.html
src/templates/packages/macros.html [new file with mode: 0644]
src/templates/packages/modules/dependencies.html [deleted file]
src/templates/packages/modules/info.html [deleted file]
src/templates/packages/name/builds.html
src/templates/packages/name/index.html
src/templates/packages/show.html
src/templates/packages/view-file.html
src/templates/releases/macros.html [new file with mode: 0644]
src/templates/repos/builds.html
src/templates/repos/macros.html [new file with mode: 0644]
src/templates/repos/modules/list.html [deleted file]
src/templates/repos/show.html
src/templates/search.html
src/templates/sources/commit.html
src/templates/sources/macros.html [new file with mode: 0644]
src/templates/sources/modules/commits.html [deleted file]
src/templates/sources/modules/list.html [deleted file]
src/templates/sources/show.html
src/templates/users/index.html
src/templates/users/macros.html [new file with mode: 0644]
src/templates/users/modules/list.html [deleted file]
src/templates/users/show.html
src/web/__init__.py
src/web/auth.py
src/web/base.py
src/web/builders.py
src/web/builds.py
src/web/distributions.py
src/web/filters.py [new file with mode: 0644]
src/web/handlers.py
src/web/jobs.py
src/web/mirrors.py
src/web/monitorings.py
src/web/packages.py
src/web/repos.py
src/web/search.py
src/web/sources.py
src/web/ui_modules.py [deleted file]
src/web/uploads.py
src/web/users.py