<commit_before><?xml version="1.0"?>
<!--
   Licensed to the Apache Software Foundation (ASF) under one or more
   contributor license agreements.  See the NOTICE file distributed with
   this work for additional information regarding copyright ownership.
   The ASF licenses this file to You 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.
-->
<!DOCTYPE document
[
<!ENTITY hellip   "&#x02026;" >
<!ENTITY rarr     "&#x02192;" >
<!ENTITY vellip   "&#x022EE;" >
]>
<document>
<properties>
    <author email="dev AT j<EMAIL>">JMeter developers</author>
    <title>Changes</title>
</properties>
<body>
<section name="Changes">
<style type="text/css"><!--
h2 { color: #960000; }
h3 { color: #960000; }
--></style>
<note>
<b>This page details the changes made in the current version only.</b>
<br></br>
Earlier changes are detailed in the <a href="changes_history.html">History of Previous Changes</a>.
</note>


<!--  =================== 3.4 =================== -->

<h1>Version 3.4</h1>
<p>
Summary
</p>
<ul>
<li><a href="#New and Noteworthy">New and Noteworthy</a></li>
<li><a href="#Incompatible changes">Incompatible changes</a></li>
<li><a href="#Bug fixes">Bug fixes</a></li>
<li><a href="#Improvements">Improvements</a></li>
<li><a href="#Non-functional changes">Non-functional changes</a></li>
<li><a href="#Known problems and workarounds">Known problems and workarounds</a></li>
<li><a href="#Thanks">Thanks</a></li>

</ul>

<ch_section>New and Noteworthy</ch_section>
<!-- <ch_category>Sample category</ch_category> -->
<!-- <ch_title>Sample title</ch_title> -->
<!-- <figure width="846" height="613" image="changes/3.0/view_results_tree_search_feature.png"></figure> -->
<ch_title>Core improvements</ch_title>

<ch_title>Report/Dashboard improvements</ch_title>

<ch_title>Documentation improvements</ch_title>

<ch_title>Functions</ch_title>

<!-- =================== Incompatible changes =================== -->

<ch_section>Incompatible changes</ch_section>
<ul>
    <li><code>Start time</code> and <code>End date</code> of Thread Group have been removed, see <bugzilla>61549</bugzilla></li>
    <li>In distributed testing, mode <code>Hold</code> has been removed. Use alternative and more efficient modes</li>
    <li>For 3rd party plugins, the following method in <code>org.apache.jmeter.gui.tree.JMeterTreeNode</code> has been dropped for migration to Java 9 (<bugzilla>61529</bugzilla>)
    <source>public Enumeration&lt;JMeterTreeNode&gt; children()</source>
    </li>
    <li><code>tearDown Thread Group</code> will now run on stop and shutdown of a test by default. If you don't want this behaviour, 
    uncheck <code>Run tearDown Thread Groups after shutdown of main threads</code> on <code>Test Plan</code> element, see <bugzilla>61656</bugzilla></li>
</ul>
<!-- =================== Improvements =================== -->

<ch_section>Improvements</ch_section>

<h3>HTTP Samplers and Test Script Recorder</h3>
<ul>
    <li><pr>316</pr> - Warn about empty truststore loading. Contributed by <NAME> (https://github.com/vherilier)</li>
    <li><bug>61639</bug>HTTP(S) Test Script Recorder : In request filtering tab, uncheck by default "Notify Child Listeners of filtered samplers"</li>
</ul>

<h3>Other samplers</h3>
<ul>
</ul>

<h3>Controllers</h3>
<ul>
</ul>

<h3>Listeners</h3>
<ul>
</ul>

<h3>Timers, Assertions, Config, Pre- &amp; Post-Processors</h3>
<ul>
    <li><bug>60213</bug>Boundary based extractor</li>
    <li><bug>61644</bug>HTTP Cache Manager: "Use Cache-Control/Expires header when processing GET requests" should be checked by default</li>
    <li><bug>61645</bug>Response Assertion : Add ability to assert on Request Data</li>
    <li><bug>61534</bug>Convert AssertionError to a failed assertion in the JSR223Assertion allowing users to use assert in their code</li>
</ul>

<h3>Functions</h3>
<ul>
    <li><bug>61561</bug>Function helper dialog should display exception in result</li>
    <li><bug>61593</bug>Remove Detail, Add, Add from Clipboard, Delete buttons in Function Helper GUI</li>
</ul>

<h3>I18N</h3>
<ul>
    <li><bug>61559</bug>Better label/translation/documentation for label ignoreFirstLine.displayName for CSV Data Set Config</li>
    <li><bug>61606</bug>Translate button <code>Browse...</code> in some elements (which use FileEditor class)</li>
</ul>

<h3>Report / Dashboard</h3>
<ul>
</ul>

<h3>General</h3>
<ul>
    <li><bug>61549</bug>Thread Group : Remove start and end date</li>
    <li><bug>61529</bug>Migration to Java 9. Partly contributed by Ubik Load Pack (support at ubikloadpack.com)</li>
    <li><bug>61607</bug>Add browse button in all beanshell elements to select beanshell script</li>
    <li><bug>61627</bug>Don't clear LogView anymore when clicking on Warning/Errors Indicator</li>
    <li><bug>61629</bug>Add Think Times to Children menu should not consider disabled elements</li>
    <li><bug>61655</bug>SampleSender : Drop HoldSampleSender implementation</li>
    <li><bug>61656</bug><code>tearDown Thread Group</code> should run by default at stop or shutdown of test</li>
    <li><bug>61659</bug>JMeterVariables#get() should apply toString() on non string objects</li>
</ul>

<ch_section>Non-functional changes</ch_section>
<ul>
    <li>Updated to bsh-2.0b6 (from bsh-2.0b5)</li>
    <li>Updated to rhino-1.7.7.2 (from rhino-1.7.7.1)</li>
</ul>

 <!-- =================== Bug fixes =================== -->

<ch_section>Bug fixes</ch_section>

<h3>HTTP Samplers and Test Script Recorder</h3>
<ul>
    <li><bug>61569</bug>JMS Point-to-Point Test Plan: Synchronization issue when putting reply. Contributed by <NAME> (panainte.i at gmail.com)</li>
</ul>

<h3>Other Samplers</h3>
<ul>
</ul>

<h3>Controllers</h3>
<ul>
    <li><bug>61556</bug>Clarify in documentation performance impacts of ${} var usage in IfController and groovy. Contributed by <NAME> (be_strew at yahoo.co.uk)</li>
</ul>

<h3>Listeners</h3>
<ul>
</ul>

<h3>Timers, Assertions, Config, Pre- &amp; Post-Processors</h3>
<ul>
</ul>

<h3>Functions</h3>
<ul>
    <li><bug>61588</bug>Better log message for RandomDate function</li>
    <li><bug>61619</bug>In Function Helper Dialog, the 1st function doesn't display default parameters</li>
    <li><bug>61628</bug>If split string has empty separator default separator is not used</li>
</ul>

<h3>I18N</h3>
<ul>
</ul>

<h3>Report / Dashboard</h3>
<ul>
</ul>

<h3>General</h3>
<ul>
</ul>

 <!--  =================== Thanks =================== -->

<ch_section>Thanks</ch_section>
<p>We thank all contributors mentioned in bug and improvement sections above:
</p>
<ul>
    <li><NAME> (panainte.i at gmail.com)</li>
    <li><NAME> (emi at apache.org)</li>
    <li><a href="http://ubikloadpack.com">Ubik Load Pack</a></li>
    <li><NAME> (be_strew at yahoo.co.uk)</li>
    <li><NAME> (https://github.com/vherilier)</li>
</ul>
<p>We also thank bug reporters who helped us improve JMeter. <br/>
For this release we want to give special thanks to the following reporters for the clear reports and tests made after our fixes:</p>
<ul>
</ul>
<p>
Apologies if we have omitted anyone else.
 </p>
 <!--  =================== Known bugs or issues related to JAVA Bugs =================== -->

<ch_section>Known problems and workarounds</ch_section>
<ul>
<li>View Results Tree may freeze rendering large response particularly if this response has no spaces, see <bugzilla>60816</bugzilla>.
This is due to an identified Java Bug <a href="https://bugs.openjdk.java.net/browse/JDK-8172336">UI stuck when calling <code>JEditorPane.setText()</code> or <code>JTextArea.setText()</code> with long text without space</a>.
</li>
</ul>
<ul>
<li>The Once Only controller behaves correctly under a Thread Group or Loop Controller,
but otherwise its behaviour is not consistent (or clearly specified).</li>

<li>
The numbers that appear to the left of the green box are the number of active threads / total number of threads,
the total number of threads only applies to a locally run test, otherwise it will show <code>0</code> (see <bugzilla>55510</bugzilla>).
</li>

<li>
Note that under some windows systems you may have this WARNING:
<source>
java.util.prefs.WindowsPreferences
WARNING: Could not open/create prefs root node Software\JavaSoft\Prefs at root 0
x80000002. Windows RegCreateKeyEx(&hellip;) returned error code 5.
</source>
The fix is to run JMeter as Administrator, it will create the registry key for you, then you can restart JMeter as a normal user and you won't have the warning anymore.
</li>

<li>
You may encounter the following error:
<source>java.security.cert.CertificateException: Certificates does not conform to algorithm constraints</source>
 if you run a HTTPS request on a web site with a SSL certificate (itself or one of SSL certificates in its chain of trust) with a signature
 algorithm using MD2 (like <code>md2WithRSAEncryption</code>) or with a SSL certificate with a size lower than 1024 bits.
This error is related to increased security in Java 8+.
<br></br>
To allow you to perform your HTTPS request, you can downgrade the security of your Java installation by editing
the Java <code>jdk.certpath.disabledAlgorithms</code> property. Remove the MD2 value or the constraint on size, depending on your case.
<br></br>
This property is in this file:
<source>JAVA_HOME/jre/lib/security/java.security</source>
See  <bugzilla>56357</bugzilla> for details.
</li>

<li>
Under Mac OSX Aggregate Graph will show wrong values due to mirroring effect on numbers.
This is due to a known Java bug, see Bug <a href="https://bugs.openjdk.java.net/browse/JDK-8065373" >JDK-8065373</a>
The fix is to use JDK8_u45 or later.
</li>

<li>
View Results Tree may fail to display some HTML code under HTML renderer, see <bugzilla>54586</bugzilla>.
This is due to a known Java bug which fails to parse "<code>px</code>" units in row/col attributes.
See Bug <a href="https://bugs.openjdk.java.net/browse/JDK-8031109" >JDK-8031109</a>
The fix is to use JDK9 b65 or later.
</li>

<li>
JTable selection with keyboard (<keycombo><keysym>SHIFT</keysym><keysym>up/down</keysym></keycombo>) is totally unusable with Java 7 on Mac OSX.
This is due to a known Java bug <a href="https://bugs.openjdk.java.net/browse/JDK-8025126" >JDK-8025126</a>
The fix is to use JDK 8 b132 or later.
</li>
</ul>

</section>
</body>
</document>
<commit_msg>Mention coverage improvements in release notes<commit_after><?xml version="1.0"?>
<!--
   Licensed to the Apache Software Foundation (ASF) under one or more
   contributor license agreements.  See the NOTICE file distributed with
   this work for additional information regarding copyright ownership.
   The ASF licenses this file to You 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.
-->
<!DOCTYPE document
[
<!ENTITY hellip   "&#x02026;" >
<!ENTITY rarr     "&#x02192;" >
<!ENTITY vellip   "&#x022EE;" >
]>
<document>
<properties>
    <author email="<EMAIL>">JMeter developers</author>
    <title>Changes</title>
</properties>
<body>
<section name="Changes">
<style type="text/css"><!--
h2 { color: #960000; }
h3 { color: #960000; }
--></style>
<note>
<b>This page details the changes made in the current version only.</b>
<br></br>
Earlier changes are detailed in the <a href="changes_history.html">History of Previous Changes</a>.
</note>


<!--  =================== 3.4 =================== -->

<h1>Version 3.4</h1>
<p>
Summary
</p>
<ul>
<li><a href="#New and Noteworthy">New and Noteworthy</a></li>
<li><a href="#Incompatible changes">Incompatible changes</a></li>
<li><a href="#Bug fixes">Bug fixes</a></li>
<li><a href="#Improvements">Improvements</a></li>
<li><a href="#Non-functional changes">Non-functional changes</a></li>
<li><a href="#Known problems and workarounds">Known problems and workarounds</a></li>
<li><a href="#Thanks">Thanks</a></li>

</ul>

<ch_section>New and Noteworthy</ch_section>
<!-- <ch_category>Sample category</ch_category> -->
<!-- <ch_title>Sample title</ch_title> -->
<!-- <figure width="846" height="613" image="changes/3.0/view_results_tree_search_feature.png"></figure> -->
<ch_title>Core improvements</ch_title>

<ch_title>Report/Dashboard improvements</ch_title>

<ch_title>Documentation improvements</ch_title>

<ch_title>Functions</ch_title>

<!-- =================== Incompatible changes =================== -->

<ch_section>Incompatible changes</ch_section>
<ul>
    <li><code>Start time</code> and <code>End date</code> of Thread Group have been removed, see <bugzilla>61549</bugzilla></li>
    <li>In distributed testing, mode <code>Hold</code> has been removed. Use alternative and more efficient modes</li>
    <li>For 3rd party plugins, the following method in <code>org.apache.jmeter.gui.tree.JMeterTreeNode</code> has been dropped for migration to Java 9 (<bugzilla>61529</bugzilla>)
    <source>public Enumeration&lt;JMeterTreeNode&gt; children()</source>
    </li>
    <li><code>tearDown Thread Group</code> will now run on stop and shutdown of a test by default. If you don't want this behaviour, 
    uncheck <code>Run tearDown Thread Groups after shutdown of main threads</code> on <code>Test Plan</code> element, see <bugzilla>61656</bugzilla></li>
</ul>
<!-- =================== Improvements =================== -->

<ch_section>Improvements</ch_section>

<h3>HTTP Samplers and Test Script Recorder</h3>
<ul>
    <li><pr>316</pr> - Warn about empty truststore loading. Contributed by <NAME> (https://github.com/vherilier)</li>
    <li><bug>61639</bug>HTTP(S) Test Script Recorder : In request filtering tab, uncheck by default "Notify Child Listeners of filtered samplers"</li>
</ul>

<h3>Other samplers</h3>
<ul>
</ul>

<h3>Controllers</h3>
<ul>
</ul>

<h3>Listeners</h3>
<ul>
</ul>

<h3>Timers, Assertions, Config, Pre- &amp; Post-Processors</h3>
<ul>
    <li><bug>60213</bug>Boundary based extractor</li>
    <li><bug>61644</bug>HTTP Cache Manager: "Use Cache-Control/Expires header when processing GET requests" should be checked by default</li>
    <li><bug>61645</bug>Response Assertion : Add ability to assert on Request Data</li>
    <li><bug>61534</bug>Convert AssertionError to a failed assertion in the JSR223Assertion allowing users to use assert in their code</li>
</ul>

<h3>Functions</h3>
<ul>
    <li><bug>61561</bug>Function helper dialog should display exception in result</li>
    <li><bug>61593</bug>Remove Detail, Add, Add from Clipboard, Delete buttons in Function Helper GUI</li>
</ul>

<h3>I18N</h3>
<ul>
    <li><bug>61559</bug>Better label/translation/documentation for label ignoreFirstLine.displayName for CSV Data Set Config</li>
    <li><bug>61606</bug>Translate button <code>Browse...</code> in some elements (which use FileEditor class)</li>
</ul>

<h3>Report / Dashboard</h3>
<ul>
</ul>

<h3>General</h3>
<ul>
    <li><bug>61549</bug>Thread Group : Remove start and end date</li>
    <li><bug>61529</bug>Migration to Java 9. Partly contributed by Ubik Load Pack (support at ubikloadpack.com)</li>
    <li><bug>61607</bug>Add browse button in all beanshell elements to select beanshell script</li>
    <li><bug>61627</bug>Don't clear LogView anymore when clicking on Warning/Errors Indicator</li>
    <li><bug>61629</bug>Add Think Times to Children menu should not consider disabled elements</li>
    <li><bug>61655</bug>SampleSender : Drop HoldSampleSender implementation</li>
    <li><bug>61656</bug><code>tearDown Thread Group</code> should run by default at stop or shutdown of test</li>
    <li><bug>61659</bug>JMeterVariables#get() should apply toString() on non string objects</li>
</ul>

<ch_section>Non-functional changes</ch_section>
<ul>
    <li>Updated to bsh-2.0b6 (from bsh-2.0b5)</li>
    <li>Updated to rhino-1.7.7.2 (from rhino-1.7.7.1)</li>
    <li><bug>61642</bug>Improve FTP test coverage</li>
    <li><bug>61641</bug>Improve JMS test coverage</li>
    <li><bug>61651</bug>Improve TCP test coverage</li>
</ul>

 <!-- =================== Bug fixes =================== -->

<ch_section>Bug fixes</ch_section>

<h3>HTTP Samplers and Test Script Recorder</h3>
<ul>
    <li><bug>61569</bug>JMS Point-to-Point Test Plan: Synchronization issue when putting reply. Contributed by <NAME> (panainte.i at gmail.com)</li>
</ul>

<h3>Other Samplers</h3>
<ul>
</ul>

<h3>Controllers</h3>
<ul>
    <li><bug>61556</bug>Clarify in documentation performance impacts of ${} var usage in IfController and groovy. Contributed by <NAME> (be_strew at yahoo.co.uk)</li>
</ul>

<h3>Listeners</h3>
<ul>
</ul>

<h3>Timers, Assertions, Config, Pre- &amp; Post-Processors</h3>
<ul>
</ul>

<h3>Functions</h3>
<ul>
    <li><bug>61588</bug>Better log message for RandomDate function</li>
    <li><bug>61619</bug>In Function Helper Dialog, the 1st function doesn't display default parameters</li>
    <li><bug>61628</bug>If split string has empty separator default separator is not used</li>
</ul>

<h3>I18N</h3>
<ul>
</ul>

<h3>Report / Dashboard</h3>
<ul>
</ul>

<h3>General</h3>
<ul>
</ul>

 <!--  =================== Thanks =================== -->

<ch_section>Thanks</ch_section>
<p>We thank all contributors mentioned in bug and improvement sections above:
</p>
<ul>
    <li><NAME> (panainte.i at gmail.com)</li>
    <li><NAME> (emi at apache.org)</li>
    <li><a href="http://ubikloadpack.com">Ubik Load Pack</a></li>
    <li><NAME> (be_strew at yahoo.co.uk)</li>
    <li><NAME> (https://github.com/vherilier)</li>
</ul>
<p>We also thank bug reporters who helped us improve JMeter. <br/>
For this release we want to give special thanks to the following reporters for the clear reports and tests made after our fixes:</p>
<ul>
</ul>
<p>
Apologies if we have omitted anyone else.
 </p>
 <!--  =================== Known bugs or issues related to JAVA Bugs =================== -->

<ch_section>Known problems and workarounds</ch_section>
<ul>
<li>View Results Tree may freeze rendering large response particularly if this response has no spaces, see <bugzilla>60816</bugzilla>.
This is due to an identified Java Bug <a href="https://bugs.openjdk.java.net/browse/JDK-8172336">UI stuck when calling <code>JEditorPane.setText()</code> or <code>JTextArea.setText()</code> with long text without space</a>.
</li>
</ul>
<ul>
<li>The Once Only controller behaves correctly under a Thread Group or Loop Controller,
but otherwise its behaviour is not consistent (or clearly specified).</li>

<li>
The numbers that appear to the left of the green box are the number of active threads / total number of threads,
the total number of threads only applies to a locally run test, otherwise it will show <code>0</code> (see <bugzilla>55510</bugzilla>).
</li>

<li>
Note that under some windows systems you may have this WARNING:
<source>
java.util.prefs.WindowsPreferences
WARNING: Could not open/create prefs root node Software\JavaSoft\Prefs at root 0
x80000002. Windows RegCreateKeyEx(&hellip;) returned error code 5.
</source>
The fix is to run JMeter as Administrator, it will create the registry key for you, then you can restart JMeter as a normal user and you won't have the warning anymore.
</li>

<li>
You may encounter the following error:
<source>java.security.cert.CertificateException: Certificates does not conform to algorithm constraints</source>
 if you run a HTTPS request on a web site with a SSL certificate (itself or one of SSL certificates in its chain of trust) with a signature
 algorithm using MD2 (like <code>md2WithRSAEncryption</code>) or with a SSL certificate with a size lower than 1024 bits.
This error is related to increased security in Java 8+.
<br></br>
To allow you to perform your HTTPS request, you can downgrade the security of your Java installation by editing
the Java <code>jdk.certpath.disabledAlgorithms</code> property. Remove the MD2 value or the constraint on size, depending on your case.
<br></br>
This property is in this file:
<source>JAVA_HOME/jre/lib/security/java.security</source>
See  <bugzilla>56357</bugzilla> for details.
</li>

<li>
Under Mac OSX Aggregate Graph will show wrong values due to mirroring effect on numbers.
This is due to a known Java bug, see Bug <a href="https://bugs.openjdk.java.net/browse/JDK-8065373" >JDK-8065373</a>
The fix is to use JDK8_u45 or later.
</li>

<li>
View Results Tree may fail to display some HTML code under HTML renderer, see <bugzilla>54586</bugzilla>.
This is due to a known Java bug which fails to parse "<code>px</code>" units in row/col attributes.
See Bug <a href="https://bugs.openjdk.java.net/browse/JDK-8031109" >JDK-8031109</a>
The fix is to use JDK9 b65 or later.
</li>

<li>
JTable selection with keyboard (<keycombo><keysym>SHIFT</keysym><keysym>up/down</keysym></keycombo>) is totally unusable with Java 7 on Mac OSX.
This is due to a known Java bug <a href="https://bugs.openjdk.java.net/browse/JDK-8025126" >JDK-8025126</a>
The fix is to use JDK 8 b132 or later.
</li>
</ul>

</section>
</body>
</document>

{'fraction_non_alphanumeric': 0.15544945367734828, 'fraction_numerical': 0.03144798457441925, 'mean_word_length': 4.717322834645669, 'pattern_counts': {'":': 0, '<': 817, '<?xml version=': 2, '>': 817, 'https://': 12, 'lorem ipsum': 0, 'www.': 2, 'xml': 2}, 'pii_count': 4, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '2711239', 'n_tokens_mistral': 7552, 'n_tokens_neox': 6971, 'n_words': 2367}