unofficial mirror of guix-patches@gnu.org 
 help / color / mirror / code / Atom feed
* [bug#28841] [PATCH] New java packages
@ 2017-10-14 21:32 Julien Lepiller
  2017-10-14 22:23 ` [bug#28841] [PATCH 01/24] gnu: Add java-hdrhistogram julien
  2017-10-23 20:58 ` bug#28841: [PATCH] New java packages Julien Lepiller
  0 siblings, 2 replies; 36+ messages in thread
From: Julien Lepiller @ 2017-10-14 21:32 UTC (permalink / raw)
  To: 28841

Hi,

this patch series adds 23 new java packages that are required before we
can build maven.

^ permalink raw reply	[flat|nested] 36+ messages in thread

* [bug#28841] [PATCH 01/24] gnu: Add java-hdrhistogram.
  2017-10-14 21:32 [bug#28841] [PATCH] New java packages Julien Lepiller
@ 2017-10-14 22:23 ` julien
  2017-10-14 22:23   ` [bug#28841] [PATCH 02/24] gnu: Add java-tomcat julien
                     ` (23 more replies)
  2017-10-23 20:58 ` bug#28841: [PATCH] New java packages Julien Lepiller
  1 sibling, 24 replies; 36+ messages in thread
From: julien @ 2017-10-14 22:23 UTC (permalink / raw)
  To: 28841

From: Julien Lepiller <julien@lepiller.eu>

* gnu/packages/java.scm (java-hdrhistogram): New variable.
---
 gnu/packages/java.scm | 38 ++++++++++++++++++++++++++++++++++++++
 1 file changed, 38 insertions(+)

diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm
index 95fba20e8..a36db179a 100644
--- a/gnu/packages/java.scm
+++ b/gnu/packages/java.scm
@@ -6020,3 +6020,41 @@ provides low-level abstractions (@code{JsonParser}, @code{JsonGenerator},
 @code{JsonFactory}) as well as small number of higher level overrides needed to
 make data-binding work.")
     (license license:asl2.0))); found on wiki.fasterxml.com/JacksonLicensing
+
+(define-public java-hdrhistogram
+  (package
+    (name "java-hdrhistogram")
+    (version "2.1.9")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "https://github.com/HdrHistogram/HdrHistogram/"
+                                  "archive/HdrHistogram-" version ".tar.gz"))
+              (sha256
+               (base32
+                "1sicbmc3sr42nw93qbkb26q9rn33ag33k6k77phjc3j5h5gjffqv"))))
+    (build-system ant-build-system)
+    (arguments
+     `(#:jar-name "java-hdrhistogram.jar"
+       #:source-dir "src/main/java"
+       #:phases
+       (modify-phases %standard-phases
+         (add-before 'configure 'set-version
+           (lambda _
+             (let* ((version-java "src/main/java/org/HdrHistogram/Version.java")
+                    (template (string-append version-java ".template")))
+               (copy-file template version-java)
+               (substitute* version-java
+                 (("\\$VERSION\\$") ,version)
+                 (("\\$BUILD_TIME\\$") "0"))))))))
+    (native-inputs
+     `(("junit" ,java-junit)
+       ("hamcrest" ,java-hamcrest-core)))
+    (home-page "https://hdrhistogram.github.io/HdrHistogram")
+    (synopsis "High Dynamic Range Histogram")
+    (description "Histogram that supports recording and analyzing sampled data
+value counts across a configurable integer value range with configurable value
+precision within the range.  Value precision is expressed as the number of
+significant digits in the value recording, and provides control over value
+quantization behavior across the value range and the subsequent value resolution
+at any given level.")
+    (license license:bsd-2)))
-- 
2.14.2

^ permalink raw reply related	[flat|nested] 36+ messages in thread

* [bug#28841] [PATCH 02/24] gnu: Add java-tomcat.
  2017-10-14 22:23 ` [bug#28841] [PATCH 01/24] gnu: Add java-hdrhistogram julien
@ 2017-10-14 22:23   ` julien
  2017-10-18 20:36     ` Ricardo Wurmus
                       ` (2 more replies)
  2017-10-14 22:23   ` [bug#28841] [PATCH 03/24] gnu: Add java-eclipse-jetty-test-helper julien
                     ` (22 subsequent siblings)
  23 siblings, 3 replies; 36+ messages in thread
From: julien @ 2017-10-14 22:23 UTC (permalink / raw)
  To: 28841

From: Julien Lepiller <julien@lepiller.eu>

* gnu/packages/java.scm (java-tomcat): New variable.
---
 gnu/packages/java.scm | 43 +++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 43 insertions(+)

diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm
index a36db179a..4561b92d8 100644
--- a/gnu/packages/java.scm
+++ b/gnu/packages/java.scm
@@ -6058,3 +6058,46 @@ significant digits in the value recording, and provides control over value
 quantization behavior across the value range and the subsequent value resolution
 at any given level.")
     (license license:bsd-2)))
