wrolpi/modules/repos/test
lrnselfreliance 79526afebe
A malformed config entry is skipped and counted instead of failing the import (#875)
* A malformed config entry is skipped and counted instead of failing the import

An entry that is not a mapping (or whose key is not text, or a list that is not a list) made the whole file fail to
import in playlists.yaml, repos.yaml, download_manager.yaml and tags.yaml (tag_files/tag_zims), and a non-text name
did in domains.yaml.  Each is now skipped and counted in import_skipped, so the config is not saved over it, and the
rest of the file imports.  A Channel whose `downloads` is not a list keeps its Downloads.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

* An unreadable entry keeps no row and does not make a section present

The key of an entry too malformed to name a row is now `Unreadable(position)`.  It is still counted in
import_skipped, but `present` ignores it, so a section whose entries are all unreadable removes nothing (as an empty
section), instead of deleting every row.  A playlist whose `items` is not a list keeps its items, and a Channel
Download whose url is not text is counted (its Channel keeps its Downloads) instead of failing the import.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-25 16:28:34 -06:00
..
__init__.py Add a Repos module that mirrors git repositories (#783) 2026-10-07 15:16:58 -06:00
test_api.py Repo changes wait for a concurrent writer (#853) 2026-10-21 16:50:09 -06:00
test_config.py Database configs carry a version the database keeps too (#866) 2026-10-24 14:58:18 -06:00
test_config_import.py A malformed config entry is skipped and counted instead of failing the import (#875) 2026-10-25 16:28:34 -06:00
test_downloader.py Add a Repos module that mirrors git repositories (#783) 2026-10-07 15:16:58 -06:00
test_extras.py Add a Repos module that mirrors git repositories (#783) 2026-10-07 15:16:58 -06:00
test_import.py Repo changes wait for a concurrent writer (#853) 2026-10-21 16:50:09 -06:00
test_lib.py repos.yaml imports by diffing (#870) 2026-10-25 10:36:12 -06:00
test_never.py Database configs carry a version the database keeps too (#866) 2026-10-24 14:58:18 -06:00
test_ownership.py Database configs carry a version the database keeps too (#866) 2026-10-24 14:58:18 -06:00
test_search.py repos.yaml imports by diffing (#870) 2026-10-25 10:36:12 -06:00