Roland
8a7f0737f0
Reformatting code.
2025-12-06 15:11:37 -07:00
Roland
5b29144d70
Testing that nearly-empty configs are ignored on import. Adding setting to disable automatic upgrade checking.
2025-12-06 15:11:37 -07:00
Roland
1d8738ace2
Running alembic check in cicd.
2025-12-06 15:11:37 -07:00
Roland
a1e0fb4e92
Creating a new Collection model for use in organizing FileGroups.
...
Replacing Channels and Domains with Collection.
Moving downloading relationships from Channel to Collection.
Created domains.yaml config to manage tagged domain collections.
Adding turn-key upgrade solution in the UI.
2025-12-06 15:11:37 -07:00
Roland
c635267eda
Fixing bug where Archive screenshots would not be tracked when a user uploads a screenshot.
CodeQL / Analyze (push) Has been cancelled
2025-10-12 17:19:54 -06:00
Roland
0ac1e559bf
Updating Zim downloading so that Zim files are indexed and modeled when downloaded with new style of modeling like Video or Archive.
2025-03-21 22:12:49 -06:00
Roland
f72ecf2682
Adding Khan Academy to zim subscriptions. Updating some kiwix catalog sizes.
2025-03-03 16:32:35 -07:00
Roland
581d5eaf6e
Adding toggle to Channel page to stop downloading comments for certain channels.
2025-03-01 18:23:29 -07:00
Roland
c82baa1ad8
Using upsert_file to handle Zim file download.
2025-02-18 12:19:16 -07:00
Roland
3d6ccad0c0
Adding feature which adds toggles to Zim files to enable/disable auto search.
2025-02-02 12:43:04 -07:00
Roland
531ec3d65e
Creating new /api/archive/upload which accepts a file from the SingleFile browser extension and converts it to an Archive.
2025-01-30 18:41:32 -07:00
Roland
220cb8010f
Using aria2c to download files. Removing custom file download functions.
2025-01-10 11:32:37 -07:00
Roland
7d6b7114a7
Adding TRACE level for logging beyond debug. Reworking async_client for tests, not all tests need the App to handle signals, so any test that needs signals can use the new await_switches fixture which primes the app.
2024-12-11 11:52:33 -07:00
Roland
fe521c99f3
Adding edit form for Scrape downloader.
2024-12-03 12:44:38 -07:00
Roland
b7d163e7ff
Config files are initialized on startup, if they are missing.
2024-11-28 18:13:43 -07:00
Roland
8909d28a6b
Updating zim downloader with better error.
2024-10-20 15:37:24 -06:00
Roland
82acca00b6
Changing aiohttp function to be context managers to simplify calls.
2024-10-16 18:56:49 -06:00
Roland
d34301a085
Configs are imported manually in main. Configs now have dump/save/import methods. Configs will refuse to save if they have not been imported.
2024-10-16 18:56:44 -06:00
Roland
d3e5b56520
Bumping python requirements versions.
2024-10-16 18:56:41 -06:00
Roland
d54735c4bb
Configs can be saved in background using switches.
2024-10-16 18:56:38 -06:00
Roland
0f232fd533
Moving FileGroups instead of refreshing files after they have been moved.
2024-10-16 18:56:25 -06:00
Roland
45167e4f32
A Channel can be tagged with a single Tag. The Channel can be moved into a Tag Directory according to the config.
2024-10-16 18:56:19 -06:00
Roland
c839acb270
Converting Tag methods to use tag id or name.
2024-10-16 18:56:01 -06:00
Roland
2ad363281f
Delaying map startup because it prevents the API from starting.
2024-10-16 18:56:00 -06:00
Roland
53d2402d32
Only files that have been tagged will be returned when new 'Any' tag button is used to filter file search results.
2024-10-16 18:55:56 -06:00
Roland
cdc73d9d16
Trimming video file name to avoid error when file name is too long.
2024-10-16 18:55:52 -06:00
Roland
50d95dad19
Channels now have Channel.channel_downloads. A Channel can have many Downloads.
2024-10-16 18:55:46 -06:00
Roland
9ee73af61d
Converting APIError to use SanicException as base.
2024-05-01 18:04:25 -06:00
Roland
58de8c7c5b
Upgrading Sanic and yt-dlp. Major changes occurred because Sanic changed how multiprocessing works.
...
Python 3.11 is now required, old versions were causing unpredictability in tests. (Sanic does not yet
support 3.12)
Sanic has been upgraded to 23.6.0, which is the latest version that avoids this bug:
https://github.com/sanic-org/sanic/issues/2921
New strategy for multiprocessing is to create all multiprocessing tools in one process, then fork
to other processes. The previous strategy was to declare multiprocessing tools at the top of every
file, or wherever they were needed at import/creation. Now all multiprocessing tools are attached to the
app.shared_ctx. This means `api_app` is imported in many, many places.
This forced a change in how the DownloadManager works. Previously, it would continually run
download workers which would pull downloads from a multiprocessing.Queue. Now, a single worker checks
for new downloads and sends a Sanic signal.
Flags have been reworked to use the `api_app`. I removed the `which` flag functionality because the
`which` are called at import and needed their own multiprocessing.Event.
2024-04-30 10:55:25 -06:00
Roland
b05b2e7a6d
Allowing maintainer to change special directories.
2024-03-09 16:51:26 -07:00
Roland
758ff8e810
Creating background process that fetches comments for Videos that do not yet have comments.
...
Displaying star for Uploader's comments, heart for favorited comments.
Adding wrolpi help files desktop shortcut to rpi image.
Using zim file names as FileGroup.title.
Removing accidental output commit.
2024-03-01 17:15:56 -07:00
Roland
32346dedc8
Fixing download url for Electronics and Unix zim files.
2024-02-19 16:00:51 -07:00
Roland
4f4b2bdc72
Fixing Arduino download URL.
2024-02-13 14:22:25 -07:00
Roland
afecb62114
Adding medical wiki projects.
2024-02-13 14:16:16 -07:00
Roland
acaec9eacc
Testing special english stack overflow url.
2024-02-12 13:05:14 -07:00
Roland
80d9b74a03
Fixing english stackoverflow download url.
2024-02-12 12:51:12 -07:00
Roland
971eb4f99a
Adding many more Stack Exchange Zim subscriptions.
2024-02-12 12:40:56 -07:00
Roland
8b67dc87ff
Checking that tests are happening in tmp directory.
2024-02-05 14:52:38 -07:00
Roland
377c69e8a7
Adding search icon button to navbar.
2024-01-01 11:31:17 -07:00
Roland
d87bc7b314
Fetching search estimate with tags separate from suggestions.
2023-11-29 21:09:39 -07:00
Roland
bbfe76890b
Converting Search Suggetions to a Context. Search estimates is removed and suggestions is used instead.
2023-11-22 12:19:49 -07:00
Roland
73cb142ae1
Reverting to older singlefile container to keep archive screenshot ratio. Using FileGroup.url on ArchivePage.
2023-10-31 10:20:45 -06:00
Roland
ae9d188391
Adding FileGroup.published_date/author/etc. Creating script which converts a Singlefile to an Archive FileGroup files.
...
Parsing SingleFile datetime using dates.strpdate.
Adding timezone when no timezone info is available.
Installing python-dateutil to assist in handling diverse datetime strings.
Reworking refresh progress to use idempotency to display more accurate progress. Only logging that files have been invalidated if they used to be indexed.
Clearing archives to force re-index.
Ignoring 'Unknown' author from PDF metadata. Using file_title when pdf metadata title is empty.
2023-10-23 18:09:08 -06:00
Roland
b819b9c916
Adding Amateur Radio zim download.
2023-10-09 16:46:46 -06:00
Roland
f14df90174
Removing unused imports.
2023-09-12 17:49:26 -06:00
Roland
a0e5c5d550
Wikipedia mini increased in size.
2023-08-24 07:48:35 -06:00
Roland
6458316d1a
Removing unused /videos/tag. Sending events when Channels are created or deleted.
2023-07-17 17:32:29 -06:00
Roland
fdaaa510c4
Splitting errors into their modules. Removing API_ERRORS dict in favor of storing error data on the class.
2023-07-17 14:21:27 -06:00
Roland
551aa50bce
Skipping kiwix restart during testing before flagging.
2023-07-11 17:15:44 -06:00
Roland
6f94dac2e8
Setting Kiwix restart flag when service can't be restarted.
2023-07-11 17:10:43 -06:00