[jackson] Update to upstream version 1.9.11

gil gil at fedoraproject.org
Wed Sep 25 15:07:03 UTC 2013


commit a2de1cc72b08fed16ebfcf1ed1e2c33d4af557a2
Author: gil <puntogil at libero.it>
Date:   Wed Sep 25 17:06:34 2013 +0200

    Update to upstream version 1.9.11

 .gitignore                     |    1 +
 jackson-1.9.11-javadoc.patch   |   15 ++
 jackson-1.9.11-to-1.9.13.patch |  415 ++++++++++++++++++++++++++++++++++++++++
 jackson.spec                   |   51 +++---
 sources                        |    2 +-
 5 files changed, 457 insertions(+), 27 deletions(-)
---
diff --git a/.gitignore b/.gitignore
index bb57595..8ff8694 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1 +1,2 @@
 /jackson-src-1.9.4.tar.gz
+/jackson-src-1.9.11.tar.gz
diff --git a/jackson-1.9.11-javadoc.patch b/jackson-1.9.11-javadoc.patch
new file mode 100644
index 0000000..8343220
--- /dev/null
+++ b/jackson-1.9.11-javadoc.patch
@@ -0,0 +1,15 @@
+--- build.xml	2013-09-25 16:31:19.058162819 +0200
++++ build.xml-gil	2013-09-25 16:51:15.985892622 +0200
+@@ -324,6 +324,12 @@
+                <fileset dir="${dir.lib}/jaxrs">
+                     <include name="*.jar" />
+                </fileset>
++               <fileset dir="${dir.lib}/ext">
++                    <include name="*.jar" />
++               </fileset>
++               <fileset dir="${dir.lib}/ext/asm">
++                    <include name="*.jar" />
++               </fileset>
+             </classpath>
+ 
+             <packageset dir="${dir.src.java.core}" defaultexcludes="yes">
diff --git a/jackson-1.9.11-to-1.9.13.patch b/jackson-1.9.11-to-1.9.13.patch
new file mode 100644
index 0000000..83b13c9
--- /dev/null
+++ b/jackson-1.9.11-to-1.9.13.patch
@@ -0,0 +1,415 @@
+diff -Nru jackson-src-1.9.11/src/java/org/codehaus/jackson/impl/Utf8StreamParser.java jackson-src-1.9.11-gil/src/java/org/codehaus/jackson/impl/Utf8StreamParser.java
+--- jackson-src-1.9.11/src/java/org/codehaus/jackson/impl/Utf8StreamParser.java	2012-11-06 17:24:50.000000000 +0100
++++ jackson-src-1.9.11-gil/src/java/org/codehaus/jackson/impl/Utf8StreamParser.java	2013-02-13 18:45:26.000000000 +0100
+@@ -730,7 +730,7 @@
+     {
+         // very first thing: common case, colon, value, no white space
+         int i;
+-        if (_inputPtr < _inputEnd && _inputBuffer[_inputPtr] == INT_COLON) { // fast case first
++        if (_inputPtr < (_inputEnd-1) && _inputBuffer[_inputPtr] == INT_COLON) { // fast case first
+             ++_inputPtr;
+             i = _inputBuffer[_inputPtr++];
+             if (i == INT_QUOTE) {
+@@ -2359,6 +2359,7 @@
+                 switch (i) {
+                 case INT_SPACE:
+                 case INT_TAB:
++                    break;
+                 case INT_CR:
+                     _skipCR();
+                     break;
+@@ -2374,11 +2375,11 @@
+                     }
+                     break space_loop;
+                 }
++                if (_inputPtr >= _inputEnd) {
++                    loadMoreGuaranteed();
++                }
++                i = _inputBuffer[_inputPtr++] & 0xFF;
+             }
+-            if (_inputPtr >= _inputEnd) {
+-                loadMoreGuaranteed();
+-            }
+-            i = _inputBuffer[_inputPtr++] & 0xFF;
+             if (i != INT_COLON) {
+                 _reportUnexpectedChar(i, "was expecting a colon to separate field name and value");
+             }
+diff -Nru jackson-src-1.9.11/src/java/org/codehaus/jackson/io/JsonStringEncoder.java jackson-src-1.9.11-gil/src/java/org/codehaus/jackson/io/JsonStringEncoder.java
+--- jackson-src-1.9.11/src/java/org/codehaus/jackson/io/JsonStringEncoder.java	2012-11-06 17:24:51.000000000 +0100
++++ jackson-src-1.9.11-gil/src/java/org/codehaus/jackson/io/JsonStringEncoder.java	2013-01-15 21:03:48.000000000 +0100
+@@ -129,8 +129,12 @@
+                 }
+             }
+             // something to escape; 2 or 6-char variant? 
+-            int escCode = escCodes[input.charAt(inPtr++)];
+-            int length = _appendSingleEscape(escCode, _quoteBuffer);
++            char d = input.charAt(inPtr++);
++            int escCode = escCodes[d];
++            int length = (escCode < 0)
++                    ? _appendNumericEscape(d, _quoteBuffer)
++                    : _appendNamedEscape(escCode, _quoteBuffer);
++                    ;
+             if ((outPtr + length) > outputBuffer.length) {
+                 int first = outputBuffer.length - outPtr;
+                 if (first > 0) {
+@@ -144,7 +148,6 @@
+                 System.arraycopy(_quoteBuffer, 0, outputBuffer, outPtr, length);
+                 outPtr += length;
+             }
+-            
+         }
+         textBuffer.setCurrentLength(outPtr);
+         return textBuffer.contentsAsArray();
+@@ -249,6 +252,7 @@
+      * Will encode given String as UTF-8 (without any quoting), return
+      * resulting byte array.
+      */
++    @SuppressWarnings("resource")
+     public byte[] encodeAsUTF8(String text)
+     {
+         ByteArrayBuilder byteBuilder = _byteBuilder;
+@@ -341,16 +345,17 @@
+     /**********************************************************
+      */
+ 
+-    private int _appendSingleEscape(int escCode, char[] quoteBuffer)
++    private int _appendNumericEscape(int value, char[] quoteBuffer)
++    {
++        quoteBuffer[1] = 'u';
++        // We know it's a control char, so only the last 2 chars are non-0
++        quoteBuffer[4] = HEX_CHARS[value >> 4];
++        quoteBuffer[5] = HEX_CHARS[value & 0xF];
++        return 6;
++    }
++
++    private int _appendNamedEscape(int escCode, char[] quoteBuffer)
+     {
+-        if (escCode < 0) { // control char, value -(char + 1)
+-            int value = -(escCode + 1);
+-            quoteBuffer[1] = 'u';
+-            // We know it's a control char, so only the last 2 chars are non-0
+-            quoteBuffer[4] = HEX_CHARS[value >> 4];
+-            quoteBuffer[5] = HEX_CHARS[value & 0xF];
+-            return 6;
+-        }
+         quoteBuffer[1] = (char) escCode;
+         return 2;
+     }
+diff -Nru jackson-src-1.9.11/src/java/org/codehaus/jackson/io/UTF32Reader.java jackson-src-1.9.11-gil/src/java/org/codehaus/jackson/io/UTF32Reader.java
+--- jackson-src-1.9.11/src/java/org/codehaus/jackson/io/UTF32Reader.java	2012-11-06 17:24:51.000000000 +0100
++++ jackson-src-1.9.11-gil/src/java/org/codehaus/jackson/io/UTF32Reader.java	2012-11-15 18:51:10.000000000 +0100
+@@ -2,52 +2,54 @@
+ 
+ import java.io.*;
+ 
+-
+ /**
+  * Since JDK does not come with UTF-32/UCS-4, let's implement a simple
+  * decoder to use.
+  */
+-public final class UTF32Reader
++public class UTF32Reader
+     extends BaseReader
+ {
+-    final boolean mBigEndian;
++    protected final boolean _bigEndian;
+ 
+     /**
+      * Although input is fine with full Unicode set, Java still uses
+      * 16-bit chars, so we may have to split high-order chars into
+      * surrogate pairs.
+      */
+-    char mSurrogate = NULL_CHAR;
++    protected char _surrogate = NULL_CHAR;
+ 
+     /**
+      * Total read character count; used for error reporting purposes
+      */
+-    int mCharCount = 0;
++    protected int _charCount = 0;
+ 
+     /**
+      * Total read byte count; used for error reporting purposes
+      */
+-    int mByteCount = 0;
++    protected int _byteCount = 0;
+ 
++    protected final boolean _managedBuffers;
++    
+     /*
+-    ////////////////////////////////////////
+-    // Life-cycle
+-    ////////////////////////////////////////
+-    */
++    /**********************************************************
++    /* Life-cycle
++    /**********************************************************
++     */
+ 
+     public UTF32Reader(IOContext ctxt,
+-                       InputStream in, byte[] buf, int ptr, int len,
+-                       boolean isBigEndian)
++            InputStream in, byte[] buf, int ptr, int len,
++            boolean isBigEndian)
+     {
+         super(ctxt, in, buf, ptr, len);
+-        mBigEndian = isBigEndian;
++        _bigEndian = isBigEndian;
++        _managedBuffers = (in != null);
+     }
+ 
+     /*
+-    ////////////////////////////////////////
+-    // Public API
+-    ////////////////////////////////////////
+-    */
++    /**********************************************************
++    /* Public API
++    /**********************************************************
++     */
+ 
+     @Override
+ 	public int read(char[] cbuf, int start, int len)
+@@ -69,9 +71,9 @@
+         int outPtr = start;
+ 
+         // Ok, first; do we have a surrogate from last round?
+-        if (mSurrogate != NULL_CHAR) {
+-            cbuf[outPtr++] = mSurrogate;
+-            mSurrogate = NULL_CHAR;
++        if (_surrogate != NULL_CHAR) {
++            cbuf[outPtr++] = _surrogate;
++            _surrogate = NULL_CHAR;
+             // No need to load more, already got one char
+         } else {
+             /* Note: we'll try to avoid blocking as much as possible. As a
+@@ -90,7 +92,7 @@
+             int ptr = _ptr;
+             int ch;
+ 
+-            if (mBigEndian) {
++            if (_bigEndian) {
+                 ch = (_buffer[ptr] << 24) | ((_buffer[ptr+1] & 0xFF) << 16)
+                     | ((_buffer[ptr+2] & 0xFF) << 8) | (_buffer[ptr+3] & 0xFF);
+             } else {
+@@ -112,7 +114,7 @@
+                 ch = (0xDC00 | (ch & 0x03FF));
+                 // Room for second part?
+                 if (outPtr >= len) { // nope
+-                    mSurrogate = (char) ch;
++                    _surrogate = (char) ch;
+                     break main_loop;
+                 }
+             }
+@@ -123,36 +125,34 @@
+         }
+ 
+         len = outPtr - start;
+-        mCharCount += len;
++        _charCount += len;
+         return len;
+     }
+ 
+     /*
+-    ////////////////////////////////////////
+-    // Internal methods
+-    ////////////////////////////////////////
+-    */
++    /**********************************************************
++    /* Internal methods
++    /**********************************************************
++     */
+ 
+     private void reportUnexpectedEOF(int gotBytes, int needed)
+         throws IOException
+     {
+-        int bytePos = mByteCount + gotBytes;
+-        int charPos = mCharCount;
++        int bytePos = _byteCount + gotBytes;
++        int charPos = _charCount;
+ 
+         throw new CharConversionException("Unexpected EOF in the middle of a 4-byte UTF-32 char: got "
+-                                          +gotBytes+", needed "+needed
+-                                          +", at char #"+charPos+", byte #"+bytePos+")");
++                +gotBytes+", needed "+needed+", at char #"+charPos+", byte #"+bytePos+")");
+     }
+ 
+     private void reportInvalid(int value, int offset, String msg)
+         throws IOException
+     {
+-        int bytePos = mByteCount + _ptr - 1;
+-        int charPos = mCharCount + offset;
++        int bytePos = _byteCount + _ptr - 1;
++        int charPos = _charCount + offset;
+ 
+         throw new CharConversionException("Invalid UTF-32 character 0x"
+-                                          +Integer.toHexString(value)
+-                                          +msg+" at char #"+charPos+", byte #"+bytePos+")");
++                +Integer.toHexString(value)+msg+" at char #"+charPos+", byte #"+bytePos+")");
+     }
+ 
+     /**
+@@ -164,7 +164,7 @@
+     private boolean loadMore(int available)
+         throws IOException
+     {
+-        mByteCount += (_length - available);
++        _byteCount += (_length - available);
+ 
+         // Bytes that need to be moved to the beginning of buffer?
+         if (available > 0) {
+@@ -180,11 +180,13 @@
+              * so let's do a separate read right away:
+              */
+             _ptr = 0;
+-            int count = _in.read(_buffer);
++            int count = (_in == null) ? -1 : _in.read(_buffer);
+             if (count < 1) {
+                 _length = 0;
+                 if (count < 0) { // -1
+-                    freeBuffers(); // to help GC?
++                    if (_managedBuffers) {
++                        freeBuffers(); // to help GC?
++                    }
+                     return false;
+                 }
+                 // 0 count is no good; let's err out
+@@ -197,10 +199,12 @@
+          * error.
+          */
+         while (_length < 4) {
+-            int count = _in.read(_buffer, _length, _buffer.length - _length);
++            int count = (_in == null) ? -1 : _in.read(_buffer, _length, _buffer.length - _length);
+             if (count < 1) {
+                 if (count < 0) { // -1, EOF... no good!
+-                    freeBuffers(); // to help GC?
++                    if (_managedBuffers) {
++                        freeBuffers(); // to help GC?
++                    }
+                     reportUnexpectedEOF(_length, 4);
+                 }
+                 // 0 count is no good; let's err out
+@@ -211,4 +215,3 @@
+         return true;
+     }
+ }
+-
+diff -Nru jackson-src-1.9.11/src/mapper/java/org/codehaus/jackson/map/AnnotationIntrospector.java jackson-src-1.9.11-gil/src/mapper/java/org/codehaus/jackson/map/AnnotationIntrospector.java
+--- jackson-src-1.9.11/src/mapper/java/org/codehaus/jackson/map/AnnotationIntrospector.java	2012-11-06 17:24:51.000000000 +0100
++++ jackson-src-1.9.11-gil/src/mapper/java/org/codehaus/jackson/map/AnnotationIntrospector.java	2012-11-08 13:26:56.000000000 +0100
+@@ -637,10 +637,15 @@
+      * Method for determining the String value to use for serializing
+      * given enumeration entry; used when serializing enumerations
+      * as Strings (the standard method).
++     *<p>
++     * NOTE: implemented since 1.9.11, to make things work even when
++     * annotation introspection is disabled.
+      *
+      * @return Serialized enum value.
+      */
+-    public abstract String findEnumValue(Enum<?> value);
++    public String findEnumValue(Enum<?> value) {
++        return value.name();
++    }
+ 
+     /*
+     /**********************************************************
+diff -Nru jackson-src-1.9.11/src/mapper/java/org/codehaus/jackson/map/deser/std/ClassDeserializer.java jackson-src-1.9.11-gil/src/mapper/java/org/codehaus/jackson/map/deser/std/ClassDeserializer.java
+--- jackson-src-1.9.11/src/mapper/java/org/codehaus/jackson/map/deser/std/ClassDeserializer.java	2012-11-06 17:24:51.000000000 +0100
++++ jackson-src-1.9.11-gil/src/mapper/java/org/codehaus/jackson/map/deser/std/ClassDeserializer.java	2012-11-16 19:30:42.000000000 +0100
+@@ -7,6 +7,7 @@
+ import org.codehaus.jackson.JsonToken;
+ import org.codehaus.jackson.map.DeserializationContext;
+ import org.codehaus.jackson.map.annotate.JacksonStdImpl;
++import org.codehaus.jackson.map.util.ClassUtil;
+ 
+ /**
+  * 
+@@ -26,20 +27,8 @@
+         // Currently will only accept if given simple class name
+         if (curr == JsonToken.VALUE_STRING) {
+             String className = jp.getText();
+-            // [JACKSON-597]: support primitive types (and void)
+-            if (className.indexOf('.') < 0) {
+-                if ("int".equals(className)) return Integer.TYPE;
+-                if ("long".equals(className)) return Long.TYPE;
+-                if ("float".equals(className)) return Float.TYPE;
+-                if ("double".equals(className)) return Double.TYPE;
+-                if ("boolean".equals(className)) return Boolean.TYPE;
+-                if ("byte".equals(className)) return Byte.TYPE;
+-                if ("char".equals(className)) return Character.TYPE;
+-                if ("short".equals(className)) return Short.TYPE;
+-                if ("void".equals(className)) return Void.TYPE;
+-            }
+             try {
+-                return Class.forName(jp.getText());
++                return ClassUtil.findClass(className);
+             } catch (ClassNotFoundException e) {
+                 throw ctxt.instantiationException(_valueClass, e);
+             }
+diff -Nru jackson-src-1.9.11/src/mapper/java/org/codehaus/jackson/map/deser/StdDeserializerProvider.java jackson-src-1.9.11-gil/src/mapper/java/org/codehaus/jackson/map/deser/StdDeserializerProvider.java
+--- jackson-src-1.9.11/src/mapper/java/org/codehaus/jackson/map/deser/StdDeserializerProvider.java	2012-11-06 17:24:51.000000000 +0100
++++ jackson-src-1.9.11-gil/src/mapper/java/org/codehaus/jackson/map/deser/StdDeserializerProvider.java	2013-03-01 19:29:20.000000000 +0100
+@@ -469,6 +469,16 @@
+             // should never happen? (if it can, could call on that object)
+             throw new IllegalStateException("Type-wrapped deserializer's deserializeWithType should never get called");
+         }
+-    }
+ 
++        @Override
++        public Object deserialize(JsonParser jp, DeserializationContext ctxt,
++                Object intoValue)
++            throws IOException, JsonProcessingException
++        {
++            /* 01-Mar-2013, tatu: Hmmh. Tough call as to what to do... need
++             *   to delegate, but will this work reliably? Let's just hope so:
++             */
++            return _deserializer.deserialize(jp,  ctxt, intoValue);
++        }
++    }
+ }
+diff -Nru jackson-src-1.9.11/src/mapper/java/org/codehaus/jackson/map/introspect/NopAnnotationIntrospector.java jackson-src-1.9.11-gil/src/mapper/java/org/codehaus/jackson/map/introspect/NopAnnotationIntrospector.java
+--- jackson-src-1.9.11/src/mapper/java/org/codehaus/jackson/map/introspect/NopAnnotationIntrospector.java	2012-11-06 17:24:51.000000000 +0100
++++ jackson-src-1.9.11-gil/src/mapper/java/org/codehaus/jackson/map/introspect/NopAnnotationIntrospector.java	2012-11-08 13:31:02.000000000 +0100
+@@ -42,7 +42,8 @@
+ 
+     @Override
+     public String findEnumValue(Enum<?> value) {
+-        return null;
++        // as per [JACKSON-875]
++        return value.name();
+     }
+     
+     /*
+diff -Nru jackson-src-1.9.11/src/mapper/java/org/codehaus/jackson/map/JsonDeserializer.java jackson-src-1.9.11-gil/src/mapper/java/org/codehaus/jackson/map/JsonDeserializer.java
+--- jackson-src-1.9.11/src/mapper/java/org/codehaus/jackson/map/JsonDeserializer.java	2012-11-06 17:24:51.000000000 +0100
++++ jackson-src-1.9.11-gil/src/mapper/java/org/codehaus/jackson/map/JsonDeserializer.java	2013-03-01 19:28:18.000000000 +0100
+@@ -61,7 +61,8 @@
+                          T intoValue)
+         throws IOException, JsonProcessingException
+     {
+-        throw new UnsupportedOperationException();
++        throw new UnsupportedOperationException("Can not update object of type "
++                +intoValue.getClass().getName()+" (by deserializer of type "+getClass().getName()+")");
+     }
+ 
+     /**
+diff -Nru jackson-src-1.9.11/src/mapper/java/org/codehaus/jackson/map/type/TypeBindings.java jackson-src-1.9.11-gil/src/mapper/java/org/codehaus/jackson/map/type/TypeBindings.java
+--- jackson-src-1.9.11/src/mapper/java/org/codehaus/jackson/map/type/TypeBindings.java	2012-11-06 17:24:51.000000000 +0100
++++ jackson-src-1.9.11-gil/src/mapper/java/org/codehaus/jackson/map/type/TypeBindings.java	2013-02-08 22:11:42.000000000 +0100
+@@ -287,7 +287,14 @@
+              * need to call getEnclosingClass since anonymous classes declare 
+              * generics
+              */
+-            _resolveBindings(raw.getDeclaringClass());
++            Class<?> decl = raw.getDeclaringClass();
++            /* 08-Feb-2013, tatu: Except that if context is also super-class, we must
++             *   skip it; context will be checked anyway, and we'd get StackOverflow if
++             *   we went there.
++             */
++            if (decl != null && !decl.isAssignableFrom(raw)) {
++                _resolveBindings(raw.getDeclaringClass());
++            }
+             /* 24-Mar-2010, tatu: Can not have true generics definitions, but can
+              *   have lower bounds ("<T extends BeanBase>") in declaration itself
+              */
diff --git a/jackson.spec b/jackson.spec
index 3221cc3..03e3149 100644
--- a/jackson.spec
+++ b/jackson.spec
@@ -1,23 +1,21 @@
-Name: jackson
-Version: 1.9.4
-Release: 7%{?dist}
+Name:    jackson
+Version: 1.9.11
+Release: 1%{?dist}
 Summary: Jackson Java JSON-processor
