Skip to content
Commits on Source (2)
  • Tony Mancill's avatar
    Import Upstream version 1.8.2 · 4c72065d
    Tony Mancill authored
    4c72065d
  • Sudip Mukherjee's avatar
    Import Debian changes 1.8.2-1 · 5d1b6b4d
    Sudip Mukherjee authored and Tony Mancill's avatar Tony Mancill committed
    avro-java (1.8.2-1) unstable; urgency=medium
    
      * Team upload.
      * Update to upstream v1.8.2,
      * Update watch file to track github,
      * Exclude binary files from source,
      * Update Standards-Version to 4.4.1.
      * Update compat level to 12.
      * Update Vcs to salsa.
      * Update copyright.
      * Install Notice.
      * Add Rules-Requires-Root: no.
    5d1b6b4d
# Licensed to the Apache Software Foundation (ASF) under one or more
# contributor license agreements. See the NOTICE file distributed with
# this work for additional information regarding copyright ownership.
# The ASF licenses this file to You under the Apache License, Version 2.0
# (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
root = true
[*]
charset = utf-8
end_of_line = lf
insert_final_newline = true
[*.{java,xml,sh}]
indent_style = space
indent_size = 2
trim_trailing_whitespace=true
#[*.scala]
#indent_style = space
#indent_size = 2
#[*.py]
#indent_style = space
#indent_size = 4
*.iml
*.ipr
*.iws
*.swp
*~
.idea/
.project
.settings
.classpath
......
......@@ -21,9 +21,25 @@ The following packages must be installed before Avro can be built:
- Apache Forrest 0.8 (for documentation)
- md5sum, sha1sum, used by top-level dist target
To simplify this, you can run a Docker container with all the above
dependencies installed by installing docker.io and typing:
./build.sh docker
When this completes you will be in a shell running in the
container. Building the image the first time may take a while (20
minutes or more) since dependencies must be downloaded and
installed. However subsequent invocations are much faster as the
cached image is used.
The working directory in the container is mounted from your host. This
allows you to access the files in your Avro development tree from the
Docker container.
BUILDING
Once the requirements are installed, build.sh can be used as follows:
Once the requirements are installed (or from the Docker container),
build.sh can be used as follows:
'./build.sh test' runs tests for all languages
'./build.sh dist' creates all release distribution files in dist/
......
Avro Change Log
Avro 1.8.2 (10 April 2017)
INCOMPATIBLE CHANGES
NEW FEATURES
AVRO-1704: Java: Add support for single-message encoding. (blue)
AVRO-1704: Spec: Add single-message encoding format. (Niels Basjes via blue)
AVRO-1884: Java: Add method to set the compiler output suffix.
(shijinkui via blue)
AVRO-1932: Java: Allow setting the SchemaStore on generated classes.
(Niels Basjes)
OPTIMIZATIONS
IMPROVEMENTS
AVRO-1889: Update maven-shade-plugin to enable building in Java 8 on Mac.
(Sachin Goyal via blue)
AVRO-1895. Java: Fix GenericData#deepCopy() to support logical types.
(cutting)
AVRO-1719: C++: Fix tests with Boost >= 1.59. (Romain Geissler via blue)
AVRO-1879: Make conversions field static. (Michael Wong via blue)
AVRO-1919: Formalize the presence of build.sh. (Suraj Acharya via cutting)
AVRO-1918: Improve logical type documentation. (Gabor Szadovszky via cutting)
AVRO-1907: Java: Add debug logging for invalid logical types.
(Gabor Szadovszky via blue)
AVRO-1897: Fix build issues due to VERSION.txt newline, avro-tools.
(Suraj Acharya via blue)
BUG FIXES
AVRO-1741: Python3: Fix error when codec is not in the header.
(Matthew Hayes via blue)
AVRO-1869: Java: Fix Decimal conversion from ByteBuffer. (blue)
AVRO-607: Java: Make SpecificData schema cache thread-safe.
(Andrius Druzinis-Vitkus via blue)
AVRO-1888: Java: Fix single-record encoding marker check. (blue)
AVRO-1848: Ruby: Fix handling of falsey default values.
(Brian McKelvey via blue)
AVRO-1874: Py3: Use recommended module-level logging.
(Torgeir Børresen via blue)
AVRO-1883: Java: Fix incompatible schema detection nested in unions.
(Yibing Shi via blue)
AVRO-1908: Fix TestSpecificCompiler reference to private method.
(blue)
AVRO-1873: Ruby: Add CRC32 checksum to Snappy-compressed blocks.
(blue)
AVRO-1900: Java: Remove dev-tools to fix Java build. (blue)
AVRO-1913: No warnings in the generated Java code. (Niels Basjes)
AVRO-1914: Fix licencing errors reported by rat. (Niels Basjes)
AVRO-1901: Record named "Exception" generated bad code.
(Radai Rosenblatt via Niels Basjes)
AVRO-1849: C++: printJson fails on record with no fields.
(Simon Woodford vai tomwhite)
AVRO-1853: C++: Compiler::toBin crashes on empty string.
(Zoltan Ivanfi via tomwhite)
AVRO-1923, AVRO-1944: Stop infinite recursion in GenericData.toString. (Niels Basjes)
AVRO-1860: Java: Field#DefaultVal() returns Ints for Long fields.
(Gabor Szadovszky via cutting)
AVRO-1929: Java: SchemaCompatibility fails to recognize
string<->bytes promotion. (Anders Sundelin via cutting)
AVRO-1882: Java: Fix ConcurrentHashMap with non-string keys.
(Sachin Goyal via blue)
AVRO-1943: Java: Flaky test:
TestNettyServerWithCompression.testConnectionsCount
(Gabor Szadovszky via tomwhite)
AVRO-1947: Java: Inconsistent maven profile activation
(Gabor Szadovszky via tomwhite)
AVRO-1951: Python: Fix ipc_test.py with a valid DNS name. (blue)
AVRO-1987: Add @deprecated tag to getConverion method
(Suraj Acharya via gabor)
AVRO-1813: Incorrect link to build instructions in Java Getting Started (Pietro Menna via gabor)
Avro 1.8.1 (14 May 2016)
INCOMPATIBLE CHANGES
NEW FEATURES
OPTIMIZATIONS
IMPROVEMENTS
AVRO-1793. Python2: Retain stack trace and original exception when failing
to parse schemas. Contributed by Jakob Homan (jghoman).
AVRO-1778: JavaScript: Add IPC/RPC support. (mtth)
AVRO-1824: C++: Fix docs for building Avro C++. (William S. Fulton via blue)
AVRO-1701: Fix for "warning: comparison between 'const enum testgen_r::ExampleEnum' and 'const enum testgen::ExampleEnum'" (peter liu via thiru)
AVRO-1823: Java: Do not swallow IOException while reading magic bytes.
(Koji Noguchi via blue)
AVRO-1825: Allow running build.sh dist under git (nielsbasjes)
AVRO-1819, AVRO-1820: Java: Add aliases, custom properties to Protocol.
(Konstantin Usachev via blue)
AVRO-1834: Lower the Javadoc warnings on the generated code. (nielsbasjes)
AVRO-1835: Running tests using JDK 1.8 complains about MaxPermSize (nielsbasjes)
AVRO-1828: Add EditorConfig file and cleanup of whitespace violations (nielsbasjes)
AVRO-1839: Update the gitignore files to hide generated files (nielsbasjes)
AVRO-1840: Ensure that build.sh clean really cleans all generated files (nielsbasjes)
AVRO-1841: Add clientside githooks to do basic commit validation (nielsbasjes)
AVRO-1807: Java/JSON: Throw for unsupported objects rather than ignoring. (blue)
BUG FIXES
AVRO-1493. Java: Avoid the "Turkish Locale Problem". Schema fingerprints are
now consistent regardless of the environment's locale.
AVRO-1799: Fix GenericRecord#toString ByteBuffer handling. (blue)
AVRO-1667: Fix parser grammar flattening for recursive cases.
(Zoltan Farkas via blue)
AVRO-1829. C++ documentation improvements (William S Fulton via thiru)
AVRO-1821: Java: Fix possible memory leak in ReflectData accessor cache.
(Bryan Harclerode via blue)
AVRO-1642: Java: Do not generate invalid all-args constructor.
(Prateek Rungta and Barry Jones via blue)
AVRO-1826: build.sh rat fails over extra license files and many others (nielsbasjes).
AVRO-1814: Generated java code fails on variables with a TLD name like 'org' (nielsbasjes)
AVRO-1711: Java: Fix JsonParser#skipChildren to implement its defined contract.
(Zoltan Farkas and Thiruvalluvan M. G. via blue)
Avro 1.8.0 (22 January 2016)
INCOMPATIBLE CHANGES
AVRO-1334. Java: Update versions of many dependencies. (scottcarey, cutting)
AVRO-997. Java: For enum values, no longer sometimes permit any
Object whose toString() names an enum symbol, but rather always
require use of distinct enum types. (Sean Busbey via cutting)
AVRO-1602. Java: Remove Dapper-style RPC trace facility. This
seems unused and has been a source of build problems. (cutting)
AVRO-1586. Build against Hadoop 2. With this change the avro-mapred and
trevni-avro JARs without a hadoop1 or hadoop2 Maven classifier are Hadoop 2
artifacts. To use with Hadoop 1, set the classifier to hadoop1.
(tomwhite)
AVRO-1502. Java: Generated classes now implement Serializable.
Generated classes need to be regenerated to use this release. (cutting)
NEW FEATURES
AVRO-1555. C#: Add support for RPC over HTTP. (Dmitry Kovalev via cutting)
AVRO-739. Add date, time, timestamp, and duration binary types to
specification. (Dmitry Kovalev and Ryan Blue via tomwhite)
AVRO-1590. Java: In resolving records in unions, permit structural
and shortname matches when fullname matching fails.
(Ryan Blue via cutting)
AVRO-570. Python: Add connector for tethered mapreduce.
(Jeremy Lewi and Steven Willis via cutting)
AVRO-834. Java: Data File corruption recovery tool.
(scottcarey and tomwhite)
AVRO-1614. Java: In generated builder classes, add accessors to
field sub-builders, permitting easier creation of nested, optional
structures. (Niels Basjes via cutting)
AVRO-1537. Make it easier to set up a multi-language build environment.
Support for running a Docker container with all build dependencies.
(tomwhite)
AVRO-680. Java: Support non-string map keys. (Sachin Goyal via Ryan Blue).
AVRO-1497. Java: Add support for logical types. (blue)
AVRO-1685. Java: Allow specifying sync in DataFileWriter.create
(Sehrope Sarkuni via tomwhite)
AVRO-1683. Add microsecond time and timestamp logical types to the
specification. (blue)
AVRO-1672. Java: Add date/time logical types and conversions. (blue)
AVRO-1747. JS: Add Javascript IO implementation. (Matthieu Monsch via blue)
AVRO-1767. JS: Fall back to unwrapped union values. (Matthieu Monsch via blue)
AVRO-1784. C++: Should have a json encoder that pretty prints. (John McClean via thiru)
OPTIMIZATIONS
AVRO-1760. Java: Thread scalability problem with the use of SynchronizedMap
(tomwhite)
IMPROVEMENTS
AVRO-843. C#: Change Visual Studio project files to specify .NET 3.5.
(Dmitry Kovalev via cutting)
AVRO-1583. Java: Add stdin support to the tojson tool.
(Clément Mahtieu via cutting)
AVRO-1551. Java: Add an output encoding option to the compiler
command line tool. (Keegan Witt via cutting)
AVRO-1585. Java: Deprecate Jackson classes in public API. (tomwhite)
AVRO-1619. Java: Improve javadoc comments in generated code.
(Niels Basjes via cutting)
AVRO-1616. Add IntelliJ files to .gitignore. (Niels Basjes via cutting)
AVRO-1539. Java: Add FileSystem based FsInput constructor.
(Allan Shoup via cutting)
AVRO-1628. Java: Add Schema#createUnion(Schema ...) convenience method.
(Clément Mahtieu via cutting)
AVRO-1655. Java: Add Schema.createRecord with field list.
(Lars Francke via blue)
AVRO-1681. Improve generated JavaDocs.
(Charles Gariépy-Ikeson via tomwhite)
AVRO-1645. Ruby: Improved handling of missing named types.
(Daniel Schierbeck via tomwhite)
AVRO-1693. Ruby: Allow writing arbitrary metadata to data files.
(Daniel Schierbeck via tomwhite)
AVRO-1692. Allow more than one logical type for a Java class. (blue via
tomwhite)
AVRO-1697. Ruby: Add support for the Snappy codec to the Ruby library.
(Daniel Schierbeck via tomwhite)
AVRO-1739. Update Avro URLs and mailing lists. (Gabor Liptak via blue)
AVRO-1765: JS: Update node.js version in docker to 4.x. (blue)
BUG FIXES
AVRO-1553. Java: MapReduce never uses MapOutputValueSchema (tomwhite)
AVRO-1544. Java: Fix GenericData#validate for unions with null.
(Matthew Hayes via cutting)
AVRO-1589. Java: Fix ReflectData.AllowNulls to not create unions
for primitive types. (Ryan Blue via cutting)
AVRO-1591. Java: Fix specific RPC so that proxies implement hashCode(),
equals() and toString(). (Mark Spadoni via cutting)
AVRO-1489. Java: Avro fails to build with OpenJDK 8. (Ricardo Arguello via
tomwhite)
AVRO-1302. Python: Update documentation to open files as binary to
prevent EOL substitution. (Lars Francke via cutting)
AVRO-1598. Java: Fix flakiness in TestFileSpanStorage.
(Ryan Blue via cutting)
AVRO-1592. Java: Fix handling of Java reserved words as enum
constants in generated code. (Lukas Steiblys via cutting)
AVRO-1597. Java: Random data tool writes corrupt files to standard out.
(cutting)
AVRO-1596. Java: Cannot read past corrupted block in Avro data file.
(tomwhite)
AVRO-1564. Java: Fix handling of optional byte field in Thrift.
(Michael Pershyn via cutting)
AVRO-1407: Java: Fix infinite loop on slow connect in NettyTransceiver.
(Gareth Davis via cutting)
AVRO-1604. Java: Fix ReflectData.AllowNull to work with @Nullable
annotations. (Ryan Blue via cutting)
AVRO-1545. Python. Fix to retain schema properties on primitive types.
(Dustin Spicuzza via cutting)
AVRO-1623. Java: Fix GenericData#validate to correctly resolve unions.
(Jeffrey Mullins via cutting)
AVRO-1621. PHP: FloatIntEncodingTest fails for NAN. (tomwhite)
AVRO-1573. Javascript. Upgrade to Grunt 0.4 for testing. (tomwhite)
AVRO-1624. Java. Surefire forkMode is deprecated. (Niels Basjes via
tomwhite)
AVRO-1630. Java: Creating Builder from instance loses data. (Niels Basjes
via tomwhite)
AVRO-1653. Fix typo in spec (lenghted => length). (Sehrope Sarkuni via blue)
AVRO-1656. Fix 'How to Contribute' link. (Benjamin Clauss via blue)
AVRO-1652. Java: Do not warn or validate defaults if validation is off.
(Michael D'Angelo via blue)
AVRO-1655. Java: Fix NPE in RecordSchema#toString when fields are null.
(Lars Francke via blue)
AVRO-1689. Update Dockerfile to use official Java repository. (tomwhite)
AVRO-1576. TestSchemaCompatibility is platform dependant.
(Stevo Slavic via tomwhite)
AVRO-1688. Ruby test_union(TestIO) is failing. (tomwhite)
AVRO-1673. Python 3 EnumSchema changes the order of symbols.
(Marcin Białoń via tomwhite)
AVRO-1491. Avro.ipc.dll not included in release zip/build file.
(Dmitry Kovalev via tomwhite)
AVRO-1676. Java: Do not treat enum symbols as immutable when deep copying.
(Mike Rodriguez via tomwhite)
AVRO-1593. C++: Use classic locale to escape control chars.
(Hatem Helal via blue)
AVRO-1700. C++: Fix avro_BufferStreambuf_hh__ header guard.
(Liu Yanbo via blue)
AVRO-1715. Java: Close files opened by the Schema parser.
(Pavel Safrata via blue)
AVRO-1729: Ruby: Add LICENSE and NOTICE to ruby gems. (blue)
AVRO-1732: C++: Add LICENSE and NOTICE to binary distribution. (blue)
AVRO-1733: C#: Add LICENSE and NOTICE to binary distribution. (blue)
AVRO-1755. Java: avro-mapred should not depend on avro-ipc:test.
(Clément MAHTIEU via tomwhite)
AVRO-1754. C++ ValiditingDecoder handles null incorrectly. (John McClean via thiru)
AVRO-1731: C: Add LICENSE and NOTICE to binary distribution. (blue)
AVRO-1735: Perl: Add LICENSE and NOTICE to distribution. (blue)
AVRO-1736: PHP: Add LICENSE and NOTICE to distribution. (blue)
AVRO-1730: Python 2, 3: Add LICENSE and NOTICE to distribution. (blue)
AVRO-1722: Update root LICENSE.txt and NOTICE.txt. (blue)
AVRO-1584: Java: Escape characters not allowed in JSON in toString. (blue)
AVRO-1728: Java: Add LICENSE and NOTICE files to jars. (blue)
AVRO-1572: C: Fix EOF handling on data files that are multiples of
4096 bytes. (Ben Walsh via martinkl)
AVRO-1617: C: Fix equality checking of record schemas. (Skye
Wanderman-Milne via martinkl)
AVRO-1560: C: Fix build for custom libsnappy location. (Ujjwal via martinkl)
AVRO-1770. Python 3 overwrites custom README.txt (blue via tomwhite)
AVRO-1771. Add LICENSE and NOTICE to avro-doc artifact. (blue via tomwhite)
AVRO-1772. Ruby: load error in rubygem when loading schema normalization.
(blue and martinkl via tomwhite)
AVRO-1725. Docs: clarify restrictions on enum symbols. (martinkl)
AVRO-1779. Avro docs convenience artifact missing LICENSE/NOTICE.
(blue via tomwhite)
AVRO-1781. Java: Fix Schema.parse thread safety bug introduced by logical
types. (blue)
AVRO-1782. Ruby: Fix unit test failures in new versions of Ruby. (martinkl)
AVRO-1769. C: Use operating system's libjansson instead of bundling
it with Avro. (Magnus Edenhill via martinkl)
AVRO-1691. C: Allow schemas consisting only of a primitive type.
(Magnus Edenhill via martinkl)
AVRO-1663. C: Fix handling of namespaces for enum and fixed types.
(martinkl)
AVRO-1775. Ruby: Use test-unit gem for running tests. (martinkl)
AVRO-1783. Ruby: Ensure correct binary encoding for byte strings.
(martinkl)
Avro 1.7.7 (23 July 2014)
NEW FEATURES
......
This diff is collapsed.
Apache Avro
Copyright 2010 The Apache Software Foundation
Copyright 2010-2015 The Apache Software Foundation
This product includes software developed at
The Apache Software Foundation (http://www.apache.org/).
C JSON parsing provided by Jansson and
written by Petri Lehtinen. The original software is
available from http://www.digip.org/jansson/.
NUnit license acknowledgement:
| Portions Copyright © 2002-2012 Charlie Poole or Copyright © 2002-2004 James
| W. Newkirk, Michael C. Two, Alexei A. Vorontsov or Copyright © 2000-2002
| Philip A. Craig
Based upon the representations of upstream licensors, it is understood that
portions of the mapreduce API included in the Java implementation are licensed
from various contributors under one or more contributor license agreements to
Odiago, Inc. and were then contributed by Odiago to Apache Avro, which has now
made them available under the Apache 2.0 license. The original file header text
is:
| Licensed to Odiago, Inc. under one or more contributor license
| agreements. See the NOTICE file distributed with this work for
| additional information regarding copyright ownership. Odiago, Inc.
| licenses this file to you under the Apache License, Version 2.0
| (the "License"); you may not use this file except in compliance
| with the License. You may obtain a copy of the License at
|
| http://www.apache.org/licenses/LICENSE-2.0
|
| Unless required by applicable law or agreed to in writing, software
| distributed under the License is distributed on an "AS IS" BASIS,
| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
| implied. See the License for the specific language governing
| permissions and limitations under the License.
The Odiago NOTICE at the time of the contribution:
| This product includes software developed by Odiago, Inc.
| (http://www.wibidata.com).
Apache Ivy includes the following in its NOTICE file:
| Apache Ivy
| Copyright 2007-2010 The Apache Software Foundation
|
| This product includes software developed by
| The Apache Software Foundation (http://www.apache.org/).
|
| Portions of Ivy were originally developed by
| Jayasoft SARL (http://www.jayasoft.fr/)
| and are licensed to the Apache Software Foundation under the
| "Software Grant License Agreement"
|
| SSH and SFTP support is provided by the JCraft JSch package,
| which is open source software, available under
| the terms of a BSD style license.
| The original software and related information is available
| at http://www.jcraft.com/jsch/.
Apache Log4Net includes the following in its NOTICE file:
| Apache log4net
| Copyright 2004-2015 The Apache Software Foundation
|
| This product includes software developed at
| The Apache Software Foundation (http://www.apache.org/).
......@@ -6,4 +6,4 @@ Learn more about Avro, please visit our website at:
To contribute to Avro, please read:
https://cwiki.apache.org/AVRO/how-to-contribute.html
https://cwiki.apache.org/confluence/display/AVRO/How+To+Contribute
......@@ -22,7 +22,7 @@ cd `dirname "$0"` # connect to root
VERSION=`cat share/VERSION.txt`
function usage {
echo "Usage: $0 {test|dist|sign|clean}"
echo "Usage: $0 {test|dist|sign|clean|docker|rat|githooks}"
exit 1
}
......@@ -35,21 +35,22 @@ set -x # echo commands
for target in "$@"
do
case "$target" in
test)
# run lang-specific tests
(cd lang/java; mvn test)
(cd lang/py; ant test)
(cd lang/py3; python3 setup.py test)
(cd lang/java; ./build.sh test)
# install java artifacts required by other builds and interop tests
mvn install -DskipTests
(cd lang/py; ./build.sh test)
(cd lang/py3; ./build.sh test)
(cd lang/c; ./build.sh test)
(cd lang/c++; ./build.sh test)
(cd lang/csharp; ./build.sh test)
(cd lang/js; ./build.sh test)
(cd lang/ruby; ./build.sh test)
(cd lang/php; ./build.sh test)
(cd lang/perl; perl ./Makefile.PL && make test)
(cd lang/perl; ./build.sh test)
# create interop test data
mkdir -p build/interop/data
......@@ -72,7 +73,6 @@ case "$target" in
(cd lang/java; mvn package -DskipTests)
# run interop rpc test
/bin/bash share/test/interop/bin/test_rpc_interop.sh
;;
dist)
......@@ -84,9 +84,20 @@ case "$target" in
mkdir -p build
SRC_DIR=avro-src-$VERSION
DOC_DIR=avro-doc-$VERSION
rm -rf build/${SRC_DIR}
if [ -d .svn ];
then
svn export --force . build/${SRC_DIR}
elif [ -d .git ];
then
mkdir -p build/${SRC_DIR}
git archive HEAD | tar -x -C build/${SRC_DIR}
else
echo "Not SVN and not GIT .. cannot continue"
exit -1;
fi
#runs RAT on artifacts
mvn -N -P rat antrun:run
......@@ -96,13 +107,12 @@ case "$target" in
# build lang-specific artifacts
(cd lang/java; mvn package -DskipTests -Dhadoop.version=2; rm -rf mapred/target/classes/;
mvn -P dist package -DskipTests -Davro.version=$VERSION javadoc:aggregate)
(cd lang/java;./build.sh dist; mvn install -pl tools -am -DskipTests)
(cd lang/java/trevni/doc; mvn site)
(mvn -N -P copy-artifacts antrun:run)
(cd lang/py; ant dist)
(cd lang/py3; python3 setup.py sdist; cp -r dist ../../dist/py3)
(cd lang/py; ./build.sh dist)
(cd lang/py3; ./build.sh dist)
(cd lang/c; ./build.sh dist)
......@@ -117,18 +127,21 @@ case "$target" in
(cd lang/php; ./build.sh dist)
mkdir -p dist/perl
(cd lang/perl; perl ./Makefile.PL && make dist)
(cd lang/perl; ./build.sh dist)
cp lang/perl/Avro-$VERSION.tar.gz dist/perl/
# build docs
(cd doc; ant)
(cd build; tar czf ../dist/avro-doc-$VERSION.tar.gz avro-doc-$VERSION)
# add LICENSE and NOTICE for docs
mkdir -p build/$DOC_DIR
cp doc/LICENSE build/$DOC_DIR
cp doc/NOTICE build/$DOC_DIR
(cd build; tar czf ../dist/avro-doc-$VERSION.tar.gz $DOC_DIR)
cp DIST_README.txt dist/README.txt
;;
sign)
set +x
echo -n "Enter password: "
......@@ -153,9 +166,20 @@ case "$target" in
(cd doc; ant clean)
(mvn clean)
rm -rf lang/java/*/userlogs/
rm -rf lang/java/*/dependency-reduced-pom.xml
(cd lang/py; ant clean)
rm -rf lang/py/userlogs/
(cd lang/py3; python3 setup.py clean)
rm -rf lang/py3/dist
rm -rf lang/py3/avro_python3.egg-info
rm -f lang/py3/avro/*.avsc
rm -f lang/py3/avro/VERSION.txt
rm -rf lang/py3/avro/__pycache__/
rm -f lang/py3/avro/tests/interop.avsc
rm -rf lang/py3/avro/tests/__pycache__/
(cd lang/c; ./build.sh clean)
......@@ -169,7 +193,47 @@ case "$target" in
(cd lang/php; ./build.sh clean)
(cd lang/perl; [ -f Makefile ] && make clean)
(cd lang/perl; ./build.sh clean)
;;
docker)
docker build -t avro-build share/docker
if [ "$(uname -s)" == "Linux" ]; then
USER_NAME=${SUDO_USER:=$USER}
USER_ID=$(id -u $USER_NAME)
GROUP_ID=$(id -g $USER_NAME)
else # boot2docker uid and gid
USER_NAME=$USER
USER_ID=1000
GROUP_ID=50
fi
docker build -t avro-build-${USER_NAME} - <<UserSpecificDocker
FROM avro-build
RUN groupadd -g ${GROUP_ID} ${USER_NAME} || true
RUN useradd -g ${GROUP_ID} -u ${USER_ID} -k /root -m ${USER_NAME}
ENV HOME /home/${USER_NAME}
UserSpecificDocker
# By mapping the .m2 directory you can do an mvn install from
# within the container and use the result on your normal
# system. And this also is a significant speedup in subsequent
# builds because the dependencies are downloaded only once.
docker run --rm=true -t -i \
-v ${PWD}:/home/${USER_NAME}/avro \
-w /home/${USER_NAME}/avro \
-v ${HOME}/.m2:/home/${USER_NAME}/.m2 \
-v ${HOME}/.gnupg:/home/${USER_NAME}/.gnupg \
-u ${USER_NAME} \
avro-build-${USER_NAME}
;;
rat)
mvn test -Dmaven.main.skip=true -Dmaven.test.skip=true -DskipTests=true -P rat -pl :avro-toplevel
;;
githooks)
echo "Installing AVRO git hooks."
cp share/githooks/* .git/hooks
find .git/hooks/ -type f | fgrep -v sample | xargs chmod 755
;;
*)
......
avro-java (1.8.2-1) unstable; urgency=medium
* Team upload.
* Update to upstream v1.8.2,
* Update watch file to track github,
* Exclude binary files from source,
* Update Standards-Version to 4.4.1.
* Update compat level to 12.
* Update Vcs to salsa.
* Update copyright.
* Install Notice.
* Add Rules-Requires-Root: no.
-- Sudip Mukherjee <sudipm.mukherjee@gmail.com> Mon, 06 Jan 2020 20:07:16 +0000
avro-java (1.7.7-3) unstable; urgency=medium
* Team upload.
......
......@@ -5,7 +5,7 @@ Priority: optional
Maintainer: Debian Java Maintainers <pkg-java-maintainers@lists.alioth.debian.org>
Uploaders: Emmanuel Bourg <ebourg@apache.org>
Build-Depends: ant,
debhelper (>= 10),
debhelper-compat (= 12),
default-jdk,
junit4,
libcommons-compress-java,
......@@ -24,10 +24,12 @@ Build-Depends: ant,
libxz-java,
maven-debian-helper (>= 1.5),
thrift-compiler,
velocity
Standards-Version: 4.1.0
Vcs-Git: https://anonscm.debian.org/git/pkg-java/avro-java.git
Vcs-Browser: https://anonscm.debian.org/cgit/pkg-java/avro-java.git
velocity,
libmaven-shade-plugin-java
Standards-Version: 4.4.1
Rules-Requires-Root: no
Vcs-Git: https://salsa.debian.org/java-team/avro-java.git
Vcs-Browser: https://salsa.debian.org/java-team/avro-java
Homepage: http://avro.apache.org
Package: libavro-java
......
Format: http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
Upstream-Name: Apache Avro Toplevel
Source: http://avro.apache.org
Files-Excluded: *.jar
*.dll
Files: *
Copyright: 2009-2015, The Apache Software Foundation
......@@ -10,14 +12,11 @@ Files: debian/*
Copyright: 2015, Emmanuel Bourg <ebourg@apache.org>
License: Apache-2.0
Files: lang/java/ipc/src/main/java/org/apache/avro/ipc/trace/static/g.bar.js
lang/java/ipc/src/main/java/org/apache/avro/ipc/stats/static/g.bar.js
Files: lang/java/ipc/src/main/java/org/apache/avro/ipc/stats/static/g.bar.js
Copyright: 2009, Dmitry Baranovskiy
License: MIT
Files: lang/java/ipc/src/main/java/org/apache/avro/ipc/trace/static/tipsy.js
lang/java/ipc/src/main/java/org/apache/avro/ipc/stats/static/tipsy.js
lang/java/ipc/src/main/java/org/apache/avro/ipc/trace/static/jquery.tipsy.js
Files: lang/java/ipc/src/main/java/org/apache/avro/ipc/stats/static/tipsy.js
lang/java/ipc/src/main/java/org/apache/avro/ipc/stats/static/jquery.tipsy.js
Copyright: 2008 Jason Frame <jason@onehackoranother.com>
License: MIT
......
......@@ -30,6 +30,7 @@ lang/java/pom.xml --has-package-version
lang/java/avro/pom.xml --has-package-version
lang/java/compiler/pom.xml --has-package-version --package=libavro-compiler-java
lang/java/maven-plugin/pom.xml --has-package-version --no-usj-versionless --package=libavro-maven-plugin-java
lang/java/guava/pom.xml --has-package-version --java-lib
lang/java/ipc/pom.xml --ignore
lang/java/trevni/pom.xml --ignore
lang/java/tools/pom.xml --ignore
......
......@@ -9,3 +9,4 @@ org.apache.avro trevni-java pom * * *
org.apache.maven.plugins maven-checkstyle-plugin * * * *
org.apache.maven.plugins maven-enforcer-plugin * * * *
org.apache.maven maven-core * * * test
com.github.stephenc.findbugs findbugs-annotations * * * *
......@@ -24,3 +24,4 @@ s/org.apache.maven.shared/org.apache.maven.plugin-testing/ maven-plugin-testing-
s/org.apache.maven.shared/org.apache.maven.plugin-testing/ maven-plugin-testing-tools * s/.*/debian/ * *
s/org.apache.maven.shared/org.apache.maven.plugin-testing/ maven-plugin-testing * s/.*/debian/ * *
s/org.apache.maven.shared/org.apache.maven.plugin-testing/ maven-test-tools * s/.*/debian/ * *
org.apache.maven.plugins maven-shade-plugin * s/.*/3.1.1/ * *
From: Gabor Szadovszky <gabor@apache.org>
Date: Fri, 16 Jun 2017 11:01:09 +0200
Subject: [PATCH] AVRO-2043: Move to java8
Origin: https://github.com/apache/avro/commit/f72b620b9d700cf5f2febb0022079b69b9c9577e
This closes #232
---
BUILD.txt | 2 +-
doc/examples/java-example/pom.xml | 4 ++--
doc/examples/mr-example/pom.xml | 4 ++--
doc/src/content/xdocs/gettingstartedjava.xml | 4 ++--
.../archetypes/avro-service-archetype/src/main/pom/pom.xml | 4 ++--
.../src/main/javacc/org/apache/avro/compiler/idl/idl.jj | 2 +-
lang/java/pom.xml | 4 ++--
lang/java/trevni/pom.xml | 4 ++--
share/docker/Dockerfile | 2 +-
10 files changed, 17 insertions(+), 15 deletions(-)
diff --git a/BUILD.txt b/BUILD.txt
index 7c3eea72..223bc4d0 100644
--- a/BUILD.txt
+++ b/BUILD.txt
@@ -4,7 +4,7 @@ REQUIREMENTS
The following packages must be installed before Avro can be built:
- - Java: JDK 1.6, Maven 2 or better, protobuf-compile
+ - Java: JDK 1.8, Maven 2 or better, protobuf-compile
- PHP: php5, phpunit, php5-gmp
- Python: 2.5 or greater, python-setuptools for dist target
- C: gcc, cmake, asciidoc, source-highlight
diff --git a/doc/examples/java-example/pom.xml b/doc/examples/java-example/pom.xml
index decc235d..5fe2df88 100644
--- a/doc/examples/java-example/pom.xml
+++ b/doc/examples/java-example/pom.xml
@@ -61,8 +61,8 @@
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
- <source>1.6</source>
- <target>1.6</target>
+ <source>1.8</source>
+ <target>1.8</target>
</configuration>
</plugin>
</plugins>
diff --git a/doc/examples/mr-example/pom.xml b/doc/examples/mr-example/pom.xml
index df523147..6f5b60a3 100644
--- a/doc/examples/mr-example/pom.xml
+++ b/doc/examples/mr-example/pom.xml
@@ -33,8 +33,8 @@
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
- <source>1.6</source>
- <target>1.6</target>
+ <source>1.8</source>
+ <target>1.8</target>
</configuration>
</plugin>
<plugin>
diff --git a/doc/src/content/xdocs/gettingstartedjava.xml b/doc/src/content/xdocs/gettingstartedjava.xml
index 6474ebc9..fe6c7d28 100644
--- a/doc/src/content/xdocs/gettingstartedjava.xml
+++ b/doc/src/content/xdocs/gettingstartedjava.xml
@@ -85,8 +85,8 @@
&#60;groupId&#62;org.apache.maven.plugins&#60;/groupId&#62;
&#60;artifactId&#62;maven-compiler-plugin&#60;/artifactId&#62;
&#60;configuration&#62;
- &#60;source&#62;1.6&#60;/source&#62;
- &#60;target&#62;1.6&#60;/target&#62;
+ &#60;source&#62;1.8&#60;/source&#62;
+ &#60;target&#62;1.8&#60;/target&#62;
&#60;/configuration&#62;
&#60;/plugin&#62;
</source>
diff --git a/lang/java/archetypes/avro-service-archetype/src/main/pom/pom.xml b/lang/java/archetypes/avro-service-archetype/src/main/pom/pom.xml
index 4e6ca35f..4db3b955 100644
--- a/lang/java/archetypes/avro-service-archetype/src/main/pom/pom.xml
+++ b/lang/java/archetypes/avro-service-archetype/src/main/pom/pom.xml
@@ -130,8 +130,8 @@
<artifactId>maven-compiler-plugin</artifactId>
<version>${compiler-plugin.version}</version>
<configuration>
- <source>1.6</source>
- <target>1.6</target>
+ <source>1.8</source>
+ <target>1.8</target>
</configuration>
</plugin>
</plugins>
diff --git a/lang/java/compiler/src/main/javacc/org/apache/avro/compiler/idl/idl.jj b/lang/java/compiler/src/main/javacc/org/apache/avro/compiler/idl/idl.jj
index 7d05db80..42132101 100644
--- a/lang/java/compiler/src/main/javacc/org/apache/avro/compiler/idl/idl.jj
+++ b/lang/java/compiler/src/main/javacc/org/apache/avro/compiler/idl/idl.jj
@@ -53,7 +53,7 @@ options {
ERROR_REPORTING = true;
STATIC = false;
FORCE_LA_CHECK = true;
- JDK_VERSION = "1.6";
+ JDK_VERSION = "1.8";
}
PARSER_BEGIN(Idl)
diff --git a/lang/java/pom.xml b/lang/java/pom.xml
index 70c86931..74e71a44 100644
--- a/lang/java/pom.xml
+++ b/lang/java/pom.xml
@@ -165,8 +165,8 @@
<artifactId>maven-compiler-plugin</artifactId>
<version>${compiler-plugin.version}</version>
<configuration>
- <source>1.6</source>
- <target>1.6</target>
+ <source>1.8</source>
+ <target>1.8</target>
</configuration>
</plugin>
<plugin>
diff --git a/lang/java/trevni/pom.xml b/lang/java/trevni/pom.xml
index 13e64989..ffca08a1 100644
--- a/lang/java/trevni/pom.xml
+++ b/lang/java/trevni/pom.xml
@@ -56,8 +56,8 @@
<artifactId>maven-compiler-plugin</artifactId>
<version>${compiler-plugin.version}</version>
<configuration>
- <source>1.6</source>
- <target>1.6</target>
+ <source>1.8</source>
+ <target>1.8</target>
</configuration>
</plugin>
<plugin>
diff --git a/share/docker/Dockerfile b/share/docker/Dockerfile
index 01760554..f9741674 100644
--- a/share/docker/Dockerfile
+++ b/share/docker/Dockerfile
@@ -17,7 +17,7 @@
# Dockerfile for installing the necessary dependencies for building Avro.
# See BUILD.txt.
-FROM java:7-jdk
+FROM java:8-jdk
WORKDIR /root
--
2.20.1
Description: Avro uses commons-compress 1.4.1 but Debian has a more recent
version where the dependency on xz is optional, thus the dependency must
be added explicitly. This patch can be removed once Avro upgrades
to commons-compress 1.8.1 or higher.
Author: Emmanuel Bourg <ebourg@apache.org>
Forwarded: not-needed
--- a/lang/java/avro/pom.xml
+++ b/lang/java/avro/pom.xml
@@ -158,6 +158,11 @@
<groupId>org.apache.commons</groupId>
<artifactId>commons-compress</artifactId>
</dependency>
+ <dependency>
+ <groupId>org.tukaani</groupId>
+ <artifactId>xz</artifactId>
+ <version>debian</version>
+ </dependency>
</dependencies>
</project>
01-maven-bundle-plugin-version.patch
02-explicit-xz-dependency.patch
03-explicit-bundle-type.patch
0001-AVRO-2043-Move-to-java8.patch
......@@ -8,5 +8,5 @@ override_dh_auto_configure:
# Regenerate the Java classes from the Thrift file
thrift -gen java:beans -out lang/java/thrift/src/test/java/ lang/java/thrift/src/test/thrift/test.thrift
get-orig-source:
uscan --download-current-version --force-download --no-symlink
override_dh_installdocs:
dh_installdocs -A NOTICE.txt
version=3
opts="uversionmangle=s/-(alpha|beta|rc)(-)?/~$1$2/" \
http://svn.apache.org/repos/asf/avro/tags/ release-(\d.*)/ debian debian/orig-tar.sh
version=4
opts="repack,compression=xz" \
https://github.com/apache/avro/tags .*/release-([\d\.]+).tar.gz