duchien85 / kryo

Automatically exported from code.google.com/p/kryo
BSD 3-Clause "New" or "Revised" License
0 stars 0 forks source link

Release 2.22 #133

Closed GoogleCodeExporter closed 9 years ago

GoogleCodeExporter commented 9 years ago
The 2.22-SNAPSHOT version of Kryo is in the wild since quite some time. There 
is an increasing number of demands from users to release Kryo 2.22 (see 
https://groups.google.com/forum/?fromgroups=#!topic/kryo-users/QI_L_t939_o). 
The list of those users includes such projects like Apache Hive, Chill and many 
others.

We waited so long because we wanted to be very careful with releasing 2.22 as 
it contains a lot of changes.
Below are some arguments regarding releasing 2.22.

Pros:
- 2.22 introduces new Unsafe-based  IO streams, which are much faster than 
usual IO streams  (this approach is already ported from Kryo into Avro and 
Hazelcast 3.0)
- 2.22 introduces a new Unsafe-based FieldSerializer and array serializers, 
which are much faster than the old Kryo serializers (this approach is already 
ported from Kryo into Avro and Hazelcast 3.0)
- 2.22 introduces support for serializing very fast and direcy into the 
off-heap memory
- A lot of reported issues were fixed

Cons:
- There are very many significant changes in the Kryo code-based since 2.21. A 
lot of re-factoring was done. I lot of new code was added. The amount of 
changes is much bigger than it was usually the case
- Unsafe-based improvements seems to be pretty stable, but are not widely 
tested in the wild by Kryo users yet.
- Documentation for the new Unsafe-based Kryo mechanisms does not exist yet 
(only JavaDocs)
- issue 115 (https://code.google.com/p/kryo/issues/detail?id=115) seems to be a 
serious bug, which I'd like to be fixed before releasing
- shaded and OSGI packaging issues are not solves yet, IIRC

Having said all that I also realize that many people won't test any new 
features until they are provided by an official release of Kryo, because only a 
few are brave enough to experiment with latest snapshots. And when going into 
production, almost nobody wants to use snapshot versions. Therefore, the only 
way to spread the new features and get them tested is to provide a release 
containing them.

The proposal on the mailing list was to release one (or two) Release Candidates 
and then rather soon the 2.22 version. In the final version the docs should be 
updated (including the project home page), OSGI and shaded issues should be 
solved. Issue #115 should be fixed, if possible.

To distribute the work, it would be nice if Leo and Martin get permissions to 
edit the home page/Wiki of the project.

@Nate: Are you there? Haven't seen you on the mailing list since a while.  We 
are waiting for your blessing! :-) And we cannot proceed without proper 
permissions anyway ...

Cheers,
  -Leo

Original issue reported on code.google.com by romixlev on 11 Sep 2013 at 6:57

GoogleCodeExporter commented 9 years ago
Nate has built 2.22 and uploaded to google code downloads. I just pushed 2.22 
to sonatype so it will be in maven central in a few hours. svn tag is also 
created.

Original comment by martin.grotzke on 30 Sep 2013 at 9:49

GoogleCodeExporter commented 9 years ago
I updated the home page of the project with info about the 2.22 release. 
Some information about Unsafe IO was added. In addition, more links to Maven 
repos and examples of pom.xml dependencies were provided.

Original comment by romixlev on 2 Oct 2013 at 2:31

GoogleCodeExporter commented 9 years ago

Original comment by romixlev on 2 Oct 2013 at 2:32