-
Notifications
You must be signed in to change notification settings - Fork 9
chore(release): drop crates.io publication; release module artifacts only #18
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Changes from all commits
702d42b
1f891e4
ce429be
ec83ff1
a7e6d05
2829439
1367315
eca8cfe
ad62795
ed62a30
b33dcbe
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -5,8 +5,6 @@ | |
| <h1 align="center">TinyChannels</h1> | ||
|
|
||
| <p align="center"> | ||
| <a href="https://crates.io/crates/tinychannels"><img src="https://img.shields.io/crates/v/tinychannels.svg" alt="crates.io" /></a> | ||
| <a href="https://docs.rs/tinychannels"><img src="https://docs.rs/tinychannels/badge.svg" alt="docs.rs" /></a> | ||
| <a href="https://github.com/tinyhumansai/tinychannels/actions/workflows/ci.yml"><img src="https://github.com/tinyhumansai/tinychannels/actions/workflows/ci.yml/badge.svg" alt="CI" /></a> | ||
| <a href="LICENSE"><img src="https://img.shields.io/badge/License-GPLv3-blue.svg" alt="License: GPL v3" /></a> | ||
| </p> | ||
|
|
@@ -40,18 +38,24 @@ TinyChannels includes optional provider implementations that must be explicitly | |
| | **Lark/Feishu** | `lark` | `LarkChannel` (webhook receiver + Protobuf decoder) | `axum`, `prost` | | ||
| | **WhatsApp Web** | `whatsapp-web` | `WhatsAppWebChannel` (multi-device via whatsapp-rust) | `whatsapp-rust`, `whatsapp-rust-tokio-transport`, `whatsapp-rust-ureq-http-client`, `wacore` | | ||
|
|
||
| > **Not on crates.io.** This crate and `tinychannels-bus` are `publish = false` | ||
| > and are consumed as a git submodule plus a path dependency (OpenHuman vendors | ||
| > them under `vendor/tinychannels`). What a host *loads* at runtime is the | ||
|
Comment on lines
+42
to
+43
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 📐 Maintainability & Code Quality | 🟡 Minor | ⚡ Quick win Describe the dependency models as alternatives. Lines 42-43 state that consumers use a Git submodule and path dependency. Lines 51 and 58 instead show a direct Git dependency. State that OpenHuman uses the vendored path model, while other consumers can use the direct Git dependency shown below. Proposed documentation fix-> and are consumed as a git submodule plus a path dependency (OpenHuman vendors
-> them under `vendor/tinychannels`). What a host *loads* at runtime is the
+> . OpenHuman consumes them through a git submodule and path dependencies under
+> `vendor/tinychannels`; other consumers can use the direct git dependency shown
+> below. What a host *loads* at runtime is theAs per coding guidelines, keep 🤖 Prompt for AI AgentsSource: Coding guidelines |
||
| > compiled `tinychannels-module` `cdylib`, delivered as a release artifact and | ||
| > pinned by SHA-256 — not a published crate. | ||
|
|
||
| The default feature set (`default = []`) does not include these providers. To use them, add to your `Cargo.toml`: | ||
|
|
||
| ```toml | ||
| [dependencies] | ||
| tinychannels = { version = "0.1", features = ["email", "lark", "whatsapp-web"] } | ||
| tinychannels = { git = "https://github.com/tinyhumansai/tinychannels", features = ["email", "lark", "whatsapp-web"] } | ||
| ``` | ||
|
|
||
| Or enable them individually as needed: | ||
|
|
||
| ```toml | ||
| [dependencies] | ||
| tinychannels = { version = "0.1", features = ["email"] } | ||
| tinychannels = { git = "https://github.com/tinyhumansai/tinychannels", features = ["email"] } | ||
| ``` | ||
|
|
||
| If you only ever *send* mail — no mailbox is polled — take `email-send` instead. | ||
|
|
@@ -60,7 +64,7 @@ helpers on `lettre` alone, without the IMAP receive stack (18 fewer packages): | |
|
|
||
| ```toml | ||
| [dependencies] | ||
| tinychannels = { version = "0.1", features = ["email-send"] } | ||
| tinychannels = { git = "https://github.com/tinyhumansai/tinychannels", features = ["email-send"] } | ||
| ``` | ||
|
|
||
| `email-send` carries no `Channel` impl — a send-only build cannot `listen`, so | ||
|
|
||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🔒 Security & Privacy | 🟡 Minor | ⚡ Quick win
Do not describe the release artifacts as signed.
The release workflow creates SHA-256 digests and an annotated Git tag. It does not sign the tag or the release archives. Either add artifact signing and verification-key documentation, or describe the artifacts as SHA-256-pinned.
Cargo.toml#L19-L19: replace “signed release artifact” with the implemented SHA-256 pinning model.crates/tinychannels-bus/Cargo.toml#L7-L7: replace “signed release artifact” with the implemented SHA-256 pinning model.📍 Affects 2 files
Cargo.toml#L19-L19(this comment)crates/tinychannels-bus/Cargo.toml#L7-L7🤖 Prompt for AI Agents