Commit Graph

40180 Commits

Author SHA1 Message Date
Kovid Goyal ed5a92d9ae Clean up test 2026-05-13 15:49:33 +05:30
Kovid Goyal cf3a6f4e6f E-book viewer: Fix incorrect search match offsets in normal search mode when the text contains non-BMP Unicode characters. Fixes #2152227 [search ignors some chars](https://bugs.launchpad.net/calibre/+bug/2152227) 2026-05-13 15:46:02 +05:30
un-pogaz f36fb3cdf3 cli: dump metadata only of the added books 2026-05-12 13:09:48 +02:00
Kovid Goyal c4d3d5e380 pep8 2026-05-10 21:32:00 +05:30
Kovid Goyal 550f8d8f76 Cleanup previous PR 2026-05-10 12:20:14 +05:30
Wang Rui 4dd8333899 Fix Reference Counting (Use-After-Free) Bugs for PyTuple_SetItem 2026-05-10 13:56:44 +08:00
Kovid Goyal b09d30a660 Missed a couple of places that needed to change SSL_CERT_FILE to SSL_CERT_DIR 2026-05-08 14:39:07 +05:30
Kovid Goyal 7790a9709f Disable test in CI
CI testing doesnt have env var set
2026-05-08 13:42:53 +05:30
Kovid Goyal 71a3a4d7ae Switch to using directory format for bundled CA certs
This is the preferred format for OpenSSL so use it. Supposedly has
better performance, though given the very small number of certificates
involved I doubt it's even measurable.
2026-05-08 13:22:04 +05:30
Kovid Goyal 062204378d Fix compiler warning 2026-05-08 12:17:53 +05:30
OscarL dbd2f2d335 calibre/constants.py: sys.platform now returns just "haiku" on Haiku. 2026-05-06 14:52:33 -03:00
Kovid Goyal 92bbf1c9b1 A new option to keep the current search when switching Virtual libraries under Preferences->Searching. Fixes #2151262 [[Enhancement] Option for persistant Search Box Text](https://bugs.launchpad.net/calibre/+bug/2151262)
Merge branch 'copilot/add-keep-search-on-library-switch' of https://github.com/kovidgoyal/calibre
2026-05-06 12:24:05 +05:30
copilot-swe-agent[bot] ae1c32ff12 Add option to keep search when switching virtual libraries
Agent-Logs-Url: https://github.com/kovidgoyal/calibre/sessions/d83576cb-8bd5-472f-bcac-27349b7b71b3

Co-authored-by: kovidgoyal <1308621+kovidgoyal@users.noreply.github.com>
2026-05-06 06:47:02 +00:00
Kovid Goyal e6ee31db5d string changes 2026-05-06 12:09:31 +05:30
copilot-swe-agent[bot] 3a5a59c14e Use exact MIME type comparison for PNG in compress_images
Agent-Logs-Url: https://github.com/kovidgoyal/calibre/sessions/d5646ed7-6ca4-4397-aca0-6f81d9ee2252

Co-authored-by: kovidgoyal <1308621+kovidgoyal@users.noreply.github.com>
2026-05-05 15:58:43 +00:00
copilot-swe-agent[bot] b8678f90f8 Add option to disable PNG compression in compress images losslessly tool
Agent-Logs-Url: https://github.com/kovidgoyal/calibre/sessions/d5646ed7-6ca4-4397-aca0-6f81d9ee2252

Co-authored-by: kovidgoyal <1308621+kovidgoyal@users.noreply.github.com>
2026-05-05 15:57:47 +00:00
Kovid Goyal f3687893aa Bulk metadata dialog: Fix backspace key not working in number input boxes when set to Undefined 2026-05-04 21:41:28 +05:30
Kovid Goyal c6156fa53f Add from ISBN: Ignore space around the colon used to separate identifier type from value. Fixes #2150806 [Add books by space removal when pasting from clipboard](https://bugs.launchpad.net/calibre/+bug/2150806) 2026-05-04 09:13:19 +05:30
Kovid Goyal 34b41c41e0 string changes 2026-05-04 09:05:55 +05:30
Kovid Goyal 76070d1b21 pep8 2026-05-01 19:59:20 +05:30
Kovid Goyal f2857a729f Merge branch 'WolneLektury-fix' of https://github.com/CossackLucas/calibre 2026-05-01 19:58:49 +05:30
CossackLucas fac8566835 Expanded functionality for WolneLektury store 2026-05-01 12:07:45 +02:00
Kovid Goyal f9c76f0974 version 9.8.0 2026-05-01 08:10:20 +05:30
Kovid Goyal 01b23cba7b Remove newlines when displaying the characters report 2026-05-01 08:02:05 +05:30
Kovid Goyal 9bf99dc2b8 ... 2026-04-30 19:38:02 +05:30
Kovid Goyal 4686f9db5b Add quit after jobs finish button to confirm quit dialog 2026-04-29 10:03:37 +05:30
Kovid Goyal 44e40b34f5 Cleanup previous PR 2026-04-29 09:43:45 +05:30
Kovid Goyal 28f6558ad8 Merge branch 'auto-close-jobs' of https://github.com/un-pogaz/calibre 2026-04-29 09:18:50 +05:30
ishanray bf30123fb8 Fix viewer not updating dark/light mode on system theme change
When the system color scheme changes (e.g. light to dark), the viewer's
change_color_scheme handler updates opts.color_scheme but never updates
opts.is_dark_theme, which remains at its initialization value.

