Skip to content

Commit

Permalink
Merge branch 'master' into metal
Browse files Browse the repository at this point in the history
  • Loading branch information
arapte committed Dec 22, 2022
2 parents 205cf7e + 1d9e2af commit 8d69662
Show file tree
Hide file tree
Showing 749 changed files with 16,671 additions and 11,841 deletions.
18 changes: 9 additions & 9 deletions .github/workflows/submit.yml
Expand Up @@ -71,9 +71,9 @@ jobs:
# BOOT_JDK_FILENAME: "${{ fromJson(needs.prerequisites.outputs.dependencies).LINUX_X64_BOOT_JDK_FILENAME }}"
# BOOT_JDK_URL: "${{ fromJson(needs.prerequisites.outputs.dependencies).LINUX_X64_BOOT_JDK_URL }}"
# BOOT_JDK_SHA256: "${{ fromJson(needs.prerequisites.outputs.dependencies).LINUX_X64_BOOT_JDK_SHA256 }}"
BOOT_JDK_VERSION: "18.0.2"
BOOT_JDK_FILENAME: "jdk-18.0.2_linux-x64_bin.tar.gz"
BOOT_JDK_URL: "https://download.oracle.com/java/18/archive/jdk-18.0.2_linux-x64_bin.tar.gz"
BOOT_JDK_VERSION: "19.0.1"
BOOT_JDK_FILENAME: "jdk-19.0.1_linux-x64_bin.tar.gz"
BOOT_JDK_URL: "https://download.oracle.com/java/19/archive/jdk-19.0.1_linux-x64_bin.tar.gz"
ANT_DIR: "apache-ant-1.10.5"
ANT_FILENAME: "apache-ant-1.10.5.tar.gz"
ANT_URL: "https://archive.apache.org/dist/ant/binaries/apache-ant-1.10.5-bin.tar.gz"
Expand Down Expand Up @@ -153,9 +153,9 @@ jobs:
# BOOT_JDK_FILENAME: "${{ fromJson(needs.prerequisites.outputs.dependencies).LINUX_X64_BOOT_JDK_FILENAME }}"
# BOOT_JDK_URL: "${{ fromJson(needs.prerequisites.outputs.dependencies).LINUX_X64_BOOT_JDK_URL }}"
# BOOT_JDK_SHA256: "${{ fromJson(needs.prerequisites.outputs.dependencies).LINUX_X64_BOOT_JDK_SHA256 }}"
BOOT_JDK_VERSION: "18.0.2"
BOOT_JDK_FILENAME: "jdk-18.0.2_macos-x64_bin.tar.gz"
BOOT_JDK_URL: "https://download.oracle.com/java/18/archive/jdk-18.0.2_macos-x64_bin.tar.gz"
BOOT_JDK_VERSION: "19.0.1"
BOOT_JDK_FILENAME: "jdk-19.0.1_macos-x64_bin.tar.gz"
BOOT_JDK_URL: "https://download.oracle.com/java/19/archive/jdk-19.0.1_macos-x64_bin.tar.gz"
# Disabled due to timeout downloading ant; use ant installed on system
#ANT_DIR: "apache-ant-1.10.5"
#ANT_FILENAME: "apache-ant-1.10.5.tar.gz"
Expand Down Expand Up @@ -239,9 +239,9 @@ jobs:
# BOOT_JDK_FILENAME: "${{ fromJson(needs.prerequisites.outputs.dependencies).LINUX_X64_BOOT_JDK_FILENAME }}"
# BOOT_JDK_URL: "${{ fromJson(needs.prerequisites.outputs.dependencies).LINUX_X64_BOOT_JDK_URL }}"
# BOOT_JDK_SHA256: "${{ fromJson(needs.prerequisites.outputs.dependencies).LINUX_X64_BOOT_JDK_SHA256 }}"
BOOT_JDK_VERSION: "18.0.2"
BOOT_JDK_FILENAME: "jdk-18.0.2_windows-x64_bin.zip"
BOOT_JDK_URL: "https://download.oracle.com/java/18/archive/jdk-18.0.2_windows-x64_bin.zip"
BOOT_JDK_VERSION: "19.0.1"
BOOT_JDK_FILENAME: "jdk-19.0.1_windows-x64_bin.zip"
BOOT_JDK_URL: "https://download.oracle.com/java/19/archive/jdk-19.0.1_windows-x64_bin.zip"
ANT_DIR: "apache-ant-1.10.5"
ANT_FILENAME: "apache-ant-1.10.5.tar.gz"
ANT_URL: "https://archive.apache.org/dist/ant/binaries/apache-ant-1.10.5-bin.tar.gz"
Expand Down
6 changes: 3 additions & 3 deletions build.properties
Expand Up @@ -77,8 +77,8 @@ javadoc.header=JavaFX 20
##############################################################################

