@@ -142,6 +142,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
142
142
- [ libzim] ` Archive.media_count `
143
143
144
144
### Changed
145
+
145
146
- [ libzim] ` Archive.article_count ` updated to match scraperlib's version
146
147
- ` Archive.article_counter ` now deprecated. Now returns ` Archive.article_count `
147
148
- ` Archive.media_counter ` now deprecated. Now returns ` Archive.media_count `
@@ -219,197 +220,194 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
219
220
- Unreachable code removed in ` imaging ` module.
220
221
- [ tests] “Sanskrit” removed from tests as output not predicatble depending on plaftform.
221
222
222
-
223
223
## [ 1.4.3]
224
224
225
- * ` zim.Archive.counters ` wont fail on missing ` Counter ` metadata
225
+ - ` zim.Archive.counters ` wont fail on missing ` Counter ` metadata
226
226
227
227
## [ 1.4.2]
228
228
229
- * Fixed leak in ` zim.Archive ` 's ` .counters `
230
- * New ` .get_text_metadata() ` method on ` zim.Archive ` to save UTF-8 decoding
229
+ - Fixed leak in ` zim.Archive ` 's ` .counters `
230
+ - New ` .get_text_metadata() ` method on ` zim.Archive ` to save UTF-8 decoding
231
231
232
232
## [ 1.4.1]
233
233
234
- * New ` Counter ` metadata based properties for Archive:
235
- * ` .counters ` : parsed dict of the Counter metadata
236
- * ` .article_counter ` : libkiwix's calculation for nb or article
237
- * ` .media_counter ` : libkiwix's calculation for nb or media
238
- * Fixed ` i18n.find_language_names() ` failing on some languages
239
- * Added ` uri ` module with ` rebuild_uri() `
240
-
234
+ - New ` Counter ` metadata based properties for Archive:
235
+ - ` .counters ` : parsed dict of the Counter metadata
236
+ - ` .article_counter ` : libkiwix's calculation for nb or article
237
+ - ` .media_counter ` : libkiwix's calculation for nb or media
238
+ - Fixed ` i18n.find_language_names() ` failing on some languages
239
+ - Added ` uri ` module with ` rebuild_uri() `
241
240
242
241
## [ 1.4.0]
243
242
244
- * Using new python-libzim based on libzim v7
245
- * New Creator API
246
- * Removed all namespace references
247
- * Renamed ` url ` mentions to ` path `
248
- * Removed all links rewriting
249
- * Removed Article/CSS/Binary seggreation
250
- * Kept zimwriterfs mode (except it doesn't rewrite for namespaces)
251
- * New ` html ` module for HTML document manipulations
252
- * New callback system on ` add_item_for() ` and ` add_item() `
253
- * New Archive API with easier search/suggestions and content access
254
- * Changed download log level to DEBUG (was INFO)
255
- * ` filesystem.get_file_mimetype ` now passes bytes to libmagic instead of filename due to release issue in libmagic
256
- * safer ` inputs.handle_user_provided_file ` regarding input as str instead of Path
257
- * ` image.presets ` and ` video.presets ` now all includes ` ext ` and ` mimetype ` properties
258
- * Video convert log now DEBUG instead of INFO
259
- * Fixed ` image.save_image() ` saving to disk even when using a bytes stream
260
- * Fixed ` image.transformation.resize_image() ` when resizing a byte stream without a dst
243
+ - Using new python-libzim based on libzim v7
244
+ - New Creator API
245
+ - Removed all namespace references
246
+ - Renamed ` url ` mentions to ` path `
247
+ - Removed all links rewriting
248
+ - Removed Article/CSS/Binary seggreation
249
+ - Kept zimwriterfs mode (except it doesn't rewrite for namespaces)
250
+ - New ` html ` module for HTML document manipulations
251
+ - New callback system on ` add_item_for() ` and ` add_item() `
252
+ - New Archive API with easier search/suggestions and content access
253
+ - Changed download log level to DEBUG (was INFO)
254
+ - ` filesystem.get_file_mimetype ` now passes bytes to libmagic instead of filename due to release issue in libmagic
255
+ - safer ` inputs.handle_user_provided_file ` regarding input as str instead of Path
256
+ - ` image.presets ` and ` video.presets ` now all includes ` ext ` and ` mimetype ` properties
257
+ - Video convert log now DEBUG instead of INFO
258
+ - Fixed ` image.save_image() ` saving to disk even when using a bytes stream
259
+ - Fixed ` image.transformation.resize_image() ` when resizing a byte stream without a dst
261
260
262
261
## [ 1.3.6 (internal)]
263
262
264
263
Intermediate release using unreleased libzim to support development of libzim7.
265
264
Don't use it.
266
265
267
- * requesting newer libzim version (not released ATM)
268
- * New ZIM API for non-namespace libzim (v7)
269
- * updated all requirements
270
- * Fixed download test inconsistency
271
- * fix_ogvjs mostly useless: only allows webm types
272
- * exposing retry_adapter for refactoring
273
- * Changed download log level to DEBUG (was INFO)
274
- * guess more-defined mime from filename if magic says it's text
275
- * get_file_mimetype now passes bytes to libmagic
276
- * safer regarding input as str instead of Path
277
- * fixed static item for empty content
278
- * ext and mimetype properties for all presets
279
- * Video convert log now DEBUG instead of INFO
280
- * Added delete_fpath to add_item_for() and fixed StaticItem's auto remove
281
- * Updated badges for new repo name
266
+ - requesting newer libzim version (not released ATM)
267
+ - New ZIM API for non-namespace libzim (v7)
268
+ - updated all requirements
269
+ - Fixed download test inconsistency
270
+ - fix_ogvjs mostly useless: only allows webm types
271
+ - exposing retry_adapter for refactoring
272
+ - Changed download log level to DEBUG (was INFO)
273
+ - guess more-defined mime from filename if magic says it's text
274
+ - get_file_mimetype now passes bytes to libmagic
275
+ - safer regarding input as str instead of Path
276
+ - fixed static item for empty content
277
+ - ext and mimetype properties for all presets
278
+ - Video convert log now DEBUG instead of INFO
279
+ - Added delete_fpath to add_item_for() and fixed StaticItem's auto remove
280
+ - Updated badges for new repo name
282
281
283
282
## [ 1.3.5]
284
283
285
- * add ` stream_file() ` to stream content from a URL into a file or a ` BytesIO ` object
286
- * deprecated ` save_file() `
287
- * fixed ` add_binary ` when used without an fpath (#69 )
288
- * deprecated ` make_grayscale ` option in image optimization
289
- * Added support for in-memory optimization for PNG, JPEG, and WebP images
290
- * allows enabling debug logs via ZIMSCRAPERLIB_DEBUG environ
284
+ - add ` stream_file() ` to stream content from a URL into a file or a ` BytesIO ` object
285
+ - deprecated ` save_file() `
286
+ - fixed ` add_binary ` when used without an fpath (#69 )
287
+ - deprecated ` make_grayscale ` option in image optimization
288
+ - Added support for in-memory optimization for PNG, JPEG, and WebP images
289
+ - allows enabling debug logs via ZIMSCRAPERLIB_DEBUG environ
291
290
292
291
## [ 1.3.4]
293
292
294
- * added ` wait ` option in ` YoutubeDownloader ` to allow parallelism while using context manager
295
- * do not use extension for finding format in ` ensure_matches() ` in ` image.optimization ` module
296
- * added ` VideoWebmHigh ` and ` VideoMp4High ` presets for high quality WebM and Mp4 convertion respectively
297
- * updated presets ` WebpHigh ` , ` JpegMedium ` , ` JpegLow ` and ` PngMedium ` in ` image.presets `
298
- * ` save_image ` moved from ` image ` to ` image.utils `
299
- * added ` convert_image ` ` optimize_image ` ` resize_image ` functions to ` image ` module
293
+ - added ` wait ` option in ` YoutubeDownloader ` to allow parallelism while using context manager
294
+ - do not use extension for finding format in ` ensure_matches() ` in ` image.optimization ` module
295
+ - added ` VideoWebmHigh ` and ` VideoMp4High ` presets for high quality WebM and Mp4 convertion respectively
296
+ - updated presets ` WebpHigh ` , ` JpegMedium ` , ` JpegLow ` and ` PngMedium ` in ` image.presets `
297
+ - ` save_image ` moved from ` image ` to ` image.utils `
298
+ - added ` convert_image ` ` optimize_image ` ` resize_image ` functions to ` image ` module
300
299
301
300
## [ 1.3.3]
302
301
303
- * added ` YoutubeDownloader ` to ` download ` to download YT videos using a capped nb of threads
302
+ - added ` YoutubeDownloader ` to ` download ` to download YT videos using a capped nb of threads
304
303
305
304
## [ 1.3.2]
306
305
307
- * fixed rewriting of links with empty target
308
- * added support for image optimization using ` zimscraperlib.image.optimization ` for webp, gif, jpeg and png formats
309
- * added ` format_for() ` in ` zimscraperlib.image.probing ` to get PIL image format from the suffix
306
+ - fixed rewriting of links with empty target
307
+ - added support for image optimization using ` zimscraperlib.image.optimization ` for webp, gif, jpeg and png formats
308
+ - added ` format_for() ` in ` zimscraperlib.image.probing ` to get PIL image format from the suffix
310
309
311
310
## [ 1.3.1]
312
311
313
- * replaced BeautifoulSoup parser in rewriting (` html.parser ` –> ` lxml ` )
312
+ - replaced BeautifoulSoup parser in rewriting (` html.parser ` –> ` lxml ` )
314
313
315
314
## [ 1.3.0]
316
315
317
- * detect mimetypes from filenames for all text files
318
- * fixed non-filename based StaticArticle
319
- * enable rewriting of links in poster attribute of audio element
320
- * added find_language_in() and find_language_in_file() to get language from HTML content and HTML file respectively
321
- * add a mime mapping to deal with inconsistencies in mimetypes detected by magic on different platforms
322
- * convert_image signature changed:
323
- * ` target_format ` positional argument removed. Replaced with optionnal ` fmt ` key of keyword arguments.
324
- * ` colorspace ` optionnal positional argument removed. Replaced with optionnal ` colorspace ` key of keyword arguments.
325
- * prevent rewriting of links with special schemes ` mailto ` , 'tel', etc. in HTML links rewriting
326
- * replaced ` imaging ` module with exploded ` image ` module (` convertion ` , ` probing ` , ` transformation ` )
327
- * changed ` create_favicon() ` param names (` source_image ` -> ` src ` , ` dest_ico ` -> ` dst ` )
328
- * changed ` save_image() ` param names (` image ` -> ` src ` )
329
- * changed ` get_colors() ` param names (` image_path ` -> ` src ` )
330
- * changed ` resize_image() ` param names (` fpath ` -> ` src ` )
316
+ - detect mimetypes from filenames for all text files
317
+ - fixed non-filename based StaticArticle
318
+ - enable rewriting of links in poster attribute of audio element
319
+ - added find_language_in() and find_language_in_file() to get language from HTML content and HTML file respectively
320
+ - add a mime mapping to deal with inconsistencies in mimetypes detected by magic on different platforms
321
+ - convert_image signature changed:
322
+ - ` target_format ` positional argument removed. Replaced with optionnal ` fmt ` key of keyword arguments.
323
+ - ` colorspace ` optionnal positional argument removed. Replaced with optionnal ` colorspace ` key of keyword arguments.
324
+ - prevent rewriting of links with special schemes ` mailto ` , 'tel', etc. in HTML links rewriting
325
+ - replaced ` imaging ` module with exploded ` image ` module (` convertion ` , ` probing ` , ` transformation ` )
326
+ - changed ` create_favicon() ` param names (` source_image ` -> ` src ` , ` dest_ico ` -> ` dst ` )
327
+ - changed ` save_image() ` param names (` image ` -> ` src ` )
328
+ - changed ` get_colors() ` param names (` image_path ` -> ` src ` )
329
+ - changed ` resize_image() ` param names (` fpath ` -> ` src ` )
331
330
332
331
## [ 1.2.1]
333
332
334
- * fixed URL rewriting when running from /
335
- * added support for link rewriting in ` <object> ` element
336
- * prevent from raising error if element doesn't have the attribute with url
337
- * use non greedy match for CSS URL links (shortest string matching ` url() ` format)
338
- * fix namespace of target only if link doesn't have a netloc
333
+ - fixed URL rewriting when running from /
334
+ - added support for link rewriting in ` <object> ` element
335
+ - prevent from raising error if element doesn't have the attribute with url
336
+ - use non greedy match for CSS URL links (shortest string matching ` url() ` format)
337
+ - fix namespace of target only if link doesn't have a netloc
339
338
340
339
## [ 1.2.0]
341
340
342
- * added UTF8 to constants
343
- * added mime_type discovery via magic (filesystem)
344
- * Added types: mime types guessing from file names
345
- * Revamped zim API
346
- * Removed ZimInfo which role was tu hold metadata for zimwriterfs call
347
- * Removed calling zimwriterfs binary but kept function name
348
- * Added zim.filesystem: zimwriterfs-like creation from a build folder
349
- * Added zim.creator: create files by manually adding each article
350
- * Added zim.rewriting: tools to rewrite links/urls in HTML/CSS
351
- * add timeout and retries to save_file() and make it return headers
341
+ - added UTF8 to constants
342
+ - added mime_type discovery via magic (filesystem)
343
+ - Added types: mime types guessing from file names
344
+ - Revamped zim API
345
+ - Removed ZimInfo which role was tu hold metadata for zimwriterfs call
346
+ - Removed calling zimwriterfs binary but kept function name
347
+ - Added zim.filesystem: zimwriterfs-like creation from a build folder
348
+ - Added zim.creator: create files by manually adding each article
349
+ - Added zim.rewriting: tools to rewrite links/urls in HTML/CSS
350
+ - add timeout and retries to save_file() and make it return headers
352
351
353
352
## [ 1.1.2]
354
353
355
- * fixed ` convert_image() ` which tried to use a closed file
354
+ - fixed ` convert_image() ` which tried to use a closed file
356
355
357
356
## [ 1.1.1]
358
357
359
- * exposed reencode, Config and get_media_info in zimscraperlib.video
360
- * added save_image() and convert_image() in zimscraperlib.imaging
361
- * added support for upscaling in resize_image() via allow_upscaling
362
- * resize_image() now supports params given by user and preservs image colorspace
363
- * fixed tests for zimscraperlib.imaging
358
+ - exposed reencode, Config and get_media_info in zimscraperlib.video
359
+ - added save_image() and convert_image() in zimscraperlib.imaging
360
+ - added support for upscaling in resize_image() via allow_upscaling
361
+ - resize_image() now supports params given by user and preservs image colorspace
362
+ - fixed tests for zimscraperlib.imaging
364
363
365
364
## [ 1.1.0]
366
365
367
- * added video module with reencode, presets, config builder and video file probing
368
- * ` make_zim_file() ` accepts extra kwargs for zimwriterfs
366
+ - added video module with reencode, presets, config builder and video file probing
367
+ - ` make_zim_file() ` accepts extra kwargs for zimwriterfs
369
368
370
369
## [ 1.0.6]
371
370
372
- * added translation support to i18n
371
+ - added translation support to i18n
373
372
374
373
## [ 1.0.5]
375
374
376
- * added s3transfer to verbose dependencies list
377
- * changed default log format to include module name
375
+ - added s3transfer to verbose dependencies list
376
+ - changed default log format to include module name
378
377
379
378
## [ 1.0.4]
380
379
381
- * verbose dependencies (urllib3, boto3) now logged at WARNING level by default
382
- * ability to set verbose dependencies log level and add modules to the list
383
- * zimscraperlib's logging level now aligned with scraper's requested one
384
-
380
+ - verbose dependencies (urllib3, boto3) now logged at WARNING level by default
381
+ - ability to set verbose dependencies log level and add modules to the list
382
+ - zimscraperlib's logging level now aligned with scraper's requested one
385
383
386
384
## [ 1.0.3]
387
385
388
- * fix_ogvjs_dist script more generic (#1 )
389
- * updated zim to support other zimwriterfs params (#10 )
390
- * more flexible requirements for requests dependency
386
+ - fix_ogvjs_dist script more generic (#1 )
387
+ - updated zim to support other zimwriterfs params (#10 )
388
+ - more flexible requirements for requests dependency
391
389
392
390
## [ 1.0.2]
393
391
394
- * fixed return value of ` get_language_details ` on non-existent language
395
- * fixed crash on ` resize_image ` with method ` height `
396
- * fixed root logger level (now DEBUG)
397
- * removed useless ` console=True ` ` getLogger ` param
398
- * completed tests (100% coverage)
399
- * added ` ./test ` script for quick local testing
400
- * improved tox.ini
401
- * added ` create_favicon ` to generate a squared favicon
402
- * added ` handle_user_provided_file ` to handle user file/URL from param
392
+ - fixed return value of ` get_language_details ` on non-existent language
393
+ - fixed crash on ` resize_image ` with method ` height `
394
+ - fixed root logger level (now DEBUG)
395
+ - removed useless ` console=True ` ` getLogger ` param
396
+ - completed tests (100% coverage)
397
+ - added ` ./test ` script for quick local testing
398
+ - improved tox.ini
399
+ - added ` create_favicon ` to generate a squared favicon
400
+ - added ` handle_user_provided_file ` to handle user file/URL from param
403
401
404
402
## [ 1.0.1]
405
403
406
- * fixed fix_ogvjs_dist
404
+ - fixed fix_ogvjs_dist
407
405
408
406
## [ 1.0.0]
409
407
410
- * initial version providing
411
- * download: save_file, save_large_file
412
- * fix_ogvjs_dist
413
- * i18n: setlocale, get_language_details
414
- * imaging: get_colors, resize_image, is_hex_color
415
- * zim: ZimInfo, make_zim_file
408
+ - initial version providing
409
+ - download: save_file, save_large_file
410
+ - fix_ogvjs_dist
411
+ - i18n: setlocale, get_language_details
412
+ - imaging: get_colors, resize_image, is_hex_color
413
+ - zim: ZimInfo, make_zim_file
0 commit comments