-
-Group: Development/Libraries
 License: ASL 2.0 or LGPLv2
-URL: http://jackson.codehaus.org
-
-Source0: http://jackson.codehaus.org/1.9.4/jackson-src-1.9.4.tar.gz
-
+URL:     http://jackson.codehaus.org
+Source0: http://jackson.codehaus.org/1.9.11/jackson-src-1.9.11.tar.gz
 # Build plain jar files instead of OSGi bundles in order to avoid depending on
 # BND:
-Patch0: %{name}-build-plain-jars-instead-of-osgi-bundles.patch
-
+Patch0:  %{name}-build-plain-jars-instead-of-osgi-bundles.patch
 # Don't require a repackaged version of ASM:
-Patch1: %{name}-dont-require-repackaged-asm.patch
-
+Patch1:  %{name}-dont-require-repackaged-asm.patch
 # Don't bundle the ASM classes:
-Patch2: %{name}-dont-bundle-asm.patch
+Patch2:  %{name}-dont-bundle-asm.patch
+# fix for JACKSON-875
+Patch3:  %{name}-1.9.11-to-1.9.13.patch
+# Fix javadoc build
+Patch4:  %{name}-1.9.11-javadoc.patch
 
 BuildArch: noarch
 
@@ -38,28 +36,24 @@ BuildRequires: objectweb-asm >= 3.3
 BuildRequires: cglib >= 2.2
 BuildRequires: groovy >= 1.8.5
 
