diff --git a/docs/changelog.md b/docs/changelog.md index 63047c3d7..bf93a4a31 100644 --- a/docs/changelog.md +++ b/docs/changelog.md @@ -6,6 +6,29 @@ description: | # Changelog ## Unreleased +- Bibliography management + - New bibliography engine based on [CSL](https://citationstyles.org/) + (Citation Style Language). Ships with about 100 commonly used citation + styles and can load custom `.csl` files. + - Added new [`form`]($cite.form) argument to the `cite` function to produce + different forms of citations (e.g. for producing a citation suitable for + inclusion in prose) + - The [`cite`]($cite) function now takes only a single label/key instead of + allowing multiple. Adjacent citations are merged and formatted according to + the citation style's rules automatically. This works both with the reference + syntax and explicit calls to the `cite` function. (**Breaking change**) + - The `cite` function now takes a [label]($label) instead of a string + (**Breaking change**) + - Added [`full`]($bibliography.full) argument to bibliography function to + print the full bibliography even if not all works were cited + - Bibliography entries can now contain Typst equations (wrapped in `[$..$]` + just like in markup), this works both for `.yml` and `.bib` bibliographies + - The hayagriva YAML format was improved. See its + [changelog](https://github.com/typst/hayagriva/blob/main/CHANGELOG.md) for + more details. (**Breaking change**) + - A few bugs with `.bib` file parsing were fixed + - Removed `brackets` argument of `cite` function in favor of `form` + - Visualization - Gradients and colors (thanks to [@Dherse](https://github.com/Dherse)) - Added support for [gradients]($gradient) on shapes and text @@ -46,7 +69,12 @@ description: | - Added support for setting custom [smart quotes]($smartquote) - The default [figure separator]($figure.caption.separator) now reacts to the currently set language and region + - Improved line breaking of links / URLs (especially helpful for + bibliographies with many URLs) - Improved handling of consecutive hyphens in justification algorithm + - Fixed interaction of justification and hanging indent + - Fixed a bug with line breaking of short lines without spaces when + justification is enabled - Fixed font fallback for hyphen generated by hyphenation - Fixed handling of word joiner and other no-break characters during hyphenation @@ -54,6 +82,7 @@ description: | - Fixed line breaking of composite emoji like 🏳️‍🌈 - Fixed missing text in some SVGs - Fixed font fallback in SVGs + - Fixed behaviour of [`to`]($pagebreak.to) argument on `pagebreak` function - Fixed `{set align(..)}` for equations - Fixed spacing around [placed]($place) elements - Fixed coalescing of [`above`]($block.above) and [`below`]($block.below) @@ -75,7 +104,8 @@ description: | function - Removed `rotation` argument on [`cancel`]($math.cancel) function in favor of a new and more flexible `angle` argument (**Breaking change**) - - Added `wide` constant, which insert twice the spacing of `quad` + - Added `wide` constant, which inserts twice the spacing of `quad` + - Added `csch` and `sech` [operators]($math.op) - `↼`, `⇀`, `↔`, and `⟷` can now be used as [accents]($math.accent) - Added `integral.dash`, `integral.dash.double`, and `integral.slash` [symbols]($category/symbols/sym) @@ -83,7 +113,7 @@ description: | [augmentation]($math.mat.augment) lines to position the line from the back - Fixed default color of matrix [augmentation]($math.mat.augment) lines - Fixed attachment of primes to inline expressions - - Math content now respects the [baseline]($text.baseline) configuration + - Math content now respects the text [baseline]($text.baseline) setting - Performance - Fixed a bug related to show rules in templates which would effectively @@ -99,31 +129,56 @@ description: | - Tooling and Diagnostics - Improved autocompletion for variables that are in-scope - Added autocompletion for package imports - - Added tooltips that show which variables a function captures + - Added autocompletion for [labels]($label) + - Added tooltip that show which variables a function captures (when hovering + over the equals sign or arrow of the function) - Diagnostics are now deduplicated + - Improved diagnostics when trying to apply unary `+` or `-` to types that + only support binary `+` and `-` + - Error messages now state which label or citation key isn't present in the + document or its bibliography + - Fixed a bug where function argument parsing errors where shadowed by + function execution errors (e.g. when trying to call + [`array.sorted`]($array.sorted) and passing the key function as a positional + argument instead of a named one). + +- Export + - Added support for configuring the document's creation + [`date`]($document.date). If the `date` is set to `{auto}` (the default), + the PDF's creation date will be set to the current date and time. + - Added support for configuring document [`keywords`]($document.keywords) + - Generated PDFs now contain PDF document IDs + - The PDF creator tool metadata now includes the Typst version + +- Web app + - Added version picker to pin a project to an older compiler version + (with support for Typst 0.6.0+) + - Fixed desyncs between editor and compiler and improved overall stability + - The app now continues to highlight the document when typing while the + document is being compiled - Command line interface + - Added support for discovering fonts through fontconfig - Now clears the screen instead of resetting the terminal - Now automatically picks correct file extension for selected output format - Now only regenerates images for changed pages when using `typst watch` with PNG or SVG export - Miscellaneous Improvements - - Added `sys.version` specifying the current compiler version. Can be used to - gracefully support multiple versions. + - Added [`version`]($version) type and `sys.version` constant specifying the + current compiler version. Can be used to gracefully support multiple + versions. - The U+2212 MINUS SIGN is now used when displaying a numeric value, in the [`repr`]($repr) of any numeric value and to replace a normal hyphen in text mode when before a digit. This improves, in particular, how negative integer values are displayed in math mode. - - Added support for configuring document [`keywords`]($document.keywords) and - the document's creation [`date`]($document.date) - - PDF creator tool metadata now includes the Typst version - Added support for specifying a default value instead of failing for [`remove`] function in [array]($array.remove) and [dictionary]($dictionary.remove) - Simplified page setup guide examples - Switched the documentation from using the word "hashtag" to the word "hash" where appropriate + - Added support for [`array.zip`]($array.zip) without any further arguments - Fixed crash when a plugin tried to read out of bounds memory - Fixed crashes when handling infinite [lengths]($length) - Fixed introspection (mostly bibliography) bugs due to weak page break close @@ -134,6 +189,7 @@ description: | - Removed a few remaining `'static` bounds on `&dyn World` - Removed unnecessary dependency, which reduces the binary size - Fixed compilation of `typst` by itself (without `typst-library`) + - Fixed warnings with Nix flake when using `lib.getExe` ## Version 0.8.0 (September 13, 2023) { #v0.8.0 } - Scripting