Skip to content

feat(bindings/dotnet): standardize naming to OpenDAL and enforce RC releases#7355

Merged
tisonkun merged 2 commits intoapache:mainfrom
Fatorin:bindings-dotnet-rc-publish
Apr 8, 2026
Merged

feat(bindings/dotnet): standardize naming to OpenDAL and enforce RC releases#7355
tisonkun merged 2 commits intoapache:mainfrom
Fatorin:bindings-dotnet-rc-publish

Conversation

@Fatorin
Copy link
Copy Markdown
Contributor

@Fatorin Fatorin commented Apr 2, 2026

Which issue does this PR close?

Closes #7354.

Rationale for this change

The .NET binding was previously using inconsistent naming (DotOpenDAL) across the project structure, solution file, and test project.

Additionally, the release workflow used a dotnet-v* tag pattern separate from the main project tags and did not enforce pre-release (RC) versioning, which could lead to accidentally publishing a stable release before the binding is production-ready.

What changes are included in this PR?

  • Rename DotOpenDAL to OpenDAL: Renamed the project directory, .csproj, solution file (dotnet.slnx → opendal.slnx), test project (DotOpenDAL.Tests → OpenDAL.Tests), and updated all namespace references to use OpenDAL consistently.

  • Standardize tag pattern: Changed the release workflow trigger from dotnet-v* tags to the unified v* tag pattern used by the rest of the repository.

  • Enforce RC releases: Added a "Determine package version" step that automatically appends -rc to the package version when a stable version tag is pushed (e.g., v1.0.0 → 1.0.0-rc), ensuring no stable package is published prematurely. Tags that already contain a pre-release suffix (e.g., v1.0.0-beta) are left as-is.

  • Update workflow paths and descriptions to reflect the new directory structure.

Are there any user-facing changes?

The NuGet package ID remains Apache.OpenDAL, but all published versions will carry an -rc pre-release suffix until the package is confirmed to be stable for production use.

Users installing the package will need to use --prerelease or specify the version explicitly (e.g., --version 1.0.0-rc).

AI Usage Statement

This PR was developed with the assistance of Claude Opus 4.6.

@Fatorin Fatorin requested review from Xuanwo and tisonkun as code owners April 2, 2026 16:19
@dosubot dosubot Bot added size:L This PR changes 100-499 lines, ignoring generated files. releases-note/feat The PR implements a new feature or has a title that begins with "feat" labels Apr 2, 2026
@dosubot dosubot Bot added the lgtm This PR has been approved by a maintainer label Apr 8, 2026
@tisonkun tisonkun merged commit c6f3f13 into apache:main Apr 8, 2026
67 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

lgtm This PR has been approved by a maintainer releases-note/feat The PR implements a new feature or has a title that begins with "feat" size:L This PR changes 100-499 lines, ignoring generated files.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

new feature: align .NET package metadata and enforce RC release strategy

2 participants