|
|
|
[package]
|
|
|
|
name = "boa_engine"
|
|
|
|
version = "0.15.0"
|
|
|
|
edition = "2021"
|
|
|
|
rust-version = "1.60"
|
|
|
|
authors = ["boa-dev"]
|
|
|
|
description = "Boa is a Javascript lexer, parser and Just-in-Time compiler written in Rust. Currently, it has support for some of the language."
|
|
|
|
repository = "https://github.com/boa-dev/boa"
|
|
|
|
keywords = ["javascript", "js", "compiler", "lexer", "parser"]
|
|
|
|
categories = ["parser-implementations", "compilers"]
|
|
|
|
license = "Unlicense/MIT"
|
|
|
|
readme = "../README.md"
|
|
|
|
|
|
|
|
[features]
|
|
|
|
profiler = ["boa_profiler/profiler"]
|
Lexer string interning (#1758)
This Pull Request is part of #279.
It adds a string interner to Boa, which allows many types to not contain heap-allocated strings, and just contain a `NonZeroUsize` instead. This can move types to the stack (hopefully I'll be able to move `Token`, for example, maybe some `Node` types too.
Note that the internet is for now only available in the lexer. Next steps (in this PR or future ones) would include also using interning in the parser, and finally in execution. The idea is that strings should be represented with a `Sym` until they are displayed.
Talking about display. I have changed the `ParseError` type in order to not contain anything that could contain a `Sym` (basically tokens), which might be a bit faster, but what is important is that we don't depend on the interner when displaying errors.
The issue I have now is in order to display tokens. This requires the interner if we want to know identifiers, for example. The issue here is that Rust doesn't allow using a `fmt::Formatter` (only in nightly), which is making my head hurt. Maybe someone of you can find a better way of doing this.
Then, about `cursor.expect()`, this is the only place where we don't have the expected token type as a static string, so it's failing to compile. We have the option of changing the type definition of `ParseError` to contain an owned string, but maybe we can avoid this by having a `&'static str` come from a `TokenKind` with the default values, such as "identifier" for an identifier. I wanted for you to think about it and maybe we can just add that and avoid allocations there.
Oh, and this depends on the VM-only branch, so that has to be merged before :)
Another thing to check: should the interner be in its own module?
3 years ago
|
|
|
deser = ["boa_interner/serde"]
|
|
|
|
intl = [
|
|
|
|
"dep:icu_locale_canonicalizer",
|
|
|
|
"dep:icu_locid",
|
|
|
|
"dep:icu_datetime",
|
|
|
|
"dep:icu_plurals",
|
|
|
|
"dep:icu_provider",
|
|
|
|
"dep:icu_testdata",
|
|
|
|
"dep:sys-locale"
|
|
|
|
]
|
|
|
|
|
|
|
|
# Enable Boa's WHATWG console object implementation.
|
|
|
|
console = []
|
|
|
|
|
|
|
|
[dependencies]
|
|
|
|
boa_unicode = { path = "../boa_unicode", version = "0.15.0" }
|
|
|
|
boa_interner = { path = "../boa_interner", version = "0.15.0" }
|
|
|
|
boa_gc = { path = "../boa_gc", version = "0.15.0" }
|
|
|
|
gc = "0.4.1"
|
|
|
|
boa_profiler = { path = "../boa_profiler", version = "0.15.0" }
|
|
|
|
serde = { version = "1.0.143", features = ["derive", "rc"] }
|
|
|
|
serde_json = "1.0.83"
|
|
|
|
rand = "0.8.5"
|
Bump num-traits from 0.2.14 to 0.2.15 (#2056)
Bumps [num-traits](https://github.com/rust-num/num-traits) from 0.2.14 to 0.2.15.
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a href="https://github.com/rust-num/num-traits/blob/master/RELEASES.md">num-traits's changelog</a>.</em></p>
<blockquote>
<h1>Release 0.2.15 (2022-05-02)</h1>
<ul>
<li><a href="https://github-redirect.dependabot.com/rust-num/num-traits/pull/195">The new <code>Euclid</code> trait calculates Euclidean division</a>, where the
remainder is always positive or zero.</li>
<li><a href="https://github-redirect.dependabot.com/rust-num/num-traits/pull/210">The new <code>LowerBounded</code> and <code>UpperBounded</code> traits</a> separately describe
types with lower and upper bounds. These traits are automatically implemented
for all fully-<code>Bounded</code> types.</li>
<li><a href="https://github-redirect.dependabot.com/rust-num/num-traits/pull/207">The new <code>Float::copysign</code> method copies the sign of the argument</a> to
to the magnitude of <code>self</code>.</li>
<li><a href="https://github-redirect.dependabot.com/rust-num/num-traits/pull/205">The new <code>PrimInt::leading_ones</code> and <code>trailing_ones</code> methods</a> are the
complement of the existing methods that count zero bits.</li>
<li><a href="https://github-redirect.dependabot.com/rust-num/num-traits/pull/202">The new <code>PrimInt::reverse_bits</code> method reverses the order of all bits</a>
of a primitive integer.</li>
<li><a href="https://github-redirect.dependabot.com/rust-num/num-traits/pull/201">Improved <code>Num::from_str_radix</code> for floats</a>, also <a href="https://github-redirect.dependabot.com/rust-num/num-traits/pull/214">ignoring case</a>.</li>
<li><a href="https://github-redirect.dependabot.com/rust-num/num-traits/pull/196"><code>Float</code> and <code>FloatCore</code> use more from <code>libm</code></a> when that is enabled.</li>
</ul>
<p><strong>Contributors</strong>: <a href="https://github.com/alion02"><code>@alion02</code></a>, <a href="https://github.com/clarfonthey"><code>@clarfonthey</code></a>, <a href="https://github.com/cuviper"><code>@cuviper</code></a>, <a href="https://github.com/ElectronicRU"><code>@ElectronicRU</code></a>,
<a href="https://github.com/ibraheemdev"><code>@ibraheemdev</code></a>, <a href="https://github.com/SparrowLii"><code>@SparrowLii</code></a>, <a href="https://github.com/sshilovsky"><code>@sshilovsky</code></a>, <a href="https://github.com/tspiteri"><code>@tspiteri</code></a>, <a href="https://github.com/XAMPPRocky"><code>@XAMPPRocky</code></a>, <a href="https://github.com/Xiretza"><code>@Xiretza</code></a></p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="https://github.com/rust-num/num-traits/commit/1597c1c4d1b3e33548e4661c519b7246a5fc1c28"><code>1597c1c</code></a> Merge <a href="https://github-redirect.dependabot.com/rust-num/num-traits/issues/236">#236</a></li>
<li><a href="https://github.com/rust-num/num-traits/commit/4a2e648d9325810dcaf627f743c0fc5df066a820"><code>4a2e648</code></a> Release 0.2.15</li>
<li><a href="https://github.com/rust-num/num-traits/commit/edb4821d42bfd055792a72234798b76b8068fe56"><code>edb4821</code></a> Merge <a href="https://github-redirect.dependabot.com/rust-num/num-traits/issues/207">#207</a></li>
<li><a href="https://github.com/rust-num/num-traits/commit/e4e52de40fdf4fa5f2ef260a482cf51c915581c5"><code>e4e52de</code></a> Fix copysign tests for 1.8.0</li>
<li><a href="https://github.com/rust-num/num-traits/commit/30077120f96ff00de46cab3c6ce693eb892c18bd"><code>3007712</code></a> Don't use an explicit copysign feature</li>
<li><a href="https://github.com/rust-num/num-traits/commit/30f8d3ab4bfb590f742f592309109e00b207b23d"><code>30f8d3a</code></a> Make sure test_copysignf uses Float</li>
<li><a href="https://github.com/rust-num/num-traits/commit/70b5c579ab6a001435208d8d3811407c8f07fa94"><code>70b5c57</code></a> Update float.rs</li>
<li><a href="https://github.com/rust-num/num-traits/commit/cabfb0b90497ba5d908d14a908dd269f03cc5f4d"><code>cabfb0b</code></a> Update float.rs</li>
<li><a href="https://github.com/rust-num/num-traits/commit/7ca2456e9c1b3f89a6bb749fc54d8a153ff51704"><code>7ca2456</code></a> Update float.rs</li>
<li><a href="https://github.com/rust-num/num-traits/commit/64db6c32936c1cd00c3074b847e10c7e6f8b20b3"><code>64db6c3</code></a> Add copysign</li>
<li>Additional commits viewable in <a href="https://github.com/rust-num/num-traits/compare/num-traits-0.2.14...num-traits-0.2.15">compare view</a></li>
</ul>
</details>
<br />
[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=num-traits&package-manager=cargo&previous-version=0.2.14&new-version=0.2.15)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
<details>
<summary>Dependabot commands and options</summary>
<br />
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
</details>
3 years ago
|
|
|
num-traits = "0.2.15"
|
|
|
|
regress = "0.4.1"
|
|
|
|
rustc-hash = "1.1.0"
|
|
|
|
num-bigint = { version = "0.4.3", features = ["serde"] }
|
|
|
|
num-integer = "0.1.45"
|
|
|
|
bitflags = "1.3.2"
|
|
|
|
indexmap = "1.9.1"
|
|
|
|
ryu-js = "0.2.2"
|
Bump chrono from 0.4.19 to 0.4.20 (#2222)
Bumps [chrono](https://github.com/chronotope/chrono) from 0.4.19 to 0.4.20.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/chronotope/chrono/releases">chrono's releases</a>.</em></p>
<blockquote>
<h2>0.4.20</h2>
<p>chrono is a date and time library for Rust and 0.4.20 is the first chrono release since Sep 2020. There has been a long hiatus since the previous maintainer was no longer able to spend much time on the crate; thanks to <a href="https://github.com/quodlibetor"><code>@quodlibetor</code></a> for their stewardship of the chrono crate for many years! The new maintainers are <a href="https://github.com/djc"><code>@djc</code></a> and <a href="https://github.com/esheppa"><code>@esheppa</code></a>. Our first priority has been fixing the soundness issues with calls to <code>localtime_r()</code> as first reported in <a href="https://github-redirect.dependabot.com/chronotope/chrono/issues/499">#499</a> and the <a href="https://rustsec.org/advisories/RUSTSEC-2020-0159">RUSTSEC-2020-0159 </a> advisory. In order to do this we adapted code from the tz-rs crate maintained by <a href="https://github.com/x-hgg-x"><code>@x-hgg-x</code></a> for use within chrono -- thanks for working on that! With the new implementation, chrono uses safe Rust code to parse the timezone data files on Unix platforms directly instead of relying on libc.</p>
<p>Due to compatibility reasons, this release does not yet remove the time 0.1 dependency, though chrono 0.4.20 does not depend on the vulnerable parts of the time 0.1.x versions. In a future 0.5 release, we will remove the time dependency.</p>
<p>The minimum supported Rust version for 0.4.20 is 1.32.0, which is intentionally still quite conservative. If you are using chrono 0.4 with a Rust version older than 1.52, we'd like to hear from you since we'd like to further modernize the code base to ease maintenance.</p>
<h2>Fixes</h2>
<ul>
<li>Fix unsound call to <code>localtime_r()</code> by parsing timezone files in Rust on Unix (<a href="https://github-redirect.dependabot.com/chronotope/chrono/issues/677">#677</a> and <a href="https://github-redirect.dependabot.com/chronotope/chrono/issues/728">#728</a>)</li>
<li>Allow RFC 2822 parser to deal with comments (<a href="https://github-redirect.dependabot.com/chronotope/chrono/issues/733">#733</a> then <a href="https://github-redirect.dependabot.com/chronotope/chrono/issues/737">#737</a>, thanks to <a href="https://github.com/Finomnis"><code>@Finomnis</code></a>)</li>
<li>Avoid panicking during parsing (<a href="https://github-redirect.dependabot.com/chronotope/chrono/issues/686">#686</a>, thanks to <a href="https://github.com/botahamec"><code>@botahamec</code></a>)</li>
<li>Avoid panics when rounding durations (<a href="https://github-redirect.dependabot.com/chronotope/chrono/issues/659">#659</a>, thanks to <a href="https://github.com/ARBaart"><code>@ARBaart</code></a>)</li>
<li>Fix <code>Duration::abs()</code> behavior in case of negative durations with nanoseconds (<a href="https://github-redirect.dependabot.com/chronotope/chrono/issues/734">#734</a>, thanks to <a href="https://github.com/abreis"><code>@abreis</code></a>)</li>
</ul>
<h2>Additions</h2>
<ul>
<li>Make <code>ParserErrorKind</code> public and available through <code>ParseError::kind()</code> (<a href="https://github-redirect.dependabot.com/chronotope/chrono/issues/588">#588</a>, thanks to <a href="https://github.com/sbrocket"><code>@sbrocket</code></a>)</li>
<li>Expose associated <code>MIN</code> and <code>MAX</code> const values in favor of free-standing consts (<a href="https://github-redirect.dependabot.com/chronotope/chrono/issues/726">#726</a>)</li>
<li>Add (optional) support for rkyv (<a href="https://github-redirect.dependabot.com/chronotope/chrono/issues/644">#644</a> and <a href="https://github-redirect.dependabot.com/chronotope/chrono/issues/701">#701</a>, thanks to <a href="https://github.com/dovahcrow"><code>@dovahcrow</code></a>)</li>
<li>Support month-based calculations against <code>NaiveDate</code> (<a href="https://github-redirect.dependabot.com/chronotope/chrono/issues/732">#732</a> with follow up in <a href="https://github-redirect.dependabot.com/chronotope/chrono/issues/752">#752</a>, thanks to <a href="https://github.com/avantgardnerio"><code>@avantgardnerio</code></a>)</li>
<li>Add <code>NaiveWeek</code> type to facilitate week-based calculations (<a href="https://github-redirect.dependabot.com/chronotope/chrono/issues/666">#666</a>, thanks to <a href="https://github.com/sestrella"><code>@sestrella</code></a>)</li>
<li>Add <code>NaiveDateTime::and_local_timezone()</code> method (<a href="https://github-redirect.dependabot.com/chronotope/chrono/issues/711">#711</a>, thanks to <a href="https://github.com/botahamec"><code>@botahamec</code></a>)</li>
<li>Add <code>DateTime::from_local()</code> method (<a href="https://github-redirect.dependabot.com/chronotope/chrono/issues/572">#572</a>, thanks to <a href="https://github.com/retrhelo"><code>@retrhelo</code></a>)</li>
<li>Extend serde integration for <code>NaiveDateTime</code> (<a href="https://github-redirect.dependabot.com/chronotope/chrono/issues/664">#664</a>, thanks to <a href="https://github.com/nickelc"><code>@nickelc</code></a>)</li>
<li>Implement <code>DoubleEndedIterator</code> for <code>NaiveDateDaysIterator</code>/<code>NaiveDateWeeksIterator</code> (<a href="https://github-redirect.dependabot.com/chronotope/chrono/issues/697">#697</a>, thanks to <a href="https://github.com/teobouvard"><code>@teobouvard</code></a>)</li>
<li>Implement <code>std::iter::Sum</code> for <code>Duration</code> (<a href="https://github-redirect.dependabot.com/chronotope/chrono/issues/522">#522</a>, thanks to <a href="https://github.com/jakevossen5"><code>@jakevossen5</code></a>)</li>
<li>Add <code>years_since()</code> method to <code>DateTime</code>/<code>Date</code> (<a href="https://github-redirect.dependabot.com/chronotope/chrono/issues/557">#557</a> then <a href="https://github-redirect.dependabot.com/chronotope/chrono/issues/707">#707</a>, thanks to <a href="https://github.com/yozhgoor"><code>@yozhgoor</code></a>)</li>
<li>Implement <code>AddAssign</code>/<code>SubAssign</code> for <code>DateTime</code>/<code>Date</code> (<a href="https://github-redirect.dependabot.com/chronotope/chrono/issues/698">#698</a>, thanks to <a href="https://github.com/MrGunflame"><code>@MrGunflame</code></a>)</li>
<li>Fix imports on WASM targets (<a href="https://github-redirect.dependabot.com/chronotope/chrono/issues/672">#672</a>, thanks to <a href="https://github.com/danielalvsaaker"><code>@danielalvsaaker</code></a>)</li>
<li>Implement std::error::Error for ParseWeekdayError (<a href="https://github-redirect.dependabot.com/chronotope/chrono/issues/745">#745</a>)</li>
</ul>
<h2>Non-functional improvements</h2>
<ul>
<li>Improve CI to better exercise WASM targets (<a href="https://github-redirect.dependabot.com/chronotope/chrono/issues/662">#662</a>, thanks to <a href="https://github.com/AmateurECE"><code>@AmateurECE</code></a>)</li>
<li>More WASM testing improvements, enable dependencies by default (<a href="https://github-redirect.dependabot.com/chronotope/chrono/issues/746">#746</a>)</li>
<li>Fix compiling for wasm32-unknown-emscripten target (<a href="https://github-redirect.dependabot.com/chronotope/chrono/issues/568">#568</a>, thanks to <a href="https://github.com/orion78fr"><code>@orion78fr</code></a>)</li>
<li>Use stub implementation for anything not unix and not windows (<a href="https://github-redirect.dependabot.com/chronotope/chrono/issues/593">#593</a>, thanks to <a href="https://github.com/yu-re-ka"><code>@yu-re-ka</code></a>)</li>
<li>Remove now unused libc dependency (<a href="https://github-redirect.dependabot.com/chronotope/chrono/issues/710">#710</a>, thanks to <a href="https://github.com/metent"><code>@metent</code></a>)</li>
<li>Clean up some clippy warnings (<a href="https://github-redirect.dependabot.com/chronotope/chrono/issues/721">#721</a>, thanks to <a href="https://github.com/botahamec"><code>@botahamec</code></a>)</li>
<li>Clarify documentation for <code>Utc::now()</code> (<a href="https://github-redirect.dependabot.com/chronotope/chrono/issues/647">#647</a>, thanks to <a href="https://github.com/ModProg"><code>@ModProg</code></a>)</li>
<li>Clarify documentation for <code>DateTime::with_timezone()</code> (<a href="https://github-redirect.dependabot.com/chronotope/chrono/issues/747">#747</a>, thanks to <a href="https://github.com/kevincox"><code>@kevincox</code></a>)</li>
<li>Improve examples for <code>naive</code> serde integration (<a href="https://github-redirect.dependabot.com/chronotope/chrono/issues/616">#616</a>, thanks to <a href="https://github.com/nickelc"><code>@nickelc</code></a>)</li>
<li>Clean up <code>extern crate</code> statements and outdated comments (<a href="https://github-redirect.dependabot.com/chronotope/chrono/issues/665">#665</a>, thanks to <a href="https://github.com/nickelc"><code>@nickelc</code></a>)</li>
<li>Fix typo in deprecation notice (<a href="https://github-redirect.dependabot.com/chronotope/chrono/issues/744">#744</a>, thanks to <a href="https://github.com/Mike-Dax"><code>@Mike-Dax</code></a>)</li>
<li>Fix some typos in documentation (<a href="https://github-redirect.dependabot.com/chronotope/chrono/issues/680">#680</a> and <a href="https://github-redirect.dependabot.com/chronotope/chrono/issues/695">#695</a>, thanks to <a href="https://github.com/cuishuang"><code>@cuishuang</code></a> and <a href="https://github.com/fxredeemer"><code>@fxredeemer</code></a>)</li>
<li>Implement caching for CI (<a href="https://github-redirect.dependabot.com/chronotope/chrono/issues/609">#609</a>, thanks to <a href="https://github.com/Milo123459"><code>@Milo123459</code></a>)</li>
</ul>
<h2>0.4.20-rc.1</h2>
<p>0.4.20 is the first chrono release since Sep 2020. There has been a long hiatus since the previous maintainer was no longer able to spend much time on the crate; thanks to <a href="https://github.com/quodlibetor"><code>@quodlibetor</code></a> for their stewardship of the chrono crate for many years! The new maintainers are <a href="https://github.com/djc"><code>@djc</code></a> and <a href="https://github.com/esheppa"><code>@esheppa</code></a>. Our first priority has been fixing the soundness issues with calls to <code>localtime_r()</code> as first reported in <a href="https://github-redirect.dependabot.com/chronotope/chrono/issues/499">#499</a> and the <a href="https://rustsec.org/advisories/RUSTSEC-2020-0159">RUSTSEC-2020-0159 </a> advisory. In order to do this we adapted code from the tz-rs crate maintained by <a href="https://github.com/x-hgg-x"><code>@x-hgg-x</code></a> for use within chrono -- thanks for working on that! With the new implementation, chrono uses safe Rust code to parse the timezone data files on Unix platforms directly instead of relying on libc.</p>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a href="https://github.com/chronotope/chrono/blob/main/CHANGELOG.md">chrono's changelog</a>.</em></p>
<blockquote>
<h2>0.4.20 (unreleased)</h2>
<ul>
<li>Add more formatting documentation and examples.</li>
<li>Add support for microseconds timestamps serde serialization/deserialization (<a href="https://github-redirect.dependabot.com/chronotope/chrono/issues/304">#304</a>)</li>
<li>Fix <code>DurationRound</code> is not TZ aware (<a href="https://github-redirect.dependabot.com/chronotope/chrono/issues/495">#495</a>)</li>
<li>Implement <code>DurationRound</code> for <code>NaiveDateTime</code></li>
<li>Implement <code>std::iter::Sum</code> for <code>Duration</code></li>
<li>Add <code>DateTime::from_local()</code> to construct from given local date and time (<a href="https://github-redirect.dependabot.com/chronotope/chrono/issues/572">#572</a>)</li>
<li>Add a function that calculates the number of years elapsed between now and a given <code>Date</code> or <code>DateTime</code> (<a href="https://github-redirect.dependabot.com/chronotope/chrono/issues/557">#557</a>)</li>
<li>Correct build for wasm32-unknown-emscripten target (<a href="https://github-redirect.dependabot.com/chronotope/chrono/issues/568">#568</a>)</li>
<li>Change <code>Local::now()</code> and <code>Utc::now()</code> documentation from "current date" to "current date and time" (<a href="https://github-redirect.dependabot.com/chronotope/chrono/issues/647">#647</a>)</li>
<li>Fix <code>duration_round</code> panic on rounding by <code>Duration::zero()</code> (<a href="https://github-redirect.dependabot.com/chronotope/chrono/issues/658">#658</a>)</li>
<li>Add optional rkyv support.</li>
<li>Add support for microseconds timestamps serde serialization for <code>NaiveDateTime</code>.</li>
<li>Add support for optional timestamps serde serialization for <code>NaiveDateTime</code>.</li>
<li>Fix build for wasm32-unknown-emscripten (<a href="https://github.com/yu-re-ka"><code>@yu-re-ka</code></a> <a href="https://github-redirect.dependabot.com/chronotope/chrono/issues/593">#593</a>)</li>
<li>Make <code>ParseErrorKind</code> public and available through <code>ParseError::kind()</code> (<a href="https://github-redirect.dependabot.com/chronotope/chrono/issues/588">#588</a>)</li>
<li>Implement <code>DoubleEndedIterator</code> for <code>NaiveDateDaysIterator</code> and <code>NaiveDateWeeksIterator</code></li>
<li>Fix panicking when parsing a <code>DateTime</code> (<a href="https://github.com/botahamec"><code>@botahamec</code></a>)</li>
<li>Add support for getting week bounds based on a specific <code>NaiveDate</code> and a <code>Weekday</code> (<a href="https://github-redirect.dependabot.com/chronotope/chrono/issues/666">#666</a>)</li>
<li>Remove libc dependency from Cargo.toml.</li>
<li>Add the <code>and_local_timezone</code> method to <code>NaiveDateTime</code></li>
<li>Fix the behavior of <code>Duration::abs()</code> for negative durations with non-zero nanos</li>
<li>Add compatibility with rfc2822 comments (<a href="https://github-redirect.dependabot.com/chronotope/chrono/issues/733">#733</a>)</li>
<li>Make <code>js-sys</code> and <code>wasm-bindgen</code> enabled by default when target is <code>wasm32-unknown-unknown</code> for ease of API discovery</li>
<li>Add the <code>Months</code> struct and associated <code>Add</code> and <code>Sub</code> impls</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="https://github.com/chronotope/chrono/commit/0b7feacb5482076b4efe1b6bcf720abfc82eb476"><code>0b7feac</code></a> Clean up some unreachable_pub warnings</li>
<li><a href="https://github.com/chronotope/chrono/commit/65f1f2e588ac6e717b36fd78a87e029c882b8d65"><code>65f1f2e</code></a> Bump version to 0.4.20</li>
<li><a href="https://github.com/chronotope/chrono/commit/bd3b48d1a940b92ca6c6a88682b8d41f34ff94c5"><code>bd3b48d</code></a> Revise Months API</li>
<li><a href="https://github.com/chronotope/chrono/commit/ab688c384f7c797466fca69d69bfd5ee3c2cba96"><code>ab688c3</code></a> Implement <code>Add\<Months></code> and <code>Sub\<Months></code> for <code>NaiveDate</code> (<a href="https://github-redirect.dependabot.com/chronotope/chrono/issues/731">#731</a>)</li>
<li><a href="https://github.com/chronotope/chrono/commit/782f904375c145173f63c125a5fe1af10c189b7a"><code>782f904</code></a> Clarify docs for <code>DateTime::with_timezone</code></li>
<li><a href="https://github.com/chronotope/chrono/commit/27c05589ac269596fe4b047552bc735ebe9ee44c"><code>27c0558</code></a> dont use stub.rs when wasmbind feature is enabled</li>
<li><a href="https://github.com/chronotope/chrono/commit/56f80e43668c8d3087cb5333d9c5e4d796ae8a9f"><code>56f80e4</code></a> run on all branches and also for changes in the ci folder</li>
<li><a href="https://github.com/chronotope/chrono/commit/353f1795b60255f44012e0c1421d857995948b17"><code>353f179</code></a> Implement std::error::Error for ParseWeekdayError</li>
<li><a href="https://github.com/chronotope/chrono/commit/309cbeb0547c845153c3df1f2d9ce91fbf85c180"><code>309cbeb</code></a> Fixed typo in deprecation notice</li>
<li><a href="https://github.com/chronotope/chrono/commit/26e231af33083852a0ada3f915985d5fbc654b7f"><code>26e231a</code></a> Bump version to 0.4.20-rc.1</li>
<li>Additional commits viewable in <a href="https://github.com/chronotope/chrono/compare/v0.4.19...v0.4.20">compare view</a></li>
</ul>
</details>
<br />
[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=chrono&package-manager=cargo&previous-version=0.4.19&new-version=0.4.20)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
<details>
<summary>Dependabot commands and options</summary>
<br />
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
</details>
2 years ago
|
|
|
chrono = "0.4.20"
|
|
|
|
fast-float = "0.2.0"
|
|
|
|
unicode-normalization = "0.1.21"
|
|
|
|
dyn-clone = "1.0.9"
|
|
|
|
once_cell = "1.13.0"
|
|
|
|
tap = "1.0.1"
|
|
|
|
icu_locale_canonicalizer = { version = "0.6.0", features = ["serde"], optional = true }
|
|
|
|
icu_locid = { version = "0.6.0", features = ["serde"], optional = true }
|
|
|
|
icu_datetime = { version = "0.6.0", features = ["serde"], optional = true }
|
|
|
|
icu_plurals = { version = "0.6.0", features = ["serde"], optional = true }
|
|
|
|
icu_provider = { version = "0.6.0", optional = true }
|
|
|
|
icu_testdata = { version = "0.6.0", optional = true }
|
|
|
|
sys-locale = { version = "0.2.1", optional = true }
|
|
|
|
|
|
|
|
[dev-dependencies]
|
|
|
|
criterion = "0.3.5"
|
|
|
|
float-cmp = "0.9.0"
|
|
|
|
|
|
|
|
[target.x86_64-unknown-linux-gnu.dev-dependencies]
|
|
|
|
jemallocator = "0.5.0"
|
|
|
|
|
|
|
|
[lib]
|
|
|
|
crate-type = ["cdylib", "lib"]
|
|
|
|
name = "boa_engine"
|
|
|
|
bench = false
|
|
|
|
|
|
|
|
[[bench]]
|
|
|
|
name = "full"
|
|
|
|
harness = false
|