Skip to content

Commit 0ea657c

Browse files
authored
chore: Merging main branch (#116)
1 parent 893971c commit 0ea657c

11 files changed

Lines changed: 103 additions & 7 deletions

File tree

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
target=1.91
Lines changed: 72 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,72 @@
1+
name: Check Supported Rust Versions
2+
on:
3+
schedule:
4+
- cron: "0 17 * * *"
5+
workflow_dispatch:
6+
7+
jobs:
8+
check-rust-eol:
9+
permissions:
10+
contents: read
11+
runs-on: ubuntu-latest
12+
outputs:
13+
target: ${{ steps.parse.outputs.target }}
14+
timeout-minutes: 2
15+
steps:
16+
- uses: actions/checkout@v4
17+
# Perform a GET request to endoflife.date for the Rust language. The response
18+
# contains all Rust releases; we're interested in the 2nd index (antepenultimate).
19+
- name: Fetch officially supported Rust versions
20+
uses: JamesIves/fetch-api-data-action@396ebea7d13904824f85b892b1616985f847301c
21+
with:
22+
endpoint: https://endoflife.date/api/rust.json
23+
configuration: '{ "method": "GET" }'
24+
debug: true
25+
# Parse the response JSON and insert into environment variables for the next step.
26+
# We use the antepenultimate (third most recent) version as our target.
27+
- name: Parse officially supported Rust versions
28+
id: parse
29+
run: |
30+
echo "target=${{ fromJSON(env.fetch-api-data)[2].cycle }}" >> $GITHUB_OUTPUT
31+
32+
create-prs:
33+
permissions:
34+
contents: write
35+
pull-requests: write
36+
needs: check-rust-eol
37+
runs-on: ubuntu-latest
38+
env:
39+
officialTargetVersion: ${{ needs.check-rust-eol.outputs.target }}
40+
steps:
41+
- uses: actions/checkout@v4
42+
43+
- name: Get current Rust version
44+
id: rust-versions
45+
run: cat ./.github/variables/rust-versions.env >> $GITHUB_OUTPUT
46+
47+
- name: Update rust-versions.env and Cargo.toml
48+
if: steps.rust-versions.outputs.target != env.officialTargetVersion
49+
id: update-rust-versions
50+
run: |
51+
# Update the versions file
52+
sed -i -e "s#target=[^ ]*#target=${{ env.officialTargetVersion }}#g" \
53+
./.github/variables/rust-versions.env
54+
55+
# Update Cargo.toml rust-version field
56+
sed -i -e "s#rust-version = \"[^\"]*\"#rust-version = \"${{ env.officialTargetVersion }}.0\"#g" \
57+
./eventsource-client/Cargo.toml
58+
59+
- name: Create pull request
60+
if: steps.update-rust-versions.outcome == 'success'
61+
uses: peter-evans/create-pull-request@c0f553fe549906ede9cf27b5156039d195d2ece0
62+
with:
63+
token: ${{ secrets.GITHUB_TOKEN }}
64+
add-paths: |
65+
.github/variables/rust-versions.env
66+
eventsource-client/Cargo.toml
67+
branch: "launchdarklyreleasebot/update-to-rust${{ env.officialTargetVersion }}"
68+
author: "LaunchDarklyReleaseBot <LaunchDarklyReleaseBot@launchdarkly.com>"
69+
committer: "LaunchDarklyReleaseBot <LaunchDarklyReleaseBot@launchdarkly.com>"
70+
title: "fix: Bump MSRV from ${{ steps.rust-versions.outputs.target }} to ${{ env.officialTargetVersion }}"
71+
body: |
72+
- [ ] I have triggered CI on this PR (either close & reopen this PR in Github UI, or `git commit -m "run ci" --allow-empty && git push`)

.github/workflows/ci.yml

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,9 +22,13 @@ jobs:
2222
with:
2323
fetch-depth: 0 # If you only need the current version keep this.
2424

25+
- name: Get Rust version
26+
id: rust-version
27+
run: cat ./.github/variables/rust-versions.env >> $GITHUB_OUTPUT
28+
2529
- name: Setup rust tooling
2630
run: |
27-
rustup override set 1.83
31+
rustup override set ${{ steps.rust-version.outputs.target }}
2832
rustup component add rustfmt clippy
2933
3034
- uses: ./.github/actions/ci

.github/workflows/manual-publish.yml

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,9 +17,13 @@ jobs:
1717
steps:
1818
- uses: actions/checkout@v4
1919

20+
- name: Get Rust version
21+
id: rust-version
22+
run: cat ./.github/variables/rust-versions.env >> $GITHUB_OUTPUT
23+
2024
- name: Setup rust tooling
2125
run: |
22-
rustup override set 1.83
26+
rustup override set ${{ steps.rust-version.outputs.target }}
2327
rustup component add rustfmt clippy
2428
2529
- uses: ./.github/actions/ci

.github/workflows/release-please.yml

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,10 +22,15 @@ jobs:
2222
with:
2323
fetch-depth: 0 # If you only need the current version keep this.
2424

25+
- name: Get Rust version
26+
if: ${{ steps.release.outputs['eventsource-client--release_created'] == 'true' }}
27+
id: rust-version
28+
run: cat ./.github/variables/rust-versions.env >> $GITHUB_OUTPUT
29+
2530
- name: Setup rust tooling
2631
if: ${{ steps.release.outputs['eventsource-client--release_created'] == 'true' }}
2732
run: |
28-
rustup override set 1.83
33+
rustup override set ${{ steps.rust-version.outputs.target }}
2934
rustup component add rustfmt clippy
3035
3136
- uses: launchdarkly/gh-actions/actions/release-secrets@release-secrets-v1.2.0

.release-please-manifest.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
11
{
2-
"eventsource-client": "0.16.0"
2+
"eventsource-client": "0.16.1"
33
}

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -47,6 +47,6 @@ issues. API subject to change.
4747

4848
## Minimum Supported Rust Version
4949

50-
This project aims to maintain compatibility with a Rust version that is at least six months old.
50+
This project aims to maintain compatibility with the latest stable release of Rust in addition to the two prior minor releases.
5151

5252
Version updates may occur more frequently than the policy guideline states if external forces require it. For example, a CVE in a downstream dependency requiring an MSRV bump would be considered an acceptable reason to violate the six month guideline.

eventsource-client/CHANGELOG.md

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,14 @@
22

33
All notable changes to the project will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org).
44