-
 %description
 JSON processor (JSON parser + JSON generator) written in Java. Beyond basic
 JSON reading/writing (parsing, generating), it also offers full node-based Tree
 Model, as well as full OJM (Object/Json Mapper) data binding functionality.
 
-
 %package javadoc
-Summary: Javadocs for %{name}
-Group: Documentation
-Requires: jpackage-utils
-
+Summary: Javadoc for %{name}
 
 %description javadoc
 This package contains javadoc for %{name}.
 
-
 %prep
 %setup -q -n %{name}-src-%{version}
 %patch0 -p1
 %patch1 -p1
 %patch2 -p1
+%patch3 -p1
+%patch4 -p0
 
 # Remove all the binary jar files, as the packaging policies
 # forbids using them:
@@ -81,10 +75,15 @@ ln -s $(build-classpath cglib) lib/ext/cglib/cglib-nodep.jar
 ln -s $(build-classpath groovy) lib/ext/groovy/groovy.jar
 ln -s $(build-classpath junit) lib/junit/junit.jar
 
+sed -i "s,59 Temple Place,51 Franklin Street,;s,Suite 330,Fifth Floor,;s,02111-1307,02110-1301," \
+ release-notes/lgpl/LGPL2.1
 
+native2ascii -encoding UTF8 src/test/org/codehaus/jackson/jaxrs/TestUntouchables.java \
+ src/test/org/codehaus/jackson/jaxrs/TestUntouchables.java
+ 
 %build
-ant dist
 
+ant dist
 
 %install
 
@@ -112,22 +111,22 @@ done
 install -d -m 755 %{buildroot}%{_javadocdir}/%{name}
 cp -rp dist/javadoc/* %{buildroot}%{_javadocdir}/%{name}/.
 
-
 %files
 %{_mavenpomdir}/*
 %{_mavendepmapfragdir}/*
-%{_javadir}/%{name}/*
+%{_javadir}/%{name}
 %doc README.txt
 %doc release-notes
 
-
 %files javadoc
 %{_javadocdir}/%{name}
 %doc README.txt
 %doc release-notes
 
-
 %changelog
+* Wed Sep 25 2013 gil cattaneo <puntogil at libero.it> 1.9.11-1
+- Update to upstream version 1.9.11
+
 * Sat Aug 03 2013 Fedora Release Engineering <rel-eng at lists.fedoraproject.org> - 1.9.4-7
 - Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild
 
diff --git a/sources b/sources
index a37d7aa..ded7f92 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-8c11b14421fa179aa6fcc960f9b28dab  jackson-src-1.9.4.tar.gz
+1ba184261197320d4349bb7d4a6c48c2  jackson-src-1.9.11.tar.gz


More information about the scm-commits mailing list