Commit Graph

110 Commits

Author SHA1 Message Date
Jens
33d1964f86 feat: speed up and stabilise test suite (#676)
## ℹ️ Description
*Provide a concise summary of the changes introduced in this pull
request.*

- Link to the related issue(s): Issue #
- Describe the motivation and context for this change.

Refactors the test harness for faster and more reliable feedback: adds
deterministic time freezing for update checks, accelerates and refactors
smoke tests to run in-process, defaults pytest to xdist with durations
tracking, and adjusts CI triggers so PRs run the test matrix only once.

## 📋 Changes Summary

- add pytest-xdist + durations reporting defaults, force deterministic
locale and slow markers, and document the workflow adjustments
- run smoke tests in-process (no subprocess churn), mock update
checks/logging, and mark slow specs appropriately
- deflake update check interval tests by freezing datetime and simplify
FixedDateTime helper
- limit GitHub Actions `push` trigger to `main` so feature branches rely
on the single pull_request run

### ⚙️ Type of Change
Select the type(s) of change(s) included in this pull request:
- [ ] 🐞 Bug fix (non-breaking change which fixes an issue)
- [x]  New feature (adds new functionality without breaking existing
usage)
- [ ] 💥 Breaking change (changes that might break existing user setups,
scripts, or configurations)


##  Checklist
Before requesting a review, confirm the following:
- [x] I have reviewed my changes to ensure they meet the project's
standards.
- [x] I have tested my changes and ensured that all tests pass (`pdm run
test`).
- [x] I have formatted the code (`pdm run format`).
- [x] I have verified that linting passes (`pdm run lint`).
- [x] I have updated documentation where necessary.

By submitting this pull request, I confirm that you can use, modify,
copy, and redistribute this contribution, under the terms of your
choice.


<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->

## Summary by CodeRabbit

* **Tests**
* Ensure tests run in a consistent English locale and restore prior
locale after each run
  * Mark integration scraping tests as slow for clearer categorization
* Replace subprocess-based CLI tests with an in-process runner that
returns structured results and captures combined stdout/stderr/logs;
disable update checks during smoke tests
* Freeze current time in update-check tests for deterministic assertions
* Add mock for process enumeration in web‑scraping unit tests to
stabilize macOS-specific warnings

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-11-12 21:29:51 +01:00
sebthom
974646fa43 ci: fix "mv: cannot stat 'artifacts-macos-13/...': No such file" 2025-11-03 11:15:28 +01:00
sebthom
214dd09809 fix: GHA workflow fails to delete untagged docker images 2025-11-02 16:30:36 +01:00
Sebastian Thomschke
1244fce528 ci: Update GHA workflow config (test on MacOS 15) (#670) 2025-11-02 12:41:23 +01:00
dependabot[bot]
9c73696b29 ci(deps): bump actions/upload-artifact from 4 to 5 (#666)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-10-27 17:33:52 +01:00
dependabot[bot]
88196838dd ci(deps): bump actions/download-artifact from 5 to 6 (#665)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-10-27 15:55:14 +01:00
Jens
08a60c2043 chore: remove pip 25.2 audit exception after pip 25.3 release (#661) 2025-10-25 20:40:45 +02:00
Jens
84e9d82a55 fix: increase build timeout from 10 to 20 minutes (#641) 2025-10-15 10:37:10 +02:00
Sebastian Thomschke
dadd08aedb build: upgrade to Python 3.14 (#636)
Co-authored-by: Jens <1742418+1cu@users.noreply.github.com>
2025-10-14 15:56:35 +02:00
Jens
a2745c03b2 fix: resolve linting errors after dependency updates (#634) 2025-10-12 14:45:59 +02:00
dependabot[bot]
1e0c7216ad ci(deps): bump actions/checkout from 4 to 5 (#602)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-08-12 00:55:04 +02:00
dependabot[bot]
40b0a8a252 ci(deps): bump actions/download-artifact from 4 to 5 (#600)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-08-11 23:36:33 +02:00
Jens Bergmann
1a1633e12d feat: introduce smoke test group and fail-fast test orchestration (#572) 2025-07-09 19:23:52 +02:00
sebthom
3f85d9e8da chore: upgrade to Python 3.13.5 2025-07-08 21:05:58 +02:00
sebthom
ea8af3795b fix: creating GH releases fails 2025-05-30 17:50:53 +02:00
sebthom
37c0eba7c7 fix: publishing docker image to ghcr.io fails 2025-05-30 17:22:53 +02:00
sebthom
15461bb1a5 fix: release build not running 2025-05-26 20:50:54 +02:00
sebthom
d992fed9e9 ci: only publish coverage reports after all matrix builds are complete 2025-05-18 23:23:23 +02:00
sebthom
c794102452 chore: update workflow config 2025-05-18 21:06:08 +02:00
sebthom
23910ffbf5 ci: publish code coverage reports 2025-05-15 22:13:38 +02:00
sebthom
83c0d6adf0 refact: move temp files to /.temp/ 2025-05-15 19:52:41 +02:00
sebthom
6ede14596d feat: add type safe Ad model 2025-05-15 12:07:49 +02:00
sebthom
f2e6f0b20b chore: update pyproject.toml 2025-05-12 14:08:50 +02:00
sebthom
314285583e ci: add pip-audit check 2025-05-11 20:14:38 +02:00
sebthom
fe33a0e461 refact: replace pyright with basedpyright 2025-04-28 12:52:18 +02:00
sebthom
376ec76226 refact: use ruff instead of autopep8,bandit,pylint for linting 2025-04-28 12:51:51 +02:00
sebthom
634cc3d9ee build: upgrade to Python 3.13.3 2025-04-28 12:43:42 +02:00
sebthom
c61c14709f ci: add PR title validation 2025-02-12 22:16:16 +01:00
sebthom
ec7ffedcd6 ci: add build timeout to all jobs 2025-02-10 18:51:54 +01:00
sebthom
042525eb91 build: upgrade to Python 3.13.2 2025-02-08 22:18:16 +01:00
sebthom
08197eabae docs: improve disclaimer 2025-02-03 22:06:30 +01:00
sebthom
9cd4fdd693 build: use Python 3.13.1 when building with act 2025-02-03 21:12:45 +01:00
sebthom
7d9b857a46 docs: Update doc 2025-01-20 21:40:28 +01:00
sebthom
be78ec9736 fix: don't create a new release on every cron scheduled run 2025-01-01 16:52:07 +01:00
sebthom
9841f6f48f ci: fix release build 2024-12-27 13:49:38 +01:00
sebthom
7b579900c3 ci: update workflow config 2024-12-27 12:54:21 +01:00
sebthom
cde3250ab8 ci: update workflow config 2024-12-22 22:20:23 +01:00
sebthom
8acaf7b25f chore: Update Python dependencies 2024-12-22 20:49:29 +01:00
sebthom
6e76b0ff4c build: rename "scan" script to "audit" 2024-11-21 22:04:15 +01:00
sebthom
1b326c1ce8 chore: upgrade to Python 3.13 and update deps 2024-11-15 13:31:29 +01:00
sebthom
ba6a40e373 chore: upgrade to Python 3.12.6 2024-09-16 12:10:05 +02:00
sebthom
ef6b25fb46 Scan final build results using clamscan 2024-05-30 22:03:16 +02:00
sebthom
1e0990580d Log Github context 2024-05-30 21:46:15 +02:00
sebthom
9d0755c359 add MacOS ARM builds 2024-05-30 21:41:02 +02:00
sebthom
12974285ad start clamav before checkout 2024-04-04 19:00:38 +02:00
sebthom
657eadaa59 update workflow config 2024-04-04 14:24:01 +02:00
dependabot[bot]
88d9e053cb ci(deps): bump toblux/start-clamd-github-action from 0.1 to 0.2
Bumps [toblux/start-clamd-github-action](https://github.com/toblux/start-clamd-github-action) from 0.1 to 0.2.
- [Release notes](https://github.com/toblux/start-clamd-github-action/releases)
- [Commits](https://github.com/toblux/start-clamd-github-action/compare/v0.1...v0.2)

---
updated-dependencies:
- dependency-name: toblux/start-clamd-github-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-04-01 19:58:07 +02:00
sebthom
46b901d0cc ci: remove unused token 2024-03-18 19:08:47 +01:00
dependabot[bot]
750f6a0ef2 ci(deps): bump geekyeggo/delete-artifact from 4 to 5
Bumps [geekyeggo/delete-artifact](https://github.com/geekyeggo/delete-artifact) from 4 to 5.
- [Release notes](https://github.com/geekyeggo/delete-artifact/releases)
- [Changelog](https://github.com/GeekyEggo/delete-artifact/blob/main/CHANGELOG.md)
- [Commits](https://github.com/geekyeggo/delete-artifact/compare/v4...v5)

---
updated-dependencies:
- dependency-name: geekyeggo/delete-artifact
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-03-18 19:06:12 +01:00
sebthom
a8290500e7 build kleinanzeigen-bot-windows-amd64-uncompressed.exe 2024-03-11 23:08:30 +01:00