Releases: sciunto-org/python-bibtexparser
v1.4.2
v2.0.0b7 - dict mimicking entries & middleware defaults
Breaking Changes
entry.pop_field
is renamed toentry.pop
- Various changes to default arguments in middleware
Full list of changes
- Fixing sphinx syntax by @tdegeus in #463
- Cleanup docstring by @tdegeus in #462
- Bugfix name split by @tdegeus in #456
Entry
: Dict-mimickingin
operator. by @tdegeus in #458- Rename
pop_field
->pop
(with default) to make API closer todict
by @tdegeus in #466 - ✨ Add
get
to mimicdict
by @tdegeus in #468 - Adding missing default
allow_inplace_modification
. Simplifying examples by @tdegeus in #459 BlockMiddleware
: defaultallow_parallel_execution=True
by @tdegeus in #460
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
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
Minor Changes
Fixes
v2.0.0b4
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
v2.0.0b3
v1.4.1
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
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
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.