Message ID | 874k0pxk20.fsf@gmail.com |
---|---|
State | Accepted |
Headers | show |
Series | [bug#55929] gnu: maven: Add maven-doxia-sink-api | expand |
Context | Check | Description |
---|---|---|
cbaines/comparison | success | View comparision |
cbaines/git branch | success | View Git branch |
cbaines/applying patch | fail | View Laminar job |
cbaines/issue | success | View issue |
Le Mon, 13 Jun 2022 07:29:43 +0300, "Artyom V. Poptsov" <poptsov.artyom@gmail.com> a écrit : > Hello Julien, > > first of all, thanks for reviewing my patches! > > I fixed my patch, at least the part I understood -- see below. > > > Great to see someone trying to package more maven-related stuff! I > > think I've seen it in the dependency graph to the > > maven-plugin-plugin, which I'd like to package at some point to > > make our life easier. > > Indeed, I started my work on packaging Doxia because I wanted to > package 'maven-plugin-plugin' which in turn is required for > 'maven-release-plugin'[1]. And 'maven-release-plugin' is required for > 'java-json-simple'[2] ... > > So the dependency order looks like this: > 0. 'ugs' (Universal G-Code sender) [3] > 1. 'java-jts' > 2. 'java-json-simple' > 3. 'maven-release-plugin' > 4. 'maven-plugin-plugin' <-- I'm here. ;-) > > Also, while we on it, I have the following questions: > 0. How did you check the dependency graph for 'maven-plugin-plugin' > without packaging it? > 1. Is it possible with Guix to generate the reverse dependency graph > to see that packages depend on the specified package? 0. I tried to package it, but somehow it was more difficult than I expected and I had other projects. Apache projects have "dependencies" link on their web page, like this one: https://maven.apache.org/plugin-tools/maven-plugin-plugin/dependencies.html where they list all dependencies. 1. guix graph -t reverse-package (or guix graph -t reverse-bag), see guix graph --list-types for more options. > > > This might require a parent-pom (probably the top-level pom.xml and > > maybe its own parent pom), so you'll have to provide a patch for it > > as well. You can have a look at (gnu packages maven-parent) for > > examples. > > This part I don't understand. Could you elaborate? The installed pom contains the following: <parent> <artifactId>doxia</artifactId> <groupId>org.apache.maven.doxia</groupId> <version>2.0.0-M2</version> <relativePath>../pom.xml</relativePath> </parent> If the referenced pom file is not installed, it won't be found by Maven later when we use it to run the maven-plugin-plugin. See for instance how the parent pom is installed in java-slf4j-parent, and propagated from java-slf4j-api (and recursively from java-slf4j-simple). This top-level pom also has the following, so it should propagate it: <parent> <groupId>org.apache.maven</groupId> <artifactId>maven-parent</artifactId> <version>34</version> <relativePath /> </parent> We already have it: maven-parent-pom-34.
From b4020bc283f18d7b7394976c4288d04130f1e651 Mon Sep 17 00:00:00 2001 From: "Artyom V. Poptsov" <poptsov.artyom@gmail.com> Date: Sun, 12 Jun 2022 21:42:33 +0300 Subject: [PATCH] gnu: maven: Add maven-doxia-sink-api * gnu/packages/maven.scm (maven-doxia-sink-api): New variable. --- gnu/packages/maven.scm | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) diff --git a/gnu/packages/maven.scm b/gnu/packages/maven.scm index 817fee1c71..93c1538bae 100644 --- a/gnu/packages/maven.scm +++ b/gnu/packages/maven.scm @@ -3,6 +3,7 @@ ;;; Copyright © 2019 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2019 Björn Höfling <bjoern.hoefling@bjoernhoefling.de> ;;; Copyright © 2020 Efraim Flashner <efraim@flashner.co.il> +;;; Copyright © 2022 Artyom V. Poptsov <poptsov.artyom@gmail.com> ;;; ;;; This file is part of GNU Guix. ;;; @@ -3887,3 +3888,31 @@ reports in two different file formats, plain text and xml."))) (description "This plugin provides the capability to build jars. If you would like to sign jars please use the Maven Jarsigner Plugin instead.") (license license:asl2.0))) + +(define-public maven-doxia-sink-api + (package + (name "maven-doxia-sink-api") + (version "2.0.0-M2") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://gitbox.apache.org/repos/asf/maven-doxia.git") + (commit (string-append "doxia-" version)))) + (file-name (git-file-name "doxia" version)) + (sha256 + (base32 + "0jx96lg0hgjsrm8mynhac4hwh2hmgiwjpwpx2k03yr14040zcr48")))) + (build-system ant-build-system) + (native-inputs + (list java-javax-inject)) + (arguments + (list #:jar-name "doxia-core.jar" + #:source-dir "doxia-sink-api/src/main/java" + #:tests? #f)) ; no tests + (home-page "https://maven.apache.org/doxia/index.html") + (synopsis "Generic markup language interface") + (description "The @code{Sink} interface is a generic markup language +interface provided as a Java API. It contains several methods that encapsulate +common text syntax. A start tag is denoted by @code{xxxx()} method and a end +of tag by @code{xxxx_()} method.") + (license license:asl2.0))) -- 2.25.1