+
+(define-public java-tomcat
+  (package
+    (name "java-tomcat")
+    (version "8.5.23")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "mirror://apache/tomcat/tomcat-8/v"
+                                  version "/src/apache-tomcat-" version "-src.tar.gz"))
+              (sha256
+               (base32
+                "1m6b1dikib46kbgz9gf0p6svi00nsw62b9kgjzn6sda151skbbza"))))
+    (build-system ant-build-system)
+    (inputs
+     `(("java-eclipse-jdt-core" ,java-eclipse-jdt-core)))
+    (native-inputs
+     `(("java-junit" ,java-junit)))
+    (arguments
+     `(#:build-target "package"
+       #:tests? #f; requires downloading some files.
+       #:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'properties
+           (lambda _
+             (mkdir "downloads")
+             (substitute* "build.xml"
+               (("download-compile,") "")
+               (("depends=\"validate\"") "depends=\"build-prepare\"")
+               ((",download-validate") ""))
+             (with-output-to-file "build.properties"
+               (lambda _
+                 (display
+                   (string-append "base.path=" (getcwd) "/downloads\n"))))))
+         (replace 'install
+           (install-jars "output/build/lib")))))
+    (home-page "https://tomcat.apache.org")
+    (synopsis "Java Servlet, JavaServer Pages, Java Expression Language and Java
+WebSocket")
+    (description "Apache Tomcat is an open source implementation of the Java
+Servlet, JavaServer Pages, Java Expression Language and Java WebSocket
+technologies.  The Java Servlet, JavaServer Pages, Java Expression Language and
+Java WebSocket specifications are developed under the Java Community Process.")
+    (license license:asl2.0)))
-- 
2.14.2

^ permalink raw reply related	[flat|nested] 36+ messages in thread

* [bug#28841] [PATCH 03/24] gnu: Add java-eclipse-jetty-test-helper.
  2017-10-14 22:23 ` [bug#28841] [PATCH 01/24] gnu: Add java-hdrhistogram julien
  2017-10-14 22:23   ` [bug#28841] [PATCH 02/24] gnu: Add java-tomcat julien
@ 2017-10-14 22:23   ` julien
  2017-10-18 20:50     ` Ricardo Wurmus
  2017-10-14 22:23   ` [bug#28841] [PATCH 04/24] gnu: Add java-eclipse-jetty-perf-helper julien
                     ` (21 subsequent siblings)
  23 siblings, 1 reply; 36+ messages in thread
From: julien @ 2017-10-14 22:23 UTC (permalink / raw)
  To: 28841

From: Julien Lepiller <julien@lepiller.eu>

* gnu/packages/java.scm (java-eclipse-jetty-test-helper): New variable.
---
 gnu/packages/java.scm | 48 ++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 48 insertions(+)

diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm
index 4561b92d8..d8920a097 100644
--- a/gnu/packages/java.scm
+++ b/gnu/packages/java.scm
@@ -6101,3 +6101,51 @@ Servlet, JavaServer Pages, Java Expression Language and Java WebSocket
 technologies.  The Java Servlet, JavaServer Pages, Java Expression Language and
 Java WebSocket specifications are developed under the Java Community Process.")
     (license license:asl2.0)))
+
+(define-public java-eclipse-jetty-test-helper
+  (package
+    (name "java-eclipse-jetty-test-helper")
+    (version "4.2")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "https://github.com/eclipse/jetty.toolchain/"
+                                  "archive/jetty-test-helper-" version ".tar.gz"))
+              (sha256
+               (base32
+                "1jd6r9wc26fa11si4rn2gvy8ml8q4zw1nr6v04mjp8wvwpgvzwx5"))))
+    (build-system ant-build-system)
+    (arguments
+     `(#:jar-name "eclipse-jetty-test-helper.jar"
+       #:source-dir "src/main/java"
+       #:test-dir "src/test"
+       #:jdk ,icedtea-8
+       #:phases
+       (modify-phases %standard-phases
+         (add-before 'configure 'chdir
+           (lambda _
+             (chdir "jetty-test-helper")))
+         (add-before 'build 'fix-build-path
+           (lambda _
+             ;; FIXME:
+             ;; This file assumes that the build directory is named "target"
+             ;; but it is not the case with our ant-build-system. Once we have
+             ;; maven though, we will have to rebuild this package because this
+             ;; assumption is correct with maven-build-system.
+             (substitute*
+               "src/main/java/org/eclipse/jetty/toolchain/test/MavenTestingUtils.java"
+               (("\"target\"") "\"build\"")
+               (("\"tests\"") "\"test-classes\""))))
+         (add-before 'check 'fix-paths
+           (lambda _
+             (with-directory-excursion "src/test/java/org/eclipse/jetty/toolchain/test"
+               (substitute* '("FSTest.java" "OSTest.java" "TestingDirTest.java"
+                              "MavenTestingUtilsTest.java")
+                 (("target/tests") "build/test-classes")
+                 (("\"target") "\"build"))))))))
+    (inputs
+     `(("junit" ,java-junit)
+       ("hamcrest" ,java-hamcrest-all)))
+    (home-page "https://www.eclipse.org/jetty/")
+    (synopsis "Helper classes for jetty tests")
+    (description "This packages contains helper classes for testing jetty.")
+    (license (list license:epl1.0 license:asl2.0))))
-- 
2.14.2

^ permalink raw reply related	[flat|nested] 36+ messages in thread

* [bug#28841] [PATCH 04/24] gnu: Add java-eclipse-jetty-perf-helper.
  2017-10-14 22:23 ` [bug#28841] [PATCH 01/24] gnu: Add java-hdrhistogram julien
  2017-10-14 22:23   ` [bug#28841] [PATCH 02/24] gnu: Add java-tomcat julien
  2017-10-14 22:23   ` [bug#28841] [PATCH 03/24] gnu: Add java-eclipse-jetty-test-helper julien
@ 2017-10-14 22:23   ` julien
  2017-10-14 22:23   ` [bug#28841] [PATCH 05/24] gnu: Add java-eclipse-jetty-util julien
                     ` (20 subsequent siblings)
  23 siblings, 0 replies; 36+ messages in thread
From: julien @ 2017-10-14 22:23 UTC (permalink / raw)
  To: 28841

From: Julien Lepiller <julien@lepiller.eu>

* gnu/packages/java.scm (java-eclipse-jetty-perf-helper): New variable.
---
 gnu/packages/java.scm | 17 +++++++++++++++++
 1 file changed, 17 insertions(+)

diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm
index d8920a097..a2c76aa14 100644
--- a/gnu/packages/java.scm
+++ b/gnu/packages/java.scm
@@ -6149,3 +6149,20 @@ Java WebSocket specifications are developed under the Java Community Process.")
     (synopsis "Helper classes for jetty tests")
     (description "This packages contains helper classes for testing jetty.")
     (license (list license:epl1.0 license:asl2.0))))
+
+(define-public java-eclipse-jetty-perf-helper
+  (package
+    (inherit java-eclipse-jetty-test-helper)
+    (name "java-eclipse-jetty-perf-helper")
+    (arguments
+     `(#:jar-name "eclipse-jetty-perf-helper.jar"
+       #:source-dir "src/main/java"
+       #:tests? #f; no tests
+       #:jdk ,icedtea-8
+       #:phases
+       (modify-phases %standard-phases
+         (add-before 'configure 'chdir
+           (lambda _
+             (chdir "jetty-perf-helper"))))))
+    (inputs
+     `(("hdrhistogram" ,java-hdrhistogram)))))
-- 
2.14.2

^ permalink raw reply related	[flat|nested] 36+ messages in thread

* [bug#28841] [PATCH 05/24] gnu: Add java-eclipse-jetty-util.
  2017-10-14 22:23 ` [bug#28841] [PATCH 01/24] gnu: Add java-hdrhistogram julien
                     ` (2 preceding siblings ...)
  2017-10-14 22:23   ` [bug#28841] [PATCH 04/24] gnu: Add java-eclipse-jetty-perf-helper julien
@ 2017-10-14 22:23   ` julien
  2017-10-14 22:23   ` [bug#28841] [PATCH 06/24] gnu: Add java-eclipse-jetty-util-9.2 julien
                     ` (19 subsequent siblings)
  23 siblings, 0 replies; 36+ messages in thread
From: julien @ 2017-10-14 22:23 UTC (permalink / raw)
  To: 28841

From: Julien Lepiller <julien@lepiller.eu>

* gnu/packages/java.scm (java-eclipse-jetty-util): New variable.
---
 gnu/packages/java.scm | 44 ++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 44 insertions(+)

diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm
index a2c76aa14..30312a3d9 100644
--- a/gnu/packages/java.scm
+++ b/gnu/packages/java.scm
@@ -6166,3 +6166,47 @@ Java WebSocket specifications are developed under the Java Community Process.")
              (chdir "jetty-perf-helper"))))))
     (inputs
      `(("hdrhistogram" ,java-hdrhistogram)))))
+
+(define-public java-eclipse-jetty-util
+  (package
+    (name "java-eclipse-jetty-util")
+    (version "9.4.6")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "https://github.com/eclipse/jetty.project/"
+                                  "archive/jetty-" version ".v20170531.tar.gz"))
+              (sha256
+               (base32
+                "0x7kbdvkmgr6kbsmbwiiyv3bb0d6wk25frgvld9cf8540136z9p1"))))
+    (build-system ant-build-system)
+    (arguments
+     `(#:jar-name "eclipse-jetty-util.jar"
+       #:source-dir "src/main/java"
+       #:test-exclude
+       (list "**/Abstract*.java"
+             ;; requires network
+             "**/InetAddressSetTest.java"
+             ;; Assumes we are using maven
+             "**/TypeUtilTest.java"
+             ;; Error on the style of log
+             "**/StdErrLogTest.java")
+       #:jdk ,icedtea-8
+       #:phases
+       (modify-phases %standard-phases
+         (add-before 'configure 'chdir
+           (lambda _
+             (chdir "jetty-util"))))))
+    (inputs
+     `(("slf4j" ,java-slf4j-api)
+       ("servlet" ,java-tomcat)))
+    (native-inputs
+     `(("junit" ,java-junit)
+       ("hamcrest" ,java-hamcrest-all)
+       ("perf-helper" ,java-eclipse-jetty-perf-helper)
+       ("test-helper" ,java-eclipse-jetty-test-helper)))
+    (home-page "https://www.eclipse.org/jetty/")
+    (synopsis "Utility classes for Jetty")
+    (description "The Jetty Web Server provides an HTTP server and Servlet
+container capable of serving static and dynamic content either from a standalone
+or embedded instantiation.  This package provides utility classes.")
+    (license (list license:epl1.0 license:asl2.0))))
-- 
2.14.2

^ permalink raw reply related	[flat|nested] 36+ messages in thread

* [bug#28841] [PATCH 06/24] gnu: Add java-eclipse-jetty-util-9.2.
  2017-10-14 22:23 ` [bug#28841] [PATCH 01/24] gnu: Add java-hdrhistogram julien
                     ` (3 preceding siblings ...)
  2017-10-14 22:23   ` [bug#28841] [PATCH 05/24] gnu: Add java-eclipse-jetty-util julien
@ 2017-10-14 22:23   ` julien
  2017-10-14 22:23   ` [bug#28841] [PATCH 07/24] gnu: Add java-eclipse-jetty-io julien
                     ` (18 subsequent siblings)
  23 siblings, 0 replies; 36+ messages in thread
From: julien @ 2017-10-14 22:23 UTC (permalink / raw)
  To: 28841

From: Julien Lepiller <julien@lepiller.eu>

* gnu/packages/java.scm (java-eclipse-jetty-util-9.2): New variable.
---
 gnu/packages/java.scm | 41 +++++++++++++++++++++++++++++++++++++++++
 1 file changed, 41 insertions(+)

diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm
index 30312a3d9..33037a53d 100644
--- a/gnu/packages/java.scm
+++ b/gnu/packages/java.scm
@@ -6210,3 +6210,44 @@ Java WebSocket specifications are developed under the Java Community Process.")
 container capable of serving static and dynamic content either from a standalone
 or embedded instantiation.  This package provides utility classes.")
     (license (list license:epl1.0 license:asl2.0))))
+
+;; This version is required by maven-wagon
+(define-public java-eclipse-jetty-util-9.2
+  (package
+    (inherit java-eclipse-jetty-util)
+    (version "9.2.22")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "https://github.com/eclipse/jetty.project/"
+                                  "archive/jetty-" version ".v20170606.tar.gz"))
+              (sha256
+               (base32
+                "1i51qlsd7h06d35kx5rqpzbfadbcszycx1iwr6vz7qc9gf9f29la"))))
+    (arguments
+     `(#:jar-name "eclipse-jetty-util.jar"
+       #:source-dir "src/main/java"
+       #:jdk ,icedtea-8
+       #:test-exclude
+       (list "**/Abstract*.java"
+             ;; requires network
+             "**/InetAddressSetTest.java"
+             ;; Assumes we are using maven
+             "**/TypeUtilTest.java"
+             ;; We don't have an implementation for slf4j
+             "**/LogTest.java"
+             ;; Error on the style of log
+             "**/StdErrLogTest.java")
+       #:phases
+       (modify-phases %standard-phases
+         (add-before 'configure 'chdir
+           (lambda _
+             (chdir "jetty-util")))
+         (add-before 'check 'fix-sources
+           (lambda _
+             (let ((src "src/test/java/org/eclipse/jetty/util/resource"))
+               (substitute* (string-append src "/AbstractFSResourceTest.java")
+                 (("testdir.getDir\\(\\)") "testdir.getPath().toFile()")
+                 (("testdir.getFile\\(\"foo\"\\)")
+                  "testdir.getPathFile(\"foo\").toFile()")
+                 (("testdir.getFile\\(name\\)")
+                  "testdir.getPathFile(name).toFile()"))))))))))
-- 
2.14.2

^ permalink raw reply related	[flat|nested] 36+ messages in thread

* [bug#28841] [PATCH 07/24] gnu: Add java-eclipse-jetty-io.
  2017-10-14 22:23 ` [bug#28841] [PATCH 01/24] gnu: Add java-hdrhistogram julien
                     ` (4 preceding siblings ...)
  2017-10-14 22:23   ` [bug#28841] [PATCH 06/24] gnu: Add java-eclipse-jetty-util-9.2 julien
@ 2017-10-14 22:23   ` julien
  2017-10-14 22:23   ` [bug#28841] [PATCH 08/24] gnu: Add java-eclipse-jetty-io-9.2 julien
                     ` (17 subsequent siblings)
  23 siblings, 0 replies; 36+ messages in thread
From: julien @ 2017-10-14 22:23 UTC (permalink / raw)
  To: 28841

From: Julien Lepiller <julien@lepiller.eu>

* gnu/packages/java.scm (java-eclipse-jetty-io): New variable.
---
 gnu/packages/java.scm | 25 +++++++++++++++++++++++++
 1 file changed, 25 insertions(+)

diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm
index 33037a53d..8580eec53 100644
--- a/gnu/packages/java.scm
+++ b/gnu/packages/java.scm
@@ -6251,3 +6251,28 @@ or embedded instantiation.  This package provides utility classes.")
                   "testdir.getPathFile(\"foo\").toFile()")
                  (("testdir.getFile\\(name\\)")
                   "testdir.getPathFile(name).toFile()"))))))))))
