Release 0.3.1
Add ClientCodec and ServerCodec
Add general *_flat_map methods to YieldParsed
vinezombie is a work in progress. Use with care. It may have bugs, and there will be further breaking 0.x releases. Expect many more features in the future.
A modular IRCv3 framework in Rust.
vinezombie is a Rust framework for writing IRCv3 software, particularly clients/bots.
unsafe
, it should be impossible to construct a correctly-sized
message that, once written, does not parse into the same message.labeled-response
.To build and view the documentation locally, run:
RUSTDOCFLAGS="--cfg doc_unstable" cargo +nightly doc --all-features --open
The strings diagram in doc
can be re-rendered using:
d2 -t 200 -l dagre --pad 0 doc/strings.d2 doc/strings.d2.svg
vinezombie's examples may use any combination of its features,
and should be built with --all-features
.
Licensed under the EUPL-1.2-only, summarized here. You agree for any contributions submitted by you for inclusion into vinezombie to be redistributed under this license.
The EUPL is a copyleft license that covers network usage. It requires attribution and that works that incorporate vinezombie be made available to users (including users over a network connection) under a compatible copyleft license (GPL v2, LGPL/GPL/AGPL v3, MPL v2, EUPL v1.2, or refer to the license text for a full list and more information). It also requires that changes to vinezombie in distributed works be disclosed and made available under the EUPL.
However, the license is not automatically viral over linking or IPC, and vinezombie's interfaces may be reproduced for interoperability with software that uses it.
If you wish to discuss vinezombie's development in soft-realtime, our official IRC channel is #vinezombie on Libera.Chat. A link to a webchat is available at the top by clicking the libera.chat badge.
<jess> why vinezombie lmao
<TheDaemoness> Because. Grapevines. Undead chat protocols.
<jess> oh my god