5+
## [0.16.1](https://github.com/launchdarkly/rust-eventsource-client/compare/0.16.0...0.16.1) (2026-01-26)
6+
7+
8+
### Bug Fixes
9+
10+
* Bump MSRV from 1.83 to 1.88 ([#110](https://github.com/launchdarkly/rust-eventsource-client/issues/110)) ([94cdd71](https://github.com/launchdarkly/rust-eventsource-client/commit/94cdd716bbcf0fc552b7a470142ccad9149848aa))
11+
* Bump MSRV from 1.88 to 1.91 ([#112](https://github.com/launchdarkly/rust-eventsource-client/issues/112)) ([78423ab](https://github.com/launchdarkly/rust-eventsource-client/commit/78423abfa406550d9270fba33aebc25e257b0216))
12+
513
## [0.16.0](https://github.com/launchdarkly/rust-eventsource-client/compare/0.15.1...0.16.0) (2025-12-17)
614

715

eventsource-client/Cargo.toml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
11
[package]
22
name = "eventsource-client"
3-
version = "0.16.0"
3+
version = "0.16.1"
44
description = "Client for the Server-Sent Events protocol (aka EventSource)"
55
repository = "https://github.com/launchdarkly/rust-eventsource-client"
66
authors = ["LaunchDarkly"]
77
edition = "2021"
8-
rust-version = "1.83.0"
8+
rust-version = "1.91.0"
99
license = "Apache-2.0"
1010
keywords = ["launchdarkly", "feature-flags", "feature-toggles", "eventsource", "server-sent-events"]
1111
exclude = ["CHANGELOG.md"]

eventsource-client/examples/tail.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@ use std::{env, process, time::Duration};
1818
use eventsource_client as es;
1919

2020
#[tokio::main]
21+
#[allow(clippy::result_large_err)]
2122
async fn main() -> Result<(), Box<dyn std::error::Error>> {
2223
env_logger::init();
2324

0 commit comments

Comments
 (0)