8353002: Remove unnecessary Windows version check in WTaskbarPeer#24287
8353002: Remove unnecessary Windows version check in WTaskbarPeer#24287gredler wants to merge 1 commit intoopenjdk:masterfrom
Conversation
|
👋 Welcome back dgredler! A progress list of the required criteria for merging this PR into |
|
@gredler This change now passes all automated pre-integration checks. ℹ️ This project also has non-automated pre-integration requirements. Please see the file CONTRIBUTING.md for details. After integration, the commit message for the final commit will be: You can use pull request commands such as /summary, /contributor and /issue to adjust it as needed. At the time when this comment was updated there had been 694 new commits pushed to the
As there are no conflicts, your changes will automatically be rebased on top of these commits when integrating. If you prefer to avoid this automatic rebasing, please check the documentation for the /integrate command for further details. As you do not have Committer status in this project an existing Committer must agree to sponsor your change. Possible candidates are the reviewers of this PR (@prrace, @mrserb, @aivanov-jdk) but any other Committer may sponsor as well. ➡️ To flag this PR as ready for integration with the above commit message, type |
| supported = OSInfo.getWindowsVersion() | ||
| .compareTo(OSInfo.WINDOWS_7) >= 0 | ||
| && ShellFolder.invoke(() -> nativeInit()); | ||
| supported = ShellFolder.invoke(() -> nativeInit()); |
There was a problem hiding this comment.
I wonder what will happen if I start java.exe on a system with Windows Vista which doesn't support these features.
If the native code returns an error, then it's fine.
I ask this question not only out of curiosity but also because it looks like people run Java apps on Windows versions before Windows 10. We had to implement fallback for older versions of Windows in JDK-8321151.
There was a problem hiding this comment.
Interesting, thanks for the link!
One issue I see with JDK-8294427 is that it didn't work all the way back to the original Windows 10 release, which conflicts with the Oracle compatibility matrix.
But besides that, I'm surprised that a fix was implemented and tested targeting Windows 7 compatibility. Is there a different OpenJDK compatibility matrix that I should be aware of? If not, what were the criteria dictating that Windows 7 compatibility be maintained (at least in 2023)?
There was a problem hiding this comment.
The biggest issue with JDK-8294427 is that it was backported to older updates, including JDK 11, which is still in use on legacy systems. I think it's reasonable to assume that JDK 25 is supported on Windows 7 and later. However, it would be good to add a notice in JBS stating that it should not be backported.
There was a problem hiding this comment.
Ah, that makes sense -- so the gray area here are releases which technically do not currently support these older Windows versions, but did originally when they were first released, and we don't want to break that compatibility.
I've added a backporting note in JBS, as suggested. Is there a label I should add in JBS as well?
@aivanov-jdk Does that make sense / work for you as well?
@mrserb I'm assuming you meant "I think it's reasonable to assume that JDK 25 is supported on Windows 7 10 and later", is that right?
There was a problem hiding this comment.
FYI Microsoft still support some updates of Windows 7 .. if you pay them enough, but they do NOT support
the earliest updates of Windows 10.
So Windows 7 is more relevant today than early Windows 10 versions.
Looking at adoption numbers might tell you a similar story.
JDK 25 will ship before Windows 10 leaves mainline support - and it'll also have a long tail on the latest versions.
But Windows Vista isn't something I care about for JDK 25, although "not crashing" would be nice :-)
And yes, the backporting was the big issue with that other fix. Plus that the impact was huge.
There was a problem hiding this comment.
@aivanov-jdk Are there any additional concerns from your side after the clarifications from Sergey and Phil?
There was a problem hiding this comment.
Interesting, thanks for the link!
One issue I see with JDK-8294427 is that it didn't work all the way back to the original Windows 10 release, which conflicts with the Oracle compatibility matrix.
The original release of Windows 10 isn't supported by Microsoft, therefore it's not supported by Oracle.
But besides that, I'm surprised that a fix was implemented and tested targeting Windows 7 compatibility. Is there a different OpenJDK compatibility matrix that I should be aware of? If not, what were the criteria dictating that Windows 7 compatibility be maintained (at least in 2023)?
Each JDK vendor could have their own compatibility matrix which are different from Oracle.
But Windows Vista isn't something I care about for JDK 25, although "not crashing" would be nice :-)
Very true, Windows Vista is unlikely to be still in use, its adoption was low even when it was new.
|
/integrate |
|
/sponsor |
|
Going to push as commit 3757f66.
Your commit was automatically rebased without conflicts. |
|
@aivanov-jdk @gredler Pushed as commit 3757f66. 💡 You may see a message that your pull request was closed with unmerged commits. This can be safely ignored. |
WTaskbarPeer contains a check as to whether the current Windows version is Windows 7 or later. The current minimum supported version is Windows 10, so this is no longer needed.
There didn't seem to be a public test exercising this code, so I also added a basic Taskbar sanity test.
Progress
Issue
Reviewers
Reviewing
Using
gitCheckout this PR locally:
$ git fetch https://git.openjdk.org/jdk.git pull/24287/head:pull/24287$ git checkout pull/24287Update a local copy of the PR:
$ git checkout pull/24287$ git pull https://git.openjdk.org/jdk.git pull/24287/headUsing Skara CLI tools
Checkout this PR locally:
$ git pr checkout 24287View PR using the GUI difftool:
$ git pr show -t 24287Using diff file
Download this PR as a diff file:
https://git.openjdk.org/jdk/pull/24287.diff
Using Webrev
Link to Webrev Comment