Hello AUR users,
It is my pleasure to finally announce the initial "beta" testing stage of the FastAPI aurweb implementation. This development has majorly happened in the background, so it may come as a surprise to some.
For those who want a quick check, we've deployed aurweb's development branch `pu` onto https://aur-dev.archlinux.org. More details about the instance can be found in the aur-dev.archlinux.org Testing page .
Below, there are several sections about different components of this adventure:
- Proposal - Changes and Plans - Testing - Reporting
== Proposal ==
In May of 2020, a proposal  was made to the project to port the existing PHP code over to a more modernized language and framework.
The discussion settled on using the following stack:
- Python - SQLAlchemy - Alembic - FastAPI
== Changes and Plans ==
Along with this porting, we have fixed a few bugs and changed a few things. Following is a listing of a partial UX changelog:
- The last Requests page no longer goes nowhere. - Requests can now be viewed as a normal User, filtered only to requests that the user created. - Users can now close requests they created by themselves. - The Trusted User page now allows users to page through the different tables independently. - The `get-comment-form` type has been removed from the RPC and implemented in a non-RPC route. - Performance of the homepage has been improved. - Performance of the package search page has been improved. - Performance of the `info` RPC type has been improved. - Most form-related actions have been changed. - Emitted cookies in production are now `Secure`, `HttpOnly` and `SameSite=strict`. - CSRF token inputs have been removed. - We may consider this in the future. - Many form pages now more correctly show errors or success messages on submission. - ...among several more...
After the port is completely finished and deployed in production, we will be making improvements and sanitizations anywhere we see them being useful. There are quite a few features we already have tasked up for that point. However, more feature requests are welcome at any time.
Note: The RPC is not yet completely implemented. It is not advisable to test against FastAPI's RPC implementation at the moment, but patches will be coming in soon and testing tasks will be added for it.
== Testing ==
We have reached the point in development where we believe the majority of features have a working implementation. For this reason, we're now looking for crowdsourced user testing of the new platform. The developers of this new implementation were not historical experts of aurweb; the work was done with a fresh perspective and during exploration of the PHP code-base.
We are sure there may be some mishaps around, and so this testing stage would be incredibly useful for us to put the finishing touches on the project with the end-goal of swapping to FastAPI in production 1-2 months from now.
To get started with testing, visit the Testing Guide wiki page , which gives straight-forward direction on selecting and using a testing method. It is suggested to read the entire page, as all details are useful for those wishing to contribute feedback and utilizing the test systems.
We're taking advantage of GitLab issues for tracking this test progress. An overview of the project's testing can be viewed in our progress issue .
Each task listed in the table on the overview page has its own issue, linked in the Status column. Testers should view these task-specific issues for details specific to the test.
== Reporting ==
If you are interested in testing the platform, we very much appreciate your help and effort. That being said, the best way you can contribute to the project by testing is to report bugs or feedback about the routes (or tasks) you've tested.
Please follow the procedure for reporting bugs or feedback noted in the Testing Guide .
== Thanks ==
Again, we very highly appreciate all of you for participating in the AUR and its well-being.
== Footnotes ==
Contributions of all kinds are welcome and appreciated. Bug reports, patches, feature requests, documentation, or any other kind.
Come visit us in Libera's #archlinux-aurweb if you'd like to chat specifically about the project.
== References ==
 https://gitlab.archlinux.org/archlinux/aurweb/-/wikis/aur-dev.archlinux.org-...  https://lists.archlinux.org/pipermail/aur-dev/2020-May/004848.html  https://gitlab.archlinux.org/archlinux/aurweb/-/wikis/Testing-Guide  https://gitlab.archlinux.org/archlinux/aurweb/-/issues/161