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 1.7 #14112

Closed
23 of 30 tasks
agriffard opened this issue Aug 10, 2023 · 8 comments · Fixed by #14111
Closed
23 of 30 tasks

Release 1.7 #14112

agriffard opened this issue Aug 10, 2023 · 8 comments · Fixed by #14111
Labels

Comments

@agriffard
Copy link
Member

agriffard commented Aug 10, 2023

Prepare the project

Do some housekeeping on GitHub in the main repo.

  • Close remaining issues for the version (including merging corresponding pull requests if suitable) or assign them to the next one.
  • Assign all issues that were closed for an upcoming version (including a wildcard version like "1.0.x") to this version (milestone).

Prepare the code

Update the source so everything looks like on the new version.

  • Create a release/<version name> branch out of main, e.g. release/1.8.
  • Check the release_ci workflow is using the expected .NET version to build the Docker images.
  • Create a release/<version name> branch out of main, e.g. release/1.3.1.
  • Update the OrchardCore.Commons.props file with <VersionSuffix></VersionSuffix> such that preview build numbers are not injected in packages. Verify the VersionPrefix tag matches the released version.
  • Update module versions in src/OrchardCore/OrchardCore.Abstractions/Modules/Manifest/ManifestConstants.cs.
  • Update the version in the command lines in from all documentation files.
  • Create a new milestone.

Test the release

Make sure everything works all right.

Prepare and publish Orchard Core Translations

Update everything in the Translations project. Only do this once all the code changes are done since localized strings can change until then.

  • Update .po files with PoExtractor. This will also update Crowdin.
  • Publish the new version on NuGet.
  • Update the OrchardCore.Translations.All package reference in the main repo's src/OrchardCore.Build/Dependencies.props file to refer to the new NuGet package.

Prepare the documentation

Update the docs so they contain information about the new release so once the release is out you'll just need to point to new information.

  • Create a new Draft Release with a tag vx.y.z that is created when the release is published. Auto-generate release notes.
  • Create release notes in a specific documentation section. You can take the previous release notes as a template.
    • Overview of the release's highlights and goals. What do you want people to remember this release for?
    • Prerequisites. What framework version do you need, anything else to work with Orchard?
    • Upgrade steps, any migration necessary from previous versions, breaking changes.

Publish the release

Do the harder parts of making the release public. This should come after everything above is done.

Publicize the release

Let the whole world know about our shiny new release. Savor this part! These steps will make the release public so only do them once everything else is ready.

  • Update the documentation to mention the version in all places where the latest version is referenced, for example, but not limited to (do a search for the package version string): Status in the root README, CLI templates, commands, the Creating a new decoupled CMS Website guide.
  • Update the tagged release on GitHub: Change its title to something more descriptive (e.g. "Orchard Core 1.0.0 RC 2"), add a link in its description to the release notes in the documentation (something like For details on this version see the [release notes in the documentation](link here).). Add a link to this release under Status in the root README.
  • Publish a blog post on the website.
  • Ask to publish a blog post on DevBlogs.
  • Ask to publish a blog post on .NET Foundation News.
  • Tweet

After the release is done

  • Create a new milestone with the next release number.
  • Create a new release notes documentation file for the next version in the OrchardCore.Docs project. (e.g, /releases/1.8.0.md).
  • Update the OrchardCore.Commons.props file with the next release number, and <VersionSuffix>preview</VersionSuffix> such that preview builds use the new one.
@agriffard
Copy link
Member Author

See #14111

@MikeAlhayek MikeAlhayek mentioned this issue Aug 29, 2023
25 tasks
@MikeAlhayek MikeAlhayek pinned this issue Aug 29, 2023
@MikeAlhayek
Copy link
Member

@Piedone do you want to certify OrchardCore with Linux 9.2?

@Piedone
Copy link
Member

Piedone commented Aug 29, 2023

There are no fundamental changes in either RHEL or OC so I don't think it's necessary. Maybe after the .NET 8 upgrade or when RHEL 10 comes out next May.

@sebastienros
Copy link
Member

image

This is checked but it was not done. Also the mention of this attribute was removed in the release notes, does it mean we don't care about updating this value for a release anymore (that's possible).

@MikeAlhayek
Copy link
Member

MikeAlhayek commented Aug 31, 2023

@sebastienros
It was updated
image

Still there (we care about it)
image

@sebastienros
Copy link
Member

You misread, it's VersionSuffix, the one below with preview.

@sebastienros
Copy link
Member

But if we are clever we could set that in the workflow so we don't have to update the xml every time, and we never do the mistake to leave it during a release.

@MikeAlhayek
Copy link
Member

You misread, it's VersionSuffix, the one below with preview.

I fixed it and restored the "After the release is done" steps

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

Successfully merging a pull request may close this issue.

4 participants