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

Make Vista the minimum required Windows version #2017

Merged
merged 1 commit into from
May 8, 2016

Conversation

llloret
Copy link
Member

@llloret llloret commented Apr 30, 2016

Some APIs require a more recent version than XP. Vista seems a reasonable compromise.

@bagong bagong added this to the 3.8 milestone Apr 30, 2016
@llloret
Copy link
Member Author

llloret commented May 2, 2016

@bagong, if we want to fix the issue #2012, about exiting cleanly from the interpreter on 0.exit, then this should be done on 3.7.2, too.

@bagong
Copy link
Contributor

bagong commented May 2, 2016

No chance to keep at least Windows XP compatibility, does 501 not help? ;) Could you elaborate a little bit... I've seen several requests for XP...

@llloret
Copy link
Member Author

llloret commented May 2, 2016

The problem is that to solve #2012, I used the CancelIOEx funtion, which is not available before Vista... Perhaps I can try with CancelIO, which is available starting from Questa, but I am not sure if it will work.

@bagong
Copy link
Contributor

bagong commented May 2, 2016

Ah, when I build I had forgotten to set the value back to 500. Do you want me to try build with 501, or is it sure already that it will not work?
In the later case, if it is not too much work for you, I think it would be great to try if we can't get it done in a way that still allows for Win XP. The more so as it seems the biggest problem that used to exist is gone with XP since we use a more recent MinGW (or for some other reason...)

@llloret
Copy link
Member Author

llloret commented May 2, 2016

According to the docs (https://msdn.microsoft.com/en-us/library/windows/desktop/aa363792(v=vs.85).aspx, it is Vista. I am going to make a quick test with CancelIO, and see if it works, but I have my doubts.

@bagong
Copy link
Contributor

bagong commented May 2, 2016

That's very kind...

@llloret
Copy link
Member Author

llloret commented May 2, 2016

:(, it did not work. As I thought, the ::ReadFile on stdin is on another thread, so we need CancelIoEx to interrupt it. I can't think of another way to do this...

@llloret
Copy link
Member Author

llloret commented May 2, 2016

Well, another possibility would be to "manufacture" the Enter when exiting. That is, when detecting the exit, send an extra "Return" character, so that the ReadFile exits... but that would be quite a hack (I am not sure it even qualifies as a workaround ;)) ...

@bagong
Copy link
Contributor

bagong commented May 2, 2016

Haha, worse than a hack, I would say ;) Well, my god, then I guess there is nothing we can do... In that long FB thread I took the position we need a factual argument, and this seems to be one... So 3.7.1 will be the last XP version then... Rest in peace, XP... ;) But thanks a lot for trying!

@bagong
Copy link
Contributor

bagong commented May 2, 2016

Btw, one thing I observed: sclang closes scsynth properly now when shut down by 0.exit, but if you close the IDE without explicitly closing sclang, scsynth still stays behind... Also when closing sclang via menu-entry it still gets shutdown quite rudely, at least it complains that it shut down abnormaly ;)
So the new Win API setting will be 600? I have to set it manually and rebuild. I was about to try 501 and deleted my build for a clean rebuild...

@llloret
Copy link
Member Author

llloret commented May 3, 2016

I have been thinking a bit more, and perhaps it is not such a big hack...
or might be possible to send a return key, instead of the CancelIoEx. Let
me give it a go, and let you know.

Then, people can decide.

@bagong
Copy link
Contributor

bagong commented May 3, 2016

Okay! Thank you!

@llloret
Copy link
Member Author

llloret commented May 3, 2016

I don't think I can do it for the 0.exit case (without a big hack, as I said), but I might be able to do it for the exit from menu case.

@llloret
Copy link
Member Author

llloret commented May 3, 2016

No, I don't see a clean way to do this in Windows without the CancelIoEx, which requires Vista at least. There is probably a way, but I don't have much time... :(.

@bagong
Copy link
Contributor

bagong commented May 3, 2016

Yea, well, than that seems to be the "factual reason" we needed. Maybe it would be worth adding a comment in the source that this addition breaks Windows XP compatibility, so that if it ever gets an issue we could easily find the place?
The most vocal voice for XP support was actually interested in the server only. As to the server, I think nothing changed/will change between 3.7.1 and 3.7.2, so it would be okay to use the older server...

@llloret
Copy link
Member Author

llloret commented May 3, 2016

Ok, I will include that comment.

On 3 May 2016 at 10:17, Rainer Schütz notifications@github.com wrote:

Yea, well, than that seems to be the "factual reason" we needed. Maybe it
would be worth adding a comment in the source that this addition breaks
Windows XP compatibility, so that if it ever gets an issue we could easily
find the place?
The most vocal voice for XP support was actually interested in the server
only. As to the server, I think nothing changed/will change between 3.7.1
and 3.7.2, so it would be okay to use the older server...


You are receiving this because you authored the thread.
Reply to this email directly or view it on GitHub
#2017 (comment)

@crucialfelix
Copy link
Member

so this is just waiting on a minor doc addition ? otherwise ready to merge, right ?

@bagong
Copy link
Contributor

bagong commented May 8, 2016

Yep, just merge to shorten the list. I'll come with some readme stuff anyways, so it'll be part of that... Nothing formal changes really as we de facto already dropped XP support.

@bagong
Copy link
Contributor

bagong commented May 8, 2016

It has a use in master by reducing the amount of places in which the VS build will break ;) So no need to wait until the same change will be merged from 3.7.2 ;)

@bagong
Copy link
Contributor

bagong commented May 8, 2016

The request to add a comment refers to another PR. It's already done there.

@crucialfelix crucialfelix merged commit 08f9f55 into supercollider:master May 8, 2016
@llloret llloret deleted the min_windows_vista branch May 20, 2016 09:31
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants