Releases: twitter/bijection
0.7.0 Bijection, now for 2.11
- Added thrift json injections: #172
- Make almost all the case classes extend AnyVal: #178
- Fix ImplicitBijection issue: #177
- Update jackson-mapper-asl to version 1.9.2: #155
- Moves to 2.10.x as the default and to scalatest: #176
- Fix some bugs in ModDivInjections: #175
- Add compression support to bijection-avro: #174
- Injections from jodatime LocalDate / LocalTime / YearMonth / MonthDay to String: #171
Bump some deps/docs/formatting
Version 0.6.2
- Added json4s to project aggregate: #161
Version 0.6.1
Better Bufferable and Avro
- Update Avro: #147
- Fix a thread-safety bug with collection Bufferables: #150
- Add Boolean support for Bufferable: #151
Special thanks to Mansoor Ashraf for his work on Avro.
Follow him @mansoor_Ashraf
Love for HBase
Bijection 0.5.3, w/ Joda, Avro and Hbase
Binary compatible version bump here. We did lose bijection-algebird
; it's moved over to algebird
as algebird-bijection
, simply because the Algebird library is moving faster.
Here's a link to our updated API documentation: https://twitter.github.com/bijection
Issues Closed
Bijection 0.5.2
Tiny release to fix a build.
- remove withSources: #132
Bijection 0.5.1
"Bridging the Future Gap"
Injection.invert returns Try
Ever wonder why you could not invert a value? We now support encoding some failure information using Try.
The injection trait becomes approximately:
trait Injection[A, B] extends Serializable { self =>
def apply(a: A): B
def invert(b: B): Try[A]
}
This means we dropped support for 2.9.2 and publish for 2.9.3 and 2.10. This was work by @softprops in #120
Future/Try Bijections
Many users have existing code using Twitter Futures and Twitter Trys and want to easily interoperate with less boilerplate. @mosesn contributed #121 to do just that. Use:
In the bijection-util jar.
Injection and Bijection no longer subclass Function
For the typeclass pattern we use, we need to be able to make injection and bijection objects implicitly available, but if they subclass function that makes them implicit conversions in Scala's eyes: not what we intended. We added an implicit conversion to function, so any old source should work as long as it was not using this unintended "feature".
Codec[T]
type alias for Injection[T, Array[Bytes]]
We often use Injections for serialization. This makes that code a bit more readable. The alias is in the package object.
Issues Closed
- Either Injections: #120
- Bijection from BigInt -> BigInteger: #122
- copy base64 impl, remove commons-codec dep: #123
- bijection/injection no longer extend fn: #124
- Bijection between scala/twitter future & try: #121
- Add Codec type alias: #118
- Remove call-by-name on future and try in bijection-util: #114
- Fix TBinaryProtocol bug in bijection-scrooge: #117
- Add OSGi Metadata to all jars: #113
###Contributors
- Oscar Boykin (@johnynek)
- Sam Ritchie (@sritchie)
- Doug Tangren (@softprops)
- Moses Nakamura (@mosesn)
- Kevin Lin (@reconditesea)
- Michael Pilquist (@mpilquist)