arcanis
5bd89c3291
upload ai slop
2026-02-27 03:03:42 +02:00
arcanis
49ebbc34fa
fix: do not update package status if it is unchanged
...
In order to prevent timestamp bumps, filter by status is added
2026-02-24 15:33:06 +02:00
arcanis
e376f1307f
docs: remove required flag from email.template_full option
2026-02-22 02:57:34 +02:00
arcanis
415fcf58ce
Release 2.20.0rc4
2.20.0rc4
2026-02-21 12:52:51 +02:00
arcanis
17a2d6362c
style: replace """ with " for single line strings
2026-02-21 12:51:58 +02:00
arcanis
e6275de4ed
fix: handle class overrides for retry polices correctly
...
Previous implementation didn't work as intended because there was still
override in init. Current implementation instead of playing with
guessing separates default and instance setttings. Also update test
cases to handle this scenario correctly
2026-02-21 12:40:11 +02:00
arcanis
4d009cba6d
Release 2.20.0rc3
2.20.0rc3
2026-02-20 20:56:05 +02:00
arcanis
f6defbf90d
fix: rollback samesite option to Lax, because of broken OAuth
2026-02-20 20:54:37 +02:00
arcanis
c4fefa6071
Release 2.20.0rc2
2.20.0rc2
2026-02-20 16:30:37 +02:00
arcanis
b0f1828ae7
feat: add retry policy
2026-02-20 16:24:14 +02:00
arcanis
dec025b45a
feat: raise OptionError on missing OAuth provider class instead of generic AttributeError
2026-02-19 10:19:03 +02:00
arcanis
89008e5350
fix: use context manager for selector and smtp session
2026-02-19 10:19:03 +02:00
arcanis
422196d413
fix: force data filter for tar archive extraction
...
(python3.14 default anyway)
2026-02-19 10:19:03 +02:00
arcanis
6fe2eade26
feat: (more) secure cookies
2026-02-19 10:19:03 +02:00
arcanis
5266f54257
fix: speedup table reload by updating only changed statuses
...
it has been found that on big (>100) repos it starts lagging on reload.
This commit adds guard to avoid updating rows whose package statuses
were not changed
2026-02-19 10:19:03 +02:00
arcanis
bbf9e38fda
Release 2.20.0rc1
2026-02-18 13:34:08 +02:00
arcanis
ba80a91d95
feat: implement CSRF protection
2026-02-18 13:34:08 +02:00
arcanis
536d040a6a
feat: handle only unknownpackageerror on aur load
2026-02-18 13:34:08 +02:00
arcanis
bed8752f3a
fix: filter logs by repository (twice) before rotation
2026-02-18 13:34:05 +02:00
arcanis
4093ca8986
fix: do not clear queue on queue fetch failures
2026-02-18 13:34:03 +02:00
arcanis
f027155885
docs: correct docstring for list_flatmap method
2026-02-18 13:34:03 +02:00
arcanis
443d4ae667
fix: correct vcs definition for cvs packages
2026-02-18 13:34:00 +02:00
arcanis
c8f7fa8c51
fix: load gitremote triggers configuration schema from non-standard
...
paths
2026-02-18 13:33:57 +02:00
arcanis
93c36fb429
docs: update documentation for the lasts archive feature
2026-02-16 22:07:34 +02:00
arcanis
2d6d42f969
feat: archive package tree implementation ( #153 )
...
* store built packages in archive tree instead of repository
* write tests to support new changes
* implement atomic_move method, move files only with lock
* use generic packages tree for all repos
* lookup through archive packages before build
* add archive trigger
* add archive trigger
* regenerate docs
* gpg loader fix
* support requires repostory flag
* drop excess REQUIRES_REPOSITORY
* simplify symlionk creation
* remove generators
* fix sttyle
* add separate function for symlinks creation
* fix rebase
* add note about slicing
* smol refactoring of archive_tree class
* remove duplicate code
* fix typos
* few review fixes
* monor fixes and typos
* clean empty directories
* remove side effect from getter
* drop recursive remove
* ensure_exists now accepts only argument
* add package like guard to symlinks fix
* speedup archive_lookup processing by iterrupting cycle
* remove custom filelock
* fix naming
* remove remove flag from repo
* review fixes
* restore wrapper around filelock
* extract repository explorer to separate class
* docs update
* fix ide findings
2026-02-16 00:12:51 +02:00
arcanis
6a2454548d
refactor: drop some methods from package class into separated wrappers
2026-02-11 03:05:49 +02:00
arcanis
389bad6725
fix: use effective uid instead of uid
2026-02-03 16:38:13 +02:00
arcanis
5738b8b911
fix: rewrite preserver_owner method complitely
...
Previous implementation was somewhat working in the most) scenarios, but
was super slow to handle permissions. However, it is actually very
limited operations in which the application can do anything, so it is
much easier to just drop privileged user to normal one
2026-02-03 15:27:19 +02:00
arcanis
5ac2e3de19
fix: handle permissionerror during walking over tree
...
Previously it tried to look into 700 directories (e.g. .gnupg) which
breaks running as non-ahriman user
2026-02-02 22:16:15 +02:00
arcanis
799dc73d8a
feat: update package status to success in case if package is up-to-date
2026-01-26 01:56:30 +02:00
arcanis
4e79cbf71a
fix: fallback to package name for missing bases in archive
...
package zoom is being generated without base, leading to None there
Closes #155
2026-01-22 16:34:19 +02:00
arcanis
4fa5d55317
type: replace generator return type with iterator
2026-01-15 15:22:03 +02:00
arcanis
a7fa3b90e4
type: fix typing in some modules
2026-01-14 14:28:31 +02:00
arcanis
ce07cda8ab
fix: pass underlying exception on extensionerror
2026-01-14 14:06:34 +02:00
arcanis
00c4f32294
fix: correct exception type on repository id comparison
2026-01-14 13:59:07 +02:00
arcanis
49cf91ea52
chore: copyright update
2026-01-08 02:50:37 +02:00
arcanis
4a8430dc67
build: allow to rebuild images manually
2026-01-08 02:45:31 +02:00
arcanis
46af782db2
build: drop shtab wrapper after their release
2025-11-18 20:47:20 +02:00
arcanis
6443e02352
type: use as keyword in case match
2025-10-26 09:36:54 +02:00
arcanis
999ad39d6f
feat: add trigger loader guard
2025-09-17 14:45:09 +03:00
arcanis
dfab5f56b2
feat: use atexit instead of del for triggers
2025-08-11 14:53:10 +03:00
arcanis
10798b9ba3
fix: correctly process trigger repo specific settings in validator (see #154 )
2025-08-01 16:53:15 +03:00
arcanis
358e3dc4d2
feat: expose repository name and architecure in configuration if available
...
In some cases there are reference to current repository settings. In
order to handle it correctly two ro options have been added
Related to #154
2025-07-31 14:14:22 +03:00
arcanis
c13cd029bc
feat: fully readable configuration from environment
2025-07-23 14:49:38 +03:00
arcanis
ae32cc8fbb
type: use custom comparable for comparable functions
2025-07-15 21:20:49 +03:00
arcanis
dff5b775a9
refactor: move logs rotation to separated trigger which is enabled by default
...
Previous solution, well, worked kinda fine-ish, though we have much
better mechanisms to do so
2025-07-15 11:26:00 +03:00
arcanis
db3f20546e
fix: do not update datalist if search substring hasn't changed
2025-07-14 21:30:27 +03:00
arcanis
53368468a4
fix: block autoupdate on any modal opened
2025-07-14 21:12:33 +03:00
arcanis
228c2cce51
style: use parebtgeses-less exceptions in side effects (tests only)
2025-07-14 20:33:54 +03:00
arcanis
f5aec4e5c1
fix: fix search result sorting based if there is exact match or
...
starts with (closes #152 )
2025-07-14 01:12:27 +03:00