+
+(define-public java-eclipse-jetty-io
+  (package
+    (inherit java-eclipse-jetty-util)
+    (name "java-eclipse-jetty-io")
+    (arguments
+     `(#:jar-name "eclipse-jetty-io.jar"
+       #:source-dir "src/main/java"
+       #:jdk ,icedtea-8
+       #:test-exclude (list "**/Abstract*.java"
+                            ;; Abstract class
+                            "**/EndPointTest.java")
+       #:phases
+       (modify-phases %standard-phases
+         (add-before 'configure 'chdir
+           (lambda _
+             (chdir "jetty-io"))))))
+    (inputs
+     `(("slf4j" ,java-slf4j-api)
+       ("servlet" ,java-tomcat)
+       ("util" ,java-eclipse-jetty-util)))
+    (synopsis "Jetty :: IO Utility")
+    (description "The Jetty Web Server provides an HTTP server and Servlet
+container capable of serving static and dynamic content either from a standalone
+or embedded instantiation.  This package provides IO-related utility classes.")))
-- 
2.14.2

^ permalink raw reply related	[flat|nested] 36+ messages in thread

* [bug#28841] [PATCH 08/24] gnu: Add java-eclipse-jetty-io-9.2.
  2017-10-14 22:23 ` [bug#28841] [PATCH 01/24] gnu: Add java-hdrhistogram julien
                     ` (5 preceding siblings ...)
  2017-10-14 22:23   ` [bug#28841] [PATCH 07/24] gnu: Add java-eclipse-jetty-io julien
@ 2017-10-14 22:23   ` julien
  2017-10-14 22:23   ` [bug#28841] [PATCH 09/24] gnu: Add java-eclipse-jetty-http julien
                     ` (16 subsequent siblings)
  23 siblings, 0 replies; 36+ messages in thread
From: julien @ 2017-10-14 22:23 UTC (permalink / raw)
  To: 28841

From: Julien Lepiller <julien@lepiller.eu>

* gnu/packages/java.scm (java-eclipse-jetty-io-9.2): New variable.
---
 gnu/packages/java.scm | 15 +++++++++++++++
 1 file changed, 15 insertions(+)

diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm
index 8580eec53..2e93f90b7 100644
--- a/gnu/packages/java.scm
+++ b/gnu/packages/java.scm
@@ -6276,3 +6276,18 @@ or embedded instantiation.  This package provides utility classes.")
     (description "The Jetty Web Server provides an HTTP server and Servlet
 container capable of serving static and dynamic content either from a standalone
 or embedded instantiation.  This package provides IO-related utility classes.")))
+
+(define-public java-eclipse-jetty-io-9.2
+  (package
+    (inherit java-eclipse-jetty-io)
+    (version (package-version java-eclipse-jetty-util-9.2))
+    (source (package-source java-eclipse-jetty-util-9.2))
+    (inputs
+     `(("util" ,java-eclipse-jetty-util-9.2)
+       ,@(package-inputs java-eclipse-jetty-util-9.2)))
+    (native-inputs
+     `(("mockito" ,java-mockito-1)
+       ("cglib" ,java-cglib)
+       ("objenesis" ,java-objenesis)
+       ("asm" ,java-asm)
+       ,@(package-native-inputs java-eclipse-jetty-util-9.2)))))
-- 
2.14.2

^ permalink raw reply related	[flat|nested] 36+ messages in thread

* [bug#28841] [PATCH 09/24] gnu: Add java-eclipse-jetty-http.
  2017-10-14 22:23 ` [bug#28841] [PATCH 01/24] gnu: Add java-hdrhistogram julien
                     ` (6 preceding siblings ...)
  2017-10-14 22:23   ` [bug#28841] [PATCH 08/24] gnu: Add java-eclipse-jetty-io-9.2 julien
@ 2017-10-14 22:23   ` julien
  2017-10-14 22:23   ` [bug#28841] [PATCH 10/24] gnu: Add java-eclipse-jetty-http-9.2 julien
                     ` (15 subsequent siblings)
  23 siblings, 0 replies; 36+ messages in thread
From: julien @ 2017-10-14 22:23 UTC (permalink / raw)
  To: 28841

From: Julien Lepiller <julien@lepiller.eu>

* gnu/packages/java.scm (java-eclipse-jetty-http): New variable.
---
 gnu/packages/java.scm | 27 +++++++++++++++++++++++++++
 1 file changed, 27 insertions(+)

diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm
index 2e93f90b7..a35dcce96 100644
--- a/gnu/packages/java.scm
+++ b/gnu/packages/java.scm
@@ -6291,3 +6291,30 @@ or embedded instantiation.  This package provides IO-related utility classes."))
        ("objenesis" ,java-objenesis)
        ("asm" ,java-asm)
        ,@(package-native-inputs java-eclipse-jetty-util-9.2)))))
+
+(define-public java-eclipse-jetty-http
+  (package
+    (inherit java-eclipse-jetty-util)
+    (name "java-eclipse-jetty-http")
+    (arguments
+     `(#:jar-name "eclipse-jetty-http.jar"
+       #:source-dir "src/main/java"
+       #:jdk ,icedtea-8
+       #:phases
+       (modify-phases %standard-phases
+         (add-before 'configure 'chdir
+           (lambda _
+             (chdir "jetty-http")))
+         (add-before 'build 'copy-resources
+           (lambda _
+             (mkdir-p "build/classes")
+             (copy-recursively "src/main/resources/" "build/classes/"))))))
+    (inputs
+     `(("slf4j" ,java-slf4j-api)
+       ("servlet" ,java-tomcat)
+       ("io" ,java-eclipse-jetty-io)
+       ("util" ,java-eclipse-jetty-util)))
+    (synopsis "Jetty :: Http Utility")
+    (description "The Jetty Web Server provides an HTTP server and Servlet
+container capable of serving static and dynamic content either from a standalone
+or embedded instantiation.  This package provides HTTP-related utility classes.")))
-- 
2.14.2

^ permalink raw reply related	[flat|nested] 36+ messages in thread

* [bug#28841] [PATCH 10/24] gnu: Add java-eclipse-jetty-http-9.2.
  2017-10-14 22:23 ` [bug#28841] [PATCH 01/24] gnu: Add java-hdrhistogram julien
                     ` (7 preceding siblings ...)
  2017-10-14 22:23   ` [bug#28841] [PATCH 09/24] gnu: Add java-eclipse-jetty-http julien
@ 2017-10-14 22:23   ` julien
  2017-10-14 22:23   ` [bug#28841] [PATCH 11/24] gnu: Add java-eclipse-jetty-jmx julien
                     ` (14 subsequent siblings)
  23 siblings, 0 replies; 36+ messages in thread
From: julien @ 2017-10-14 22:23 UTC (permalink / raw)
  To: 28841

From: Julien Lepiller <julien@lepiller.eu>

* gnu/packages/java.scm (java-eclipse-jetty-http-9.2): New variable.
---
 gnu/packages/java.scm | 10 ++++++++++
 1 file changed, 10 insertions(+)

diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm
index a35dcce96..7adb0e8b8 100644
--- a/gnu/packages/java.scm
+++ b/gnu/packages/java.scm
@@ -6318,3 +6318,13 @@ or embedded instantiation.  This package provides IO-related utility classes."))
     (description "The Jetty Web Server provides an HTTP server and Servlet
 container capable of serving static and dynamic content either from a standalone
 or embedded instantiation.  This package provides HTTP-related utility classes.")))
+
+(define-public java-eclipse-jetty-http-9.2
+  (package
+    (inherit java-eclipse-jetty-http)
+    (version (package-version java-eclipse-jetty-util-9.2))
+    (source (package-source java-eclipse-jetty-util-9.2))
+    (inputs
+     `(("util" ,java-eclipse-jetty-util-9.2)
+       ("io" ,java-eclipse-jetty-io-9.2)
+       ,@(package-inputs java-eclipse-jetty-util-9.2)))))
-- 
2.14.2

^ permalink raw reply related	[flat|nested] 36+ messages in thread

* [bug#28841] [PATCH 11/24] gnu: Add java-eclipse-jetty-jmx.
  2017-10-14 22:23 ` [bug#28841] [PATCH 01/24] gnu: Add java-hdrhistogram julien
                     ` (8 preceding siblings ...)
  2017-10-14 22:23   ` [bug#28841] [PATCH 10/24] gnu: Add java-eclipse-jetty-http-9.2 julien
@ 2017-10-14 22:23   ` julien
  2017-10-14 22:23   ` [bug#28841] [PATCH 12/24] gnu: Add java-eclipse-jetty-jmx-9.2 julien
                     ` (13 subsequent siblings)
  23 siblings, 0 replies; 36+ messages in thread
From: julien @ 2017-10-14 22:23 UTC (permalink / raw)
  To: 28841

From: Julien Lepiller <julien@lepiller.eu>

* gnu/packages/java.scm (java-eclipse-jetty-jmx): New variable.
---
 gnu/packages/java.scm | 23 +++++++++++++++++++++++
 1 file changed, 23 insertions(+)

diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm
index 7adb0e8b8..7bc8a0d45 100644
--- a/gnu/packages/java.scm
+++ b/gnu/packages/java.scm
@@ -6328,3 +6328,26 @@ or embedded instantiation.  This package provides HTTP-related utility classes."
      `(("util" ,java-eclipse-jetty-util-9.2)
        ("io" ,java-eclipse-jetty-io-9.2)
        ,@(package-inputs java-eclipse-jetty-util-9.2)))))
+
+(define-public java-eclipse-jetty-jmx
+  (package
+    (inherit java-eclipse-jetty-util)
+    (name "java-eclipse-jetty-jmx")
+    (arguments
+     `(#:jar-name "eclipse-jetty-jmx.jar"
+       #:source-dir "src/main/java"
+       #:jdk ,icedtea-8
+       #:tests? #f; FIXME: requires com.openpojo.validation
+       #:phases
+       (modify-phases %standard-phases
+         (add-before 'configure 'chdir
+           (lambda _
+             (chdir "jetty-jmx"))))))
+    (inputs
+     `(("slf4j" ,java-slf4j-api)
+       ("servlet" ,java-tomcat)
+       ("util" ,java-eclipse-jetty-util)))
+    (synopsis "Jetty :: JMX Management")
+    (description "The Jetty Web Server provides an HTTP server and Servlet
+container capable of serving static and dynamic content either from a standalone
+or embedded instantiation.  This package provides the JMX management.")))
-- 
2.14.2

^ permalink raw reply related	[flat|nested] 36+ messages in thread

* [bug#28841] [PATCH 12/24] gnu: Add java-eclipse-jetty-jmx-9.2.
  2017-10-14 22:23 ` [bug#28841] [PATCH 01/24] gnu: Add java-hdrhistogram julien
                     ` (9 preceding siblings ...)
  2017-10-14 22:23   ` [bug#28841] [PATCH 11/24] gnu: Add java-eclipse-jetty-jmx julien
@ 2017-10-14 22:23   ` julien
  2017-10-14 22:23   ` [bug#28841] [PATCH 13/24] gnu: Add java-eclipse-jetty-server julien
                     ` (12 subsequent siblings)
  23 siblings, 0 replies; 36+ messages in thread
From: julien @ 2017-10-14 22:23 UTC (permalink / raw)
  To: 28841

From: Julien Lepiller <julien@lepiller.eu>

* gnu/packages/java.scm (java-eclipse-jetty-jmx-9.2): New variable.
---
 gnu/packages/java.scm | 9 +++++++++
 1 file changed, 9 insertions(+)

diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm
index 7bc8a0d45..9124387fd 100644
--- a/gnu/packages/java.scm
+++ b/gnu/packages/java.scm
@@ -6351,3 +6351,12 @@ or embedded instantiation.  This package provides HTTP-related utility classes."
     (description "The Jetty Web Server provides an HTTP server and Servlet
 container capable of serving static and dynamic content either from a standalone
 or embedded instantiation.  This package provides the JMX management.")))
+
+(define-public java-eclipse-jetty-jmx-9.2
+  (package
+    (inherit java-eclipse-jetty-jmx)
+    (version (package-version java-eclipse-jetty-util-9.2))
+    (source (package-source java-eclipse-jetty-util-9.2))
+    (inputs
+     `(("util" ,java-eclipse-jetty-util-9.2)
+       ,@(package-inputs java-eclipse-jetty-util-9.2)))))
-- 
2.14.2

^ permalink raw reply related	[flat|nested] 36+ messages in thread

* [bug#28841] [PATCH 13/24] gnu: Add java-eclipse-jetty-server.
  2017-10-14 22:23 ` [bug#28841] [PATCH 01/24] gnu: Add java-hdrhistogram julien
                     ` (10 preceding siblings ...)
  2017-10-14 22:23   ` [bug#28841] [PATCH 12/24] gnu: Add java-eclipse-jetty-jmx-9.2 julien
@ 2017-10-14 22:23   ` julien
  2017-10-14 22:23   ` [bug#28841] [PATCH 14/24] gnu: Add java-eclipse-jetty-server-9.2 julien
                     ` (11 subsequent siblings)
  23 siblings, 0 replies; 36+ messages in thread
From: julien @ 2017-10-14 22:23 UTC (permalink / raw)
  To: 28841

From: Julien Lepiller <julien@lepiller.eu>

* gnu/packages/java.scm (java-eclipse-jetty-server): New variable.
---
 gnu/packages/java.scm | 68 +++++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 68 insertions(+)

diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm
index 9124387fd..cd1aaf12e 100644
--- a/gnu/packages/java.scm
+++ b/gnu/packages/java.scm
@@ -6329,6 +6329,27 @@ or embedded instantiation.  This package provides HTTP-related utility classes."
        ("io" ,java-eclipse-jetty-io-9.2)
        ,@(package-inputs java-eclipse-jetty-util-9.2)))))
 
+(define java-eclipse-jetty-http-test-classes
+  (package
+    (inherit java-eclipse-jetty-util)
+    (name "java-eclipse-jetty-http-test-classes")
+    (arguments
+     `(#:jar-name "eclipse-jetty-http.jar"
+       #:source-dir "src/test"
+       #:tests? #f
+       #:jdk ,icedtea-8
+       #:phases
+       (modify-phases %standard-phases
+         (add-before 'configure 'chdir
+           (lambda _
+             (chdir "jetty-http"))))))
+    (inputs
+     `(("slf4j" ,java-slf4j-api)
+       ("servlet" ,java-tomcat)
+       ("http" ,java-eclipse-jetty-http)
+       ("io" ,java-eclipse-jetty-io)
+       ("util" ,java-eclipse-jetty-util)))))
+
 (define-public java-eclipse-jetty-jmx
   (package
     (inherit java-eclipse-jetty-util)
@@ -6360,3 +6381,50 @@ or embedded instantiation.  This package provides the JMX management.")))
     (inputs
      `(("util" ,java-eclipse-jetty-util-9.2)
        ,@(package-inputs java-eclipse-jetty-util-9.2)))))
+
+(define-public java-eclipse-jetty-server
+  (package
+    (inherit java-eclipse-jetty-util)
+    (name "java-eclipse-jetty-server")
+    (arguments
+     `(#:jar-name "eclipse-jetty-server.jar"
+       #:source-dir "src/main/java"
+       #:jdk ,icedtea-8
+       #:tests? #f; requires a mockito version we don't have
+       #:phases
+       (modify-phases %standard-phases
+         (add-before 'configure 'chdir
+           (lambda _
+             (chdir "jetty-server")))
+         (add-before 'build 'fix-source
+           (lambda _
+             ;; Explicit casts to prevent build failures
+             (substitute* "src/main/java/org/eclipse/jetty/server/Request.java"
+               (("append\\(LazyList")
+                "append((CharSequence)LazyList"))
+             (substitute*
+               "src/main/java/org/eclipse/jetty/server/handler/ContextHandler.java"
+               (((string-append
+                   "Class<\\? extends EventListener> clazz = _classLoader==null"
+                   "\\?Loader.loadClass\\(ContextHandler.class,className\\):"
+                   "_classLoader.loadClass\\(className\\);"))
+                (string-append "Class<? extends EventListener> clazz = "
+                               "(Class<? extends EventListener>) "
+                               "(_classLoader==null?Loader.loadClass("
+                               "ContextHandler.class,className):"
+                               "_classLoader.loadClass(className));"))))))))
+    (inputs
+     `(("slf4j" ,java-slf4j-api)
+       ("servlet" ,java-tomcat)
+       ("http" ,java-eclipse-jetty-http)
+       ("io" ,java-eclipse-jetty-io)
+       ("jmx" ,java-eclipse-jetty-jmx)
+       ("util" ,java-eclipse-jetty-util)))
+    (native-inputs
+     `(("test-classes" ,java-eclipse-jetty-http-test-classes)
+       ,@(package-native-inputs java-eclipse-jetty-util)))
+    (synopsis "Core jetty server artifact")
+    (description "The Jetty Web Server provides an HTTP server and Servlet
+container capable of serving static and dynamic content either from a standalone
+or embedded instantiation.  This package provides the core jetty server
+artifact.")))
-- 
2.14.2

^ permalink raw reply related	[flat|nested] 36+ messages in thread

* [bug#28841] [PATCH 14/24] gnu: Add java-eclipse-jetty-server-9.2.
  2017-10-14 22:23 ` [bug#28841] [PATCH 01/24] gnu: Add java-hdrhistogram julien
                     ` (11 preceding siblings ...)
  2017-10-14 22:23   ` [bug#28841] [PATCH 13/24] gnu: Add java-eclipse-jetty-server julien
@ 2017-10-14 22:23   ` julien
  2017-10-14 22:23   ` [bug#28841] [PATCH 15/24] gnu: Add java-eclipse-jetty-security julien
                     ` (10 subsequent siblings)
  23 siblings, 0 replies; 36+ messages in thread
From: julien @ 2017-10-14 22:23 UTC (permalink / raw)
  To: 28841

From: Julien Lepiller <julien@lepiller.eu>

* gnu/packages/java.scm (java-eclipse-jetty-server-9.2): New variable.
---
 gnu/packages/java.scm | 24 ++++++++++++++++++++++++
 1 file changed, 24 insertions(+)

diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm
index cd1aaf12e..c39c306cb 100644
--- a/gnu/packages/java.scm
+++ b/gnu/packages/java.scm
@@ -6350,6 +6350,15 @@ or embedded instantiation.  This package provides HTTP-related utility classes."
        ("io" ,java-eclipse-jetty-io)
        ("util" ,java-eclipse-jetty-util)))))
 
+(define java-eclipse-jetty-http-test-classes-9.2
+  (package
+    (inherit java-eclipse-jetty-http-test-classes)
+    (version (package-version java-eclipse-jetty-util-9.2))
+    (source (package-source java-eclipse-jetty-util-9.2))
+    (inputs
+     `(("http" ,java-eclipse-jetty-http-9.2)
+       ,@(package-inputs java-eclipse-jetty-http-9.2)))))
+
 (define-public java-eclipse-jetty-jmx
   (package
     (inherit java-eclipse-jetty-util)
@@ -6428,3 +6437,18 @@ or embedded instantiation.  This package provides the JMX management.")))
 container capable of serving static and dynamic content either from a standalone
 or embedded instantiation.  This package provides the core jetty server
 artifact.")))
+
+(define-public java-eclipse-jetty-server-9.2
+  (package
+    (inherit java-eclipse-jetty-server)
+    (version (package-version java-eclipse-jetty-util-9.2))
+    (source (package-source java-eclipse-jetty-util-9.2))
+    (inputs
+     `(("util" ,java-eclipse-jetty-util-9.2)
+       ("jmx" ,java-eclipse-jetty-jmx-9.2)
+       ("io" ,java-eclipse-jetty-io-9.2)
+       ("http" ,java-eclipse-jetty-http-9.2)
+       ,@(package-inputs java-eclipse-jetty-util-9.2)))
+    (native-inputs
+     `(("test-classes" ,java-eclipse-jetty-http-test-classes-9.2)
+       ,@(package-native-inputs java-eclipse-jetty-util-9.2)))))
-- 
2.14.2

^ permalink raw reply related	[flat|nested] 36+ messages in thread

* [bug#28841] [PATCH 15/24] gnu: Add java-eclipse-jetty-security.
  2017-10-14 22:23 ` [bug#28841] [PATCH 01/24] gnu: Add java-hdrhistogram julien
                     ` (12 preceding siblings ...)
  2017-10-14 22:23   ` [bug#28841] [PATCH 14/24] gnu: Add java-eclipse-jetty-server-9.2 julien
@ 2017-10-14 22:23   ` julien
  2017-10-14 22:23   ` [bug#28841] [PATCH 16/24] gnu: Add java-eclipse-jetty-security-9.2 julien
                     ` (9 subsequent siblings)
  23 siblings, 0 replies; 36+ messages in thread
From: julien @ 2017-10-14 22:23 UTC (permalink / raw)
  To: 28841

From: Julien Lepiller <julien@lepiller.eu>

* gnu/packages/java.scm (java-eclipse-jetty-security): New variable.
---
 gnu/packages/java.scm | 28 ++++++++++++++++++++++++++++
 1 file changed, 28 insertions(+)

diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm
index c39c306cb..2aa0b668a 100644
--- a/gnu/packages/java.scm
+++ b/gnu/packages/java.scm
@@ -6452,3 +6452,31 @@ artifact.")))
     (native-inputs
      `(("test-classes" ,java-eclipse-jetty-http-test-classes-9.2)
        ,@(package-native-inputs java-eclipse-jetty-util-9.2)))))
+
+(define-public java-eclipse-jetty-security
+  (package
+    (inherit java-eclipse-jetty-util)
+    (name "java-eclipse-jetty-security")
+    (arguments
+     `(#:jar-name "eclipse-jetty-security.jar"
+       #:source-dir "src/main/java"
+       #:jdk ,icedtea-8
+       #:phases
+       (modify-phases %standard-phases
+         (add-before 'configure 'chdir
+           (lambda _
+             (chdir "jetty-security"))))))
+    (inputs
+     `(("slf4j" ,java-slf4j-api)
+       ("servlet" ,java-tomcat)
+       ("http" ,java-eclipse-jetty-http)
+       ("server" ,java-eclipse-jetty-server)
+       ("util" ,java-eclipse-jetty-util)))
+    (native-inputs
+     `(("io" ,java-eclipse-jetty-io)
+       ,@(package-native-inputs java-eclipse-jetty-util)))
+    (synopsis "Jetty security infrastructure")
+    (description "The Jetty Web Server provides an HTTP server and Servlet
+container capable of serving static and dynamic content either from a standalone
+or embedded instantiation.  This package provides the core jetty security
+infrastructure")))
-- 
2.14.2

^ permalink raw reply related	[flat|nested] 36+ messages in thread

* [bug#28841] [PATCH 16/24] gnu: Add java-eclipse-jetty-security-9.2.
  2017-10-14 22:23 ` [bug#28841] [PATCH 01/24] gnu: Add java-hdrhistogram julien
                     ` (13 preceding siblings ...)
  2017-10-14 22:23   ` [bug#28841] [PATCH 15/24] gnu: Add java-eclipse-jetty-security julien
@ 2017-10-14 22:23   ` julien
  2017-10-14 22:23   ` [bug#28841] [PATCH 17/24] gnu: Add java-eclipse-jetty-servlet julien
                     ` (8 subsequent siblings)
  23 siblings, 0 replies; 36+ messages in thread
From: julien @ 2017-10-14 22:23 UTC (permalink / raw)
  To: 28841

From: Julien Lepiller <julien@lepiller.eu>

* gnu/packages/java.scm (java-eclipse-jetty-security-9.2): New variable.
---
 gnu/packages/java.scm | 14 ++++++++++++++
 1 file changed, 14 insertions(+)

diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm
index 2aa0b668a..910093ec8 100644
--- a/gnu/packages/java.scm
+++ b/gnu/packages/java.scm
@@ -6480,3 +6480,17 @@ artifact.")))
 container capable of serving static and dynamic content either from a standalone
 or embedded instantiation.  This package provides the core jetty security
 infrastructure")))
+
+(define-public java-eclipse-jetty-security-9.2
+  (package
+    (inherit java-eclipse-jetty-security)
+    (version (package-version java-eclipse-jetty-util-9.2))
+    (source (package-source java-eclipse-jetty-util-9.2))
+    (inputs
+     `(("util" ,java-eclipse-jetty-util-9.2)
+       ("http" ,java-eclipse-jetty-http-9.2)
+       ("server" ,java-eclipse-jetty-server-9.2)
+       ,@(package-inputs java-eclipse-jetty-util-9.2)))
+    (native-inputs
+     `(("io" ,java-eclipse-jetty-io-9.2)
+       ,@(package-native-inputs java-eclipse-jetty-util-9.2)))))
-- 
2.14.2

^ permalink raw reply related	[flat|nested] 36+ messages in thread

* [bug#28841] [PATCH 17/24] gnu: Add java-eclipse-jetty-servlet.
  2017-10-14 22:23 ` [bug#28841] [PATCH 01/24] gnu: Add java-hdrhistogram julien
                     ` (14 preceding siblings ...)
  2017-10-14 22:23   ` [bug#28841] [PATCH 16/24] gnu: Add java-eclipse-jetty-security-9.2 julien
@ 2017-10-14 22:23   ` julien
  2017-10-14 22:23   ` [bug#28841] [PATCH 18/24] gnu: Add java-eclipse-jetty-servlet-9.2 julien
                     ` (7 subsequent siblings)
  23 siblings, 0 replies; 36+ messages in thread
From: julien @ 2017-10-14 22:23 UTC (permalink / raw)
  To: 28841

From: Julien Lepiller <julien@lepiller.eu>

* gnu/packages/java.scm (java-eclipse-jetty-servlet): New variable.
---
 gnu/packages/java.scm | 29 +++++++++++++++++++++++++++++
 1 file changed, 29 insertions(+)

diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm
index 910093ec8..391186423 100644
--- a/gnu/packages/java.scm
+++ b/gnu/packages/java.scm
@@ -6494,3 +6494,32 @@ infrastructure")))
     (native-inputs
      `(("io" ,java-eclipse-jetty-io-9.2)
        ,@(package-native-inputs java-eclipse-jetty-util-9.2)))))
+
+(define-public java-eclipse-jetty-servlet
+  (package
+    (inherit java-eclipse-jetty-util)
+    (name "java-eclipse-jetty-servlet")
+    (arguments
+     `(#:jar-name "eclipse-jetty-servlet.jar"
+       #:source-dir "src/main/java"
+       #:jdk ,icedtea-8
+       #:phases
+       (modify-phases %standard-phases
+         (add-before 'configure 'chdir
+           (lambda _
+             (chdir "jetty-servlet"))))))
+    (inputs
+     `(("slf4j" ,java-slf4j-api)
+       ("servlet" ,java-tomcat)
+       ("http" ,java-eclipse-jetty-http)
+       ("http-test" ,java-eclipse-jetty-http-test-classes)
+       ("io" ,java-eclipse-jetty-io)
+       ("jmx" ,java-eclipse-jetty-jmx)
+       ("security" ,java-eclipse-jetty-security)
+       ("server" ,java-eclipse-jetty-server)
+       ("util" ,java-eclipse-jetty-util)))
+    (synopsis "Jetty Servlet Container")
+    (description "The Jetty Web Server provides an HTTP server and Servlet
+container capable of serving static and dynamic content either from a standalone
+or embedded instantiation.  This package provides the core jetty servlet
+container.")))
-- 
2.14.2

^ permalink raw reply related	[flat|nested] 36+ messages in thread

* [bug#28841] [PATCH 18/24] gnu: Add java-eclipse-jetty-servlet-9.2.
  2017-10-14 22:23 ` [bug#28841] [PATCH 01/24] gnu: Add java-hdrhistogram julien
                     ` (15 preceding siblings ...)
  2017-10-14 22:23   ` [bug#28841] [PATCH 17/24] gnu: Add java-eclipse-jetty-servlet julien
@ 2017-10-14 22:23   ` julien
  2017-10-14 22:23   ` [bug#28841] [PATCH 19/24] gnu: Add java-aopalliance julien
                     ` (6 subsequent siblings)
  23 siblings, 0 replies; 36+ messages in thread
From: julien @ 2017-10-14 22:23 UTC (permalink / raw)
  To: 28841

From: Julien Lepiller <julien@lepiller.eu>

* gnu/packages/java.scm (java-eclipse-jetty-servlet-9.2): New variable.
---
 gnu/packages/java.scm | 25 +++++++++++++++++++++++++
 1 file changed, 25 insertions(+)

diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm
index 391186423..a3e66de04 100644
--- a/gnu/packages/java.scm
+++ b/gnu/packages/java.scm
@@ -6523,3 +6523,28 @@ infrastructure")))
 container capable of serving static and dynamic content either from a standalone
 or embedded instantiation.  This package provides the core jetty servlet
 container.")))
+
+(define-public java-eclipse-jetty-servlet-9.2
+  (package
+    (inherit java-eclipse-jetty-servlet)
+    (version (package-version java-eclipse-jetty-util-9.2))
+    (source (package-source java-eclipse-jetty-util-9.2))
+    (arguments
+     `(#:jar-name "eclipse-jetty-servlet.jar"
+       #:source-dir "src/main/java"
+       #:jdk ,icedtea-8
+       #:tests? #f; doesn't work
+       #:phases
+       (modify-phases %standard-phases
+         (add-before 'configure 'chdir
+           (lambda _
+             (chdir "jetty-servlet"))))))
+    (inputs
+     `(("util" ,java-eclipse-jetty-util-9.2)
+       ("jmx" ,java-eclipse-jetty-jmx-9.2)
+       ("io" ,java-eclipse-jetty-io-9.2)
+       ("http" ,java-eclipse-jetty-http-9.2)
+       ("security" ,java-eclipse-jetty-security-9.2)
+       ("http-test" ,java-eclipse-jetty-http-test-classes-9.2)
+       ("server" ,java-eclipse-jetty-server-9.2)
+       ,@(package-inputs java-eclipse-jetty-util-9.2)))))
-- 
2.14.2

^ permalink raw reply related	[flat|nested] 36+ messages in thread

* [bug#28841] [PATCH 19/24] gnu: Add java-aopalliance.
  2017-10-14 22:23 ` [bug#28841] [PATCH 01/24] gnu: Add java-hdrhistogram julien
                     ` (16 preceding siblings ...)
  2017-10-14 22:23   ` [bug#28841] [PATCH 18/24] gnu: Add java-eclipse-jetty-servlet-9.2 julien
@ 2017-10-14 22:23   ` julien
  2017-10-14 22:23   ` [bug#28841] [PATCH 20/24] gnu: Add java-javax-inject julien
                     ` (5 subsequent siblings)
  23 siblings, 0 replies; 36+ messages in thread
From: julien @ 2017-10-14 22:23 UTC (permalink / raw)
  To: 28841

From: Julien Lepiller <julien@lepiller.eu>

* gnu/packages/java.scm (java-aopalliance): New variable.
---
 gnu/packages/java.scm | 30 ++++++++++++++++++++++++++++++
 1 file changed, 30 insertions(+)

diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm
index a3e66de04..6c8b4bebb 100644
--- a/gnu/packages/java.scm
+++ b/gnu/packages/java.scm
@@ -6548,3 +6548,33 @@ container.")))
        ("http-test" ,java-eclipse-jetty-http-test-classes-9.2)
        ("server" ,java-eclipse-jetty-server-9.2)
        ,@(package-inputs java-eclipse-jetty-util-9.2)))))
+
+(define-public java-aopalliance
+  (package
+    (name "java-aopalliance")
+    (version "1.0")
+    (source (origin
+              (method git-fetch)
+              ;; Note: this git repository is not official, but contains the
+              ;; source code that is in the CVS repository.  Downloading the
+              ;; tarball from sourceforge is undeterministic, and the cvs download
+              ;; fails.
+              (uri (git-reference
+                     (url "https://github.com/hoverruan/aopalliance")
+                     (commit "0d7757ae204e5876f69431421fe9bc2a4f01e8a0")))
+              (file-name (string-append name "-" version))
+              (sha256
+               (base32
+                "0rsg2b0v3hxlq2yk1i3m2gw3xwq689j3cwx9wbxvqfpdcjbca0qr"))))
+    (build-system ant-build-system)
+    (arguments
+     `(#:jar-name "java-aopalliance.jar"
+       #:jdk ,icedtea-8
+       #:tests? #f; no tests
+       #:source-dir "aopalliance/src/main"))
+    (home-page "http://aopalliance.sourceforge.net")
+    (synopsis "Aspect-Oriented Programming")
+    (description "The AOP Alliance project is a joint project between several
+software engineering people who are interested in Aspect-Oriented Programming
+(AOP) and Java.")
+    (license license:public-domain)))
-- 
2.14.2

^ permalink raw reply related	[flat|nested] 36+ messages in thread

* [bug#28841] [PATCH 20/24] gnu: Add java-javax-inject.
  2017-10-14 22:23 ` [bug#28841] [PATCH 01/24] gnu: Add java-hdrhistogram julien
                     ` (17 preceding siblings ...)
  2017-10-14 22:23   ` [bug#28841] [PATCH 19/24] gnu: Add java-aopalliance julien
@ 2017-10-14 22:23   ` julien
  2017-10-14 22:23   ` [bug#28841] [PATCH 21/24] gnu: Add java-guice julien
                     ` (4 subsequent siblings)
  23 siblings, 0 replies; 36+ messages in thread
From: julien @ 2017-10-14 22:23 UTC (permalink / raw)
  To: 28841

From: Julien Lepiller <julien@lepiller.eu>

* gnu/packages/java.scm (java-javax-inject): New variable.
---
 gnu/packages/java.scm | 31 +++++++++++++++++++++++++++++++
 1 file changed, 31 insertions(+)

diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm
index 6c8b4bebb..dc5e8e695 100644
--- a/gnu/packages/java.scm
+++ b/gnu/packages/java.scm
@@ -6578,3 +6578,34 @@ container.")))
 software engineering people who are interested in Aspect-Oriented Programming
 (AOP) and Java.")
     (license license:public-domain)))
+
+(define-public java-javax-inject
+  (package
+    (name "java-javax-inject")
+    (version "tck-1")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "https://github.com/javax-inject/javax-inject/"
+                                  "archive/javax.inject-" version ".tar.gz"))
+              (sha256
+               (base32
+                "1ydrlvh2r7vr1g7lhjwy3w2dggpj9h6pix1lakkkgdywb365n6g0"))))
+    (build-system ant-build-system)
+    (arguments
+     `(#:jar-name "java-javax-inject.jar"
+       #:jdk ,icedtea-8
+       #:tests? #f)); no tests
+    (home-page "http://github.com/javax-inject/javax-inject")
+    (synopsis "JSR-330: Dependency Injection for Java")
+    (description "This package specifies a means for obtaining objects in such
+a way as to maximize reusability, testability and maintainability compared to
+traditional approaches such as constructors, factories, and service locators
+(e.g., JNDI).  This process, known as dependency injection, is beneficial to
+most nontrivial applications.
+
+Many types depend on other types.  For example, a @var{Stopwatch} might depend
+on a @var{TimeSource}.  The types on which a type depends are known as its
+dependencies.  The process of finding an instance of a dependency to use at run
+time is known as resolving the dependency.  If no such instance can be found,
+the dependency is said to be unsatisfied, and the application is broken.")
+    (license license:asl2.0)))
-- 
2.14.2

^ permalink raw reply related	[flat|nested] 36+ messages in thread

* [bug#28841] [PATCH 21/24] gnu: Add java-guice.
  2017-10-14 22:23 ` [bug#28841] [PATCH 01/24] gnu: Add java-hdrhistogram julien
                     ` (18 preceding siblings ...)
  2017-10-14 22:23   ` [bug#28841] [PATCH 20/24] gnu: Add java-javax-inject julien
@ 2017-10-14 22:23   ` julien
  2017-10-14 22:23   ` [bug#28841] [PATCH 22/24] gnu: Add java-guice-servlet julien
                     ` (3 subsequent siblings)
  23 siblings, 0 replies; 36+ messages in thread
From: julien @ 2017-10-14 22:23 UTC (permalink / raw)
  To: 28841

From: Julien Lepiller <julien@lepiller.eu>

* gnu/packages/java.scm (java-guice): New variable.
---
 gnu/packages/java.scm | 30 ++++++++++++++++++++++++++++++
 1 file changed, 30 insertions(+)

diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm
index dc5e8e695..9bc20f505 100644
--- a/gnu/packages/java.scm
+++ b/gnu/packages/java.scm
@@ -6609,3 +6609,33 @@ dependencies.  The process of finding an instance of a dependency to use at run
 time is known as resolving the dependency.  If no such instance can be found,
 the dependency is said to be unsatisfied, and the application is broken.")
     (license license:asl2.0)))
+
+(define-public java-guice
+  (package
+    (name "java-guice")
+    (version "4.1")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "https://github.com/google/guice/archive/"
+                                  version ".tar.gz"))
+              (file-name (string-append name "-" version ".tar.gz"))
+              (sha256
+               (base32
+                "0dwmqjzlavb144ywqqglj3h68hqszkff8ai0a42hyb5il0qh4rbp"))))
+    (build-system ant-build-system)
+    (arguments
+     `(#:jar-name "java-guice.jar"
+       #:jdk ,icedtea-8
+       #:tests? #f; FIXME: tests are not in a java sub directory
+       #:source-dir "core/src"))
+    (inputs
+     `(("guava" ,java-guava)
+       ("java-cglib" ,java-cglib)
+       ("java-aopalliance" ,java-aopalliance)
+       ("java-javax-inject" ,java-javax-inject)
+       ("java-asm" ,java-asm)))
+    (home-page "https://github.com/google/guice")
+    (synopsis "Lightweight dependency injection framework")
+    (description "Guice is a lightweight dependency injection framework fo
+Java 6 and above.")
+    (license license:asl2.0)))
-- 
2.14.2

^ permalink raw reply related	[flat|nested] 36+ messages in thread

* [bug#28841] [PATCH 22/24] gnu: Add java-guice-servlet.
  2017-10-14 22:23 ` [bug#28841] [PATCH 01/24] gnu: Add java-hdrhistogram julien
                     ` (19 preceding siblings ...)
  2017-10-14 22:23   ` [bug#28841] [PATCH 21/24] gnu: Add java-guice julien
@ 2017-10-14 22:23   ` julien
  2017-10-14 22:23   ` [bug#28841] [PATCH 23/24] gnu: Add java-assertj julien
                     ` (2 subsequent siblings)
  23 siblings, 0 replies; 36+ messages in thread
From: julien @ 2017-10-14 22:23 UTC (permalink / raw)
  To: 28841

From: Julien Lepiller <julien@lepiller.eu>

* gnu/packages/java.scm (java-guice-servlet): New variable.
---
 gnu/packages/java.scm | 14 ++++++++++++++
 1 file changed, 14 insertions(+)

diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm
index 9bc20f505..48b0a5eb9 100644
--- a/gnu/packages/java.scm
+++ b/gnu/packages/java.scm
@@ -6639,3 +6639,17 @@ the dependency is said to be unsatisfied, and the application is broken.")
     (description "Guice is a lightweight dependency injection framework fo
 Java 6 and above.")
     (license license:asl2.0)))
+
+(define-public java-guice-servlet
+  (package
+    (inherit java-guice)
+    (name "java-guice-servlet")
+    (arguments
+     `(#:jar-name "guice-servlet.jar"
+       #:source-dir "extensions/servlet/src/"
+       #:jdk ,icedtea-8
+       #:tests? #f)); FIXME: not in a java subdir
+    (inputs
+     `(("guice" ,java-guice)
+       ("servlet" ,java-tomcat)
+       ,@(package-inputs java-guice)))))
-- 
2.14.2

^ permalink raw reply related	[flat|nested] 36+ messages in thread

* [bug#28841] [PATCH 23/24] gnu: Add java-assertj.
  2017-10-14 22:23 ` [bug#28841] [PATCH 01/24] gnu: Add java-hdrhistogram julien
                     ` (20 preceding siblings ...)
  2017-10-14 22:23   ` [bug#28841] [PATCH 22/24] gnu: Add java-guice-servlet julien
@ 2017-10-14 22:23   ` julien
  2017-10-14 22:23   ` [bug#28841] [PATCH 24/24] gnu: Add java-jboss-javassist julien
  2017-10-18 20:40   ` [bug#28841] [PATCH 01/24] gnu: Add java-hdrhistogram Ricardo Wurmus
  23 siblings, 0 replies; 36+ messages in thread
From: julien @ 2017-10-14 22:23 UTC (permalink / raw)
  To: 28841

From: Julien Lepiller <julien@lepiller.eu>

* gnu/packages/java.scm (java-assertj): New variable.
---
 gnu/packages/java.scm | 31 +++++++++++++++++++++++++++++++
 1 file changed, 31 insertions(+)

diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm
index 48b0a5eb9..8c396cc2a 100644
--- a/gnu/packages/java.scm
+++ b/gnu/packages/java.scm
@@ -6653,3 +6653,34 @@ Java 6 and above.")
      `(("guice" ,java-guice)
        ("servlet" ,java-tomcat)
        ,@(package-inputs java-guice)))))
+
+(define-public java-assertj
+  (package
+    (name "java-assertj")
+    (version "3.8.0")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "https://github.com/joel-costigliola/"
+                                  "assertj-core/archive/"
+                                  "assertj-core-" version ".tar.gz"))
+              (sha256
+               (base32
+                "1kf124fxskf548rklkg86294w2x6ajqrff94rrhyqns31danqkfz"))))
+    (build-system ant-build-system)
+    (arguments
+     `(#:jar-name "java-assertj.jar"
+       #:jdk ,icedtea-8
+       #:source-dir "src/main/java"
+       #:tests? #f)); depends on tng-junit which depends on assertj
+    (inputs
+     `(("cglib" ,java-cglib)
+       ("junit" ,java-junit)
+       ("hamcrest" ,java-hamcrest-core)))
+    (native-inputs
+     `(("mockito" ,java-mockito-1)))
+    (home-page "https://joel-costigliola.github.io/assertj/index.html")
+    (synopsis "Fluent assertions for java")
+    (description "AssertJ core is a Java library that provides a fluent
+interface for writing assertions.  Its main goal is to improve test code
+readability and make maintenance of tests easier.")
+    (license license:asl2.0)))
-- 
2.14.2

^ permalink raw reply related	[flat|nested] 36+ messages in thread

* [bug#28841] [PATCH 24/24] gnu: Add java-jboss-javassist.
  2017-10-14 22:23 ` [bug#28841] [PATCH 01/24] gnu: Add java-hdrhistogram julien
                     ` (21 preceding siblings ...)
  2017-10-14 22:23   ` [bug#28841] [PATCH 23/24] gnu: Add java-assertj julien
@ 2017-10-14 22:23   ` julien
  2017-10-18 20:40   ` [bug#28841] [PATCH 01/24] gnu: Add java-hdrhistogram Ricardo Wurmus
  23 siblings, 0 replies; 36+ messages in thread
From: julien @ 2017-10-14 22:23 UTC (permalink / raw)
  To: 28841

From: Julien Lepiller <julien@lepiller.eu>

* gnu/packages/java.scm (java-jboss-javassist): New variable.
---
 gnu/packages/java.scm | 34 ++++++++++++++++++++++++++++++++++
 1 file changed, 34 insertions(+)

diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm
index 8c396cc2a..8222010e9 100644
--- a/gnu/packages/java.scm
+++ b/gnu/packages/java.scm
@@ -6684,3 +6684,37 @@ Java 6 and above.")
 interface for writing assertions.  Its main goal is to improve test code
 readability and make maintenance of tests easier.")
     (license license:asl2.0)))
+
+(define-public java-jboss-javassist
+  (package
+    (name "java-jboss-javassist")
+    (version "3.21.0")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "https://github.com/jboss-javassist/javassist/"
+                                  "archive/rel_"
+                                  (string-map (lambda (x) (if (eq? x #\.) #\_ x)) version)
+                                  "_ga.tar.gz"))
+              (sha256
+               (base32
+                "10lpcr3sbf7y6fq6fc2h2ik7rqrivwcy4747bg0kxhwszil3cfmf"))))
+    (build-system ant-build-system)
+    (arguments
+     `(#:jar-name "java-jboss-javassist.jar"
+       #:jdk ,icedtea-8
+       #:source-dir "src/main"
+       #:tests? #f; FIXME: requires junit-awtui and junit-swingui from junit3
+       #:phases
+       (modify-phases %standard-phases
+         (add-before 'configure 'remove-binary
+           (lambda _
+             (delete-file "javassist.jar"))))))
+    (native-inputs
+     `(("junit" ,java-junit)))
+    (home-page "https://github.com/jboss-javassist/javassist")
+    (synopsis "Java bytecode engineering toolkit")
+    (description "Javassist (JAVA programming ASSISTant) makes Java bytecode
+manipulation simple.  It is a class library for editing bytecodes in Java; it
+enables Java programs to define a new class at runtime and to modify a class
+file when the JVM loads it.")
+    (license (list license:gpl2 license:cddl1.0)))); either gpl2 only or cddl.
-- 
2.14.2

^ permalink raw reply related	[flat|nested] 36+ messages in thread

* [bug#28841] [PATCH 02/24] gnu: Add java-tomcat.
  2017-10-14 22:23   ` [bug#28841] [PATCH 02/24] gnu: Add java-tomcat julien
@ 2017-10-18 20:36     ` Ricardo Wurmus
  2017-10-18 20:42     ` Ricardo Wurmus
  2017-10-18 20:51     ` Ricardo Wurmus
  2 siblings, 0 replies; 36+ messages in thread
From: Ricardo Wurmus @ 2017-10-18 20:36 UTC (permalink / raw)
  To: julien; +Cc: 28841


Hi Julien,

> From: Julien Lepiller <julien@lepiller.eu>
>
> * gnu/packages/java.scm (java-tomcat): New variable.

Impressive!

> +    (build-system ant-build-system)
> +    (inputs
> +     `(("java-eclipse-jdt-core" ,java-eclipse-jdt-core)))

Note to self: we still need to fix the ant-build-system to install a
file containing plain-text references to all inputs to prevent them from
being garbage collected.

> +    (native-inputs
> +     `(("java-junit" ,java-junit)))
> +    (arguments
> +     `(#:build-target "package"
> +       #:tests? #f; requires downloading some files.
> +       #:phases
> +       (modify-phases %standard-phases
> +         (add-after 'unpack 'properties
> +           (lambda _
> +             (mkdir "downloads")
> +             (substitute* "build.xml"
> +               (("download-compile,") "")
> +               (("depends=\"validate\"") "depends=\"build-prepare\"")
> +               ((",download-validate") ""))

Could you add a comment here to explain why this is needed?

> +             (with-output-to-file "build.properties"
> +               (lambda _
> +                 (display
> +                   (string-append "base.path=" (getcwd)
> "/downloads\n"))))))

I prefer using the make-flags here to set the base.path property.  Have
you tried that?

> +    (description "Apache Tomcat is an open source implementation of the Java
> +Servlet, JavaServer Pages, Java Expression Language and Java WebSocket
> +technologies.  The Java Servlet, JavaServer Pages, Java Expression Language and
> +Java WebSocket specifications are developed under the Java Community
> Process.")

“Open source”, eh? :)  Please just write “[…] is an implementation of
the […]”.  The second sentence is a bit odd.  I don’t think that’s
information that belongs in a package description.

Thanks!

-- 
Ricardo

GPG: BCA6 89B6 3655 3801 C3C6  2150 197A 5888 235F ACAC
https://elephly.net

^ permalink raw reply	[flat|nested] 36+ messages in thread

* [bug#28841] [PATCH 01/24] gnu: Add java-hdrhistogram.
  2017-10-14 22:23 ` [bug#28841] [PATCH 01/24] gnu: Add java-hdrhistogram julien
                     ` (22 preceding siblings ...)
  2017-10-14 22:23   ` [bug#28841] [PATCH 24/24] gnu: Add java-jboss-javassist julien
@ 2017-10-18 20:40   ` Ricardo Wurmus
  23 siblings, 0 replies; 36+ messages in thread
From: Ricardo Wurmus @ 2017-10-18 20:40 UTC (permalink / raw)
  To: julien; +Cc: 28841


Hi Julien,

> From: Julien Lepiller <julien@lepiller.eu>
>
> * gnu/packages/java.scm (java-hdrhistogram): New variable.
[…]
> +         (add-before 'configure 'set-version
> +           (lambda _
> +             (let* ((version-java "src/main/java/org/HdrHistogram/Version.java")
> +                    (template (string-append version-java ".template")))
> +               (copy-file template version-java)
> +               (substitute* version-java
> +                 (("\\$VERSION\\$") ,version)
> +                 (("\\$BUILD_TIME\\$") "0"))))))))

Please end the phase with #t.

> +    (native-inputs
> +     `(("junit" ,java-junit)
> +       ("hamcrest" ,java-hamcrest-core)))
> +    (home-page "https://hdrhistogram.github.io/HdrHistogram")
> +    (synopsis "High Dynamic Range Histogram")

Please use lower case here.

> +    (description "Histogram that supports recording and analyzing sampled data
> +value counts across a configurable integer value range with configurable value
> +precision within the range.  Value precision is expressed as the number of
> +significant digits in the value recording, and provides control over value
> +quantization behavior across the value range and the subsequent value resolution
> +at any given level.")

The first fragment is not a full sentence.  Could you please change it?

> +    (license license:bsd-2)))

The website says:

--8<---------------cut here---------------start------------->8---
HdrHistogram was originally authored by Gil Tene (@giltene)
(Java) and placed in the public domain, as explained at
http://creativecommons.org/publicdomain/zero/1.0
--8<---------------cut here---------------end--------------->8---

Does this not apply to this version?

-- 
Ricardo

GPG: BCA6 89B6 3655 3801 C3C6  2150 197A 5888 235F ACAC
https://elephly.net

^ permalink raw reply	[flat|nested] 36+ messages in thread

* [bug#28841] [PATCH 02/24] gnu: Add java-tomcat.
  2017-10-14 22:23   ` [bug#28841] [PATCH 02/24] gnu: Add java-tomcat julien
  2017-10-18 20:36     ` Ricardo Wurmus
@ 2017-10-18 20:42     ` Ricardo Wurmus
  2017-10-19  9:45       ` julien lepiller
  2017-10-18 20:51     ` Ricardo Wurmus
  2 siblings, 1 reply; 36+ messages in thread
From: Ricardo Wurmus @ 2017-10-18 20:42 UTC (permalink / raw)
  To: julien; +Cc: 28841


Hi again,

> * gnu/packages/java.scm (java-tomcat): New variable.
> ---

[…]

> +    (inputs
> +     `(("java-eclipse-jdt-core" ,java-eclipse-jdt-core)))

Actually … I’m *very* surprised that this is the only input here.  I
remember trying to package this early on, but failing because there were
so many unpackaged dependencies.

Are you sure this is the only required input here?  Do the sources come
with bundled jars?

> +         (add-after 'unpack 'properties
> +           (lambda _
> +             (mkdir "downloads")
> +             (substitute* "build.xml"
> +               (("download-compile,") "")
> +               (("depends=\"validate\"") "depends=\"build-prepare\"")
> +               ((",download-validate") ""))
> +             (with-output-to-file "build.properties"
> +               (lambda _
> +                 (display
> +                   (string-append "base.path=" (getcwd)
> "/downloads\n"))))))

Forgot to say this in my previous comment: please end this phase with “#t”.

-- 
Ricardo

GPG: BCA6 89B6 3655 3801 C3C6  2150 197A 5888 235F ACAC
https://elephly.net

^ permalink raw reply	[flat|nested] 36+ messages in thread

* [bug#28841] [PATCH 03/24] gnu: Add java-eclipse-jetty-test-helper.
  2017-10-14 22:23   ` [bug#28841] [PATCH 03/24] gnu: Add java-eclipse-jetty-test-helper julien
@ 2017-10-18 20:50     ` Ricardo Wurmus
  2017-10-19  9:57       ` julien lepiller
  0 siblings, 1 reply; 36+ messages in thread
From: Ricardo Wurmus @ 2017-10-18 20:50 UTC (permalink / raw)
  To: julien; +Cc: 28841


Hi Julien,

> From: Julien Lepiller <julien@lepiller.eu>
>
> * gnu/packages/java.scm (java-eclipse-jetty-test-helper): New
> variable.

[…]

I wonder: is there a better place for this than java.scm?  The same
question applies to all other patches in this series.  Let’s try to
avoid a second python.scm situation :)

> +
> +(define-public java-eclipse-jetty-test-helper
> +  (package
> +    (name "java-eclipse-jetty-test-helper")
> +    (version "4.2")
> +    (source (origin
> +              (method url-fetch)
> +              (uri (string-append "https://github.com/eclipse/jetty.toolchain/"
> +                                  "archive/jetty-test-helper-" version ".tar.gz"))
> +              (sha256
> +               (base32
> +                "1jd6r9wc26fa11si4rn2gvy8ml8q4zw1nr6v04mjp8wvwpgvzwx5"))))
> +    (build-system ant-build-system)
> +    (arguments
> +     `(#:jar-name "eclipse-jetty-test-helper.jar"
> +       #:source-dir "src/main/java"
> +       #:test-dir "src/test"
> +       #:jdk ,icedtea-8
> +       #:phases
> +       (modify-phases %standard-phases
> +         (add-before 'configure 'chdir
> +           (lambda _
> +             (chdir "jetty-test-helper")))

Please end the phase with “#t”.

> +         (add-before 'build 'fix-build-path
> +           (lambda _
> +             ;; FIXME:
> +             ;; This file assumes that the build directory is named "target"
> +             ;; but it is not the case with our ant-build-system. Once we have
> +             ;; maven though, we will have to rebuild this package because this
> +             ;; assumption is correct with maven-build-system.
> +             (substitute*
> +               "src/main/java/org/eclipse/jetty/toolchain/test/MavenTestingUtils.java"
> +               (("\"target\"") "\"build\"")
> +               (("\"tests\"") "\"test-classes\""))))

Same here.
FWIW: I don’t think all Java packages will need to be repackaged to use
the maven-build-system.  We should make sure that we clearly separate
the packages needed to bootstrap maven from all the rest.

> +         (add-before 'check 'fix-paths
> +           (lambda _
> +             (with-directory-excursion "src/test/java/org/eclipse/jetty/toolchain/test"
> +               (substitute* '("FSTest.java" "OSTest.java" "TestingDirTest.java"
> +                              "MavenTestingUtilsTest.java")
> +                 (("target/tests") "build/test-classes")
> +                 (("\"target") "\"build"))))))))

Same as above: please end all phases with a boolean.

I would merge these two phases and add a comment between the different
substitutions.  In my opinion, all substitutions should happen as early
as possible in the build process.

In the future we would like “substitute*” to return a boolean value
depending on success or failure to substitute, and then it would be good
to fail early.

> +    (description "This packages contains helper classes for testing
> jetty.")

Could you rewrite this to “for testing the Jetty <flower watering
framework>” with an appropriate short description of Jetty substituted
for the placeholder?  :)

> +    (license (list license:epl1.0 license:asl2.0))))

What does this list mean?  Could you please add a comment above this
field?

Thanks!

--
Ricardo

GPG: BCA6 89B6 3655 3801 C3C6  2150 197A 5888 235F ACAC
https://elephly.net

^ permalink raw reply	[flat|nested] 36+ messages in thread

* [bug#28841] [PATCH 02/24] gnu: Add java-tomcat.
  2017-10-14 22:23   ` [bug#28841] [PATCH 02/24] gnu: Add java-tomcat julien
  2017-10-18 20:36     ` Ricardo Wurmus
  2017-10-18 20:42     ` Ricardo Wurmus
@ 2017-10-18 20:51     ` Ricardo Wurmus
  2 siblings, 0 replies; 36+ messages in thread
From: Ricardo Wurmus @ 2017-10-18 20:51 UTC (permalink / raw)
  To: julien; +Cc: 28841


> * gnu/packages/java.scm (java-tomcat): New variable.

A third comment on the same package: could you move this from java.scm
to web.scm?  That seems like a better home for this package.

--
Ricardo

GPG: BCA6 89B6 3655 3801 C3C6  2150 197A 5888 235F ACAC
https://elephly.net

^ permalink raw reply	[flat|nested] 36+ messages in thread

* [bug#28841] [PATCH 02/24] gnu: Add java-tomcat.
  2017-10-18 20:42     ` Ricardo Wurmus
@ 2017-10-19  9:45       ` julien lepiller
  0 siblings, 0 replies; 36+ messages in thread
From: julien lepiller @ 2017-10-19  9:45 UTC (permalink / raw)
  To: 28841

Le 2017-10-18 22:42, Ricardo Wurmus a écrit :
> Hi again,
> 
>> * gnu/packages/java.scm (java-tomcat): New variable.
>> ---
> 
> […]
> 
>> +    (inputs
>> +     `(("java-eclipse-jdt-core" ,java-eclipse-jdt-core)))
> 
> Actually … I’m *very* surprised that this is the only input here.  I
> remember trying to package this early on, but failing because there 
> were
> so many unpackaged dependencies.
> 
> Are you sure this is the only required input here?  Do the sources come
> with bundled jars?

I've added this to a phase:

(for-each delete-file (find-files "." ".*.jar$"))

and it still builds correctly, so i'm fairly confident that's the only 
required dependency. The tests though have a lot of dependencies that 
are fetched by the build script, but it's disabled in the "properties" 
phase (I should use a different phase though, because it has nothing to 
do with properties).

Now I have no idea how tomcat is supposed to work. I only need it 
because it has a more recent version of the servlet api that is required 
at least by jetty, and that part at least is correct. Maybe some of the 
dependencies are actually run-time dependencies? At first I wanted to 
create only a java-tomcat-servlet-api package, but I can't use the 
upstream build.xml for that.

I will apply all your suggestions of course.

Thank you for the review!

^ permalink raw reply	[flat|nested] 36+ messages in thread

* [bug#28841] [PATCH 03/24] gnu: Add java-eclipse-jetty-test-helper.
  2017-10-18 20:50     ` Ricardo Wurmus
@ 2017-10-19  9:57       ` julien lepiller
  2017-10-22 12:11         ` Julien Lepiller
  0 siblings, 1 reply; 36+ messages in thread
From: julien lepiller @ 2017-10-19  9:57 UTC (permalink / raw)
  To: 28841

Le 2017-10-18 22:50, Ricardo Wurmus a écrit :
> Hi Julien,
> 
>> From: Julien Lepiller <julien@lepiller.eu>
>> 
>> * gnu/packages/java.scm (java-eclipse-jetty-test-helper): New
>> variable.
> 
> […]
> 
> I wonder: is there a better place for this than java.scm?  The same
> question applies to all other patches in this series.  Let’s try to
> avoid a second python.scm situation :)

eclipse.scm? Or maybe maven.scm, with all other maven bootstrap 
dependencies (and maven itself)? Or maven-bootstrap.scm, maven.scm being 
for the complete maven built with maven-bootstrap, and all the plugins 
of maven?

^ permalink raw reply	[flat|nested] 36+ messages in thread

* [bug#28841] [PATCH 03/24] gnu: Add java-eclipse-jetty-test-helper.
  2017-10-19  9:57       ` julien lepiller
@ 2017-10-22 12:11         ` Julien Lepiller
  2017-10-22 14:46           ` Ricardo Wurmus
  0 siblings, 1 reply; 36+ messages in thread
From: Julien Lepiller @ 2017-10-22 12:11 UTC (permalink / raw)
  To: 28841

Le Thu, 19 Oct 2017 11:57:07 +0200,
julien lepiller <julien@lepiller.eu> a écrit :

> Le 2017-10-18 22:50, Ricardo Wurmus a écrit :
> > Hi Julien,
> >   
> >> From: Julien Lepiller <julien@lepiller.eu>
> >> 
> >> * gnu/packages/java.scm (java-eclipse-jetty-test-helper): New
> >> variable.  
> > 
> > […]
> > 
> > I wonder: is there a better place for this than java.scm?  The same
> > question applies to all other patches in this series.  Let’s try to
> > avoid a second python.scm situation :)  
> 
> eclipse.scm? Or maybe maven.scm, with all other maven bootstrap 
> dependencies (and maven itself)? Or maven-bootstrap.scm, maven.scm
> being for the complete maven built with maven-bootstrap, and all the
> plugins of maven?

So, I've corrected all your comments, except this one, and I don't want
to push without some sort of a consensus. Do I add these packages to
java.scm, eclipse.scm, maven.scm, maven-bootstrap.scm?

> 
> 
> 

^ permalink raw reply	[flat|nested] 36+ messages in thread

* [bug#28841] [PATCH 03/24] gnu: Add java-eclipse-jetty-test-helper.
  2017-10-22 12:11         ` Julien Lepiller
@ 2017-10-22 14:46           ` Ricardo Wurmus
  2017-10-23  7:15             ` julien lepiller
  0 siblings, 1 reply; 36+ messages in thread
From: Ricardo Wurmus @ 2017-10-22 14:46 UTC (permalink / raw)
  To: Julien Lepiller; +Cc: 28841


Julien Lepiller <julien@lepiller.eu> writes:

> Le Thu, 19 Oct 2017 11:57:07 +0200,
> julien lepiller <julien@lepiller.eu> a écrit :
>
>> Le 2017-10-18 22:50, Ricardo Wurmus a écrit:
>> > Hi Julien,
>> >
>> >> From: Julien Lepiller <julien@lepiller.eu>
>> >>
>> >> * gnu/packages/java.scm (java-eclipse-jetty-test-helper): New
>> >> variable.
>> >
>> > […]
>> >
>> > I wonder: is there a better place for this than java.scm?  The same
>> > question applies to all other patches in this series.  Let’s try to
>> > avoid a second python.scm situation :)
>>
>> eclipse.scm? Or maybe maven.scm, with all other maven bootstrap
>> dependencies (and maven itself)? Or maven-bootstrap.scm, maven.scm
>> being for the complete maven built with maven-bootstrap, and all the
>> plugins of maven?
>
> So, I've corrected all your comments, except this one, and I don't want
> to push without some sort of a consensus. Do I add these packages to
> java.scm, eclipse.scm, maven.scm, maven-bootstrap.scm?

Since Eclipse Jetty is a Java HTTP server I’d just put it in web.scm.
Please also make sure that the description says something like “…helper
classes for the Jetty HTTP server…” or similar.

I could imagine an “eclipse” module to grow a lot, because there’s so
much software under than umbrella.  And since Jetty is usable without
Maven I think it really shouldn’t just be put in a new maven.scm.

Does this make sense?

--
Ricardo

GPG: BCA6 89B6 3655 3801 C3C6  2150 197A 5888 235F ACAC
https://elephly.net

^ permalink raw reply	[flat|nested] 36+ messages in thread

* [bug#28841] [PATCH 03/24] gnu: Add java-eclipse-jetty-test-helper.
  2017-10-22 14:46           ` Ricardo Wurmus
@ 2017-10-23  7:15             ` julien lepiller
  0 siblings, 0 replies; 36+ messages in thread
From: julien lepiller @ 2017-10-23  7:15 UTC (permalink / raw)
  To: 28841

Le 2017-10-22 16:46, Ricardo Wurmus a écrit :
> Julien Lepiller <julien@lepiller.eu> writes:
> 
>> Le Thu, 19 Oct 2017 11:57:07 +0200,
>> julien lepiller <julien@lepiller.eu> a écrit :
>> 
>>> Le 2017-10-18 22:50, Ricardo Wurmus a écrit:
>>> > Hi Julien,
>>> >
>>> >> From: Julien Lepiller <julien@lepiller.eu>
>>> >>
>>> >> * gnu/packages/java.scm (java-eclipse-jetty-test-helper): New
>>> >> variable.
>>> >
>>> > […]
>>> >
>>> > I wonder: is there a better place for this than java.scm?  The same
>>> > question applies to all other patches in this series.  Let’s try to
>>> > avoid a second python.scm situation :)
>>> 
>>> eclipse.scm? Or maybe maven.scm, with all other maven bootstrap
>>> dependencies (and maven itself)? Or maven-bootstrap.scm, maven.scm
>>> being for the complete maven built with maven-bootstrap, and all the
>>> plugins of maven?
>> 
>> So, I've corrected all your comments, except this one, and I don't 
>> want
>> to push without some sort of a consensus. Do I add these packages to
>> java.scm, eclipse.scm, maven.scm, maven-bootstrap.scm?
> 
> Since Eclipse Jetty is a Java HTTP server I’d just put it in web.scm.
> Please also make sure that the description says something like “…helper
> classes for the Jetty HTTP server…” or similar.
> 
> I could imagine an “eclipse” module to grow a lot, because there’s so
> much software under than umbrella.  And since Jetty is usable without
> Maven I think it really shouldn’t just be put in a new maven.scm.
> 
> Does this make sense?

Yes it does! I will fix and push this evening, then. Thank you.

> 
> --
> Ricardo
> 
> GPG: BCA6 89B6 3655 3801 C3C6  2150 197A 5888 235F ACAC
> https://elephly.net

^ permalink raw reply	[flat|nested] 36+ messages in thread

* bug#28841: [PATCH] New java packages
  2017-10-14 21:32 [bug#28841] [PATCH] New java packages Julien Lepiller
  2017-10-14 22:23 ` [bug#28841] [PATCH 01/24] gnu: Add java-hdrhistogram julien
@ 2017-10-23 20:58 ` Julien Lepiller
  1 sibling, 0 replies; 36+ messages in thread
From: Julien Lepiller @ 2017-10-23 20:58 UTC (permalink / raw)
  To: guix-patches, 28841-done

Le Sat, 14 Oct 2017 23:32:16 +0200,
Julien Lepiller <julien@lepiller.eu> a écrit :

> Hi,
> 
> this patch series adds 23 new java packages that are required before
> we can build maven.
> 
> 
> 

Pushed as 90a127c7ed63c22485f0751f3c24a9072a05c8b8 -
6768e0a7a5f7171bf21db61e02c9de4d5776c682.

^ permalink raw reply	[flat|nested] 36+ messages in thread

end of thread, other threads:[~2017-10-23 21:01 UTC | newest]

Thread overview: 36+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-10-14 21:32 [bug#28841] [PATCH] New java packages Julien Lepiller
2017-10-14 22:23 ` [bug#28841] [PATCH 01/24] gnu: Add java-hdrhistogram julien
2017-10-14 22:23   ` [bug#28841] [PATCH 02/24] gnu: Add java-tomcat julien
2017-10-18 20:36     ` Ricardo Wurmus
2017-10-18 20:42     ` Ricardo Wurmus
2017-10-19  9:45       ` julien lepiller
2017-10-18 20:51     ` Ricardo Wurmus
2017-10-14 22:23   ` [bug#28841] [PATCH 03/24] gnu: Add java-eclipse-jetty-test-helper julien
2017-10-18 20:50     ` Ricardo Wurmus
2017-10-19  9:57       ` julien lepiller
2017-10-22 12:11         ` Julien Lepiller
2017-10-22 14:46           ` Ricardo Wurmus
2017-10-23  7:15             ` julien lepiller
2017-10-14 22:23   ` [bug#28841] [PATCH 04/24] gnu: Add java-eclipse-jetty-perf-helper julien
2017-10-14 22:23   ` [bug#28841] [PATCH 05/24] gnu: Add java-eclipse-jetty-util julien
2017-10-14 22:23   ` [bug#28841] [PATCH 06/24] gnu: Add java-eclipse-jetty-util-9.2 julien
2017-10-14 22:23   ` [bug#28841] [PATCH 07/24] gnu: Add java-eclipse-jetty-io julien
2017-10-14 22:23   ` [bug#28841] [PATCH 08/24] gnu: Add java-eclipse-jetty-io-9.2 julien
2017-10-14 22:23   ` [bug#28841] [PATCH 09/24] gnu: Add java-eclipse-jetty-http julien
2017-10-14 22:23   ` [bug#28841] [PATCH 10/24] gnu: Add java-eclipse-jetty-http-9.2 julien
2017-10-14 22:23   ` [bug#28841] [PATCH 11/24] gnu: Add java-eclipse-jetty-jmx julien
2017-10-14 22:23   ` [bug#28841] [PATCH 12/24] gnu: Add java-eclipse-jetty-jmx-9.2 julien
2017-10-14 22:23   ` [bug#28841] [PATCH 13/24] gnu: Add java-eclipse-jetty-server julien
2017-10-14 22:23   ` [bug#28841] [PATCH 14/24] gnu: Add java-eclipse-jetty-server-9.2 julien
2017-10-14 22:23   ` [bug#28841] [PATCH 15/24] gnu: Add java-eclipse-jetty-security julien
2017-10-14 22:23   ` [bug#28841] [PATCH 16/24] gnu: Add java-eclipse-jetty-security-9.2 julien
2017-10-14 22:23   ` [bug#28841] [PATCH 17/24] gnu: Add java-eclipse-jetty-servlet julien
2017-10-14 22:23   ` [bug#28841] [PATCH 18/24] gnu: Add java-eclipse-jetty-servlet-9.2 julien
2017-10-14 22:23   ` [bug#28841] [PATCH 19/24] gnu: Add java-aopalliance julien
2017-10-14 22:23   ` [bug#28841] [PATCH 20/24] gnu: Add java-javax-inject julien
2017-10-14 22:23   ` [bug#28841] [PATCH 21/24] gnu: Add java-guice julien
2017-10-14 22:23   ` [bug#28841] [PATCH 22/24] gnu: Add java-guice-servlet julien
2017-10-14 22:23   ` [bug#28841] [PATCH 23/24] gnu: Add java-assertj julien
2017-10-14 22:23   ` [bug#28841] [PATCH 24/24] gnu: Add java-jboss-javassist julien
2017-10-18 20:40   ` [bug#28841] [PATCH 01/24] gnu: Add java-hdrhistogram Ricardo Wurmus
2017-10-23 20:58 ` bug#28841: [PATCH] New java packages Julien Lepiller

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).