Skip to content

v0.12.0

Latest

Choose a tag to compare

@oldantique oldantique released this 28 Oct 01:51

DataCite DOIs (#4)

  • create --doi and enrich look a DOI up at DataCite when CrossRef has no record: theses, datasets, software, repository records. Only types with a faithful Zotero equivalent are mapped; anything else errors with a pointer to --file.
  • A DOI in neither registry (e.g. one registered with CNKI) now says so: "not in CrossRef or DataCite".
  • arXiv's own DOIs (10.48550/arXiv.*) are refused by create --doi with a pointer to create --arxiv; enrich keeps reading arXiv for them.
  • Abstracts from DataCite are stamped abstract-source: datacite.
  • The publisher lands in the type's own Zotero field (repository, company). A thesis's university and a report's institution come from the record's institution, not its publisher (often a library or a distributor such as OSTI). This also fixes CrossRef theses and reports, whose publisher used to be dropped.
  • A DOI that names a dataset or software deposit is never treated as the version of record of an arXiv preprint.

show --attachments (#14)

  • Lists each attachment's filename, contentType, md5, and whether the file is stored (stored / missing / linked), without downloading anything. "Is this local file already in the library?" becomes a comparison against md5sum.
  • Opt-in, so plain show still costs one request per key.

attach --file / --title / --verify (#15)

  • --file takes any file type; --pdf stays as an alias.
  • --title sets the attachment's title (default: the filename).
  • --verify downloads each upload back and compares md5; on a mismatch it names the attachment key and exits 1, and deletes nothing.

Supplementary-only PDFs in audit (#13)

  • An item whose only PDFs are supplementary material (Supplementary Information, a Peer Review File, …_MOESM1_ESM, …_sm.pdf) is listed under "only supplementary PDFs (article PDF missing)". The attachment title decides; give a misjudged article PDF a plain title such as "Full Text PDF".

Open-access PDFs: create --doi --oa-pdf (#16)

  • Opt-in. Downloads only Unpaywall's best open-access location, and only its direct PDF link, then attaches it as "Full Text PDF" and records oa-pdf: <license> · <host type> · <version> · <url> in Extra.
  • The dry run shows what it would download and from where, and fetches no PDF.
  • A refused download (403, rate limit, bot wall or login page instead of a PDF) is reported and never retried, and that host gets no further attempts in the run; other hosts go on. Exit 1 if anything was refused.
  • Needs a real contact address in ZOTKIT_MAILTO (Unpaywall rejects placeholders).

Less noise in audit (#7)

  • Only paper types are checked for abstract / identifier / PDF. Webpages, blog posts, documents, presentations and the like are listed once under "non-paper items" and skipped by enrich --all.
  • An ISBN or a patent number now counts as an identifier.

doctor checks Zotero's schema (#6)

  • Prints Zotero's global schema version and warns, never fails, when it is newer than the version this release was verified against (42).

Data

  • Journal table: Physics Today → Phys. Today (63 registered forms).

audit --json consumers

  • New bucket keys: only-supplementary-pdf, non-paper. Items of non-paper types no longer appear in the other buckets, and items with an ISBN or patent number no longer appear in missing-identifier.

Not yet tested against a real Zotero Storage library

The Zotero Storage branch of show --attachments, attach --title and attach --verify is tested offline against Zotero's documented responses only; the WebDAV branch was verified live.