-
Notifications
You must be signed in to change notification settings - Fork 18k
x/build: add a fake Windows XP-ish builder #15337
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
Comments
A rather cheap'ish suggestion you can run wine in windows xp mode, it should be accurate enough and much easier to setup than a "fake" windows xp machine. |
That actually sounds like more work. |
Why couldn't we use a real XP VM? Emulating a proprietary OS is a Pandora's
box that we'd rather not open (after all these years, wine still couldn't
emulate all XP's features/bugs.)
|
I tried XP in Parallels. It didn't finish its install without hanging. I lost interest. I might try XP on physical hardware with an iSCSI boot so each boot gets the same image (with an Intel server NIC which makes iSCSI look like a local disk) + an APC PDU which lets me cycle its power to reboot it. I'm not interested in Wine. But setting an environment variable or build tag to disable certain DLLs and test our optional-DLL codepaths is very easy. I plan to do that. |
XP works fine under qemu-kvm (without virtio) and VMWare Fusion. We can
also try Windows Server 2003, which should be very similar to XP.
|
Windows Server 2003 is not trivial. It would require adding AWS EC2 support to the build infrastructure. See #10267. |
I agree with @minux. Pretending we're running XP will not work - too many things are different. We already cheating with windows-386 builder - it is not running on real 32 bit OS, it is running in Microsoft provided emulator inside 64 bit OS. The emulator is very good, but ... Windows XP runs fine emulated. I use Oracle VM VirtualBox. My friends run Windows XP in VMWare. You always will have me to test what you need. XP is one of my development boxes. I am not changing it for the next year or two. You can use VirtualBox and create Windows XP yourself so you can test things when need be. Windows XP is going. Pretty much everything in Go works on Windows XP at this moment. So if things starting to break there, and no users complaining, I am fine letting it Go. Alex |
CL https://golang.org/cl/22144 mentions this issue. |
In my experiences, it will be hard to do. I also not recommend to fake the XP. BTW, I wonder how many users still uses Go on XP (without alex). |
@alexbrainman removing alternate Windows paths in 45bb887 is enough to make me happy here. I grepped around the tree and don't see other things varying their behavior based on DLL/Proc availability. |
I still have Windows XP, if you want me to try things. Alex |
I have a Windows XP disc and license. But that's a separate bug. This was about a builder faking different Windows optional paths. |
In lieu of a Windows XP trybot, we should add a builder (and trybot) that fakes being Windows XP as much as we reasonably can.
It can be named
windows-386-xpfake
or something.It would disable all the DLLs and Procs not found on XP (even if they exist on the host system) and thus force the use of the rarely-tested Windows XP code paths (which I've now broken a few times).
@alexbrainman, @mattn, I know a few of these. Could you help me gather the list of all the them?
The text was updated successfully, but these errors were encountered: