From c68decba7f74beadade4ae155de61ab775984a64 Mon Sep 17 00:00:00 2001 From: Sun Cao Date: Tue, 20 Oct 2026 12:06:43 -0700 Subject: [PATCH 1/7] Add Maven Central metadata and a release profile that builds sources and javadoc jars and signs them. --- server/pom.xml | 111 ++++++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 110 insertions(+), 1 deletion(-) diff --git a/server/pom.xml b/server/pom.xml index 287199aa..4eb49ae7 100644 --- a/server/pom.xml +++ b/server/pom.xml @@ -1,7 +1,8 @@ + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd" + child.project.url.inherit.append.path="false"> 4.0.0 io.opensharing @@ -11,6 +12,7 @@ OpenSharing Reference implementation of the OpenSharing protocol + https://github.com/OpenSharing-IO/OpenSharing opensharing-server-core @@ -21,9 +23,41 @@ Apache License, Version 2.0 https://www.apache.org/licenses/LICENSE-2.0 + repo + + + chakankardb + Abhijit Chakankar + https://github.com/chakankardb + + + hueyhuilonghan + Huey Han + https://github.com/hueyhuilonghan + + + linzhou-db + Lin Zhou + https://github.com/linzhou-db + + + littlegrasscao + Sun Cao + https://github.com/littlegrasscao + + + + + scm:git:https://github.com/OpenSharing-IO/OpenSharing.git + scm:git:git@github.com:OpenSharing-IO/OpenSharing.git + https://github.com/OpenSharing-IO/OpenSharing + + UTF-8 21 @@ -117,7 +151,82 @@ maven-shade-plugin 3.6.0 + + org.apache.maven.plugins + maven-jar-plugin + 3.4.2 + + + org.apache.maven.plugins + maven-source-plugin + 3.3.1 + + + org.apache.maven.plugins + maven-javadoc-plugin + 3.11.2 + + + org.apache.maven.plugins + maven-gpg-plugin + 3.2.7 + + + + + + release + + + + org.apache.maven.plugins + maven-source-plugin + + + attach-sources + + jar-no-fork + + + + + + org.apache.maven.plugins + maven-javadoc-plugin + + + attach-javadocs + + jar + + + + + + + org.apache.maven.plugins + maven-gpg-plugin + + + sign-artifacts + verify + + sign + + + + --pinentry-mode + loopback + + + + + + + + + From 353e3d9d30bfa27b36375ec355fa3d06dcc1221a Mon Sep 17 00:00:00 2001 From: Sun Cao Date: Tue, 20 Oct 2026 12:25:59 -0700 Subject: [PATCH 2/7] Keep the runnable jar out of release builds, and pin the versions plugin used to set the release version. --- server/opensharing-server/pom.xml | 22 ++++++++++++++++++++++ server/pom.xml | 5 +++++ 2 files changed, 27 insertions(+) diff --git a/server/opensharing-server/pom.xml b/server/opensharing-server/pom.xml index f5f18da6..54a1aa38 100644 --- a/server/opensharing-server/pom.xml +++ b/server/opensharing-server/pom.xml @@ -82,6 +82,7 @@ + exec-jar package shade @@ -91,4 +92,25 @@ + + + + + release + + + + org.apache.maven.plugins + maven-shade-plugin + + + exec-jar + none + + + + + + + diff --git a/server/pom.xml b/server/pom.xml index 4eb49ae7..d160db36 100644 --- a/server/pom.xml +++ b/server/pom.xml @@ -171,6 +171,11 @@ maven-gpg-plugin 3.2.7 + + org.codehaus.mojo + versions-maven-plugin + 2.23.0 + From a1f640561557882000590f35968a3aeef1c11662 Mon Sep 17 00:00:00 2001 From: Sun Cao Date: Tue, 20 Oct 2026 13:11:29 -0700 Subject: [PATCH 3/7] Add a NOTICE, a license check that writes THIRD-PARTY.txt, and a release tarball for the server. --- NOTICE | 8 ++ server/opensharing-server/pom.xml | 82 ++++++++++++++++++- .../src/assembly/tarball.xml | 47 +++++++++++ .../src/bin/start-opensharing-server | 11 +++ server/pom.xml | 23 ++++++ 5 files changed, 170 insertions(+), 1 deletion(-) create mode 100644 NOTICE create mode 100644 server/opensharing-server/src/assembly/tarball.xml create mode 100755 server/opensharing-server/src/bin/start-opensharing-server diff --git a/NOTICE b/NOTICE new file mode 100644 index 00000000..3b8d10ab --- /dev/null +++ b/NOTICE @@ -0,0 +1,8 @@ +Copyright (2026) Databricks, Inc. + +This Software includes software developed at Databricks (https://www.databricks.com/) and its use +is subject to the included LICENSE file. +--- + +The server distributions bundle open source dependencies. THIRD-PARTY.txt in each distribution +lists every bundled dependency and its license. diff --git a/server/opensharing-server/pom.xml b/server/opensharing-server/pom.xml index 54a1aa38..70ee5777 100644 --- a/server/opensharing-server/pom.xml +++ b/server/opensharing-server/pom.xml @@ -78,6 +78,18 @@ + + + + META-INF/LICENSE + ${project.basedir}/../../LICENSE + + + false + @@ -90,11 +102,59 @@ + + + org.codehaus.mojo + license-maven-plugin + + test,provided,system + true + true + + Apache-2.0 + BSD-2-Clause + BSD-3-Clause + CC0-1.0 + EDL-1.0 + EPL-1.0 + EPL-2.0 + MIT + MIT-0 + MPL-2.0 + + + + Apache-2.0 | Apache License, Version 2.0 | The Apache Software License, Version 2.0 + | Apache License 2.0 | The Apache License, Version 2.0 | Apache 2 + | Apache Software License - Version 2.0 + + BSD-2-Clause | BSD 2-Clause License + CC0-1.0 | Public Domain, per Creative Commons CC0 + EDL-1.0 | Eclipse Distribution License v. 1.0 + + EPL-1.0 | Eclipse Public License - v 1.0 | Eclipse Public License - Version 1.0 + + EPL-2.0 | Eclipse Public License v. 2.0 + LGPL-2.1 | GNU Lesser General Public License + MIT | The MIT License (MIT) + + + + + third-party + + add-third-party + + + + - + release @@ -109,6 +169,26 @@ + + org.apache.maven.plugins + maven-assembly-plugin + + + tarball + package + + single + + + + src/assembly/tarball.xml + + false + false + + + + diff --git a/server/opensharing-server/src/assembly/tarball.xml b/server/opensharing-server/src/assembly/tarball.xml new file mode 100644 index 00000000..600fb624 --- /dev/null +++ b/server/opensharing-server/src/assembly/tarball.xml @@ -0,0 +1,47 @@ + + + + tarball + + tar.gz + + false + + + + jars + runtime + + + + + + ${project.basedir}/../.. + + + LICENSE + NOTICE + + + + ${project.build.directory}/generated-sources/license + + + THIRD-PARTY.txt + + + + src/bin + bin + 0755 + + + src/main/resources + etc/conf + + + diff --git a/server/opensharing-server/src/bin/start-opensharing-server b/server/opensharing-server/src/bin/start-opensharing-server new file mode 100755 index 00000000..adea268c --- /dev/null +++ b/server/opensharing-server/src/bin/start-opensharing-server @@ -0,0 +1,11 @@ +#!/usr/bin/env bash +# Starts the server from the unpacked tarball. Files in etc/conf take precedence over the copies +# in the jars, and JAVA_OPTS passes JVM options such as -Dserver.port=9090. +set -euo pipefail + +ROOT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)" + +# JAVA_OPTS is left unquoted so that it splits into separate options. +# shellcheck disable=SC2086 +exec java ${JAVA_OPTS:-} -cp "$ROOT_DIR/etc/conf:$ROOT_DIR/jars/*" \ + io.opensharing.OpenSharingServer "$@" diff --git a/server/pom.xml b/server/pom.xml index d160db36..5617c082 100644 --- a/server/pom.xml +++ b/server/pom.xml @@ -129,6 +129,19 @@ + + + src/main/resources + + + ${project.basedir}/../.. + META-INF + + LICENSE + NOTICE + + + @@ -176,6 +189,16 @@ versions-maven-plugin 2.23.0 + + org.codehaus.mojo + license-maven-plugin + 2.5.0 + + + org.apache.maven.plugins + maven-assembly-plugin + 3.7.1 + From d39276b5f7032e35c441fd4235154e669da1b65c Mon Sep 17 00:00:00 2001 From: Sun Cao Date: Tue, 20 Oct 2026 13:48:38 -0700 Subject: [PATCH 4/7] Accept the license spellings and reviewed LGPL and GPL-with-exception dependencies the server stack brings. --- server/opensharing-server/pom.xml | 32 +++++++++++++++++++++++++++---- 1 file changed, 28 insertions(+), 4 deletions(-) diff --git a/server/opensharing-server/pom.xml b/server/opensharing-server/pom.xml index 70ee5777..aa3383d9 100644 --- a/server/opensharing-server/pom.xml +++ b/server/opensharing-server/pom.xml @@ -122,22 +122,46 @@ MIT MIT-0 MPL-2.0 + + LGPL-2.1-or-later + GPL-2.0-with-classpath-exception + GPL-2.0-with-universal-FOSS-exception Apache-2.0 | Apache License, Version 2.0 | The Apache Software License, Version 2.0 | Apache License 2.0 | The Apache License, Version 2.0 | Apache 2 - | Apache Software License - Version 2.0 + | Apache Software License - Version 2.0 | Apache 2.0 | Apache License, version 2.0 + | Apache License Version 2.0 BSD-2-Clause | BSD 2-Clause License + BSD-3-Clause | BSD New license | Go License CC0-1.0 | Public Domain, per Creative Commons CC0 - EDL-1.0 | Eclipse Distribution License v. 1.0 + + EDL-1.0 | Eclipse Distribution License v. 1.0 | Eclipse Distribution License - v 1.0 + | EDL 1.0 + EPL-1.0 | Eclipse Public License - v 1.0 | Eclipse Public License - Version 1.0 + | EPL 1.0 - EPL-2.0 | Eclipse Public License v. 2.0 + EPL-2.0 | Eclipse Public License v. 2.0 | EPL 2.0 LGPL-2.1 | GNU Lesser General Public License - MIT | The MIT License (MIT) + + + LGPL-2.1-or-later | GNU Library General Public License v2.1 or later + + + + GPL-2.0-with-classpath-exception | GPL2 w/ CPE | CDDL + GPLv2 with classpath exception + + + + GPL-2.0-with-universal-FOSS-exception + | The GNU General Public License, v2 with Universal FOSS Exception, v1.0 + + MIT | The MIT License (MIT) | The MIT License | MIT license + MPL-2.0 | MPL 2.0 From f9d725fa64061450be4f43910d41bac0ee03aae4 Mon Sep 17 00:00:00 2001 From: Sun Cao Date: Tue, 20 Oct 2026 13:56:21 -0700 Subject: [PATCH 5/7] Publish only the two modules, with flattened poms that do not refer to the parent. --- server/pom.xml | 40 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) diff --git a/server/pom.xml b/server/pom.xml index 5617c082..92a07c85 100644 --- a/server/pom.xml +++ b/server/pom.xml @@ -199,6 +199,16 @@ maven-assembly-plugin 3.7.1 + + org.codehaus.mojo + flatten-maven-plugin + 1.8.0 + + + org.apache.maven.plugins + maven-install-plugin + 3.1.4 + @@ -253,6 +263,36 @@ + + + org.codehaus.mojo + flatten-maven-plugin + + ossrh + + resolve + + ${project.build.directory} + + + + flatten + process-resources + + flatten + + + + + + org.apache.maven.plugins + maven-install-plugin + false + + true + + From d523be3dae7c7bd18fad8d0ef5e0b01a4c1f1cfb Mon Sep 17 00:00:00 2001 From: Sun Cao Date: Tue, 20 Oct 2026 15:08:29 -0700 Subject: [PATCH 6/7] Drop the tarball, THIRD-PARTY.txt in the jar, and the LICENSE and NOTICE handling Maven Central does not need. --- NOTICE | 4 -- server/opensharing-server/pom.xml | 40 ++-------------- .../src/assembly/tarball.xml | 47 ------------------- .../src/bin/start-opensharing-server | 11 ----- server/pom.xml | 18 ------- 5 files changed, 4 insertions(+), 116 deletions(-) delete mode 100644 server/opensharing-server/src/assembly/tarball.xml delete mode 100755 server/opensharing-server/src/bin/start-opensharing-server diff --git a/NOTICE b/NOTICE index 3b8d10ab..602ace2d 100644 --- a/NOTICE +++ b/NOTICE @@ -2,7 +2,3 @@ Copyright (2026) Databricks, Inc. This Software includes software developed at Databricks (https://www.databricks.com/) and its use is subject to the included LICENSE file. ---- - -The server distributions bundle open source dependencies. THIRD-PARTY.txt in each distribution -lists every bundled dependency and its license. diff --git a/server/opensharing-server/pom.xml b/server/opensharing-server/pom.xml index aa3383d9..18b9a631 100644 --- a/server/opensharing-server/pom.xml +++ b/server/opensharing-server/pom.xml @@ -78,18 +78,6 @@ - - - - META-INF/LICENSE - ${project.basedir}/../../LICENSE - - - false - @@ -102,8 +90,8 @@ - + org.codehaus.mojo license-maven-plugin @@ -167,6 +155,7 @@ third-party + verify add-third-party @@ -177,8 +166,7 @@ - + release @@ -193,26 +181,6 @@ - - org.apache.maven.plugins - maven-assembly-plugin - - - tarball - package - - single - - - - src/assembly/tarball.xml - - false - false - - - - diff --git a/server/opensharing-server/src/assembly/tarball.xml b/server/opensharing-server/src/assembly/tarball.xml deleted file mode 100644 index 600fb624..00000000 --- a/server/opensharing-server/src/assembly/tarball.xml +++ /dev/null @@ -1,47 +0,0 @@ - - - - tarball - - tar.gz - - false - - - - jars - runtime - - - - - - ${project.basedir}/../.. - - - LICENSE - NOTICE - - - - ${project.build.directory}/generated-sources/license - - - THIRD-PARTY.txt - - - - src/bin - bin - 0755 - - - src/main/resources - etc/conf - - - diff --git a/server/opensharing-server/src/bin/start-opensharing-server b/server/opensharing-server/src/bin/start-opensharing-server deleted file mode 100755 index adea268c..00000000 --- a/server/opensharing-server/src/bin/start-opensharing-server +++ /dev/null @@ -1,11 +0,0 @@ -#!/usr/bin/env bash -# Starts the server from the unpacked tarball. Files in etc/conf take precedence over the copies -# in the jars, and JAVA_OPTS passes JVM options such as -Dserver.port=9090. -set -euo pipefail - -ROOT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)" - -# JAVA_OPTS is left unquoted so that it splits into separate options. -# shellcheck disable=SC2086 -exec java ${JAVA_OPTS:-} -cp "$ROOT_DIR/etc/conf:$ROOT_DIR/jars/*" \ - io.opensharing.OpenSharingServer "$@" diff --git a/server/pom.xml b/server/pom.xml index 92a07c85..abe987cd 100644 --- a/server/pom.xml +++ b/server/pom.xml @@ -129,19 +129,6 @@ - - - src/main/resources - - - ${project.basedir}/../.. - META-INF - - LICENSE - NOTICE - - - @@ -194,11 +181,6 @@ license-maven-plugin 2.5.0 - - org.apache.maven.plugins - maven-assembly-plugin - 3.7.1 - org.codehaus.mojo flatten-maven-plugin From 6c07af5a042806feb48408bb40a23e60e416d5d2 Mon Sep 17 00:00:00 2001 From: Sun Cao Date: Tue, 20 Oct 2026 15:16:29 -0700 Subject: [PATCH 7/7] Describe opensharing-server as the standalone server, and keep the parent out of release deploys too. --- server/opensharing-server/pom.xml | 2 +- server/pom.xml | 13 +++++++++++++ 2 files changed, 14 insertions(+), 1 deletion(-) diff --git a/server/opensharing-server/pom.xml b/server/opensharing-server/pom.xml index 18b9a631..16f7c204 100644 --- a/server/opensharing-server/pom.xml +++ b/server/opensharing-server/pom.xml @@ -13,7 +13,7 @@ opensharing-server OpenSharing Reference Server - Runnable OpenSharing server for standalone deployments + Standalone OpenSharing server built on opensharing-server-core diff --git a/server/pom.xml b/server/pom.xml index abe987cd..ccf4c97f 100644 --- a/server/pom.xml +++ b/server/pom.xml @@ -191,6 +191,11 @@ maven-install-plugin 3.1.4 + + org.apache.maven.plugins + maven-deploy-plugin + 3.1.4 + @@ -275,6 +280,14 @@ true + + org.apache.maven.plugins + maven-deploy-plugin + false + + true + +