Skip to content

ci(config): Consolidate versioning - #423

Merged
halcwb merged 3 commits into
informedica:masterfrom
7sharp9:consolidate-versioning
Jul 21, 2026
Merged

ci(config): Consolidate versioning#423
halcwb merged 3 commits into
informedica:masterfrom
7sharp9:consolidate-versioning

Conversation

@7sharp9

@7sharp9 7sharp9 commented Jul 21, 2026

Copy link
Copy Markdown
Collaborator

Consolidate versioning to a single managed version file. Also enforce this at the CI by using a script to confirm all dll's have the correct version information.

This addresses part of #387

7sharp9 and others added 2 commits July 21, 2026 15:59
Consolidate versioning to a single managed version file.  Also enforce this at the CI  by using a script to confirm all dll's have the correct version information.

This addresses part of informedica#387
@greptile-apps

greptile-apps Bot commented Jul 21, 2026

Copy link
Copy Markdown
Contributor

Greptile Summary

This PR consolidates assembly versioning into one managed file. The main changes are:

  • Adds a repository-level Directory.Build.props with the shared version.
  • Imports the shared version from six library property files.
  • Adds version checks to the build target and CI workflow.
  • Documents the new CheckVersions command.

Confidence Score: 5/5

This looks safe to merge.

  • No blocking issues found in the changed production code.
  • The version-check target runs after the full solution build.
  • The library property files resolve the shared repository version.

Important Files Changed

Filename Overview
Directory.Build.props Defines the shared repository version.
Build.fs Adds a version-check target that depends on the full solution build.
.github/workflows/build.yml Runs version validation after the existing build and test target.
src/Informedica.GenFORM.Lib/Directory.Build.props Replaces the local version with an import of the shared version.
src/Informedica.GenORDER.Lib/Directory.Build.props Replaces the local version with an import of the shared version.
src/Informedica.GenSOLVER.Lib/Directory.Build.props Replaces the local version with an import of the shared version.
src/Informedica.GenUNITS.Lib/Directory.Build.props Replaces the local version with an import of the shared version.
src/Informedica.NKF.Lib/Directory.Build.props Replaces the local version with an import of the shared version.
src/Informedica.Utils.Lib/Directory.Build.props Replaces the local version with an import of the shared version.

Reviews (1): Last reviewed commit: "Merge branch 'master' into consolidate-v..." | Re-trigger Greptile

…ared version

The top of all three files says `// Auto-Generated by FAKE; do not edit`
The problem is this warning that stopped being true the moment these libraries were merged into the monorepo.

Git blame points back to commit `0df3c28f` (“chore: added all genpres source code”), which pulled in *Informedica.GenUnits.Lib* and *Informedica.Utils.Lib* from their old standalone repos. Those repos apparently had FAKE pipelines that really did regenerate `AssemblyInfo.fs` on each release, which explains the 2021 timestamps, old commit hashes, and versions stuck at 1.0.2/1.0.0.

This repo’s `Build.fs` doesn’t reference `Fake.DotNet.AssemblyInfo` at all, so the comment has been confidently promising automation that soesn't exist. Meanwhile, the files were quietly clashing with the SDK’s own `GenerateAssemblyInfo`, which writes the same attributes into `obj/` from `Directory.Build.props`. Two competing sets of one-shot assembly attributes going into the same DLL doesn’t trigger an error in either compiler, so the final result depended on a reace condition, which happened to be caught between my local rebuild and CI’s clean-runner build.

In other words: the comment meant to prevent subtle, environment-dependent breakage ended up *causing* exactly that!  :-)
@7sharp9

7sharp9 commented Jul 21, 2026

Copy link
Copy Markdown
Collaborator Author

@halcwb Notice CheckSolutionVersions.fsx now runs successfully with the latest commit.

@halcwb
halcwb merged commit f420d72 into informedica:master Jul 21, 2026
4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants