Back to Codeberg

forgejo-cli fails to build from source with Rust 1.93+ (time crate 0.3.47) #325

forgejo-contrib-forgejo-cli-issues-325.md

latest8.9 KB
Original Source

forgejo-contrib/forgejo-cli

Watch20

Star402

Fork

You've already forked forgejo-cli

51

CodeIssues 44Pull requests 8Releases 11Packages 2WikiActivity

forgejo-cli fails to build from source with Rust 1.93+ (time crate 0.3.47) #325

New issue

Closed

opened 2026-02-10 18:37:17 +01:00 by allquixotic · 1 comment

allquixotic commented 2026-02-10 18:37:17 +01:00

Copy link

Summary

cargo install forgejo-cli fails to compile with Rust 1.93 and time crate >= 0.3.47 due to a bug in the upstream forgejo-api v0.9.0 dependency.

Error

text
error[E0080]: evaluation panicked: Rfc3339 requires date, time, and
offset components, but not all can be provided by this type

The forgejo-api code generator treats format: "date" and format: "date-time" Swagger fields identically, formatting both with Rfc3339. But time::Date only supplies the date component — RFC 3339 requires date + time + offset. The time crate v0.3.47 added a compile-time const assertion enforcing this, turning a latent runtime bug into a compile error.

Reproduction

bash
rustup update stable # Rust 1.93+
cargo install forgejo-cli

Tested on macOS (aarch64) and AlmaLinux 10 (x86_64) — same failure on both.

Upstream Fix

Once the upstream forgejo-api crate publishes a fix and forgejo-cli updates its dependency, this will be resolved.

Workaround

Manually patch the cached forgejo-api source before building:

bash
FILE="$(find ~/.cargo/registry/src -path '*/forgejo-api-0.9.0/src/generated/structs.rs' 2>/dev/null)"
sed -i.bak 's/date\.format(&time::format_description::well_known::Rfc3339)/date.to_string()/g' "$FILE"
cargo install forgejo-cli

Summary cargo install forgejo-cli fails to compile with Rust 1.93 and time crate >= 0.3.47 due to a bug in the upstream forgejo-api v0.9.0 dependency. ## Error error[E0080]: evaluation panicked: Rfc3339 requires date, time, and offset components, but not all can be provided by this type The forgejo-api code generator treats format: "date" and format: "date-time" Swagger fields identically, formatting both with Rfc3339. But time::Date only supplies the date component — RFC 3339 requires date + time + offset. The time crate v0.3.47 added a compile-time const assertion enforcing this, turning a latent runtime bug into a compile error. ## Reproduction bash rustup update stable # Rust 1.93+ cargo install forgejo-cli Tested on macOS (aarch64) and AlmaLinux 10 (x86_64) — same failure on both. ## Upstream Fix - Issue: https://codeberg.org/Cyborus/forgejo-api/issues/136 - PR: https://codeberg.org/Cyborus/forgejo-api/pulls/137 Once the upstream forgejo-api crate publishes a fix and forgejo-cli updates its dependency, this will be resolved. ## Workaround Manually patch the cached forgejo-api source before building: bash FILE="$(find ~/.cargo/registry/src -path '*/forgejo-api-0.9.0/src/generated/structs.rs' 2\>/dev/null)" sed -i.bak 's/date\.format(&time::format_description::well_known::Rfc3339)/date.to_string()/g' "$FILE" cargo install forgejo-cli

Cyborus commented 2026-02-20 17:29:16 +01:00

Member

Copy link

This should be resolved by #330

This should be resolved by #330

Cyborus closed this issue 2026-02-20 17:29:17 +01:00

Sign in to join this conversation.

No Branch/Tag specified

BranchesTags

main

renovate/lock-file-maintenance

renovate/serde-saphyr-0.x

docs/contributing

no-port-in-refspec

login/v16.next.forgejo.org

crates-io-publish

0.5.x

compile-time-fluent

0.4.x

localization-alias-demo

api_url_field

v0.5.0

v0.4.1

v0.4.0

v0.3.0

v0.2.0

v0.1.1

v0.1.0

v0.0.4

v0.0.3

v0.0.2

v0.0.1

Labels

Clear labels[ Kind/Breaking Breaking change that won't be backward compatible

](#)[ Kind/Bug Something is not working

](#)[ Kind/Design Discussion about UI/UX design

](#)[ Kind/Documentation Documentation changes

](#)[ Kind/Enhancement Improve existing functionality

](#)[ Kind/Feature New functionality

](#)[ Kind/Security This is security issue

](#)[ Kind/Testing Issue or pull request related to testing

](#)[ Kind/Upstream This is an issue with upstream software (Forgejo) that is probably not our fault

](#)

[ Priority

Critical The priority is critical

](#)[ Priority

High The priority is high

](#)[ Priority

Low The priority is low

](#)[ Priority

Medium The priority is medium

](#)

[ Reviewed

Confirmed Issue has been confirmed

](#)[ Reviewed

Duplicate This issue or pull request already exists

](#)[ Reviewed

Invalid Invalid issue

](#)[ Reviewed

Won't Fix This issue won't be fixed

](#)

[ Status

Abandoned Somebody has started to work on this but abandoned work

](#)[ Status

Blocked Something is blocking this issue or pull request

](#)[ Status

Need More Info Feedback is required to reproduce issue or to continue work

](#)

[ Suspicious

](#)

No labels Kind/Breaking Kind/Bug Kind/Design Kind/Documentation Kind/Enhancement Kind/Feature Kind/Security Kind/Testing Kind/Upstream [ Priority

Critical ](/forgejo-contrib/forgejo-cli/issues?labels=173012) [ Priority

High ](/forgejo-contrib/forgejo-cli/issues?labels=173013) [ Priority

Low ](/forgejo-contrib/forgejo-cli/issues?labels=173015) [ Priority

Medium ](/forgejo-contrib/forgejo-cli/issues?labels=173014) [ Reviewed

Confirmed ](/forgejo-contrib/forgejo-cli/issues?labels=173007) [ Reviewed

Duplicate ](/forgejo-contrib/forgejo-cli/issues?labels=173005) [ Reviewed

Invalid ](/forgejo-contrib/forgejo-cli/issues?labels=173006) [ Reviewed

Won't Fix ](/forgejo-contrib/forgejo-cli/issues?labels=173008) [ Status

Abandoned ](/forgejo-contrib/forgejo-cli/issues?labels=173011) [ Status

Blocked ](/forgejo-contrib/forgejo-cli/issues?labels=173010) [ Status

Need More Info ](/forgejo-contrib/forgejo-cli/issues?labels=173009) Suspicious

Milestone

Clear milestone

No items

No milestone

Projects

Clear projects

No items

No project

Assignees

Clear assignees

No assignees

2 participants

Notifications Subscribe

Due date

The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference

forgejo-contrib/forgejo-cli#325

WritePreview

Loading…

Add table

| Rows | | | Columns | |

CancelOK

Add a link

Url Description Hint: With a URL in your clipboard, you can paste directly into the editor to create a link.

CancelOK

CancelSave

Reference in a new issue

Repository

forgejo-contrib/forgejo-cli

Title

Body

Create issue

No description provided.

Delete branch "%!s()"

Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?

No Yes