[package]
edition = "2024"
rust-version = "1.88"
name = "ical-rs"
version = "0.5.1"
authors = ["Clément DOUIN (soywod) <pimalaya.org@posteo.net>"]
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "iCalendar parser, validator, editor, merger and builder library"
homepage = "https://pimalaya.org"
documentation = "https://docs.rs/ical-rs/latest/ical"
readme = "README.md"
keywords = [
"icalendar",
"calendar",
"caldav",
"rfc5545",
"codec",
]
categories = [
"data-structures",
"parser-implementations",
"encoding",
"no-std",
]
license = "MIT OR Apache-2.0"
repository = "https://github.com/pimalaya/ical"
[package.metadata.docs.rs]
all-features = true
rustdoc-args = [
"--cfg",
"docsrs",
]
[features]
base64 = ["dep:base64"]
default = [
"parser",
"quoted-printable",
"base64",
"encoding",
]
encoding = ["dep:encoding_rs"]
jcal = ["dep:serde_json"]
jscalendar = ["jcal"]
parser = ["dep:memchr"]
quoted-printable = ["dep:quoted_printable"]
[lib]
name = "ical"
path = "src/lib.rs"
[[example]]
name = "all_versions"
path = "examples/all_versions.rs"
required-features = ["parser"]
[[example]]
name = "calendar_file"
path = "examples/calendar_file.rs"
required-features = ["parser"]
[[example]]
name = "content_encodings"
path = "examples/content_encodings.rs"
required-features = [
"parser",
"quoted-printable",
"base64",
"encoding",
]
[[example]]
name = "forgiving_parse"
path = "examples/forgiving_parse.rs"
required-features = ["parser"]
[[example]]
name = "jcal"
path = "examples/jcal.rs"
required-features = [
"parser",
"jcal",
]
[[example]]
name = "jscalendar"
path = "examples/jscalendar.rs"
required-features = [
"parser",
"jscalendar",
]
[[example]]
name = "parse_edit_export"
path = "examples/parse_edit_export.rs"
required-features = ["parser"]
[[example]]
name = "raw_builder"
path = "examples/raw_builder.rs"
required-features = ["parser"]
[[example]]
name = "recurrence"
path = "examples/recurrence.rs"
required-features = ["parser"]
[[example]]
name = "strict_builder"
path = "examples/strict_builder.rs"
required-features = ["parser"]
[[example]]
name = "structured_values"
path = "examples/structured_values.rs"
required-features = ["parser"]
[[example]]
name = "three_way_merge"
path = "examples/three_way_merge.rs"
required-features = ["parser"]
[[example]]
name = "time_zones"
path = "examples/time_zones.rs"
required-features = ["parser"]
[[example]]
name = "validate_errors"
path = "examples/validate_errors.rs"
required-features = ["parser"]
[[test]]
name = "calcard"
path = "tests/calcard.rs"
[[test]]
name = "corpus"
path = "tests/corpus.rs"
[[test]]
name = "coverage"
path = "tests/coverage.rs"
[[test]]
name = "encoding"
path = "tests/encoding.rs"
[[test]]
name = "jcal"
path = "tests/jcal.rs"
[[test]]
name = "jscalendar"
path = "tests/jscalendar.rs"
[[test]]
name = "lens"
path = "tests/lens.rs"
[[test]]
name = "merge"
path = "tests/merge.rs"
[[test]]
name = "merge_props"
path = "tests/merge_props.rs"
[[test]]
name = "recovering"
path = "tests/recovering.rs"
[[test]]
name = "recur_corpus"
path = "tests/recur_corpus.rs"
[[test]]
name = "recur_gap"
path = "tests/recur_gap.rs"
[[test]]
name = "recur_set"
path = "tests/recur_set.rs"
[[test]]
name = "rfc5545_recur"
path = "tests/rfc5545_recur.rs"
[[test]]
name = "rfc7529_skip"
path = "tests/rfc7529_skip.rs"
[[test]]
name = "tz"
path = "tests/tz.rs"
[[test]]
name = "validate"
path = "tests/validate.rs"
[[bench]]
name = "parse"
path = "benches/parse.rs"
harness = false
required-features = ["parser"]
[dependencies.base64]
version = "0.23"
features = ["alloc"]
optional = true
default-features = false
[dependencies.encoding_rs]
version = "0.8"
features = ["alloc"]
optional = true
default-features = false
[dependencies.memchr]
version = "2"
optional = true
default-features = false
[dependencies.quoted_printable]
version = "0.5"
optional = true
default-features = false
[dependencies.serde_json]
version = "1"
features = ["alloc"]
optional = true
default-features = false
[dev-dependencies.calcard]
version = "0.3"
default-features = false
[dev-dependencies.criterion]
version = "0.8"
features = ["cargo_bench_support"]
default-features = false
[dev-dependencies.ical_crate]
version = "0.11"
features = ["ical"]
default-features = false
package = "ical"
[dev-dependencies.icalendar]
version = "0.17"
features = ["parser"]
default-features = false
[dev-dependencies.proptest]
version = "1"
features = ["std"]
default-features = false