* Add a session store that keeps web-UI logins in the admin folder
* Authenticate the web interface with session cookies and CSRF tokens
* Stop embedding the apikey in the web interface
* Cover the session, CSRF and apikey changes
This update improves the release workflow by:
* Configuring GitHub Actions `upload-artifact` to transfer files directly without unnecessary zipping, simplifying artifact retrieval for subsequent jobs.
* Integrating `pefile` to perform an Authenticode signature check on the Windows installer, ensuring all official releases are properly signed.
This change enables `F401` (unused import) checks in Ruff and configures per-file ignores for intentional top-level imports. The newly enforced check led to the removal of several unused imports across the codebase.
Additionally, the module existence check for `certifi` was modernized to use `importlib.util.find_spec` for a more efficient and robust approach.
Broke tests on Debian/Ubuntu, they reported it, never figured it out.
(#2274)
On Gentoo we skipped the failing test for years but 'just plain fails'
didn't sit right with me. We found the tests only fail using release
tarball, not git.
package.py script 'fixes' the line endings on .txt extensions but doesn't
account for a stillrarbutnotagoodname.txt rar binary in the test data.
This breaks tests on anyone using the release tarballs. So we skip mangling
the test data to allow for downstream CI to work.
Keep zip structure
Download all signed artifacts for release step
Correctly download all releases
Only sign when tagging release
Restore CI tests
Test production certificate
Closes#2870
Correct restart on macOS binary.
Allow to be less strict about file removal.
Remove not needed zip parameter.
Remove old modifications of sys.argv.
Make sure that after restart we still log to console.
* Add par2cmdline as option for windows, still default to multipar.
* Fix tests and do not give par2cmdline long-paths on Windows
* Set enable_multipar to true
---------
Co-authored-by: Safihre <safihre@sabnzbd.org>