googleapis / googleapis/release-please

cargo-workspace plugin does not support Cargo.toml outside of repository root

Open
#2,589 1 comment 1 reaction 1 assignee Claimed by @chingor13 View on GitHub
priority: p3 type: bug
Dominant language
TypeScript
Stars
7.5k
Forks
588
Avg merge
12h 16m
Merged PRs (30d)
7

Description

When using the cargo-workspace plugin with a monorepo where Cargo.toml is not in the root of the repository, Release Please fails with `release-please failed: Failed to find file: Cargo.toml`.

See https://github.com/googleapis/release-please/blob/3cf5360f9172efe2af41890df072a202730ddd5b/src/plugins/cargo-workspace.ts#L94; it looks like the path is hard-coded.

I am creating a multi-language implementation of a library and would like to be able to nest each framework's configuration within its own subfolder.

#### Environment details

- OS: ubuntu
- Node.js version: v22.14
- npm version: 10.9.2
- `release-please` version: 17.1.2

#### Steps to reproduce

1. Create a multi-language monorepo with a Rust workspace in a subdirectory (e.g., ./rust) where the Cargo.toml file describing the workspace is stored under ./rust/Cargo.toml
2. Reference this using the `cargo-workspace` plugin

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.