Commit graph

651 commits

Author SHA1 Message Date
Christopher Holmes
3ab1abf59c Abbreviate Atmospheric as Atmos. (#5938)
example:
"Atmospheric Chemistry and Physics" is currently incorrectly abbreviated as "Atmospheric Chem. Phys." should be abbreviated "Atmos. Chem. Phys."

(cherry picked from commit 31b3ead557)
2026-07-06 13:05:55 -04:00
Dan Stillman
6881089b1b Update translators
Some checks are pending
CI / Build, Upload, Test (push) Waiting to run
2026-05-21 10:23:14 -04:00
Dan Stillman
5af27a0194 Update translators
Some checks failed
CI / Build, Upload, Test (push) Has been cancelled
2026-04-30 12:43:37 -04:00
Dan Stillman
7f9fdc0786 Update translators, styles, CSL locales, and renamed-styles.json 2026-04-02 15:51:43 -04:00
Tom Najdek
862573eabc
Per-group file renaming settings (#5862)
Also:

- Add `isAdmin` property to libraries
 
---------

Co-authored-by: Dan Stillman <dstillman@zotero.org>
2026-04-02 15:15:06 -04:00
Dan Stillman
e629a3c456 Update global schema to version 42 to enable lastRead fetching 2026-03-21 13:31:11 -04:00
Dan Stillman
d20cac39c9 Fix unhandled promise rejections in ConcurrentCaller when clearing queue
When stop() or stopOnError rejected queued task promises, the rejection
handlers (via Promise.allSettled) weren't attached yet, causing Mozilla
to report each one as "uncaught exception: Object". Add no-op catch
handlers before rejecting so the runtime knows they'll be handled
downstream. Also fix stopOnError path to reject with CanceledException
instead of undefined, and remove legacy Bluebird handledRejection flag.
2026-03-17 13:59:52 -04:00
Abe Jellinek
34039991f8
Track attachment last-read time, add Recently Read virtual collection (#2854)
Track when attachments are last opened or read, storing a `lastRead` Unix timestamp on the attachment. For user library items, `lastRead` syncs as an attachment property in item JSON. For group library items, it syncs via a per-user synced setting (like `lastPageIndex`).

- Add `lastRead` column to `itemAttachments`
- Add `AttachmentReadObserver` to update `lastRead` on file open and page change (throttled to 5 min for page changes)
- Add "Recently Read" virtual collection (items read in last 14 days, sorted by `lastRead` descending)
- Add `lastRead` search condition with date operators
- Add `lastRead` item tree column with new `dependsOnChildren` property for parent item aggregation
- Add `getItemLastRead()` to return max `lastRead` across child attachments

Also:

- Generalize collection tree SCSS to support universal (context-fill) icons alongside themed icons

---------

Co-authored-by: Dan Stillman <dstillman@zotero.org>
2026-03-17 13:52:00 -04:00
Abe Jellinek
13f1606dc7 Read Aloud: Implement onPurchaseReadAloudCredits() 2026-03-02 14:47:14 -05:00
Dan Stillman
85bff00a3c Update translators 2026-01-27 13:46:49 -05:00
Adomas Ven
6697db1dba
Delete duplicate renamed styles on init (#5734)
After citation-style-language/styles#7928 renamed Vancouver styles to
NLM terminology, Zotero installations end up with both vancouver.csl
and nlm-citation-sequence.csl. To fix, on init, delete any installed style
whose ID appears in the renamed-styles mapping if the target style
also exists.

---------

Co-authored-by: Dan Stillman <dstillman@zotero.org>
2026-01-26 10:35:43 -05:00
Dan Stillman
67c10a9ff7 Update bundled styles and renamed styles 2026-01-25 22:12:52 -05:00
Dan Stillman
cc95b93741 Update translators 2026-01-20 12:06:55 -05:00
Dan Stillman
e9bcf6f10a Update global schema
Locale updates
2026-01-20 12:06:54 -05:00
Dan Stillman
72321ead34 Update bundled styles and renamed-styles.json 2026-01-13 12:05:38 -05:00
Dan Stillman
42b559dda2 Update global schema 2026-01-13 12:05:38 -05:00
Dan Stillman
689e59f161 Update global schema
Remove "Creator" from "Audio Recording"
2025-12-26 23:45:24 -05:00
Dan Stillman
3256273015 Update global schema
"Uploader" → "Creator" on Video Recording
2025-12-26 23:35:43 -05:00
Dan Stillman
f0ff173ad2 Update global schema to remove arXivID field 2025-12-26 15:36:13 -05:00
Dan Stillman
f0bbb9b370 Update global schema 2025-12-25 00:20:34 -05:00
Dan Stillman
611acd0703 Update global schema 2025-12-24 22:00:52 -05:00
windingwind
e522f6185e
Add note as tab (#5528) 2025-12-18 23:49:42 -05:00
Dan Stillman
4ca9bbdae5 Automatically show post-upgrade banner for each new major version
And remove the density switcher
2025-12-16 13:50:27 -05:00
Dan Stillman
34508e145c Update translators, styles, and CSL locales 2025-12-16 10:42:48 -05:00
Dan Stillman
d1f478fc4e Update translators, styles, and CSL locales 2025-10-14 12:03:25 -04:00
Abe Jellinek
afc02141ce
Replace CSL validator with reproducible WASM build (#5525) 2025-08-29 00:40:41 -04:00
Abe Jellinek
23567b0395
ESMify feed processing code (#5520) 2025-08-26 23:42:00 -04:00
Dan Stillman
e7805914f4 ConcurrentCaller: Increment numRunning in the correct place 2025-07-30 22:31:09 -04:00
Dan Stillman
0f560f4e4c ConcurrentCaller: Fix return value in comment after Bluebird removal 2025-07-30 22:31:09 -04:00
Dan Stillman
5c172e3be9 ConcurrentCaller: Reject queued promises when stopping queue
Previously, we simply cleared the queue, leaving any pending promises
unresolved, and we checked for isResolved()/isPending() in
storageEngine.js (and maybe other places). storageEngine.js was changed
to simply await those promises, but that results in a hang if the queue
is stopped, since the promises were never resolved. Instead, when
stopping the queue, reject queued promises with a CanceledException and
ignore those promises in storageEngine.js.
2025-07-30 22:31:08 -04:00
Dan Stillman
1500fb9fa3 ConcurrentCaller: Revert to Promise.delay()
We're shimming it, and we override it with a stub in a syncAPIClient
test.
2025-07-30 22:31:07 -04:00
Adomas Venčkauskas
601a1f2292 fx140: ESMify word-processor-plugin-installer 2025-07-30 22:30:52 -04:00
Abe Jellinek
9be57b3110 Update ConcurrentCaller to use native promises 2025-07-30 22:30:29 -04:00
Abe Jellinek
a080b7c9c6 fx140: Give require()'d modules a window context 2025-07-30 22:18:36 -04:00
Abe Jellinek
ece2b59700 fx140: More progress toward startup 2025-07-30 22:18:36 -04:00
Abe Jellinek
c506e41072 fx140: Add working require.js, more progress toward startup 2025-07-30 22:18:36 -04:00
Abe Jellinek
8d0923f119 fx140: Remove Bluebird
All module code runs in strict mode, and that breaks Bluebird.

And add a partial shim for the simplest and most useful methods. Not
sure if we actually want that, or if we should just replace it entirely
with native methods.
2025-07-30 22:18:35 -04:00
Dan Stillman
7a4aef1b32 Update styles and CSL locales
Including new Chicago styles
2025-07-15 00:46:09 -04:00
Abe Jellinek
650be7d350
Scaffold code completion (#5171) 2025-04-09 00:36:22 -04:00
Dan Stillman
ebc670bb56 Update translators, styles, and CSL locales 2025-03-18 23:46:45 -04:00
Adomas Venčkauskas
a3654652b2 Adds a Citation Explorer dialog for document integration (#3468) 2025-03-10 22:40:43 -04:00
Abe Jellinek
eb30c23a0d
Scaffold: Infer types of parameters based on naming conventions (#5038) 2025-02-18 05:07:51 -05:00
Dan Stillman
46879a8241 Add Date field on Podcast
zotero/zotero-bits#2
2025-02-05 02:52:17 -05:00
Dan Stillman
9606fca3ad fx128: XPCOMUtils.defineLazyGetterChromeUtils.defineLazyGetter
Avoids deprecation warning
2024-12-14 01:16:01 -05:00
Dan Stillman
97329752a1 fx128: Remove Services.jsm imports
Now included automatically
2024-12-14 01:16:00 -05:00
Dan Stillman
ee4c244e0f Update translators 2024-11-26 02:34:02 -05:00
Dan Stillman
2ce9b4701b Update translators 2024-11-21 02:55:59 -05:00
Abe Jellinek
bc2c7956db FeedProcessor: Handle dc:creator in Atom feeds
Fixes #4857
2024-11-20 10:05:39 -05:00
Dan Stillman
ddacfc0b8a Strip invalid quotes around charset in feed responses
E.g., https://bmcmedethics.biomedcentral.com/articles/most-recent/rss.xml
2024-11-19 05:03:36 -05:00
Dan Stillman
fadbf3d2df Update translators 2024-10-29 07:11:29 -04:00