| <?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 "…"> |
| <!ENTITY le "≤"> |
| <!ENTITY nbsp " "> |
| <!ENTITY ndash "–"> |
| <!ENTITY oacute "ó"> |
| <!ENTITY rarr "→"> |
| <!ENTITY rArr "⇒"> |
| <!ENTITY THORN "Þ"> |
| <!ENTITY vellip "⋮"> |
| ]> |
| <document> |
| <properties> |
| <author email="dev AT jmeter.apache.org">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> |
| |
| <br></br> |
| <note> |
| JMeter 6.x requires Java 17 or later for execution (Java 21 is recommended). |
| </note> |
| |
| <!-- =================== 6.0.0 =================== --> |
| |
| <h1>Version 6.0.0 </h1> |
| <p> |
| Summary |
| </p> |
| <ul> |
| <li><a href="#Changes">Changes</a></li> |
| <li><a href="#Bug fixes">Bug fixes</a></li> |
| </ul> |
| |
| <ch_section>Changes</ch_section> |
| <h3>General</h3> |
| <ul> |
| <li><pr>6220</pr> Require Java 17 or later for running JMeter</li> |
| <li><pr>6550</pr> Require Kotlin 1.9 or later for running JMeter</li> |
| <li><pr>6274</pr> Change references to old MySQL driver to new class <code>com.mysql.cj.jdbc.Driver</code></li> |
| <li><issue>6352</issue> Calculate delays in Open Model Thread Group and Precise Throughput |
| Timer relative to start of Thread Group instead of the start of the test.</li> |
| <li><issue>6357</issue><pr>6358</pr> Ensure writable directories when copying template files while report generation.</li> |
| <li><pr>6509</pr><pr>6675</pr> Synchronize recent file menu across multiple JVMs. Contributed by Corneliu C (https://github.com/KingRabbid)</li> |
| <li><pr>6596</pr>Fallback to English locale when loading test plans that use string values for enum properties, so old sample plans load correctly even with non-English locales.</li> |
| </ul> |
| |
| <h3>HTTP Samplers and Test Script Recorder</h3> |
| <ul> |
| <li><pr>5891</pr>Skip Internet Explorer 6-9 conditional comment processing when fetching resource links</li> |
| <li><issue>5466</issue>Allow enabling or disabling individual HTTP request arguments in the HTTP Sampler UI. Contributed by Pasquale Pochop (github.com/pochopsp)</li> |
| <li><issue>6250</issue>Avoid adding "; charset=" automatically to <code>multipart/form-data</code> requests to align behavior with modern HTTP clients.</li> |
| <li><issue>6080</issue>Preserve the original HTTP method when following 307 and 308 redirects according to the HTTP specification. Contributed by LeeJiWon (github.com/dlwldnjs1009)</li> |
| <li><issue>6267</issue><pr>6268</pr>Add a space between key and value after <code>:</code> in View Results Tree > Sampler result tab for better readability.</li> |
| </ul> |
| |
| <h3>Timers, Assertions, Config, Pre- & Post-Processors</h3> |
| <ul> |
| <li><issue>6448</issue>Support trailing empty default values in JSON Extractor so expressions like <code>${VAR:-}</code> are handled correctly. Contributed by Raul Almeida (github.com/ratacolita)</li> |
| <li><pr>6596</pr>Add a schema for ConstantThroughputTimer and use it to ensure required properties are initialized properly.</li> |
| </ul> |
| |
| <h3>Non-functional changes</h3> |
| <ul> |
| <li>Update Apache Tika to 3.x from 1.x to use the latest parser engine.</li> |
| <li>Update Saxon-HE to 12.x from 11.x for XSLT and XQuery processing.</li> |
| <li>Update Groovy to 5.x for the Groovy-based scripting environment.</li> |
| <li>Update Bouncy Castle to 1.82 for cryptographic operations.</li> |
| <li>Update json-path to 2.10.0 for JSON query expressions.</li> |
| <li>Update Neo4j Java driver to 6.x for Bolt-based database tests.</li> |
| <li>Update Rhino JavaScript engine to 1.8.0 for JSR-223 JavaScript execution.</li> |
| </ul> |
| |
| <h3>UI</h3> |
| <ul> |
| <li><pr>6333</pr>Apply HiDPI mode automatically when setting up the GUI so JMeter looks sharp on high-resolution displays. Contributed by Gabriele Coletta (github.com/gdmg92)</li> |
| <li><pr>6656</pr>Replace the previous feather icon with the new oak leaf in the JMeter logo.</li> |
| </ul> |
| |
| <ch_section>Bug fixes</ch_section> |
| <h3>General</h3> |
| <ul> |
| <li><pr>6654</pr><issue>6611</issue>Support JDK 25 and above for result collectors with empty file names</li> |
| <li>Trim whitespace when parsing numeric JMeter properties so accidental spaces do not silently change configuration values.</li> |
| <li><pr>6372</pr>Fix KeyManager logging when using CLI mode so keystore passwords are not incorrectly reported as missing. Contributed by Patrick Uiterwijk (patrick at puiterwijk.org)</li> |
| <li><issue>5937</issue>Remove deprecated Log4j package scanning and configure plugin metadata processing to improve startup time and avoid deprecation warnings. Contributed by Piotr P. Karwasz (github.com/piotrgithub)</li> |
| <li><pr>6620</pr>Fix report generation paths so dashboard output files are created in the correct location after internal refactoring.</li> |
| <li><bug>6456</bug>Handle malformed percent-encoded URLs gracefully when recording HTTP traffic, logging a warning instead of failing the recording.</li> |
| </ul> |
| <!-- =================== Thanks =================== --> |
| |
| <ch_section>Thanks</ch_section> |
| <p>We thank all contributors mentioned in bug and improvement sections above: |
| </p> |
| <ul> |
| <li>Raul Almeida (github.com/ratacolita)</li> |
| <li>Pasquale Pochop (github.com/pochopsp)</li> |
| <li>Gabriele Coletta (github.com/gdmg92)</li> |
| <li>Patrick Uiterwijk (patrick at puiterwijk.org)</li> |
| <li>Piotr P. Karwasz (github.com/piotrgithub)</li> |
| </ul> |
| <p>We also thank bug reporters who helped us improve JMeter.</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>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(…) 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> |
| With Java 15 the JavaScript implementation <a href="https://openjdk.java.net/jeps/372">Nashorn has been removed</a>. |
| JMeter now ships with a JSR-223 compatible JavaScript engine by default (Mozilla Rhino 1.8.0), |
| so you do not need to download Rhino separately anymore.<br></br> |
| If you prefer to use Nashorn instead, you can still add it as a module. One way to download |
| version 15.7 (or later) and its dependencies and set the module path is outlined below: |
| <source> |
| mkdir lib/modules |
| pushd lib/modules |
| wget https://repo1.maven.org/maven2/org/openjdk/nashorn/nashorn-core/15.7/nashorn-core-15.7.jar |
| wget https://repo1.maven.org/maven2/org/ow2/asm/asm/9.9.1/asm-9.9.1.jar |
| wget https://repo1.maven.org/maven2/org/ow2/asm/asm-commons/9.9.1/asm-commons-9.9.1.jar |
| wget https://repo1.maven.org/maven2/org/ow2/asm/asm-util/9.9.1/asm-util-9.9.1.jar |
| wget https://repo1.maven.org/maven2/org/ow2/asm/asm-tree/9.9.1/asm-tree-9.9.1.jar |
| wget https://repo1.maven.org/maven2/org/ow2/asm/asm-analysis/9.9.1/asm-analysis-9.9.1.jar |
| popd |
| export JVM_ARGS="--module-path $PWD/lib/modules" |
| ./bin/jmeter |
| </source> |
| </li> |
| |
| </ul> |
| |
| </section> |
| </body> |
| </document> |