MantisBT - Doomseeker
View Issue Details
0003904Doomseeker[All Projects] Suggestionpublic2021-09-21 00:172021-10-29 01:46
doomjoshuaboy 
 
normalfeaturealways
acknowledgedopen 
MicrosoftWindowsXP/Vista/7
1.3.2 
 
0003904: Zandronum testing windows seperated archives
hi Devs
Since zandronum testing branch has now got 2 different archives for windows like if some one has 32bit it will download the x86 or if someone has 64bit (which most people do) it will download the x64. So I am wondering if its a good chance to do it. Its in the web right now.
No tags attached.
png msedge_g6j3zioap5.png (18,240) 2021-09-21 00:17
/tracker/file_download.php?file_id=2662&type=bug
png
Issue History
2021-09-21 00:17doomjoshuaboyNew Issue
2021-09-21 00:17doomjoshuaboyFile Added: msedge_g6j3zioap5.png
2021-09-24 13:52WubTheCaptainNote Added: 0021759
2021-09-24 13:52WubTheCaptainNote Edited: 0021759bug_revision_view_page.php?bugnote_id=21759#r13350
2021-09-24 14:00WubTheCaptainNote Edited: 0021759bug_revision_view_page.php?bugnote_id=21759#r13351
2021-09-24 14:54WubTheCaptainNote Added: 0021760
2021-09-24 16:02WubTheCaptainNote Edited: 0021759bug_revision_view_page.php?bugnote_id=21759#r13354
2021-09-24 16:20WubTheCaptainNote Added: 0021763
2021-09-24 16:20WubTheCaptainNote Edited: 0021763bug_revision_view_page.php?bugnote_id=21763#r13356
2021-09-24 16:50WubTheCaptainNote Added: 0021766
2021-09-24 17:00WubTheCaptainNote Added: 0021767
2021-09-24 17:08WubTheCaptainNote Added: 0021768
2021-09-24 17:51WubTheCaptainNote Edited: 0021767bug_revision_view_page.php?bugnote_id=21767#r13367
2021-09-24 17:52WubTheCaptainNote Deleted: 0021768
2021-09-24 17:52WubTheCaptainNote Edited: 0021767bug_revision_view_page.php?bugnote_id=21767#r13368
2021-09-27 11:39ZalewaNote Added: 0021775
2021-09-27 11:39ZalewaStatusnew => acknowledged
2021-09-29 18:10WubTheCaptainNote Added: 0021780
2021-09-29 18:10WubTheCaptainNote Edited: 0021780bug_revision_view_page.php?bugnote_id=21780#r13376
2021-10-29 01:46Blzut3Note Added: 0021794

Notes
(0021759)
WubTheCaptain   
2021-09-24 13:52   
(edited on: 2021-09-24 16:02)
An example download URL:'https://zandronum.com/downloads/testing/3.1/ZandroDev3.1-210919-1948windows-x64.7z [^]'

src/plugins/zandronum/zandronumbinaries.cpp: The 64-bit executable is still named zandronum.exe, so ZANDRONUM_BINARY_NAME does not need to be touched.
$ 7z l /tmp/ZandroDev3.1-210919-1948windows-x64.7z

7-Zip [64] 16.02 : Copyright (c) 1999-2016 Igor Pavlov : 2016-05-21
p7zip Version 16.02 (locale=en_US.UTF-8,Utf16=on,HugeFiles=on,64 bits,4 CPUs Intel(R) Core(TM) i7-3770K 
CPU @ 3.50GHz (306A9),ASM,AES-NI)

Scanning the drive for archives:
1 file, 11662888 bytes (12 MiB)

Listing archive: /tmp/ZandroDev3.1-210919-1948windows-x64.7z

--
Path = /tmp/ZandroDev3.1-210919-1948windows-x64.7z
Type = 7z
Physical Size = 11662888
Headers Size = 319
Method = LZMA2:24 BCJ
Solid = +
Blocks = 2

   Date      Time    Attr         Size   Compressed  Name
------------------- ----- ------------ ------------  ------------------------
2021-09-19 20:23:17 ....A       245157      7954280  brightmaps.pk3
2021-09-19 20:23:17 ....A        57256               skulltag_actors.pk3
2021-09-19 20:29:52 ....A     40128512               zandronum.pdb
2021-09-19 20:23:17 ....A       843180               zandronum.pk3
2016-10-27 18:38:16 ....A      1503232      3708289  fmodex64.dll
2021-09-19 20:29:50 ....A      9138688               zandronum.exe
------------------- ----- ------------ ------------  ------------------------
2021-09-19 20:29:52           51916025     11662569  6 files


