Commit message (Collapse) | Author | Age | Lines | |
---|---|---|---|---|
* | backend/tests: Add tests for the E-Hentai API | Wolfgang Müller | 3 days | -1/+159 |
| | ||||
* | backend/plugins: Remove stray apostrophe | Wolfgang Müller | 3 days | -1/+1 |
| | ||||
* | backend/tests: Add tests for the anchira scraper | Wolfgang Müller | 3 days | -0/+107 |
| | ||||
* | backend/tests: Remove unneeded parameter in test_gallery_dl | Wolfgang Müller | 3 days | -1/+1 |
| | ||||
* | backend/plugins: Have exhentai assume no censorship for non-h | Wolfgang Müller | 3 days | -2/+8 |
| | | | | | | Non-H usually has nothing to censor, so this should be a safe default. We have not come across anything where this would have been a false positive. | |||
* | backend/plugins: Use language parser from scraper utils | Wolfgang Müller | 4 days | -32/+5 |
| | | | | | | Now that we have this in our utility suite, we can make use of it in the built-in scraper plugins. This increases coverage and removes a lot of duplicate code. | |||
* | backend/tests: Add tests for gallery_dl scrapers | Wolfgang Müller | 4 days | -1/+647 |
| | ||||
* | backend/scraper: Have collect() ignore None results | Wolfgang Müller | 4 days | -3/+21 |
| | | | | | | If a parser function returned None we yield it regardless, even though it won't have any impact further down the line. Instead clean up the collect() stream as early as possible. | |||
* | backend/tests: Add test for open_archive_file | Wolfgang Müller | 4 days | -2/+41 |
| | ||||
* | backend/plugins: Use "no cover" pragma for consistency | Wolfgang Müller | 4 days | -1/+1 |
| | ||||
* | backend/plugins: Fix MangaDex scraper title formatting | Wolfgang Müller | 4 days | -1/+1 |
| | ||||
* | backend/scraper: Add parser methods for Language | Wolfgang Müller | 4 days | -0/+65 |
| | | | | | | We can expect a number of scraper sources to either give languages as ISO 639-3 or as their English name, so it makes sense to implement a simple parser method on our side. | |||
* | build: Mark coverage as PHONY target | Wolfgang Müller | 4 days | -1/+1 |
| | | | | | Otherwise make will refuse to regenerate coverage information if the coverage/ directory already exists. | |||
* | build/deps: Remove black as a development dependency | Wolfgang Müller | 4 days | -85/+2 |
| | | | | We can do formatting now with ruff(1). | |||
* | backend/lint: Format overlong line | Wolfgang Müller | 4 days | -1/+3 |
| | ||||
* | build/deps: Update sphinx to 8.1.3 and sphinx-issues to 5.0.0 | Wolfgang Müller | 4 days | -23/+23 |
| | ||||
* | build: Remove obsolete pytest ignore in Makefile | Wolfgang Müller | 4 days | -1/+1 |
| | | | | | The DeprecationWarnings we ignored here were not caused by our own code. It seems whatever upstream project was affected has since been fixed. | |||
* | build/deps: Update strawberry-graphql to 0.248.1 | Wolfgang Müller | 4 days | -7/+6 |
| | ||||
* | build/deps: Update uvicorn to 0.32.0 | Wolfgang Müller | 4 days | -5/+5 |
| | ||||
* | build/deps: Update starlette to 0.41.2 | Wolfgang Müller | 4 days | -5/+5 |
| | ||||
* | build/deps: Update pytest-cov to 6.0.0 | Wolfgang Müller | 4 days | -7/+7 |
| | ||||
* | backend/lint: Ignore B027 in api/inputs.py | Wolfgang Müller | 4 days | -1/+1 |
| | | | | | | | Even though our base class here is abstract, this method is not, so we can ignore B027 [1]. [1] https://docs.astral.sh/ruff/rules/empty-method-without-abstract-decorator/ | |||
* | backend/lint: Properly chain exceptions | Wolfgang Müller | 4 days | -6/+6 |
| | | | | | | This fixes flake8-bugbear's B904 [1]. [1] https://docs.astral.sh/ruff/rules/raise-without-from-inside-except/ | |||
* | backend/plugins: Have anchira scraper use parse_dict from scraper utils | Wolfgang Müller | 4 days | -11/+2 |
| | | | | | | This cuts down on code duplication and also fixes B023 [1]. [1] https://docs.astral.sh/ruff/rules/function-uses-loop-variable/#function-uses-loop-variable-b023 | |||
* | backend/lint: Ignore B007 | Wolfgang Müller | 4 days | -1/+1 |
| | | | | | | | | B007 is "unused-loop-control-variable", which is only enabled by default because an unused variable in a loop statement "can confuse readers". The only couple of places that happens in this codebase is when unpacking os.walk, which really shouldn't be a problem. | |||
* | backend/lint: Stop using mutable objects as function argument defaults | Wolfgang Müller | 4 days | -3/+12 |
| | | | | See https://docs.astral.sh/ruff/rules/mutable-argument-default/ | |||
* | backend/lint: Implement pyupgrade suggestions | Wolfgang Müller | 4 days | -1/+1 |
| | ||||
* | backend/lint: Implement flake8-simplify suggestions | Wolfgang Müller | 4 days | -32/+29 |
| | ||||
* | backend/lint: Ignore SIM102 and SIM108 | Wolfgang Müller | 4 days | -0/+2 |
| | | | | | | | | | | | SIM102 is "collapsible-if", which we always follow except a few specific cases where we believe nested ifs are easier to read. Since we'd have to manually ignore all those instances, disable the whole rule instead. SIM108 is "if-else-block-instead-of-if-exp" which suggests the use of the ternary operator instead of an if/else block. We generally dislike how the ternary operator is less readable than a simple if/else block, so we disable this rule. | |||
* | backend/scraper: Bind loop variables correctly | Wolfgang Müller | 4 days | -2/+2 |
| | | | | | This was uncovered by bugbear, but did not seem to have tripped our test. Fix it anyway. | |||
* | backend/lint: Add some more useful linters | Wolfgang Müller | 4 days | -2/+12 |
| | | | | These should come in handy in the general case, especially bugbear. | |||
* | backend/lint: Fix import formatting | Wolfgang Müller | 4 days | -17/+37 |
| | ||||
* | build/deps: Update ruff to 0.7.3 | Wolfgang Müller | 4 days | -21/+21 |
| | ||||
* | build/deps: Update pillow to 11.0.0 | Wolfgang Müller | 4 days | -85/+80 |
| | ||||
* | build/deps: Update python dependencies | Wolfgang Müller | 4 days | -711/+784 |
| | ||||
* | build/deps: Lock dependencies at latest versions | Wolfgang Müller | 4 days | -42/+42 |
| | | | | | This does not include the update to Svelte 5 which will be made separately in the future. | |||
* | build/deps: Update selve-toast to 0.9.6 | Wolfgang Müller | 4 days | -2/+2 |
| | ||||
* | build/deps: Update prettier-plugin-tailwindcss to 0.6.8 | Wolfgang Müller | 4 days | -5/+9 |
| | ||||
* | build/deps: Update date-fns to 4.1.0 | Wolfgang Müller | 4 days | -5/+5 |
| | ||||
* | build/deps: Update npm-check-updates to 17.1.11 | Wolfgang Müller | 4 days | -3440/+23 |
| | ||||
* | build/deps: Update eslint | Wolfgang Müller | 4 days | -266/+362 |
| | ||||
* | build/deps: Update JS dependencies | Wolfgang Müller | 4 days | -1480/+1102 |
| | ||||
* | release: Version 0.2.00.2.0 | Wolfgang Müller | 2024-07-22 | -6/+20 |
| | ||||
* | docs: Use sphinx_issues to link to commits | Wolfgang Müller | 2024-07-22 | -3/+26 |
| | ||||
* | frontend/reader: Allow switching to first or last page | Wolfgang Müller | 2024-07-22 | -1/+7 |
| | ||||
* | frontend/reader: Add simple page indicator | Wolfgang Müller | 2024-07-22 | -0/+13 |
| | ||||
* | build/deps: Update JS dependencies | Wolfgang Müller | 2024-07-22 | -300/+306 |
| | ||||
* | build/deps: Update Python dependencies | Wolfgang Müller | 2024-07-22 | -49/+49 |
| | ||||
* | frontend/reader: Preload the next set of images | Wolfgang Müller | 2024-07-22 | -0/+22 |
| | ||||
* | frontend/reader: Show loading indicators | Wolfgang Müller | 2024-07-22 | -5/+35 |
| | | | | | | Sometimes images may not load fast enough, resulting in the app being seemingly stuck displaying the same sets of images. Use a timeout to detect when images take too long to load and show a spinner instead. |