-
Notifications
You must be signed in to change notification settings - Fork 42
/
Copy pathCHANGES.txt
435 lines (268 loc) · 14.6 KB
/
CHANGES.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
RandomizedTesting, Change Log
=============================
For an up-to-date CHANGES file see
https://github.com/randomizedtesting/randomizedtesting/blob/master/CHANGES
======================= randomizedtesting 2.8.2 ====================
Bug Fixes:
* GH-311: Race condition calling RandomizedTest.isNightly
(Luca Cavanna)
======================= randomizedtesting 2.8.1 ====================
Bug Fixes:
* GH-307: Use monotonic clock instead of wall clock for detecting
deadlines as VMs and operating systems may shift wall clock resulting
in unpredictable behavior.
======================= randomizedtesting 2.8.0 ====================
Other:
* GH-303: Messages from ThreadLeakControl.checkThreadLeaks can
be inconsistent due to mismatched use of thread data.
* GH-304: Replace master/slave with main/forkedjvm terminology. This change
may result in backward incompatibilities if you used low-level event bus
subscription methods or JSON reports. Grep and replace 'slave' with 'forkedJvm'
and 'master' with 'main' seed.
======================= randomizedtesting 2.7.9 ====================
Other:
* Update ASM to 9.2 to support JDK 17
* Update JUnit dependency to 4.13.1.
* Update Ant dependency to 1.9.15.
======================= randomizedtesting 2.7.8 ====================
Improvements
* GH-289: Bump asm to 8.0.1.
* PR-287: Bump dom4j from 2.1.1 to 2.1.3.
======================= randomizedtesting 2.7.7 ====================
Bug Fixes
* GH-283: RandomizedRunner throws `NoTestsRemainException` from the
constructor when method filter is supplied and no methods match
(Mark Vieira).
======================= randomizedtesting 2.7.6 ====================
Improvements
* Use thread join internally to wait for forked timeouting test thread
instead of a hardcoded sleep (dumb!).
======================= randomizedtesting 2.7.5 ====================
Improvements
* Switch to simple-xml-safe.
* throw NoTestsRemainException if Filterable.filter removes all tests.
======================= randomizedtesting 2.7.4 ====================
Bug Fixes
* GH-280: Potential race condition in global temp folder generation.
======================= randomizedtesting 2.7.3 ====================
Bug Fixes
* GH-276: Annotations on overriden methods are not picked up (annotations
on overrides of @Test methods are not picked up).
======================= randomizedtesting 2.7.2 ====================
Bug Fixes
* GH-275: Timeouts can deadlock on trying to interrupt leaked threads.
Improvements
* GH-274: PrintEventListener should emit display name if method name
is not available in testIgnored callback.
======================= randomizedtesting 2.7.1 ====================
Bug Fixes
* GH-271: Methods with ( or ) in them can't be selected directly using
glob filters.
======================= randomizedtesting 2.7.0 ====================
Bug Fixes
* GH-269: 2.6.x runners and junit 4.12 show much noise for a single
test method in IntellJ Idea (thanks Vladimir Dolzhenko).
Changes in Backwards Compatibility
* GH-270: Upgrade to support JUnit 4.12. This also means that Hamcrest
is required (as JUnit 4.12 uses it).
======================= randomizedtesting 2.6.4 ====================
Bug Fixes
* GH-247: Allow java.io.tmpdir to be placed under cwd with isolated
directories and nonEmptyWorkDirAction=wipe.
* GH-255: Invalid event nesting on security logging crashes the runner.
* GH-266: QUIT event may not be read from the event log on slow machines.
* GH-267: Project does not build/ test on Java 11.
Improvements
* An additional property 'junit4.tempDir' is passed to forked JVMs to allow
easier configuration of security policy files. This folder must have
read/ write file policy.
* Added a test case that runs with a security manager enabled.
* GH-253: IntelliJ only recognizes proper test methods for re-runs
when descriptions have " [...]" instead of " {...}. This fix uses square
brackets on IntelliJ runner.
Changes in Backwards Compatibility
* GH-265: Deprecate RandomizedTest.randomInt(v) and RandomizedTest.randomLong(v).
======================= randomizedtesting 2.6.3 ====================
Bug Fixes
* GH-263: event bus dispatch error (covariant incompatibility due to
jdk 9 compilation to java 8 bytecode).
======================= randomizedtesting 2.6.2 ====================
New Features
* GH-261: Ant and Maven runner can specify external JUnit 4 RunListeners.
(Steven Zaluk)
======================= randomizedtesting 2.6.1 ====================
Bug Fixes
* GH-260: maven plugin should use dom4j 2.0.2 (avoids illegal access warnings
under Java 9 and later).
======================= randomizedtesting 2.6.0 ====================
Changes in Backwards Compatibility
* GH-259: Java 1.8 is now the minimum supported JRE.
* GH-258: add support for parsing class files compiled into Java 9 or
Java 10 bytecode.
======================= randomizedtesting 2.5.3 ====================
Bug Fixes
* GH-251: Fixes test case filtering in IDEs (IntelliJ, Eclipse). The tests
are now filtered out eagerly from the returned suite's Description and
don't show in the user interface at all. This also applies to
-Dtests.method=... patterns. (Mike Sokolov via Dawid Weiss)
======================= randomizedtesting 2.5.2 ====================
Bug Fixes
* GH-250: Non-bootstrapped ForkedJvmInfo causes NullPointerExceptions
(can happen on slow machines with low heartbeat setting).
(Doug Turnbull via Dawid Weiss).
======================= randomizedtesting 2.5.1 ====================
Changes in Backwards Compatibility
* GH-248: Cleaning up some confusion on RandomizedTest.randomAscii* and
RandomStrings.randomAscii* methods. These methods generated
random strings based on letters from the Unicode basic latin block (C0).
All these methods are now deprecated and will be removed in favor of
more explicit methods that tell exactly (?) what kind of letters are
involved (Ryan Ernst, Dawid Weiss). For details, see:
RandomStrings.randomAsciiLettersOfLength(..)
RandomStrings.randomAsciiLettersOfLengthBetween(..)
RandomStrings.randomAsciiAlphanumOfLength(..)
RandomStrings.randomAsciiAlphanumOfLengthBetween(..)
======================= randomizedtesting 2.5.0 ====================
Changes in Backwards Compatibility
* GH-243: Switches from File to NIO (Path) APIs in a few places may result
in slightly different runner's behavior (on exceptional conditions).
* GH-244: the new onNonEmptyWorkDirectory attribute's default value is
'fail' which may break existing builds that have garbage in work directories
of forked JVMs. Change explicitly to any of the alternatives ('ignore' or
'wipe') or fix your build to wipe the temporary folders yourself.
* GH-246: RequireAssertionsRule enforcement optional (consistent with
"-Dtests.asserts"); explicit target class is also required. (Dawid Weiss)
New Features
* GH-244: A new attribute "onNonEmptyWorkDirectory" controls the action to
take on non-empty initial work directory (for isolated JVMs). (Dawid Weiss)
Bug Fixes
Other Changes
* GH-246: RequireAssertionsRule enforcement optional (consistent with
"-Dtests.asserts"); explicit target class is also required. (Dawid Weiss)
* GH-243: Switches from File to NIO (Path) APIs in a few places in the ANT
runner. Improved messages concerning non-empty temporary JVM folder
(both initially and at the end of the tests' run). (Dawid Weiss)
* GH-245: Integrate Forbidden-APIs check and fix follow-up issues.
(Dawid Weiss)
======================= randomizedtesting 2.4.1 ====================
New Features
* GH-240: Add RandomPicks.randomFrom on primitive arrays. (Dawid Weiss)
Bug Fixes
* GH-242: RandomizedTest.nextTempName uses locale-sensitive String.format.
(Dawid Weiss)
======================= randomizedtesting 2.4.0 ====================
Changes in Backwards Compatibility
* GH-237: Methods previously found in RandomInts have been moved to
RandomNumbers. (Dawid Weiss)
* GH-234: Run strict validation (thread-ownership, lifecycle) in
AssertingRandom only with assertions enabled. This change means that running
without -ea will from now on ignore the fact that random context's Random
instance is shared where it shouldn't be. On the other hand, any
additional memory barriers can be now avoided, in particular when used in
conjunction with @TestContextRandomSupplier (see GH-235 below).
To enable consistent checking, enable assertions selectively (for
com.carrotsearch.randomizedtesting package only). (Dawid Weiss)
* GH-229: The default implementation of the Random instance returned from
the randomization context has been changed to Xoroshiro128P, details here:
http://xoroshiro.di.unimi.it/
The returned Random isn't synchronized and should yield much better
pseudo-random sequences than the default Java's Random. (Dawid Weiss)
New Features
* GH-238: Add BiasedNumbers (random selection with bias towards "evil"
numbers, in particular floats) as an alternative to RandomNumbers.
(Dawid Weiss)
* GH-237: Rename RandomInts to RandomNumbers and add methods operating
on longs. (Dawid Weiss).
* GH-235: A new class annotation was added: @TestContextRandomSupplier allows
declaring a custom class (RandomSupplier) that supplies a Random for the given
seed. This supplier can return any Random instance for the given initial
seed (secure random, faster-than-jdk random, non-random random...).
(Dawid Weiss)
Bug Fixes
* GH-233: some adjustments and refactorings in an attempt to avoid deadlocks
on suite timeouts. Very hard to reproduce (i.e., impossible) and some very
odd stack traces too. (Dawid Weiss)
Other Changes
* GH-232: Rework reporting of ignored, assumption-ignored,
filtering-expression ignored tests. (Dawid Weiss)
* GH-218: There are some internal changes in handling @Nightly annotation.
The support for @Nightly is now provided via GroupEvaluator (and this
class is now public, with methods allowing inspection of whether a test
would be filtered out or not). (Dawid Weiss)
======================= randomizedtesting 2.3.4 ====================
Bug Fixes
* GH-227: Static leak detector should print the "original" field in the
test class that lead to ram usage tester failure (PR #227, Uwe Schindler)
======================= randomizedtesting 2.3.3 ====================
Bug Fixes
* GH-225: Maven mojo's additionalClasspathElements option only adds
empty strings to classpath. (@Anaros via Dawid Weiss).
======================= randomizedtesting 2.3.2 ====================
Changes in Backwards Compatibility
* GH-222: Make unexpected JVM output available to listeners. This issue
makes JVM output available to ANT JUnit4's listeners so that they can
log it properly. Previously the JVM output was copied to System.out
which could be hard to work with. See TextReport.onJvmOutput for
an example. The default value of 'jvmOutputAction' has been changed
from 'pipe, warn' to 'listeners, warn' so that listeners get
notified about JVM output instead of it being copied directly to
sysout. (Dawid Weiss, Ryan Ernst).
Other Changes
* GH-220: Add an indication of the number of failed suites so far to text
report. (Dawid Weiss, Chris Hostetter).
* GH-224: Remove excess use of Guava's collections. (Dawid Weiss)
* GH-221: Upgrade to Guava 19.0-rc3. (Dawid Weiss, Ryan Ernst)
Bug Fixes
* PR #223: Access private fields within doPrivileged (Robert Muir)
======================= randomizedtesting 2.3.1 ====================
New Features
* GH-219: Add randomBytes generator utility. (Dawid Weiss)
* GH-190: RandomizedContext should provide the current test
case method (via RandomizedContext.current().getTargetMethod()).
(Dawid Weiss)
* GH-217: Permit running tests on the same instance of the suite
class via TestCaseInstanceProvider annotation. See
Test018TestCaseInstanceProviders example. (Dawid Weiss).
======================= randomizedtesting 2.3.0 ====================
New Features
* GH-216: Custom test case argument formatters in parameter factories.
See ParametersFactory.argumentFormatting and Test007ParameterizedTests
example. (Dawid Weiss).
* GH-194: Flexible test case ordering via the new annotation
(TestCaseOrdering). (Dawid Weiss)
Bug Fixes
* GH-215: In certain cases test case names could be duplicated (be
identical), which could confuse IDEs. (Dawid Weiss)
======================= randomizedtesting 2.2.0 ====================
Changes in Backwards Compatibility
* PR #178: Move to Java 1.7 and use the java NIO 2 API for temp files.
(Simon Willnauer)
* GH-184: RandomizedTest should not extend Assert. This permits easier use
of other frameworks (like assertj) via static imports without naming conflicts.
(Olivier Bourgain, Dawid Weiss)
New Features
* GH-191: "Tests with failures" should repeat the main seed at the end
of the report. (Dawid Weiss)
Bug Fixes
* GH-192: Reworked json streaming to get rid of gson and permit dumping
JVM-related diagnostics (security manager policy dumps, etc.).
(Dawid Weiss)
* GH-206: Potential NPE in checking getDefaultUncaughtExceptionHandler.
(Dawid Weiss)
Other Changes
* GH-210: Make RR compilable/ testable under Java 1.9. (Dawid Weiss)
* GH-209: Remove dependency on commons-io. (Dawid Weiss)
* GH-204: modernize and clean up project layout. (Dawid Weiss)
======================= randomizedtesting 2.1.17 ============================
Bug Fixes
* GH-201: Tests still running (and zombified) after suite timeout occurred.
(Dawid Weiss)
Other Changes
* GH-205: Report test seed in halt on failure message. (Dawid Weiss)
* GH-203: report the number of completely ignored suites
in the summary. (Dawid Weiss)
* PR #202: support running with security manager and limit the required
permissions. (Robert Muir)
======================= randomizedtesting (pre 2.2.0) =======================
No separate changelog was maintained. See git commit history or issues at
GitHub.