Opened 13 years ago
Closed 4 years ago
#6887 closed defect (fixed)
GitHub out of date
Reported by: | simon04 | Owned by: | team |
---|---|---|---|
Priority: | normal | Milestone: | |
Component: | Git mirror | Version: | |
Keywords: | github mirror hack-weekend-2018-10 | Cc: | bastiK, wiktorn, bafonins |
Description
JOSM's GitHub mirror is out of date and hasn't been updated since Sept, 19, 2011.
Attachments (0)
Change History (53)
comment:1 by , 13 years ago
comment:2 by , 13 years ago
This is no official part of JOSM. The responsible persons need to be contacted directly (whoever they are).
comment:3 by , 13 years ago
Cc: | added |
---|
comment:4 by , 13 years ago
I filed an issue in GitHub: https://github.com/openstreetmap/josm/issues/1
comment:6 by , 13 years ago
Resolution: | → fixed |
---|---|
Status: | new → closed |
comment:7 by , 11 years ago
Resolution: | fixed |
---|---|
Status: | closed → reopened |
The mirror is outdated again.
If we had fast-updating github mirror, we could also use Travis CI (automatic building and testing after each commit) and detect broken commits.
comment:8 by , 11 years ago
This change would hopefully fix the mirror again: https://github.com/openstreetmap/openstreetmap-mirror/pull/2
The mirror script is here https://github.com/openstreetmap/openstreetmap-mirror/blob/master/josm-mirror.sh
comment:10 by , 11 years ago
Resolution: | → fixed |
---|---|
Status: | reopened → closed |
Brought GitHub mirror back to life. Now, it runs on my personal VPS.
This git-svn
thing isn't always easy, especially to reattach a Git clone to a SVN repository. Approximately, this is what I did (with the help of http://stackoverflow.com/a/13105418/205629):
git clone https://github.com/openstreetmap/josm.git
git fetch --all
git checkout master
git config svn-remote.svn.url http://josm.openstreetmap.de/svn/trunk
git config svn-remote.svn.fetch :refs/remotes/trunk
git update-ref refs/remotes/trunk c96225bf2118bd2bd4692b155e5f4575172f828c # corresponding to the latest commit of branch master
git svn fetch
git svn rebase
Now, I run the syncing in a cronjob
*/5 * * * * bash /home/simon/mirrors/openstreetmap-mirror/josm-mirror.sh >/dev/null 2>/dev/null
where josm-mirror.sh
is from https://github.com/openstreetmap/openstreetmap-mirror with this modifications
-
josm-mirror.sh
diff --git a/josm-mirror.sh b/josm-mirror.sh index 26e373e..b2c167f 100644
a b 1 1 #!/bin/bash -e 2 2 3 cd ~/mirrors/josm/ 4 3 5 # Changes already pulled, merge them to the mirror branch 4 6 git branch mirror || : 5 7 git checkout mirror … … git config user.email "openstreetmap@v.nix.is" 18 20 git add . 19 21 git commit -m"josm-mirror: bumped externals" || : 20 22 21 # Evil revision hack22 perl -pi -e 's[<arg value="."/>][<arg value="http://josm.openstreetmap.de/svn/trunk"/>]g' build.xml23 git commit -m"josm-mirror: evil build.xml revision hack" build.xml || :24 25 23 # Push the mirror to GitHub 26 git remote add mirror git@github.com :openstreetmap/josm.git || :24 git remote add mirror git@github.com-josm:openstreetmap/josm.git || : 27 25 28 26 # Push to our mirrors 29 27 git push -v mirror master
comment:13 by , 11 years ago
The update wasn't running since I forgot the git svn
commands … Here's the current diff against the openstreetmap-mirror repo:
-
josm-mirror.sh
diff --git a/josm-mirror.sh b/josm-mirror.sh index 26e373e..31800d6 100644
a b 1 1 #!/bin/bash -e 2 2 3 date -Is 4 5 cd /home/simon/mirrors/josm/ 6 7 # Pull changes from Subversion 8 echo $ git checkout master 9 git checkout master 10 echo $ git svn fetch 11 git svn fetch 12 echo $ git svn rebase 13 git svn rebase 14 3 15 # Changes already pulled, merge them to the mirror branch 16 echo $ git branch mirror 4 17 git branch mirror || : 18 echo $ git checkout mirror 5 19 git checkout mirror 6 git merge master 20 echo '$ git merge master -m"Merge branch 'master' into mirror"' 21 git merge master -m"Merge branch 'master' into mirror" 7 22 8 23 # Just do a plain copy of the externals into this repository. 24 echo $ svn export .... 9 25 svn export --force http://svn.apache.org/repos/asf/ant/core/trunk/src/main/org/apache/tools/bzip2 src/org/apache/tools/bzip2 >/dev/null 10 26 svn export --force http://svn.openstreetmap.org/applications/viewer/jmapviewer/src/org/openstreetmap/gui src/org/openstreetmap/gui >/dev/null 11 27 svn export --force http://svn.openstreetmap.org/applications/share/map-icons/classic.small images/styles/standard >/dev/null … … svn export --force http://svn.apache.org/repos/asf/commons/proper/codec/trunk/sr 15 31 git config user.name "JOSM GitHub mirror" 16 32 git config user.email "openstreetmap@v.nix.is" 17 33 34 echo $ git add . 18 35 git add . 36 echo '$ git commit -m"josm-mirror: bumped externals"' 19 37 git commit -m"josm-mirror: bumped externals" || : 20 38 21 # Evil revision hack22 perl -pi -e 's[<arg value="."/>][<arg value="http://josm.openstreetmap.de/svn/trunk"/>]g' build.xml23 git commit -m"josm-mirror: evil build.xml revision hack" build.xml || :24 25 39 # Push the mirror to GitHub 26 git remote add mirror git@github.com:openstreetmap/josm.git || : 40 echo $ git remote add mirror git@github.com-josm:openstreetmap/josm.git 41 git remote add mirror git@github.com-josm:openstreetmap/josm.git || : 27 42 28 43 # Push to our mirrors 44 echo $ git push -v mirror master 29 45 git push -v mirror master 46 echo $ git push -v mirror mirror 30 47 git push -v mirror mirror 48 49 echo Done ... 50 echo
comment:15 by , 8 years ago
Cc: | added |
---|---|
Resolution: | fixed |
Status: | closed → reopened |
From: wiktorn Date: Fri, Oct 28, 2016 at 8:32 PM Subject: Github mirror not updated To: josm-devel <josm-dev@openstreetmap.org> Hi, It looks like GitHub mirror of OSM is not updated any more. Last update was on 21st of October. What needs to be done to bring this service up? Or shall I just setup my own sync service with my JOSM GitHub mirror? Cheers, Wiktor
From: simon04 Date: Sat, Oct 29, 2016 at 12:40 AM Subject: Re: Github mirror not updated To: wiktorn Cc: josm-devel <josm-dev@openstreetmap.org> Hi, I run the mirror. The script is located here: https://github.com/simon04/josm-mirror and see https://josm.openstreetmap.de/ticket/6887 for earlier problems. The cause for the current broken-ness is: $ git svn rebase Checksum mismatch: src/org/openstreetmap/josm/data/coor/EastNorth.java 77fca040915bef6c6fd77e43c35d952c684b9d3d expected: e3c9169bad42e3154887b60a20bbea8b got: da2689e0e3989a6c2bc5b5449ad570eb I'll try to resolve this asap (tomorrow evening?). Simon
follow-up: 17 comment:16 by , 8 years ago
Resolution: | → fixed |
---|---|
Status: | reopened → closed |
I revived the mirror using the commands from comment:10.
@team: In case you want your JOSM commits liked to your GitHub account, follow https://help.github.com/articles/why-are-my-commits-linked-to-the-wrong-user/#commits-are-not-linked-to-any-user
comment:17 by , 8 years ago
Replying to simon04:
I revived the mirror using the commands from comment:10.
Great, many thanks.
@team: In case you want your JOSM commits liked to your GitHub account, follow https://help.github.com/articles/why-are-my-commits-linked-to-the-wrong-user/#commits-are-not-linked-to-any-user
Just to ease this for everybody. Email to add to GitHub profile is in format:
[username]@0c6e7542-c601-0410-84e7-c038aed88b3b
(for this mirror)
comment:18 by , 8 years ago
Resolution: | fixed |
---|---|
Status: | closed → reopened |
Once again synchronization stopped working :-/
follow-up: 22 comment:21 by , 8 years ago
Resolution: | → fixed |
---|---|
Status: | reopened → closed |
Sorry, for the long delay. I haven't had time to read through all JOSM Trac mails. Feel free to mail me personally.
The mirror should be up again. I wouldn't mind getting rid of the mirroring process. IMO it will always remain hacky unless we get rid of all SVN externals (and obtain build dependencies using Apache Ivy or similar) or switch to Git completely.
comment:22 by , 8 years ago
It looks like some externals are missing in Git mirror:
e.g:
https://github.com/openstreetmap/josm/tree/mirror/src/org/apache/commons/compress/
Is missing utils
. Maybe it's worth to review all externals.
Replying to simon04:
switch to Git completely.
+1 for switching to Git from me :-)
comment:23 by , 8 years ago
Resolution: | fixed |
---|---|
Status: | closed → reopened |
Last github sync was on April 11.
And by the way, +1 for getting rid of the build dependencies (which would probably start a new which-depencency-management-system-is-best war)
comment:24 by , 8 years ago
Resolution: | → fixed |
---|---|
Status: | reopened → closed |
I brought the mirror back to life, again. Did not investigate what caused the problem. I strongly hope that we can get rid of this hacky mirroring process, eventually.
comment:25 by , 7 years ago
Cc: | added |
---|---|
Resolution: | fixed |
Status: | closed → reopened |
Via mail from bafonins:
I prefer using git instead of svn and till this moment it worked fine, but after the latest merge from the main repository to my fork I am not able to build the project. This is what I get :
compile: [javac] Compiling 378 source files to /Users/bafonins/Projects/josm2/build [javac] Projects/josm2/src/org/apache/commons/compress/compressors/lzw/LZWInputStream.java:25: error: cannot find symbol [javac] import org.apache.commons.compress.MemoryLimitException; [javac] ^ [javac] symbol: class MemoryLimitException [javac] location: package org.apache.commons.compress [javac] Projects/josm2/src/org/apache/commons/compress/compressors/lzw/LZWInputStream.java:124: error: cannot find symbol [javac] throws MemoryLimitException { [javac] ^ [javac] symbol: class MemoryLimitException [javac] location: class LZWInputStream [javac] Projects/josm2/src/org/apache/commons/compress/compressors/lzw/LZWInputStream.java:133: error: cannot find symbol [javac] throw new MemoryLimitException(memoryUsageInKb, memoryLimitInKb); [javac] ^ [javac] symbol: class MemoryLimitException [javac] location: class LZWInputStream [javac] Note: Projects/josm2/src/oauth/signpost/AbstractOAuthProvider.java uses or overrides a deprecated API. [javac] Note: Recompile with -Xlint:deprecation for details. [javac] Note: Some input files use unchecked or unsafe operations. [javac] Note: Recompile with -Xlint:unchecked for details. [javac] 3 errors
comment:26 by , 7 years ago
Resolution: | → fixed |
---|---|
Status: | reopened → closed |
The SVN externals have changed. Updated the mirroring code https://github.com/simon04/josm-mirror/commit/35c2c2e5b7abc0f0463c836e0489983bfbab4a36. Starting with this commit, https://github.com/openstreetmap/josm/commit/2f9a23ea744bce42c33ee52aaf82135732d0950f, the build should be working again.
comment:27 by , 7 years ago
Ah sorry, didn't realize it would break the git mirror. I will make a PR if I have to change externals again.
comment:28 by , 7 years ago
Resolution: | fixed |
---|---|
Status: | closed → reopened |
https://github.com/openstreetmap/josm-plugins is broken (no update since november). Can you please look into it? Or tell me how to solve it :)
comment:29 by , 7 years ago
Component: | unspecified → Git mirror |
---|
comment:30 by , 7 years ago
https://github.com/openstreetmap/josm is also no longer updated for 8 days now.
follow-up: 33 comment:31 by , 7 years ago
Can you make the mirror script available for hostong on JOSM server or whereever necessary?
comment:33 by , 7 years ago
Replying to stoecker:
Can you make the mirror script available for hostong on JOSM server or whereever necessary?
Isn't this the mirroring script:
https://github.com/openstreetmap/openstreetmap-mirror/blob/master/josm-mirror.sh
or this:
https://github.com/simon04/josm-mirror/blob/master/josm-mirror.sh
(just by reading the history of this ticket)
comment:34 by , 7 years ago
Fine. That's a start.
@Vincent: Can we move the mirror from openstreetmap to JOSM organization?
comment:36 by , 7 years ago
Sorry, I overlooked the notification. Feel free to message me directly next time.
The mirroring broke due to (1) the switch from http://josm.openstreetmap.de/svn/trunk to https://josm.openstreetmap.de/svn/trunk and (2) the inclusion of windows/plugins/stdutils
.
I updated the URL following https://stackoverflow.com/a/268767. The JOSM mirror is up again. I'll look into the josm-plugins mirror next.
comment:37 by , 7 years ago
Could you please make the current mirror script and also the initial setup available (i.e. documentation). I'd still like to make the mirror from JOSM server, so that JOSM admins can fix issues.
comment:38 by , 7 years ago
The scripts plus all documentation I have is here: https://github.com/simon04/josm-mirror. Some additional information can be found in my comment:10.
comment:40 by , 7 years ago
The mirror is up again. Due to an existing .git/index.lock
, all mirroring Git commands failed.
comment:41 by , 6 years ago
The mirror
branch works fine but it seems svn:externals fail for master
.
comment:42 by , 6 years ago
Keywords: | hack-weekend-2018-10 added |
---|
When we switch to git this issue will finally be gone :)
comment:45 by , 5 years ago
Hi, this issue is still not solved. The mirror was not updated since May 25th, unless I'm missing something?
comment:46 by , 5 years ago
Hi, this issue is still not solved.
And that is why this issue remains open. All open issues are not solved, JOSM bug tracker has more than 1700 of them - https://josm.openstreetmap.de/query?status=assigned&status=needinfo&status=new&status=reopened&col=id&col=summary&col=status&col=type&col=priority&col=milestone&col=component&col=time&desc=1&order=id&report=4
If you want to help with some it is really welcomed, but useless +1 posts are useless and actually decrease chance of someone deciding to work on it.
The mirror was not updated since May 25th, unless I'm missing something?
See comment above yours.
comment:47 by , 5 years ago
Thanks for the answer. How can I help working on this issue then? Is there any kind of log or error message I could look at to understand what's going on?
From what I see on https://github.com/openstreetmap/openstreetmap-mirror/blob/master/cronjobs, the josm mirroring is done with the svn-mirror script instead of the josm-mirror script. Is that expected? Also the script doesn't seem to be executable after cloning.
comment:48 by , 5 years ago
I just found this: https://hub.docker.com/r/crazymax/svn2git-mirror Something like that wouldn't help?
comment:49 by , 5 years ago
Resolution: | → fixed |
---|---|
Status: | reopened → closed |
I fixed the mirror again (the last time?):
- It now reflects all changes up to r16200 – https://github.com/openstreetmap/josm
- I dropped updating the
mirror
branch by resolving the svn:externals. This is error prone and no longer needed due to #16860. – https://github.com/simon04/josm-mirror/commit/868574e6588f26816827ed3ff1a4f498463c15c7 - I changed the default branch on GitHub to
master
Please enjoy and let's dream of a future where JOSM's source code is hosted on Git only.
comment:51 by , 5 years ago
With the newly introduced git sparse-checkout
one can clone a minimal JOSM git repository:
$ git clone --filter=blob:none --sparse https://github.com/openstreetmap/josm.git $ cd josm/ $ git sparse-checkout add src nodist resources scripts tools $ du -sh .; du -sh .git 164M . 60M .git $ ant ... BUILD SUCCESSFUL
comment:52 by , 5 years ago
Resolution: | fixed |
---|---|
Status: | closed → reopened |
https://github.com/openstreetmap/josm-plugins was last updated at the end of 2017, see also https://github.com/openstreetmap/josm-plugins/pull/15
Any word on this?