[aur-general] FastAPI aurweb Testing Announcement

Kevin Morris kevr at 0cost.org
Sat Oct 30 02:28:54 UTC 2021


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 [1].

Below, there are several sections about different components
of this adventure:

- Proposal
- Changes and Plans
- Testing
- Reporting

== Proposal ==

In May of 2020, a proposal [2] 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 [3],
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 [4].

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 [3].

== 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 ==

[1] https://gitlab.archlinux.org/archlinux/aurweb/-/wikis/aur-dev.archlinux.org-Testing
[2] https://lists.archlinux.org/pipermail/aur-dev/2020-May/004848.html
[3] https://gitlab.archlinux.org/archlinux/aurweb/-/wikis/Testing-Guide
[4] https://gitlab.archlinux.org/archlinux/aurweb/-/issues/161

-- 
Kevin Morris
Software Developer

Identities:
 - kevr @ Libera
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: not available
URL: <https://lists.archlinux.org/pipermail/aur-general/attachments/20211029/390b1722/attachment.sig>


More information about the aur-general mailing list