Hi all. I found a philosophical issue that leads to an ongoing series of Windows build process bugs. Want to bring it to this forum. I believe it needs discussion on approach, so that bugs can be created and holistically fixed for now/future.
The Windows build process at https://github.com/Gnucash/gnucash-on-windows since Gnucash 3.5 (didn't look further back) relies on a single bootstrap file. The bootstrap downloads resources (scripts, patches, repos) within the control (and hosted by) the Gnucash project. The issue is a favorite -- dependency management. This bootstrap is downloaded from GitHub. Naturally, the bootstrap changes over time and therefore has an inherit version. That bootstrap is downloading resources within this project using *unversioned* URIs. Bad news==== The bootstrap used for Windows GnuCash 3.5 doesn't work because it relies on GitHub URIs that no longer exist in the current master branch. :-( The more current bootstraps on master don't work also because of related URI not found bugs and patches that don't match other downloaded resources. Currently, the Windows build setup is broken. It is not possible to bootstrap and setup a new Windows Gnucash build for 3.5 or later. Everyone following? Here's one of the series of bugs https://bugs.gnucash.org/show_bug.cgi?id=797252 The fixes (like in that bug above) still have the versioning problem. These fixes are fragile and break easily. Good news==== This issue is inside the project. We can fix it. This community controls the project, the code, and the download resources. :-) Brainstorming ideas (not ready for implementation)... 1. Put the commit version needed in the URI. For example, if your bootstrap is from commit 123abc, then download resources from that same commit. 2. Use git clone, checkout, etc. with versions. 3. Put the download in a package manager and the bootstrap downloads the specific version it needs. --Dale _______________________________________________ gnucash-devel mailing list gnucash-devel@gnucash.org https://lists.gnucash.org/mailman/listinfo/gnucash-devel