Download Latest Version Version v0.16.1 source code.zip (1.6 MB) Google Add to Preferred Sources
Home / v0.15.0
Name Modified Size InfoDownloads / Week
Parent folder
papis-0.15.0-py3-none-any.whl 2026-02-08 293.2 kB
papis-0.15.0.tar.gz 2026-02-08 1.2 MB
README.md 2026-02-08 5.1 kB
Version v0.15.0 source code.tar.gz 2026-02-08 1.3 MB
Version v0.15.0 source code.zip 2026-02-08 1.5 MB
Totals: 5 Items   4.3 MB 0

Dependency Changes

  • Minimum required Python version bumped to 3.10.
  • Added support for Python 3.14. Previous versions would fail on this version due to some less orthodox use of the multiprocessing module. In older versions, the issue in question can be worked around by exporting PAPIS_NP=0 or using papis --np 0, which essentially ignores multiprocessing.
  • The stevedore library is no longer used for plugin management (switched to importlib.metadata).
  • The citeproc-py library is now required for CSL exporter support.
  • All linting has been migrated from flake8 to ruff. This is only relevant for development.

Features

Major: Improved formatter support (#711)

Papis supports formatter plugins that act on certain configuration settings that can depend on the current document. Until now, when changing from one formatter to another, all settings needed to be rewritten (including default ones, since they used the python formatter).

It is now possible to use the following syntax to set the formatter per configuration key

:::ini
    [settings]
    ref-format.jinja2 = {{ doc.author_list | slice(3) | join("", attribute="family") }}{{ doc.year }}

The syntax is always key[.formatter]. The format patterns are searched alphabetically and the last one is picked, i.e. if both key.python and key.jinja2 are provided, the python version will be chosen regardless of the order in the configuration file. If no formatter is provided for a format pattern of this type, then it will fall back to the default formatter set by the formatter setting. All default settings are now clearly marked as using the python formatter, so they no longer need to be rewritten when changing formatters.

Major: Support for CSL citation export (#976)

A new exporter has been added that supports the popular CSL (Citation Style Language) through the citeproc-py library. Not all styles are supported, but we hope that this will quickly improve.

The citation style can be set in the configuration file using

:::ini
csl-style = "harvard1"
csl-formatter = "plain"

or on the command-line as

:::bash
papis --set csl-style harvard1 export --format csl <QUERY>

Other noteworthy features

  • Use the current directory as a "default-library" if configured (#979).
  • Improve abstract cleanup in papis doctor (#1008).
  • Remove the dissem.in importer as it is out of service (#1015).
  • Improve scraping page information from Google Scholar tags (#1022).
  • Improve scraping page information for APS journals (#1025).
  • Allow overwriting files on papis export --out FILENAME (#1036).
  • Add shell completions for libraries on papis --lib <TAB> (#1039).
  • Update USENIX downloader to bypass cloudflare if possible (#1045).
  • Add a papis doctor check that renames BibLaTeX keys (biblatex-key-convert) (#1049).
  • Add a papis doctor check to clean up strings (string-cleaner) (#1053).
  • Make more imports local or lazy to improve startup times (#1054).
  • Add a lingbuzz downloader (#1100).
  • Add a --batch flag to papis bibtex import (#1105).
  • Add shell completions for queries, e.g. papis edit ein<TAB> (#1112).
  • Allow colons in the ref-format (#1135).

Bug Fixes

  • Fix crash on papis cache reset when using whoosh (#977).
  • Fix crash on a faulty notes key in the info.yaml file (#1026).
  • Fix lack of colors in fzf picker (#1028).
  • Fix passing URLs to papis addto --url URL (#1034).
  • Fix crash in typst exporter for unknown document parent types (#1035).
  • Allow the "-" (minus) in file names and other strings (#1048).
  • Fix papis git command with click 8.3.0 (#1077).
  • Allow missing author name in the doctor string-cleaner check (#1133).
Source: README.md, updated 2026-02-08