forked from twitter/util
-
Notifications
You must be signed in to change notification settings - Fork 0
/
ChangeLog
248 lines (185 loc) · 7.87 KB
/
ChangeLog
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
6.0.3 2012-12-11
* Promise: remove future tracing, add explicit transforming state to
avoid extraneous allocation
* update zk client
* com.twitter.app: composable apps & flags
6.0.1 2012-11-26
* Use java.util.ArrayDeque in place of mutable.Queue due to
https://issues.scala-lang.org/browse/SI-6690
6.0.0 2012-11-26
* Removed future cancellation, which is now replaced with one-shot
interrupts. These also carry a ``cause'' which will be used
profitably in finagle.
* A new, leaner Promise implemetnation
* New implementations for Time and Duration with true sentinels
* Promise, Try combinators no longer attempt to catch fatal
exceptions
5.3.14 2012-11-20
* fix compiler warnings
* Future.join: support up to 22-tupled futures
* com.twitter.concurrent.Serialized: explicit docs
* util-logging: concurrent enqueue support for ScribeHandler, add stats
5.3.13 2012-10-16
* AsyncSemaphore: Use volatile vars for the active number and the waiters
* util-logging: fix ThrottledHandler to not leak memory
* util-logging: for file handlers, default to append=true since that was the default with FileHandlerConfig and is safer behavior
* upgrading slf4j dependent projects (1.6.1).
* sbt: robust MD5 checking.
* Fix Spool.foreachElem crashing on resoved spool with error
* FuturePool.defaultPool: use cached threadpool by default.
* util-logging: Correctly handle files with a shared prefix.
5.3.10 2012-09-06
* Improve ZNode.name and ZNode.parentPath to not use Regexes
* Fix ScheduledThreadPoolTimer.schedule(...).cancel()
* Upgrade guava dependency to v13
* Add a ZkClient Connector that dispatches requests across several zookeeper connections
* Support prefix-less sequential nodes in util-zk
* util-logging: Add Logger.withLoggers.
* Clean up equals and hashCode for Time and Duration
5.3.7 2012-08-21
* Disable log handler purging
* Added ThriftCodec
* Add a Time.hashCode method
* GC monitor: be more quiet about missed GCs
* patch public release of OSS libraries; catch up sbt
5.3.6 2012-07-26
* Fix temporary file name generation
5.3.0 2012-06-25
* util-jvm: start timer thread in 'daemon' mode
5.2.0 2012-06-14
* JVM CPU profiler
* util-jvm: fix for JDK 7
5.1.2 2012-06-07
* fix documentation
* util-jvm: gc monitoring
* Kill com.twitter.concurrent.Channel
5.0.4 2012-06-01
* Upgrade scala to 2.9.2
* Java compatibility: void -> voided
4.0.1
* added AsyncQueue
* config:validate optional subconfigs
* util-zk: allow multiple session event listeners, fix AsyncCallbackPromise
exception handling, misc fixes
* offer: deprecate apply()
* propagate cancellation exception when Timer.doAt future is cancelled
* KetamaDistributor optionally preserves a floating point truncation
* Timer uses daemon thread by default
* Future.monitor: release reference to promise when it's satisfied
* Future: misc Java compatibility fixes
* Eval.scala: Allow @deprecated
* util-logging: Add LoggerFactory
* Util: Add util-class-preloader (classfile preloading), util-jvm
(access to performance counters)
* Future: divorce from TryLike hierarchy
* LogRecord: use MessageFormat
* Time: Treat MaxValue specially in TimeMod.{add,sub}
3.0.0 2012-03-14
* AsyncSemaphore: allow parameterizing maximum queue size
* Logging: scribe handlers may now be named "scribe"
* Logging: Always make sure Level is initialized before being
able to refer to Logger.
* Offer/Broker: simpler, more flexible implementation
* Config: Config.optional results in lazy evaluation
2.0.0 2012-02-27
* NetUtil: optimize ipv4 address parsing
* upgrade to Guava r11
1.12.13 2012-02-13
* NetUtil: Add inetAddressToInt, isInetAddressInBlock, isInetAddressInBlocks
* Future tracer: fix bug where double proxied exceptions fail
* add "ExceptionalFunction0" for easier use from Java
* Locals: many optimizations to reduce allocations caused by saving
and restoring contexts
1.12.12 2012-01-24
* util-zk-common: Asynchronous wrappers for common ServerSets.
* IVar.unget: only remove closures by object equality
* Offer.choose: use nanoseconds for random seed
* Future.const - builds a constant Future from an existing Try
1.12.9 2012-01-05
* ThreadPoolFactories are named by default
* Offer: ensure ObjectOrder is independent of Object#hashCode
* new package: util-zk: asynchronous bindings to ZooKeeper
1.12.7 2011-12-02
* Future: temporarily disabling default usage of the AsmTracer
1.12.6 2011-12-01
* Future: all helper methods now have Java-friendly equivalents
that take Lists.
1.12.5 2011-11-29
* Config: recompile configs based on hash instead of timestamp, add
memoization
* Timer: make JavaTimer more resilient, log errors
* FuturePool: Fixed race condition in FuturePool where work that was
cancelled would not clean up after itself
* Function: Add ExceptionalFunction type to allow Java to throw
checked exceptions.
* Futures: trace dispatch "stack", supplying it as a stack trace for
exceptions, implement "transform", "transformedBy" to allow for a
more imperative control flow when used from Java.
* Monitors: composable widgets for handling exceptions
1.12.4 2011-11-09
* Files.delete has to follow symlinks because jdk6 support
for symlinks is weaksauce
* properly handle cancellation in FuturePool
* Locals: ensure ``Local'' is fully initialized before registering
1.12.3 2011-11-08
* add some docs to Offer, Time
* util.io.Files: file utilities, documentation for TempFile
* Offer/Broker: explicit return types for Java compat.
1.12.2 2011-10-28
* Json thrift deserializer
* Finagle: count pending timeouts
* Fix eval precompile bug
1.12.0 2011-10-21
* util.Config.Specified now delays evaluation of specified value, to
ensure evaluation happens in correct dependency order, rather than
in class-hierarchy order. This change is mostly source compatible,
unless you have directly used the Specified class.
1.11.9 2011-10-14
* ivar/future: provide "TCE", per-thread scheduling, and
promise squashing
* logger: restore original logging level after modifying them
* u64: fix
* filehandler: thread-visibility
* eval: fix mtime invalidation
* base64 encoder: make it threadsafe
1.11.8 2011-10-04
* Back out TCE for ivar/futures. This introduced a space
leak and will be fixed momentarily.
* FuturePool: Catch any exception thrown by executor.submit()
and return as a Future.exception
1.11.7 2011-09-28
* ivar/future: provide "TCE", per-thread scheduling, and
promise squashing
* util-core: add bijection
* util: Time.now is now measured at nanosecond granularity
instead of millisecond.
* futurepool: don't attempt to perform work for Futures
that are cancelled
1.11.2 2011-08-12
* offer: use Int.compare instead of subtraction to avoid
integer overflow in ObjectOrder
* offer: accept an empty offer list. this is just Offer.never
* Eval: persistent compilation targets
1.11.1 2011-08-05
* offer/broker: fixes, simplifications - gets rid of thunked
values on sends. removing the infrastructure required to
support this led to significant simplification. lock the
correct objects for broker events. don't try to resolve
identical objects in lock order.
* offer: java support
* hashing: actually return 64bit values from the 64bit hash
functions; tests
1.11.0 2011-08-02
* Introduce new util-codec module to contain various codecs.
Primarily so that it can depend on apache commons-codec 1.5
for base64 improvements over the sun one.
1.10.4 2011-07-29
* Added TestLogging specs helper to util-logging.
* Spools: like scala streams, but with deferred tails.
1.10.3 2011-07-27
* add GZip string encoder
1.10.2 2011-07-18
* Maintain a map of already visited objects incase someone
creates a circular of config objects.
* Make Duration hashable.
* Promise.on{Success, Failure}: returned chained future.