Compare commits

..

4 commits

Author SHA1 Message Date
Markku Korkeala
b2a74e6e81 Backport patch for clj-2839 to mitigate CVE-2024-22871. 2024-04-03 11:49:43 +03:00
Markku Korkeala
eef5e014bd Add patch clj-2204 to mitigate CVE-2017-20189. 2024-01-27 12:02:34 +02:00
Markku Korkeala
a825644cce New upstream release.
Replace add_maven_depmap macros with mvn_artifact and mvn_install
2020-04-02 21:44:39 +03:00
Jochen Schmitt
51bd2aa9f1 fix broken changelog 2013-04-30 17:05:16 +02:00
7 changed files with 425 additions and 220 deletions

22
.gitignore vendored
View file

@ -3,26 +3,4 @@
/clojure-clojure-1.5.0-RC1.zip
/clojure-1.5.0.zip
/clojure-1.5.1.zip
/clojure-1.6.0-beta2.zip
/clojure-1.6.0-RC1.zip
/clojure-1.6.0-RC3.zip
/clojure-1.6.0.zip
/clojure-1.7.0-beta1.zip
/clojure-1.7.0-beta2.zip
/clojure-1.7.0-RC1.zip
/clojure-1.7.0-RC2.zip
/clojure-1.7.0.zip
/clojure-1.8.0-beta1.zip
/clojure-1.8.0.zip
/clojure-1.9.0-alpha15.zip
/clojure-1.9.0-beta3.zip
/clojure-1.9.0.zip
/clojure-1.10.1.zip
/clojure-1.10.2.zip
/clojure-1.10.3.zip
/clojure-1.11.1.zip
/clojure-1.11.2.zip
/clojure-1.11.3.zip
/clojure-1.12.0.zip
/clojure-1.12.3.zip
/clojure-1.12.4.zip

View file

