<html><head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head>
<body>
<font size="4"><font face="monospace">Great milestone! <br>
<br>
More to come....<br>
</font></font><br>
<div class="moz-cite-prefix">On 3/9/2023 1:07 PM, Adam Sotona wrote:<br>
</div>
<blockquote type="cite" cite="mid:CY4PR1001MB2150410BFD5EDA774E70D20A8CB59@CY4PR1001MB2150.namprd10.prod.outlook.com">
<meta name="Generator" content="Microsoft Word 15 (filtered
medium)">
<style>@font-face
{font-family:Wingdings;
panose-1:5 0 0 0 0 0 0 0 0 0;}@font-face
{font-family:"Cambria Math";
panose-1:2 4 5 3 5 4 6 3 2 4;}@font-face
{font-family:Calibri;
panose-1:2 15 5 2 2 2 4 3 2 4;}@font-face
{font-family:"Segoe UI";
panose-1:2 11 5 2 4 2 4 2 2 3;}@font-face
{font-family:Menlo;
panose-1:2 11 6 9 3 8 4 2 2 4;}p.MsoNormal, li.MsoNormal, div.MsoNormal
{margin:0cm;
font-size:11.0pt;
font-family:"Calibri",sans-serif;}h3
{mso-style-priority:9;
mso-style-link:"Heading 3 Char";
mso-margin-top-alt:auto;
margin-right:0cm;
mso-margin-bottom-alt:auto;
margin-left:0cm;
font-size:13.5pt;
font-family:"Calibri",sans-serif;
font-weight:bold;}a:link, span.MsoHyperlink
{mso-style-priority:99;
color:#0563C1;
text-decoration:underline;}code
{mso-style-priority:99;
font-family:"Courier New";}pre
{mso-style-priority:99;
mso-style-link:"HTML Preformatted Char";
margin:0cm;
font-size:10.0pt;
font-family:"Courier New";}tt
{mso-style-priority:99;
font-family:"Courier New";}span.EmailStyle17
{mso-style-type:personal-compose;
font-family:"Calibri",sans-serif;
color:windowtext;}span.apple-converted-space
{mso-style-name:apple-converted-space;}span.Heading3Char
{mso-style-name:"Heading 3 Char";
mso-style-priority:9;
mso-style-link:"Heading 3";
font-family:"Calibri",sans-serif;
font-weight:bold;}span.HTMLPreformattedChar
{mso-style-name:"HTML Preformatted Char";
mso-style-priority:99;
mso-style-link:"HTML Preformatted";
font-family:"Courier New";}.MsoChpDefault
{mso-style-type:export-only;
font-family:"Calibri",sans-serif;}div.WordSection1
{page:WordSection1;}ol
{margin-bottom:0cm;}ul
{margin-bottom:0cm;}</style>
<div class="WordSection1">
<p class="MsoNormal"><span lang="EN-US">Hi,<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">As you’ve probably
noticed Classfile API implementation has been merged into
JDK master
</span><span style="font-size:10.5pt;font-family:"Segoe
UI",sans-serif;color:#24292F;background:white" lang="EN-US">as commit<span class="apple-converted-space"> </span></span><span lang="EN-US"><a href="https://github.com/openjdk/jdk/commit/4655b790d0b39b4ddabde78d7b3eed196b1152ed" moz-do-not-send="true"><tt><span style="font-size:9.0pt;font-family:Menlo;color:blue;text-decoration:none">4655b79</span></tt></a></span><span style="font-size:10.5pt;font-family:"Segoe
UI",sans-serif;color:#24292F;background:white" lang="EN-US">. Implications on our work are following:<o:p></o:p></span></p>
<h3 style="mso-margin-top-alt:18.0pt;margin-right:0cm;margin-bottom:12.0pt;margin-left:0cm"><span style="font-size:14.0pt">Documentation<o:p></o:p></span></h3>
<p class="MsoNormal"><span lang="EN-US"><a href="https://htmlpreview.github.io/?https://raw.githubusercontent.com/openjdk/jdk-sandbox/classfile-api-javadoc-branch/doc/classfile-api/javadoc/java.base/jdk/internal/classfile/package-summary.html" moz-do-not-send="true"><span style="color:blue">Online API
documentation</span></a><span style="color:#24292F;background:white"> will be updated at
the existing URL until further notice.
<o:p></o:p></span></span></p>
<h3 style="mso-margin-top-alt:18.0pt;margin-right:0cm;margin-bottom:12.0pt;margin-left:0cm"><span style="font-size:14.0pt">JDK Sandbox branches<o:p></o:p></span></h3>
<p class="MsoNormal"><span lang="EN-US">JDK Sandbox branches <a href="https://github.com/openjdk/jdk-sandbox/tree/classfile-api-branch" moz-do-not-send="true" class="moz-txt-link-freetext">
https://github.com/openjdk/jdk-sandbox/tree/classfile-api-branch</a> and
<a href="https://github.com/openjdk/jdk-sandbox/tree/classfile-api-dev-branch" moz-do-not-send="true" class="moz-txt-link-freetext">
https://github.com/openjdk/jdk-sandbox/tree/classfile-api-dev-branch</a>
will no longer serve for primary development.<o:p></o:p></span></p>
<h3 style="mso-margin-top-alt:18.0pt;margin-right:0cm;margin-bottom:12.0pt;margin-left:0cm"><span style="font-size:14.0pt">JDK Integration development work<o:p></o:p></span></h3>
<p class="MsoNormal"><span lang="EN-US">JDK integrations are
tracked under <a href="https://bugs.openjdk.org/browse/JDK-8294957" moz-do-not-send="true" class="moz-txt-link-freetext">
https://bugs.openjdk.org/browse/JDK-8294957</a>
“Consolidate JDK class files parsing, generating, and
transforming (umbrella)” as individual subtasks and
individual pull requests.<o:p></o:p></span></p>
<h3 style="mso-margin-top-alt:18.0pt;margin-right:0cm;margin-bottom:12.0pt;margin-left:0cm"><span style="font-size:14.0pt">Sources<o:p></o:p></span></h3>
<p style="mso-margin-top-alt:0cm;margin-right:0cm;margin-bottom:12.0pt;margin-left:0cm;box-sizing:
border-box">
Classfile Processing API sources are now an integral part of
java.base JDK module sources.<o:p></o:p></p>
<h3 style="mso-margin-top-alt:18.0pt;margin-right:0cm;margin-bottom:12.0pt;margin-left:0cm"><span style="font-size:14.0pt">Building<o:p></o:p></span></h3>
<p style="mso-margin-top-alt:0cm;margin-right:0cm;margin-bottom:12.0pt;margin-left:0cm;box-sizing:
border-box">
For JDK build instructions please see<span class="apple-converted-space"> </span><a href="https://openjdk.org/groups/build/doc/building.html" moz-do-not-send="true">online documentation</a>.<o:p></o:p></p>
<h3 style="mso-margin-top-alt:18.0pt;margin-right:0cm;margin-bottom:12.0pt;margin-left:0cm;box-sizing:
border-box;font-weight:var(--base-text-weight-semibold, 600)">
<span style="font-size:14.0pt">Testing<o:p></o:p></span></h3>
<p style="mso-margin-top-alt:0cm;margin-right:0cm;margin-bottom:12.0pt;margin-left:0cm;box-sizing:
border-box">
Classfile Processing API tests are a part of JDK tests.<o:p></o:p></p>
<p style="mso-margin-top-alt:0cm;margin-right:0cm;margin-bottom:12.0pt;margin-left:0cm;box-sizing:
border-box">
Test can be selectivelly executed as:<o:p></o:p></p>
<pre style="box-sizing: border-box;overflow-wrap: normal;color:var(--color-fg-default);background-color:var(--color-canvas-subtle);border-radius: 6px;overflow:auto"><code><span style="font-family:Menlo;border:none windowtext 1.0pt;padding:0cm">make test TEST=jdk/classfile</span></code><o:p></o:p></pre>
<h3 style="mso-margin-top-alt:18.0pt;margin-right:0cm;margin-bottom:12.0pt;margin-left:0cm;box-sizing:
border-box;font-weight:var(--base-text-weight-semibold, 600)">
<span style="font-size:14.0pt">Benchmarking<o:p></o:p></span></h3>
<p style="mso-margin-top-alt:0cm;margin-right:0cm;margin-bottom:12.0pt;margin-left:0cm;box-sizing:
border-box">
Classfile Processing API benchmarks are a part of JDK
Microbenchmark Suite.<o:p></o:p></p>
<p style="mso-margin-top-alt:0cm;margin-right:0cm;margin-bottom:12.0pt;margin-left:0cm;box-sizing:
border-box">
Benchmarks can be selectively executed as:<o:p></o:p></p>
<pre style="box-sizing: border-box;overflow-wrap: normal;color:var(--color-fg-default);background-color:var(--color-canvas-subtle);border-radius: 6px;overflow:auto"><code><span style="font-family:Menlo;border:none windowtext 1.0pt;padding:0cm">make test TEST=micro:org.openjdk.bench.jdk.classfile.+<o:p></o:p></span></code></pre>
<p style="mso-margin-top-alt:0cm;margin-right:0cm;margin-bottom:12.0pt;margin-left:0cm;box-sizing:
border-box">
See<span class="apple-converted-space"> </span><a href="https://bugs.openjdk.java.net/browse/JDK-8050952" moz-do-not-send="true">JEP 230: Microbenchmark Suite</a><span class="apple-converted-space"> </span>for more information
about JDK benchmarks.<o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">Thank you,<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">Adam<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
</div>
</blockquote>
<br>
</body>
</html>