Skip to content

Releases: sciunto-org/python-bibtexparser

v1.4.3

19 Dec 20:45
Compare
Choose a tag to compare

This release is exactly the same v1.4.2, but just with a bumped number as I screwed up greatly when releasing 1.4.2.: See #496

If you use pypi, it doesn't matter whether you use 1.4.2 or 1.4.3. If you use any other source - which may be dependent on my github tags - it's best to use 1.4.3.

v1.4.2

02 Oct 20:07
c906ef8
Compare
Choose a tag to compare

Bugfix: Use raw strings to fix invalid escape (#427 by @kno10 )

Sorry for the late release!

EDIT 18.12.2024 & 19.12.2024: There was a mixup with the linked sources on this github release (v2.0.0b7) was tagged with v1.4.2. Subsequently, 1.4.2 was tagged 1.2.4 (can't make this stuff up 🤦 ). This has now been fixed. I dedided to fix the tag instead of version bumping to create alignment with pypi where the correct code was uploaded. I apologize for any inconvenience this may have caused.

v2.0.0b8

04 Dec 20:17
b379599
Compare
Choose a tag to compare

Changes

  • ✨ Add NormalizeFieldKeys middleware (#473 by @Technologicat )
  • 🐛 Fix split_multiple_persons_names with single-char middlenames (#476 by @tdegeus )
  • ✨ Use dedicated logger instead of root logger (#438 by @principis )

Nonfunctional (formatting and ci) changes: #474 by @tdegeus and #484 by @MiWeiss.

Sorry to all contributors for the delayed release. 🤗

v2.0.0b7 - dict mimicking entries & middleware defaults

14 Feb 20:44
3aa3f7c
Compare
Choose a tag to compare

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 - Enhancements on model and writer

18 Jan 21:36
57bdc8e
Compare
Choose a tag to compare

What's Changed

  • Fixing typos bug report template by @tdegeus in #436
  • Fixing typos feature request template by @tdegeus in #435
  • ✨ Shorthand field setter on entry by @MiWeiss in #442 reported by @tdegeus
  • ♻️ Don't require middleware key on block middleware extensions by @MiWeiss in #443
  • ✨ Add merging of names in last-name-first style by @mlutze in #422
  • ✅ Create smoke test for custom middleware, fix typo in docs, and change BlockMiddleware import by @MiWeiss in #444 reported by @tdegeus
  • ✨ Allow deletion of fields on entries by key by @MiWeiss in #445 reported by @tdegeus

Full Changelog: v2.0.0b5...v2.0.0b6

v2.0.0b5 - minor changes and fixes

04 Jan 17:54
3cf080d
Compare
Choose a tag to compare

Minor Changes

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

Fixes

v2.0.0b4

04 Nov 20:34
6f5a904
Compare
Choose a tag to compare

Breaking Changes

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

v2.0.0b3

21 Sep 11:47
12678c5
Compare
Choose a tag to compare

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)

v1.4.1

22 Sep 05:58
Compare
Choose a tag to compare

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.0b2

16 Aug 10:21
4e8db5c
Compare
Choose a tag to compare

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