@ -0,0 +1,125 @@
From 5ed84f26da3c6b4d88c5efa1cadc0df30baed5a7 Mon Sep 17 00:00:00 2001
From: Markku Korkeala <markku.korkeala@iki.fi>
Date: Tue, 2 Apr 2024 19:30:49 +0300
Subject: [PATCH] Backport patch CLJ-2839 Infinite seq class hashCode() is
infinite loop
---
src/clj/clojure/core.clj | 3 ++-
src/jvm/clojure/lang/Cycle.java | 8 ++++++++
src/jvm/clojure/lang/Iterate.java | 7 +++++++
src/jvm/clojure/lang/Repeat.java | 12 ++++++++++++
test/clojure/test_clojure/sequences.clj | 11 +++++++++++
test/clojure/test_clojure/serialization.clj | 10 +++++++++-
6 files changed, 49 insertions(+), 2 deletions(-)
diff --git a/src/clj/clojure/core.clj b/src/clj/clojure/core.clj
index 32d04d8..6b858f3 100644
--- a/src/clj/clojure/core.clj
+++ b/src/clj/clojure/core.clj
@@ -2902,7 +2902,8 @@
[n x] (take n (repeat x)))
(defn iterate
- "Returns a lazy sequence of x, (f x), (f (f x)) etc. f must be free of side-effects"
+ "Returns a lazy (infinite!) sequence of x, (f x), (f (f x)) etc.
+ f must be free of side-effects"
{:added "1.0"
:static true}
[f x] (clojure.lang.Iterate/create f x) )
diff --git a/src/jvm/clojure/lang/Cycle.java b/src/jvm/clojure/lang/Cycle.java
index 3fae8af..8d8f21f 100644
--- a/src/jvm/clojure/lang/Cycle.java
+++ b/src/jvm/clojure/lang/Cycle.java
@@ -91,4 +91,12 @@ public Object reduce(IFn f, Object start){
s = all;
}
}
+public int hashCode(){
+ throw new UnsupportedOperationException();
+}
+
+public int hasheq(){
+ throw new UnsupportedOperationException();
+}
+
}
diff --git a/src/jvm/clojure/lang/Iterate.java b/src/jvm/clojure/lang/Iterate.java
index 2502383..973f396 100644
--- a/src/jvm/clojure/lang/Iterate.java
+++ b/src/jvm/clojure/lang/Iterate.java
@@ -82,4 +82,11 @@ public Object reduce(IFn rf, Object start){
v = f.invoke(v);
}
}
+public int hashCode(){
+ throw new UnsupportedOperationException();
+}
+
+public int hasheq(){
+ throw new UnsupportedOperationException();
+}
}
diff --git a/src/jvm/clojure/lang/Repeat.java b/src/jvm/clojure/lang/Repeat.java
index 2e9de0e..62b36be 100644
--- a/src/jvm/clojure/lang/Repeat.java
+++ b/src/jvm/clojure/lang/Repeat.java
@@ -94,5 +94,17 @@ public Object reduce(IFn f, Object start){
return ret;
}
}
+public int hashCode(){
+ if(count <= 0)
+ throw new UnsupportedOperationException();
+ else
+ return super.hashCode();
+}
+public int hasheq(){
+ if(count <= 0)
+ throw new UnsupportedOperationException();
+ else
+ return super.hasheq();
+}
}
diff --git a/test/clojure/test_clojure/sequences.clj b/test/clojure/test_clojure/sequences.clj
index e3adb27..420a834 100644
--- a/test/clojure/test_clojure/sequences.clj
+++ b/test/clojure/test_clojure/sequences.clj
@@ -1343,3 +1343,14 @@
(doseq [i (range 100)]
(is (= s1 (concat (subseq s2 < i) (subseq s2 >= i))))
(is (= (reverse s1) (concat (rsubseq s2 >= i) (rsubseq s2 < i)))))))
+
+(deftest infinite-seq-hash
+ (are [e] (thrown? Exception (.hashCode ^Object e))
+ (iterate identity nil)
+ (cycle [1])
+ (repeat 1))
+ (are [e] (thrown? Exception (.hasheq ^clojure.lang.IHashEq e))
+ (iterate identity nil)
+ (cycle [1])
+ (repeat 1)))
+
diff --git a/test/clojure/test_clojure/serialization.clj b/test/clojure/test_clojure/serialization.clj
index 60cd65c..3806a9e 100644
--- a/test/clojure/test_clojure/serialization.clj
+++ b/test/clojure/test_clojure/serialization.clj
@@ -173,4 +173,12 @@
;; stateful seqs
(enumeration-seq (java.util.Collections/enumeration (range 50)))
- (iterator-seq (.iterator (range 50)))))
\ No newline at end of file
+ (iterator-seq (.iterator (range 50)))))
+
+;; necessary for CVE-2024-22871
+(deftest CLJ-2839
+ (are [e] (thrown? Exception (.hashCode ^Object (-> e serialize deserialize)))
+ (repeat 1)
+ (iterate identity nil)
+ (cycle [1])))
+
--
2.44.0

View file

