Make a Sedona release¶
This page is for Sedona PPMC to publish Sedona releases.
You can read ASF guidelines: 1. ASF Incubator Distribution Guidelines: https://incubator.apache.org/guides/distribution.html 2. ASF Release Guidelines: https://infra.apache.org/release-publishing.html 3. ASF Incubator Release Votes Guidelines: https://issues.apache.org/jira/browse/LEGAL-469
Warning
All scripts on this page should be run in your local Sedona Git repo under master branch via a single script file.
0. Prepare an empty script file¶
- In your local Sedona Git repo under master branch, run
echo "#!/bin/bash" > create-release.sh chmod 777 create-release.sh
- Use your favourite GUI text editor to open
create-release.sh
. - Then keep copying the scripts on this web page to replace all content in this script file.
- Do NOT directly copy/paste the scripts to your terminal because a bug in
clipboard.js
will create link breaks in such case. - Each time when you copy content to this script file, run
./create-release.sh
to execute it.
1. Check ASF copyright in all file headers¶
- Run the following script:
#!/bin/bash wget -q https://dlcdn.apache.org//creadur/apache-rat-$RAT_VERSION/apache-rat-0.15-bin.tar.gz tar -xvf apache-rat-0.15-bin.tar.gz git clone --shared --branch master https://github.com/apache/incubator-sedona.git sedona-src java -jar apache-rat-0.15.jar -d sedona-src > report.txt
- Read the generated report.txt file and make sure all source code files have ASF header.
- Delete the generated report and cloned files
#!/bin/bash rm -rf sedona-src rm report.txt
2. Update Sedona Python, R and Zeppelin versions¶
Make sure the Sedona version in the following files are 1.3.0-incubating. Note that: Python and R versions cannot have "incubating" postfix.
- https://github.com/apache/incubator-sedona/blob/master/python/sedona/version.py
- https://github.com/apache/incubator-sedona/blob/master/R/DESCRIPTION
- https://github.com/apache/incubator-sedona/blob/master/zeppelin/package.json
3. Update mkdocs.yml¶
- Please change the following variables in
mkdocs.yml
to the version you want to publish.sedona_create_release.current_version
sedona_create_release.current_rc
sedona_create_release.current_git_tag
sedona_create_release.current_snapshot
- Then compile the website by
mkdocs serve
. This will generate the scripts listed on this page in your local browser. - You can also publish this website if needed. See the instruction at bottom.
4. Stage and upload release candidates¶
#!/bin/bash
source ~/.bashrc
git checkout master
git pull
echo "Step 1. Stage the Release Candidate to GitHub."
mvn -q -B clean release:prepare -Dtag=sedona-1.3.0-incubating-rc2 -DreleaseVersion=1.3.0-incubating \
-DdevelopmentVersion=1.3.1-incubating-SNAPSHOT -DautoVersionSubmodules=true -Dresume=false -Darguments="-DskipTests"
echo "Now the releases are staged. A tag and two commits have been created on Sedona GitHub repo"
echo "Step 2: Upload the Release Candidate to https://repository.apache.org."
# For Spark 3.0 and Scala 2.12
mvn -q clean release:perform -DautoVersionSubmodules=true -Dresume=false -Darguments="-DskipTests"
# For Spark 3.0 and Scala 2.13
mvn -q org.apache.maven.plugins:maven-release-plugin:2.3.2:perform \
-DconnectionUrl=scm:git:https://github.com/apache/incubator-sedona.git -Dtag=sedona-1.3.0-incubating-rc2 \
-DautoVersionSubmodules=true -Dresume=false -Darguments="-DskipTests -Dscala=2.13"
echo "Step 3: Upload Release Candidate on ASF SVN: https://dist.apache.org/repos/dist/dev/incubator/sedona"
echo "Creating a folder on SVN..."
svn mkdir -m "Adding folder" https://dist.apache.org/repos/dist/dev/incubator/sedona/1.3.0-incubating-rc2
echo "Creating release files locally..."
git clone --shared --branch sedona-1.3.0-incubating-rc2 https://github.com/apache/incubator-sedona.git apache-sedona-1.3.0-incubating-src
rm -rf apache-sedona-1.3.0-incubating-src/.git
tar czf apache-sedona-1.3.0-incubating-src.tar.gz apache-sedona-1.3.0-incubating-src
mkdir apache-sedona-1.3.0-incubating-bin
cd apache-sedona-1.3.0-incubating-src && mvn clean install -DskipTests -Dscala=2.12 && cd ..
cp apache-sedona-1.3.0-incubating-src/core/target/sedona-*1.3.0-incubating.jar apache-sedona-1.3.0-incubating-bin/
cp apache-sedona-1.3.0-incubating-src/sql/target/sedona-*1.3.0-incubating.jar apache-sedona-1.3.0-incubating-bin/
cp apache-sedona-1.3.0-incubating-src/viz/target/sedona-*1.3.0-incubating.jar apache-sedona-1.3.0-incubating-bin/
cp apache-sedona-1.3.0-incubating-src/python-adapter/target/sedona-*1.3.0-incubating.jar apache-sedona-1.3.0-incubating-bin/
cp apache-sedona-1.3.0-incubating-src/flink/target/sedona-*1.3.0-incubating.jar apache-sedona-1.3.0-incubating-bin/
cd apache-sedona-1.3.0-incubating-src && mvn clean install -DskipTests -Dscala=2.13 && cd ..
cp apache-sedona-1.3.0-incubating-src/core/target/sedona-*1.3.0-incubating.jar apache-sedona-1.3.0-incubating-bin/
cp apache-sedona-1.3.0-incubating-src/sql/target/sedona-*1.3.0-incubating.jar apache-sedona-1.3.0-incubating-bin/
cp apache-sedona-1.3.0-incubating-src/viz/target/sedona-*1.3.0-incubating.jar apache-sedona-1.3.0-incubating-bin/
cp apache-sedona-1.3.0-incubating-src/python-adapter/target/sedona-*1.3.0-incubating.jar apache-sedona-1.3.0-incubating-bin/
cp apache-sedona-1.3.0-incubating-src/flink/target/sedona-*1.3.0-incubating.jar apache-sedona-1.3.0-incubating-bin/
tar czf apache-sedona-1.3.0-incubating-bin.tar.gz apache-sedona-1.3.0-incubating-bin
shasum -a 512 apache-sedona-1.3.0-incubating-src.tar.gz > apache-sedona-1.3.0-incubating-src.tar.gz.sha512
shasum -a 512 apache-sedona-1.3.0-incubating-bin.tar.gz > apache-sedona-1.3.0-incubating-bin.tar.gz.sha512
gpg -ab apache-sedona-1.3.0-incubating-src.tar.gz
gpg -ab apache-sedona-1.3.0-incubating-bin.tar.gz
echo "Uploading local release files..."
svn import -m "Adding file" apache-sedona-1.3.0-incubating-src.tar.gz https://dist.apache.org/repos/dist/dev/incubator/sedona/1.3.0-incubating-rc2/apache-sedona-1.3.0-incubating-src.tar.gz
svn import -m "Adding file" apache-sedona-1.3.0-incubating-src.tar.gz.asc https://dist.apache.org/repos/dist/dev/incubator/sedona/1.3.0-incubating-rc2/apache-sedona-1.3.0-incubating-src.tar.gz.asc
svn import -m "Adding file" apache-sedona-1.3.0-incubating-src.tar.gz.sha512 https://dist.apache.org/repos/dist/dev/incubator/sedona/1.3.0-incubating-rc2/apache-sedona-1.3.0-incubating-src.tar.gz.sha512
svn import -m "Adding file" apache-sedona-1.3.0-incubating-bin.tar.gz https://dist.apache.org/repos/dist/dev/incubator/sedona/1.3.0-incubating-rc2/apache-sedona-1.3.0-incubating-bin.tar.gz
svn import -m "Adding file" apache-sedona-1.3.0-incubating-bin.tar.gz.asc https://dist.apache.org/repos/dist/dev/incubator/sedona/1.3.0-incubating-rc2/apache-sedona-1.3.0-incubating-bin.tar.gz.asc
svn import -m "Adding file" apache-sedona-1.3.0-incubating-bin.tar.gz.sha512 https://dist.apache.org/repos/dist/dev/incubator/sedona/1.3.0-incubating-rc2/apache-sedona-1.3.0-incubating-bin.tar.gz.sha512
echo "Removing local release files..."
rm apache-sedona-1.3.0-incubating-src.tar.gz
rm apache-sedona-1.3.0-incubating-src.tar.gz.asc
rm apache-sedona-1.3.0-incubating-src.tar.gz.sha512
rm apache-sedona-1.3.0-incubating-bin.tar.gz
rm apache-sedona-1.3.0-incubating-bin.tar.gz.asc
rm apache-sedona-1.3.0-incubating-bin.tar.gz.sha512
rm -rf apache-sedona-1.3.0-incubating-src
rm -rf apache-sedona-1.3.0-incubating-bin
5. Vote in dev sedona.apache.org¶
Vote email¶
Please add changes at the end if needed:
Subject: [VOTE] Release Apache Sedona 1.3.0-incubating-rc2
Hi all,
This is a call for vote on Apache Sedona 1.3.0-incubating-rc2. Please refer to the changes listed at the bottom of this email.
Release notes:
https://github.com/apache/incubator-sedona/blob/sedona-1.3.0-incubating-rc2/docs/setup/release-notes.md
Build instructions:
https://github.com/apache/incubator-sedona/blob/sedona-1.3.0-incubating-rc2/docs/setup/compile.md
GitHub tag:
https://github.com/apache/incubator-sedona/releases/tag/sedona-1.3.0-incubating-rc2
GPG public key to verify the Release:
https://downloads.apache.org/incubator/sedona/KEYS
Source code and binaries:
https://dist.apache.org/repos/dist/dev/incubator/sedona/1.3.0-incubating-rc2/
The vote will be open for at least 72 hours or until at least 3 "+1" PMC votes are cast
Instruction for checking items on the checklist: https://sedona.apache.org/community/vote/
We recommend you use this Jupyter notebook on MyBinder to perform this task: https://mybinder.org/v2/gh/jiayuasu/sedona-tools/HEAD?labpath=binder%2Fverify-release.ipynb
**Please vote accordingly and you must provide your checklist for your vote**.
[ ] +1 approve
[ ] +0 no opinion
[ ] -1 disapprove with the reason
Checklist:
[ ] Download links are valid.
[ ] Checksums and PGP signatures are valid.
[ ] DISCLAIMER is included.
[ ] Source code artifacts have correct names matching the current release.
For a detailed checklist please refer to:
https://cwiki.apache.org/confluence/display/INCUBATOR/Incubator+Release+Checklist
------------
Changes according to the comments on the previous release
Original comment (Permalink from https://lists.apache.org/list.html):
Pass email¶
Please count the votes and add the Permalink of the vote thread at the end.
Subject: [RESULT][VOTE] Release Apache Sedona 1.3.0-incubating-rc2
Dear all,
The vote closes now as 72hr have passed. The vote PASSES with
+? (binding): NAME1, NAME2, NAME3
+? (non-binding): NAME4
No -1 votes
The vote thread (Permalink from https://lists.apache.org/list.html):
I will now bring the vote to general@incubator.apache.org to get
approval by the IPMC. If this vote passes too, the release is accepted and will be published.
6. Vote in general incubator.apache.org¶
Vote email¶
- Please add the permalink of Sedona Community vote thread
- Please add the permalink of Sedona Community vote result thread
- Please add changes at the end if needed.
Subject: [VOTE] Release Apache Sedona 1.3.0-incubating-rc2
Hi all,
This is a call for vote on Apache Sedona 1.3.0-incubating-rc2. Please refer to the changes listed at the bottom of this email.
Sedona Community vote thread (Permalink from https://lists.apache.org/list.html):
Sedona community vote result thread (Permalink from https://lists.apache.org/list.html):
Release notes:
https://github.com/apache/incubator-sedona/blob/sedona-1.3.0-incubating-rc2/docs/setup/release-notes.md
Build instructions:
https://github.com/apache/incubator-sedona/blob/sedona-1.3.0-incubating-rc2/docs/setup/compile.md
GitHub tag:
https://github.com/apache/incubator-sedona/releases/tag/sedona-1.3.0-incubating-rc2
GPG public key to verify the Release:
https://downloads.apache.org/incubator/sedona/KEYS
Source code and binaries:
https://dist.apache.org/repos/dist/dev/incubator/sedona/1.3.0-incubating-rc2/
The vote will be open for at least 72 hours or until at least 3 "+1" PMC votes are cast
Please vote accordingly:
[ ] +1 approve
[ ] +0 no opinion
[ ] -1 disapprove with the reason
Checklist for reference (because of DISCLAIMER-WIP, other checklist items are not blockers):
[ ] Download links are valid.
[ ] Checksums and PGP signatures are valid.
[ ] DISCLAIMER is included.
[ ] Source code artifacts have correct names matching the current release.
For a detailed checklist please refer to:
https://cwiki.apache.org/confluence/display/INCUBATOR/Incubator+Release+Checklist
------------
Changes according to the comments on the previous release
Original comment (Permalink from https://lists.apache.org/list.html):
Pass email¶
Please count the votes and add the permalink of the vote thread.
Subject: [RESULT][VOTE] Release Apache Sedona 1.3.0-incubating-rc2
Dear all,
The vote closes now as 72hr have passed. The vote PASSES with
+? (binding): NAME1, NAME2, NAME3
+? (non-binding): NAME4
No -1 votes
The vote thread (Permalink from https://lists.apache.org/list.html):
I will publish the release and make an annoucement once it is done.
Announce email¶
- This email should be CCed to dev@sedona.apache.org
- Please add the permalink of the incubator vote thread
- Please add the permalink of the incubator vote result thread
Subject: [ANNOUNCE] Apache Sedona 1.3.0-incubating released
Dear all,
We are happy to report that we have released Apache Sedona (incubating) 1.3.0-incubating. Thank you again for your help.
Apache Sedona (incubating) is a cluster computing system for processing large-scale spatial data.
Vote thread (Permalink from https://lists.apache.org/list.html):
Vote result thread (Permalink from https://lists.apache.org/list.html):
Website:
http://sedona.apache.org/
Release notes:
https://github.com/apache/incubator-sedona/blob/sedona-1.3.0-incubating/docs/setup/release-notes.md
Download links:
https://github.com/apache/incubator-sedona/releases/tag/sedona-1.3.0-incubating
Additional resources:
Get started: http://sedona.apache.org/setup/overview/
Tutorials: http://sedona.apache.org/tutorial/rdd/
Mailing list: dev@sedona.apache.org
Twitter: https://twitter.com/ApacheSedona
Gitter: https://gitter.im/apache/sedona
Regards,
Apache Sedona (incubating) Team
7. Failed vote¶
If a vote failed, do the following:
- In the vote email, say that we will create another release candidate.
- Restart from Step 3
Update mkdocs.yml
. Please increment the release candidate ID (e.g.,1.3.0-incubating-rc2
) and updatesedona_create_release.current_rc
andsedona_create_release.current_git_tag
inmkdocs.yml
to generate the script listed on this webpage.
8. Release source code and Maven package¶
Upload releases¶
#!/bin/bash
echo "Move all files in https://dist.apache.org/repos/dist/dev/incubator/sedona to https://dist.apache.org/repos/dist/release/incubator/sedona, using svn"
svn mkdir -m "Adding folder" https://dist.apache.org/repos/dist/release/incubator/sedona/1.3.0-incubating
wget https://dist.apache.org/repos/dist/dev/incubator/sedona/1.3.0-incubating-rc2/apache-sedona-1.3.0-incubating-src.tar.gz
wget https://dist.apache.org/repos/dist/dev/incubator/sedona/1.3.0-incubating-rc2/apache-sedona-1.3.0-incubating-src.tar.gz.asc
wget https://dist.apache.org/repos/dist/dev/incubator/sedona/1.3.0-incubating-rc2/apache-sedona-1.3.0-incubating-src.tar.gz.sha512
wget https://dist.apache.org/repos/dist/dev/incubator/sedona/1.3.0-incubating-rc2/apache-sedona-1.3.0-incubating-bin.tar.gz
wget https://dist.apache.org/repos/dist/dev/incubator/sedona/1.3.0-incubating-rc2/apache-sedona-1.3.0-incubating-bin.tar.gz.asc
wget https://dist.apache.org/repos/dist/dev/incubator/sedona/1.3.0-incubating-rc2/apache-sedona-1.3.0-incubating-bin.tar.gz.sha512
svn import -m "Adding file" apache-sedona-1.3.0-incubating-src.tar.gz https://dist.apache.org/repos/dist/release/incubator/sedona/1.3.0-incubating/apache-sedona-1.3.0-incubating-src.tar.gz
svn import -m "Adding file" apache-sedona-1.3.0-incubating-src.tar.gz.asc https://dist.apache.org/repos/dist/release/incubator/sedona/1.3.0-incubating/apache-sedona-1.3.0-incubating-src.tar.gz.asc
svn import -m "Adding file" apache-sedona-1.3.0-incubating-src.tar.gz.sha512 https://dist.apache.org/repos/dist/release/incubator/sedona/1.3.0-incubating/apache-sedona-1.3.0-incubating-src.tar.gz.sha512
svn import -m "Adding file" apache-sedona-1.3.0-incubating-bin.tar.gz https://dist.apache.org/repos/dist/release/incubator/sedona/1.3.0-incubating/apache-sedona-1.3.0-incubating-bin.tar.gz
svn import -m "Adding file" apache-sedona-1.3.0-incubating-bin.tar.gz.asc https://dist.apache.org/repos/dist/release/incubator/sedona/1.3.0-incubating/apache-sedona-1.3.0-incubating-bin.tar.gz.asc
svn import -m "Adding file" apache-sedona-1.3.0-incubating-bin.tar.gz.sha512 https://dist.apache.org/repos/dist/release/incubator/sedona/1.3.0-incubating/apache-sedona-1.3.0-incubating-bin.tar.gz.sha512
rm apache-sedona-1.3.0-incubating-src.tar.gz
rm apache-sedona-1.3.0-incubating-src.tar.gz.asc
rm apache-sedona-1.3.0-incubating-src.tar.gz.sha512
rm apache-sedona-1.3.0-incubating-bin.tar.gz
rm apache-sedona-1.3.0-incubating-bin.tar.gz.asc
rm apache-sedona-1.3.0-incubating-bin.tar.gz.sha512
echo "Re-staging releases to https://repository.apache.org"
# For Spark 3.0 and Scala 2.12
mvn -q org.apache.maven.plugins:maven-release-plugin:2.3.2:perform -DconnectionUrl=scm:git:https://github.com/apache/incubator-sedona.git -Dtag=sedona-1.3.0-incubating-rc2 -DautoVersionSubmodules=true -Dresume=false -Darguments="-DskipTests"
# For Spark 3.0 and Scala 2.13
mvn -q org.apache.maven.plugins:maven-release-plugin:2.3.2:perform -DconnectionUrl=scm:git:https://github.com/apache/incubator-sedona.git -Dtag=sedona-1.3.0-incubating-rc2 -DautoVersionSubmodules=true -Dresume=false -Darguments="-DskipTests -Dscala=2.13"
Fix signature issues¶
Please find the Sedona staging id on https://repository.apache.org under staging repository
.
Then run the following script. Replace admin
, admind123
with your Apache ID username and Apache ID password. Replace stagingid
with the correct id.
#!/bin/bash
username=admin
password=admin123
stagingid=1016
echo "Re-uploading signatures to fix *failureMessage Invalid Signature*"
wget https://repository.apache.org/service/local/repositories/orgapachesedona-$stagingid/content/org/apache/sedona/sedona-common/1.3.0-incubating/sedona-common-1.3.0-incubating.pom
wget https://repository.apache.org/service/local/repositories/orgapachesedona-$stagingid/content/org/apache/sedona/sedona-core-3.0_2.12/1.3.0-incubating/sedona-core-3.0_2.12-1.3.0-incubating.pom
wget https://repository.apache.org/service/local/repositories/orgapachesedona-$stagingid/content/org/apache/sedona/sedona-core-3.0_2.13/1.3.0-incubating/sedona-core-3.0_2.13-1.3.0-incubating.pom
wget https://repository.apache.org/service/local/repositories/orgapachesedona-$stagingid/content/org/apache/sedona/sedona-sql-3.0_2.12/1.3.0-incubating/sedona-sql-3.0_2.12-1.3.0-incubating.pom
wget https://repository.apache.org/service/local/repositories/orgapachesedona-$stagingid/content/org/apache/sedona/sedona-sql-3.0_2.13/1.3.0-incubating/sedona-sql-3.0_2.13-1.3.0-incubating.pom
wget https://repository.apache.org/service/local/repositories/orgapachesedona-$stagingid/content/org/apache/sedona/sedona-viz-3.0_2.12/1.3.0-incubating/sedona-viz-3.0_2.12-1.3.0-incubating.pom
wget https://repository.apache.org/service/local/repositories/orgapachesedona-$stagingid/content/org/apache/sedona/sedona-viz-3.0_2.13/1.3.0-incubating/sedona-viz-3.0_2.13-1.3.0-incubating.pom
wget https://repository.apache.org/service/local/repositories/orgapachesedona-$stagingid/content/org/apache/sedona/sedona-python-adapter-3.0_2.12/1.3.0-incubating/sedona-python-adapter-3.0_2.12-1.3.0-incubating.pom
wget https://repository.apache.org/service/local/repositories/orgapachesedona-$stagingid/content/org/apache/sedona/sedona-python-adapter-3.0_2.13/1.3.0-incubating/sedona-python-adapter-3.0_2.13-1.3.0-incubating.pom
wget https://repository.apache.org/service/local/repositories/orgapachesedona-$stagingid/content/org/apache/sedona/sedona-flink_2.12/1.3.0-incubating/sedona-flink_2.12-1.3.0-incubating.pom
gpg -ab sedona-common-1.3.0-incubating.pom
gpg -ab sedona-core-3.0_2.12-1.3.0-incubating.pom
gpg -ab sedona-sql-3.0_2.12-1.3.0-incubating.pom
gpg -ab sedona-viz-3.0_2.12-1.3.0-incubating.pom
gpg -ab sedona-python-adapter-3.0_2.12-1.3.0-incubating.pom
gpg -ab sedona-flink_2.12-1.3.0-incubating.pom
gpg -ab sedona-core-3.0_2.13-1.3.0-incubating.pom
gpg -ab sedona-sql-3.0_2.13-1.3.0-incubating.pom
gpg -ab sedona-viz-3.0_2.13-1.3.0-incubating.pom
gpg -ab sedona-python-adapter-3.0_2.13-1.3.0-incubating.pom
curl -v -u $username:$password --upload-file sedona-common-1.3.0-incubating.pom.asc https://repository.apache.org/service/local/repositories/orgapachesedona-$stagingid/content/org/apache/sedona/sedona-common/1.3.0-incubating/sedona-common-1.3.0-incubating.pom.asc
curl -v -u $username:$password --upload-file sedona-python-adapter-3.0_2.12-1.3.0-incubating.pom.asc https://repository.apache.org/service/local/repositories/orgapachesedona-$stagingid/content/org/apache/sedona/sedona-python-adapter-3.0_2.12/1.3.0-incubating/sedona-python-adapter-3.0_2.12-1.3.0-incubating.pom.asc
curl -v -u $username:$password --upload-file sedona-viz-3.0_2.12-1.3.0-incubating.pom.asc https://repository.apache.org/service/local/repositories/orgapachesedona-$stagingid/content/org/apache/sedona/sedona-viz-3.0_2.12/1.3.0-incubating/sedona-viz-3.0_2.12-1.3.0-incubating.pom.asc
curl -v -u $username:$password --upload-file sedona-core-3.0_2.12-1.3.0-incubating.pom.asc https://repository.apache.org/service/local/repositories/orgapachesedona-$stagingid/content/org/apache/sedona/sedona-core-3.0_2.12/1.3.0-incubating/sedona-core-3.0_2.12-1.3.0-incubating.pom.asc
curl -v -u $username:$password --upload-file sedona-sql-3.0_2.12-1.3.0-incubating.pom.asc https://repository.apache.org/service/local/repositories/orgapachesedona-$stagingid/content/org/apache/sedona/sedona-sql-3.0_2.12/1.3.0-incubating/sedona-sql-3.0_2.12-1.3.0-incubating.pom.asc
curl -v -u $username:$password --upload-file sedona-flink_2.12-1.3.0-incubating.pom.asc https://repository.apache.org/service/local/repositories/orgapachesedona-$stagingid/content/org/apache/sedona/sedona-flink_2.12/1.3.0-incubating/sedona-flink_2.12-1.3.0-incubating.pom.asc
curl -v -u $username:$password --upload-file sedona-python-adapter-3.0_2.13-1.3.0-incubating.pom.asc https://repository.apache.org/service/local/repositories/orgapachesedona-$stagingid/content/org/apache/sedona/sedona-python-adapter-3.0_2.13/1.3.0-incubating/sedona-python-adapter-3.0_2.12-1.3.0-incubating.pom.asc
curl -v -u $username:$password --upload-file sedona-viz-3.0_2.13-1.3.0-incubating.pom.asc https://repository.apache.org/service/local/repositories/orgapachesedona-$stagingid/content/org/apache/sedona/sedona-viz-3.0_2.13/1.3.0-incubating/sedona-viz-3.0_2.13-1.3.0-incubating.pom.asc
curl -v -u $username:$password --upload-file sedona-core-3.0_2.13-1.3.0-incubating.pom.asc https://repository.apache.org/service/local/repositories/orgapachesedona-$stagingid/content/org/apache/sedona/sedona-core-3.0_2.13/1.3.0-incubating/sedona-core-3.0_2.13-1.3.0-incubating.pom.asc
curl -v -u $username:$password --upload-file sedona-sql-3.0_2.13-1.3.0-incubating.pom.asc https://repository.apache.org/service/local/repositories/orgapachesedona-$stagingid/content/org/apache/sedona/sedona-sql-3.0_2.13/1.3.0-incubating/sedona-sql-3.0_2.13-1.3.0-incubating.pom.asc
rm *.pom
rm *.asc
Manually close and release the package¶
- Click
Close
on the Sedona staging repo on https://repository.apache.org understaging repository
- Once the staging repo is closed, click
Release
on this repo.
9. Release Sedona Python and Zeppelin¶
You must have the maintainer priviledge of https://pypi.org/project/apache-sedona/
and https://www.npmjs.com/package/apache-sedona
#!/bin/bash
git clone --shared --branch sedona-1.3.0-incubating-rc2 https://github.com/apache/incubator-sedona.git apache-sedona-1.3.0-incubating-src
cd apache-sedona-1.3.0-incubating-src/python && python3 setup.py sdist bdist_wheel && twine upload dist/* && cd ..
cd zeppelin && npm publish && cd ..
rm -rf apache-sedona-1.3.0-incubating-src
10. Release Sedona R to CRAN.¶
#!/bin/bash
R CMD build .
R CMD check --as-cran apache.sedona_*.tar.gz
Then submit to CRAN using this web form.
11. Publish the doc website¶
- Add the download link to Download page and create a GitHub release.
- Run
mkdocs build
in Sedona root directory. Copy all content in thesite
folder. - Check out GitHub incubator-sedona-website asf-site branch
- Use the copied content to replace all content in
asf-site
branch and upload to GitHub. Thensedona.apache.org
will be automatically updated. - You can also push the content to
asf-staging
branch. The staging website will be then updated:sedona.staged.apache.org
Javadoc and Scaladoc¶
Compile
You should first compile the entire docs using mkdocs build
to get the site
folder.
- Javadoc: Use Intelij IDEA to generate Javadoc for
core
andviz
module - Scaladoc: Run
scaladoc -d site/api/javadoc/sql/ sql/src/main/scala/org/apache/sedona/sql/utils/*.scala
Copy
- Copy the generated Javadoc (Scaladoc should already be there) to the corresponding folders in
site/api/javadoc
- Deploy Javadoc and Scaladoc with the project website
Compile R html docs¶
- Make sure you install R, tree and curl on your Ubuntu machine. On Mac, just do
brew install tree
sudo apt install littler tree libcurl4-openssl-dev
- In the Sedona root directory, run the script below. This will create
rdocs
folder in Sedona/docs/api/rdocs
#!/bin/bash Rscript generate-docs.R cd ./docs/api/rdocs && tree -H '.' -L 1 --noreport --charset utf-8 -o index.html && cd ../../../