Minimum version of Windows for default branch

classic Classic list List threaded Threaded
3 messages Options
Reply | Threaded
Open this post in threaded view
|

Minimum version of Windows for default branch

mmuetzel
For the Windows builds, Octave currently defines its minimum Windows API level to Windows NT 4.0 with SP3 (_WIN32_WINNT is set to 0x0403).
That switch is used to define the minimum version of the Windows API a program is expecting. Changing this value does not immediately prohibit starting a program on older Windows systems. But it allows to use API functions that are only available in newer versions.

Since Qt dropped support for Windows after version Qt 5.6.3, it is no longer possible to use the GUI with the official installer in Windows XP. Also mesa seems to meanwhile have dropped support for Windows XP. But it seems to still be possible to run Octave CLI when using an older opengl32.dll (or without the bundled OpenGL software rendering driver?, see bug #54662 [1]).

For bug #36477 [2], we might want to use API functions that require Windows Vista or newer. That change would prevent users from executing Octave on Windows XP.

We could probably still use older (deprecated) Windows API functions until they will finally be removed in a future Windows version. But in the light of more and more dependencies dropping support for Windows XP, would it be OK to require Windows Vista or newer?

Markus

[1]: https://savannah.gnu.org/bugs/?54662
[2]: https://savannah.gnu.org/bugs/?36477

Reply | Threaded
Open this post in threaded view
|

Re: Minimum version of Windows for default branch

Rik-4
On 03/10/2019 09:00 AM, [hidden email] wrote:
Subject:
Minimum version of Windows for default branch
From:
"Markus Mützel" [hidden email]
Date:
03/10/2019 03:59 AM
To:
"Octave Maintainers" [hidden email]
List-Post:
[hidden email]
Precedence:
list
MIME-Version:
1.0
Message-ID:
<trinity-29b4209c-5c19-4bc5-b72f-2443f97c2fe4-1552215558565@3c-app-gmx-bs43>
Content-Type:
text/plain; charset=UTF-8
Message:
2

For the Windows builds, Octave currently defines its minimum Windows API level to Windows NT 4.0 with SP3 (_WIN32_WINNT is set to 0x0403). 
That switch is used to define the minimum version of the Windows API a program is expecting. Changing this value does not immediately prohibit starting a program on older Windows systems. But it allows to use API functions that are only available in newer versions.

Since Qt dropped support for Windows after version Qt 5.6.3, it is no longer possible to use the GUI with the official installer in Windows XP. Also mesa seems to meanwhile have dropped support for Windows XP. But it seems to still be possible to run Octave CLI when using an older opengl32.dll (or without the bundled OpenGL software rendering driver?, see bug #54662 [1]).

For bug #36477 [2], we might want to use API functions that require Windows Vista or newer. That change would prevent users from executing Octave on Windows XP.

We could probably still use older (deprecated) Windows API functions until they will finally be removed in a future Windows version. But in the light of more and more dependencies dropping support for Windows XP, would it be OK to require Windows Vista or newer?

This seems fine to me.  Developer time is limited, and supporting ancient operating systems is not a high priority.

--Rik

Reply | Threaded
Open this post in threaded view
|

Re: Minimum version of Windows for default branch

John W. Eaton
Administrator
On 3/10/19 2:07 PM, Rik wrote:

>> We could probably still use older (deprecated) Windows API functions until they will finally be removed in a future Windows version. But in the light of more and more dependencies dropping support for Windows XP, would it be OK to require Windows Vista or newer?
>
> This seems fine to me.  Developer time is limited, and supporting
> ancient operating systems is not a high priority.

The last XP release was almost 10 years ago.  Support ended almost 5
years ago.  If people want to do retro computing, then I recommend also
using retro apps that match the obsolete OS.

Seriously though, if our dependencies are not supporting XP, then what
can we do?  If it were just a few features that didn't work properly
then we could probably work around the issue.  But I think most XP users
wouldn't want a version of Octave without the GUI.

Octave is free software.  People are free to do whatever is necessary to
support old operating systems if they choose to do so.  But I agree with
Rik, supporting XP is not a high priority for me either.

jwe