@ -0,0 +1,224 @@
From c8d42afb5ec4fb5e2267aab3fb2d3af4a40df5d9 Mon Sep 17 00:00:00 2001
From: Chouser <chouser@n01se.net>
Date: Mon, 17 Jul 2017 23:04:41 -0400
Subject: [PATCH] CLJ-2204 Disable serialization of proxy classes
---
src/clj/clojure/core_proxy.clj | 20 ++++++++++++++++++-
test/clojure/test_clojure/java_interop.clj | 31 +++++++++++++++++++++++++++++-
2 files changed, 49 insertions(+), 2 deletions(-)
diff --git a/src/clj/clojure/core_proxy.clj b/src/clj/clojure/core_proxy.clj
index 813c8bb..70d0528 100644
--- a/src/clj/clojure/core_proxy.clj
+++ b/src/clj/clojure/core_proxy.clj
@@ -1,30 +1,31 @@
; Copyright (c) Rich Hickey. All rights reserved.
; The use and distribution terms for this software are covered by the
; Eclipse Public License 1.0 (http://opensource.org/licenses/eclipse-1.0.php)
; which can be found in the file epl-v10.html at the root of this distribution.
; By using this software in any fashion, you are agreeing to be bound by
; the terms of this license.
; You must not remove this notice, or any other, from this software.
(in-ns 'clojure.core)
;;;;;;;;;;;;;;;;;;;;;;;;;;;; proxy ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(import
'(clojure.asm ClassWriter ClassVisitor Opcodes Type)
'(java.lang.reflect Modifier Constructor)
+ '(java.io Serializable NotSerializableException)
'(clojure.asm.commons Method GeneratorAdapter)
'(clojure.lang IProxy Reflector DynamicClassLoader IPersistentMap PersistentHashMap RT))
(defn method-sig [^java.lang.reflect.Method meth]
[(. meth (getName)) (seq (. meth (getParameterTypes))) (. meth getReturnType)])
(defn- most-specific [rtypes]
(or (some (fn [t] (when (every? #(isa? t %) rtypes) t)) rtypes)
(throw (Exception. "Incompatible return types"))))
(defn- group-by-sig [coll]
"takes a collection of [msig meth] and returns a seq of maps from return-types to meths."
(vals (reduce1 (fn [m [msig meth]]
(let [rtype (peek msig)
argsig (pop msig)]
@@ -32,31 +33,32 @@
{} coll)))
(defn proxy-name
{:tag String}
[^Class super interfaces]
(let [inames (into1 (sorted-set) (map #(.getName ^Class %) interfaces))]
(apply str (.replace (str *ns*) \- \_) ".proxy"
(interleave (repeat "$")
(concat
[(.getName super)]
(map #(subs % (inc (.lastIndexOf ^String % "."))) inames)
[(Integer/toHexString (hash inames))])))))
(defn- generate-proxy [^Class super interfaces]
(let [cv (new ClassWriter (. ClassWriter COMPUTE_MAXS))
- cname (.replace (proxy-name super interfaces) \. \/) ;(str "clojure/lang/" (gensym "Proxy__"))
+ pname (proxy-name super interfaces)
+ cname (.replace pname \. \/) ;(str "clojure/lang/" (gensym "Proxy__"))
ctype (. Type (getObjectType cname))
iname (fn [^Class c] (.. Type (getType c) (getInternalName)))
fmap "__clojureFnMap"
totype (fn [^Class c] (. Type (getType c)))
to-types (fn [cs] (if (pos? (count cs))
(into-array (map totype cs))
(make-array Type 0)))
super-type ^Type (totype super)
imap-type ^Type (totype IPersistentMap)
ifn-type (totype clojure.lang.IFn)
obj-type (totype Object)
sym-type (totype clojure.lang.Symbol)
rt-type (totype clojure.lang.RT)
ex-type (totype java.lang.UnsupportedOperationException)
gen-bridge
@@ -136,30 +138,46 @@
;add ctors matching/calling super's
(doseq [^Constructor ctor (. super (getDeclaredConstructors))]
(when-not (. Modifier (isPrivate (. ctor (getModifiers))))
(let [ptypes (to-types (. ctor (getParameterTypes)))
m (new Method "<init>" (. Type VOID_TYPE) ptypes)
gen (new GeneratorAdapter (. Opcodes ACC_PUBLIC) m nil nil cv)]
(. gen (visitCode))
;call super ctor
(. gen (loadThis))
(. gen (dup))
(. gen (loadArgs))
(. gen (invokeConstructor super-type m))
(. gen (returnValue))
(. gen (endMethod)))))
+ ;disable serialization
+ (when (some #(isa? % Serializable) (cons super interfaces))
+ (let [m (. Method (getMethod "void writeObject(java.io.ObjectOutputStream)"))
+ gen (new GeneratorAdapter (. Opcodes ACC_PRIVATE) m nil nil cv)]
+ (. gen (visitCode))
+ (. gen (loadThis))
+ (. gen (loadArgs))
+ (. gen (throwException (totype NotSerializableException) pname))
+ (. gen (endMethod)))
+ (let [m (. Method (getMethod "void readObject(java.io.ObjectInputStream)"))
+ gen (new GeneratorAdapter (. Opcodes ACC_PRIVATE) m nil nil cv)]
+ (. gen (visitCode))
+ (. gen (loadThis))
+ (. gen (loadArgs))
+ (. gen (throwException (totype NotSerializableException) pname))
+ (. gen (endMethod))))
;add IProxy methods
(let [m (. Method (getMethod "void __initClojureFnMappings(clojure.lang.IPersistentMap)"))
gen (new GeneratorAdapter (. Opcodes ACC_PUBLIC) m nil nil cv)]
(. gen (visitCode))
(. gen (loadThis))
(. gen (loadArgs))
(. gen (putField ctype fmap imap-type))
(. gen (returnValue))
(. gen (endMethod)))
(let [m (. Method (getMethod "void __updateClojureFnMappings(clojure.lang.IPersistentMap)"))
gen (new GeneratorAdapter (. Opcodes ACC_PUBLIC) m nil nil cv)]
(. gen (visitCode))
(. gen (loadThis))
(. gen (dup))
diff --git a/test/clojure/test_clojure/java_interop.clj b/test/clojure/test_clojure/java_interop.clj
index 86ba5ca..44b5c70 100644
--- a/test/clojure/test_clojure/java_interop.clj
+++ b/test/clojure/test_clojure/java_interop.clj
@@ -1,28 +1,29 @@
; Copyright (c) Rich Hickey. All rights reserved.
; The use and distribution terms for this software are covered by the
; Eclipse Public License 1.0 (http://opensource.org/licenses/eclipse-1.0.php)
; which can be found in the file epl-v10.html at the root of this distribution.
; By using this software in any fashion, you are agreeing to be bound by
; the terms of this license.
; You must not remove this notice, or any other, from this software.
; Author: Frantisek Sodomka
(ns clojure.test-clojure.java-interop
- (:use clojure.test))
+ (:use clojure.test)
+ (:require [clojure.inspector]))
; http://clojure.org/java_interop
; http://clojure.org/compilation
(deftest test-dot
; (.instanceMember instance args*)
(are [x] (= x "FRED")
(.toUpperCase "fred")
(. "fred" toUpperCase)
(. "fred" (toUpperCase)) )
(are [x] (= x true)
(.startsWith "abcde" "ab")
(. "abcde" startsWith "ab")
@@ -159,30 +160,58 @@
(testing "That the proxy functions can chain"
(are [x y] (= x y)
(-> (get-proxy-class Object)
construct-proxy
(init-proxy {})
(update-proxy {"toString" (fn [_] "chain chain chain")})
str)
"chain chain chain"
(-> (proxy [Object] [] (toString [] "superfuzz bigmuff"))
(update-proxy {"toString" (fn [_] "chain chain chain")})
str)
"chain chain chain")))
+;; serialized-proxy can be regenerated using a modified version of
+;; Clojure with the proxy serialization prohibition disabled and the
+;; following code:
+#_(let [baos (java.io.ByteArrayOutputStream.) ]
+ (with-open [baos baos]
+ (.writeObject (java.io.ObjectOutputStream. baos) (clojure.inspector/list-model nil)))
+ (println (apply str (for [c (String. (.toByteArray baos) "ISO-8859-1")]
+ (if (<= 32 (int c) (int \z)) c (format "\\%03o" (int c)))))))
+(def serialized-proxy "\254\355\000\005sr\000Eclojure.inspector.proxy$javax.swing.table.AbstractTableModel$ff19274art\330\266_\010ME\002\000\001L\000\016__clojureFnMapt\000\035Lclojure/lang/IPersistentMap;xr\000$javax.swing.table.AbstractTableModelr\313\3538\256\001\377\276\002\000\001L\000\014listenerListt\000%Ljavax/swing/event/EventListenerList;xpsr\000#javax.swing.event.EventListenerList\2616\306\175\204\352\326D\003\000\000xppxsr\000\037clojure.lang.PersistentArrayMap\3437p\017\230\305\364\337\002\000\002L\000\005_metaq\000\176\000\001[\000\005arrayt\000\023[Ljava/lang/Object;xr\000\033clojure.lang.APersistentMap]\174/\003t r\173\002\000\002I\000\005_hashI\000\007_hasheqxp\000\000\000\000\000\000\000\000pur\000\023[Ljava.lang.Object;\220\316X\237\020s)l\002\000\000xp\000\000\000\006t\000\016getColumnCountsr\000%clojure.inspector$list_model$fn__8816H\252\320\325b\371!+\002\000\000xr\000\026clojure.lang.AFunction>\006p\234\236F\375\313\002\000\001L\000\021__methodImplCachet\000\036Lclojure/lang/MethodImplCache;xppt\000\013getRowCountsr\000%clojure.inspector$list_model$fn__8818-\037I\247\234/U\226\002\000\001L\000\005nrowst\000\022Ljava/lang/Object;xq\000\176\000\017ppt\000\012getValueAtsr\000%clojure.inspector$list_model$fn__8820\323\331\174ke\233\370\034\002\000\002L\000\011get_labelq\000\176\000\024L\000\011get_valueq\000\176\000\024xq\000\176\000\017ppp")
+
+(deftest test-proxy-non-serializable
+ (testing "That proxy classes refuse serialization and deserialization"
+ ;; Serializable listed directly in interface list:
+ (is (thrown? java.io.NotSerializableException
+ (-> (java.io.ByteArrayOutputStream.)
+ (java.io.ObjectOutputStream.)
+ (.writeObject (proxy [Object java.io.Serializable] [])))))
+ ;; Serializable included via inheritence:
+ (is (thrown? java.io.NotSerializableException
+ (-> (java.io.ByteArrayOutputStream.)
+ (java.io.ObjectOutputStream.)
+ (.writeObject (clojure.inspector/list-model nil)))))
+ ;; Deserialization also prohibited:
+ (is (thrown? java.io.NotSerializableException
+ (-> serialized-proxy (.getBytes "ISO-8859-1")
+ java.io.ByteArrayInputStream. java.io.ObjectInputStream.
+ .readObject)))))
+
(deftest test-bases
(are [x y] (= x y)
(bases java.lang.Math)
(list java.lang.Object)
(bases java.util.Collection)
(list java.lang.Iterable)
(bases java.lang.Object)
nil
(bases java.lang.Comparable)
nil
(bases java.lang.Integer)
(list java.lang.Number java.lang.Comparable) ))
(deftest test-supers
(are [x y] (= x y)
--
2.9.3

25
clj-2204.patch Normal file
View file

@ -0,0 +1,25 @@
From 3f5cf94eeac638a2993c98c786983918af5b8bbd Mon Sep 17 00:00:00 2001
From: Alex Miller <alex.miller@cognitect.com>
Date: Wed, 12 Jul 2017 07:09:00 -0500
Subject: [PATCH] CLJ-2204 Avoid AOT compilation of clojure.inspector which
creates classes susceptible to deserialization attacks
---
build.xml | 1 -
1 file changed, 1 deletion(-)
diff --git a/build.xml b/build.xml
index 0762853..dc38628 100644
--- a/build.xml
+++ b/build.xml
@@ -64,7 +64,6 @@
<arg value="clojure.edn"/>
<arg value="clojure.xml"/>
<arg value="clojure.zip"/>
- <arg value="clojure.inspector"/>
<arg value="clojure.walk"/>
<arg value="clojure.stacktrace"/>
<arg value="clojure.template"/>
--
2.9.0

View file

@ -1,6 +1,2 @@
#!/bin/bash
CLOJUREJAR=/usr/share/java/clojure/clojure.jar
CORESPECSJAR=/usr/share/java/clojure-core-specs-alpha/core.specs.alpha.jar
SPECALPHAJAR=/usr/share/java/clojure-spec-alpha/spec.alpha.jar
CLASSPATH=$CLASSPATH:$CLOJUREJAR:$SPECALPHAJAR:$CORESPECSALPHA
exec java ${JAVA_OPTS} -cp $CLASSPATH clojure.main "$@"
exec java ${JAVA_OPTS} -jar /usr/share/java/clojure.jar "$@"

View file

@ -2,29 +2,38 @@
%global groupId org.clojure
%global artifactId clojure
%global archivename %{project}-%{artifactId}
%define add_determinism_options --handler=-jar
Name: clojure
Epoch: 1
Version: 1.12.4
Release: 1%{?dist}
Version: 1.8.0
Release: 3%{?dist}
Summary: A dynamic programming language that targets the Java Virtual Machine
Group: Development/Languages
License: EPL-1.0
URL: http://clojure.org/
Source0: https://github.com/%{name}/%{name}/archive/%{name}-%{version}.zip
BuildArch: noarch
ExclusiveArch: %{java_arches} noarch
Source1: clojure.sh
BuildRequires: maven-local-openjdk25
BuildRequires: mvn(org.apache.maven.plugins:maven-antrun-plugin)
BuildRequires: mvn(org.apache.maven.plugins:maven-assembly-plugin)
BuildRequires: mvn(org.apache.maven.plugins:maven-source-plugin)
BuildRequires: mvn(org.clojure:core.specs.alpha)
BuildRequires: mvn(org.clojure:spec.alpha)
BuildRequires: mvn(org.codehaus.mojo:build-helper-maven-plugin)
Requires: javapackages-tools
# Backport clj-2204, https://clojure.atlassian.net/browse/CLJ-2204
Patch1: clj-2204-disable-proxy-serialization.patch
Patch2: clj-2204.patch
# Backport clj-2839 https://clojure.atlassian.net/browse/CLJ-2839
Patch3: 0001-Backport-patch-CLJ-2839-Infinite-seq-class-hashCode-.patch
BuildArch: noarch
BuildRequires: maven-local
BuildRequires: ant >= 1.6
BuildRequires: jpackage-utils >= 1.5
BuildRequires: objectweb-asm
BuildRequires: java-devel >= 1:1.6.0
BuildRequires: sonatype-oss-parent
Requires: jpackage-utils
Requires: java >= 1:1.6
Requires: objectweb-asm
%description
Clojure is a dynamic programming language that targets the Java
@ -40,200 +49,48 @@ can avoid reflection.
%prep
%setup -q -n %{archivename}-%{version}
%pom_remove_plugin :maven-release-plugin
%pom_remove_plugin :central-publishing-maven-plugin
%pom_remove_plugin :maven-javadoc-plugin
%patch -P 1 -p1
%patch -P 2 -p1
%patch -P 3 -p1
%build
%mvn_build -f -j
ant -Dmaven.test.skip=1
%mvn_artifact pom.xml %{name}.jar
%install
# jar - link to prefix'd jar so that java stuff knows where to look
install -d -m 755 %{buildroot}%{_javadir}
install -d -m 755 %{buildroot}%{_mavenpomdir}
install -pm 644 %{name}.jar %{buildroot}%{_javadir}/%{name}.jar
install -pm 644 pom.xml %{buildroot}%{_mavenpomdir}/JPP-%{name}.pom
# startup script
install -d -m 755 %{buildroot}%{_bindir}
install -pm 755 %{SOURCE1} %{buildroot}%{_bindir}/%{name}
%mvn_install
# startup script
%jpackage_script clojure.main "" "" clojure:clojure-spec-alpha:clojure-core-specs-alpha clojure false
%clean
rm -rf %{buildroot}
%files -f .mfiles
%license epl-v10.html
%doc changes.md readme.txt
%doc epl-v10.html changes.md readme.txt
%{_mavenpomdir}/*
%{_javadir}/%{name}.jar
%{_bindir}/%{name}
%changelog
* Thu Jan 15 2026 Markku Korkeala <markku.korkeala@iki.fi> - 1:1.12.4-1
- Update to upstream release 1.12.4, closes rhbz#2369851
* Wed Apr 3 2024 Markku Korkeala <Markku Korkeala iki fi> - 1:1.8.0-3
- Backport patch for clj-2839 to mitigate CVE-2024-22871.
* Tue Dec 09 2025 Markku Korkeala <markku.korkeala@iki.fi> - 1:1.12.3-2
- Remove timestamp modifications from jar, closes to rhbz#2355949
* Sat Jan 27 2024 Markku Korkeala <Markku Korkeala iki fi> - 1:1.8.0-2
- Add patch clj-2204 to mitigate CVE-2017-20189.
* Sun Nov 23 2025 Markku Korkeala <markku.korkeala@iki.fi> - 1:1.12.3-1
- Update to upstream release 1.12.3, closes rhbz#2186974
- Remove central-publishing-maven-plugin from pom
- Remove maven-javadoc-plugin from pom
* Tue Jul 29 2025 jiri vanek <jvanek@redhat.com> - 1:1.12.0-4
- Rebuilt for java-25-openjdk as preffered jdk
* Wed Jul 23 2025 Fedora Release Engineering <releng@fedoraproject.org> - 1:1.12.0-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild
* Thu Jan 16 2025 Fedora Release Engineering <releng@fedoraproject.org> - 1:1.12.0-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild
* Fri Oct 11 2024 Markku Korkeala <markku.korkeala@iki.fi> - 1:1.12.0-1
- Update to upstream release 1.12.0, closes rhbz#2186974
* Tue Oct 8 2024 Markku Korkeala <markku.korkeala@iki.fi> - 1:1.11.3-1
- Update to upstream release 1.11.3
* Wed Jul 17 2024 Fedora Release Engineering <releng@fedoraproject.org> - 1:1.11.2-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild
* Fri Mar 15 2024 Markku Korkeala <markku.korkeala@iki.fi> - 1:1.11.2-1
- Update to upstream release 1.11.2
* Wed Jan 24 2024 Fedora Release Engineering <releng@fedoraproject.org> - 1:1.11.1-7
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
* Fri Jan 19 2024 Fedora Release Engineering <releng@fedoraproject.org> - 1:1.11.1-6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
* Wed Jul 19 2023 Fedora Release Engineering <releng@fedoraproject.org> - 1:1.11.1-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
* Thu Jan 19 2023 Fedora Release Engineering <releng@fedoraproject.org> - 1:1.11.1-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
* Wed Jul 20 2022 Fedora Release Engineering <releng@fedoraproject.org> - 1:1.11.1-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
* Fri Jul 08 2022 Jiri Vanek <jvanek@redhat.com> - 1:1.11.1-2
- Rebuilt for Drop i686 JDKs
* Sun Apr 10 2022 Markku Korkeala <markku.korkeala@iki.fi> - 1:1.11.1-1
- Update to upstream release 1.11.1
* Sat Feb 05 2022 Jiri Vanek <jvanek@redhat.com> - 1:1.10.3-4
- Rebuilt for java-17-openjdk as system jdk
* Wed Jan 19 2022 Fedora Release Engineering <releng@fedoraproject.org> - 1:1.10.3-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
* Wed Jul 21 2021 Fedora Release Engineering <releng@fedoraproject.org> - 1:1.10.3-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
* Sat Mar 06 2021 Markku Korkeala <markku.korkeala@iki.fi> - 1:1.10.3-1
- Update to upstream release 1.10.3
* Sat Jan 30 2021 Markku Korkeala <markku.korkeala@iki.fi> - 1:1.10.2-1
- Update to upstream release 1.10.2
* Tue Jan 26 2021 Fedora Release Engineering <releng@fedoraproject.org> - 1:1.10.1-7
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
* Sun Jan 17 2021 Markku Korkeala <markku.korkeala@iki.fi> - 1:1.10.1-6
- Add javapackages-tools dependency to fix wrapper script.
* Mon Jul 27 2020 Fedora Release Engineering <releng@fedoraproject.org> - 1:1.10.1-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
* Fri Jul 10 2020 Jiri Vanek <jvanek@redhat.com> - 1:1.10.1-4
- Rebuilt for JDK-11, see https://fedoraproject.org/wiki/Changes/Java11
* Sat May 02 2020 Markku Korkeala <markku.korkeala@iki.fi> - 1:1.10.1-3
- Use jpackage_script to generate clojure application shell script.
* Fri May 01 2020 Fabio Valentini <decathorpe@gmail.com> - 1:1.10.1-2
- Remove unnecessary maven-release-plugin and drop redundant Requires.
* Wed Apr 15 2020 Markku Korkeala <markku.korkeala@iki.fi> - 1:1.10.1-1
- Update to upstream release 1.10.1
- Update clojure-spec-alpha and clojure-core-specs-alpha dependency
- Remove jsr166y pom_remove_dep
* Tue Apr 14 2020 Markku Korkeala <markku.korkeala@iki.fi> - 1:1.9.0-1
- Update to upstream release 1.9.0, update clojure-spec-alpha dependency
* Sat Apr 11 2020 Markku Korkeala <markku.korkeala@iki.fi> - 1:1.9.0-0.beta3.1
- Update to upstream release 1.9.0-beta3
- Switch to use maven building
- Remove plugin org.sonatype.plugins:nexus-staging-maven-plugin
- Remove jsr166 dependency from pom
* Sat Apr 04 2020 Markku Korkeala <markku.korkeala@iki.fi> - 1:1.9.0-0.alpha15.1
- Update to upstream release 1.9.0-alpha15
- Update to require JDK 1.8
* Tue Jan 28 2020 Fedora Release Engineering <releng@fedoraproject.org> - 1:1.8.0-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
* Wed Sep 04 2019 Markku Korkeala <markku.korkeala@iki.fi> - 1:1.8.0-1
- Update to upstream release 1.8.0
- Add sonatype-oss-parent as a build requirement
- Add license macro and fix license short name
* Wed Jul 24 2019 Fedora Release Engineering <releng@fedoraproject.org> - 1:1.8.0-0.beta1.7
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
* Thu Jan 31 2019 Fedora Release Engineering <releng@fedoraproject.org> - 1:1.8.0-0.beta1.6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
* Thu Jul 12 2018 Fedora Release Engineering <releng@fedoraproject.org> - 1:1.8.0-0.beta1.5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
* Wed Feb 07 2018 Fedora Release Engineering <releng@fedoraproject.org> - 1:1.8.0-0.beta1.4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
* Wed Jul 26 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1:1.8.0-0.beta1.3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
* Fri Feb 10 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1:1.8.0-0.beta1.2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
* Wed Feb 03 2016 Fedora Release Engineering <releng@fedoraproject.org> - 1:1.8.0-0.beta1.1
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
* Thu Oct 15 2015 Jochen Schmitt <Jochen herr-schmitt de> - 1:1.8.0-0.beta1
- New prerelease of Clojure 1.8.0
* Wed Jun 17 2015 Jochen Schmitt <Jochen herr-schmitt de> - 1:1.7.0-0.5
- New upstream release (clojure-1.7.0-RC2)
* Wed Jun 17 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1:1.7.0-0.4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
* Fri Jun 5 2015 Jochen Schmitt <Jochen herr-schmitt de> - 1:1.7.0-0.3
- New upstream release
* Fri May 1 2015 Jochen Schmitt <Jochen herr-schmitt de> - 1:1.7.0-0.2
- New upstream release
* Tue Apr 14 2015 Jochen Schmitt <Jochen herr-schmitt de> - 1:1.7.0-0.1
- New upstream release
* Thu Jul 24 2014 Jochen Schmitt <Jochen herr-schmitt de> - 1:1.6.0-3
- Migrating to the new JAVA packaging guidelines
* Sat Jun 07 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1:1.6.0-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
* Tue Mar 25 2014 Jochen Schmitt <Jochen herr-schmitt de> - 1:1.6.0-1
- New upstream release
* Mon Mar 24 2014 Jochen Schmitt <Jochen herr-schmitt de> - 1:1.6.0-0.5
- New release candidate of clujure 1.6.0
* Tue Mar 18 2014 Jochen Schmitt <Jochen herr-schmitt de> - 1:1.6.0-0.3
- Relöease candidate of clojure 1.6.0
* Wed Mar 5 2014 Jochen Schmitt <Jochen herr-schmitt de> - 1:1.6.0-0.2
- New upstream pre-release
- Add support for headless java (#1068005)
* Sat Aug 03 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1:1.5.1-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild
* Thu Apr 2 2020 Markku Korkeala <Markku Korkeala iki fi> - 1:1.8.0-1
- New upstream release.
- Replace add_maven_depmap macros with mvn_artifact and mvn_install
* Tue Apr 30 2013 Jochen Schmitt <Jochen herr-schmitt de> - 1:1.5.1-1
- New upstream release.

View file

@ -1 +1 @@
SHA512 (clojure-1.12.4.zip) = e1629a330426f694ec9da11957a17fce1504175a0e801402ddc053a695e7f95c0fdc1af746897c80a37f5d2084a571034027e869a683dfebfef92b7af3598320
SHA512 (clojure-1.8.0.zip) = 36d95213f35ba182d8f3efb4753a50078a0f19a4ef9084c10c300ea075d11ba7d92dec51347afc5c23424800b9c75f9fcc363b23ead4f836ed193d8913ade0e4