Note the 64-bit distributions of Zandronum use the 7z format while 32-bit distributions use ZIP. From a quick glace, Wadseeker's unarchive.cpp can already handle both 7z and ZIP formats.

Note previous testing builds before Zandronum 3.1 (210919-1948) do not retroactively have 64-bit builds. There's currently no fallback to download a 32-bit windows.zip if windows-x64.7z is missing.

(I also note there's probably a bug with compiling for Windows using GCC on Windows; there's no Q_OS_LINUX check, only a GCC specific __x64_64__ which sets the TESTING_BINARY_URL to GNU/Linux binaries.)

(0021760)
WubTheCaptain   
2021-09-24 14:54   
Apparently Zandronum 3.1 (210919-1948) also started using the linux-x64.tgz filename for releases, instead of the former linux-x86_64.tar.bz2. Doomseeker's code currently only supports the latter. Kind of a nightmare to have these inconsistencies.
(0021763)
WubTheCaptain   
2021-09-24 16:20   
Quote from WubTheCaptain
Apparently Zandronum 3.1 (210919-1948) also started using the linux-x64.tgz filename for releases, instead of the former linux-x86_64.tar.bz2. Doomseeker's code currently only supports the latter. Kind of a nightmare to have these inconsistencies.

New issue: 0003907

(0021766)
WubTheCaptain   
2021-09-24 16:50   
By the way, the current state (as of Doomseeker 1.3.2), what I believe OP is saying, is that Doomseeker can only download a windows.zip on Windows, which has 32-bit binaries. (Doomseeker on GNU/Linux already has 32-bit/64-bit Zandronum testing binary download capabilities.)

The solution in 0003905:0021761 is not complete and I think overall 0003905 should need to be solved before this issue.
(0021767)
WubTheCaptain   
2021-09-24 17:00   
(edited on: 2021-09-24 17:52)
In reality, I would actually hope Zandronum devs to drop support for 32-bit Windows entirely, and replace Windows binaries in future windows.zip with 64-bit Windows binaries. That way Doomseeker wouldn't need to change really anything. Besides, 32-bit Windows has been EOL since Windows 10 build 2004; support for those ended in May 11, 2021 (add +1 year for Enterprise, Education SKUs). (Don't get me started with Windows 8.1 having extended support until January 10, 2023. Please.)

(0021775)
Zalewa   
2021-09-27 11:39   
For the end user there should technically be no difference whether they use the 32-bit or the 64-bit binaries. Windows won't like if the .exe and the .dlls are of different "bitness", but if they're all the same then the program will run as usual. The limitation with 32-bit processes is that they can't acquire as much memory as if they were 64-bit, but for Zandronum this hasn't ever been a problem, at least afaik.

That said, due to the EOL issue that Wub has pointed out, we can't ignore this matter completely. I'm acknowledging this as a thing to do.

Doomseeker is also released as 32-bit binaries only, by the way.
(0021780)
WubTheCaptain   
2021-09-29 18:10   
Quote from Zalewa
Doomseeker is also released as 32-bit binaries only, by the way.

On Windows (and maybe MacOS too, but I am not familiar), yes.
For additional clarification, the DRD Team Debian Package Repository has both "i386" (32-bit) and "amd64" (64-bit) binaries released for GNU/Linux.

(0021794)
Blzut3   
2021-10-29 01:46   
Windows 10 21H1 32-bit does exist. Likely that 21H2 and thus the next LTSC will also exist. Although I guess the 21H2 LTSC might have a shorter support period than 1809 which goes to 2029. Granted 32-bit Windows 10 is bit of a joke, but I'm all about these obscure facts so had to "um actually."

Not saying we shouldn't consider releasing 64-bit Doomseeker at this point, just saying that the end of 32-bit Windows is still a long ways off. Given that shipping 32-bit binaries, while getting less common, is still a thing today so it's unlikely Microsoft will be removing the WoW64 support anytime soon.

Linux 32-bit packages will be supported until 18.04 goes EOL.

macOS already dropped 32-bit binary support so that's 64-bit.