Skip to content

Releases: sciunto-org/python-bibtexparser

v1.4.2

02 Oct 20:07
214ef38
Compare
Choose a tag to compare

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

Sorry for the late 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

v1.4.0

23 Sep 12:45
a9c47a6
Compare
Choose a tag to compare
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

09 Jul 08:43
57a1a60
Compare
Choose a tag to compare

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

The CHANGELOG for details.