Re: Next steps ? (Re: An attempt of a CSR draft ... (Re: A new WIP (PR # 192) (Re: WIP version with PI compile (Re: A WIP for JDK-8238080 for review/discussion (Re: "Internal review ID 9063426: "FXMLL

2020-05-26 Thread Kevin Rushforth
This is waiting on me. I need to review the updated API docs and CSR 
test, and then create a draft CSR issue.


-- Kevin


On 5/23/2020 11:30 AM, Rony G Flatscher wrote:

Hi Kevin,

is there anything I need to do? What are the next steps I should look for?

—-rony

Rony G. Flatscher (mobil/e)


Am 12.05.2020 um 19:23 schrieb Rony G. Flatscher :

Hi Kevin,

in the meantime I have tried to come up with a formulation for the "Introduction to 
FXML"
specification about the new compile processing instruction which is brief and 
complete. While being
there I fixed a typo in the document and added a missing language processing 
instruction to an
existing script example, hope that was o.k. as I have not filed an explicit bug 
for it.

Also closed the PR 129 and 187, removed the WIP from PR 192, and supplied the 
CSR draft as a comment.

If there is anything else I should do, please let me know.

Cheers,

---rony



On 11.05.2020 14:12, Rony G. Flatscher wrote:
Hi Kevin,


On 09.05.2020 17:16, Kevin Rushforth wrote:
I'm finally getting back to this. I took a look at 
https://github.com/openjdk/jfx/pull/192 and I
like that as the direction for this enhancement.

The initial CSR you have is a good start.

Thank you!


Next steps are:

1. Update the "Introduction to FXML" specification (see my comment in the PR)
2. Update PR 192 with the draft CSR as a comment, modifying it to include the 
above additions to
"Introduction to FXML"
3. Remove WIP from the title

You can then close the other two PRs (129 and 187).

will do (may take a little bit).

Cheers

---rony



On 4/28/2020 6:15 AM, Rony G. Flatscher wrote:

Hi Kevin,

what should be the next steps?

Should I remove "WIP" from the title in 
 and add the CSR
draft text of my last e-mail as a "CSR" comment with PR # 192, thereby 
requesting it to be added
to ?

Please advise.

TIA,

---rony

P.S.: This is the RFE:

  * RFE (2020-01-24): 


These are the three versions (all with appropriate unit tests) that I came up 
with
chronologically to implement the RFE, would prefer the latest version (PR # 
192):

  * Compile if Compilable implemented (2020-02-28): 

  * Compile if compile PI and Compilable is implemented (2020-04-11):

  * Compile with fallback, if Compilable is implemented, compile PI for 
fine-grained control
(2020-04-14): 


On 22.04.2020 20:01, Rony G. Flatscher wrote:

Hi Kevin,

as I am not able to file a CSR with the issue you suggested to come up with a 
draft, so here it goes:

Summary
===
Have javafx.fxml.FXMLLoader compile FXML scripts before evaluating them, if 
the script engine
implements the javax.script.Compilable interface to speed up execution. In 
case compilation
throws a javax.script.ScriptException fall back to evaluating the 
uncompiled script. Allow
control of script compilation with a "compile" PI for FXML files.

Problem
===
javafx.fxml.FXMLLoader is able to execute scripts in Java script languages
(javax.script.ScriptEngine implementations) referred to or embedded in a 
FXML file.

If a script engine implements the javax.script.Compilable interface, then 
such scripts could be
compiled and the resulting javax.script.CompiledScript could be executed 
instead using its
eval() methods.

Evaluating the javax.script.CompiledScript objects may help speed up the 
execution of script
invocations, especially for scripts defined for event attributes in FXML 
elements (e.g. like
onMouseMove) which may be repetitively invoked and evaluated.

Solution

Before evaluating the script code test whether the 
javax.script.ScriptEngine implements
javax.script.Compilable. If so, compile the script to a 
javax.script.CompiledScript object first
and then use its eval() method to evaluate the script, otherwise continue 
to use the
javax.script.ScriptEngine's eval() method instead. Should compilation of a 
script yield
(unexpectedly) a javax.script.ScriptException then fall back to using the
javax.script.ScriptEngine's eval() method. A new process instruction 
"compile" allows control of
the compilation of scripts ("true" sets compilation on, "false" to set 
compilation off) in FXML
files.

Specification
=
If a javax.script.ScriptEngine implements the javax.script.Compilable 
interface, then use its
compile() method to compile the script to a javax.script.CompiledScript 
object and use its
eval() method to run the script. In the case that the compilation throws 
(unexpectedly) a
javax.script.ScriptException log a warning and fall back to using the
javax.script.ScriptEngine's eval() method instead.
  

Re: Next steps ? (Re: An attempt of a CSR draft ... (Re: A new WIP (PR # 192) (Re: WIP version with PI compile (Re: A WIP for JDK-8238080 for review/discussion (Re: "Internal review ID 9063426: "FXMLL

2020-05-23 Thread Rony G Flatscher
Hi Kevin,

is there anything I need to do? What are the next steps I should look for?

—-rony

Rony G. Flatscher (mobil/e)

> Am 12.05.2020 um 19:23 schrieb Rony G. Flatscher :
> 
> Hi Kevin,
> 
> in the meantime I have tried to come up with a formulation for the 
> "Introduction to FXML"
> specification about the new compile processing instruction which is brief and 
> complete. While being
> there I fixed a typo in the document and added a missing language processing 
> instruction to an
> existing script example, hope that was o.k. as I have not filed an explicit 
> bug for it.
> 
> Also closed the PR 129 and 187, removed the WIP from PR 192, and supplied the 
> CSR draft as a comment.
> 
> If there is anything else I should do, please let me know.
> 
> Cheers,
> 
> ---rony
> 
> 
>> On 11.05.2020 14:12, Rony G. Flatscher wrote:
>> Hi Kevin,
>> 
>>> On 09.05.2020 17:16, Kevin Rushforth wrote:
>>> I'm finally getting back to this. I took a look at 
>>> https://github.com/openjdk/jfx/pull/192 and I
>>> like that as the direction for this enhancement.
>>> 
>>> The initial CSR you have is a good start.
>> Thank you!
>> 
>>> Next steps are:
>>> 
>>> 1. Update the "Introduction to FXML" specification (see my comment in the 
>>> PR)
>>> 2. Update PR 192 with the draft CSR as a comment, modifying it to include 
>>> the above additions to
>>> "Introduction to FXML"
>>> 3. Remove WIP from the title
>>> 
>>> You can then close the other two PRs (129 and 187).
>> will do (may take a little bit).
>> 
>> Cheers
>> 
>> ---rony
>> 
>> 
>>> On 4/28/2020 6:15 AM, Rony G. Flatscher wrote:
 Hi Kevin,
 
 what should be the next steps?
 
 Should I remove "WIP" from the title in 
  and add the CSR
 draft text of my last e-mail as a "CSR" comment with PR # 192, thereby 
 requesting it to be added
 to ?
 
 Please advise.
 
 TIA,
 
 ---rony
 
 P.S.: This is the RFE:
 
  * RFE (2020-01-24): 
 
 
 These are the three versions (all with appropriate unit tests) that I came 
 up with
 chronologically to implement the RFE, would prefer the latest version (PR 
 # 192):
 
  * Compile if Compilable implemented (2020-02-28): 
 
  * Compile if compile PI and Compilable is implemented (2020-04-11):

  * Compile with fallback, if Compilable is implemented, compile PI for 
 fine-grained control
(2020-04-14): 
 
 
 On 22.04.2020 20:01, Rony G. Flatscher wrote:
> Hi Kevin,
> 
> as I am not able to file a CSR with the issue you suggested to come up 
> with a draft, so here it goes:
> 
>Summary
>===
>Have javafx.fxml.FXMLLoader compile FXML scripts before evaluating 
> them, if the script engine
>implements the javax.script.Compilable interface to speed up 
> execution. In case compilation
>throws a javax.script.ScriptException fall back to evaluating the 
> uncompiled script. Allow
>control of script compilation with a "compile" PI for FXML files.
> 
>Problem
>===
>javafx.fxml.FXMLLoader is able to execute scripts in Java script 
> languages
>(javax.script.ScriptEngine implementations) referred to or embedded in 
> a FXML file.
> 
>If a script engine implements the javax.script.Compilable interface, 
> then such scripts could be
>compiled and the resulting javax.script.CompiledScript could be 
> executed instead using its
>eval() methods.
> 
>Evaluating the javax.script.CompiledScript objects may help speed up 
> the execution of script
>invocations, especially for scripts defined for event attributes in 
> FXML elements (e.g. like
>onMouseMove) which may be repetitively invoked and evaluated.
> 
>Solution 
>
>Before evaluating the script code test whether the 
> javax.script.ScriptEngine implements
>javax.script.Compilable. If so, compile the script to a 
> javax.script.CompiledScript object first
>and then use its eval() method to evaluate the script, otherwise 
> continue to use the
>javax.script.ScriptEngine's eval() method instead. Should compilation 
> of a script yield
>(unexpectedly) a javax.script.ScriptException then fall back to using 
> the
>javax.script.ScriptEngine's eval() method. A new process instruction 
> "compile" allows control of
>the compilation of scripts ("true" sets compilation on, "false" to set 
> compilation off) in FXML
>files.
> 
>Specification

Re: Next steps ? (Re: An attempt of a CSR draft ... (Re: A new WIP (PR # 192) (Re: WIP version with PI compile (Re: A WIP for JDK-8238080 for review/discussion (Re: "Internal review ID 9063426: "FXMLL

2020-05-12 Thread Rony G. Flatscher
Hi Kevin,

in the meantime I have tried to come up with a formulation for the 
"Introduction to FXML"
specification about the new compile processing instruction which is brief and 
complete. While being
there I fixed a typo in the document and added a missing language processing 
instruction to an
existing script example, hope that was o.k. as I have not filed an explicit bug 
for it.

Also closed the PR 129 and 187, removed the WIP from PR 192, and supplied the 
CSR draft as a comment.

If there is anything else I should do, please let me know.

Cheers,

---rony


On 11.05.2020 14:12, Rony G. Flatscher wrote:
> Hi Kevin,
>
> On 09.05.2020 17:16, Kevin Rushforth wrote:
>> I'm finally getting back to this. I took a look at 
>> https://github.com/openjdk/jfx/pull/192 and I
>> like that as the direction for this enhancement.
>>
>> The initial CSR you have is a good start.
> Thank you!
>
>> Next steps are:
>>
>> 1. Update the "Introduction to FXML" specification (see my comment in the PR)
>> 2. Update PR 192 with the draft CSR as a comment, modifying it to include 
>> the above additions to
>> "Introduction to FXML"
>> 3. Remove WIP from the title
>>
>> You can then close the other two PRs (129 and 187).
> will do (may take a little bit).
>
> Cheers
>
> ---rony
>
>
>> On 4/28/2020 6:15 AM, Rony G. Flatscher wrote:
>>> Hi Kevin,
>>>
>>> what should be the next steps?
>>>
>>> Should I remove "WIP" from the title in 
>>>  and add the CSR
>>> draft text of my last e-mail as a "CSR" comment with PR # 192, thereby 
>>> requesting it to be added
>>> to ?
>>>
>>> Please advise.
>>>
>>> TIA,
>>>
>>> ---rony
>>>
>>> P.S.: This is the RFE:
>>>
>>>   * RFE (2020-01-24): 
>>> 
>>>
>>> These are the three versions (all with appropriate unit tests) that I came 
>>> up with
>>> chronologically to implement the RFE, would prefer the latest version (PR # 
>>> 192):
>>>
>>>   * Compile if Compilable implemented (2020-02-28): 
>>> 
>>>   * Compile if compile PI and Compilable is implemented (2020-04-11):
>>> 
>>>   * Compile with fallback, if Compilable is implemented, compile PI for 
>>> fine-grained control
>>> (2020-04-14): 
>>>
>>>
>>> On 22.04.2020 20:01, Rony G. Flatscher wrote:
 Hi Kevin,

 as I am not able to file a CSR with the issue you suggested to come up 
 with a draft, so here it goes:

 Summary
 ===
 Have javafx.fxml.FXMLLoader compile FXML scripts before evaluating 
 them, if the script engine
 implements the javax.script.Compilable interface to speed up 
 execution. In case compilation
 throws a javax.script.ScriptException fall back to evaluating the 
 uncompiled script. Allow
 control of script compilation with a "compile" PI for FXML files.

 Problem
 ===
 javafx.fxml.FXMLLoader is able to execute scripts in Java script 
 languages
 (javax.script.ScriptEngine implementations) referred to or embedded in 
 a FXML file.

 If a script engine implements the javax.script.Compilable interface, 
 then such scripts could be
 compiled and the resulting javax.script.CompiledScript could be 
 executed instead using its
 eval() methods.

 Evaluating the javax.script.CompiledScript objects may help speed up 
 the execution of script
 invocations, especially for scripts defined for event attributes in 
 FXML elements (e.g. like
 onMouseMove) which may be repetitively invoked and evaluated.

 Solution 
 
 Before evaluating the script code test whether the 
 javax.script.ScriptEngine implements
 javax.script.Compilable. If so, compile the script to a 
 javax.script.CompiledScript object first
 and then use its eval() method to evaluate the script, otherwise 
 continue to use the
 javax.script.ScriptEngine's eval() method instead. Should compilation 
 of a script yield
 (unexpectedly) a javax.script.ScriptException then fall back to using 
 the
 javax.script.ScriptEngine's eval() method. A new process instruction 
 "compile" allows control of
 the compilation of scripts ("true" sets compilation on, "false" to set 
 compilation off) in FXML
 files.

 Specification
 =
 If a javax.script.ScriptEngine implements the javax.script.Compilable 
 interface, then use its
 compile() method to compile the script to a 
 javax.script.CompiledScript object and use its
 eval() method to run the script. In the case that the compilation 
 throws (unexpectedly) a

Re: Next steps ? (Re: An attempt of a CSR draft ... (Re: A new WIP (PR # 192) (Re: WIP version with PI compile (Re: A WIP for JDK-8238080 for review/discussion (Re: "Internal review ID 9063426: "FXMLL

2020-05-11 Thread Rony G. Flatscher
Hi Kevin,

On 09.05.2020 17:16, Kevin Rushforth wrote:
> I'm finally getting back to this. I took a look at 
> https://github.com/openjdk/jfx/pull/192 and I
> like that as the direction for this enhancement.
>
> The initial CSR you have is a good start.

Thank you!

> Next steps are:
>
> 1. Update the "Introduction to FXML" specification (see my comment in the PR)
> 2. Update PR 192 with the draft CSR as a comment, modifying it to include the 
> above additions to
> "Introduction to FXML"
> 3. Remove WIP from the title
>
> You can then close the other two PRs (129 and 187).

will do (may take a little bit).

Cheers

---rony


> On 4/28/2020 6:15 AM, Rony G. Flatscher wrote:
>>
>> Hi Kevin,
>>
>> what should be the next steps?
>>
>> Should I remove "WIP" from the title in 
>>  and add the CSR
>> draft text of my last e-mail as a "CSR" comment with PR # 192, thereby 
>> requesting it to be added
>> to ?
>>
>> Please advise.
>>
>> TIA,
>>
>> ---rony
>>
>> P.S.: This is the RFE:
>>
>>   * RFE (2020-01-24): 
>> 
>>
>> These are the three versions (all with appropriate unit tests) that I came 
>> up with
>> chronologically to implement the RFE, would prefer the latest version (PR # 
>> 192):
>>
>>   * Compile if Compilable implemented (2020-02-28): 
>> 
>>   * Compile if compile PI and Compilable is implemented (2020-04-11):
>> 
>>   * Compile with fallback, if Compilable is implemented, compile PI for 
>> fine-grained control
>> (2020-04-14): 
>>
>>
>> On 22.04.2020 20:01, Rony G. Flatscher wrote:
>>> Hi Kevin,
>>>
>>> as I am not able to file a CSR with the issue you suggested to come up with 
>>> a draft, so here it goes:
>>>
>>> Summary
>>> ===
>>> Have javafx.fxml.FXMLLoader compile FXML scripts before evaluating 
>>> them, if the script engine
>>> implements the javax.script.Compilable interface to speed up execution. 
>>> In case compilation
>>> throws a javax.script.ScriptException fall back to evaluating the 
>>> uncompiled script. Allow
>>> control of script compilation with a "compile" PI for FXML files.
>>>
>>> Problem
>>> ===
>>> javafx.fxml.FXMLLoader is able to execute scripts in Java script 
>>> languages
>>> (javax.script.ScriptEngine implementations) referred to or embedded in 
>>> a FXML file.
>>>
>>> If a script engine implements the javax.script.Compilable interface, 
>>> then such scripts could be
>>> compiled and the resulting javax.script.CompiledScript could be 
>>> executed instead using its
>>> eval() methods.
>>>
>>> Evaluating the javax.script.CompiledScript objects may help speed up 
>>> the execution of script
>>> invocations, especially for scripts defined for event attributes in 
>>> FXML elements (e.g. like
>>> onMouseMove) which may be repetitively invoked and evaluated.
>>>
>>> Solution 
>>> 
>>> Before evaluating the script code test whether the 
>>> javax.script.ScriptEngine implements
>>> javax.script.Compilable. If so, compile the script to a 
>>> javax.script.CompiledScript object first
>>> and then use its eval() method to evaluate the script, otherwise 
>>> continue to use the
>>> javax.script.ScriptEngine's eval() method instead. Should compilation 
>>> of a script yield
>>> (unexpectedly) a javax.script.ScriptException then fall back to using 
>>> the
>>> javax.script.ScriptEngine's eval() method. A new process instruction 
>>> "compile" allows control of
>>> the compilation of scripts ("true" sets compilation on, "false" to set 
>>> compilation off) in FXML
>>> files.
>>>
>>> Specification
>>> =
>>> If a javax.script.ScriptEngine implements the javax.script.Compilable 
>>> interface, then use its
>>> compile() method to compile the script to a javax.script.CompiledScript 
>>> object and use its
>>> eval() method to run the script. In the case that the compilation 
>>> throws (unexpectedly) a
>>> javax.script.ScriptException log a warning and fall back to using the
>>> javax.script.ScriptEngine's eval() method instead.
>>> To allow setting this feature off and on while processing the FXML file 
>>> a "compile" process
>>> instruction ("" or "") gets defined 
>>> that allows to turn
>>> compilation off and on throughout a FXML file.
>>>
>>> Having never seen a real CSR I hope that this matches what is expected and 
>>> is helpful for
>>> assessment. If not please advise (got the name of these fields from [1]).
>>>
>>> ---
>>>
>>> Also added brief information about the respective test units (what they 
>>> test and yield) in the WIP  [2].
>>>
>>> ---rony
>>>
>>> [1] "CSR-FAQ": 

Re: Next steps ? (Re: An attempt of a CSR draft ... (Re: A new WIP (PR # 192) (Re: WIP version with PI compile (Re: A WIP for JDK-8238080 for review/discussion (Re: "Internal review ID 9063426: "FXMLL

2020-05-09 Thread Kevin Rushforth

Hi Rony,

I'm finally getting back to this. I took a look at 
https://github.com/openjdk/jfx/pull/192 and I like that as the direction 
for this enhancement.


The initial CSR you have is a good start.

Next steps are:

1. Update the "Introduction to FXML" specification (see my comment in 
the PR)
2. Update PR 192 with the draft CSR as a comment, modifying it to 
include the above additions to "Introduction to FXML"

3. Remove WIP from the title

You can then close the other two PRs (129 and 187).

Thanks.

-- Kevin


On 4/28/2020 6:15 AM, Rony G. Flatscher wrote:


Hi Kevin,

what should be the next steps?

Should I remove "WIP" from the title in 
 and add the CSR draft text 
of my last e-mail as a "CSR" comment with PR # 192, thereby requesting 
it to be added to 
?


Please advise.

TIA,

---rony

P.S.: This is the RFE:

  * RFE (2020-01-24):


These are the three versions (all with appropriate unit tests) that I 
came up with chronologically to implement the RFE, would prefer the 
latest version (PR # 192):


  * Compile if Compilable implemented (2020-02-28):

  * Compile if compile PI and Compilable is implemented (2020-04-11):

  * Compile with fallback, if Compilable is implemented, compile PI
for fine-grained control (2020-04-14):



On 22.04.2020 20:01, Rony G. Flatscher wrote:

Hi Kevin,

as I am not able to file a CSR with the issue you suggested to come up with a 
draft, so here it goes:

 Summary
 ===
 Have javafx.fxml.FXMLLoader compile FXML scripts before evaluating them, 
if the script engine
 implements the javax.script.Compilable interface to speed up execution. In 
case compilation
 throws a javax.script.ScriptException fall back to evaluating the 
uncompiled script. Allow
 control of script compilation with a "compile" PI for FXML files.

 Problem
 ===
 javafx.fxml.FXMLLoader is able to execute scripts in Java script languages
 (javax.script.ScriptEngine implementations) referred to or embedded in a 
FXML file.

 If a script engine implements the javax.script.Compilable interface, then 
such scripts could be
 compiled and the resulting javax.script.CompiledScript could be executed 
instead using its
 eval() methods.

 Evaluating the javax.script.CompiledScript objects may help speed up the 
execution of script
 invocations, especially for scripts defined for event attributes in FXML 
elements (e.g. like
 onMouseMove) which may be repetitively invoked and evaluated.

 Solution
 
 Before evaluating the script code test whether the 
javax.script.ScriptEngine implements
 javax.script.Compilable. If so, compile the script to a 
javax.script.CompiledScript object first
 and then use its eval() method to evaluate the script, otherwise continue 
to use the
 javax.script.ScriptEngine's eval() method instead. Should compilation of a 
script yield
 (unexpectedly) a javax.script.ScriptException then fall back to using the
 javax.script.ScriptEngine's eval() method. A new process instruction 
"compile" allows control of
 the compilation of scripts ("true" sets compilation on, "false" to set 
compilation off) in FXML
 files.

 Specification
 =
 If a javax.script.ScriptEngine implements the javax.script.Compilable 
interface, then use its
 compile() method to compile the script to a javax.script.CompiledScript 
object and use its
 eval() method to run the script. In the case that the compilation throws 
(unexpectedly) a
 javax.script.ScriptException log a warning and fall back to using the
 javax.script.ScriptEngine's eval() method instead.
 To allow setting this feature off and on while processing the FXML file a 
"compile" process
 instruction ("" or "") gets defined that 
allows to turn
 compilation off and on throughout a FXML file.

Having never seen a real CSR I hope that this matches what is expected and is 
helpful for
assessment. If not please advise (got the name of these fields from [1]).

---

Also added brief information about the respective test units (what they test 
and yield) in the WIP  [2].

---rony

[1] "CSR-FAQ":

[2] "WIP: Script compilable+compile PI+fallback: 8238080: FXMLLoader: if script 
engines implement
javax.script.Compilable compile scripts 
#192":


On 20.04.2020 14:58, Rony G. Flatscher wrote:

There is a new WIP at:

 This WIP adds the ability for a fallback in case compilation of scripts 
fails, in which case a
 warning gets issued about this