Introduced `get|post` `/passreset` routes. These routes mimic the behavior of the existing PHP implementation, with the exception of HTTP status code returns. Routes added: GET /passreset POST /passreset Routers added: aurweb.routers.accounts * On an unknown user or mismatched resetkey (where resetkey must == user.resetkey), return HTTP status NOT_FOUND (404). * On another error in the request, return HTTP status BAD_REQUEST (400). Both `get|post` routes requires that the current user is **not** authenticated, hence `@auth_required(False, redirect="/")`. + Added auth_required decorator to aurweb.auth. + Added some more utility to aurweb.models.user.User. + Added `partials/error.html` template. + Added `passreset.html` template. + Added aurweb.db.ConnectionExecutor functor for paramstyle logic. Decoupling the executor logic from the database connection logic is needed for us to easily use the same logic with a fastapi database session, when we need to use aurweb.scripts modules. At this point, notification configuration is now required to complete tests involved with notifications properly, like passreset. `conf/config.dev` has been modified to include [notifications] sendmail, sender and reply-to overrides. Dockerfile and .gitlab-ci.yml have been updated to setup /etc/hosts and start postfix before running tests. * setup.cfg: ignore E741, C901 in aurweb.routers.accounts These two warnings (shown in the commit) are not dangerous and a bi-product of maintaining compatibility with our current code flow. Signed-off-by: Kevin Morris <kevr@0cost.org> |
||
---|---|---|
.tx | ||
aurweb | ||
conf | ||
doc | ||
migrations | ||
po | ||
schema | ||
templates | ||
test | ||
upgrading | ||
util | ||
web | ||
.coveragerc | ||
.editorconfig | ||
.gitignore | ||
.gitlab-ci.yml | ||
.mailmap | ||
.pre-commit-config.yaml | ||
alembic.ini | ||
AUTHORS | ||
CONTRIBUTING.md | ||
COPYING | ||
Dockerfile | ||
INSTALL | ||
README.md | ||
setup.cfg | ||
setup.py | ||
TESTING |
aurweb
aurweb is a hosting platform for the Arch User Repository (AUR), a collection
of packaging scripts that are created and submitted by the Arch Linux
community. The scripts contained in the repository can be built using makepkg
and installed using the Arch Linux package manager pacman
.
The aurweb project includes
- A web interface to search for packaging scripts and display package details.
- An SSH/Git interface to submit and update packages and package meta data.
- Community features such as comments, votes, package flagging and requests.
- Editing/deletion of packages and accounts by Trusted Users and Developers.
- Area for Trusted Users to post AUR-related proposals and vote on them.
Directory Layout
aurweb
: aurweb Python modules, Git interface and maintenance scriptsconf
: configuration and configuration templatesstatic
: static resource filestemplates
: jinja2 template collectiondoc
: project documentationpo
: translation files for strings in the aurweb interfaceschema
: schema for the SQL databasetest
: test suite and test casesupgrading
: instructions for upgrading setups from one release to anotherweb
: PHP-based web interface for the AUR
Links
-
The repository is hosted at git://git.archlinux.org/aurweb.git -- see doc/CodingGuidelines for information on the patch submission process.
-
Bugs can (and should) be submitted to the aurweb bug tracker: https://bugs.archlinux.org/index.php?project=2
-
Questions, comments, and patches related to aurweb can be sent to the AUR development mailing list: aur-dev@archlinux.org -- mailing list archives: https://mailman.archlinux.org/mailman/listinfo/aur-dev
Translations
Translations are welcome via our Transifex project at
https://www.transifex.com/lfleischer/aurweb; see doc/i18n.txt
for details.
Testing
See test/README.md for details on dependencies and testing.