Python Bibtexparser Versions Save

Bibtex parser for Python 3

v2.0.0b7

3 months ago

Breaking Changes

  • entry.pop_field is renamed to entry.pop
  • Various changes to default arguments in middleware

Full list of changes

Huge thanks to @tdegeus for all his contributions, and for joining the project as a co-maintainer!

v2.0.0b6

3 months ago

What's Changed

Full Changelog: https://github.com/sciunto-org/python-bibtexparser/compare/v2.0.0b5...v2.0.0b6

v2.0.0b5

4 months ago

Minor Changes

  • Optionally raise an exception when adding duplicate blocks (#425 by @MiWeiss, reported by @claell )

Fixes

  • Fix bug in von-part name parsing (#423 by @mlutze)
  • Fix duplicate entry replacement bugs (#424 by @MiWeiss, reported by @claell )
  • Fix problem with __version__ (#430 by @MiWeiss , reported by @mestia and @a-detiste)
  • Fix installation documentation (#419 by @mlutze )

v2.0.0b4

6 months ago

Breaking Changes

  • We do not assume anymore that blocks have to start at a new line (#416 by @zepinglee and @benlogan)

Attention: While this means that we will also parse blocks starting anywhere else (e.g. on the same line where another block ended), this also has some side effects:

  • Parsing of a block is aborted if a sequence which looks like a block start (e.g. @entry{) is found anywhere within that block in addition to its head. This is done on purpose, to allow parsing of faulty files, but may have negative impacts in the few cases where a @entry{ (or similar) are genuinely part of a correct block.
  • Commenting entire blocks with leading %, # , or any other char sequence at the beginning of every line will not work anymore. This was never fully supported anyways, and still waits for its implementation. See #372 .

Other changes

  • Addition external link in docs (#408 by @MiWeiss)

v1.4.1

7 months ago

This release contains a range of frequently requested changes, including:

  • Set align_values to an int or bool to fix min alignment in writing (#316 by @michaelfruth)
  • Fix some docstrings (#330 by @CodePurble , #325 by @MiWeiss)
  • customization.getnames: respect protected names: (#334 by @tdegeus)
  • No dict caching in bibdatabase (#348 by @MiWeiss). This makes the library slightly slower in some cases, but fixes previously wrong caching.

Edit: Due to a mistake, this tag was previously, for a couple of hours, on the wrong commit. This has now been fixed, i.e., the tag has been removed and correctly set again.

v2.0.0b3

7 months ago

Changes since v2.0.0b2:

  • Added option to select encoding of .bib file (#395 by @himcraft)
  • Fix a bug which did not parse concatenated field value (e.g. 12 # "someval" # someref) correctly. Note: String interpolation on such fields is still unsupported. (#398 by @MiWeiss)

v2.0.0b2

8 months ago

This is the first pre-release of v2 (a complete library-rewrite) shipped to pypi. From previous feedback, it is stable enough to be used in most projects, but please proceed with caution and provide feedback if you identify problems:

Breaking Changes

  • Literally everything ;-) The API completely changed. Please see the migration guide in the docs: https://bibtexparser.readthedocs.io/en/main/migrate.html
  • Some functionality, especially previous modules of the customization package have not yet been integrated in v2 as their use-case is not obvious or newer and better alternatives have emerged.
  • This is now permissively MIT licensed, without any GPL parts remaining.
  • The documentation has been extended.

Why all that? Here's the advantages:

🚀 Order of magnitudes faster 🔧 Easily customizable parsing and writing đŸŒŋ Access to raw, unparsed bibtex. 💩 Fault-Tolerant: Able to parse files with syntax errors 🀄 Massively simplified, robuster handling of de- and encoding (special chars, ...). Šī¸ Permissive MIT license

v1.4.0

1 year ago
Breaking Changes
----------------
* Using common strings in string interpolation is now the default (#311 by @MiWeiss).
  See the PR for more details, and how to fall back to old behavior.

New Features / Improvements
---------------------------
* Add option to adjust alignment of text of multi-line values. (#290 by @michaelfruth)
* Raise warning if parser is used multiple times (#312 by @mrn97),
  which leads to a merged library. Set `parser.expect_multiple_parse = True` to disable the warning.
* Allow preservation of existing order of entry fields in writer (#317 by @michaelfruth)

See CHANGELOG file for full changelog.

v1.3.0

1 year ago

First release after a while, containing of mostly cleanup and minor fixes.

The CHANGELOG for details.