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

Release 3.0.0-rc1 #36

Closed
jcoliz opened this issue Nov 21, 2021 · 10 comments
Closed

Release 3.0.0-rc1 #36

jcoliz opened this issue Nov 21, 2021 · 10 comments
Labels
infrastructure Change not in shipping code

Comments

@jcoliz
Copy link
Member

jcoliz commented Nov 21, 2021

I would like to publish a release candidate to nuget, with version 3.0.0-rc1. Moving to .NET Standard will break projects using .NET Framework versions prior to 4.6.1, ergo a major version bump. Would like a prerelease so I can do some prerelease testing especially around upgrading in-place projects.

@dsyme , thoughts?

As far as process, I'd like to set up a GitHub action which pushes published releases to nuget. So the release process is: Push Tag -> Create Release -> Publish Release -> Relax. Also planning to use the github tag as the build/package version.

For this I'll need access to the nuget API secret. (Pretty please? 😄)

For the record, this release will contain:

@jcoliz jcoliz added the infrastructure Change not in shipping code label Nov 21, 2021
@nhirschey
Copy link
Contributor

I know you just got rid of fake, but in #16 you ask about other libraries that have done the .net framework to netcore upgrade. I did FSharp.Data.Toolbox last year. RProvider was just updated a month or so ago. In general, the FSharp.Data repo is a good reference for a modern f# build/deploy infrastructure.

The key would be the build.fsx script and github actions in there. If you model your actions on those in FSharp.Data, then all you have to do is update release_notes.md with a new semver version (rc1 candidates are possible), and the action will auto-deploy a new nuget package.

The starting point would be install fake as a dotnet tool:

dotnet tool install fake-cli

Then modify FSharp.Data's build.fsx to work with this repo. Then see how FSharp.Data's build.fsx generates assembly version info from release_notes.md rather than hard coding it in .fsproj as it is now in this repo.

@jcoliz
Copy link
Member Author

jcoliz commented Nov 22, 2021

Thanks, @nhirschey. The hard-coding will definitely go away in any future release system, for sure. I've been prototyping an approach in "feature/release-infra" branch based on some other projects I've seen. Will have a look at those projects you recommend as well, thanks.

@jcoliz
Copy link
Member Author

jcoliz commented Nov 25, 2021

OK, I think I understand FAKE now well enough. Seems really heavyweight to me. I'm going to have a go a slimmer fake script for just pulling release notes and packing.

@nhirschey
Copy link
Contributor

The dotnet cli probably makes fake less necessary. But it’s nice for running different build targets. Here’s a slimmer one, though could still be simplified more.

https://github.com/nhirschey/FSharp.Data.Fred/blob/main/build.fsx

@jcoliz
Copy link
Member Author

jcoliz commented Dec 1, 2021

This week I spent some time with FAKE, but was unable to get a running FAKE build or release flow. Got many net60 errors with remediation suggestions that weren't super clear to follow. We may need someone ambitious to cook up a FAKE script for this project 😃 Until that time, I opened #56 which will push packages based on GitHub releases. I left it open for a bit to take comments.

@jcoliz
Copy link
Member Author

jcoliz commented Dec 6, 2021

OK, 3.0.0-rc1 is up. https://www.nuget.org/packages/ExcelFinancialFunctions/3.0.0-rc1

@jcoliz
Copy link
Member Author

jcoliz commented Dec 7, 2021

And now 3.0.0 is up. https://www.nuget.org/packages/ExcelFinancialFunctions/3.0.0

Closing this issue.

@dsyme Do you have any means to get the word out to users about this update?

@jcoliz jcoliz closed this as completed Dec 7, 2021
@dsyme
Copy link
Contributor

dsyme commented Dec 8, 2021

Great work!

TBH I think you can switch to non-rc versioning if you like :)

@dsyme
Copy link
Contributor

dsyme commented Dec 8, 2021

@jcoliz TBH it's hard for me to tell if there are actual users of this - certainly we can tweet it though I think any users are more likely to be in financial firms who have better things to do than reading twitter :)

Probably best bet is to create a pinned issue here, and also put out a tweet.

@jcoliz
Copy link
Member Author

jcoliz commented Dec 8, 2021

Thanks, @dsyme . There were 97k downloads of 2.4.1 three years ago. There must be one or two of those still running it 😁 I did pin a new 3.0.0 release issue. If you feel like shouting out a tweet, that'd be swell.

And yeah the fully released version is 3.0.0 with no prerelease tags. I was using RC's to test the publishing pipeline, how it looks in the gallery, etc.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
infrastructure Change not in shipping code
Projects
None yet
Development

No branches or pull requests

3 participants