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 GMT 6.6.0 #8653

Open
1 of 51 tasks
seisman opened this issue Jan 1, 2025 · 11 comments · Fixed by #8654
Open
1 of 51 tasks

Release GMT 6.6.0 #8653

seisman opened this issue Jan 1, 2025 · 11 comments · Fixed by #8654

Comments

@seisman
Copy link
Member

seisman commented Jan 1, 2025

Version: 6.6.0

Scheduled date: XXX XX, 20XX

Before release:

Release:

  • create source tarballs (tar.gz and tar.xz) (@PaulWessel)
  • create macOS bundle (@PaulWessel)
  • create Windows win64 installer and portable installer (@joa-quim)
  • check if the source tarballs for Linux work well (@Esteban82, @anbj)
  • check if the macOS bundles work well (@seisman, @maxrjones)
  • check if the Windows installers work well (volunteers needed!)
  • upload source tarballs, macOS bundle, Windows installers to the GMT FTP (@PaulWessel)
  • update README and VERSION files on the GMT FTP (@PaulWessel)
  • make a tag and push it to github (Must be done after uploading packages to the GMT FTP)
    # checkout master (for minor releases) or 6.x branch (for patch releases)
    git checkout XXXX
    # create the tag x.x.x
    git tag x.x.x
    # Push tags to GitHub
    git push --tags
  • make a GitHub release.
    The GitHub Actions automatically create a draft release after pushing the tag to github.
    We need to go to the GitHub Release page, and review it manually.
    • 7 files are attached as release assets (2 source tarballs, 4 installers and 1 checksum file).
    • download the checksum file and check if the checksums are correct
    • edit the draft release, set the target to the correct tag, and publish the release
  • upload the tarball to zenodo (@PaulWessel, @seisman)
  • make announcements in the GMT forum
  • make announcements on the GMT Instagram
  • update links on the main site (Download & Documentation)
  • update install instructions on the wiki if needed

After release:

  • Reset for the next version
    - [ ] update GMT_PACKAGE_VERSION_* in cmake/ConfigDefault.cmake
    - [ ] comment the set (GMT_PUBLIC_RELEASE TRUE) line

3rd-party update

Volunteers needed! Please let us know if you volunteer to help to maintain GMT in these 3rd-party tools.


  • Party 🎉 (don't tick before all other checkboxes are ticked!)
@seisman
Copy link
Member Author

seisman commented Jan 1, 2025

I just created the checklist for GMT 6.6.0 but didn't set the release date. Since GMT 6.5.0 has been released for one year, perhaps it's time to have the GMT 6.6.0 released.

What do others think about the new release?

@Esteban82
Copy link
Member

Yes, I agree that we should make a new release soon.

@joa-quim
Copy link
Member

joa-quim commented Jan 2, 2025

I also think we should release a new version. But it would be nice if we could advertise a little the longoptions. We have them in code but no docs at all. I would like also to include the psconvert-no-file-dup brunch. I made fixes on it and now, without the /DPS_NO_DUP building option (which sets the -! option by default) it should behave exactly like the master, but more testing would be good.

And there is also an issue with MB build that @anbj has been pushing but needs action by @dwcaress in the MB cmake script.

@remkos
Copy link
Contributor

remkos commented Jan 4, 2025

Sorry that my merge of #8654 closed this. It must have been because it had the word "resolve" in the line referring to this PR. Overzealous AI at work.

@gd-a
Copy link
Contributor

gd-a commented Feb 3, 2025

Concerning the embedding of GDAL in the future release, is it best to use a dev version (currently the case with windows installer) or the latest stable ?

gdalinfo --version
GDAL 3.9.0dev-bf5289c780-dirty, released 2024/01/04

@joa-quim
Copy link
Member

joa-quim commented Feb 3, 2025

Only the Win builds done by me use the GDALdev. Don't know what other GMT builds do, but I guess many will use the latest GDAL at the time of GMT compiling, which for Ubuntus may be a 1 or 2 years old GDAL.

And, BTW, latest stable GDAL is 3.10.1

@dwcaress
Copy link

dwcaress commented Feb 4, 2025

Unless you require a feature only available in the dev branch, use a stable release.
Since I'm not aware of an intent to embed GDAL into the GMT codebase, I have to ask the following:
What is the motivation for embedding GDAL? Will the GDAL library be built and installed with the same naming as if it were installed from a GDAL distribution? How about the headers? How about the 21 GDAL package programs such as gdalwar, gdalinfo, etc? How will this all be handled in package managers where packages other than GMT have GDAL as a dependency?How this work for building a package that has programs linked with and using both headers and libraries from both GMT and GDAL? I'm not opposing the approach, but I would like to understand whether this would be problematic for MB-System or any other packages that integrate with GMT libraries.

@remkos
Copy link
Contributor

remkos commented Feb 4, 2025

I assume/hope that "embedding" here means requiring it for compilation, instead of having it optional, and that only executables will be built with GDAL "embedded".
I do not see the point of including GDAL as part of the GMT code.

@joa-quim
Copy link
Member

joa-quim commented Feb 4, 2025

I guess "embeding" was a word used in the context of the Windows installer that indeed, comes with GDAL and all other binary dependencies but that does not extrapolate for other builds. There is no intention of including GDAL in GMT's source code.

@gd-a
Copy link
Contributor

gd-a commented Feb 6, 2025

What @joa-quim said.
All the binaries are "encapsulated" in the "gmt_install.exe".

My problem is the switch from one version of GDAL to another. Could there be an option like gmt set gdal-dir ?

@joa-quim
Copy link
Member

joa-quim commented Feb 6, 2025

You cannot switch GDAL versions when using the GMT Windows installers. The GDAL binaries get installed by the installer and we don't want to mess with dll versions. The GDAL dll (all all other dependencies dlls) have unique names to protect them from the "DLL Hell".

But that's not only with Windows installer. We generally cannot change dependency versions without falling in terribly painful version conflicts. To change versions one normally have to rebuild the all package again.

My problem is the switch from one version of GDAL to another.

Why do you want to change GDAL versions?

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 a pull request may close this issue.

6 participants