Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

chore: simplify code of Publish target #3964

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

MangelMaxime
Copy link
Member

Hello @ncave,

This my proposition to simplify the code of the Publish target that I mentioned in #3961.

Benefits are:

  • Simplified logic overall (a little), thanks to automatic version setting in the fsproj (no more manual patching)
  • Remove 5 files from the build process with one being especially complex (ChangelogParser)

@MangelMaxime MangelMaxime requested a review from ncave November 27, 2024 21:25
@MangelMaxime
Copy link
Member Author

CI is failing because I didn't see that GithubRelease.fs was impacted by my changes too.

I will fix it later if the overall changes are accepted.

Note to myself: Allows GithubRelease to be run without running Publish handler because something changed in VSCode Container which makes git commands fails. And unfortunately, I need to run publish from VSCode because of a bug when compiling the compiler to JavaScript with .NET.

Copy link
Collaborator

@ncave ncave left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good, I was just wondering if this can be run as a tool during the build, instead of adding it as a package dependency for all versioned binaries. Just wondering, if not possible it's fine.

@MangelMaxime
Copy link
Member Author

Looks good, I was just wondering if this can be run as a tool during the build, instead of adding it as a package dependency for all versioned binaries. Just wondering, if not possible it's fine.

Unfortunately, this is not possible.

I tried it in the past, and the issue when running as a tool, is that we need to use CLI arguments to provide MSBuild properties like Version, PackageReleaseNotes, etc.

When doing that, if one of your project use a ProjectReference then the CLI arguments will impact both the direct fsproj and the ones referenced via ProjectReference which can mess up the dependency version if the libraries don't have their version in sync.

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