# JDK
jfx.build.jdk.version=18.0.2
jfx.build.jdk.buildnum=9
jfx.build.jdk.version=19.0.1
jfx.build.jdk.buildnum=10
jfx.build.jdk.version.min=17
jfx.build.jdk.buildnum.min=35
jfx.jdk.target.version=17
Expand All @@ -89,7 +89,7 @@ jfx.jdk.target.version=17
# gradle/legal/gradle.md.
# The jfx.gradle.version.min property defines the minimum version of gradle
# that is supported. It must be <= jfx.gradle.version.
jfx.gradle.version=7.3
jfx.gradle.version=7.6
jfx.gradle.version.min=7.3

# Toolchains
Expand Down
24 changes: 23 additions & 1 deletion gradle/legal/gradle.md
@@ -1,5 +1,27 @@
## Gradle v7.3
## Gradle v7.6

### Gradle Notice
```
gradlew
gradlew.bat
gradle-wrapper.jar:
Copyright 2007-2022 the original author or authors.
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
```
### Apache 2.0 License
```
Expand Down
Binary file modified gradle/wrapper/gradle-wrapper.jar
Binary file not shown.
4 changes: 2 additions & 2 deletions gradle/wrapper/gradle-wrapper.properties
@@ -1,6 +1,6 @@
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-7.3-bin.zip
distributionSha256Sum=de8f52ad49bdc759164f72439a3bf56ddb1589c4cde802d3cec7d6ad0e0ee410
distributionUrl=https\://services.gradle.org/distributions/gradle-7.6-bin.zip
distributionSha256Sum=7ba68c54029790ab444b39d7e293d3236b2632631fb5f2e012bb28b4ff669e4b
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
28 changes: 19 additions & 9 deletions gradlew
@@ -1,7 +1,7 @@
#!/bin/sh

#
# Copyright © 2015-2021 the original authors.
# Copyright © 2015-2021 the original authors.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
Expand Down Expand Up @@ -32,10 +32,10 @@
# Busybox and similar reduced shells will NOT work, because this script
# requires all of these POSIX shell features:
# * functions;
# * expansions «$var», «${var}», «${var:-default}», «${var+SET}»,
# «${var#prefix}», «${var%suffix}», and «$( cmd )»;
# * compound commands having a testable exit status, especially «case»;
# * various built-in commands including «command», «set», and «ulimit».
# * expansions «$var», «${var}», «${var:-default}», «${var+SET}»,
# «${var#prefix}», «${var%suffix}», and «$( cmd )»;
# * compound commands having a testable exit status, especially «case»;
# * various built-in commands including «command», «set», and «ulimit».
#
# Important for patching:
#
Expand All @@ -55,7 +55,7 @@
# Darwin, MinGW, and NonStop.
#
# (3) This script is generated from the Groovy template
# https://github.com/gradle/gradle/blob/master/subprojects/plugins/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt
# https://github.com/gradle/gradle/blob/HEAD/subprojects/plugins/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt
# within the Gradle project.
#
# You can find Gradle at https://github.com/gradle/gradle/.
Expand All @@ -80,10 +80,10 @@ do
esac
done

APP_HOME=$( cd "${APP_HOME:-./}" && pwd -P ) || exit

APP_NAME="Gradle"
# This is normally unused
# shellcheck disable=SC2034
APP_BASE_NAME=${0##*/}
APP_HOME=$( cd "${APP_HOME:-./}" && pwd -P ) || exit

# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"'
Expand Down Expand Up @@ -143,12 +143,16 @@ fi
if ! "$cygwin" && ! "$darwin" && ! "$nonstop" ; then
case $MAX_FD in #(
max*)
# In POSIX sh, ulimit -H is undefined. That's why the result is checked to see if it worked.
# shellcheck disable=SC3045
MAX_FD=$( ulimit -H -n ) ||
warn "Could not query maximum file descriptor limit"
esac
case $MAX_FD in #(
'' | soft) :;; #(
*)
# In POSIX sh, ulimit -n is undefined. That's why the result is checked to see if it worked.
# shellcheck disable=SC3045
ulimit -n "$MAX_FD" ||
warn "Could not set maximum file descriptor limit to $MAX_FD"
esac
Expand Down Expand Up @@ -205,6 +209,12 @@ set -- \
org.gradle.wrapper.GradleWrapperMain \
"$@"

# Stop when "xargs" is not available.
if ! command -v xargs >/dev/null 2>&1
then
die "xargs is not available"
fi

# Use "xargs" to parse quoted args.
#
# With -n1 it outputs one arg per line, with the quotes and backslashes removed.
Expand Down
15 changes: 9 additions & 6 deletions gradlew.bat
Expand Up @@ -14,7 +14,7 @@
@rem limitations under the License.
@rem

@if "%DEBUG%" == "" @echo off
@if "%DEBUG%"=="" @echo off
@rem ##########################################################################
@rem
@rem Gradle startup script for Windows
Expand All @@ -25,7 +25,8 @@
if "%OS%"=="Windows_NT" setlocal

set DIRNAME=%~dp0
if "%DIRNAME%" == "" set DIRNAME=.
if "%DIRNAME%"=="" set DIRNAME=.
@rem This is normally unused
set APP_BASE_NAME=%~n0
set APP_HOME=%DIRNAME%

Expand All @@ -40,7 +41,7 @@ if defined JAVA_HOME goto findJavaFromJavaHome

set JAVA_EXE=java.exe
%JAVA_EXE% -version >NUL 2>&1
if "%ERRORLEVEL%" == "0" goto execute
if %ERRORLEVEL% equ 0 goto execute

echo.
echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
Expand Down Expand Up @@ -75,13 +76,15 @@ set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar

:end
@rem End local scope for the variables with windows NT shell
if "%ERRORLEVEL%"=="0" goto mainEnd
if %ERRORLEVEL% equ 0 goto mainEnd

:fail
rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of
rem the _cmd.exe /c_ return code!
if not "" == "%GRADLE_EXIT_CONSOLE%" exit 1
exit /b 1
set EXIT_CODE=%ERRORLEVEL%
if %EXIT_CODE% equ 0 set EXIT_CODE=1
if not ""=="%GRADLE_EXIT_CONSOLE%" exit %EXIT_CODE%
exit /b %EXIT_CODE%

:mainEnd
if "%OS%"=="Windows_NT" endlocal
Expand Down
@@ -0,0 +1,67 @@
package com.sun.javafx.binding;

import java.util.Objects;

import javafx.beans.value.ObservableValue;

public class ConditionalBinding<T> extends LazyObjectBinding<T> {

private final ObservableValue<T> source;
private final ObservableValue<Boolean> nonNullCondition;

private Subscription subscription;

public ConditionalBinding(ObservableValue<T> source, ObservableValue<Boolean> condition) {
this.source = Objects.requireNonNull(source, "source cannot be null");
this.nonNullCondition = Objects.requireNonNull(condition, "condition cannot be null").orElse(false);

// condition is always observed and never unsubscribed
Subscription.subscribe(nonNullCondition, current -> {
invalidate();

if (!current) {
getValue();
}
});
}

/**
* This binding is valid whenever it is observed, or it is currently inactive.
* When inactive, the binding has the value of its source at the time it became
* inactive.
*/
@Override
protected boolean allowValidation() {
return super.allowValidation() || !isActive();
}

@Override
protected T computeValue() {
if (isObserved() && isActive()) {
if (subscription == null) {
subscription = Subscription.subscribeInvalidations(source, this::invalidate);
}
}
else {
unsubscribe();
}

return source.getValue();
}

@Override
protected Subscription observeSources() {
return this::unsubscribe;
}

private boolean isActive() {
return nonNullCondition.getValue();
}

private void unsubscribe() {
if (subscription != null) {
subscription.unsubscribe();
subscription = null;
}
}
}
Expand Up @@ -58,7 +58,7 @@ public static <T> ReadOnlyObjectProperty<T> createReadOnlyJavaBeanProperty(Objec
private static void init() {
if (!initialized) {
try {
Class accessor = Class.forName(
Class<?> accessor = Class.forName(
"com.sun.javafx.property.adapter.JavaBeanQuickAccessor",
true, JavaBeanAccessHelper.class.getClassLoader());
JAVA_BEAN_QUICK_ACCESSOR_CREATE_RO =
Expand Down
Expand Up @@ -43,16 +43,16 @@
* of the associated Runnable object will be called.
*/
public class Disposer implements Runnable {
private static final ReferenceQueue queue = new ReferenceQueue();
private static final Map<Object, Runnable> records = new ConcurrentHashMap<>();
private static final ReferenceQueue<Object> queue = new ReferenceQueue<>();
private static final Map<Reference<?>, Runnable> records = new ConcurrentHashMap<>();
private static Disposer disposerInstance;

static {
disposerInstance = new Disposer();

@SuppressWarnings("removal")
var dummy = java.security.AccessController.doPrivileged(
new java.security.PrivilegedAction() {
new java.security.PrivilegedAction<>() {
@Override
public Object run() {
/* The thread must be a member of a thread group
Expand Down Expand Up @@ -81,17 +81,17 @@ public Object run() {
* @param rec the associated Runnable object
*/
public static void addRecord(Object target, Runnable rec) {
PhantomReference ref = new PhantomReference<>(target, queue);
PhantomReference<Object> ref = new PhantomReference<>(target, queue);
records.put(ref, rec);
}

@Override
public void run() {
while (true) {
try {
Object obj = queue.remove();
((Reference)obj).clear();
Runnable rec = records.remove(obj);
Reference<?> reference = queue.remove();
reference.clear();
Runnable rec = records.remove(reference);
rec.run();
} catch (Exception e) {
System.out.println("Exception while removing reference: " + e);
Expand Down
Expand Up @@ -30,7 +30,7 @@

/**
*/
public class JavaBeanPropertyBuilderHelper {
public class JavaBeanPropertyBuilderHelper<T> {

private static final String IS_PREFIX = "is";
private static final String GET_PREFIX = "get";
Expand All @@ -43,7 +43,7 @@ public class JavaBeanPropertyBuilderHelper {
private String setterName;
private Method getter;
private Method setter;
private PropertyDescriptor descriptor;
private PropertyDescriptor<T> descriptor;

public void name(String propertyName) {
if ((propertyName == null)? this.propertyName != null : !propertyName.equals(this.propertyName)) {
Expand Down Expand Up @@ -104,7 +104,7 @@ public void setter(Method setter) {
}
}

public PropertyDescriptor getDescriptor() throws NoSuchMethodException {
public PropertyDescriptor<T> getDescriptor() throws NoSuchMethodException {
if (descriptor == null) {
if (propertyName == null) {
throw new NullPointerException("Property name has to be specified");
Expand Down Expand Up @@ -134,7 +134,7 @@ public PropertyDescriptor getDescriptor() throws NoSuchMethodException {
setterMethod = beanClass.getMethod(SET_PREFIX + capitalizedName, type);
}
}
descriptor = new PropertyDescriptor(propertyName, beanClass, getterMethod, setterMethod);
descriptor = new PropertyDescriptor<>(propertyName, beanClass, getterMethod, setterMethod);
}
return descriptor;
}
Expand Down

0 comments on commit 8d69662

Please sign in to comment.