Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
305 changes: 62 additions & 243 deletions .github/workflows/build-and-test.yml

Large diffs are not rendered by default.

74 changes: 53 additions & 21 deletions Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

7 changes: 3 additions & 4 deletions Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -12,14 +12,13 @@ chrono = "0.4.41"
chrono-tz = "0.10.4"
indexmap = "2.10.0"
itertools = "0.14.0"
# Default enable napi5 feature, see https://nodejs.org/api/n-api.html#node-api-version-matrix
napi = { version = "2.16.17", default-features = false, features = ["napi5"] }
napi-derive = "2.16.13"
napi = "3.2.3"
napi-derive = "3.2.3"
replace_with = "0.1.8"
rrule = { version = "0.14.0", features = ["exrule"] }

[build-dependencies]
napi-build = "2.2.2"
napi-build = "2.2.3"

[profile.release]
lto = true
Expand Down
2 changes: 1 addition & 1 deletion benchmark/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -64,6 +64,6 @@ function suite(tzid: string) {
}

Promise.all([
b.suite('UTC TZ', ...suite('UTC')).then(console.log),
b.suite('UTC TZ', ...suite('UTC')),
b.suite('Other TZ', ...suite('Pacific/Kiritimati')),
]).catch(console.error);
9 changes: 5 additions & 4 deletions lib/js/rrule_set.rs
Original file line number Diff line number Diff line change
Expand Up @@ -171,6 +171,7 @@ impl RRuleSet {
return Ok(iter.take(limit as usize).collect());
}

// TODO: use array instead
Ok(iter.collect())
}

Expand Down Expand Up @@ -199,13 +200,13 @@ impl RRuleSet {
}

#[napi(ts_return_type = "number[]")]
pub fn between(
&self,
env: Env,
pub fn between<'a>(
&'a self,
env: &'a Env,
after_datetime: i64,
before_datetime: i64,
inclusive: Option<bool>,
) -> napi::Result<Array> {
) -> napi::Result<Array<'a>> {
let mut arr = env.create_array(0).unwrap();
let timezone = self.rrule_set.dtstart().timezone();
let after_timestamp = DateTime::from(after_datetime)
Expand Down
4 changes: 2 additions & 2 deletions npm/android-arm-eabi/README.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
# `rrule-rust-android-arm-eabi`
# `@rrule-rust/lib-android-arm-eabi`

This is the **armv7-linux-androideabi** binary for `rrule-rust`
This is the **armv7-linux-androideabi** binary for `@rrule-rust/lib`
19 changes: 16 additions & 3 deletions npm/android-arm-eabi/package.json
Original file line number Diff line number Diff line change
@@ -1,20 +1,33 @@
{
"name": "@rrule-rust/lib-android-arm-eabi",
"version": "0.0.0",
"os": [
"android"
],
"cpu": [
"arm"
],
"main": "rrule-rust.android-arm-eabi.node",
"files": [
"rrule-rust.android-arm-eabi.node"
],
"description": "RRule implementation for Node.js written in Rust",
"keywords": [
"rrule",
"icalendar",
"rust",
"rs"
],
"author": {
"name": "lsndr",
"email": "alexander@lsndr.me",
"url": "https://lsndr.me"
},
"license": "MIT",
"engines": {
"node": ">= 10"
},
"repository": "lsndr/rrule-rust",
"os": [
"android"
],
"publishConfig": {
"access": "public"
}
Expand Down
4 changes: 2 additions & 2 deletions npm/android-arm64/README.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
# `rrule-rust-android-arm64`
# `@rrule-rust/lib-android-arm64`

This is the **aarch64-linux-android** binary for `rrule-rust`
This is the **aarch64-linux-android** binary for `@rrule-rust/lib`
19 changes: 16 additions & 3 deletions npm/android-arm64/package.json
Original file line number Diff line number Diff line change
@@ -1,20 +1,33 @@
{
"name": "@rrule-rust/lib-android-arm64",
"version": "0.0.0",
"os": [
"android"
],
"cpu": [
"arm64"
],
"main": "rrule-rust.android-arm64.node",
"files": [
"rrule-rust.android-arm64.node"
],
"description": "RRule implementation for Node.js written in Rust",
"keywords": [
"rrule",
"icalendar",
"rust",
"rs"
],
"author": {
"name": "lsndr",
"email": "alexander@lsndr.me",
"url": "https://lsndr.me"
},
"license": "MIT",
"engines": {
"node": ">= 10"
},
"repository": "lsndr/rrule-rust",
"os": [
"android"
],
"publishConfig": {
"access": "public"
}
Expand Down
4 changes: 2 additions & 2 deletions npm/darwin-arm64/README.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
# `rrule-rust-darwin-arm64`
# `@rrule-rust/lib-darwin-arm64`

This is the **aarch64-apple-darwin** binary for `rrule-rust`
This is the **aarch64-apple-darwin** binary for `@rrule-rust/lib`
19 changes: 16 additions & 3 deletions npm/darwin-arm64/package.json
Original file line number Diff line number Diff line change
@@ -1,20 +1,33 @@
{
"name": "@rrule-rust/lib-darwin-arm64",
"version": "0.0.0",
"os": [
"darwin"
],
"cpu": [
"arm64"
],
"main": "rrule-rust.darwin-arm64.node",
"files": [
"rrule-rust.darwin-arm64.node"
],
"description": "RRule implementation for Node.js written in Rust",
"keywords": [
"rrule",
"icalendar",
"rust",
"rs"
],
"author": {
"name": "lsndr",
"email": "alexander@lsndr.me",
"url": "https://lsndr.me"
},
"license": "MIT",
"engines": {
"node": ">= 10"
},
"repository": "lsndr/rrule-rust",
"os": [
"darwin"
],
"publishConfig": {
"access": "public"
}
Expand Down
3 changes: 0 additions & 3 deletions npm/darwin-universal/README.md

This file was deleted.

18 changes: 0 additions & 18 deletions npm/darwin-universal/package.json

This file was deleted.

4 changes: 2 additions & 2 deletions npm/darwin-x64/README.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
# `rrule-rust-darwin-x64`
# `@rrule-rust/lib-darwin-x64`

This is the **x86_64-apple-darwin** binary for `rrule-rust`
This is the **x86_64-apple-darwin** binary for `@rrule-rust/lib`
19 changes: 16 additions & 3 deletions npm/darwin-x64/package.json
Original file line number Diff line number Diff line change
@@ -1,20 +1,33 @@
{
"name": "@rrule-rust/lib-darwin-x64",
"version": "0.0.0",
"os": [
"darwin"
],
"cpu": [
"x64"
],
"main": "rrule-rust.darwin-x64.node",
"files": [
"rrule-rust.darwin-x64.node"
],
"description": "RRule implementation for Node.js written in Rust",
"keywords": [
"rrule",
"icalendar",
"rust",
"rs"
],
"author": {
"name": "lsndr",
"email": "alexander@lsndr.me",
"url": "https://lsndr.me"
},
"license": "MIT",
"engines": {
"node": ">= 10"
},
"repository": "lsndr/rrule-rust",
"os": [
"darwin"
],
"publishConfig": {
"access": "public"
}
Expand Down
4 changes: 2 additions & 2 deletions npm/freebsd-x64/README.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
# `rrule-rust-freebsd-x64`
# `@rrule-rust/lib-freebsd-x64`

This is the **x86_64-unknown-freebsd** binary for `rrule-rust`
This is the **x86_64-unknown-freebsd** binary for `@rrule-rust/lib`
Loading
Loading