Releases: twitter/util
Util 18.6.0
API Changes
-
util-app: Allow users a way to override the argument parsing behavior in
c.t.app.App#nonExitingMain
which was inlined. Users can overrideparseArgs
to define custom behavior. cf7860e5 -
util-core: Removed
c.t.u.NonFatal
, usescala.util.control.NonFatal
instead. 57533b34 -
util-class-preloader: This library has been removed since it deprecated. We
no longer recommend that people do this. af41e634
Bug Fixes
- util-app: Fix issue where in some environments,
URLClassLoader#getURLs
can
return null, failing LoadService from initializing properly
(see: google/guava#2239). TheURLClassLoader
javadoc
is not clear if a null can be returned when callingURLClassLoader#getURLs
and for
at least one application server, the default returned is null, thus we should be more
resilient against this possibility. Fixes Finagle #695. 3adca94a
Deprecations
- util-reflect: This library has been deprecated since it is legacy code and shouldn't
be used for new services. We no longer think this facility is the right way to do it
and encourage you to provide your own forwarders. af41e634
New Features
- util-app: added #suppressGracefulShutdownErrors method to optionally suppress exceptions
during graceful shutdown from bubbling up. ab261b26
Util 18.5.0
Bug Fixes
-
util-core:
c.t.concurrent.AsyncSemaphore
no longer completes promises while holding
its intrinsic lock. b3b66cf8 -
util-logging: Fix incorrect
loggerName
inc.t.logging.ScribeHandler
which
prevented the short-circuiting of publishing messages emitted from the ScribeHandler.
5a8520a5 -
util-hashing: Add murmur3, a fast, non-cryptographic hashing function that
is missing from hashing.
67ffeb92
Util 18.4.0
New Features:
-
util-app: Add the ability to bind specific implementations for
LoadService.apply
viaApp.loadServiceBindings
. 74058678 -
util-core: Introduce the
ClosableOnce
trait which extends the guarantees of
Closable
to include idempotency of theclose
method. ccd1c697
Runtime Behavior Changes:
-
util-app: Add visibility for NonFatal exceptions during exiting of
c.t.app.App
.
Added visibility into any NonFatal exceptions which occur during the closing of
resources duringApp#close
. b152745e -
util-core: Ensure the
Awaitable.CloseAwaitably0.closeAwaitably
Future returns.
Because theclosed
AtomicBoolean is flipped, we want to make sure that executing
the passed inf
function satisfies theonClose
Promise even the cases of thrown
exceptions. 0c793f97 -
util-stats: Alphabetically sort stats printed to the given
PrintStream
in the
c.t.finagle.stats.InMemoryStatsReceiver#print(PrintStream)
function.To include stats headers which provide better visual separation for the different
types of stats being printedm, setincludeHeaders
to true. E.g.,InMemoryStatsReceiver#print(PrintStream, includeHeaders = true)
Util 18.3.0
Runtime Behavior Changes:
-
util-app: Ensure that any flag parsing error reason is written to
System.err
before attempting to print flag usage. In the event that collecting flags for
the printing the usage message fails, users will still receive a useful message
as to why flag parsing failed. 31efdaf0 -
util-core: Promises/Futures now use LIFO execution order for their callbacks
(was depth-based algorithm before). bf47b55f -
util-core: Wrap the function passed to
Closable.make
in a try/catch and return
aFuture.exception
over any NonFatal exception. 63d1caf3
Deprecations:
-
util-core: RichU64* APIs are deprecated. Use Java 8 Unsigned Long API instead:
0e27f594new RichU64String("123").toU64Long
->Long.parseUnsignedInt
new RichU64Long(123L).toU64HexString
->Long.toHexString
(no leading zeros)
Util 18.2.0
New Features:
-
util-core: Added implicit conversion for percentage specified as "x.percent"
to a fractional Double inc.t.conversions.percent
. e573d263 -
util-tunable: Add deserializer for
c.t.u.StorageUnit
to JsonTunableMapper
d320545a
Runtime Behavior Changes:
- util-app: When
c.t.a.App.exitOnError
is called, it now givesclose
an opportunity to clean up resources before exiting with an error.
aa32eb16
Util 18.1.0
New Features:
- util-security: Added
c.t.util.security.X509CrlFile
for reading
Certificate Revocation List PEM formattedX509CRL
files.
PHAB_ID=D127700
Util 17.12.0
API Changes:
- util-collection:
c.t.util.SetMaker
has been removed.
Direct usage of Guava is recommended if needed. b8bd0d4f
Util 17.11.0
New Features:
- util-security: Added
c.t.util.security.PrivateKeyFile
for reading PKCS#8
PEM formattedPrivateKey
files. 23f4a6a0
Util 17.10.0
Release Version Changes:
- From now on, release versions will be based on release date in the format of
YY.MM.x where x is a patch number.PHAB_ID=D101244
API Changes:
- util-app: c.t.app.Flag.let and letClear are now generic in their return type.
PHAB_ID=D93951
Bug Fixes:
- util-core: Fix Buf.ByteArray.Shared.apply(bytes,begin,end) constructor function.
PHAB_ID=D100648
Util 7.1.0
API Changes:
-
util-events: Module has been removed.
PHAB_ID=D82346
-
util-lint: Add GlobalRules#withRules for testing. Allow for the ability to
specify a global rules set for use in testing.PHAB_ID=D83506