vparser

Crates.iovparser
lib.rsvparser
version1.1.0
created_at2023-11-27 06:32:14.807389+00
updated_at2025-08-25 14:08:21.326492+00
descriptionLow-level non-validating icalendar/vcard parser.
homepagehttps://sr.ht/~whynothugo/vdirsyncer-rs
repository
max_upload_size
id1050019
size40,560
Hugo (WhyNotHugo)

documentation

README

vparser

Source | Issues | Patches | Chat

A low-level icalendar and vcard parser.

  • Gracefully handle invalid or malformed data.
  • Handles large amount of data without unnecessary copies.
  • Does not interpret the internal data in calendar components or contact data inside of vcards.

This library is likely too low level calendar applications or other consumers that need to interpret calendar data itself. It is suitable for tools that operate on icalendar components in an opaque manner. E.g.: normalisation, merging components, synchronisation, etc.

Requirements

vparser requires Rust and Cargo to built. It has no additional build or runtime dependencies. It is technically usable in a no_std environment, although that is unlikely to be of much use.

Documentation

The API documentation is available online at docs.rs. It can also be rendered locally using cargo doc.

For additional design notes, see this article written during its development

Thanks

Special thanks to the NLnet foundation and the NGI Zero Entrust program of the European Commission, which helped secure funding for the work on pimsync and related projects such a this one.

Licence

This project is licensed under the ISC licence. See LICENCE for details.

Commit count: 0

cargo fmt