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 InVEST as a 64-bit binary #4

Closed
2 tasks done
phargogh opened this issue Jan 29, 2020 · 7 comments
Closed
2 tasks done

Release InVEST as a 64-bit binary #4

phargogh opened this issue Jan 29, 2020 · 7 comments
Assignees
Labels
resolved The task has been resolved
Milestone

Comments

@phargogh
Copy link
Member

phargogh commented Jan 29, 2020

When we started developing and shipping binaries for InVEST, 32-bit binaries was an obvious choice as so many computers were still running Windows XP or were running on very old hardware. In this modern age, I can't remember the last time I saw someone working with a 32-bit windows computers, and macs are all 64-bit anyways. The only computer system I can think of that runs a 32-bit OS is the Raspberry Pi, but that'll be on linux and would therefore not be using our prebuilt binaries.

  • Check the InVEST usage stats ... do we have any records of people running InvEST on a 32-bit system in recent history?
  • If it's reasonable to only ship 64-bit, we should still run our tests against 32-bit and 64-bit builds of python on Windows if possible.
@phargogh phargogh added enhancement New feature or request question Further information is requested labels Jan 29, 2020
@phargogh phargogh added this to the 3.9 milestone Feb 19, 2020
@phargogh
Copy link
Member Author

Just found out that Microsoft will be dropping support for 32-bit versions of Windows 10 very soon (early summer, 2020). QGIS as a project is doing the same in their next release.

@phargogh phargogh removed the question Further information is requested label Jul 13, 2020
@phargogh phargogh changed the title Release InVEST as a 64-bit binary? Release InVEST as a 64-bit binary Jul 13, 2020
@phargogh
Copy link
Member Author

I checked over the model run logs, and I was wrong about tracking this ... we haven't been. I had assumed that the linux platform strings (e.g. Linux-4.15.0-47-generic-x86_64-with-debian-buster-sid) would be reflected in the Windows information. It isn't. Example: Windows-8-6.2.9200. Architecture is not implied by build number, it turns out.

All that being said, it also turns out that two things have happened recently that support the argument that we should phase out our 32-bit binaries:

  • It'll be harder for us to develop with 32-bit libraries Conda-forge announced a year or two ago that they would be dropping support for 32-bit windows builds. For us, this is most noticeable with GDAL, as nothing above GDAL 2.4.4 is available in a 32-bit build.
  • Microsoft is no longer distributing 32-bit Windows to OEMs Although this will not affect existing 32-bit installations of Windows (for now), this is likely the beginning of the end for 32-bit Windows builds. Article on engadget.

Therefore, it would be in our best interest to release Windows binaries for InVEST 3.9 and later as 64-bit only.

  • We should also see about including a check in NSIS for whether their computer is 64-bit and show some helpful user feedback if so.

@dcdenu4 dcdenu4 self-assigned this Sep 11, 2020
@dcdenu4 dcdenu4 added the in progress This issue is actively being worked on label Sep 11, 2020
@dcdenu4
Copy link
Member

dcdenu4 commented Sep 23, 2020

PR #314 moves to 64-bit builds and testing only as it relies solely on conda for package dependency management. If this PR goes through it would mean that we would not be testing 32-bit versions.

PR #314 does not tackled a check in NSIS for whether a users computer is 64-bit.

@dcdenu4
Copy link
Member

dcdenu4 commented Oct 9, 2020

@phargogh what do we think about the NSIS check for architecture? Should we bring up a warning page if they happen to be on a 32-bit machine?

@phargogh
Copy link
Member Author

phargogh commented Oct 9, 2020

An architecture check sounds nice, especially since we'll only be offering 64-bit binaries starting with this release. Still, I think it would be nice for this to be a warning only ... a user could still conceivably install InVEST onto some other media to be used on a different OS. What do you think?

@dcdenu4
Copy link
Member

dcdenu4 commented Oct 16, 2020

Working on this in a branch I've created on my fork call: installer-architecture-warning

@dcdenu4
Copy link
Member

dcdenu4 commented Nov 16, 2020

This is done!

@dcdenu4 dcdenu4 closed this as completed Nov 16, 2020
@dcdenu4 dcdenu4 added resolved The task has been resolved and removed enhancement New feature or request in progress This issue is actively being worked on labels Nov 16, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
resolved The task has been resolved
Projects
None yet
Development

No branches or pull requests

2 participants