Releases: twitter/util
Util 19.11.0
New Features
-
util: Add initial support for JDK 11 compatibility. e6970ed1
-
util-core: Created public method Closable.stopCollectClosablesThread that stops CollectClosables
thread. a8260998 -
util-core: Introduced Reader.fromIterator to create a Reader from an iterator. It is not
recommended to call iterator.next() after creating a Reader from it. Doing so will affect the
behavior of Reader.read() because it will skip the value returned from iterator.next.
d1b42f4b
Runtime Behavior Changes
- util: Upgrade to caffeine 2.8.0 f35ae591
Breaking API Changes
- util-core: Add c.t.io.BufReader.readAll to consume a Reader[Buf] and concat values to a Buf.
Replace c.t.io.Reader.readAll with Reader.readAllItems, the new API consumes a generic Reader[T],
and return a Seq of items. a47a219b - util-core: Moved c.t.io.Reader.chunked to c.t.io.BufReader.chunked, and Reader.framed to
BufReader.framed. 459038f9 - util-core: Moved c.t.io.Reader.copy to c.t.io.Pipe.copy, and Reader.copyMany to
Pipe.copyMany. 5562ebf3
Deprecations
Util 19.10.0
Runtime Behavior Changes
- util-core: When a computation from FuturePool is interrupted, its promise is
set to the interrupt, wrapped in a j.u.c.CancellationException. This wrapper
was introduced because, all interrupts were once CancellationExceptions. In
RB_ID=98612, this changed to allow the user to raise specific exceptions as
interrupts, and in the aid of compatibility, we wrapped this raised exception
in a CancellationException. This change removes the wrapper and fails the
promise directly with the raised exception. This will affect users that
explicitly handle CancellationException. d95914f8
Bug Fixes
Util 19.9.0
Runtime Behavior Changes
- util-app: Better handling of exceptions when awaiting on the c.t.app.App to close at
the end of the main function. We Await.ready on this as the last step of
App#nonExitingMain which can potentially throw a TimeoutException which was previously
unhandled. We have updated the logic to ensure that TimeoutExceptions are handled accordingly.
b17297c7 - util: Upgrade to Scala Collections Compat 2.1.2. d4117162
Breaking API Changes
- util-core: BoundedStack is unused and really old code. Delete it. eeb0e947
- util-logging: com.twitter.logging.ScribeHandler and com.twitter.logging.ScribeHandlers have
been removed. Users are encouraged to use slf4j for logging. However, if a util-logging integrated
ScribeHandler is still required, users can either build their own Finagle-based scribe client as
in ScribeRawZipkinTracer in finagle-zipkin-scribe, or copy the old ScribeHandler
implementation directly into their code. f4e56599
Util 19.8.1
New Features
- util: Enables cross-build for 2.13.0. d5d20cc3
Java Compatibility
-
util-stats: In
c.t.finagle.stats.AbstractStatsReceiver, thecounter,statand
addGaugebecome final, overridecounterImpl,statImplandaddGaugeImplinstead.
d5d20cc3 -
util-core:
c.t.concurrent.Offer.choose,
c.t.concurrent.AsyncStream.apply,
c.t.util.Await.all,
c.t.util.Closable.sequencebecome available to java for passing varargs. d5d20cc3 -
util-stats:
c.t.finagle.stats.StatsReceiver.provideGaugeandaddGaugebecome available to java for
passing varags. d5d20cc3
Breaking API Changes
-
util-core: (not breaking)
c.t.util.Future.joinandc.t.util.Future.collectnow take
Iterable[Future[A]]other than Seq.d5d20cc3 -
util-core: Revert the change above, in
c.t.util.Future,collect,collectToTryandjoin
takescala.collection.Seq[Future[A]]. e451e3b2 -
util-core:
com.twitter.util.Event#buildnow builds a Seq of events.Event#buildAnybuilds
against any collection of events. d5d20cc3
Util 19.8.0
Breaking API Changes
- util-logging: The namespace forwarders for
LevelandPolicyincom.twitter.logging.config
have been removed. Code should be updated to usecom.twitter.logging.Leveland
com.twitter.logging.Policywhere necessary. Users are encouraged to use 'util-slf4j-api' though
where possible. 6ab4aeac - util-logging: The deprecated
com.twitter.logging.config.LoggerConfigand associated
classes have been removed. These have been deprecated since 2012. Code should be updated
to usecom.twitter.logging.LoggerFactorywhere necessary. Users are encouraged to use
'util-slf4j-api' though where possible. 5d43773e
Runtime Behavior Changes
- util: Upgrade to Jackson 2.9.9. 0f0bcd44
Util 19.7.0
Breaking API Changes
-
util-core: Removed deprecated
c.t.concurrent.SchedulermethodsusrTime,
cpuTime, andwallTime. These were deprecated in 2015 and have no
replacement. 0d77572 -
util-core: Removed deprecated
com.twitter.logging.configclassesSyslogFormatterConfig,
ThrottledHandlerConfig,SyslogHandlerConfig. These were deprecated in 2012 and have
no replacement. Users are encouraged to use 'util-slf4j-api' where possible. 28d9de5
Util 19.6.0
Bug Fixes
- util-core: Fixed the behavior in
c.t.io.Readerwhere reading fromReader\#emptyfails to return
aReaderDiscardedExceptionafter it's discarded. 6ac4c601
Runtime Behavior Changes
- util-core: Use
Localat callback creation forFuture's interrupt handler rather than
raiser's locals so that it is consistent with other callbacks. This functionality is
currently disabled and can be enabled by a toggle (com.twitter.util.UseLocalInInterruptible)
by setting it to 1.0 if you would like to try it out. 04cee8fb
Util 19.5.1
No Changes
Util 19.5.0
New Features
- util-app: Track the registration of duplicated Flag names. Currently, we print a warning to
stderr but do not track the duplicated Flag names. Tracking them allows us to inspect and
warn over the entire set. 4875552e
Util 19.4.0
19.4.0
New Features
- util-app: Improve usage of Flag.let by providing a Flag.letParse method
0d9dded3