History
0.6.46 (2020-09-21)
Add
ricecooker.utils.youtube, containing utilities for handling and caching YouTube videos and playlists.Improve validation of
mandnmastery model values inExerciseNode.
0.6.45 (2020-07-25)
Remove SushiBar remote monitoring and remote command functionality
0.6.44 (2020-07-16)
Documentation overhaul and refresh, see ricecooker.readthedocs.io
Add support for specifying a Channel tagline
Ensure we send
extra_fieldsdata for all node typesMake
--resetbehavior the defaultRemove legacy code around
compatibiliry_modeand BaseChef classImproved caching logic (no caching for thumbnails and local paths, always cache youtube downloads)
Ensure chefs clean up after run (automatic temp files removal)
Added
save_channel_tree_as_jsonfull channel metadata as part of every run.Added support for web content archiving
Further improvements to logging
Bugfix: deep deterministic cache keys for nested dicts values in
ffmpeg_settings
0.6.42 (2020-04-10)
Added
--sample Ncommand line option. Run script with--sample 10to produce a test version of the channel with 10 randomly selected nodes from the full channel. Use this to check transformations are working as expected.Added
dryruncommand. Use the command./sushichef.py dryrunto run the chef as normal but skip the step where the files get uploaded to Studio.Added HTTP proxy functionality for YouTubeVideoFile and YouTubeSubtitleFile Set the
PROXY_LISTenv variable to a;-separated list of{ip}:{port}. Ricecooker will detect the presence of thePROXY_LISTand use it when accessing resources via YoutubeDL. Alternatively, setUSEPROXYenv var to use a list of free proxy servers, which are very slow and not reliable.Improved colored logging functionality and customizability of logging output.
0.6.40 (2020-02-07)
Changed default behaviour to upload the staging tree instead of the main tree
Added
--deployflag to reproduce old bahavior (upload to main tree)Added thumbnail generating methods for audio, HTML5, PDF, and ePub nodes. Set the
derive_thumbnail=Truewhen creating the Node instance, or pass the command line argument--thumbnailsto generate thumbnails for all nodes. Note: automatic thumbnail generation will only work ifthumbnailis None.
0.6.38 (2019-12-27)
Added support the
h5pcontent kind andh5pfile typeRemoved monkey-patching of
localStorageanddocument.cookiein the helper methoddownload_static_assetsAdded validation logic for tags
Improved error reporting
0.6.36 (2019-09-25)
Added support for tags using the
JsonChefworkflowAdded validation step to ensure subtitles file are unique for each language code
Document new
SlidesShowcontent kind coming in Kolibri 0.13Added docs with detailed instruction for content upload and update workflows
Bugfixes to file extension logic and improved error handling around subtitles
0.6.32 (2019-08-01)
Updated documentation to use top-level headings
Removed support for Python 3.4
Removed support for the “sous chef” workflow
0.6.31 (2019-07-01)
Handle more subtitle convertible formats:
SRT,TTML,SCC,DFXP, andSAMI
0.6.30 (2019-05-01)
Updated docs build scripts to make ricecooker docs available on read the docs
Added
correctionscommand line script for making bulk edits to content metadataAdded
StudioApiclient to support CRUD (created, read, update, delete) Studio actionsAdded pdf-splitting helper methods (see
ricecooker/utils/pdf.py)
0.6.23 (2018-11-08)
Updated
le-utilsandpressurcookerdependencies to latest versionAdded support for ePub files (
EPubFiles can be added ofDocumentNodes)Added tag support
Changed default value for
STUDIO_URLtoapi.studio.learningequality.orgAdded
aggregatorandproviderfields for content nodesVarious bugfixes to image processing in exercises
Changed validation logic to use
self.filenameto check file format is inself.allowed_formatsAdded
is_youtube_subtitle_file_supported_languagehelper function to support importing youtube subsAdded
srt2vttsubtitles conversionAdded static assets downloader helper method in
utils.downloader.download_static_assetsAdded LineCook chef functions to
--generateCSV from directory structureFixed the always
randomize=TruebugDocs: general content node metadata guidelines
Docs: video compression instructions and helper scripts
convertvideo.batandconvertvideo.sh
0.6.17 (2018-04-20)
Added support for
roleattribute on ConentNodes (currentlycoach||learner)Update pressurecooker dependency (to catch compression errors)
Docs improvements, see https://github.com/learningequality/ricecooker/tree/master/docs
0.6.15 (2018-03-06)
Added support for non-mp4 video files, with auto-conversion using ffmpeg. See
git diff b1d15fa 87f2528Added CSV exercises workflow support to
LineCookchef classAdded –nomonitor CLI argument to disable sushibar functionality
Defined new ENV variables: * PHANTOMJS_PATH: set this to a phantomjs binary (instead of assuming one in node_modules) * STUDIO_URL (alias CONTENTWORKSHOP_URL): set to URL of Kolibri Studio server where to upload files
Various fixes to support sushi chefs
Removed
minimize_html_css_jsutility function fromricecooker/utils/html.pyto remove dependency oncss_html_js_minifyand support Py3.4 fully.
0.6.9 (2017-11-14)
Changed default logging level to –verbose
Added support for cronjobs scripts via –cmdsock (see docs/daemonization.md)
Added tools for creating HTML5Zip files in utils/html_writer.py
Added utility for downloading HTML with optional js support in utils/downloader.py
Added utils/path_builder.py and utils/data_writer.py for creating souschef archives (zip archive that contains files in a folder hierarchy + Channel.csv + Content.csv)
0.6.7 (2017-10-04)
Sibling content nodes are now required to have unique source_id
The field copyright_holder is required for all licenses other than public domain
0.6.7 (2017-10-04)
Sibling content nodes are now required to have unique source_id
The field copyright_holder is required for all licenses other than public domain
0.6.6 (2017-09-29)
Added JsonTreeChef class for creating channels from ricecooker json trees
Added LineCook chef class to support souschef-based channel workflows
0.6.4 (2017-08-31)
Added language attribute for ContentNode (string key in internal repr. defined in le-utils)
Made language a required attribute for ChannelNode
Enabled sushibar.learningequality.org progress monitoring by default Set SUSHIBAR_URL env. var to control where progress is reported (e.g. http://localhost:8001)
Updated le-utils and pressurecooker dependencies to latest
0.6.2 (2017-07-07)
Clarify ricecooker is Python3 only (for now)
Use https:// and wss:// for SuhiBar reporting
0.6.0 (2017-06-28)
Remote progress reporting and logging to SushiBar (MVP version)
New API based on the SuchiChef classes
Support existing old-API chefs in compatibility mode
0.5.13 (2017-06-15)
Last stable release before SushiBar functionality was added
Renamed –do-not-activate argument to –stage
0.1.0 (2016-09-30)
First release on PyPI.