feat: release please

This commit is contained in:
sevki 2024-03-14 14:55:42 +00:00
parent ab4eec3f57
commit 044cceb76e
8 changed files with 87 additions and 15 deletions

33
.github/workflows/release-please.yml vendored Normal file
View file

@ -0,0 +1,33 @@
name: Release Please🙏!
permissions:
contents: write
pull-requests: write
on:
push:
branches:
- main
jobs:
release-please:
runs-on: ubuntu-latest
steps:
- uses: google-github-actions/release-please-action@v4
id: release
with:
release-type: rust
- uses: actions/checkout@v4
- name: tag major and minor versions
if: ${{ steps.release.outputs.release_created }}
run: |
git config user.name github-actions[bot]
git config user.email 41898282+github-actions[bot]@users.noreply.github.com
git remote add gh-token "https://${{ secrets.GITHUB_TOKEN }}@github.com/google-github-actions/release-please-action.git"
git tag -d v${{ steps.release.outputs.major }} || true
git tag -d v${{ steps.release.outputs.major }}.${{ steps.release.outputs.minor }} || true
git push origin :v${{ steps.release.outputs.major }} || true
git push origin :v${{ steps.release.outputs.major }}.${{ steps.release.outputs.minor }} || true
git tag -a v${{ steps.release.outputs.major }} -m "Release v${{ steps.release.outputs.major }}"
git tag -a v${{ steps.release.outputs.major }}.${{ steps.release.outputs.minor }} -m "Release v${{ steps.release.outputs.major }}.${{ steps.release.outputs.minor }}"
git push origin v${{ steps.release.outputs.major }}
git push origin v${{ steps.release.outputs.major }}.${{ steps.release.outputs.minor }}

View file

@ -12,8 +12,8 @@ jobs:
- uses: actions/checkout@v4
- uses: actions-rs/toolchain@v1
with:
toolchain: stable
override: true
toolchain: stable
override: true
- uses: katyo/publish-crates@v2
with:
registry-token: ${{ secrets.CARGO_REGISTRY_TOKEN }}
registry-token: ${{ secrets.CARGO_REGISTRY_TOKEN }}

0
CHANGELOG.md Normal file
View file

6
Cargo.lock generated
View file

@ -743,7 +743,7 @@ checksum = "b1a46d1a171d865aa5f83f92695765caa047a9b4cbae2cbf37dbd613a793fd4c"
[[package]]
name = "jetstream"
version = "0.1.4"
version = "0.1.6"
dependencies = [
"anyhow",
"async-stream",
@ -782,7 +782,7 @@ dependencies = [
[[package]]
name = "jetstream_p9"
version = "0.1.4"
version = "0.1.5"
dependencies = [
"genfs",
"jetstream_p9_wire_format_derive",
@ -794,7 +794,7 @@ dependencies = [
[[package]]
name = "jetstream_p9_wire_format_derive"
version = "0.1.4"
version = "0.1.5"
dependencies = [
"pretty_assertions",
"proc-macro2",

View file

@ -1,6 +1,6 @@
[package]
name = "jetstream"
version = "0.1.5"
version = "0.1.6"
edition = "2021"
description = "Jetstream is a RPC framework for Rust, based on the 9P protocol and QUIC."
license = "BSD-3-Clause"

View file

@ -26,7 +26,7 @@ JetStream is not ready for production use. It's still in the early stages of dev
- [capnproto](https://capnproto.org/)
- [thrift](https://thrift.apache.org/)
- [jsonrpc](https://www.jsonrpc.org/)
- [xmlrpc](http://xmlrpc.scripting.com/)
- [tarpc](https://crates.io/crates/tarpc)
## [License](LICENSE)

View file

@ -1,3 +1,3 @@
[toolchain]
channel = "1.75"
channel = "1.76"
components = [ "rustfmt", "clippy", "llvm-tools-preview" ]

View file

@ -1,5 +1,43 @@
#![doc(html_logo_url = "https://raw.githubusercontent.com/sevki/jetstream/main/logo/JetStream.png")]
#![doc(html_favicon_url = "https://raw.githubusercontent.com/sevki/jetstream/main/logo/JetStream.png")]
//! <img src="logo/JetStream.png" style="width: 200px">
//!
//! # JetStream [![crates.io](https://img.shields.io/crates/v/jetstream.svg)](https://crates.io/crates/jetstream) [![docs.rs](https://docs.rs/jetstream/badge.svg)](https://docs.rs/jetstream) <!--gh actions--> ![Build Status](https://github.com/sevki/jetstream/actions/workflows/rust.yml/badge.svg) ![Build Status](https://github.com/sevki/jetstream/actions/workflows/release.yml/badge.svg)
//!
//!
//! JetStream is an RPC framework built on top of [s2n-quic](https://crates.io/crates/s2n-quic) and [p9](https://crates.io/crates/p9). It's designed to be a high performance, low latency, secure, and reliable RPC framework.
//!
//! Features:
//!
//! - Bidirectional streaming
//! - 0-RTT
//! - [mTLS](https://github.com/aws/s2n-quic/tree/main/examples/s2n-mtls)
//! - binary encoding
//!
//! ## Motivation
//!
//! Building remote filesystems over internet, is the main motivation behind JetStream.
//!
//! ## Ready?
//!
//! JetStream is not ready for production use. It's still in the early stages of development.
//!
//! ## Alternatives
//!
//! - [grpc](https://grpc.io/)
//! - [capnproto](https://capnproto.org/)
//! - [thrift](https://thrift.apache.org/)
//! - [jsonrpc](https://www.jsonrpc.org/)
//! - [tarpc](https://crates.io/crates/tarpc)
//!
//! ## [License](LICENSE)
//!
//! BSD-3-Clause
#![doc(
html_logo_url = "https://raw.githubusercontent.com/sevki/jetstream/main/logo/JetStream.png"
)]
#![doc(
html_favicon_url = "https://raw.githubusercontent.com/sevki/jetstream/main/logo/JetStream.png"
)]
#![cfg_attr(docsrs, feature(doc_cfg, doc_auto_cfg))]
pub use jetstream_p9::protocol;
@ -7,9 +45,10 @@ pub use jetstream_p9::protocol;
pub mod async_wire_format;
pub mod log;
pub mod server;
pub mod service;
#[cfg(feature = "filesystem")]
pub mod filesystem;
#[cfg(feature = "client")]
pub mod client;
#[cfg(feature = "filesystem")]
pub mod filesystem;
pub mod server;
pub mod service;