Merged
Conversation
✅ Deploy Preview for angry-raman-7c44f6 canceled.
|
fe9a0be to
0470f81
Compare
Critical fix for go install compatibility: - Remove all replace directives from source code - Update module version references to v0.3.2 - Update CHANGELOG with v0.3.2 release notes This ensures go install github.com/finos/morphir/cmd/morphir@v0.3.2 works correctly without replace directive errors. Development workflow now relies on go.work for local module resolution.
0470f81 to
902441a
Compare
The CI was failing because go.mod files referenced v0.3.2 which doesn't exist yet. We need to use the current released version (v0.3.1) until v0.3.2 is actually released. The release script will update these versions to v0.3.2 as part of the release commit before creating tags.
Added critical documentation about why release PRs must use current released versions in go.mod files instead of the version being released. This ensures CI can pass before the new version exists, as CI needs to download module dependencies that won't be available until after release.
- Created setup-workspace.sh/ps1 scripts for dynamic module discovery - CI now automatically sets up go.work before all build/test jobs - Added external consumption test for release PRs (without go.work) - Updated morphir-developer skill with new workflow documentation This ensures: - Consistent behavior between local dev and CI - Cross-module changes work seamlessly in all PRs - Release PRs verify external consumption correctness - No hardcoded module lists - fully dynamic
Add CI_RELEASE_FAQ.md to help developers understand: - How CI tests PR code (not old published versions) - How go.work ensures CI uses local modules - How multi-module PRs work - How release workflow handles versioning - Common troubleshooting scenarios Update README.md and DEVELOPING.md to link to the new FAQ. This addresses developer confidence questions about the chicken-and-egg situation with module versions and ensures all contributors understand our automated workspace setup.
7f12b1a to
3c0b92e
Compare
Fix CI failure where go.work already exists by removing existing go.work and go.work.sum files before initialization. This makes the script idempotent - it can be run multiple times safely without errors. Updated both setup-workspace.sh and setup-workspace.ps1.
DamianReeves
added a commit
that referenced
this pull request
Jan 5, 2026
* chore: release v0.3.2 Critical fix for go install compatibility: - Remove all replace directives from source code - Update module version references to v0.3.2 - Update CHANGELOG with v0.3.2 release notes This ensures go install github.com/finos/morphir/cmd/morphir@v0.3.2 works correctly without replace directive errors. Development workflow now relies on go.work for local module resolution. * fix: use v0.3.1 module versions until v0.3.2 is released The CI was failing because go.mod files referenced v0.3.2 which doesn't exist yet. We need to use the current released version (v0.3.1) until v0.3.2 is actually released. The release script will update these versions to v0.3.2 as part of the release commit before creating tags. * docs: document module version coordination for release PRs Added critical documentation about why release PRs must use current released versions in go.mod files instead of the version being released. This ensures CI can pass before the new version exists, as CI needs to download module dependencies that won't be available until after release. * feat: add go.work automation to CI with external consumption test - Created setup-workspace.sh/ps1 scripts for dynamic module discovery - CI now automatically sets up go.work before all build/test jobs - Added external consumption test for release PRs (without go.work) - Updated morphir-developer skill with new workflow documentation This ensures: - Consistent behavior between local dev and CI - Cross-module changes work seamlessly in all PRs - Release PRs verify external consumption correctness - No hardcoded module lists - fully dynamic * docs: add comprehensive CI/Release workflow FAQ Add CI_RELEASE_FAQ.md to help developers understand: - How CI tests PR code (not old published versions) - How go.work ensures CI uses local modules - How multi-module PRs work - How release workflow handles versioning - Common troubleshooting scenarios Update README.md and DEVELOPING.md to link to the new FAQ. This addresses developer confidence questions about the chicken-and-egg situation with module versions and ensures all contributors understand our automated workspace setup. * fix: make workspace setup script idempotent Fix CI failure where go.work already exists by removing existing go.work and go.work.sum files before initialization. This makes the script idempotent - it can be run multiple times safely without errors. Updated both setup-workspace.sh and setup-workspace.ps1.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
This PR prepares v0.3.2 release, which fixes the critical go install compatibility issue discovered in v0.3.1.
Problem
In v0.3.1, fails with:
Root Cause: The v0.3.1 tag points to source code that still contains
replacedirectives. While our GoReleaser workflow removes these directives during the build process, the published tag source code retains them, breakinggo install.Solution
Remove
replacedirectives from source code entirely:Updated module version references to v0.3.2
For local development, developers should rely on
go.workwhich provides workspace-based module resolution without needing replace directives in go.mod files.Changes
Testing
Pre-flight checks will verify:
just verify)just test)Post-Merge
After merging, I'll:
go install github.com/finos/morphir/cmd/morphir@v0.3.2succeeds