版本发布 8
## What's Changed * Add installation guide to VS Code Extension readme by @Goju-Ryu in https://github.com/sharkdp/numbat/pull/659 * Add missing metric cooking spoon units by @Goju-Ryu in https://github.com/sharkdp/numbat/pull/677 * Derive Display for CompactStrCow by @eminence in https://github.com/sharkdp/numbat/pull/679 * Fix error message in save command by @rben01 in https://github.com/sharkdp/numbat/pull/685 **Full Changelog**: https://github.com/sharkdp/numbat/compare/v1.15.0...v1.16.0
## What's Changed * Fixed some clippy warnings by @rben01 in https://github.com/sharkdp/numbat/pull/619 * Replace `String` with `CompactString` by @rben01 in https://github.com/sharkdp/numbat/pull/620 * Vscode extension quality of life changes by @Goju-Ryu in https://github.com/sharkdp/numbat/pull/629 * Add (unit) list utillity functions by @Goju-Ryu in https://github.com/sharkdp/numbat/pull/623 * Fail documentation generation for invalid examples & remove prompts in examples by @Bzero in https://github.com/sharkdp/numbat/pull/638 * Clean up uses of `CompactString` by @rben01 in https://github.com/sharkdp/numbat/pull/641 * Reduced allocations relating to `ast::Expression` + `typed_ast::Expression` and reduced allocations in `Transformer::transform_*` functions by @rben01 in https://github.com/sharkdp/numbat/pull/607 * Add note regarding floating point errors to assert_eq by @Bzero in https://github.com/sharkdp/numbat/pull/636 * Improved formatting of `format_datetime` errors, including original jiff error by @rben01 in https://github.com/sharkdp/numbat/pull/630 * Boxed some `RuntimeError`s by @rben01 in https://github.com/sharkdp/numbat/pull/642 * Made `proper_function_call` static and moved `get_proper_function_reference` to `Environment` to prove to the compiler that mutable references don't overlap by @rben01 in https://github.com/sharkdp/numbat/pull/639 * Replaced `Box<dyn Fn(Args) -> ...>` with `fn(Args) -> ...` in ffi functions by @rben01 in https://github.com/sharkdp/numbat/pull/643 * Update the rustyline dependency by @irevoire in https://github.com/sharkdp/numbat/pull/649 * Fixed NaN comparison by @rben01 in https://github.com/sharkdp/numbat/pull/647 * Add more descriptive `unit_of` error message by @Goju-Ryu in https://github.com/sharkdp/numbat/pull/652 * Math functions by @rben01 in https://github.com/sharkdp/numbat/pull/645 * Vscode extension packaging by @Goju-Ryu in https://github.com/sharkdp/numbat/pull/656 * String api update by @Goju-Ryu in https://github.com/sharkdp/numbat/pull/646 * Added fibonacci, lucas, and catalan sequences by @rben01 in https://github.com/sharkdp/numbat/pull/655 * Switched to newer macOS GitHub Actions images by @rben01 in https://github.com/sharkdp/numbat/pull/666 * Unit list based human function by @Goju-Ryu in https://github.com/sharkdp/numbat/pull/661 * Fix colors on Windows by @sharkdp in https://github.com/sharkdp/numbat/pull/670 * Add Discord link by @sharkdp in https://github.com/sharkdp/numbat/pull/672 * Speed up median by @rben01 in https://github.com/sharkdp/numbat/pull/665 * Stop cloning the whole list of DType factor when we don't need to by @irevoire in https://github.com/sharkdp/numbat/pull/651 * Initial implementation of frontend-configurable command runner by @rben01 in https://github.com/sharkdp/numbat/pull/663 **Full Changelog**: https://github.com/sharkdp/numbat/compare/v1.14.0...v1.15.0
in preparation
*in preparation*
## Features * Add support for struct/record types by @simmsb in https://github.com/sharkdp/numbat/pull/418 * Add element(…) function for retrieving properties of chemical elements by @sharkdp in https://github.com/sharkdp/numbat/pull/431 * Function decorators by @Bzero in https://github.com/sharkdp/numbat/pull/435 * Extended number formatting by @triallax in https://github.com/sharkdp/numbat/pull/312 * Tokenize three periods as ellipsis (not just unicode character …) by @triallax in https://github.com/sharkdp/numbat/pull/406 * Added random function by @mrkbac in https://github.com/sharkdp/numbat/pull/401 * Random distribution sampling by @Bzero in https://github.com/sharkdp/numbat/pull/416 * Add NaN, inf, is_nan and is_infinite by @Bzero in https://github.com/sharkdp/numbat/pull/407 * Add function to solve quadratic equations by @hamirmahal in https://github.com/sharkdp/numbat/pull/398 * Implement 'Never' type (!) by @sharkdp in https://github.com/sharkdp/numbat/pull/420 * Proper subtyping rules for Never type by @sharkdp in https://github.com/sharkdp/numbat/pull/423 * Fix callables in binary operators by @sharkdp in https://github.com/sharkdp/numbat/pull/424 ## Prelude * Add jansky and solar flux unit by @triallax in https://github.com/sharkdp/numbat/pull/426 * Add "darcy" unit by @triallax in https://github.com/sharkdp/numbat/pull/396 * Add yuan as renminbi alias by @P1n3appl3 in https://github.com/sharkdp/numbat/pull/402 * Add permille unit by @Bzero in https://github.com/sharkdp/numbat/pull/429 ## Other * style: status badge for `CICD` in `README.md` by @hamirmahal in https://github.com/sharkdp/numbat/pull/391 * Do some minor cleanup in `parser.rs` by @triallax in https://github.com/sharkdp/numbat/pull/405 * feat: nicer error messages during development by @hamirmahal in https://github.com/sharkdp/numbat/pull/409 * Bump iana-time-zone to no longer use a yanked package by @RossSmyth in https://github.com/sharkdp/numbat/pull/419 * Fix formatting issue in list-functions.md by @Goju-Ryu in https://github.com/sharkdp/numbat/pull/430 * Fix clippy lints by @P1n3appl3 in https://github.com/sharkdp/numbat/pull/404 **Full Changelog**: https://github.com/sharkdp/numbat/compare/v1.11.0...v1.12.0
## Features * Enable using script and expression cli arguments at the same time by @Bzero in https://github.com/sharkdp/numbat/pull/356 * Add '-i' option to enter interactive session after executing script or expression by @Bzero in https://github.com/sharkdp/numbat/pull/370 ## Bugfixes * Change error message for unterminated strings with interpolation. by @Zengor in https://github.com/sharkdp/numbat/pull/389 * Store datetimes with fixed offset by @sharkdp in https://github.com/sharkdp/numbat/pull/378 * Disallow dimensionless base units by @sharkdp in https://github.com/sharkdp/numbat/pull/381 * Runtime error for wrong format specifiers by @sharkdp in https://github.com/sharkdp/numbat/pull/379 * Create directories for history if they DNE by @hamirmahal in https://github.com/sharkdp/numbat/pull/386 ## Documentation * Improve documentation around ad-hoc units by @sharkdp in https://github.com/sharkdp/numbat/pull/380 ## Prelude * Add imperial volume units by @sharkdp in https://github.com/sharkdp/numbat/pull/382 ## Other changes * refactor: remove reference that's unnecessary by @hamirmahal in https://github.com/sharkdp/numbat/pull/348 * refactor: wrap result of `cmp` for `PartialOrd` by @hamirmahal in https://github.com/sharkdp/numbat/pull/349 * refactor: remove manual impl. of `Option::map` by @hamirmahal in https://github.com/sharkdp/numbat/pull/352 * Always embed modules by @sharkdp in https://github.com/sharkdp/numbat/pull/357 * Move HtmlFormatter to core by @sharkdp in https://github.com/sharkdp/numbat/pull/358 * Make to_markup more flexible by @sharkdp in https://github.com/sharkdp/numbat/pull/359 * Numbat PPA for Ubuntu and derivatives by @archisman-panigrahi in https://github.com/sharkdp/numbat/pull/361 * Skip serializing 'enter_repl' by @Bzero in https://github.com/sharkdp/numbat/pull/388 **Full Changelog**: https://github.com/sharkdp/numbat/compare/v1.10.1...v1.11.0
## Features * Add `UTC` as an identifier by @eminence in https://github.com/sharkdp/numbat/pull/342 * Add `date` and `today` by @sharkdp in https://github.com/sharkdp/numbat/pull/345 ## Packaging * Add SVG icon and more PNG icon sizes to assets by @mhmdanas in https://github.com/sharkdp/numbat/pull/340 * Add Chimera Linux installation instructions by @mhmdanas in https://github.com/sharkdp/numbat/pull/341 **Full Changelog**: https://github.com/sharkdp/numbat/compare/v1.10.0...v1.10.1
## Features * Native support for date and time handling @eminence in https://github.com/sharkdp/numbat/pull/287, see https://numbat.dev/doc/date-and-time.html for details * Add some units by @mhmdanas in https://github.com/sharkdp/numbat/pull/288 * Bump dependencies by @mhmdanas in https://github.com/sharkdp/numbat/pull/297 * Add U+2126 OHM SIGN as a short alias for the `ohm` unit by @eminence in https://github.com/sharkdp/numbat/pull/300 * Wait for background currency fetch thread to finish before exiting by @eminence in https://github.com/sharkdp/numbat/pull/298 * Use default allocator instead of wee_alloc in numbat-wasm by @mhmdanas in https://github.com/sharkdp/numbat/pull/296 * Unflatten the Config/MainConfig struct by @eminence in https://github.com/sharkdp/numbat/pull/301 * style: open `sharkdp/numbat` in new tab by @hamirmahal in https://github.com/sharkdp/numbat/pull/303 * refactor: remove div's deprecated align attribute by @hamirmahal in https://github.com/sharkdp/numbat/pull/311 * Add desktop file and Numbat icons to assets by @mhmdanas in https://github.com/sharkdp/numbat/pull/294 * Improve unterminated string interpolation error by @mhmdanas in https://github.com/sharkdp/numbat/pull/313 * Pretty print 'long' units with long prefixes by @do-you-dare in https://github.com/sharkdp/numbat/pull/309 * refactor: remove unnecessary borrows by @hamirmahal in https://github.com/sharkdp/numbat/pull/318 * refactor: remove unnecessary type conversions by @hamirmahal in https://github.com/sharkdp/numbat/pull/320 * refactor: remove unnecessary calls to `format!` by @hamirmahal in https://github.com/sharkdp/numbat/pull/322 * Add ability to hide 'private' functions and variables by @sharkdp in https://github.com/sharkdp/numbat/pull/325 * Full simplify arguments in function calls by @sharkdp in https://github.com/sharkdp/numbat/pull/326 * Human-readable time durations by @sharkdp in https://github.com/sharkdp/numbat/pull/327 * Use local timezone, not local UTC offset by @sharkdp in https://github.com/sharkdp/numbat/pull/329 * refactor: remove unnecessary `.clone()` calls by @hamirmahal in https://github.com/sharkdp/numbat/pull/328 * parse_datetime: relaxed formats by @sharkdp in https://github.com/sharkdp/numbat/pull/330 * Add #[track_caller] annotation to some panicy VM functions by @eminence in https://github.com/sharkdp/numbat/pull/331 * refactor: replace strings with single characters by @hamirmahal in https://github.com/sharkdp/numbat/pull/333 * Use tropical years as 'year' unit by @sharkdp in https://github.com/sharkdp/numbat/pull/334 * style: simplify string search in src/completer.rs by @hamirmahal in https://github.com/sharkdp/numbat/pull/335 * First class functions, function types, conversion functions by @sharkdp in https://github.com/sharkdp/numbat/pull/200 * Embed timezone conversion into conversion-function framework by @sharkdp in https://github.com/sharkdp/numbat/pull/339 * refactor: remove unnecessary `to_string` calls by @hamirmahal in https://github.com/sharkdp/numbat/pull/338 ## Other * Tooling improvements: docs, CI, wasm by @sharkdp in https://github.com/sharkdp/numbat/pull/280 **Full Changelog**: https://github.com/sharkdp/numbat/compare/v1.9.0...v1.10.0