Resolve merge conflicts with master; rename indent → ident in createCaseMatchClause#261
Merged
7sharp9 merged 2 commits intorepo-assist/fix-issue-244-resolve-case-ident-helper-6b915e96232c0348from Mar 14, 2026
Conversation
…CaseMatchClause Co-authored-by: 7sharp9 <588746+7sharp9@users.noreply.github.com>
Copilot
AI
changed the title
[WIP] Refactor: move resolveCaseIdent to GeneratorHelpers
Resolve merge conflicts with master; rename Mar 11, 2026
indent → ident in createCaseMatchClause
23 tasks
d1dcb76
into
repo-assist/fix-issue-244-resolve-case-ident-helper-6b915e96232c0348
There was a problem hiding this comment.
Pull request overview
Resolves merge conflicts with master, consolidates shared generator boilerplate into a helper, and applies small naming/refactor/documentation updates across the repo.
Changes:
- Consolidated common generator pipeline logic into
GeneratorHelpers.generateModulesand updatedFieldsGenerator/DUCasesGeneratorto use it. - Refactored
Asttype extraction helpers to reduce duplication via a sharedfilterTypes. - Updated release workflow version validation, docs/changelog, and bumped Expecto in
paket.lock.
Reviewed changes
Copilot reviewed 7 out of 8 changed files in this pull request and generated 3 comments.
Show a summary per file
| File | Description |
|---|---|
| src/Myriad.Plugins/GeneratorHelpers.fs | Resolves conflict, centralizes resolveCaseIdent, adds generateModules helper |
| src/Myriad.Plugins/FieldsGenerator.fs | Replaces local pipeline with GeneratorHelpers.generateModules |
| src/Myriad.Plugins/DUCasesGenerator.fs | Renames indent→ident; switches to generateModules |
| src/Myriad.Core/Ast.fs | Deduplicates record/DU filtering logic with filterTypes |
| paket.lock | Bumps Expecto to 10.2.3 |
| Contributing.md | Updates build steps to include dotnet paket restore and build via build.proj |
| CHANGELOG.md | Adds Unreleased entries describing recent fixes |
| .github/workflows/publish.yml | Tightens tag trigger pattern; adds version validation step |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
|
|
||
| module internal GeneratorHelpers = | ||
|
|
||
| /// Resolves the fully-qualified SynLongIdent for a DU case identifier. |
Comment on lines
+37
to
+39
| # Require at least three numeric segments (X.Y.Z), optionally followed by a pre-release suffix. | ||
| # This prevents 2-segment tags like v0.85 (which would publish as 0.85.0 instead of 0.8.5). | ||
| if ! echo "$VERSION" | grep -qE '^[0-9]+\.[0-9]+\.[0-9]+'; then |
Comment on lines
+46
to
+48
| if [ "$VERSION" != "$EXPECTED" ] && ! echo "$VERSION" | grep -q "^${EXPECTED}-"; then | ||
| echo "::error::Tag version '$VERSION' does not match VersionPrefix '$EXPECTED' in Directory.Build.props. Update Directory.Build.props before tagging." | ||
| exit 1 |
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.
The PR branch had diverged from
master, which had already mergedresolveCaseIdentintoGeneratorHelpers(via a parallel fix) and added agenerateModuleshelper — causing a conflict inGeneratorHelpers.fs.Changes
GeneratorHelpers.fs— resolved conflict by removing the duplicateresolveCaseIdentthat appeared at the bottom of our branch; retainedmaster'sgenerateModuleshelper and the canonicalresolveCaseIdentplacement at the topDUCasesGenerator.fs— renamed misleadingindent→identincreateCaseMatchClause(the binding holds aSynLongIdent, not indentation):✨ Let Copilot coding agent set things up for you — coding agent works faster and does higher quality work when set up for your repo.