This causes set_color_scheme_class() to use a stale value, so the
calibre-viewer-dark-colors / calibre-viewer-light-colors class on body
never updates. When override_book_colors is set to 'dark', the CSS
override rule only matches when the dark class is present, so the book
content stays in the old theme.

Fix by updating opts.is_dark_theme from the incoming color scheme data
before calling apply_colors() and set_color_scheme_class().
2026-04-28 12:11:35 -04:00
un-pogaz 815fb4bc30 allow auto close when all jobs finished 2026-04-27 20:02:05 +02:00
copilot-swe-agent[bot] cf1073a2e7 Add reset zoom to 100% to preview pane right-click menu
Agent-Logs-Url: https://github.com/kovidgoyal/calibre/sessions/ce72136c-a4a4-4bc6-b03f-711888d9d266

Co-authored-by: kovidgoyal <1308621+kovidgoyal@users.noreply.github.com>
2026-04-27 00:52:29 +00:00
Kovid Goyal 388f978f7d Escape HTML in legacy details page 2026-04-23 17:12:10 +05:30
Kovid Goyal 091b409e3f ... 2026-04-23 09:31:54 +05:30
Kovid Goyal af8a6e142d Dont print useless tracebacks in functiondispatcher 2026-04-23 09:29:30 +05:30
Kovid Goyal 0e529de1b2 Cleanup previous PR 2026-04-21 20:34:26 +05:30
Kovid Goyal 7bf64008b1 Merge branch 'legacy-book-fix' of https://github.com/lgdeysel1980/calibre 2026-04-21 20:34:22 +05:30
Kovid Goyal 7b7a1c6b94 Cleanup previous PR 2026-04-21 19:25:50 +05:30
lgdeysel1980@gmail.com be839bf8ca Fix legacy book details endpoint routing and rendering; improve mobile styling 2026-04-21 13:55:52 +02:00
ECB b0c4ba1968 Fix security vulnerabilities and code quality issues
High severity:
- Fix typo normapth -> normpath in srv/content.py (broken endpoint)
- Replace eval() with ast.literal_eval() in catalogs/epub_mobi.py
- Log exceptions in FunctionDispatcher.dispatch instead of swallowing

Medium severity:
- Add path traversal protection to DirContainer read/write/exists
- Fix XPath injection in comments_editor.py merge_contiguous_links
- Use parameterized SQL queries in database2.py library_id setter
- Add safety comment to pickle_loads in utils/serialize.py
2026-04-21 12:48:42 +02:00
Kovid Goyal 9fba48765a Remove some eval() calls
They are perfectly harmless but I dont want to have to deal with endless
cargo cult security advisories about them.
2026-04-19 12:03:52 +05:30
un-pogaz ad798fc988 DRY 2026-04-17 11:29:52 +02:00
Kovid Goyal 771315bb3e Fix multiprocessing forkserver not working with python 3.14.4
Because of this: https://github.com/python/cpython/pull/148195
2026-04-17 13:48:56 +05:30
Kovid Goyal cfb2e7566e pep8 2026-04-17 09:44:11 +05:30
Kovid Goyal 073f67522a Merge branch 'codex/add-openai-compatible-provider' of https://github.com/lazydao/calibre 2026-04-17 09:43:29 +05:30
Kovid Goyal 0b91aa8354 ... 2026-04-17 09:41:29 +05:30
Kovid Goyal 5379b5bb62 Cleanup previous PR 2026-04-17 09:19:28 +05:30
Kovid Goyal ad1da12068 Merge branch 'codex/throttle-ai-chat-streaming' of https://github.com/lazydao/calibre 2026-04-17 09:15:30 +05:30
Kovid Goyal ab24d2e152 Native TTS engine: Normalize text to NFKC so that word tracking works when the native engine reports spoken word with different normal form 2026-04-17 08:51:55 +05:30
Kovid Goyal 1a87b70c12 When converting GIF images to PNG workaround bug in PIL causing exception when checking if the GIF is animated. Fixes #2148533 [Failure converting MOBI file to EPUB](https://bugs.launchpad.net/calibre/+bug/2148533) 2026-04-16 13:15:01 +05:30
Kovid Goyal d5c887d569 Use paths for another instance of safe_replace 2026-04-15 04:53:42 +05:30