Differences between revisions 1 and 6 (spanning 5 versions)
Revision 1 as of 2021-06-11 01:53:43
Size: 7275
Editor: ?LeandroDoctors
Comment:
Revision 6 as of 2021-06-11 02:26:22
Size: 9396
Editor: ?LeandroDoctors
Comment:
Deletions are marked like this. Additions are marked like this.
Line 10: Line 10:
== Relevant ITPs ==

(from [[https://salsa.debian.org/allentiak/gsoc-2021-proposal-feedback/-/blob/main/full.proposal--debian--2021--clojure-cli--leandro.doctors.pdf | the accepted proposal]])

1. The following ITPs should be fixed:

 * “ITP: clojure-cli -- upstream CLI entrypoints for Clojure” [[DebianBug:891141]]
 * “ITP: tools-deps-alpha-clojure -- functional API for dependency management and classpath creation” [[DebianBug:891136]]
 * “ITP: tools-gitlibs-clojure -- Clojure API for programatically accessing git libraries” [[DebianBug:905543]]

2. Consider also closing the following RFPs:

 * “RFP: clojurehelper -- Helper scripts for packaging Clojure programs” [[DebianBug:718775]]

----

We plan to collaborate with upstream during the packaging process, to ensure the package's quality. From [[https://lists.debian.org/debian-clojure/2021/06/msg00001.html | what we have already heard from them]] in [[https://lists.debian.org/debian-clojure/ | the debian-clojure list]], they are listening :)


== Packaging strategy ==

 1. Check which packages are already in Debian.
 1. Identify leaf nodes (all)
 1. Identify leaf nodes to work on (maybe some are not?)
  1. Work on `org.clojure` leaf nodes
  1. Work on non- `org.clojure` leaf nodes
Line 12: Line 39:
Line 13: Line 41:

=== Dependencies (full tree) ===
Line 105: Line 135:
== Relevant ITPs == === First-level dependencies ===
Line 107: Line 137:
(from [[https://salsa.debian.org/allentiak/gsoc-2021-proposal-feedback/-/blob/main/full.proposal--debian--2021--clojure-cli--leandro.doctors.pdf | the accepted proposal]]) {{{
[INFO] +- org.clojure:clojure:jar:1.10.3:compile
...
[INFO] +- org.clojure:tools.deps.alpha:jar:0.11.922:compile
...
[INFO] \- org.slf4j:slf4j-nop:jar:1.7.30:compile
...
}}}
Line 109: Line 146:
1. The following ITPs should be fixed:
Line 111: Line 147:
 * “ITP: clojure-cli -- upstream CLI entrypoints for Clojure” [[DebianBug:891141]]
 * “ITP: tools-deps-alpha-clojure -- functional API for dependency management and classpath creation”
[[DebianBug:891136]]
 * “ITP: tools-gitlibs-clojure -- Clojure API for programatically accessing git libraries” [[DebianBug:905543]]
=== Second-level dependencies ===
Line 116: Line 149:
2. Consider also closing the following RFPs: {{{
[INFO] +- org.clojure:clojure:jar:1.10.3:compile
[INFO] | +- org.clojure:spec.alpha:jar:0.2.194:compile (leaf node)
[INFO] | \- org.clojure:core.specs.alpha:jar:0.2.56:compile (leaf node)
[INFO] +- org.clojure:tools.deps.alpha:jar:0.11.922:compile
[INFO] | +- org.apache.maven.resolver:maven-resolver-api:jar:1.7.0:compile (leaf node)
[INFO] | +- org.apache.maven.resolver:maven-resolver-spi:jar:1.7.0:compile (leaf node)
[INFO] | +- org.apache.maven.resolver:maven-resolver-impl:jar:1.7.0:compile
...
[INFO] | +- org.apache.maven.resolver:maven-resolver-util:jar:1.7.0:compile (leaf node)
[INFO] | +- org.apache.maven.resolver:maven-resolver-connector-basic:jar:1.7.0:compile (leaf node)
[INFO] | +- org.apache.maven.resolver:maven-resolver-transport-file:jar:1.7.0:compile (leaf node)
[INFO] | +- org.apache.maven.resolver:maven-resolver-transport-http:jar:1.7.0:compile
...
[INFO] | +- org.apache.maven:maven-resolver-provider:jar:3.8.1:compile
...
[INFO] | +- org.apache.maven:maven-core:jar:3.8.1:compile
...
[INFO] | +- org.clojure:data.xml:jar:0.2.0-alpha6:compile
...
[INFO] | +- org.clojure:tools.gitlibs:jar:2.3.167:compile (leaf node)
[INFO] | +- org.clojure:tools.cli:jar:1.0.206:compile (leaf node)
[INFO] | +- com.cognitect.aws:api:jar:0.8.505:compile
...
[INFO] | +- com.cognitect.aws:endpoints:jar:1.1.11.969:compile (leaf node)
[INFO] | +- com.cognitect.aws:s3:jar:811.2.858.0:compile
...
[INFO] \- org.slf4j:slf4j-nop:jar:1.7.30:compile
[INFO] \- org.slf4j:slf4j-api:jar:1.7.30:compile
}}}
Line 118: Line 180:
 * “RFP: clojurehelper -- Helper scripts for packaging Clojure programs” [[DebianBug:718775]]
Line 120: Line 181:
----

We plan to collaborate with upstream during the packaging process, to ensure the package's quality. From [[https://lists.debian.org/debian-clojure/2021/06/msg00001.html | what we have already heard from them]] in [[https://lists.debian.org/debian-clojure/ | the debian-clojure list]], they are listening :)

Clojure-CLI

This page is intended to help the (re-)packaging of clj (and maybe other tools?)

ITP: 891141

This is a GSoC 2021 Project

Relevant ITPs

(from the accepted proposal)

1. The following ITPs should be fixed:

  • “ITP: clojure-cli -- upstream CLI entrypoints for Clojure” 891141

  • “ITP: tools-deps-alpha-clojure -- functional API for dependency management and classpath creation” 891136

  • “ITP: tools-gitlibs-clojure -- Clojure API for programatically accessing git libraries” 905543

2. Consider also closing the following RFPs:

  • “RFP: clojurehelper -- Helper scripts for packaging Clojure programs” 718775


We plan to collaborate with upstream during the packaging process, to ensure the package's quality. From what we have already heard from them in the debian-clojure list, they are listening :)

Packaging strategy

  1. Check which packages are already in Debian.
  2. Identify leaf nodes (all)
  3. Identify leaf nodes to work on (maybe some are not?)
    1. Work on org.clojure leaf nodes

    2. Work on non- org.clojure leaf nodes

Upstream Dependencies

In order to package clj, we first need to study clojure's upstream deps.

Dependencies (full tree)

% mvn dependency:tree
[INFO] Scanning for projects...
[INFO]
[INFO] ---------------------< org.clojure:clojure-tools >----------------------
[INFO] Building clojure-tools 1.10.3.855
[INFO] --------------------------------[ jar ]---------------------------------
[INFO]
[INFO] --- maven-dependency-plugin:2.8:tree (default-cli) @ clojure-tools ---
[INFO] org.clojure:clojure-tools:jar:1.10.3.855
[INFO] +- org.clojure:clojure:jar:1.10.3:compile
[INFO] |  +- org.clojure:spec.alpha:jar:0.2.194:compile
[INFO] |  \- org.clojure:core.specs.alpha:jar:0.2.56:compile
[INFO] +- org.clojure:tools.deps.alpha:jar:0.11.922:compile
[INFO] |  +- org.apache.maven.resolver:maven-resolver-api:jar:1.7.0:compile
[INFO] |  +- org.apache.maven.resolver:maven-resolver-spi:jar:1.7.0:compile
[INFO] |  +- org.apache.maven.resolver:maven-resolver-impl:jar:1.7.0:compile
[INFO] |  |  +- org.apache.maven.resolver:maven-resolver-named-locks:jar:1.7.0:compile
[INFO] |  |  +- org.apache.commons:commons-lang3:jar:3.8.1:compile
[INFO] |  |  \- javax.annotation:javax.annotation-api:jar:1.3.2:compile
[INFO] |  +- org.apache.maven.resolver:maven-resolver-util:jar:1.7.0:compile
[INFO] |  +- org.apache.maven.resolver:maven-resolver-connector-basic:jar:1.7.0:compile
[INFO] |  +- org.apache.maven.resolver:maven-resolver-transport-file:jar:1.7.0:compile
[INFO] |  +- org.apache.maven.resolver:maven-resolver-transport-http:jar:1.7.0:compile
[INFO] |  |  +- org.apache.httpcomponents:httpclient:jar:4.5.13:compile
[INFO] |  |  |  \- commons-codec:commons-codec:jar:1.11:compile
[INFO] |  |  +- org.apache.httpcomponents:httpcore:jar:4.4.14:compile
[INFO] |  |  \- org.slf4j:jcl-over-slf4j:jar:1.7.30:runtime
[INFO] |  +- org.apache.maven:maven-resolver-provider:jar:3.8.1:compile
[INFO] |  |  +- org.apache.maven:maven-model:jar:3.8.1:compile
[INFO] |  |  +- org.apache.maven:maven-model-builder:jar:3.8.1:compile
[INFO] |  |  |  \- org.codehaus.plexus:plexus-interpolation:jar:1.25:compile
[INFO] |  |  +- org.apache.maven:maven-repository-metadata:jar:3.8.1:compile
[INFO] |  |  \- org.codehaus.plexus:plexus-utils:jar:3.2.1:compile
[INFO] |  +- org.apache.maven:maven-core:jar:3.8.1:compile
[INFO] |  |  +- org.apache.maven:maven-settings:jar:3.8.1:compile
[INFO] |  |  +- org.apache.maven:maven-settings-builder:jar:3.8.1:compile
[INFO] |  |  |  \- org.sonatype.plexus:plexus-sec-dispatcher:jar:1.4:compile
[INFO] |  |  |     \- org.sonatype.plexus:plexus-cipher:jar:1.4:compile
[INFO] |  |  +- org.apache.maven:maven-builder-support:jar:3.8.1:compile
[INFO] |  |  +- org.apache.maven:maven-artifact:jar:3.8.1:compile
[INFO] |  |  +- org.apache.maven:maven-plugin-api:jar:3.8.1:compile
[INFO] |  |  +- org.apache.maven.shared:maven-shared-utils:jar:3.2.1:compile
[INFO] |  |  |  \- commons-io:commons-io:jar:2.5:compile
[INFO] |  |  +- org.eclipse.sisu:org.eclipse.sisu.plexus:jar:0.3.4:compile
[INFO] |  |  |  \- javax.enterprise:cdi-api:jar:1.0:compile
[INFO] |  |  |     \- javax.annotation:jsr250-api:jar:1.0:compile
[INFO] |  |  +- org.eclipse.sisu:org.eclipse.sisu.inject:jar:0.3.4:compile
[INFO] |  |  +- com.google.inject:guice:jar:no_aop:4.2.1:compile
[INFO] |  |  |  +- aopalliance:aopalliance:jar:1.0:compile
[INFO] |  |  |  \- com.google.guava:guava:jar:25.1-android:compile
[INFO] |  |  |     +- com.google.code.findbugs:jsr305:jar:3.0.2:compile
[INFO] |  |  |     +- org.checkerframework:checker-compat-qual:jar:2.0.0:compile
[INFO] |  |  |     +- com.google.errorprone:error_prone_annotations:jar:2.1.3:compile
[INFO] |  |  |     +- com.google.j2objc:j2objc-annotations:jar:1.1:compile
[INFO] |  |  |     \- org.codehaus.mojo:animal-sniffer-annotations:jar:1.14:compile
[INFO] |  |  +- org.codehaus.plexus:plexus-classworlds:jar:2.6.0:compile
[INFO] |  |  \- org.codehaus.plexus:plexus-component-annotations:jar:2.1.0:compile
[INFO] |  +- org.clojure:data.xml:jar:0.2.0-alpha6:compile
[INFO] |  |  \- org.clojure:data.codec:jar:0.1.0:compile
[INFO] |  +- org.clojure:tools.gitlibs:jar:2.3.167:compile
[INFO] |  +- org.clojure:tools.cli:jar:1.0.206:compile
[INFO] |  +- com.cognitect.aws:api:jar:0.8.505:compile
[INFO] |  |  +- org.clojure:data.json:jar:1.0.0:compile
[INFO] |  |  +- org.clojure:tools.logging:jar:1.1.0:compile
[INFO] |  |  +- com.cognitect:http-client:jar:0.1.106:compile
[INFO] |  |  |  +- org.eclipse.jetty:jetty-client:jar:9.4.36.v20210114:compile
[INFO] |  |  |  |  \- org.eclipse.jetty:jetty-io:jar:9.4.36.v20210114:compile
[INFO] |  |  |  +- org.eclipse.jetty:jetty-http:jar:9.4.36.v20210114:compile
[INFO] |  |  |  \- org.eclipse.jetty:jetty-util:jar:9.4.36.v20210114:compile
[INFO] |  |  \- org.clojure:core.async:jar:1.3.610:compile
[INFO] |  |     \- org.clojure:tools.analyzer.jvm:jar:1.1.0:compile
[INFO] |  |        +- org.clojure:tools.analyzer:jar:1.0.0:compile
[INFO] |  |        +- org.clojure:core.memoize:jar:1.0.236:compile
[INFO] |  |        |  \- org.clojure:core.cache:jar:1.0.207:compile
[INFO] |  |        |     \- org.clojure:data.priority-map:jar:1.0.0:compile
[INFO] |  |        +- org.ow2.asm:asm:jar:5.2:compile
[INFO] |  |        \- org.clojure:tools.reader:jar:1.3.2:compile
[INFO] |  +- com.cognitect.aws:endpoints:jar:1.1.11.969:compile
[INFO] |  +- com.cognitect.aws:s3:jar:811.2.858.0:compile
[INFO] |  \- javax.inject:javax.inject:jar:1:compile
[INFO] \- org.slf4j:slf4j-nop:jar:1.7.30:compile
[INFO]    \- org.slf4j:slf4j-api:jar:1.7.30:compile
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time:  1.599 s
[INFO] Finished at: 2021-06-09T11:07:08-03:00
[INFO] ------------------------------------------------------------------------

First-level dependencies

[INFO] +- org.clojure:clojure:jar:1.10.3:compile
...
[INFO] +- org.clojure:tools.deps.alpha:jar:0.11.922:compile
...
[INFO] \- org.slf4j:slf4j-nop:jar:1.7.30:compile
...

Second-level dependencies

[INFO] +- org.clojure:clojure:jar:1.10.3:compile
[INFO] |  +- org.clojure:spec.alpha:jar:0.2.194:compile (leaf node)
[INFO] |  \- org.clojure:core.specs.alpha:jar:0.2.56:compile (leaf node)
[INFO] +- org.clojure:tools.deps.alpha:jar:0.11.922:compile
[INFO] |  +- org.apache.maven.resolver:maven-resolver-api:jar:1.7.0:compile (leaf node)
[INFO] |  +- org.apache.maven.resolver:maven-resolver-spi:jar:1.7.0:compile (leaf node)
[INFO] |  +- org.apache.maven.resolver:maven-resolver-impl:jar:1.7.0:compile
...
[INFO] |  +- org.apache.maven.resolver:maven-resolver-util:jar:1.7.0:compile (leaf node)
[INFO] |  +- org.apache.maven.resolver:maven-resolver-connector-basic:jar:1.7.0:compile (leaf node)
[INFO] |  +- org.apache.maven.resolver:maven-resolver-transport-file:jar:1.7.0:compile (leaf node)
[INFO] |  +- org.apache.maven.resolver:maven-resolver-transport-http:jar:1.7.0:compile
...
[INFO] |  +- org.apache.maven:maven-resolver-provider:jar:3.8.1:compile
...
[INFO] |  +- org.apache.maven:maven-core:jar:3.8.1:compile
...
[INFO] |  +- org.clojure:data.xml:jar:0.2.0-alpha6:compile
...
[INFO] |  +- org.clojure:tools.gitlibs:jar:2.3.167:compile (leaf node)
[INFO] |  +- org.clojure:tools.cli:jar:1.0.206:compile (leaf node)
[INFO] |  +- com.cognitect.aws:api:jar:0.8.505:compile
...
[INFO] |  +- com.cognitect.aws:endpoints:jar:1.1.11.969:compile (leaf node)
[INFO] |  +- com.cognitect.aws:s3:jar:811.2.858.0:compile
...
[INFO] \- org.slf4j:slf4j-nop:jar:1.7.30:compile
[INFO]    \- org.slf4j:slf4j-api:jar:1.7.30:compile


CategoryClojure