Version 0.4.0
Breaking changes:
Hayagriva now uses the Citation Style Language to encode formatting styles. This means that Hayagriva's own formatting styles have been deprecated.
For users:
- The YAML input format has changed.
- Titles and formattable strings have been merged into one type. All formattable strings can have a shorthand now.
- Formattable Strings do not have
title-case
andsentence-case
keys anymore.shorthand
has been renamed toshort
. To prevent changes of the text case of formattable strings, you can use braces. Enclose a part of a formattable string (orshort
) in{braces}
to print it as-is. - The fields
doi
,isbn
, andissn
have been moved toserial-number
which can now be a dictionary containing these and arbitrary other serial numbers like apmid
(PubMed ID) andarxiv
(ArXiv Identifier). - The
tweet
entry type has been renamed topost
. - All numeric variables can now also contains strings. Numbers can have string affixes.
Refer to the updated file format docs for examples.
For developers:
- To use a CSL style, you can either supply a CSL file or use an archive of provided styles with the
archive
feature. - The
from_yaml_str
function will now return the newLibrary
struct, with the entries within. - The
Database
struct has been replaced by the easier to handleBibliographyDriver
. - We switched from
yaml_rust
toserde_yaml
. TheEntry
now implementsserde
'sSerialize
andDeserialize
traits. Hence, thefrom_yaml
andto_yaml
functions have been deleted. - Brackets are no longer individually overridable. Instead, use the new
CitePurpose
. Entry::kind
has been renamed toEntry::entry_type
.- The citation styles
AuthorTitle
andKeys
have been removed but can be realized with CSL.
- The citation styles
This release fixes many bugs and makes Hayagriva a serious contender for reference management.
Other changes
- We added the entry types
Performance
andOriginal
. - We added the field
call-number
.