Magic Lantern Forum

Developing Magic Lantern => General Development => Topic started by: names_are_hard on August 20, 2019, 04:48:31 PM

Title: Bitbucket set to remove Mercurial support
Post by: names_are_hard on August 20, 2019, 04:48:31 PM
I think this affects ML.  Maybe not, they talk about Bitbucket Cloud so perhaps we're on a service where they're not retiring Mercurial?

https://bitbucket.org/blog/sunsetting-mercurial-support-in-bitbucket
"Mercurial features and repositories will be officially removed from Bitbucket and its API on June 1, 2020"

I don't like their decision to delete repos.  Putting them in a read-only mode would have been a lot kinder.

There are tools to migrate to Git (so I guess you keep your history?) but I know from personal experience that building ML has dependencies on having hg installed on your system.  It wasn't hard to remove these.

Long term this is probably good for ML - almost no-one uses Mercurial and needing to learn it must put some people off ML.  Short term it's annoying to migrate!
Title: Re: Bitbucket set to remove Mercurial support
Post by: dfort on August 20, 2019, 05:56:33 PM
Yep, just got the email from Atlassian.

QuoteAfter much consideration, we've decided to remove Mercurial support from Bitbucket Cloud and the API. Mercurial features and repositories will be officially removed from Bitbucket and its API on June 1, 2020.

What used to be a very fragmented version control software market has rapidly matured. Mercurial usage on Bitbucket is steadily declining, and the percentage of new Bitbucket users choosing Mercurial has fallen to less than 1%. At the same time, Git has become the standard. According to a Stack Overflow Developer Survey, almost 90% of developers use Git, while Mercurial is the least popular version control system with only about 3% developer adoption.

Given that Git has emerged as the version control system of choice for the industry, we have decided to focus our priorities and roadmap on building the best possible experience for the market and our users.

Read on to learn more about what led to this decision, timeline, and migration resource support.
Title: Re: Bitbucket set to remove Mercurial support
Post by: Danne on August 20, 2019, 06:26:38 PM
Aw, hell...
Title: Re: Bitbucket set to remove Mercurial support
Post by: names_are_hard on August 20, 2019, 06:33:32 PM
Meh, annoying.  Could also move to another provider that supports Mercurial, I suppose.  Not my call.
Title: Re: Bitbucket set to remove Mercurial support
Post by: a1ex on August 20, 2019, 08:48:28 PM
Quote from: Danne on August 20, 2019, 06:26:38 PM
Aw, hell...

Indeed, unlearning ~ 10 years worth of workflow is not going to be funny :(

Not only that, but there's a lot of useful info on Bitbucket (discussions on issue tracker, pull requests, various forks) that will be deleted, even if we move to some other Mercurial host (correct me if I'm wrong). These will have to be migrated (manually copy/pasted?) somewhere, too. How? Maybe web.archive.org to the rescue?

Migrating to git also means the existing commit hashes (used all over the place in documentation and discussions) will no longer work. Updating those is going to be a PITA, just like the Dropbox links used a lot in the past (still unsolved as of today).

I actually had a few attempts at learning Git, but found it a lot more complicated than Mercurial. I'm not completely against switching to Git, but I need some very good reasons to do so.

"ML has dependencies on having hg installed" -> this one is likely easy to fix. Still a PITA, will take at least a couple of hours, but doable.

In any case, no matter what path we'll choose, this change will result in lots of time wasted (time that would have otherwise been spent on development), and plenty of headaches.

I actually hope there will be some miracle at Bitbucket, about reversing this decision...




Discussions across the web:
- https://community.atlassian.com/t5/Bitbucket-articles/What-to-do-with-your-Mercurial-repos-when-Bitbucket-sunsets/ba-p/1155380
- https://www.reddit.com/r/programming/comments/csy2tf/bitbucket_kills_mercurial_support/
- https://news.ycombinator.com/item?id=20745393
Title: Re: Bitbucket set to remove Mercurial support
Post by: nikfreak on August 20, 2019, 09:46:27 PM
'nuff time til June May 2020. I am sure there will be a way to either archive everything (read-only mode) or migrate almost everything.
Title: Re: Bitbucket set to remove Mercurial support
Post by: Danne on August 20, 2019, 10:03:26 PM
Quote from: nikfreak on August 20, 2019, 09:46:27 PM
'nuff time til June May 2020. I am sure there will be a way to either archive everything (read-only mode) or migrate almost everything.
Well it's not gonna migrate overnight, that's for sure. Tragic. Personally I built so many tools around mercurial and now it feels like a strong grown forest and it's source trees, branches, the works is just killed.
And then git, sigh...
I guess nothing lasts forever. Except for maybe eos m  :'(
Title: Re: Bitbucket set to remove Mercurial support
Post by: names_are_hard on August 20, 2019, 10:11:02 PM
Finding the best compromise between least painful and most information preserved may be time consuming though :(

I am trying Github's import function, apparently that is quite reliable.  I'll update when it's finished with what things worked well / badly.  In theory one option would be hg-git, allowing Github (or Bitbucket, but you'd still need to migrate the repo, for which Github has a function already and Bitbucket doesn't...) for hosting, and devs can use hg or git cli tools:
https://hg-git.github.io/

In the community thread, Atlassian staff seem quite convinced they won't change their minds.  They even rule out developing an auto-migration tool for your repo type on Bitbucket.  Sometimes angry internet people get stupid decisions changed, so we can wait and see.

Personally I prefer Git...  but really only because I've never learnt Mercurial.  Reading around it seems they have basically identical functionality these days, just accessed in different ways.  But they are both complicated tools and relearning is pain, so keeping the ability to use hg tools seems valuable.
Title: Re: Bitbucket set to remove Mercurial support
Post by: dmilligan on August 20, 2019, 10:54:48 PM
Well, hg always annoyed me b/c I use git at work and I am more used to it, but this move by atlassian is pretty sketchy. I'd see this as an opportunity to dump them altogether and moving to another hosting provider. Although as a1ex points out it does suck to loose all that history. Maybe they will relent as google did with nest recently. We should all probably complain loudly, just in hopes of keeping options open.
Title: Re: Bitbucket set to remove Mercurial support
Post by: names_are_hard on August 20, 2019, 11:13:08 PM
Attempt one to import to Github failed, saying there were import errors, but no description beyond that.  Not very useful...

I'll give it another try and if that fails probably mess around with the Atlassian recommended CLI tools for import / export.
Title: Re: Bitbucket set to remove Mercurial support
Post by: names_are_hard on August 21, 2019, 03:57:07 AM
Using hg-fast-export I was able to get this to work.  This also had a problem (maybe the same as Github), because Mercurial allows branch names with a leading "/" and Git doesn't.  You need to specify a branch mapping file, I used one with the contents like this:
Quote
"/raw_recc-added-121-and-11751-aspect-rati-1382109783386"="raw_recc-added-121-and-11751-aspect-rati-1382109783386"
"/added-1792-resolution-1390499711758"="added-1792-resolution-1390499711758"

Then it worked fine.  In theory it has preserved the hg hashes as I chose the option to "Annotate commits with the hg hash as git notes in the hg namespace".  Haven't tested thoroughly, but you can get what look like useful mappings of Git commits to hg hashes via: git notes --ref hg list

I then did: git push --all
This may not strictly be needed, but I don't understand the branch model of Mercurial so wanted to save all of them.  There are 274 open branches???

Anyway, the result is here:
https://github.com/reticulatedpines/magiclantern/tree/unified

Overall, pretty easy, and the results look sensible to me.  But I'm not qualified to test hg tools against that repo using hg-git.  If anyone competent is interested in testing that, let me know if you run into any problems.  It does show that you can take all the history out at least.  The same procedure should work for moving from hg to git while remaining on Bitbucket, too.

I've also found a script for moving Bitbucket issues to Github, I'm trying that out.
Title: Re: Bitbucket set to remove Mercurial support
Post by: names_are_hard on August 21, 2019, 04:09:39 AM
The issue migration is not horrible, could use a little work.  Here's an example:
https://github.com/reticulatedpines/magiclantern/issues/2

One obvious ugly part, it thinks I'm the reporter for all issues.  It's also using a dumb heuristic to link the Bitbucket account of people in the tickets to a Github account.

More subtle, while it preserves the links to the hg commits, these link to Bitbucket so will shortly become useless.  This is fixable, I would need to modify the migration script to understand the hash mappings made by hg-fast-export, probably pretty easy, I can see where in the code this would happen.

So, fairly hopeful if the Git route is chosen!  We can automatically keep the commit history of all branches, we can keep all the issues, and we can map the hg commits to git commits (probably including doing this automatically for issues at least).
Title: Re: Bitbucket set to remove Mercurial support
Post by: kitor on August 21, 2019, 08:13:45 AM
Quote from: names_are_hard on August 21, 2019, 03:57:07 AMThen it worked fine.  In theory it has preserved the hg hashes as I chose the option to "Annotate commits with the hg hash as git notes in the hg namespace".  Haven't tested thoroughly, but you can get what look like useful mappings of Git commits to hg hashes via: git notes --ref hg list
Yup, that should work. We are migrating SVN workflow to Git and protocol v1 gets overwhelmed if you have too many tags in your repo (and we are creating a ton of them every day). Git notes was found to be one of better solutions for this problem - you can search them easily.
Title: Re: Bitbucket set to remove Mercurial support
Post by: chris_overseas on August 23, 2019, 10:59:28 AM
This might be an easier option?

https://sourcehut.org/blog/2019-08-21-sourcehut-welcomes-bitbucket-refugees/
Title: Re: Bitbucket set to remove Mercurial support
Post by: names_are_hard on August 23, 2019, 04:03:29 PM
Some kind of Mercurial hosting is probably the better option - the main devs apparently prefer Mercurial, plus the migration may well be easier.  I do note this from Sourcehut, https://sourcehut.org/alpha-details/ :
Quote
Payment is optional now but will be required later

I was testing the Git side just for feasibility :)  Well, that and I am using Git for my fork because I have zero Mercurial experience, but that shouldn't factor in to ML future choices.  (If I get enough progress for my fork to be useful, I will merge those change back into Mercurial ML - hopefully without hg eating my files.  Again.)
Title: Re: Bitbucket set to remove Mercurial support
Post by: Luther on August 24, 2019, 11:41:18 PM
Quote from: chris_overseas on August 23, 2019, 10:59:28 AM
This might be an easier option?

https://sourcehut.org/blog/2019-08-21-sourcehut-welcomes-bitbucket-refugees/

@chris_overseas is right. Sourcehut is awesome. You don't need to pay, you can self host too. If git is too complicated, see also Pijul (https://pijul.org/) and Game of Trees (http://gameoftrees.org/)
Title: Re: Bitbucket set to remove Mercurial support
Post by: ilia3101 on January 08, 2020, 04:07:12 PM
We have less than 6 months!!! Any updates?
Title: Re: Bitbucket set to remove Mercurial support
Post by: names_are_hard on January 08, 2020, 04:40:54 PM
No change from Atlassian - they still plan to delete everything, and they still don't offer a migration tool from for Hg -> Git within Bitbucket.
Title: Re: Bitbucket set to remove Mercurial support
Post by: Danne on January 08, 2020, 04:42:07 PM
A disgrace. But are we still staying on git within bitbucket or moving to another platform? Would be good to know at least this.
Title: Re: Bitbucket set to remove Mercurial support
Post by: names_are_hard on January 08, 2020, 04:46:29 PM
Personally I'm staying on git.  I have a fork (ish) on both Github and Bitbucket.  Keeping the code is easy, I also copied the ticket history.  But I haven't looked at copying the wiki - does anyone know if Atlassian plan to nuke the wikis?  Are they even stored using Mercurial?
Title: Re: Bitbucket set to remove Mercurial support
Post by: a1ex on January 08, 2020, 10:19:00 PM
I'd go with a different host; even if Bitbucket might look familiar, their decision to delete all hg repositories and metadata is not to be taken lightly.

Back then, I've created a test account on Sourcehut (https://hg.sr.ht/~ml/magic-lantern), but didn't play with it yet. The workflow seems quite different, no pull requests, I don't fully understand it atm edit: found their Mercurial guide (https://man.sr.ht/hg.sr.ht/email.md). One interesting feature is that anyone can submit issues via e-mail, without having to log in (https://todo.sr.ht/~ml/magic-lantern).

Other suggestions welcome.

Also considering self-hosting; Kallithea (https://kallithea-scm.org/repos/kallithea) looks pretty similar to what we are used to. In this case, we will need a regularly updated mirror on some external host, as backup. Maybe a dual hg+git (https://hg-git.github.io/) repository could also help.

Unfortunately, time for hobbies is still an issue on my side, so... no progress at all :(

Worst case - we'll end up hosting our code on archive.org...
Title: Re: Bitbucket set to remove Mercurial support
Post by: Danne on January 09, 2020, 08:40:33 AM
All for a platform move.
Meanwhile I wonder if porting temporalily to be able to migrate over time if it takes a while to find the better solution?
Not verified this idea but tempted to test:
https://jrummell.com/bitbucket-hg-git-migration
https://www.yosoygames.com.ar/wp/2019/09/migrating-repos-from-mercurial-to-git/
Title: Re: Bitbucket set to remove Mercurial support
Post by: names_are_hard on February 15, 2020, 10:15:23 PM
Danne, I already did a test migration: https://github.com/reticulatedpines/magiclantern - it has the full code history and some of the ticket history.  Don't know how to migrate out the wiki.

Three months left.
Title: Re: Bitbucket set to remove Mercurial support
Post by: Danne on February 15, 2020, 10:34:08 PM
Yeah, time is running up. Was it straight forward? I will need to take a look soon into this.
Title: Re: Bitbucket set to remove Mercurial support
Post by: names_are_hard on February 16, 2020, 12:15:33 AM
Scroll up - I document things.  Pretty easy.  I pushed a fix upstream for one of the migration tools.  You'll still need the branch mapping file I think.

It won't *build*, notably - Magiclantern decided to make the build depend on you having hg tools installed and requiring the branch to be managed by Mercurial.  Seems insane to me.  The changes to remove those dependencies are here:
https://bitbucket.org/stephen-e/ml_200d/commits/1f856253bf5ad0103a69c9269a71808b92b34042
https://bitbucket.org/stephen-e/ml_200d/commits/3dd99d006ca8fe1a52ef7281dd2ef64360793dc4  (not all of it, only one file change is relevant)

A cleaner way of doing that would be to check for existance of hg or git and stamp the build with that if so, otherwise just build. 
Title: Re: Bitbucket set to remove Mercurial support
Post by: names_are_hard on April 28, 2020, 04:57:14 PM
Deadline got extended:

Quote
Due to the impact of COVID-19, we are extending the deprecation date by 30 days to give you more time to transition. Mercurial features and repositories will be officially removed from Bitbucket and its API on July 1, 2020.

Two months left.
Title: Re: Bitbucket set to remove Mercurial support
Post by: heder on June 03, 2020, 11:03:23 AM
And now the end is near and so i face the final curtain ..

Remember to download all the bits before the Atlassian shredder tear down our world  >:( 
Title: Re: Bitbucket set to remove Mercurial support
Post by: names_are_hard on June 03, 2020, 03:33:03 PM
I imported all branches and history into Github a while back:
https://github.com/reticulatedpines/magiclantern

Didn't copy all the issues across, I should try and find time for that.
Title: Re: Bitbucket set to remove Mercurial support
Post by: aprofiti on June 03, 2020, 05:58:51 PM
Quote from: names_are_hard on June 03, 2020, 03:33:03 PM
I imported all branches and history into Github a while back:
https://github.com/reticulatedpines/magiclantern
Looks like it's update up to 3 Jul 2018, I can't find most relevant branches (crop_rec_*, manual_lens_info, vxworks...) into your repo unfortunally.
@names_are_hard Can you check please? May be usefull as backup.

Still wishing we can get more good PR merged into codebase as possible before sunsetting to avoid loosing some works from cummunity...
Title: Re: Bitbucket set to remove Mercurial support
Post by: names_are_hard on June 03, 2020, 06:26:05 PM
@aprofiti, thanks, all the branches I'd needed were always in both so I hadn't noticed any differences.  I don't know why crop_rec isn't there, I'd expect it to be, looking at Hudson.  But, Mercurial means "branch" means something different to Git "branch", so maybe it's expected and I just don't understand Mercurial well enough.  It's baffling to me that there are so many different live branches in Hudson repo.

I guess it's some problem with the scripts I used to import Mercurial bitbucket to Git github.  I'll see if I can get it working better but I don't have high confidence.

I don't have the knowledge of Mercurial or the desire to learn it, in order to make a Mercurial copy of existing Hudson ML.  If anyone wants that to exist, they should make one.

It is up to date past 2018, I guess you were looking at a particular branch that hasn't been updated since 2018.
Title: Re: Bitbucket set to remove Mercurial support
Post by: a1ex on June 05, 2020, 09:13:42 PM
Got another suggestion for Mercurial hosting: foss.heptapod.net (fork of GitLab):
https://heptapod.net/

Test account (just created; empty for now):
https://foss.heptapod.net/ml/

According to their docs, it imports Bitbucket repositories, including issues and open pull requests:
https://heptapod.net/pages/tuto-bb-import.html

To create the repository, there's no option on the user interface; I need to apply with a public discussion on their issue tracker: https://heptapod.net/a-public-heptapod-for-free-and-open-source-software.html

I have no problems doing that, as long as there will be some consensus. There is also an option to self-host (as an alternative to Kallithea, mentioned earlier).

BTW, I happen to have a two-week holiday (starting tomorrow), hopefully enough to solve this issue.
Title: Re: Bitbucket set to remove Mercurial support
Post by: Danne on June 05, 2020, 09:15:15 PM
Much appreciated a1ex.
Title: Re: Bitbucket set to remove Mercurial support
Post by: reddeercity on June 06, 2020, 05:14:28 AM
yea a1ex !
Also how able this mrcrowl.hg (https://marketplace.visualstudio.com/items?itemName=mrcrowl.hg) ? I just installed this on my Visual Studio Code app (wins7) and now I installed Mercurial 5.4.1
"Integrated Mercurial source control" so all you need is visual studio code (free) visualstudio-cross-platform-downloads (https://code.visualstudio.com/#alt-downloads)
OS supported is macOS , Windows x64 & Linux x64 . As far as I can see it has all the hg commands  , thou it's seems to be just for github
here the documentation https://code.visualstudio.com/docs/editor/versioncontrol
just a idea to help  :)

Title: Bitbucket set to remove Mercurial support
Post by: DeafEyeJedi on June 06, 2020, 05:02:44 PM
Excellent find, @alex! I am so glad I came across this thread. I was about to go insanity and worried shitless about our history within this community. I'm on board w you guys to keep us all thriving to the fullest of our abilities.

I actually like your ideas @reddeercity. Will take a look into it.
Title: Re: Bitbucket set to remove Mercurial support
Post by: a1ex on June 07, 2020, 10:12:00 AM
Found this: https://github.com/philipstarkey/bitbucket-hg-exporter

It exports a Bitbucket repository and all of its forks, as JSON, including issues, comments and so on. Requires login, but is able to download any repo where you have read access (i.e. any public repos). Only one thread per user allowed (there are rate limits). Optional export to Github (didn't try, but there is an example here (https://github.com/labscript-suite/labscript-suite-bitbucket-archive)).

Important: to use the script, you will need to make this change (https://github.com/alex-ml/bitbucket-hg-exporter/commit/af4ce6dd5e2d3724eaa060e7d1ec2cf9d54b37ad), or wait for my PR to be merged upstream.

Currently trying to export the main repository (hudson/magic-lantern) and all of its forks. Been running for over 36 hours, still downloading, about 500 MiB downloaded, no idea how much is left (hours? days? weeks? maybe more?). Cannot download other repos until this is finished.

Forks identified by the script (download in progress; duplicates removed from the log):

Finding all forks of hudson/magic-lantern
Finding all forks of a1ex/magic-lantern
Finding all forks of arm_indy/magic-lantern-for-600d-t3i
Finding all forks of magiclantern/magic-lantern
Finding all forks of yyfrankyy/magic-lantern
Warning: repository yyfrankyy/magic-lantern might have been deleted (404).
Finding all forks of dbaleckaitis/magic-lantern
Finding all forks of arm_indy/magic-lantern-for-60d
Finding all forks of piersg/magic-lantern-pg-fooling
Finding all forks of deti/magic-lantern
Finding all forks of alins/magic-lantern-for-500d
Finding all forks of maclema/ml500d
Warning: repository maclema/ml500d might have been deleted (404).
Finding all forks of roaldfre/magic-lantern-for-500d
Finding all forks of adijiwa/magic-lantern-for-500d
Finding all forks of sudharsh/magic-lantern
Finding all forks of sztupy/magic-lantern-for-60d
Finding all forks of nmargono/magic-lantern
Finding all forks of KholdStare/magic-lantern-unified-experiments
Finding all forks of roaldfre/magic-lantern-unified
Finding all forks of qianc/magic-lantern
Finding all forks of teegee/magic-lantern
Warning: repository teegee/magic-lantern might have been deleted (404).
Finding all forks of sztupy/magic-lantern
Finding all forks of up4/magic-lantern
Finding all forks of 600dplus/magic-lantern-for-600d_old
Finding all forks of CMatters/magic-lantern
Finding all forks of gheja/magic-lantern-gheja-dev
Finding all forks of supermaz/magic-lantern-maz-60d
Finding all forks of OtherOnePercent/tragic-lantern
Finding all forks of chrisball/magic-lantern
Finding all forks of Sticks/magic-lantern-stickshack
Finding all forks of dmgerman/ml
Finding all forks of Sticks/magic-lantern-menu-system
Finding all forks of j_l/magic-lantern
Finding all forks of jplxpto/magic-lantern
Finding all forks of ubbut/magic-lantern
Finding all forks of 600dplus/magic-lantern-for-600d
Finding all forks of 0xAF/magic-lantern-5dc-port-wip
Finding all forks of 600dplus/magic-lantern-5dc-port-wip-updated
Finding all forks of raymondlo84/magic-lantern
Finding all forks of maxchen/magic-lantern
Finding all forks of rufustfirefly/magic-lantern-5d3
Finding all forks of 600dplus/magic-lantern-finding-flash-prop
Finding all forks of 600dplus/magic-lantern-features_custom_modes
Finding all forks of rufustfirefly/magic-lantern
Finding all forks of teepean/magic-lantern
Finding all forks of OtherOnePercent/tragic-lantern-6d
Finding all forks of salsasepp/tragic-lantern-6d
Finding all forks of Mayocomplet/tragic-lantern-6d
Finding all forks of Mayocomplet/tragic-mayo-6d
Finding all forks of GregoryOfManhattan/tragic-lantern-6d
Finding all forks of andy600/tl50d
Finding all forks of miguelbrito/tragic-lantern-7d
Finding all forks of M1ke_M1ke/tragic-lantern-6d-m1ke-fork
Finding all forks of feureau/tragic-lantern-6d
Finding all forks of anthony_molesphini/tragic-lantern-6d
Finding all forks of vinlyanimate/raw-6d
Finding all forks of vinlyanimate/raw-60d-110
Finding all forks of EdK/tragic-lantern-6d
Finding all forks of hjdaniel_sun/tragic-lantern-6d
Finding all forks of 600dplus/magic-lantern-fixes
Finding all forks of 600dplus/magic-lantern-600d-photoinfodisp
Finding all forks of maxchen/magic-lantern-unified
Finding all forks of 600dplus/magic-lantern-fix
Finding all forks of magicpriest/magic-lantern
Warning: repository magicpriest/magic-lantern might have been deleted (404).
Finding all forks of sl0w0rm/magic-lantern-af-ptp
Finding all forks of OtherOnePercent/tragic-lantern-2.0
Finding all forks of datadogie/tragic-lantern-2.0
Finding all forks of igor1111111/tragic-lantern-2.0
Finding all forks of grishkavideo/tragic-lantern-2.0
Finding all forks of barbara_brockhauser/tragic-lantern-2.0
Finding all forks of BrianPrz/tragic-lantern-2.0
Finding all forks of 600dplus/magic-lantern-600d-flexinfo
Finding all forks of 600dplus/magic-lantern-menu-shortcuts
Finding all forks of 600dplus/magic-lantern-auto-audio-override
Finding all forks of simmsa/magic-lantern
Finding all forks of trsaunders/magic-lantern
Finding all forks of 600dplus/magic-lantern-5dc-update-from-0xaf-wip
Finding all forks of raeez/magic-lantern
Finding all forks of ak_ss/magic-lantern
Finding all forks of marekk17/60d-silent-dng
Finding all forks of marekk17/magic-lantern
Finding all forks of minimimi/magic-lantern-filer
Finding all forks of marekk17/magic-lantern-1
Finding all forks of marekk17/magic-lantern-2
Finding all forks of smeangol/smeangols-sneaky-magic-lantern
Finding all forks of 600dplus/magic-lantern-600d-raw-feat
Finding all forks of marekk17/magic-lantern-3
Finding all forks of marekk17/magic-lantern-4
Finding all forks of dhilung/magic-lantern
Finding all forks of flameeyes/magic-lantern
Finding all forks of GregoryOfManhattan/magic-lantern
Finding all forks of krashnik/magic-lantern
Finding all forks of sonic74/magic-lantern
Finding all forks of minimimi/magic-lantern-filer-multiselect
Finding all forks of freelyfree/cigam-nretnal
Finding all forks of mucher/magic-lantern
Warning: repository mucher/magic-lantern might have been deleted (404).
Finding all forks of marekk17/magic-lantern-5
Finding all forks of marci1/magic-lantern
Warning: repository marci1/magic-lantern might have been deleted (404).
Finding all forks of marci1/magic-lantern-marci1
Warning: repository marci1/magic-lantern-marci1 might have been deleted (404).
Finding all forks of williamh/magic-lantern-5d3
Warning: repository williamh/magic-lantern-5d3 might have been deleted (404).
Finding all forks of g3gg0/to-be-deleted
Finding all forks of davespana13/magic-lantern
Warning: repository davespana13/magic-lantern might have been deleted (404).
Finding all forks of HKServ/magic-lantern-hksfork
Finding all forks of HKServ/magic-lantern-notcc-hksfork
Finding all forks of sc1ence/magic-lantern
Finding all forks of minDark/magic-lantern-unificat
Finding all forks of pravdomil/magic-lantern-hack
Finding all forks of reddeercity/magic-lantern-hack
Finding all forks of niklasRde/magic-lantern
Finding all forks of emc/magic-lantern
Finding all forks of 600dplus/magic-lantern-600d-60d-1100d-memcheck
Finding all forks of marekk17/magic-lantern-6
Finding all forks of marekk17/ml_60d
Finding all forks of marekk17/magic-lantern-7
Finding all forks of marekk17/magic-lantern-8
Finding all forks of YMP/magic-lantern-afma-improvement
Finding all forks of YMP/magic-lantern-afma-improvement-1
Finding all forks of canon_amateur/magic-lantern
Finding all forks of aluker/magic-lantern
Finding all forks of frantony/magic-lantern.makeall
Finding all forks of pbernardi90/magic-lantern
Finding all forks of frantony/magic-lantern.checkpatch
Finding all forks of sblest/magic-lantern
Finding all forks of theunkn0wn/magic-lantern
Warning: repository theunkn0wn/magic-lantern might have been deleted (404).
Finding all forks of stealth_tramp/magic-lantern
Finding all forks of frantony/magic-lantern.check-bot
Finding all forks of masgro/magic-lantern
Finding all forks of circuitman/magic-lantern
Finding all forks of miguelbrito/magic-lantern
Finding all forks of shumonsaito/magic-lantern-holy-grail-hack
Finding all forks of g3gg0/magic-lantern-mlv
Finding all forks of nicksta/magic-lantern-mlv
Warning: repository nicksta/magic-lantern-mlv might have been deleted (404).
Finding all forks of nicksta/magic-lantern
Warning: repository nicksta/magic-lantern might have been deleted (404).
Finding all forks of v8rrc/magic-lantern-v8rrc
Finding all forks of v8rrc/magic-lantern-1
Finding all forks of aham1234/magic-lantern
Finding all forks of marekk17/magic-lantern-9
Finding all forks of Chucho/magic-lantern-70d
Warning: repository Chucho/magic-lantern-70d might have been deleted (404).
Finding all forks of qmatrxp/magic-lantern
Finding all forks of guysmilez/magic-lantern
Finding all forks of keith_clinton/magic-lantern
Finding all forks of g3gg0/magic-lantern-module-hgdiff
Finding all forks of hope_young/magic-lantern
Finding all forks of OliRi/magic-lantern
Finding all forks of stevefal/magic-lantern-rawrec-cropmarks
Finding all forks of robin051/magic-lantern
Finding all forks of maxotics/maxotics-fork-magic-lantern
Finding all forks of tgregoire/magic-lantern-1100d
Warning: repository tgregoire/magic-lantern-1100d might have been deleted (404).
Finding all forks of chchrlam/magic-lantern
Finding all forks of a1ex/magic-lantern-dual-iso-preview
Finding all forks of g3gg0/magic-lantern-mlv_rec
Finding all forks of idealsceneprod/magic-lantern
Warning: repository idealsceneprod/magic-lantern might have been deleted (404).
Finding all forks of bnvm/magic-lantern
Warning: repository bnvm/magic-lantern might have been deleted (404).
Finding all forks of sodapopodalaigh/magic-lantern
Finding all forks of swinxx/ml_a
Finding all forks of M1ke_M1ke/magic-lantern-m1ke-fork
Finding all forks of M1ke_M1ke/magic-lantern-m1ke-fork-2
Finding all forks of marekk17/magic-lantern-10
Finding all forks of alextutubalin/magic-lantern
Finding all forks of marekk17/magic-lantern-11
Finding all forks of marekk17/magic-lantern-12
Finding all forks of marekk17/magic-lantern-13
Finding all forks of marekk17/magic-lantern-14
Finding all forks of marekk17/magic-lantern-15
Finding all forks of marekk17/magic-lantern-16
Finding all forks of monty87/magic-lantern
Warning: repository monty87/magic-lantern might have been deleted (404).
Finding all forks of mr3wan/magic-lantern
Finding all forks of bwilliams18/magic-lantern
Warning: repository bwilliams18/magic-lantern might have been deleted (404).
Finding all forks of dmilligan/magic-lantern
Finding all forks of Audionut/magic-lantern
Finding all forks of minimimi/magic-lantern-raw2dng_vc
Finding all forks of gregausina/magic-lantern
Finding all forks of knumat/magic-lantern
Finding all forks of kfullman/magic-lantern
Finding all forks of baldand/baldand-7d-magic-lantern
Finding all forks of nagyistoce/baldand-7d-magic-lantern
Finding all forks of HalSup/magic-lantern
Finding all forks of LebedevRI/magic-lantern
Finding all forks of jordancolburn/magic-lantern
Finding all forks of jordancolburn/magic-lantern-1
Finding all forks of somiic/magic-lantern
Warning: repository somiic/magic-lantern might have been deleted (404).
Finding all forks of somiic/magic-lantern-7d
Warning: repository somiic/magic-lantern-7d might have been deleted (404).
Finding all forks of rudison/magic-lantern
Finding all forks of houz/magic-lantern
Warning: repository houz/magic-lantern might have been deleted (404).
Finding all forks of romandvorak/magic-lantern-fork
Finding all forks of ayshih/magic-lantern-50d
Finding all forks of Phaenomena/magic-lantern
Finding all forks of feureau/magic-lantern
Finding all forks of mk11174/t5i
Finding all forks of mk11174/t5i-backup
Finding all forks of escho/escho-magiclantern
Finding all forks of jjwchoy/magic-lantern
Finding all forks of bnvm/magic-lantern-1
Warning: repository bnvm/magic-lantern-1 might have been deleted (404).
Finding all forks of bnvm/magic-lantern-2
Warning: repository bnvm/magic-lantern-2 might have been deleted (404).
Finding all forks of bnvm/magic-lantern-3
Warning: repository bnvm/magic-lantern-3 might have been deleted (404).
Finding all forks of bnvm/magic-lantern-4
Warning: repository bnvm/magic-lantern-4 might have been deleted (404).
Finding all forks of bnvm/magic-lantern-5
Warning: repository bnvm/magic-lantern-5 might have been deleted (404).
Finding all forks of adambernacki10/magic-lantern
Finding all forks of mofig/magic-lantern-mofig
Finding all forks of frenchiefilms/phil
Finding all forks of nanomad/phil
Finding all forks of viniciusatique/magic-lantern-mymod
Finding all forks of nviennot/magic-lantern
Finding all forks of vyskocil/magic-lantern-vyskocil
Finding all forks of viniciusatique/magic-lantern_1
Finding all forks of viniciusatique/movie-restart-5d3
Finding all forks of marekk17/ml123
Finding all forks of spaynix/magic-lantern
Warning: repository spaynix/magic-lantern might have been deleted (404).
Finding all forks of PhotoCat/magic-lantern
Finding all forks of mk11174/700d113
Finding all forks of arcxyz/magic-lantern-eos-1100d
Finding all forks of samontab/magic-lantern
Finding all forks of vehnae/polar-alignment-for-magic-lantern
Finding all forks of mofig/mofig-magic-lantern
Finding all forks of OtherOnePercent/backflow2
Finding all forks of Pelican/7d203
Finding all forks of mk11174/magic-lantern
Finding all forks of Pelican/7d.205
Finding all forks of nandoide/rec_plus
Finding all forks of nanomad/tragic-lantern-1100d
Finding all forks of g3gg0/magic-lantern-plot
Finding all forks of kuhn90/magic-lantern
Finding all forks of dingolina/magic-lantern-learn
Finding all forks of Cuntstructor/magic-lantern
Finding all forks of mlvisit/magic-lantern
Finding all forks of MarsBlessed/magic-lantern
Finding all forks of fabiomoreira716/magic-lantern
Finding all forks of mealcardga/magic-lantern
Finding all forks of holicowdev/magic-lantern
Finding all forks of hicom150/magic-lantern
Finding all forks of error454/magic-lantern
Finding all forks of rcdude/magic-lantern
Finding all forks of jpaana/ml
Finding all forks of felipe0328/magic-lantern
Finding all forks of Audionut/ml-fork
Finding all forks of Audionut/user-builds
Finding all forks of bennir/magic-lantern
Finding all forks of berlincount/magic-lantern-old
Finding all forks of Pelican/magic-lantern
Finding all forks of sodapopodalaigh/my-magic-lantern
Finding all forks of a_d_/magic-lantern-stubs
Warning: repository a_d_/magic-lantern-stubs might have been deleted (404).
Finding all forks of stevefal/magiclantern-mlvrec-video
Finding all forks of gkaizer/magiclantern
Warning: repository gkaizer/magiclantern might have been deleted (404).
Finding all forks of ggjjl1/magic-lantern
Finding all forks of Audionut/cleanup
Finding all forks of vance_lear/magic-lantern
Finding all forks of kfprod/5d3-mlv_rec-naming
Finding all forks of andy600/andy50d2
Finding all forks of Clark_Kent_/magic-lantern
Finding all forks of mk11174/magic-lantern-fullres
Finding all forks of mk11174/magic-lantern-fullres2
Finding all forks of berlincount/ml-100d-old
Finding all forks of mk11174/650d
Finding all forks of kurt_selander/magic-lantern
Finding all forks of zloe/zloe-magic-lantern
Finding all forks of mk11174/menu_flickering
Finding all forks of golem72/magic-lantern-frsp
Finding all forks of dpjpandone/magic-lantern
Finding all forks of spoonfly/magic-lantern
Finding all forks of SydTHackerr/magic-lantern
Finding all forks of dpjpandone/magic-lantern-1
Finding all forks of kichetof/magic-lantern
Finding all forks of dpjpandone/magic-lantern-2
Finding all forks of mk11174/bolt_trigger
Finding all forks of pravdomil/magic-lantern-lvexpo
Finding all forks of pravdomil/magic-lantern-sndcheck
Finding all forks of kfprod/mlv_rec-exfat-naming-suggestion
Finding all forks of Shiftx07/magic-lantern
Finding all forks of johnnyrun/magic-lantern
Finding all forks of dlrpgmsvc/magic-lantern-ok
Finding all forks of kunchenguid/magic-lantern
Finding all forks of roachhd/magic-lantern
Finding all forks of Vy7ka/magic-lantern
Finding all forks of r3dsm0k3/magic-lantern
Finding all forks of coutts/magic-lantern
Finding all forks of alessiocredendino/magic-lantern
Finding all forks of sundus2y/magic-lantern
Finding all forks of gmanfredax/magic-lantern
Finding all forks of nestor_cano/magic-lantern
Finding all forks of dietsche/magic-lantern
Finding all forks of nikfreak/magic-lantern
Finding all forks of jkruser/magic-lantern
Warning: repository jkruser/magic-lantern might have been deleted (404).
Finding all forks of smokegrafix/magic-lantern
Finding all forks of Dannephoto/magic-lantern_nikfreak
Finding all forks of OtherOnePercent/magic-lantern
Finding all forks of koenkooi/magic-lantern
Finding all forks of flykeysky/magic-lantern
Finding all forks of Dan0974/magic-lantern
Finding all forks of BrianPrz/magic-lantern
Finding all forks of maits18/magic-lantern-install-scrip5
Finding all forks of maits18/summon-arm
Finding all forks of rbrune/magic-lantern
Finding all forks of jwkerr/magic-lantern
Finding all forks of JLGW/magic-lantern
Finding all forks of csghone/magic-lantern
Finding all forks of drlapser/magic-lantern
Finding all forks of sodapopodalaigh/magic-lanterns
Finding all forks of niklastisk/magic-lantern
Finding all forks of rs68/magic-lantern-rs68-tests
Finding all forks of monograph/dof_display
Finding all forks of Pelican/recovery
Finding all forks of monograph/dof_display_development
Finding all forks of mario_pich/magic-lantern
Finding all forks of brisma_meihar_arsandi/brismaarsandi
Finding all forks of milank/magic-lantern
Finding all forks of chris_miller/ml-5d3-133
Finding all forks of Maqs/magic-lantern
Finding all forks of Audionut/mlv
Finding all forks of iancmcleod/magic-lantern
Finding all forks of homerobono/magic-lantern
Finding all forks of mk11174/700d114
Finding all forks of mk11174/magic-lantern-unified
Finding all forks of garry23/depth-of-field-with-diffraction
Finding all forks of juuh42dias/magic-lantern
Finding all forks of HilliBilli/magic-lantern
Finding all forks of fjriosp/1200d-dev
Finding all forks of DennisNeumann/magic-lantern
Finding all forks of garry23/final-dof
Finding all forks of garry23/colour-warnings-with-dof
Finding all forks of gyedafe/magic-lantern
Finding all forks of FabiLAP/magic-lantern
Finding all forks of cbob/magic-lantern
Finding all forks of lucashigor/magic-lantern
Warning: repository lucashigor/magic-lantern might have been deleted (404).
Finding all forks of kookiyoung/magic-lantern
Finding all forks of Licaon_Kter/magic-lantern
Finding all forks of buttbucket/magic-lantern
Finding all forks of ewinemiller/magic-lantern
Finding all forks of dinkin/magic-lantern
Finding all forks of 0th4rw4/magic-lantern
Finding all forks of andum1/magic-lantern
Finding all forks of nagyistoce/magic-lantern
Finding all forks of Marsu42/ml-pull
Finding all forks of ilias_kotsovolos/magic-lantern
Finding all forks of dpjpandone/magic-lantern-3
Finding all forks of dpjpandone/dpjpandone-eosm-fixes
Finding all forks of dpjpandone/eos-m-dpjpandone
Finding all forks of McGv/magic-lantern
Finding all forks of ziquan_xu/magic-lantern
Finding all forks of daniel_fort/magic-lantern
Finding all forks of danilaswift/magic-lantern
Finding all forks of Dannephoto/magic-lantern_dfort
Finding all forks of guang_feng_ren/magic-lantern
Finding all forks of racerxdl/magic-lantern
Finding all forks of SwaroopB/magic-lantern
Finding all forks of lurnid/magic-lantern
Finding all forks of roshansoni/magic-lantern
Finding all forks of Audionut/test
Finding all forks of hulasamsquanch/magic-lantern
Finding all forks of iremar_junior/magic-lantern
Finding all forks of co_ikebanat/magic-lantern
Finding all forks of jacobbieker/magic-lantern
Finding all forks of dinkin/magiclantern
Finding all forks of Yongyuth-P/magic-lantern
Finding all forks of VertigoPix/magic-lantern
Finding all forks of Licaon_Kter/magic-lantern-bulb_nd-info
Finding all forks of Licaon_Kter/magic-lantern-rec_ui_fix
Finding all forks of Licaon_Kter/magic-lantern-beta-info-button
Finding all forks of rongjuan_xie/magic-lantern
Finding all forks of houssi4ever/magic-lantern
Finding all forks of waza57/magic-lantern
Finding all forks of Dannephoto/magic-lantern_waza57
Finding all forks of reddeercity/magic-lantern_reddeercity_5d2-50d_4k-crop_rec
Finding all forks of tecgen/magic-lantern-old
Finding all forks of sirleneeraphael_per_golo/raphael
Finding all forks of piers92/magic-lantern
Finding all forks of lumenmikie/magic-lantern
Finding all forks of jayspear/magic-lantern
Finding all forks of marceljuchelka/magic-lantern
Finding all forks of everest20/magic-lantern
Finding all forks of Audionut/ml1
Finding all forks of am2rican5/magic-lantern
Finding all forks of dnlit/magic-lantern
Finding all forks of dnlit/magic-lantern-1
Finding all forks of xlee2004/magic-lantern-old
Finding all forks of tecgen/magic-lantern
Finding all forks of matias82/magic-lantern
Finding all forks of Q111Q/magic-lantern
Finding all forks of mk11174/1200d
Finding all forks of matias82/1200d
Finding all forks of rs68/magic-lantern-rolands-dm-spy-expriments-ros
Finding all forks of rs68/magic-lantern-rolands-debuging-bricked-5d2
Finding all forks of SinSpy/magic-lantern
Finding all forks of pangliang/magic-lantern
Finding all forks of sabujas/magic-lantern
Finding all forks of anDyIII/magic-lantern
Finding all forks of mothaibaphoto/magic_lantern_vold_fork
Finding all forks of Dasa36/magic-lantern
Finding all forks of seed93/magic-lantern
Finding all forks of mk11174/1200d_101
Finding all forks of mk11174/1200d_new
Finding all forks of blinkythebear/1200d_new
Finding all forks of sergiodelatorre/magic-lantern
Finding all forks of Dave_Raynor/magic-lantern
Finding all forks of apchen_stu/magic-lantern
Finding all forks of MAX_XIE/magic-lantern
Finding all forks of debmalyaroy/magic-lantern
Finding all forks of anhhung1303/magic-lantern
Finding all forks of josepvm/magic-lantern
Finding all forks of josepvm/magic-lantern-1
Finding all forks of josepvm/magic-lantern-2
Finding all forks of pbenco/magic-lantern
Finding all forks of Letshowgoes/magic-lantern
Finding all forks of carlosigcimd/magic-lantern
Finding all forks of greenbox/magic-lantern
Finding all forks of wildstray/magic-lantern
Finding all forks of andy600/ml
Finding all forks of reddeercity/magic-lantern
Finding all forks of reddeercity/magic-lantern_10-12bit
Finding all forks of George-Thurman/magic-lantern-stripped-and-confused
Finding all forks of Dannephoto/magic-lantern
Finding all forks of ccritix/magic-lantern-old
Finding all forks of ArcziPL/crop_rec_70d
Finding all forks of daniel_fort/magic-lantern-danne-fork
Finding all forks of nydahl98/magic-lantern_danne
Finding all forks of Jip-Hop/magic-lantern
Finding all forks of Dannephoto/magic-lantern_jip-hop
Finding all forks of stereozont/magic-lantern
Finding all forks of STNMPTWZero/magic-lantern
Finding all forks of DeafEyeJedi/magic-lantern
Finding all forks of andy600/magic-lantern
Finding all forks of andreykuban/magic-lantern
Finding all forks of Tafaube/magic-lantern
Finding all forks of eNnvi/magic-lantern
Finding all forks of Eosm_Dev/magic-lantern
Finding all forks of fgodfrey/magic-lantern-eosm-2.0.3
Finding all forks of rapido7097/magic-lantern-750d
Finding all forks of JohanVrn/ml
Finding all forks of Xav_L/magic-lantern
Finding all forks of pankajc8726/magic-lantern
Finding all forks of SinusPi/magic-lantern-cr2hdr-append-suffix-support
Finding all forks of reddeercity/magic-lantern_5d2-d4_4k-crop_rec
Finding all forks of JohanVrn/ml_test
Finding all forks of martinhering/magic-lantern
Finding all forks of bwaggo/magic-lantern
Finding all forks of Sleeperon/kirill
Finding all forks of shadowfax/magic-lantern
Finding all forks of emklap/magic-lantern
Finding all forks of qqluqq/magic-lantern
Finding all forks of chris_miller/ml-fork
Finding all forks of garry23/dof-focus.c-fix
Finding all forks of garry23/focus.c-dof-fix
Finding all forks of garry23/dof-fix-for-focus.c
Finding all forks of garry23/dof-changes-to-focus.c
Finding all forks of a1ex/ml
Finding all forks of johncheshire/magic-lantern-fork
Finding all forks of ehoutsma/magic-lantern
Finding all forks of Dannephoto/magic-lantern-erwinh
Finding all forks of xlee2004/magic-lantern
Finding all forks of larssteenhoff/magic-lantern
Finding all forks of Licaon_Kter/magic-lantern-1
Finding all forks of tizzleh/magic-lantern
Finding all forks of nikfreak/ml
Finding all forks of kichetof/magic-lantern-1
Finding all forks of nikfreak/ml-isoresearch
Finding all forks of Audionut/debug-lossless
Finding all forks of aprofiti/magic-lantern
Finding all forks of es_as/magic-lantern
Finding all forks of Dannephoto/magic-lantern_es_as
Finding all forks of t3r4n/magic-lantern
Finding all forks of sombree/magic-lantern
Finding all forks of sombree/magic-lantern-1
Finding all forks of shorst/magic-lantern
Finding all forks of bagaric/magic-lantern
Finding all forks of blubbblubb/magic-lantern
Finding all forks of monograph/adding-space_left
Finding all forks of DieHertz/magic-lantern
Finding all forks of drevilish/magic-lantern
Finding all forks of ids1024/magic-lantern
Finding all forks of andreasb242/magic-lantern
Finding all forks of samuel-carvalho/magic-lantern
Finding all forks of samuel-carvalho/magic-lantern-1
Finding all forks of samuel-carvalho/magic-lantern-2
Finding all forks of samuel-carvalho/magic-lantern-3
Finding all forks of samuel-carvalho/magic-lantern-4
Finding all forks of drewcollins/magic-lantern-dc
Finding all forks of gertoe/magic-lantern
Finding all forks of samuel-carvalho/magic-lantern-5
Finding all forks of thenickdude/magic-lantern
Finding all forks of bilal_fakhouri/magic-lantern-1
Finding all forks of bilal_fakhouri/magic-lantern-2
Finding all forks of mkacvinsky/magic-lantern
Finding all forks of mothaibaphoto/crop_rec_4k_mlv_snd_fork
Finding all forks of bouncyball/mlv_dump-fixes
Finding all forks of kitchentowel/magic-lantern
Finding all forks of calle2010/obsolete-magic-lantern
Finding all forks of Gr3g01/ml-cmos-cal
Finding all forks of daniel_fort/ml-cmos-cal
Finding all forks of Dannephoto/ml-cmos-cal
Finding all forks of ccritix/magic-lantern-200d
Finding all forks of noreboul/magic-lantern
Finding all forks of ccritix/magic-lantern
Finding all forks of Dannephoto/magic-lantern_critix
Finding all forks of Audionut/autoexpo
Finding all forks of 600dplus/magiclantern_eyefi_trick_cleanup
Finding all forks of ArcziPL/lossless_70d
Finding all forks of LeoYuanjieLi/magic-lantern
Finding all forks of vcrparts/magic-lantern-photobooth-hack
Finding all forks of calle2010/magic-lantern-77d
Finding all forks of Levas_EOS/magic-lantern
Finding all forks of kitorPL/magic-lantern
Finding all forks of PAPPPmAc/magic-lantern
Finding all forks of geojeff/magic-lantern
Finding all forks of DirkHussen/magic-lantern
Finding all forks of MisterGun/magic-lantern
Finding all forks of jmheder/vxworks_canon40d
Finding all forks of nydahl98/magic-lantern
Finding all forks of mrcmraja/magic-lantern
Finding all forks of nikil_ragav/magic-lantern
Finding all forks of ccritix/magic-lantern-card-fmt
Finding all forks of Ant123/magic-lantern-1



TODO:

1) All other Mercurial repositories from past and current contributors, that were not direct forks of hudson/magic-lantern.

There are clones of the magic-lantern repository that are not detected as forks (so, the automated script doesn't detect them). We need to identify those.

There are also standalone projects related to ML, such as ml-focus-pixels. We need to identify those as well.

Downloading all Mercurial repositories from the above 338 users (as identified by the script) might be close enough, and can be automated by hacking the Bitbucket exporter script. I can try to do that.

I need help identifying the contributions from users that were not identified in the above list. For example, xaint (https://bitbucket.org/xaint/magic-lantern-astro-module/) is one of them. OK, that repository is Git, but the point is - there might be ML-related contributions that were not direct forks of the main repository, AND their authors might not have a direct fork of the main repository.

Already downloaded:
- https://bitbucket.org/daniel_fort/ml-focus-pixels/ and its fork https://bitbucket.org/Dannephoto/ml-focus-pixels-danne/




2) All other interesting Mercurial repositories from Bitbucket, not related to ML, in particular, unmaintained projects (these will be lost forever, unless archive.org already crawled them).

As with the above, you can help by suggesting repository URLs.

Even better: if you know a list of all public Mercurial repositories, or if you can ask Bitbucket staff, or your favorite search engine, to supply such a list, or if you know anyone else trying to archive all Mercurial repos from Bitbucket, your help will be very appreciated :D




To check whether a Bitbucket repository is Mercurial or Git, click on Commits, then click on any commit, then - View raw commit. If it begins with HG changeset patch, it's a Mercurial repository. If it begins with an e-mail subject, it's a Git repository. If you know an easier way, please chime in.

If you can back up the repositories on your own, I'd also appreciate. What if my backups will fail?

@reddeercity: mrcrowl.hg is a Mercurial GUI for Visual Studio Code. Not relevant here. It's not a Mercurial hosting service, and it's not going to stop Bitbucket from deleting Mercurial repositories.
Title: Re: Bitbucket set to remove Mercurial support
Post by: nikfreak on June 07, 2020, 11:17:42 AM
Please don't make THE decision to selfhost a repo. I personally think it's time to move to git as it seems to be more widely adopted but ofc having backups of all repos is a good idea. I am unsure if you really need to have a backup from all forks. Mine for e.g. might be skipped if 70D and 100D got merged.

Idea: I suggest merging PRs (read: not all) as much as possible either before or short after leaving bitbucket. Everyone wanting the "old" aka "nightly stable" builds might download it from ml website. This might be a chance to "force" community as well as newbies to participate on the new platform and speed things up.
Title: Re: Bitbucket set to remove Mercurial support
Post by: aprofiti on June 07, 2020, 01:00:33 PM
More repository with useful work not identified by the script:

https://bitbucket.org/coutts/1000d_dev/ (https://bitbucket.org/coutts/1000d_dev/)
https://bitbucket.org/coutts/5dplus/ (https://bitbucket.org/coutts/5dplus/)
https://github.com/400plus/400plus/ (https://github.com/400plus/400plus/) (ML Related)

Quote from: a1ex on June 07, 2020, 10:12:00 AM
2) All other interesting Mercurial repositories from Bitbucket, not related to ML, in particular, unmaintained projects (these will be lost forever, unless archive.org already crawled them).

Tried some times ago using Wayback machine to save PR's source code, but unfortunately was failing due to JS based views  and also noticed even no screenshoots in many years for pages in main repo...
Title: Re: Bitbucket set to remove Mercurial support
Post by: a1ex on June 07, 2020, 01:28:11 PM
QuoteI am unsure if you really need to have a backup from all forks.

Some of these forks might have useful commits that were not (yet?) submitted as pull requests; possibly fixing some personal issue of the author. Good luck identifying them manually. Yours is one out of over 500 :)

But if you have a backup of all these repos, you could write a script to identify those commits that are not present in the main repository. These commits can be reviewed later; maybe some of them could end up useful. Maybe some of them were referenced here on the forum, and forgotten. If one of us will revisit such a discussion, there will be a way to find those old commits in the archive.

QuoteMine for e.g. might be skipped if 70D and 100D got merged.

These two are already in the main (hudson) repository, and on the main download page. Just not in "unified" yet.

So, they can be skipped without further action :)

QuoteIdea: I suggest merging PRs (read: not all) as much as possible either before or short after leaving bitbucket.

I wouldn't do any further development (including PR merging) before finding a new home for the repository (whether it will be heptapod, hg.sr.ht, github, gitlab, kallithea or whatever).

Even if I'm currently on holiday, I won't be available 24/7 for this task, so I still need to prioritize. Having copies of all the data before it's deleted, is essential in my opinion. Deciding what to merge, what needs further cleanup, running tests and so on, can be done afterwards, without time pressure.

Another important task is, in my opinion, an archive of all current Mercurial repositories (not necessarily related to ML). Some of them might be unmaintained projects, that could be still interesting for someone. I don't currently have a list of these repos, and I'm not aware of any existing efforts in this direction (my google-fu is not the best), but already started to research the topic. Edit - found some:
- https://octobus.net/blog.html (which brings quite a few bonus points for heptapod)
- https://archive.softwareheritage.org/browse/origin/directory/?origin_url=https://bitbucket.org/hudson/magic-lantern
- https://archive.softwareheritage.org/browse/origin/directory/?origin_url=https://bitbucket.org/coutts/5dplus

And yes, I'd rather complete that before the July 1st deadline, and focus on PRs afterwards, as time permits.

QuotePlease don't make THE decision to selfhost a repo.

No decision has been made yet. I'd appreciate some arguments for and against the alternatives mentioned throughout this thread (not just the self-hosting ones, but *all* of them).

QuoteI personally think it's time to move to git as it seems to be more widely adopted

I wouldn't rush to move to git either. One particular reason for sticking with Mercurial is that, throughout the forum and the documentation, there are several places mentioning Mercurial changeset IDs. While I was actively developing, I used to click these links very often, so, in my opinion, they are valuable. If we switch to another Mercurial hosting, updating these links would be doable with a find/replace. Is there a relatively straightforward way to do the same with a Git clone of our existing repository? If yes, how?

Also, besides my lack of experience with git, here's a possibly more objective reason:
http://www.legi.grenoble-inp.fr/people/Pierre.Augier/mercurial-as-a-great-version-source-control-management-tool-in-academics.html

Keep in mind that article was written before Bitbucket announced their plans to delete Mercurial repos.

BTW, if there is a way to provide a hg+git workflow, I'd look into that.
Title: Re: Bitbucket set to remove Mercurial support
Post by: names_are_hard on June 07, 2020, 05:49:42 PM
That Mercurial article reads as entirely subjective to me.  It's from the point of view of someone who already knows Mercurial, and finds Git more complicated.  I know more Git and trying to learn Mercurial I found that more complicated.  I never used SVN, perhaps that makes a difference, I know Mercurial has more similarities to it.

That said, it's easy for me to copy it to Git and work there, so I don't think the choice of SCM is a big deal.  When needed I can update a local Hg copy, do the work to make an Hg PR and then go back to Git.  No problem.  So, I defer to whoever controls the repo on what they want to use.  I'm happy Alex is able to spend some time preserving it!

Regardless of whether Mercurial is technically better or worse, I will say that because Git has won, and Mercurial is slowly dying, there may be a benefit to picking a Git hosting provider.  All the big providers are Git and a bigger provider is less likely to disappear like Atlassian's Mercurial hosting.  Something allowing hg and git tooling but backed by Git feels a nice compromise to me - but again, it's not my call and I don't think it's a big deal.  Mercurial can never entirely die, it's open-source and distributed version control.
Title: Re: Bitbucket set to remove Mercurial support
Post by: a1ex on June 07, 2020, 08:30:30 PM
Quote from: names_are_hard on June 07, 2020, 05:49:42 PM
It's from the point of view of someone who already knows Mercurial, and finds Git more complicated.

Right. I happen to know Mercurial, and got used to it while developing ML, but have nearly zero experience with Git, and I somehow doubt I'm the only one in this community. But, surely there are many others who started by learning Git and find it easier to work with.

Old habits die hard, on both sides, of course, which is why I'm looking for ways to provide a dual workflow. So far, I've found these:
- hg-git (https://hg-git.github.io/) (the main repo should be git; not sure how "lossless" the conversion will be)
- git-hg-again (https://github.com/abourget/git-hg-again) (bidirectional hg-git? you use "git hg clone/fetch/push/pull" to interact with a Mercurial repo)
- git-hg (https://github.com/cosmin/git-hg) (the main repo should be hg; you use "git-hg clone/fetch/pull/checkout/push" for interacting with it)
- Git-hg Mirror (https://githgmirror.com/) (for syncing a hg and a git repo? works either as web service or as self-hosted Windows service)

See also this Stack Overflow page (https://stackoverflow.com/questions/883452/git-interoperability-with-a-mercurial-repository).

TODO: evaluate these.


Quote
Regardless of whether Mercurial is technically better or worse, I will say that because Git has won, and Mercurial is slowly dying, there may be a benefit to picking a Git hosting provider.

It also feels like accepting the defeat. Though, I wouldn't exclude a git mirror on github/gitlab and a hg mirror on heptapod (most likely), keep them in sync somehow, and accept contributions from both sides.




One important thing to note about Heptapod is that, at least for now, they don't support personal forks (https://heptapod.net/pages/faq.html#forks). So, the development is more or less centralized, and all the contributors will have to be granted development access.

It works somehow like this: anyone with the Developer permission can publish draft changes, using the so-called topics (https://www.mercurial-scm.org/wiki/TopicPlan) (some kind of lightweight branches, at first sight closer to git branches, I guess). On these draft changes, history is editable, so I should be able to polish them as I see fit, before making them "public" (or "set in stone").

There's also support for the evolve (https://www.mercurial-scm.org/doc/evolution/user-guide.html) extension, apparently another thing worth trying. In the past, I used to try not only to have readable code, but also readable commits (i.e. to squeeze all those "typo/fixup" commits before making them public, as I used to read the code history quite often). But this was time-consuming; curious to see whether the evolve extension can help.

There's also hg absorb (https://gregoryszorc.com/blog/2018/11/05/absorbing-commit-changes-in-mercurial-4.8/) in recent Mercurial (I wasn't aware of it), which also seems to fit my previous workflow pretty well. Apparently it's an alternative to evolve (https://ahal.ca/blog/2017/mercurial-absorb/), but I need to actually try these things before drawing a conclusion.
Title: Re: Bitbucket set to remove Mercurial support
Post by: a1ex on June 07, 2020, 08:35:39 PM
Quote from: a1ex on June 07, 2020, 01:28:11 PM
Another important task is, in my opinion, an archive of all current Mercurial repositories (not necessarily related to ML). Some of them might be unmaintained projects, that could be still interesting for someone. I don't currently have a list of these repos [...]

Here's a quick hack to get a list of all the repositories stored on Bitbucket (replace the "main" of bitbucket_hg_exporter (https://github.com/philipstarkey/bitbucket-hg-exporter)):

def main():
    #~ project = MigrationProject()
    # no auth needed
    # force pagelen=100 (default 10) for speed reasons
    status, json_data = bbapi_json("https://bitbucket.org/api/2.0/repositories/", None, {'pagelen': 100})
    while True:
        for repo in json_data["values"]:
            print(repo["scm"], repo["full_name"], repo["created_on"], repo["updated_on"], repo["website"])
            # many other parameters available:
            #~ for k,v in repo.items():
                #~ print(k, v)
        sys.stdout.flush()
        if 'next' in json_data:
            next = json_data['next']
            status, json_data = bbapi_json(next, None, {'pagelen': 100})
            while json_data is None or "values" not in json_data:
                print("retrying", file=sys.stderr)
                status, json_data = bbapi_json(next, None, {'pagelen': 100})
        else: break


Not very fast; about 1000 repos / minute at first sight. Let's see where this ends up. Octobus found about 250.000 Mercurial projects; this could be useful for cross-checking their list. A second backup of all these repos (plain "hg clone" without metadata) shouldn't hurt :)

edit: updated the script to retry failed requests.
Title: Re: Bitbucket set to remove Mercurial support
Post by: names_are_hard on June 07, 2020, 09:10:45 PM
A dual workflow would be a nice bonus, but, given the low volume of commits to ML I think keeping things easier for the few devs that know it well is the more important goal.  If you find a way that I can avoid learning Mercurial, I will be grateful, but this is a goal far down the list!  Functionally, Git and Hg are almost identical, but learning the one you don't know is pain and minimising dev pain is the important goal I think.  Even though that means I have to suffer :P

QuoteIt also feels like accepting the defeat
My personal opinion only: sort of.  There's so much more corporate money being poured into secondary Git based tools that even if Hg is better, the Git experience may be better overall.  Things like hosting, integration into build systems, UI, documentation, etc.  OS/2 was better than Windows at the time, but Windows is better than OS/2 now.  If OS/2 had won, current OS/2 would be better than current Windows - but it didn't win, therefore Windows got all the money and dev time.  Windows is functionally better even though many design decisions of the internals are worse.  Picking the better option isn't defeat.  I don't think this is very relevant to ML!  I just find it interesting.

For preservation, this looks useful, it claims it can make a local backup of "pull request history, issue trackers, wikis, forks, attachments and commit comments":
https://github.com/philipstarkey/bitbucket-hg-exporter
It is designed for compatibility: "Issues can also be imported to GitHub, and commit hashes, issues links, pull-request links, URLs (including to source code), usernames, etc. will be rewritten to point to GitHub and/or the generated BitBucket archive"

I'll give that a try since it sounds useful whatever the solution ends up being.


The Octobus archive should cover ML as I understand it:
https://www.softwareheritage.org/2020/04/23/rescuing-250000-endangered-mercurial-repositories/

But we can't rely on it, since we cannot test it until after the deletion: "After June 30th, once BitBucket deletes the archived result, we will make them available to the public."

Just saw your edit, the repo archives are live, that's good.  But, it "only" list 119 branches?  I think the real number is over 300.  Their snapshot date says Oct 2019 which is odd, but I don't think would make that much difference.
Title: Re: Bitbucket set to remove Mercurial support
Post by: a1ex on June 07, 2020, 09:31:26 PM
Quote from: names_are_hard on June 07, 2020, 09:10:45 PM
I'll give that a try since it sounds useful whatever the solution ends up being.

It will fail out of the box, but if you apply my patch (linked above), it should work.

Current status: been running that script for ~ 48 hours, about 100.000 files (2 GiB) downloaded, still running. Several error messages about issue attachments, but downloading these attachments manually does work. Example:

Thread 0 (a1ex): hudson/magic-lantern: ERROR: Unexpected response code 500 for endpoint repositories/hudson/magic-lantern/issues/2753/attachments/CRASH00.LOG
Thread 0 (a1ex): hudson/magic-lantern: ERROR: Unexpected response code 500 for endpoint repositories/hudson/magic-lantern/issues/2753/attachments/CRASH01.LOG
Thread 0 (a1ex): hudson/magic-lantern: ERROR: Unexpected response code 500 for endpoint repositories/hudson/magic-lantern/issues/2753/attachments/log000.log
Thread 0 (a1ex): hudson/magic-lantern: ERROR: Unexpected response code 500 for endpoint repositories/hudson/magic-lantern/issues/2753/attachments/log001.log


Some attachments were successfully downloaded, others not. Didn't investigate yet.




The other script (list of all Bitbucket repos) identified 36700 repos at the time of writing. Will re-check tomorrow morning.
Title: Re: Bitbucket set to remove Mercurial support
Post by: Danne on June 07, 2020, 09:40:56 PM
Nice script :).
+1 for both mercurial and git.
+10 for keeping mercurial.
I created some curl "repo_ripper" downloading all forks from a bitbucket user based upon knowing the name of the main repository but the script mentioned seems taking care of it all.
Again, relieved that back up download is being done and checking into the possibility of keeping mercurial alive.
Wish my vacation would start already...
Title: Re: Bitbucket set to remove Mercurial support
Post by: a1ex on June 08, 2020, 04:33:27 PM
Status update:

- my fix was merged into bitbucket-hg-exporter, so you no longer have to patch the source code :)

- the "big" script downloaded the entire hudson repo (took about 50 hours, give or take) and started to download the smaller forks (15 out of 540 in ~ 10 hours? it might finish before the deadline if we are lucky :P). I'll probably stop it and just "hg clone" the forks, without saving the metadata.

- the "small" script ran for 20 hours and identified 330782 git repos and 161318 hg ones. It appears to have stopped prematurely for who-knows-what reason, so I'll try to figure out what happened. Thinking to "hg clone" each of the Mercurial ones, as a low-priority background task, and provide an archive somewhere (just in case Software Heritage misses anything).
Title: Re: Bitbucket set to remove Mercurial support
Post by: ilia3101 on June 08, 2020, 05:02:30 PM
Quote from: a1ex on June 08, 2020, 04:33:27 PM
- the "small" script ran for 20 hours and identified 330782 git repos and 161318 hg ones.

Are you downloading all of bitbucket?
Title: Re: Bitbucket set to remove Mercurial support
Post by: a1ex on June 08, 2020, 06:41:39 PM
Only half of it, i.e. what will be deleted. I assume most of these repos are small (guess: 10MiB on average?), so I guess the entire thing should fit on an external HDD that's sitting around. If it won't fit, I can delete large blobs (can be automated (https://stackoverflow.com/questions/15419442/how-to-remove-largefiles-from-mercurial-repo)), attempt some deduplication (skip clones that bring no contributions on their own), or skip large repos that already found a new home (looking them up can probably be automated as well).

Or, at least, it could be a fun exercise. So far, it looks like this:

for f in $(cat all-repos.txt | grep '^hg ' | cut -d ' ' -f 2); do
  echo $f
  if [ ! -f $f.tar.bz2 ]; then
    if hg clone -U https://bitbucket.org/$f $f; then    # some repos may have been deleted?
      tar -cvjSf $f.tar.bz2 $f
      rm -rf $f
    fi
  fi
done


So far: 400 repos downloaded in ~ 40 minutes, total 1.7 GiB, less than 5 MiB/repo average.
Title: Re: Bitbucket set to remove Mercurial support
Post by: Danne on June 08, 2020, 10:35:16 PM
Pretty stoked it´s actually possible to download ALL mercurial repositories. I did something in that direction to grab my own repos and have them all downloaded into a folder I call repo_ripper. Goes something like this:
list=$(printf '%s\n' $(grep -o -E 'repo-list--repo-name" href=".{0,50}' <<< $(curl -L "https://bitbucket.org/Dannephoto/"workspace/projects/PROJ) | cut -d '/' -f3 | cut -d '"' -f1))
mkdir -p repo_ripper
cd repo_ripper
while read -r line; do
    hg clone https://bitbucket.org/Dannephoto/$line
done <<< "$list"
Title: Re: Bitbucket set to remove Mercurial support
Post by: names_are_hard on June 09, 2020, 03:14:56 AM
@Danne that's what a public repo means :)

@aprofiti - thanks to you noticing some branches seemed missing in my import, I rechecked things and worked out at least some of the problems.  This is certainly a better import (maybe it's even correct):
https://github.com/reticulatedpines/magiclantern_hg_02

hg-fast-export can't handle unnamed heads (why is this even a thing? The Mercurial branch model is so confusing).  I think the mistake I made last time was to use the --force option.  While this ignores errors enough to let the script proceed, perhaps it still can't export the broken parts?  Maybe even their children too?  This time, I allowed the script to error, it was always to do with unnamed heads, I then ran this on each revision number listed in the error:

#!/bin/bash

hg update -r $1
hg branch "$1_fix_unnamed_head"
echo "$(hg log -r $1 --template '{desc}')"
hg commit -m "Naming branch from commit: $(hg log -r $1 --template '{desc}')"


Git doesn't allow branches starting with "/", and something in hg-fast-export also doesn't like spaces in branch names, this was the mapping file I ended up using:

"/raw_recc-added-121-and-11751-aspect-rati-1382109783386"="raw_recc-added-121-and-11751-aspect-rati-1382109783386"
"/added-1792-resolution-1390499711758"="added-1792-resolution-1390499711758"
"crop hack disable"="crop_hack_disable"
"refs/heads/Windows build_tools"="refs/heads/Windows_build_tools"
"Windows build_tools"="Windows_build_tools"
"refs/heads/MinGW x-compile"="refs/heads/MinGW_x-compile"
"MinGW x-compile"="MinGW_x-compile"


Here's the script arguments I used, should anyone else want to do similar:

../hg-fast-export.sh -r /home/user/path/magiclantern_hg_clone/magic-lantern -B /home/user/path/branch_mapping.txt -n --hg-hash
Title: Re: Bitbucket set to remove Mercurial support
Post by: Danne on June 09, 2020, 08:20:08 AM
Quote from: names_are_hard on June 09, 2020, 03:14:56 AM
@Danne that's what a public repo means :)
I know what public means. Still stoked about potent scripts swiping clean.
Title: Re: Bitbucket set to remove Mercurial support
Post by: a1ex on June 09, 2020, 11:51:52 AM
Quote from: names_are_hard on June 09, 2020, 03:14:56 AM
hg-fast-export can't handle unnamed heads

Author of bitbucket-hg-exporter recommends hg-export-tool (https://github.com/chrisjbillington/hg-export-tool) in the FAQ (https://github.com/philipstarkey/bitbucket-hg-exporter#how-is-the-mercurial-repository-converted-to-git).

Currently trying a conversion with hg-git, as they say it should be lossless:

Quote
The Hg-Git plugin can convert commits/changesets losslessly from one system to another, so you can push via a Mercurial repository and another Mercurial client can pull it. In theory, the changeset IDs should not change, although this may not hold true for complex histories.


hg clone https://bitbucket.org/hudson/magic-lantern
mkdir magic-lantern-git
cd magic-lantern-git
git init
cd ..
cd magic-lantern
hg up unified
hg bookmarks hg
hg push ../magic-lantern-git


Result: only the "unified" branch got exported, as "hg". Fixme: gitk crashes on that repo. Cloning back to Mercurial appears to work, but changeset ID was not preserved.

Unified tip on Bitbucket: 7a3b5fa Ghost image: further cleanups and fixes
Unified tip after conversion to git and back to hg: 12839:68c3b9b53f35 Ghost image: further cleanups and fixes

Last commit with the same changeset ID:

77:4845885c4d68 (default) Added tag before-dryos-split for changeset b3ac1159ee7c

Not good. Conversion to git is definitely not lossless, at least not with this tool.

The others:
- git-hg and git-hg-again: both failing with:

Traceback (most recent call last):
  File "/usr/local/lib/git-hg/fast-export/hg-fast-export.py", line 405, in <module>
    options.statusfile,authors=a,sob=options.sob,force=options.force))
  File "/usr/local/lib/git-hg/fast-export/hg-fast-export.py", line 318, in hg2git
    if not verify_heads(ui,repo,heads_cache,force):
  File "/usr/local/lib/git-hg/fast-export/hg-fast-export.py", line 299, in verify_heads
    (_,_,_,_,_,_,branch,_)=get_changeset(ui,repo,h)
  File "/usr/local/lib/git-hg/fast-export/hg2git.py", line 71, in get_changeset
    node=repo.lookup(revision)
  File "/usr/lib64/python2.7/site-packages/mercurial/localrepo.py", line 1663, in lookup
    node = scmutil.revsymbol(self, key).node()
  File "/usr/lib64/python2.7/site-packages/mercurial/scmutil.py", line 618, in revsymbol
    raise error.RepoLookupError(_("unknown revision '%s'") % symbol)
mercurial.error.RepoLookupError: unknown revision '��{b~3v���0<�a�a��'


Epic fail.

hg-export-tool: it appears to handle branches one by one. Stopped at "/raw_recc-added-121-and-11751-aspect-rati-1382109783386". TODO: try names_are_hard's mappings.

Sourcehut's invertbucket:
For the repository, it worked nearly out of the box. Had to do a minor edit, as my Bitbucket username is a1ex, but the repository is stored on hudson.

printf "\n%s\n" "Fetching your Bitbucket repos..."
next="$bbapi"/repositories/"hudson"


So, if all else fails, at least we have a working Mercurial mirror:
https://hg.sr.ht/~ml/magic-lantern

Having some hiccup when cloning it back, from two different networks, but found a workaround (https://stackoverflow.com/questions/21655574/stream-ended-unexpectedly-on-clone):

hg clone -r 1000 https://hg.sr.ht/~ml/magic-lantern
cd magic-lantern/
hg pull -r 5000
hg pull -r 10000
hg pull -r 15000
hg pull
hg update unified
hg id # expecting 7a3b5fa3f4c6


Checked the changeset IDs from the tip of unified, crop_rec_4k and digic6-dumper, and they look OK to me.

Migrating the issue tracker, on the other side, didn't work:

Migrate issues for hudson/magic-lantern? [y/n] y
Imported https://todo.sr.ht/~ml/magic-lantern/null
Importing comments...
parse error: Invalid numeric literal at line 1, column 10
Failed to import comment:
parse error: Invalid numeric literal at line 1, column 10
Title: Re: Bitbucket set to remove Mercurial support
Post by: Danne on June 09, 2020, 03:39:24 PM
Doing some testing with hg-fast-export.py. Having success with "Switch" automator app when using --force option to ignore unnamed heads issue to convert to git.
Trying to convert a magic lantern fork not so successful. Python issues all over. Sigh.
Sorry for the sparse error report here but feel I am opening up a can of worms and I don´t really have the time to clean up any mess. Still one question remains. The day bitbucket removes all mercurial repos. Even if I keep my local repos and have them back upped. Will this allow for me to include commits, history etc even after bitbucket is gone or do I risk to loose all history if not succeeding while still in the cloud?
Title: Re: Bitbucket set to remove Mercurial support
Post by: DeafEyeJedi on June 10, 2020, 12:35:43 AM
Quote from: a1ex on June 07, 2020, 01:28:11 PM
...Having copies of all the data before it's deleted, is essential in my opinion. Deciding what to merge, what needs further cleanup, running tests and so on, can be done afterwards, without time pressure.

+1
Title: Re: Bitbucket set to remove Mercurial support
Post by: DeafEyeJedi on June 10, 2020, 12:53:28 AM
Quote from: Danne on June 07, 2020, 09:40:56 PM
Nice script :).
+1 for both mercurial and git.
+10 for keeping mercurial.
I created some curl "repo_ripper" downloading all forks from a bitbucket user based upon knowing the name of the main repository but the script mentioned seems taking care of it all.
Again, relieved that back up download is being done and checking into the possibility of keeping mercurial alive.
Wish my vacation would start already...

+100 and thanks for sharing "repo_ripper". No don't! :)

Agreed that it would definitely be ideal to keep mercurial alive!
Title: Re: Bitbucket set to remove Mercurial support
Post by: critix on June 10, 2020, 04:18:07 PM
Quote from: a1ex on June 08, 2020, 06:41:39 PM

for f in $(cat all-repos.txt | grep '^hg ' | cut -d ' ' -f 2); do
....

A1ex, how did you generate the all-repos.txt file?

PS. I think I finally clarified ... with the changes made to bitbucket_hg_exporter?
Title: Re: Bitbucket set to remove Mercurial support
Post by: a1ex on June 10, 2020, 04:47:00 PM
With the script from reply #40 (https://www.magiclantern.fm/forum/index.php?topic=24420.msg227877#msg227877) (yes, by modifying bitbucket-hg-exporter).

I have yet to get a complete list, as the script kept stopping somewhere in the middle (edited it a few times to address this, but...)

Will upload mine once it's complete (guess: 1-2 days).

Edit: this time it worked better, currently at about 190000 hg and 600000 git repos. They appear to be reported by their creation date (currently at summer 2016).

Edit2: crashed again somewhere at 2017 (about 207000 hg + 825000 git).
Title: Re: Bitbucket set to remove Mercurial support
Post by: a1ex on June 13, 2020, 12:42:49 PM
Some progress regarding foss.heptapod.net: I have applied for hosting here (https://foss.heptapod.net/heptapod/foss.heptapod.net/issues/68) and they have approved the request. They already imported the main repository, issue list and "internal" open pull requests (i.e. those that did not come from forks).

A bit of surprise: our case is handled by... the author of this article:
Quote from: a1ex on June 07, 2020, 01:28:11 PM
http://www.legi.grenoble-inp.fr/people/Pierre.Augier/mercurial-as-a-great-version-source-control-management-tool-in-academics.html

I had no idea he's actually a team member there :)

Now, we should all review their workflow, which is described here:
https://heptapod.net/pages/faq.html#workflow
https://octobus.net/blog/2019-09-04-heptapod-workflow.html

Existing contributors are already able to login with their Bitbucket and/or Github credentials, but I'm not sure if the repository is visible to them yet. Let me know what happens if you try to login with this link:
https://foss.heptapod.net/magic-lantern/magic-lantern




Also made some progress with the git workflow, using the git-remote-hg (https://github.com/felipec/git/wiki/git-remote-hg) extension:


hg clone https://bitbucket.org/hudson/magic-lantern
git clone hg::magic-lantern/ magic-lantern-git
cd magic-lantern-git/
git checkout branches/unified
# edit something
# commit
git push


Et voilà, the new commit appears on the right branch in the (local) Mercurial repository.

So, there is hope for lowering the barrier for contributors who prefer Git :)
Title: Re: Bitbucket set to remove Mercurial support
Post by: critix on June 13, 2020, 02:18:14 PM
Quote from: a1ex on June 13, 2020, 12:42:49 PM
Let me know what happens if you try to login with this link:
https://foss.heptapod.net/magic-lantern/magic-lantern
I got:
QuotePage Not Found
Make sure the address is correct and the page hasn't moved
Title: Re: Bitbucket set to remove Mercurial support
Post by: Levas on June 13, 2020, 05:34:45 PM
Had the same message as critic.
After logging in with bitbucket account and given access to the data you're directed to:
https://foss.heptapod.net/magic-lantern/magic-lantern
Which is one magic-lantern too much, I deleted the last magic-lantern in the address bar and then it works
https://foss.heptapod.net/magic-lantern (https://foss.heptapod.net/magic-lantern)

Looks like an empty project too me, is that right ?
I can't see any source code or something  ???
Title: Re: Bitbucket set to remove Mercurial support
Post by: a1ex on June 13, 2020, 05:52:25 PM
Got it, so it's only accessible to me and Heptapod admins for now.

Will keep you posted.
Title: Re: Bitbucket set to remove Mercurial support
Post by: critix on June 13, 2020, 05:58:15 PM
There are only 2 members:

Bitbucket Importer @bitbucket_importer
Pierre Augier @paugier

Maybe if the rest of the members are added, we can see.
Title: Re: Bitbucket set to remove Mercurial support
Post by: Levas on June 13, 2020, 08:37:57 PM
I want to be sure that I have all ML source I want to keep, before 1 July, on my computer.

So let's say I want some specific build back on my computer. For instance, the one mentioned on this screenshot:

(https://live.staticflickr.com/65535/50002373181_d679fe04e4_o.png)

It says: Mercurial changeset : 6c6f37e9adfc (crop_rec4k_mlv_snd_isogain....and the rest is not readable(I could guess but is this readable in any other way  ??? )

Now what instructions do I have to do in terminal on Mac to get the source of the specific build above back on my computer, just the exact way it was then ?
Title: Re: Bitbucket set to remove Mercurial support
Post by: a1ex on June 13, 2020, 09:07:17 PM
You look up the changeset ID (6c6f37e9adfc). That identifies the exact commit you were working with (the exact version, if you want).

You also need to identify the repository containing this changeset (in this particular case, Danne's), clone it, "hg update 6c6f37e9adfc -C" and compile.

If there is a + on the changeset ID, that means there were local changes that were not yet committed. These changes are also included in the binaries, both for autoexec.bin and for modules (see this PR (https://bitbucket.org/hudson/magic-lantern/pull-requests/230/modules-embed-hg-information-and-hg-diff), but link will be broken after July 1st).




Besides the main repo, I'm also downloading all ML forks I could identify*), and planning to provide an archive. I can also identify unique commits from each fork, to review them later.

*) I'm still trying to download all Mercurial repositories from Bitbucket, to make sure I don't miss anything, but only managed to get ~ 40.000 repos out of 250.000 in one week, and there are only 2 weeks left. There is also https://archive.softwareheritage.org/, but... in their archive, the changeset IDs do not match (example: their unified (https://archive.softwareheritage.org/browse/revision/2b3958881186ead2c50055cd610f98b1bcc1dce9/?branch=unified&origin_url=https://bitbucket.org/hudson/magic-lantern) vs bitbucket (https://bitbucket.org/hudson/magic-lantern/commits/7a3b5fa3f4c6f085e5bb9d58ab4da0002c01e4a3)).

Maybe some parallelization is needed on my side :)

Anyone with good network connectivity, some hundred(s) of GiB of free space, able to run Bash scripts, recent Python (3.7+) and willing to leave their computer(s) running for the next two weeks? I'll provide a list of repos*) (divided among all participants, if that makes things easier) and download scripts. You will also need to keep an eye on the scripts, as Mercurial sometimes crashes or asks for usernames or whatever, but I'll try to sort it out.

*) Still unable to get the list of repos created after ~ 2017.
Title: Re: Bitbucket set to remove Mercurial support
Post by: Levas on June 13, 2020, 10:24:56 PM
Quote from: a1ex on June 13, 2020, 09:07:17 PM
You look up the changeset ID (6c6f37e9adfc). That identifies the exact commit you were working with (the exact version, if you want).

Probably a stupid question, but how exactly do I look up the changeset ID, using the webinterface of bitbucket ?
https://bitbucket.org/hudson/magic-lantern/src/unified/ (https://bitbucket.org/hudson/magic-lantern/src/unified/)

Quote from: a1ex on June 13, 2020, 09:07:17 PM
Anyone with good network connectivity, some hundred(s) of GiB of free space, able to run Bash scripts, recent Python (3.7+) and willing to leave their computer(s) running for the next two weeks? I'll provide a list of repos*) (divided among all participants, if that makes things easier) and download scripts. You will also need to keep an eye on the scripts, as Mercurial sometimes crashes or asks for usernames or whatever, but I'll try to sort it out.

Not sure how much participants you get, but I might be able to help, if the script can be paused and resumed or something like that. Or runnable in small chunks.
So if I can let it run for a few hours and stop it when needed, I could help.
My connection is not superfast but reasonable at about 20Mbit/s. And I might have about 750GB of HDD space available for this.


Title: Re: Bitbucket set to remove Mercurial support
Post by: names_are_hard on June 14, 2020, 12:17:07 AM
@Alex - I can volunteer some time & space.  I've got some TB spare on a Linux server.  Send me your hacky scripts :)

@Levas
You can find changeset IDs by searching commits.  But you have to be on the right repo. Yours is from Danne's:
https://bitbucket.org/Dannephoto/magic-lantern/commits/?search=6c6f37e9adfc
Title: Re: Bitbucket set to remove Mercurial support
Post by: Audionut on June 14, 2020, 04:18:09 AM
I have a good connection and plenty of space (I also have significant hosting space available) but lacking the mindset to tackle (extended) debugging for this task.

If you create a relatively simple workflow I'll jump on it.

Possible to split the task up by month? 12 concurrent scripts running to download a years worth of data.
Title: Re: Bitbucket set to remove Mercurial support
Post by: a1ex on June 14, 2020, 09:21:26 AM
Awesome!

Will prepare scripts and file lists for tonight, then. Repo list reached 2018, btw :)
Title: Re: Bitbucket set to remove Mercurial support
Post by: critix on June 14, 2020, 10:02:09 AM
I can help too.
I have a linux server and some space.
Title: Re: Bitbucket set to remove Mercurial support
Post by: a1ex on June 14, 2020, 11:34:27 PM
Alright folks, tonight we start backing up "all of Bitbucket" (well, all of the Mercurial repositories stored there).

Background

Bitbucket (Atlassian) are going to discontinue Mercurial support (whatever, it's their business; after all, it was a free service, so we can't complain). The ugly part is - they don't seem to bother providing an archive. No, they are going to DELETE more than 10 years of work from TENS OF THOUSANDS users.

Other source code hosts did provide an archive when shutting down, see e.g. CodePlex (https://devblogs.microsoft.com/bharry/shutting-down-codeplex/) or Google Code (https://lwn.net/Articles/636535/). Not Bitbucket.

For this reason, I'd stay away from their current and future offerings, no matter how tempting they might be. Time to move on.

OK, they were nice enough to give us one year to migrate (they could have deleted everything right away, and they would have probably been covered by their ToS - which I didn't read (https://tosdr.org/)). For active projects, that's probably fine (more or less). However, many of these projects are no longer maintained; their last update was several years ago.

If you believe these unmaintained projects are no longer of interest, please stop reading here.

Anyway. Migration wasn't straightforward either. To date, I'm not aware of any way to losslessly convert a Mercurial repository to Git (and I bet the Bitbucket folks are not aware either). The hg-git extension promises lossless conversion, but fails to preserve the changeset IDs. The best results I've got were with the git-remote-hg extension, which provides a way to contribute from git, but... after trying several tools, I couldn't find a way to recover the original hg repo from its git copy.




OK, so what's the plan?

I've got a list of nearly ALL Bitbucket repositories, retrieved through their API, and attempted to download them. The process was not fast - only about 50.000 repos in one week (OK, my download setup was not very optimized either). There are about 250.000 Mercurial repos (as estimated by Octobus); downloading all of these would take about 5 weeks at this rate. There are only two weeks left, so... let's parallelize!

Estimated average repo size is about 5 10-15 MiB, so the entire *raw* archive should fit on 1-2 3-5 TB of disk space.

How much can this be compressed? First observation is that Mercurial raw data is already compressed, so attempting to e.g. "tar bz2" or "tar xz" every single repo, like I did in my previous attempt, is not going to help much.

However, many of these repositories are forks, which means, plenty of duplicate data. Therefore, forks are expected to compress very well if we group them together). Here's an example from our project (hudson/magic-lantern and its forks, which I've already downloaded from Bitbucket):

- Raw archive: 16.4 GiB (471 repos out of 540 reported by the API, 35.6 MiB average, downloaded in 2.5 hours)
- Individually compressed repos (tar.xz, default settings): 14.3 GiB (compression took 2 hours, one core on i7 7700HQ)
- Archive of tarballs: 14.3 GiB (food (https://www.usenix.org/system/files/conference/hotstorage16/hotstorage16_yan.pdf) for (https://www.usenix.org/sites/default/files/conference/protected-files/hotstorage16_slides_yan.pdf) thought (http://crystal.uta.edu/~hche/publications/Z-Dedup.pdf))
- All ML forks archived together (tar.xz, -9e --lzma2=dict=1536Mi): only 273 MiB (!), compression time ~ 1 hour :)

Archiving everything in a single file, after downloading, might also work reasonably well (todo: test on a set of 10.000 repos).

Hence, the plan:

- Stage 1 (next two weeks): download all Mercurial repos from Bitbucket and store them uncompressed (raw .hg directories)
- Stage 2: decide the best strategy for compressing all of this stuff (possibly by grouping forks together - can be automated)
- Stage 3: publish an archive, for the entire world to use (what if other open source projects missed some important bit during their migration?)

List of repos:
all-repos (https://a1ex.magiclantern.fm/bitbucket-mercurial-archive/all-repos) (huge file; all repos until June 16, 2020)
hg-repos (https://a1ex.magiclantern.fm/bitbucket-mercurial-archive/hg-repos) (huge file; list of Mercurial repos, which I'll divide in smaller chunks)
[ fields: hg/git, user/repo, creation date, last updated, optional url ]

Let's divide these into manageable chunks:

split -l 10000 --numeric-suffixes hg-repos hg-repos-


hg-repos-00 (https://a1ex.magiclantern.fm/bitbucket-mercurial-archive/hg-repos-00) (a1ex: 91.23% downloaded, 8.77% errors, 2.82 MiB average) (Levas: started)
hg-repos-01 (https://a1ex.magiclantern.fm/bitbucket-mercurial-archive/hg-repos-01) (a1ex: 92.38% downloaded, 7.62% errors, 4.16 MiB average)
hg-repos-02 (https://a1ex.magiclantern.fm/bitbucket-mercurial-archive/hg-repos-02) (a1ex: 92.08% downloaded, 7.92% errors, 6.81 MiB average)
hg-repos-03 (https://a1ex.magiclantern.fm/bitbucket-mercurial-archive/hg-repos-03) (a1ex: 92.76% downloaded, 6.43% errors, 0.81% todo)
hg-repos-04 (https://a1ex.magiclantern.fm/bitbucket-mercurial-archive/hg-repos-04) (a1ex: 31.84% downloaded, 2.16% errors, 66.00% todo)
hg-repos-05 (https://a1ex.magiclantern.fm/bitbucket-mercurial-archive/hg-repos-05) (critix: 23.59% downloaded, 1.78% errors)
hg-repos-06 (https://a1ex.magiclantern.fm/bitbucket-mercurial-archive/hg-repos-06) (critix: 27.30% downloaded, 2.02% errors)
hg-repos-07 (https://a1ex.magiclantern.fm/bitbucket-mercurial-archive/hg-repos-07) (Audionut: 23.08% downloaded, 1.96% errors) (Danne: started)
hg-repos-08 (https://a1ex.magiclantern.fm/bitbucket-mercurial-archive/hg-repos-08) (Danne: started)
hg-repos-09 (https://a1ex.magiclantern.fm/bitbucket-mercurial-archive/hg-repos-09) (Danne: started)
hg-repos-10 (https://a1ex.magiclantern.fm/bitbucket-mercurial-archive/hg-repos-10) (Danne: started)
hg-repos-11 (https://a1ex.magiclantern.fm/bitbucket-mercurial-archive/hg-repos-11) (names_are_hard: started)
hg-repos-12 (https://a1ex.magiclantern.fm/bitbucket-mercurial-archive/hg-repos-12) (names_are_hard: started)
hg-repos-13 (https://a1ex.magiclantern.fm/bitbucket-mercurial-archive/hg-repos-13) (names_are_hard: started) (Audionut: 25.35% downloaded, 1.18% errors)
hg-repos-14 (https://a1ex.magiclantern.fm/bitbucket-mercurial-archive/hg-repos-14) (a1ex: 68.22% downloaded, 0.37% errors, 31.41% todo)
hg-repos-15 (https://a1ex.magiclantern.fm/bitbucket-mercurial-archive/hg-repos-15) (a1ex: 91.68% downloaded, 0.94% errors, 7.38% todo)
hg-repos-16 (https://a1ex.magiclantern.fm/bitbucket-mercurial-archive/hg-repos-16) (a1ex: 12.01% downloaded, 0.43% errors, 87.56% todo)
hg-repos-17 (https://a1ex.magiclantern.fm/bitbucket-mercurial-archive/hg-repos-17) (Audionut: 24.25% downloaded, 3.39% errors) (kitor: 14.37% downloaded, 0.43% errors)
hg-repos-18 (https://a1ex.magiclantern.fm/bitbucket-mercurial-archive/hg-repos-18) (Audionut: 22.46% downloaded, 0.51% errors) (kitor: 14.57% downloaded, 0.21% errors)
hg-repos-19 (https://a1ex.magiclantern.fm/bitbucket-mercurial-archive/hg-repos-19) (Audionut: 15.49% downloaded, 0.27% errors) (kitor: 10.17% downloaded, 0.14% errors)
hg-repos-20 (https://a1ex.magiclantern.fm/bitbucket-mercurial-archive/hg-repos-20) (Audionut: 16.87% downloaded, 0.21% errors)
hg-repos-21 (https://a1ex.magiclantern.fm/bitbucket-mercurial-archive/hg-repos-21) (Audionut: 20.56% downloaded, 0.26% errors)
hg-repos-22 (https://a1ex.magiclantern.fm/bitbucket-mercurial-archive/hg-repos-22)
hg-repos-23 (https://a1ex.magiclantern.fm/bitbucket-mercurial-archive/hg-repos-23)
hg-repos-24 (https://a1ex.magiclantern.fm/bitbucket-mercurial-archive/hg-repos-24) (Edit and fix link //Audionut)

Only ML forks, as identified earlier in this thread (caveat: different file format):
ml-forks (https://a1ex.magiclantern.fm/bitbucket-mercurial-archive/ml-forks) (a1ex: 471/540 downloaded; the others had errors)

The hacky download script:

#!/bin/bash
# usage: [bash] ./download_bitbucket_hg_repos.sh hg-repos-00   # or 01, 02 etc

for f in $(cat $1 | cut -d ' ' -f 2); do
  echo
  echo "Processing $f ..."

  # skip already-downloaded repos (for which we have a valid .commits file)
  if [ ! -f $f.commits ]; then
    # hg clone, don't prompt for user/password/whatever,
    # and don't update the working directory (we only need the .hg folder)
    # this may fail (404 on some repos, auth needed on others, etc)
    if hg clone --config ui.interactive=false -U -- https://bitbucket.org/$f $f; then   # HTTPS version, slower, but works out of the box
    #if hg clone --config ui.interactive=false -U -- ssh://[email protected]/$f $f; then   # SSH version, faster (thanks kitor), but requires additional setup ("You need to add your ssh public key to bitbucket. And run HG once by hand (without disabling interactive shell) to accept remote ssh pubkey.")
      # for each successfully-cloned repo, we build a list of commits (hashes only)
      # this lets us identify the contribution of every single fork
      # this may be used to decide the best compression strategy, after downloading all of the stuff
      (cd -- $f && hg log --template "{node}\n" > ../../$f.commits)
    else
      # "hg clone" failed for some reason
      # todo: report status? (404 or whatever)
      # these repos will be retried if you run the script twice
      echo "$f" >> hg-clone-errors.txt
    fi
  fi
done


I'm keeping the script very simple, to avoid potential trouble. To parallelize, you should be able to start as many instances as you want (each instance with its own repo list, of course). These instances can probably work in the same directory (not thoroughly tested, but as long as each instance processes a different list of repos, it should be fine, I think). You can stop and restart each instance as needed, by closing the terminal (CTRL-C will only stop the active process, very likely a "hg clone", resulting in a false error report).

You will need:
- a working directory with enough free space available (assume 10 20 MiB / repo on average, although it's likely less)
- one or more lists of repos (download from above).

That's it, now you are ready to run the script. Guess: 2...4 threads might help (not 100% sure).
2-3 threads are probably best, depending on how powerful your machine is. Watch out for HDD/SSD thrashing!
If your machine starts to be unresponsive, you may have too many threads running. Stop or pause some of them!

Caveat: never edit Bash scripts while they are running!

Script outputs:
- For each repo (e.g. hudson/magic-lantern):
  - user directory (hudson/)
  - project directory (hudson/magic-lantern/)
  - .hg folder (hudson/magic-lantern/.hg/ - possibly hidden by default, depending on your file browser)
  - a list of commits (hudson/magic-lantern.commits)
- For all repos:
  - hg-clone-errors.txt (hopefully obvious)

Once you start running the script, let me know what subset(s) of repos you are downloading; we all should know what everybody is downloading, what has been downloaded, and so on. Ideally, each repo (or set of repos) should be downloaded by at least two participants, just in case. I'll edit this post to keep it up to date.

Afterwards, you can create an archive of what you downloaded, with:

tar -cJvf commits.tar.xz */*.commits                                 # commit lists only
tar -cf - */*/.hg | xz -9e --lzma2=dict=1536Mi -c - > repos.tar.xz   # hg repos only (slow, RAM-intensive!)


Let's hope the resulting files will be small enough to exchange them.

Aren't others already taking care of this?
(or, aren't you supposed to port ML on the 13D Mark 7, instead of this bull***?)

Unfortunately, the well-known archive.org -- who, to their credit, saved the day countless times -- apparently didn't do a great job on this one (see earlier report from aprofiti).

These guys (https://octobus.net/blog/2020-04-23-heptapod-and-swh.html) did better (see archive.softwareheritage.org (https://archive.softwareheritage.org/)) but...

1) they are one single point of failure (so, a second backup should never hurt)
2) we have noticed a little issue in their archive: the Mercurial changeset IDs were not kept, at least in our repo (example a few posts above)
3) the deadline is coming!


OK, OK. Why didn't you start earlier?

As you may or may not know, this is a hobby project for us. Translation: if there is time to spare, the project advances. If there is not, the project stalls (or... disappears). And, as surprising as it may sound, we also have to eat from time to time (alongside with our families). The "default" way to put food on the table is to get a job, which can have the side effect of not leaving much time for hobbies (especially during these difficult times).

As mentioned earlier, I actually took a 2-week holiday in order to perform this migration and to catch up with other hobby projects (no travel plans or anything like that). That's when I've started to research this issue and noticed the need for a good backup of all those repos (not only ours).

The good side: after one week of messing around, I think I've got a plan that has at least some chances to work :)

So, let's try!
Title: Re: Bitbucket set to remove Mercurial support
Post by: names_are_hard on June 15, 2020, 01:27:02 AM
I've started:

hg-repos-11: finished 1st pass download
hg-repos-12: finished 1st pass download
hg-repos-13: finished 1st pass download

Will update this post as things complete, I start others, etc.

Using iftop, I see that with 3 processes, it will sometimes saturate my 100Mb downstream for sustained periods.  Other times it won't, more like 20Mb.  So I'd guess a mix of CPU and network bound dependent on what it's doing at the time.

PS I can't believe the 13D Mark 7 has native 8k 60fps but no clean HDMI.  Not even worth supporting.
Title: Re: Bitbucket set to remove Mercurial support
Post by: Luther on June 15, 2020, 02:20:20 AM
Quote from: a1ex on June 14, 2020, 11:34:27 PM
Guess: 2...4 threads might help (not 100% sure).
An alternative would be to use Aria2 (https://aria2.github.io/). It has options to optimize threads to reach maximum speeds. Example ~/.aria2/aria2.conf:

min-split-size=1M
max-connection-per-server=16
max-concurrent-downloads=16
optimize-concurrent-downloads=true


I don't know if hg clone already does this, but would be nice to have SHA256 for each split...
Title: Re: Bitbucket set to remove Mercurial support
Post by: Audionut on June 15, 2020, 03:38:53 AM
Frustrates me trying to work out all of the dependencies to get things like this running. Anyway, I've got the following running...

hg-repos-07
hg-repos-13
hg-repos-17
hg-repos-18
hg-repos-19
hg-repos-20
hg-repos-21




edit: See this post by kitor before proceeding with the below: https://www.magiclantern.fm/forum/index.php?topic=24420.msg228146#msg228146

For those following along with a windows 10 x64 box who want to help.

You need to install the windows subsystem for linux and get ubuntu: https://www.howtogeek.com/249966/how-to-install-and-use-the-linux-bash-shell-on-windows-10/
*remember username and password

Install mercurial from within ubuntu:
sudo add-apt-repository ppa:mercurial-ppa/releases
sudo apt-get update
sudo apt-get install mercurial


Copy a1ex's hacky download script (https://www.magiclantern.fm/forum/index.php?topic=24420.msg228077#msg228077) from above and save it as whatever.sh
This may help: https://www.howtogeek.com/261591/how-to-create-and-run-bash-shell-scripts-on-windows-10/

Download the hg-repos-xx (https://www.magiclantern.fm/forum/index.php?topic=24420.msg228077#msg228077) from above.

The default home folder in ubuntu is located at:
C:\Users\xxxx\AppData\Local\Packages\CanonicalGroupLimited.UbuntuonWindows_79rhkp1fndgsc\LocalState\rootfs\home\username

Replace (xxxx) with with your windows 10 user. Replace (username) with whatever username you used when installing ubunutu.

I would suggest to cut the username folder and paste it wherever you want to store these downloaded repos. Then drop a symbolic link back into the original ubuntu home location.
I use a link shell extension (https://schinagl.priv.at/nt/hardlinkshellext/hardlinkshellext.html) to make that task easier.

Copy the script you saved and the hg-repos-xx to the username folder.
In ubunutu make the script executable.
chmod +x ~/whatever.sh

Then run it:
sudo ~/whatever.sh hg-repos-xx




I initially had 5 scripts running which was keeping my 100Mbps reasonably saturated and things were singing along nicely, but after some time my storage drive couldn't keep up with all the random writes and crashed to a halt. #beware
Title: Re: Bitbucket set to remove Mercurial support
Post by: names_are_hard on June 15, 2020, 04:01:50 AM
Thanks for documenting the Windows way.  At least you have WSL these days to make it easier!

I guessed lucky: 3 processes is doing about 30GB per hour which leaves enough bandwidth left out of my 100Mb to not make normal stuff suck.
Title: Re: Bitbucket set to remove Mercurial support
Post by: Audionut on June 15, 2020, 04:21:41 AM
I had to implement a good QOS to stop my eldest son complaining about his ping times. Has the advantage of doing things like this while keeping the connection perfectly usable for normal tasks.
Went down a rabbit hole involving bufferbloat (https://www.bufferbloat.net/projects/bloat/wiki/Tests_for_Bufferbloat/).
Title: Re: Bitbucket set to remove Mercurial support
Post by: critix on June 15, 2020, 06:08:58 AM
I've started:

hg-repos-05
hg-repos-06
Title: Re: Bitbucket set to remove Mercurial support
Post by: Danne on June 15, 2020, 08:24:53 AM
Downloading:
hg-repos-17
hg-repos-18
hg-repos-19
hg-repos-20
hg-repos-21
Title: Re: Bitbucket set to remove Mercurial support
Post by: Audionut on June 15, 2020, 08:49:00 AM
Quote from: Audionut on June 15, 2020, 03:38:53 AM
I initially had 5 scripts running which was keeping my 100Mbps reasonably saturated and things were singing along nicely, but after some time my storage drive couldn't keep up with all the random writes and crashed to a halt. #beware

There's probably an easier way to do this, but here's what I did (since HDD thrashing was my limiting factor).

Create another folder on another HDD, drop the script and (other) hg-repos-xx files in there. Then drop a symbolic link of that folder into the "home" directory for ubuntu.

Then in ubuntu.
cd /home/newfolder
sudo ~/myscript.sh hg-repos-xx
Title: Re: Bitbucket set to remove Mercurial support
Post by: Levas on June 15, 2020, 09:38:42 AM
Ok, managed to get this script working, thanks to the helpfull post of Audionut.

Started with hg-repos-00 just to see how this stuff works.

An Overview:
hg-repos-00 (a1ex: 90.65% downloaded) - Levas
hg-repos-01 (a1ex: 91.83% downloaded)
hg-repos-02 (a1ex: 91.03% downloaded)
hg-repos-03 (a1ex: 92.06% downloaded)
hg-repos-04 (a1ex: 4.21% downloaded)
hg-repos-05 - Critix
hg-repos-06 - Critix
hg-repos-07 - Danne - Audionut
hg-repos-08 - Danne
hg-repos-09 - Danne
hg-repos-10 - Danne
hg-repos-11 - Names_are_hard
hg-repos-12 - Names_are_hard
hg-repos-13 - Names_are_hard - Audionut
hg-repos-14 (a1ex: 60.05% downloaded)
hg-repos-15 (a1ex: 90.53% downloaded)
hg-repos-16 (a1ex: 11.59% downloaded)
hg-repos-17 - Audionut
hg-repos-18 - Audionut
hg-repos-19 - Audionut
hg-repos-20 - Audionut
hg-repos-21 - Audionut
hg-repos-22 (TBD)
hg-repos-23 (TBD)
hg-repos-24 (TBD)
hg-repos-25 (TBD)

Only ML forks, as identified earlier in this thread (caveat: different file format):
ml-forks (a1ex: 471/540 downloaded; the others had errors)
Title: Re: Bitbucket set to remove Mercurial support
Post by: Levas on June 15, 2020, 09:50:58 AM
I'm downloading to an external drive and get these type of messages a lot:

"not trusting file /Volumes/4 TB Seagate Expansion Drive/BACKUP_MERCURIAL/FILES/Diggory/growl/.hg/hgrc from untrusted user _unknown, group _unknown"
I'm having 3 different users on my computer, the user I'm downloading with has full read/write acces to this drive.
Files are written, directory is over 1GB now.
Can these messages be ignored, or is this a problem ?


Processing Diggory/growl ...
requesting all changes
adding changesets
adding manifests                                                                                                                                               
adding file changes
added 4171 changesets with 16677 changes to 4841 files (+8 heads)                                                                                               
new changesets 2a9b17b425fb:2ecfd4e7a571
not trusting file /Volumes/4 TB Seagate Expansion Drive/BACKUP_MERCURIAL/FILES/Diggory/growl/.hg/hgrc from untrusted user _unknown, group _unknown
not trusting file /Volumes/4 TB Seagate Expansion Drive/BACKUP_MERCURIAL/FILES/Diggory/growl/.hg/hgrc from untrusted user _unknown, group _unknown
Title: Re: Bitbucket set to remove Mercurial support
Post by: Audionut on June 15, 2020, 09:59:02 AM
I'm seeing the same, they are all ".hg/hgrc".

Another one in red every now and then is something like "stream ended early, expected xxxx bytes, but got xxx bytes".

And some 404: not found.
Title: Re: Bitbucket set to remove Mercurial support
Post by: Danne on June 15, 2020, 10:06:59 AM
Noticed I doubled with Audionut. I will change and download as follows instead:
An Overview:
hg-repos-00 (a1ex: 90.65% downloaded) - Levas
hg-repos-01 (a1ex: 91.83% downloaded)
hg-repos-02 (a1ex: 91.03% downloaded)
hg-repos-03 (a1ex: 92.06% downloaded)
hg-repos-04 (a1ex: 4.21% downloaded)
hg-repos-05 - Critix
hg-repos-06 - Critix
hg-repos-07 - Danne - Audionut
hg-repos-08 - Danne
hg-repos-09 - Danne
hg-repos-10 - Danne
hg-repos-11 - Names_are_hard
hg-repos-12 - Names_are_hard
hg-repos-13 - Names_are_hard - Audionut
hg-repos-14 (a1ex: 60.05% downloaded)
hg-repos-15 (a1ex: 90.53% downloaded)
hg-repos-16 (a1ex: 11.59% downloaded)
hg-repos-17 - Audionut
hg-repos-18 - Audionut
hg-repos-19 - Audionut
hg-repos-20 - Audionut
hg-repos-21 - Audionut
hg-repos-22 (TBD)
hg-repos-23 (TBD)
hg-repos-24 (TBD)
hg-repos-25 (TBD)
Title: Re: Bitbucket set to remove Mercurial support
Post by: Danne on June 15, 2020, 10:31:05 AM
Maybe a stupid question but I want to get this right.

Using this script on my own hg projects. Found them all represented in a1ex https://a1ex.magiclantern.fm/bitbucket-mercurial-archive/hg-repos

Using the script and following starts. Looks ok.

Last login: Mon Jun 15 10:18:08 on ttys003
Daniels-MacBook-Pro:repos-danne daniel$ ./bb_script.sh hg-repos-danne

Processing Dannephoto/switch ...
requesting all changes
adding changesets
adding manifests
adding file changes
added 810 changesets with 5642 changes to 1994 files (+1 heads)                 
new changesets 58de0454c0bb:2da1b9624c05

Processing Dannephoto/magic-lantern ...
requesting all changes
adding changesets
adding manifests                                                               
adding file changes                                                             
added 19315 changesets with 42052 changes to 4199 files (+100 heads)           
new changesets 4d0acc5c0792:6b5fa5a301dd

Processing Dannephoto/ml-dng-dannephoto ...
applying clone bundle from https://api.media.atlassian.com/file/cee72b9b-2bf7-4f0f-ac46-b7548f0b22b7/binary?client=d7e55603-7661-4c7a-b2ad-9d34e2f93a3c&token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJhY2Nlc3MiOnsidXJuOmZpbGVzdG9yZTpmaWxlOmNlZTcyYjliLTJiZjctNGYwZi1hYzQ2LWI3NTQ4ZjBiMjJiNyI6WyJyZWFkIl19LCJleHAiOjE1OTIyMDk4MjMsImlzcyI6ImQ3ZTU1NjAzLTc2NjEtNGM3YS1iMmFkLTlkMzRlMmY5M2EzYyIsIm5iZiI6MTU5MjIwOTQwM30.9xHcMAjnkzIGEMNeiLEnNOaSN-liDWet8MrHBHzx8P4
adding changesets
adding manifests
adding file changes
added 5 changesets with 1582 changes to 1577 files                             
finished applying clone bundle
searching for changes
no changes found


Downloaded and all commits follows. Really nice:
(https://i.postimg.cc/FzWvZYKX/Ska-rmavbild-2020-06-15-kl-10-32-13-png-scaled.png)

Now to my question. In source folder all I can detect when I unhide(on mac) is the .hg folder:
(https://i.postimg.cc/RhV9K74T/Ska-rmavbild-2020-06-15-kl-10-31-45-png-scaled.png)

No sources downloaded? Is this to be expected? Are we downloading commits and .hg content only? A bit confused...






Title: Re: Bitbucket set to remove Mercurial support
Post by: Audionut on June 15, 2020, 10:36:51 AM
Did you look in the .hg folder?

A random folder downloaded here:
(https://i.postimg.cc/RhGvNRkS/folder.png)

(https://i.postimg.cc/nczJ3v8m/folder1.png)
Title: Re: Bitbucket set to remove Mercurial support
Post by: a1ex on June 15, 2020, 10:53:04 AM
Quote from: Audionut on June 15, 2020, 09:59:02 AM
Another one in red every now and then is something like "stream ended early, expected xxxx bytes, but got xxx bytes".

And some 404: not found.

Those 404 were deleted by their owners; we can ignore them.

The "stream ended early, expected xxxx bytes, but got xxx bytes" are probably network errors, and these will very likely work on a second attempt.

If you run each script 3-4 times, it should "fix" most of these errors. First run will take a long time (let's say about 1 day, give or take), but subsequent runs should be much faster (let's say 1 hour, but varies a lot, depending on how many errors actually were in that set).

For example, after fully downloading hg-repos-03, an extra run (that doesn't download anything new, but only retries the 404's) takes under 10 minutes, but for hg-repos-01, an extra run takes about 40 minutes.

Quote
No sources downloaded? Is this to be expected? Are we downloading commits and .hg content only? A bit confused...

Right. The .hg directory is all you need to recover the sources, from any version:

hg update
hg update <changeset_id>
hg update <branch_name>
...


The working directory is therefore redundant and takes additional disk space, so we don't keep it :)




Here's a Python script that computes the percentages (btw, 0.01% from one set is exactly 1 repo):

from __future__ import print_function
import os, sys

try: error_repos = open("hg-clone-errors.txt").readlines();
except: error_repos = []
error_repos = [x.strip() for x in error_repos]

for i in range(30):
  fn = "hg-repos-%02d" % i
  try: repos = open(fn).readlines()
  except: continue
  repos = [r.strip() for r in repos]
  downloaded = 0
  errors = 0
  total = len(repos)
  for line in repos:
      r = line.split(" ")[1]
      if os.path.isfile(r + ".commits"):
          downloaded += 1
      elif r in error_repos:
          errors += 1
      else:
          pass
  print("%s: %.2f%% downloaded, %.2f%% errors, %.2f%% todo" % (fn, downloaded * 100.0 / total, errors * 100.0 / total, (total - errors - downloaded) * 100.0 / total))


There is a catch: this script can't tell what errors might be recoverable (with a second run), and what errors are not (the 404's and a few others). Even if this prints "complete" (0% todo), running the download script once again might bring a few more repos that didn't work on the first try.
Title: Re: Bitbucket set to remove Mercurial support
Post by: Audionut on June 15, 2020, 11:18:38 AM
Is this downloading all of the comments on commits, PR's etc?
Title: Re: Bitbucket set to remove Mercurial support
Post by: a1ex on June 15, 2020, 11:33:24 AM
No, only the code and its Mercurial history.

Downloading the comments, PRs, issues and other stuff can be done with bitbucket_hg_exporter, but it took about 2 days only for the hudson repository (without the forks). It's still trying to download the same things from all ML forks, but I don't think it's going to finish before the deadline. Doing this for all Bitbucket repositories would probably take years without massive parallelization :)

Here's an archive of our Bitbucket PRs, issues and other stuff (also being imported by Heptapod, so it will be only for cross-checking):
https://a1ex.magiclantern.fm/bitbucket-mercurial-archive/magic-lantern/gh-pages/

But, as I didn't export the forks with that script (because it was taking too long), the PRs only contain comments and other metadata, without the code. The code is what we are downloading now :)
Title: Re: Bitbucket set to remove Mercurial support
Post by: Audionut on June 15, 2020, 11:45:09 AM
Ah right, I thought I read somewhere it was getting backed up.

I might run a website cloner on the hudson repository, because why not!
Title: Re: Bitbucket set to remove Mercurial support
Post by: kitor on June 15, 2020, 04:38:25 PM
As I'm in the hurry and just noticed this thread leaving home - is there's anything still to be downloaded? I have ~8TB free space on my server.
Title: Re: Bitbucket set to remove Mercurial support
Post by: Levas on June 15, 2020, 05:24:17 PM
@Kitor
Quote from: a1ex on June 14, 2020, 11:34:27 PM
Ideally, each repo (or set of repos) should be downloaded by at least two participants, just in case.

See list of Danne few posts earlier, most repos are now downloaded by at least one person, according to the quote above, double downloads couldn't hurt.

I'm downloading hg-repos-00
But I'm  not sure if I do download anything after that, my upload(~2.5Mbit) is 10 times less then my download(~20Mbit).
I don't wanna calculate how long uploading is gonna take  :P

Title: Re: Bitbucket set to remove Mercurial support
Post by: a1ex on June 15, 2020, 07:08:36 PM
Well, 8TB sounds excellent for collecting the downloads from all participants (in max. 2 weeks, possibly earlier), and running the scripts for deciding how to compress and archive the entire thing (which I didn't write yet, but thought about).

We've worked together on the EOS R port before, so I'm comfortable with this option.

Some not-so-good news about repo sizes: in the first sets, average size is about 5 MiB, but in the middle ones (15,16), it's closer to 15 MiB / repo. Watch out for the free space!

At 20 MiB / repo, 250.000 repos would require about 5 TB. Let's hope it won't exceed 30 :)

My guess: many of the new repos are likely to be forks, so they should compress well if grouped together.
Title: Re: Bitbucket set to remove Mercurial support
Post by: Levas on June 15, 2020, 07:47:15 PM
How big is the first repo (hg-repos-00) ?
Is it really about 1.2 TB  :o
If that's the case, that will take me more then 5 days, IF download speed is max...
So is it 1.2 TB ?
Then I'll probably let this participating over to people with better internet connections  :P
Title: Re: Bitbucket set to remove Mercurial support
Post by: Levas on June 15, 2020, 07:57:51 PM
Oh wait, I see you divided it in 25 chunks of 10000.
Looking Into folder after 10 hours of downloading...2350 folders... :'( (about 25%)

Just curious, how is everybody else doing  8)
Title: Re: Bitbucket set to remove Mercurial support
Post by: kitor on June 15, 2020, 07:59:13 PM
Quote from: a1ex on June 15, 2020, 07:08:36 PM
Well, 8TB sounds excellent for collecting the downloads from all participants (in max. 2 weeks, possibly earlier), and running the scripts for deciding how to compress and archive the entire thing (which I didn't write yet, but thought about).
At 20 MiB / repo, 250.000 repos would require about 5 TB. Let's hope it won't exceed 30 :)

I'm setting up env for those:

Quotehg-repos-22 (TBD)
hg-repos-23 (TBD)
hg-repos-24 (TBD)
hg-repos-25 (TBD)

I'll run it over night. I have 100/50 connection there, so not great, not terrible; on 2nd location I can setup about 2TB (with 100/100 connection) for side works if needed.

Quote from: a1ex on June 15, 2020, 07:08:36 PM
Well, 8TB sounds excellent for collecting the downloads from all participants (in max. 2 weeks, possibly earlier), and running the scripts for deciding how to compress and archive the entire thing (which I didn't write yet, but thought about).
At 20 MiB / repo, 250.000 repos would require about 5 TB. Let's hope it won't exceed 30 :)

Primary has dual E5-2630 v2 and 96 gigs of ram, so it's fine for some heavy lifting. One limitation is that I need to keep bandwidth heavy things over night / cap it to half during day as it hosts all of my production sites.
On primary I can add 4TB over local gigabit network - as I have cold spare laying around (unfortunately all local storage bays are full of disks).

If somebody wonders, this is my homelab (https://www.reddit.com/r/homelab/comments/f1y3ur/rack_upgrade_and_cleanup/) ;)

Alex, if you want some env to experiment on, ping me on PM.
Title: Re: Bitbucket set to remove Mercurial support
Post by: Levas on June 15, 2020, 08:02:53 PM
Quote from: a1ex on June 14, 2020, 11:34:27 PM
Let's divide these into manageable chunks:

;D
Title: Re: Bitbucket set to remove Mercurial support
Post by: names_are_hard on June 15, 2020, 08:11:04 PM
I'm about 50% complete on the 3 I'm downloading, looks like they'll be around 750GB total.  So I predict 6.5TB for everything (uncompressed).
Title: Re: Bitbucket set to remove Mercurial support
Post by: kitor on June 15, 2020, 08:17:46 PM
Quote from: Levas on June 15, 2020, 08:02:53 PM
;D
Yup, I just saw that those had no links. Anyway, I won't start before moon (still 4 hours) so Alex may come to rescue  ;)

[e]Just started hg-repos-17 for test. If those 22-25 won't be available, I'll run 17-21 over night.
Title: Re: Bitbucket set to remove Mercurial support
Post by: Danne on June 15, 2020, 08:33:29 PM
Quote from: names_are_hard on June 15, 2020, 08:11:04 PM
I'm about 50% complete on the 3 I'm downloading, looks like they'll be around 750GB total.  So I predict 6.5TB for everything (uncompressed).
750gb for three repos, I might need to pause a few then. So around 200gb per repo? Is that a good estimation?
Title: Re: Bitbucket set to remove Mercurial support
Post by: kitor on June 15, 2020, 08:51:10 PM
I just wonder, ssh clone wouldn't be faster? I think that http is overhead here.

quick test (ofc 1 run is not enough to prove anything):

# time hg clone --config ui.interactive=false -U https://bitbucket.org/hudson/magic-lantern ./magic-lantern-http
requesting all changes
adding changesets
adding manifests                                                                                                     
adding file changes                                                                                                   
added 18025 changesets with 40250 changes to 4090 files (+60 heads)                                                   
new changesets 4d0acc5c0792:f7947b627e33

real    1m20.908s
user    0m30.178s
sys     0m2.235s

# time hg clone --config ui.interactive=false -U ssh://[email protected]/hudson/magic-lantern ./magic-lantern-ssh
requesting all changes
adding changesets
adding manifests
adding file changes                                                                                                   
added 18025 changesets with 40250 changes to 4090 files (+60 heads)                                                   
new changesets 4d0acc5c0792:f7947b627e33

real    0m46.857s
user    0m26.173s
sys     0m3.698s

Title: Re: Bitbucket set to remove Mercurial support
Post by: a1ex on June 15, 2020, 09:25:06 PM
Confirmed, very nice find:

time hg clone --config ui.interactive=false -U https://bitbucket.org/hudson/magic-lantern ./magic-lantern-http
real 1m20.831s

time hg clone --config ui.interactive=false -U ssh://[email protected]/hudson/magic-lantern ./magic-lantern-ssh
remote: Warning: Permanently added the RSA host key for IP address '18.205.93.1' to the list of known hosts.
real 0m26.886s

time hg clone --config ui.interactive=false -U https://bitbucket.org/hudson/magic-lantern ./magic-lantern-http2
real 1m14.051s

time hg clone --config ui.interactive=false -U ssh://[email protected]/hudson/magic-lantern ./magic-lantern-ssh2
real 0m25.652s


Updated the script (edit: defaulting to https, so it works out of the box for everyone). Reminder: never edit Bash scripts while they are running!

Uploaded hg-repos-22, but hg-repos-23 will be ready tomorrow morning (repo list is currently at September 2019).
Title: Re: Bitbucket set to remove Mercurial support
Post by: Danne on June 15, 2020, 09:48:28 PM
Latest ssh script gives following:
Last login: Mon Jun 15 21:44:15 on ttys002
Daniels-MacBook-Pro:repo_10 daniel$ /Volumes/bitbucket/repos/bb_script_new.sh /Volumes/bitbucket/repos/hg-repos-10

Processing trytonspain/trytond-account_treasury ...
The authenticity of host 'bitbucket.org (18.205.93.0)' can't be established.
RSA key fingerprint is SHA256:zzXQOXSRBEiUtuE8AikJYKwbHaxvSc0ojez9YXaGp1A.
Are you sure you want to continue connecting (yes/no)?

After writing yes, then this:
remote: Warning: Permanently added 'bitbucket.org,18.205.93.0' (RSA) to the list of known hosts.
remote: [email protected]: Permission denied (publickey).
abort: no suitable response from remote hg!

Processing dglyzin/ndtracer ...
remote: [email protected]: Permission denied (publickey).
abort: no suitable response from remote hg!

Processing GordCaswell/peazipportable ...
remote: [email protected]: Permission denied (publickey).
abort: no suitable response from remote hg!

Processing leondz/timeml-repair ...
remote: [email protected]: Permission denied (publickey).
abort: no suitable response from remote hg!

Processing gstarcorporation/websharper ...

No tinker time atm over here so only reporting.
Title: Re: Bitbucket set to remove Mercurial support
Post by: kitor on June 15, 2020, 09:53:37 PM
You need to add your ssh public key to bitbucket. And run HG once by hand (without disabling interactive shell) to accept remote ssh pubkey.
Title: Re: Bitbucket set to remove Mercurial support
Post by: Danne on June 15, 2020, 10:02:15 PM
Ok, but first I need some sleep :P. Tomorrow.
Title: Re: Bitbucket set to remove Mercurial support
Post by: Audionut on June 16, 2020, 02:40:56 AM
Currently at:

hg-repos-07: 23.08% downloaded, 1.96% errors, 74.96% todo
hg-repos-13: 25.35% downloaded, 1.18% errors, 73.47% todo
hg-repos-17: 24.25% downloaded, 3.39% errors, 72.36% todo
hg-repos-18: 22.46% downloaded, 0.51% errors, 77.03% todo
hg-repos-19: 15.49% downloaded, 0.27% errors, 84.24% todo
hg-repos-20: 16.87% downloaded, 0.21% errors, 82.92% todo
hg-repos-21: 20.56% downloaded, 0.26% errors, 79.18% todo


Guess I should update the scripts.
Title: Re: Bitbucket set to remove Mercurial support
Post by: critix on June 16, 2020, 06:56:40 AM
Current:
Quotehg-repos-05: 23.59% downloaded, 1.78% errors, 74.63% todo
hg-repos-06: 27.30% downloaded, 2.02% errors, 70.68% todo
Title: Re: Bitbucket set to remove Mercurial support
Post by: kitor on June 16, 2020, 06:57:56 AM
How you check the percentage?
I'm running 17, 18, 19 since midnight.

[e] Ok, I missed the python script ;)

hg-repos-17: 14.37% downloaded, 0.43% errors, 85.20% todo
hg-repos-18: 14.57% downloaded, 0.21% errors, 85.22% todo
hg-repos-19: 10.17% downloaded, 0.14% errors, 89.69% todo
Title: Re: Bitbucket set to remove Mercurial support
Post by: Audionut on June 16, 2020, 09:34:30 AM
Couldn't get ssh working here.

ssh very strict on permissions, and needs either 400 or 600 permission on the key file.

chmod no worky on symbolic linked files.

Tried all manner of windows permission settings and can only get to 444.

Tried different folders within the ubuntu home folder, but ssh-add won't stop bitching to me about file/folder permission outside of the username folder. Yet, ssh-keygen works fine ffs. Can create keys, but then can't add them.

edit: oh, and I deleted the symbolic link username folder from the home folder, added a new folder, and ubuntu still wants to link to the symbolic linked folder. Maybe a restart will fix it. Will finish downloading what is started first, then play again.
Title: Re: Bitbucket set to remove Mercurial support
Post by: kitor on June 16, 2020, 11:05:05 AM
You use WSL, right?

kitor@kitor-p70:kitor$ cat /etc/debian_version
bullseye/sid
kitor@kitor-p70:kitor$ systeminfo.exe | grep -e "^OS Version"
OS Version:                10.0.18363 N/A Build 18363
kitor@kitor-p70:kitor$ ls ~/.ssh | grep id_rsa
-rw------- 1 kitor kitor 2.6K Feb 15 17:02 id_rsa
-rw-r--r-- 1 kitor kitor  569 Feb 15 17:02 id_rsa.pub


If you did some werid stuff like symlinking your windows home dir to WSL one, then yep - this will work as you described (won't work) as you try to write linux permissions to NTFS partition over virtual filesystem.

Also, replying to your older post: https://www.magiclantern.fm/forum/index.php?topic=24420.msg228084#msg228084

QuoteThe default home folder in ubuntu is located at:
C:\Users\xxxx\AppData\Local\Packages\CanonicalGroupLimited.UbuntuonWindows_79rhkp1fndgsc\LocalState\rootfs\home\username

Replace (xxxx) with with your windows 10 user. Replace (username) with whatever username you used when installing ubunutu.

I would suggest to cut the username folder and paste it wherever you want to store these downloaded repos. Then drop a symbolic link back into the original ubuntu home location.
I use a link shell extension (https://schinagl.priv.at/nt/hardlinkshellext/hardlinkshellext.html) to make that task easier.

Never, ever access WSL filesystem this way! This will mess up linux FS. Microsoft points that in documentation. MS dev blog about this (https://devblogs.microsoft.com/commandline/do-not-change-linux-files-using-windows-apps-and-tools/)
Use file explorer to access \\wsl$ with file explorer - this is the only official and safe way [1] [2]

This path that you provided is stored on Windows side using some kind of trickery to keep linux system working properly (and thus keep permissions working). If you alter it from Windows, you will experience all sort of problems, similar to ones you described.

If you want to access Windows path from Linux, use /mnt/<letter>/*. If you want to symlink it, do it using ln -s on WSL (linux symlink on linux side). If you need to access linux FS from windows - use mentioned \\wsl$ share.

(https://i.imgur.com/WS9Psi7.png)

[1] You can mount it as an network share by the way. So your linux FS will be visible as disk with assigned letter in explorer.
[2] https://devblogs.microsoft.com/commandline/whats-new-for-wsl-in-windows-10-version-1903/ (https://devblogs.microsoft.com/commandline/whats-new-for-wsl-in-windows-10-version-1903/)
Title: Re: Bitbucket set to remove Mercurial support
Post by: Audionut on June 16, 2020, 11:31:57 AM
I need the output of the script to a different location then the WSL Ubuntu install location.

The WSL Ubuntu is installed on a 120gb SSD, which is clearly not suited to this task.

I need to be able run multiple scripts to multiple different HDD locations to be able to keep the WAN connection saturated without thrashing the HDD.
Title: Re: Bitbucket set to remove Mercurial support
Post by: a1ex on June 16, 2020, 05:57:02 PM
Repo list completely downloaded, so we now have hg-repos-22, 23 and 24. Last one has only about 2500 repos; the interesting part is that many Mercurial repos were created in 2020, and 7 of them were created... today! They are very likely forks of existing repos. Actually, 3 of the repos created in 2020 were forks of hudson/magic-lantern, created for submitting pull requests, from Bitbucket's web interface.

Links in the big post (https://www.magiclantern.fm/forum/index.php?topic=24420.msg228077#msg228077).

I'll download another repo list, hopefully this time it will complete in a single attempt, so... at the end of the week, I should be able to cross-check the list. If I'll find anything missing (mistakes can happen), I'll add them into hg-repos-25. The others are now set in stone :)




First 3 sets appear to be complete on my side:

hg-repos-00: 91.23% downloaded, 8.77% errors, 0.00% todo, 2.82 MiB average
hg-repos-01: 92.38% downloaded, 7.62% errors, 0.00% todo, 4.16 MiB average
hg-repos-02: 92.08% downloaded, 7.92% errors, 0.00% todo, 6.81 MiB average


For the others, my current estimation of average size is biased, as in my first attempt, I've been skipping very large repos. Will report as soon as I'll trust the numbers :)

Extended status script (reporting average repo size, but slow):

from __future__ import print_function
import os, sys, subprocess, shlex

try: error_repos = open("hg-clone-errors.txt").readlines();
except: error_repos = []
error_repos = [x.strip() for x in error_repos]

def repo_size(r):
    # this is slow
    r = subprocess.check_output(shlex.split("du -b -d 0 " + r + "/.hg"))
    return int(r.split(b"\t")[0])

for i in range(30):
  fn = "hg-repos-%02d" % i
  try: repos = open(fn).readlines()
  except: continue
  repos = [r.strip() for r in repos]
  repos = list(set(repos)) # unique list (hg-repos-20 contains a few duplicates)
  downloaded = 0
  errors = 0
  total = len(repos)
  size = 0
  for line in repos:
      r = line.split(" ")[1]
      if os.path.isfile(r + ".commits"):
          size += repo_size(r)
          downloaded += 1
      elif r in error_repos:
          errors += 1
      else:
          pass
  print("%s: %.2f%% downloaded, %.2f%% errors, %.2f%% todo, %.2f MiB average" % (fn, downloaded * 100.0 / total, errors * 100.0 / total, (total - errors - downloaded) * 100.0 / total, size * 1.0 / total / 1024 / 1024))





Quote from: Luther on June 15, 2020, 02:20:20 AM
I don't know if hg clone already does this, but would be nice to have SHA256 for each split...

Been looking into this as well, but the exact contents of the ".hg" directory seem to be different among fresh clones. One obvious difference is the source URL, which is different if you clone with HTTPS or with SSH. Didn't investigate much, but... even the contents of .hg/store appear to be slightly different. Not sure why exactly.

Checksums for the repo lists, to verify the downloads:

# sha256sum all-repos hg-repos*
e68bf18a3433ba921443616e7e69486c25d48f132071a8cb319a5d1212b1a330  all-repos
e1bbf56016d6f958a1539ab5de14c0c8536aa14376ac9431d92e6a4e982032ed  hg-repos
66f9e6fa4fbff1af0c8f6190ae60e285534e334ec02f2b3bbebe28e9651e5580  hg-repos-00
0db369328d1b479d393d8fdd58c9b316c8ef856a71e1cfd749599dc1c9592144  hg-repos-01
761c2c2d39529294fa1aa9e26c6dbb4d2732b6fdb5704b4936f5e7d52dd46a87  hg-repos-02
ae7ef228fb60e750334176318bc672e2783e715108573bb17c3aafa12c786e2f  hg-repos-03
66bbc945f3d885953efcda6a4af2b22a2530e0bdf29bd462212ed45c159123a4  hg-repos-04
cc7deeda69e5f4a1360f129616f1bfe8cb96b63209850a62b4fad391ad2e354e  hg-repos-05
07b3bb8809dedb4c5c97034353393b5f28db7d08e33d1abb0f2a1363121c676f  hg-repos-06
c20596b54a00d9951c2194172eca4f0f32c78a8c44d70919d5b28ab34bcac798  hg-repos-07
9fde67105c497a14ce997c0ca87cba2eba86a9b894372ae89393f4436c6da792  hg-repos-08
fff343b16fa879eef3a3c5f9719c3e5a5de8098af090cfc231124070e1f20190  hg-repos-09
bfff93447f3ec036fcb15e1bebfed97967fb3a84ca8214e44f77b3eb27a696e3  hg-repos-10
7477e4caa1163335c33f0aa7ab711fc9614298aca39158dd6fbf59fd9ae89a8d  hg-repos-11
16d60a7fe0e644143b92df13abcae7af813cdf0ba8d42359da4ef98ca2ab9400  hg-repos-12
d623425b7d6f250b06c992d705f6561b7f8489337968dafe88d297e44d70ff22  hg-repos-13
b6b97a954028972fa06469dc7ce7b44be0bf90c086b5316295a4d80b39057b8c  hg-repos-14
84ab787f19a4d6463c3f343da73d5824dc4acef7cbdd7670a73f6e4be0bb90e3  hg-repos-15
138c982985f812db853903c2dba4f6dfe8c16e441e9d4b801d08daf45a15870b  hg-repos-16
520cdbec2fabb54e09cb66b5572b654352fbc1ff46625ad0a23b446dd61a547b  hg-repos-17
ce4cf07804864d6832976c36521b502ec7e162057449d076c87de5191ad9e180  hg-repos-18
3a8353098236fbf7cfceacd2121af0e44d5b9b46734e81ef38f7e4f5bdeb2848  hg-repos-19
1b6255b7aec596d2b2931589192b72daacd52bc9c6198f25b9cd4cdf6e04b4d1  hg-repos-20
c230a100849e1d85a243dd512aba0debf996ca8e27af7ad351f6754447621e10  hg-repos-21
de76f1989577991f40f6addd2d67e62d5f66048fcb47d86b9dab6444f835bcbe  hg-repos-22
661da278c57fef58306e6144f2dde7f2e0c09213fa3a47e9c6245864c68f08c8  hg-repos-23
6dbffbb608179da20d4f4c0dac8252ca9eba23657dcc6eac13288a4d3b6ff6e5  hg-repos-24

# md5sum all-repos hg-repos*
73f16c6e7d8ec44a22d35748505f4486  all-repos
a56d079deadb5689e199cc8bb9112c9a  hg-repos
9b7074c0b8fa74078b977778b0aa2f51  hg-repos-00
648ae2d23a6b444423c1e7a429fffbc5  hg-repos-01
f1e72fb46f4ea57558f4e47330d663f5  hg-repos-02
ff7ea3f6b8ea07247e51b365487c4ec5  hg-repos-03
aebca1355249198916050d001dabac86  hg-repos-04
7c221e98539145e187d13543e0ccb447  hg-repos-05
ab5533cca9c6501d352bd2d981cfbe01  hg-repos-06
a76b118a375c095d5b2be91c7c846e96  hg-repos-07
19d36f29bfc12a0aa72b6f7ded194ba6  hg-repos-08
e6dffbab4d1b717eb1177ccb1133a55a  hg-repos-09
884c5c49a4880b688a5d8f624dfe2188  hg-repos-10
10cf61d018db3551c4087b4e671b80b6  hg-repos-11
7cfeba30d3f9462aa5c327fd8ba12a5c  hg-repos-12
c481fbad58b375b1c316e1c5493b0924  hg-repos-13
079e724a6ce23a69c0a6c0d1bc8c27a3  hg-repos-14
8763470dcbec370d062b40aea2a2dafb  hg-repos-15
b365070a0066ea15aee087c77f848d6c  hg-repos-16
1f45337c6efc5041e21b7d6f85bb1b5c  hg-repos-17
aab6d956adf417ca369691d0858c6617  hg-repos-18
229ccf672fd9d77178ffce692a65a7f8  hg-repos-19
7052b2669a69f7d8b9229d58e5cc1975  hg-repos-20
a320bb90fc163855909d4893e395c48f  hg-repos-21
265a5ac75e355fa27e45aefd23ce0dc1  hg-repos-22
89c1b7070d0a91aab8ff6a53c440199f  hg-repos-23
8ebeb53282679c8f3f5c060f2c584451  hg-repos-24


Currently, for each repo, the download script creates a list of commit hashes. These depend on the "contents" (commit body, message, timestamp etc) and on the parrent commit(s) (details (https://www.mercurial-scm.org/wiki/Nodeid)), so as long as the .hg directory is not messed up, I'd say it should be OK for integrity checks. When collecting the downloaded files from all participants, I can re-create the lists of commits and compare them, and I can also run "hg verify" on each repo.




Also noticed the .hg/store/data directory has many file names resembling the ones in the source code, and got a crazy idea: what if we group similar or identical files together? Would the compressor find repeated patterns easier? This idea was previously explored (https://morimori.tokyo/2017/11/sorting-files-for-better-compression/), and apparently has some merit.

On the previous example of hudson/magic-lantern and all of its forks, this command compressed the entire thing to 157 MiB (without sorting: 273.3 MiB, uncompressed size 16.4 GiB, individually compressed repos 14.3 GiB):

find -type f -path '*/*/.hg/*' | rev | sort | rev | tar -cvf - -T - | xz -9e --lzma2=dict=1536Mi -c - > ml-repos.tar.xz


It sorts the file list by the reversed-string file path, effectively grouping files with the same name together (without looking at the contents). TODO: try the approaches from the "morimori" blog post and compare various commands.
Title: Re: Bitbucket set to remove Mercurial support
Post by: kitor on June 16, 2020, 06:30:39 PM
Quote from: a1ex on June 16, 2020, 05:57:02 PMAlso noticed the .hg/store/data directory has many file names resembling the ones in the source code, and got a crazy idea: what if we group similar or identical files together? Would the compressor find repeated patterns easier?

IIRC not possible (at least easily) on classic "on the fly" compressors like gzip. But afair squashfs does block-level deduplication. Thus grouping forked repos and squashing them in one file may be the way to go. mksquashfs / unsquashfs should be available in every distro...

[e @ 11PM] To not spam. I added 22-24:

hg-repos-17: 35.56% downloaded, 0.99% errors, 63.45% todo
hg-repos-18: 34.18% downloaded, 0.47% errors, 65.35% todo
hg-repos-19: 27.13% downloaded, 0.27% errors, 72.60% todo
hg-repos-22: 0.14% downloaded, 0.00% errors, 99.86% todo
hg-repos-23: 0.02% downloaded, 0.00% errors, 99.98% todo
hg-repos-24: 0.24% downloaded, 0.00% errors, 99.76% todo

So far it took about ~500 gigs.

[e @ 11:30PM] And just added 20 and 21 on secondary location:
hg-repos-20: 0.06% downloaded, 0.00% errors, 99.94% todo
hg-repos-21: 0.39% downloaded, 0.00% errors, 99.61% todo
Title: Re: Bitbucket set to remove Mercurial support
Post by: critix on June 16, 2020, 06:39:26 PM
Current
- with new script :
hg-repos-05: 62.37% downloaded, 4.42% errors, 33.21% todo, 7.55 MiB average
hg-repos-06: 64.55% downloaded, 5.49% errors, 29.96% todo, 7.93 MiB average


- with old script:
hg-repos-05: 62.16% downloaded, 4.42% errors, 33.42% todo
hg-repos-06: 63.70% downloaded, 5.49% errors, 30.81% todo
Title: Re: Bitbucket set to remove Mercurial support
Post by: kitor on June 17, 2020, 07:21:56 AM
Script has a problem (this failed on repos 19)

Processing -1/objectlistview ...
hg clone: option -1 not recognized
hg clone [OPTION]... SOURCE [DEST]

make a copy of an existing repository

options ([+] can be repeated):


This is not the only example of username starting with "-". Simple wrapping variables in quotes doesn't work, those would need to be properly escaped.

Status:
Primary:
hg-repos-17: 43.58% downloaded, 1.34% errors, 55.08% todo
hg-repos-18: 38.51% downloaded, 0.57% errors, 60.92% todo
hg-repos-19: 29.07% downloaded, 0.34% errors, 70.59% todo
hg-repos-22: 4.22% downloaded, 0.10% errors, 95.68% todo
hg-repos-23: 2.83% downloaded, 0.23% errors, 96.94% todo
hg-repos-24: 9.56% downloaded, 0.31% errors, 90.12% todo

I'm a little worried about 22 and 23 lagging behind :) 19 slowed due to an error above (hg decided to show interactive help via less...)
I'm thinking about moving 2nd half of 17-19 to secondary location to leave bandwidth free for 22-24. I had to limit it to 60mbit/s to keep everything working and it's saturated all the time ;)

secondary:
hg-repos-20: 8.14% downloaded, 0.12% errors, 91.74% todo
hg-repos-21: 11.43% downloaded, 0.08% errors, 88.49% todo
Title: Re: Bitbucket set to remove Mercurial support
Post by: a1ex on June 17, 2020, 08:27:47 AM
The failing command was:

hg clone --config ui.interactive=false -U ssh://[email protected]/-1/objectlistview -1/objectlistview


So, plain "hg clone" of that repo worked, but specifying a destination that started with a dash... caused trouble, as hg tried to interpret it as an option. Many tools accept "--" as "end of options", and apparently it's working here as well:


hg clone --config ui.interactive=false -U -- ssh://[email protected]/-1/objectlistview -1/objectlistview


Good catch.

Updated the script. Found such repos in 13, 15, 16, 17, 19, 20, 21, 22, 23.
Title: Re: Bitbucket set to remove Mercurial support
Post by: kitor on June 17, 2020, 09:15:27 AM
Quotestarted with a dash... caused trouble

Still it will be fun to work with those later  ;) (my favorite bash test on newcomers is to create " -rf" directory in / and ask them to remove it from root account)
Title: Re: Bitbucket set to remove Mercurial support
Post by: Danne on June 17, 2020, 09:41:19 AM
Still downloading package 7 - 10. Ran the original script again on package 8 cause it missed a few repos it seems but should be done soon, probably today. Will run the latest script version on all packages once finished.
Title: Re: Bitbucket set to remove Mercurial support
Post by: kitor on June 17, 2020, 09:48:55 AM
I also have some of those:

Processing JannisKhammas/railbound-frontiers ...
applying clone bundle from https://api.media.atlassian.com/file/blahblahblah
adding changesets
adding manifests
adding file changes
transaction abort!
rollback completed
abort: stream ended unexpectedly  (got 196 bytes, expected 4096)

I wonder if restarting script will get them?
Title: Re: Bitbucket set to remove Mercurial support
Post by: a1ex on June 17, 2020, 10:21:11 AM
Very likely. Or, once it finishes, run the script again 2-3 times (it will retry the failed ones).
Title: Re: Bitbucket set to remove Mercurial support
Post by: Danne on June 17, 2020, 10:36:24 AM
repo 8 downloaded and reran latest script and all was done and good. So, this is the compression algo to use?
find -type f -path '*/*/.hg/*' | rev | sort | rev | tar -cvf - -T - | xz -9e --lzma2=dict=1536Mi -c - > repo_8.tar.xz
Guess once I start it will begin to chew for a few hours?

Checksum list, hm, howto perform...will check.
Title: Re: Bitbucket set to remove Mercurial support
Post by: Audionut on June 18, 2020, 02:54:41 AM
What is the best script command to delete duplicate material?

For instance I have some hg-repos-20 on a HDD from when I was initially downloading everything to a single drive. I have since begun downloading hg-repos-20 to another drive, and I would like to delete any fragments of hg-repos-20 from the initial drive.

Can someone confirm any compression being used before I begin uploading to a hosting server.
Title: Re: Bitbucket set to remove Mercurial support
Post by: critix on June 18, 2020, 07:50:05 AM
Current:
With old script:
hg-repos-05: 93.17% downloaded, 6.83% errors, 0.00% todo
hg-repos-06: 92.08% downloaded, 7.92% errors, 0.00% todo

hg-repos-05: 93.17% downloaded, 6.83% errors, 0.00% todo, 11.03 MiB average
hg-repos-06: 92.41% downloaded, 7.59% errors, 0.00% todo, 11.24 MiB average

I'm running the scripts again
Title: Re: Bitbucket set to remove Mercurial support
Post by: a1ex on June 18, 2020, 08:07:18 AM
Quote from: Audionut on June 18, 2020, 02:54:41 AM
For instance I have some hg-repos-20 on a HDD from when I was initially downloading everything to a single drive. I have since begun downloading hg-repos-20 to another drive, and I would like to delete any fragments of hg-repos-20 from the initial drive.

I've used this to move the stuff belonging to one "hg-repos" set, into another directory.


# script must be run from the working directory (where things were downloaded)
# usage: move-out.sh 05      # only include the number of the repo list
LST=hg-repos-$1              # must be in the working directory
DST=../bitbucket-repos-$1    # must be outside the working directory, sans trailing slash

for f in $(cat $LST | cut -d ' ' -f 2 ); do
  echo $f
  if [ -f $f.commits ]; then
    mkdir -p $DST/$f
    mv $f/.hg $DST/$f/
    mv $f.commits $DST/$f.commits
  fi
done


Quote from: Audionut on June 18, 2020, 02:54:41 AM
Can someone confirm any compression being used before I begin uploading to a hosting server.

Yes, .hg directories contain mostly compressed data. Unless you group redundant things together (e.g. forks) and create a solid archive, you will not get noticeable reduction in archive size; see my analysis on the hudson/magiclantern repo and all of its forks.

Quote from: Danne on June 17, 2020, 10:36:24 AM
repo 8 downloaded and reran latest script and all was done and good. So, this is the compression algo to use?
find -type f -path '*/*/.hg/*' | rev | sort | rev | tar -cvf - -T - | xz -9e --lzma2=dict=1536Mi -c - > repo_8.tar.xz
Guess once I start it will begin to chew for a few hours?

This appears to work fine, but it's very slow. My attempt of trying this command ran for over 7 hours for the first 4 sets (00-03, about 200 GiB) and ran out of disk space :D


hg-repos-00: 91.23% downloaded, 0.00% errors, 8.77% todo, 2.82 MiB average
hg-repos-01: 92.38% downloaded, 0.00% errors, 7.62% todo, 4.16 MiB average
hg-repos-02: 92.08% downloaded, 0.00% errors, 7.92% todo, 6.81 MiB average
hg-repos-03: 93.59% downloaded, 0.00% errors, 6.41% todo, 8.38 MiB average


On the good side, "find" does include files starting with dot (.) or dash (-) without any fuss.
Title: Re: Bitbucket set to remove Mercurial support
Post by: kitor on June 18, 2020, 08:35:52 AM
Status update [e: 12:00 CEST]:

Primary:
hg-repos-17: 72.14% downloaded, 2.49% errors, 25.37% todo
hg-repos-18: 57.80% downloaded, 1.10% errors, 41.10% todo
hg-repos-19: 42.02% downloaded, 0.47% errors, 57.51% todo
hg-repos-22: 18.49% downloaded, 0.26% errors, 81.25% todo
hg-repos-23: 15.17% downloaded, 0.41% errors, 84.42% todo
hg-repos-24: 39.75% downloaded, 0.75% errors, 59.50% todo

Primary is still running without "--" fix, I'll rerun it later.

Secondary:
hg-repos-20: 56.82% downloaded, 1.34% errors, 41.84% todo
hg-repos-21: 99.87% downloaded, 0.13% errors, 0.00% todo
hg-repos-22: 0.03% downloaded, 0.00% errors, 99.97% todo
hg-repos-23: 0.02% downloaded, 0.00% errors, 99.98% todo

20 just restarted with "--" fix, 21-23 run on fixed scripts.

@alex - do you have any method to group forks together? I'd like to try squashing them, as I proposed a few posts earlier.
Title: Re: Bitbucket set to remove Mercurial support
Post by: Audionut on June 18, 2020, 10:58:06 AM
hg-repos-05: 0.41% downloaded, 0.01% errors, 99.58% todo
hg-repos-07: 92.83% downloaded, 7.17% errors, 0.00% todo
hg-repos-13: 52.67% downloaded, 2.44% errors, 44.89% todo
hg-repos-17: 68.06% downloaded, 2.16% errors, 29.78% todo
hg-repos-18: 64.46% downloaded, 1.10% errors, 34.44% todo
hg-repos-19: 20.84% downloaded, 0.20% errors, 78.96% todo
hg-repos-20: 59.69% downloaded, 0.49% errors, 39.82% todo
hg-repos-21: 99.81% downloaded, 0.19% errors, 0.00% todo
hg-repos-24: 0.08% downloaded, 0.04% errors, 99.88% todo


Been some stopping and starting as I've needed to rearrange data (and trying to get SSH working yesterday). Advantage is the repos are being checked multiple times (for data already downloaded).
Found some space on another HDD to get 2 more repos going (05/24).
As soon as 07 is finished I can begin to upload 07 & 21 and start another 2 repos. edit:Done and uploading

I can add a user to my gsuite account (for a month or 2) if a central host is appealing and needed. Not sure if google will like multiple IP's uploading on the one user account, but I guess there's only one way to find out. There's a documented 1TB space per user, but in practice it's unlimited.

edit: 37 Mbps (actual) upload = 15GB / hour. This will take some time.
Title: Re: Bitbucket set to remove Mercurial support
Post by: kitor on June 20, 2020, 11:01:53 AM
Since they were no updates lately:

hg-repos-17: 96.80% downloaded, 3.20% errors, 0.00% todo
hg-repos-18: 91.07% downloaded, 1.72% errors, 7.21% todo
hg-repos-19: 72.30% downloaded, 0.69% errors, 27.01% todo
hg-repos-22: 40.85% downloaded, 0.48% errors, 58.67% todo
hg-repos-23: 44.74% downloaded, 0.68% errors, 54.58% todo
hg-repos-24: 94.37% downloaded, 5.63% errors, 0.00% todo

17, 24 already run twice. ~1.5TB at the moment.

hg-repos-20: 99.31% downloaded, 0.69% errors, 0.00% todo
hg-repos-21: 99.87% downloaded, 0.13% errors, 0.00% todo
hg-repos-22: 43.59% downloaded, 0.24% errors, 56.17% todo
hg-repos-23: 40.28% downloaded, 0.34% errors, 59.38% todo

20,21 already run twice. This one is 850GB at the moment.

Just note that they overlap as I'm downloading two copies of 22 and 23 in two locations. And they seems to be much bigger that surrounding ones ;)
Title: Re: Bitbucket set to remove Mercurial support
Post by: Audionut on June 20, 2020, 01:47:35 PM
i'm here:

hg-repos-05: 37.86% downloaded, 3.05% errors, 59.09% todo
hg-repos-07: 92.83% downloaded, 7.17% errors, 0.00% todo
hg-repos-13: 94.49% downloaded, 5.51% errors, 0.00% todo
hg-repos-17: 97.09% downloaded, 2.91% errors, 0.00% todo
hg-repos-18: 67.72% downloaded, 1.16% errors, 31.12% todo
hg-repos-19: 58.56% downloaded, 0.46% errors, 40.98% todo
hg-repos-20: 99.33% downloaded, 0.67% errors, 0.00% todo
hg-repos-21: 99.81% downloaded, 0.19% errors, 0.00% todo
hg-repos-24: 47.42% downloaded, 0.71% errors, 51.87% todo


My issue atm is this:
(https://i.postimg.cc/5y1xVv2c/progress.png)

Don't be fooled by the number of items remaining, windows is still counting the total number of items.

I tried zipping the folder up, got 18 hrs in (50%) and the linked online drive disconnected.  ::)
Google file sync opens a good number of connections, but given the small size of most of the files the upload speed is still limited.
I need to find some way to select the content of the top folder and individually compress each folder within the top folder. That will give me some redundancy from a crash, and increase the size of the files being uploaded which will increase the overall upload speed. Otherwise I'm going to be limited to how many more repo sets I can get in the next 10 days.

I'll be able to finish what I've got going, but otherwise I'm effectively out of HDD space until data is uploaded.
Title: Re: Bitbucket set to remove Mercurial support
Post by: kitor on June 20, 2020, 03:43:16 PM
Don't move them this way. It will take forever due to IOPS, even on local drives.

My take would be - create tarball of each repo (tar cf repo.tar ./repo) and then move it. It takes a moment (as there's no compression involved), and now you operate on 1 file per repo instead of who knows how many.

After that you can compress it (or compress directly to tar gz via tar czf repo.tgz ./repo), and then upload it somewhere.
Title: Re: Bitbucket set to remove Mercurial support
Post by: names_are_hard on June 20, 2020, 04:02:13 PM
There's two things going on here.  OS and drives will bundle IOPS, don't worry about that too much - using tar or zip with no compression will help as kitor says, but: Windows Explorer is dog slow.  You will find that with operations on many small files, using cmd is much faster.  Sometimes 100x or more.

Use cmd for the move and it will work in a reasonable time.
Title: Re: Bitbucket set to remove Mercurial support
Post by: kitor on June 20, 2020, 04:18:57 PM
QuoteOS and drives will bundle IOPS,
Locally yes, but there's still FS overhead on dealing with every single file.

My experience with moving huge number of files over network is always: tar, move, untar :) And having archive per repo will make uploading easier.
Title: Re: Bitbucket set to remove Mercurial support
Post by: names_are_hard on June 20, 2020, 05:44:59 PM
It definitely helps.  But I'd bet Windows Explorer is the real bottleneck here.  I've been burned by that before when dealing with large numbers of small files.  It's really impressively slow!  Audionut may not have tar since they're on Windows.
Title: Re: Bitbucket set to remove Mercurial support
Post by: kitor on June 21, 2020, 09:31:22 PM
Tight fit  8)
Sun Jun 21 19:48:10 UTC 2020
hg-repos-20: 99.34% downloaded, 0.66% errors, 0.00% todo
hg-repos-21: 99.87% downloaded, 0.13% errors, 0.00% todo
hg-repos-22: 99.33% downloaded, 0.67% errors, 0.00% todo
hg-repos-23: 99.16% downloaded, 0.84% errors, 0.00% todo
/dev/sda1                         1.4T  1.3T  3.2G 100% /data

So it's time to start compressing those. I'll check a few ideas tomorrow.

On primary I was doing some maintenance work today (new switch and ups) so progress is slower:
hg-repos-17: 96.80% downloaded, 3.20% errors, 0.00% todo
hg-repos-18: 98.43% downloaded, 1.57% errors, 0.00% todo
hg-repos-19: 80.59% downloaded, 0.65% errors, 18.76% todo
hg-repos-22: 48.16% downloaded, 0.30% errors, 51.54% todo
hg-repos-23: 65.91% downloaded, 0.55% errors, 33.54% todo
hg-repos-24: 94.37% downloaded, 5.63% errors, 0.00% todo

But since I got 22 and 23 already on 2nd, I prioritized 19 there for now.

I also asked a friend of mine that has a lot of free space + gigabit enterprise connection in DC to help. He's trying to download everything before deadline 8)
Title: Re: Bitbucket set to remove Mercurial support
Post by: critix on June 23, 2020, 08:07:20 PM
Ok ... what do we do with what was downloaded? I had 5 and 6. It's about 250G. What are the next steps? Thank you
Title: Re: Bitbucket set to remove Mercurial support
Post by: kitor on June 24, 2020, 07:41:22 PM
hg-repos-17: 96.80% downloaded, 3.20% errors, 0.00% todo
hg-repos-18: 98.43% downloaded, 1.57% errors, 0.00% todo
hg-repos-19: 99.28% downloaded, 0.72% errors, 0.00% todo
hg-repos-22: 99.25% downloaded, 0.75% errors, 0.00% todo
hg-repos-23: 99.10% downloaded, 0.90% errors, 0.00% todo
hg-repos-24: 94.37% downloaded, 5.63% errors, 0.00% todo

I need to rsync both locations now.

Title: Re: Bitbucket set to remove Mercurial support
Post by: reddeercity on June 27, 2020, 03:17:34 AM
Checking out my bitbucket account and notice all the branches are all in compressed download files like Zip etc. ...  :o

(https://i.ibb.co/q5mBxZs/bitbucket-cropped.png) (https://ibb.co/zJPsNkR)

Just wondering if my download will disappear e.g. crop_rec builds for 5d2/50d ?
and will these branch zip file disappear also ?

Downloaded branches that I need to continue on with d4 dev , since I don't know where the branch source files will live at .
Title: Re: Bitbucket set to remove Mercurial support
Post by: a1ex on June 27, 2020, 11:13:26 AM
Quote from: reddeercity on June 27, 2020, 03:17:34 AM
Just wondering if my download will disappear e.g. crop_rec builds for 5d2/50d ?

Yes, I'm afraid everything will be deleted.

I have backed up the main ML repository and all of its forks, including yours - but only the source code, i.e. hg clone. That doesn't include the downloads and other metadata, such as commit comments, issues, pull requests and so on. Well, I still have a thread on the ML server attempting to download all of these things from the forks, but it barely reached 10% in ~ 2 weeks...

Please find the archive with all ML forks, here: ml-repos.tar.xz (https://a1ex.magiclantern.fm/bitbucket-mercurial-archive/ml-repos.tar.xz)

That doesn't include related projects, such as ml-focus-pixels, switch and others; these will be hopefully covered by the full archive.

I have run today a "hg pull" for each of these ML forks, just in case any changes were committed recently; nothing found:

for f in */*; do cd $f; echo $f; hg pull; cd -; done

0th4rw4/magic-lantern
pulling from https://bitbucket.org/0th4rw4/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
0xAF/magic-lantern-5dc-port-wip
pulling from https://bitbucket.org/0xAF/magic-lantern-5dc-port-wip
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
600dplus/magic-lantern-5dc-port-wip-updated
pulling from https://bitbucket.org/600dplus/magic-lantern-5dc-port-wip-updated
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
600dplus/magic-lantern-5dc-update-from-0xaf-wip
pulling from https://bitbucket.org/600dplus/magic-lantern-5dc-update-from-0xaf-wip
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
600dplus/magic-lantern-600d-60d-1100d-memcheck
pulling from https://bitbucket.org/600dplus/magic-lantern-600d-60d-1100d-memcheck
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
600dplus/magic-lantern-600d-flexinfo
pulling from https://bitbucket.org/600dplus/magic-lantern-600d-flexinfo
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
600dplus/magic-lantern-600d-photoinfodisp
pulling from https://bitbucket.org/600dplus/magic-lantern-600d-photoinfodisp
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
600dplus/magic-lantern-600d-raw-feat
pulling from https://bitbucket.org/600dplus/magic-lantern-600d-raw-feat
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
600dplus/magic-lantern-auto-audio-override
pulling from https://bitbucket.org/600dplus/magic-lantern-auto-audio-override
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
600dplus/magiclantern_eyefi_trick_cleanup
pulling from https://bitbucket.org/600dplus/magiclantern_eyefi_trick_cleanup
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
600dplus/magic-lantern-features_custom_modes
pulling from https://bitbucket.org/600dplus/magic-lantern-features_custom_modes
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
600dplus/magic-lantern-finding-flash-prop
pulling from https://bitbucket.org/600dplus/magic-lantern-finding-flash-prop
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
600dplus/magic-lantern-fix
pulling from https://bitbucket.org/600dplus/magic-lantern-fix
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
600dplus/magic-lantern-fixes
pulling from https://bitbucket.org/600dplus/magic-lantern-fixes
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
600dplus/magic-lantern-for-600d
pulling from https://bitbucket.org/600dplus/magic-lantern-for-600d
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
600dplus/magic-lantern-for-600d_old
pulling from https://bitbucket.org/600dplus/magic-lantern-for-600d_old
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
600dplus/magic-lantern-menu-shortcuts
pulling from https://bitbucket.org/600dplus/magic-lantern-menu-shortcuts
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
a1ex/magic-lantern
pulling from https://bitbucket.org/a1ex/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
a1ex/magic-lantern-dual-iso-preview
pulling from https://bitbucket.org/a1ex/magic-lantern-dual-iso-preview
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
a1ex/ml
pulling from https://bitbucket.org/a1ex/ml
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
adambernacki10/magic-lantern
pulling from https://bitbucket.org/adambernacki10/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
adijiwa/magic-lantern-for-500d
pulling from https://bitbucket.org/adijiwa/magic-lantern-for-500d
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
aham1234/magic-lantern
pulling from https://bitbucket.org/aham1234/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
ak_ss/magic-lantern
pulling from https://bitbucket.org/ak_ss/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
alessiocredendino/magic-lantern
pulling from https://bitbucket.org/alessiocredendino/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
alextutubalin/magic-lantern
pulling from https://bitbucket.org/alextutubalin/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
alins/magic-lantern-for-500d
pulling from https://bitbucket.org/alins/magic-lantern-for-500d
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
aluker/magic-lantern
pulling from https://bitbucket.org/aluker/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
am2rican5/magic-lantern
pulling from https://bitbucket.org/am2rican5/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
andreasb242/magic-lantern
pulling from https://bitbucket.org/andreasb242/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
andreykuban/magic-lantern
pulling from https://bitbucket.org/andreykuban/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
andum1/magic-lantern
pulling from https://bitbucket.org/andum1/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
andy600/andy50d2
pulling from https://bitbucket.org/andy600/andy50d2
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
andy600/magic-lantern
pulling from https://bitbucket.org/andy600/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
andy600/ml
pulling from https://bitbucket.org/andy600/ml
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
andy600/tl50d
pulling from https://bitbucket.org/andy600/tl50d
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
anDyIII/magic-lantern
pulling from https://bitbucket.org/anDyIII/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
anhhung1303/magic-lantern
pulling from https://bitbucket.org/anhhung1303/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
Ant123/magic-lantern-1
pulling from https://bitbucket.org/Ant123/magic-lantern-1
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
anthony_molesphini/tragic-lantern-6d
pulling from https://bitbucket.org/anthony_molesphini/tragic-lantern-6d
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
apchen_stu/magic-lantern
pulling from https://bitbucket.org/apchen_stu/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
aprofiti/magic-lantern
pulling from https://bitbucket.org/aprofiti/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
arcxyz/magic-lantern-eos-1100d
pulling from https://bitbucket.org/arcxyz/magic-lantern-eos-1100d
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
ArcziPL/crop_rec_70d
pulling from https://bitbucket.org/ArcziPL/crop_rec_70d
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
ArcziPL/lossless_70d
pulling from https://bitbucket.org/ArcziPL/lossless_70d
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
arm_indy/magic-lantern-for-600d-t3i
pulling from https://bitbucket.org/arm_indy/magic-lantern-for-600d-t3i
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
arm_indy/magic-lantern-for-60d
pulling from https://bitbucket.org/arm_indy/magic-lantern-for-60d
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
Audionut/autoexpo
pulling from https://bitbucket.org/Audionut/autoexpo
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
Audionut/cleanup
pulling from https://bitbucket.org/Audionut/cleanup
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
Audionut/debug-lossless
pulling from https://bitbucket.org/Audionut/debug-lossless
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
Audionut/magic-lantern
pulling from https://bitbucket.org/Audionut/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
Audionut/ml1
pulling from https://bitbucket.org/Audionut/ml1
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
Audionut/ml-fork
pulling from https://bitbucket.org/Audionut/ml-fork
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
Audionut/mlv
pulling from https://bitbucket.org/Audionut/mlv
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
Audionut/test
pulling from https://bitbucket.org/Audionut/test
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
Audionut/user-builds
pulling from https://bitbucket.org/Audionut/user-builds
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
ayshih/magic-lantern-50d
pulling from https://bitbucket.org/ayshih/magic-lantern-50d
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
bagaric/magic-lantern
pulling from https://bitbucket.org/bagaric/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
baldand/baldand-7d-magic-lantern
pulling from https://bitbucket.org/baldand/baldand-7d-magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
barbara_brockhauser/tragic-lantern-2.0
pulling from https://bitbucket.org/barbara_brockhauser/tragic-lantern-2.0
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
bennir/magic-lantern
pulling from https://bitbucket.org/bennir/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
berlincount/magic-lantern-old
pulling from https://bitbucket.org/berlincount/magic-lantern-old
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
berlincount/ml-100d-old
pulling from https://bitbucket.org/berlincount/ml-100d-old
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
bilal_fakhouri/magic-lantern-1
pulling from https://bitbucket.org/bilal_fakhouri/magic-lantern-1
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
bilal_fakhouri/magic-lantern-2
pulling from https://bitbucket.org/bilal_fakhouri/magic-lantern-2
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
blinkythebear/1200d_new
pulling from https://bitbucket.org/blinkythebear/1200d_new
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
blubbblubb/magic-lantern
pulling from https://bitbucket.org/blubbblubb/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
bouncyball/mlv_dump-fixes
pulling from https://bitbucket.org/bouncyball/mlv_dump-fixes
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
BrianPrz/magic-lantern
pulling from https://bitbucket.org/BrianPrz/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
BrianPrz/tragic-lantern-2.0
pulling from https://bitbucket.org/BrianPrz/tragic-lantern-2.0
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
brisma_meihar_arsandi/brismaarsandi
pulling from https://bitbucket.org/brisma_meihar_arsandi/brismaarsandi
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
buttbucket/magic-lantern
pulling from https://bitbucket.org/buttbucket/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
bwaggo/magic-lantern
pulling from https://bitbucket.org/bwaggo/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
calle2010/magic-lantern-77d
pulling from https://bitbucket.org/calle2010/magic-lantern-77d
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
calle2010/obsolete-magic-lantern
pulling from https://bitbucket.org/calle2010/obsolete-magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
canon_amateur/magic-lantern
pulling from https://bitbucket.org/canon_amateur/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
carlosigcimd/magic-lantern
pulling from https://bitbucket.org/carlosigcimd/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
cbob/magic-lantern
pulling from https://bitbucket.org/cbob/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
ccritix/magic-lantern
pulling from https://bitbucket.org/ccritix/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
ccritix/magic-lantern-200d
pulling from https://bitbucket.org/ccritix/magic-lantern-200d
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
ccritix/magic-lantern-card-fmt
pulling from https://bitbucket.org/ccritix/magic-lantern-card-fmt
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
ccritix/magic-lantern-old
pulling from https://bitbucket.org/ccritix/magic-lantern-old
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
chrisball/magic-lantern
pulling from https://bitbucket.org/chrisball/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
chris_miller/ml-5d3-133
pulling from https://bitbucket.org/chris_miller/ml-5d3-133
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
chris_miller/ml-fork
pulling from https://bitbucket.org/chris_miller/ml-fork
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
circuitman/magic-lantern
pulling from https://bitbucket.org/circuitman/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
Clark_Kent_/magic-lantern
pulling from https://bitbucket.org/Clark_Kent_/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
CMatters/magic-lantern
pulling from https://bitbucket.org/CMatters/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
co_ikebanat/magic-lantern
pulling from https://bitbucket.org/co_ikebanat/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
coutts/magic-lantern
pulling from https://bitbucket.org/coutts/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
csghone/magic-lantern
pulling from https://bitbucket.org/csghone/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
Cuntstructor/magic-lantern
pulling from https://bitbucket.org/Cuntstructor/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
Dan0974/magic-lantern
pulling from https://bitbucket.org/Dan0974/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
daniel_fort/magic-lantern
pulling from https://bitbucket.org/daniel_fort/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
daniel_fort/magic-lantern-danne-fork
pulling from https://bitbucket.org/daniel_fort/magic-lantern-danne-fork
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
daniel_fort/ml-cmos-cal
pulling from https://bitbucket.org/daniel_fort/ml-cmos-cal
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
danilaswift/magic-lantern
pulling from https://bitbucket.org/danilaswift/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
Dannephoto/magic-lantern
pulling from https://bitbucket.org/Dannephoto/magic-lantern
searching for changes
adding changesets
adding manifests
adding file changes
added 2 changesets with 2 changes to 2 files
new changesets 015223ce0294:33986ed2ec4c
(run 'hg update' to get a working copy)
/bigdata/bitbucket-ml-archive
Dannephoto/magic-lantern_critix
pulling from https://bitbucket.org/Dannephoto/magic-lantern_critix
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
Dannephoto/magic-lantern_dfort
pulling from https://bitbucket.org/Dannephoto/magic-lantern_dfort
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
Dannephoto/magic-lantern-erwinh
pulling from https://bitbucket.org/Dannephoto/magic-lantern-erwinh
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
Dannephoto/magic-lantern_es_as
pulling from https://bitbucket.org/Dannephoto/magic-lantern_es_as
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
Dannephoto/magic-lantern_jip-hop
pulling from https://bitbucket.org/Dannephoto/magic-lantern_jip-hop
searching for changes
adding changesets
adding manifests
adding file changes
added 1 changesets with 1 changes to 1 files
new changesets 65211affb27b
(run 'hg update' to get a working copy)
/bigdata/bitbucket-ml-archive
Dannephoto/magic-lantern_nikfreak
pulling from https://bitbucket.org/Dannephoto/magic-lantern_nikfreak
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
Dannephoto/magic-lantern_waza57
pulling from https://bitbucket.org/Dannephoto/magic-lantern_waza57
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
Dannephoto/ml-cmos-cal
pulling from https://bitbucket.org/Dannephoto/ml-cmos-cal
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
Dasa36/magic-lantern
pulling from https://bitbucket.org/Dasa36/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
datadogie/tragic-lantern-2.0
pulling from https://bitbucket.org/datadogie/tragic-lantern-2.0
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
Dave_Raynor/magic-lantern
pulling from https://bitbucket.org/Dave_Raynor/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
dbaleckaitis/magic-lantern
pulling from https://bitbucket.org/dbaleckaitis/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
DeafEyeJedi/magic-lantern
pulling from https://bitbucket.org/DeafEyeJedi/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
debmalyaroy/magic-lantern
pulling from https://bitbucket.org/debmalyaroy/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
DennisNeumann/magic-lantern
pulling from https://bitbucket.org/DennisNeumann/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
deti/magic-lantern
pulling from https://bitbucket.org/deti/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
dhilung/magic-lantern
pulling from https://bitbucket.org/dhilung/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
DieHertz/magic-lantern
pulling from https://bitbucket.org/DieHertz/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
dietsche/magic-lantern
pulling from https://bitbucket.org/dietsche/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
dingolina/magic-lantern-learn
pulling from https://bitbucket.org/dingolina/magic-lantern-learn
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
dinkin/magic-lantern
pulling from https://bitbucket.org/dinkin/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
dinkin/magiclantern
pulling from https://bitbucket.org/dinkin/magiclantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
DirkHussen/magic-lantern
pulling from https://bitbucket.org/DirkHussen/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
dlrpgmsvc/magic-lantern-ok
pulling from https://bitbucket.org/dlrpgmsvc/magic-lantern-ok
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
dmgerman/ml
pulling from https://bitbucket.org/dmgerman/ml
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
dmilligan/magic-lantern
pulling from https://bitbucket.org/dmilligan/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
dnlit/magic-lantern
pulling from https://bitbucket.org/dnlit/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
dnlit/magic-lantern-1
pulling from https://bitbucket.org/dnlit/magic-lantern-1
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
dpjpandone/dpjpandone-eosm-fixes
pulling from https://bitbucket.org/dpjpandone/dpjpandone-eosm-fixes
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
dpjpandone/eos-m-dpjpandone
pulling from https://bitbucket.org/dpjpandone/eos-m-dpjpandone
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
dpjpandone/magic-lantern
pulling from https://bitbucket.org/dpjpandone/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
dpjpandone/magic-lantern-1
pulling from https://bitbucket.org/dpjpandone/magic-lantern-1
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
dpjpandone/magic-lantern-2
pulling from https://bitbucket.org/dpjpandone/magic-lantern-2
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
dpjpandone/magic-lantern-3
pulling from https://bitbucket.org/dpjpandone/magic-lantern-3
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
drevilish/magic-lantern
pulling from https://bitbucket.org/drevilish/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
drewcollins/magic-lantern-dc
pulling from https://bitbucket.org/drewcollins/magic-lantern-dc
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
drlapser/magic-lantern
pulling from https://bitbucket.org/drlapser/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
EdK/tragic-lantern-6d
pulling from https://bitbucket.org/EdK/tragic-lantern-6d
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
ehoutsma/magic-lantern
pulling from https://bitbucket.org/ehoutsma/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
emc/magic-lantern
pulling from https://bitbucket.org/emc/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
emklap/magic-lantern
pulling from https://bitbucket.org/emklap/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
eNnvi/magic-lantern
pulling from https://bitbucket.org/eNnvi/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
Eosm_Dev/magic-lantern
pulling from https://bitbucket.org/Eosm_Dev/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
error454/magic-lantern
pulling from https://bitbucket.org/error454/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
es_as/magic-lantern
pulling from https://bitbucket.org/es_as/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
escho/escho-magiclantern
pulling from https://bitbucket.org/escho/escho-magiclantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
everest20/magic-lantern
pulling from https://bitbucket.org/everest20/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
ewinemiller/magic-lantern
pulling from https://bitbucket.org/ewinemiller/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
FabiLAP/magic-lantern
pulling from https://bitbucket.org/FabiLAP/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
fabiomoreira716/magic-lantern
pulling from https://bitbucket.org/fabiomoreira716/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
felipe0328/magic-lantern
pulling from https://bitbucket.org/felipe0328/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
feureau/magic-lantern
pulling from https://bitbucket.org/feureau/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
feureau/tragic-lantern-6d
pulling from https://bitbucket.org/feureau/tragic-lantern-6d
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
fgodfrey/magic-lantern-eosm-2.0.3
pulling from https://bitbucket.org/fgodfrey/magic-lantern-eosm-2.0.3
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
fjriosp/1200d-dev
pulling from https://bitbucket.org/fjriosp/1200d-dev
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
flameeyes/magic-lantern
pulling from https://bitbucket.org/flameeyes/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
flykeysky/magic-lantern
pulling from https://bitbucket.org/flykeysky/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
frantony/magic-lantern.check-bot
pulling from https://bitbucket.org/frantony/magic-lantern.check-bot
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
frantony/magic-lantern.checkpatch
pulling from https://bitbucket.org/frantony/magic-lantern.checkpatch
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
frantony/magic-lantern.makeall
pulling from https://bitbucket.org/frantony/magic-lantern.makeall
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
freelyfree/cigam-nretnal
pulling from https://bitbucket.org/freelyfree/cigam-nretnal
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
frenchiefilms/phil
pulling from https://bitbucket.org/frenchiefilms/phil
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
g3gg0/magic-lantern-mlv
pulling from https://bitbucket.org/g3gg0/magic-lantern-mlv
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
g3gg0/magic-lantern-mlv_rec
pulling from https://bitbucket.org/g3gg0/magic-lantern-mlv_rec
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
g3gg0/magic-lantern-module-hgdiff
pulling from https://bitbucket.org/g3gg0/magic-lantern-module-hgdiff
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
g3gg0/magic-lantern-plot
pulling from https://bitbucket.org/g3gg0/magic-lantern-plot
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
g3gg0/to-be-deleted
pulling from https://bitbucket.org/g3gg0/to-be-deleted
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
garry23/colour-warnings-with-dof
pulling from https://bitbucket.org/garry23/colour-warnings-with-dof
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
garry23/depth-of-field-with-diffraction
pulling from https://bitbucket.org/garry23/depth-of-field-with-diffraction
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
garry23/dof-changes-to-focus.c
pulling from https://bitbucket.org/garry23/dof-changes-to-focus.c
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
garry23/dof-fix-for-focus.c
pulling from https://bitbucket.org/garry23/dof-fix-for-focus.c
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
garry23/dof-focus.c-fix
pulling from https://bitbucket.org/garry23/dof-focus.c-fix
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
garry23/final-dof
pulling from https://bitbucket.org/garry23/final-dof
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
garry23/focus.c-dof-fix
pulling from https://bitbucket.org/garry23/focus.c-dof-fix
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
geojeff/magic-lantern
pulling from https://bitbucket.org/geojeff/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
George-Thurman/magic-lantern-stripped-and-confused
pulling from https://bitbucket.org/George-Thurman/magic-lantern-stripped-and-confused
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
gertoe/magic-lantern
pulling from https://bitbucket.org/gertoe/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
ggjjl1/magic-lantern
pulling from https://bitbucket.org/ggjjl1/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
gheja/magic-lantern-gheja-dev
pulling from https://bitbucket.org/gheja/magic-lantern-gheja-dev
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
gmanfredax/magic-lantern
pulling from https://bitbucket.org/gmanfredax/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
golem72/magic-lantern-frsp
pulling from https://bitbucket.org/golem72/magic-lantern-frsp
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
Gr3g01/ml-cmos-cal
pulling from https://bitbucket.org/Gr3g01/ml-cmos-cal
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
greenbox/magic-lantern
pulling from https://bitbucket.org/greenbox/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
gregausina/magic-lantern
pulling from https://bitbucket.org/gregausina/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
GregoryOfManhattan/magic-lantern
pulling from https://bitbucket.org/GregoryOfManhattan/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
GregoryOfManhattan/tragic-lantern-6d
pulling from https://bitbucket.org/GregoryOfManhattan/tragic-lantern-6d
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
grishkavideo/tragic-lantern-2.0
pulling from https://bitbucket.org/grishkavideo/tragic-lantern-2.0
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
guang_feng_ren/magic-lantern
pulling from https://bitbucket.org/guang_feng_ren/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
guysmilez/magic-lantern
pulling from https://bitbucket.org/guysmilez/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
gyedafe/magic-lantern
pulling from https://bitbucket.org/gyedafe/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
HalSup/magic-lantern
pulling from https://bitbucket.org/HalSup/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
hicom150/magic-lantern
pulling from https://bitbucket.org/hicom150/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
HilliBilli/magic-lantern
pulling from https://bitbucket.org/HilliBilli/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
hjdaniel_sun/tragic-lantern-6d
pulling from https://bitbucket.org/hjdaniel_sun/tragic-lantern-6d
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
HKServ/magic-lantern-hksfork
pulling from https://bitbucket.org/HKServ/magic-lantern-hksfork
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
HKServ/magic-lantern-notcc-hksfork
pulling from https://bitbucket.org/HKServ/magic-lantern-notcc-hksfork
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
holicowdev/magic-lantern
pulling from https://bitbucket.org/holicowdev/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
homerobono/magic-lantern
pulling from https://bitbucket.org/homerobono/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
hope_young/magic-lantern
pulling from https://bitbucket.org/hope_young/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
houssi4ever/magic-lantern
pulling from https://bitbucket.org/houssi4ever/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
hudson/magic-lantern
pulling from https://bitbucket.org/hudson/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
hulasamsquanch/magic-lantern
pulling from https://bitbucket.org/hulasamsquanch/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
iancmcleod/magic-lantern
pulling from https://bitbucket.org/iancmcleod/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
ids1024/magic-lantern
pulling from https://bitbucket.org/ids1024/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
igor1111111/tragic-lantern-2.0
pulling from https://bitbucket.org/igor1111111/tragic-lantern-2.0
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
ilias_kotsovolos/magic-lantern
pulling from https://bitbucket.org/ilias_kotsovolos/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
iremar_junior/magic-lantern
pulling from https://bitbucket.org/iremar_junior/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
jacobbieker/magic-lantern
pulling from https://bitbucket.org/jacobbieker/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
jayspear/magic-lantern
pulling from https://bitbucket.org/jayspear/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
Jip-Hop/magic-lantern
pulling from https://bitbucket.org/Jip-Hop/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
jjwchoy/magic-lantern
pulling from https://bitbucket.org/jjwchoy/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
JLGW/magic-lantern
pulling from https://bitbucket.org/JLGW/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
j_l/magic-lantern
pulling from https://bitbucket.org/j_l/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
jmheder/vxworks_canon40d
pulling from https://bitbucket.org/jmheder/vxworks_canon40d
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
JohanVrn/ml
pulling from https://bitbucket.org/JohanVrn/ml
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
JohanVrn/ml_test
pulling from https://bitbucket.org/JohanVrn/ml_test
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
johncheshire/magic-lantern-fork
pulling from https://bitbucket.org/johncheshire/magic-lantern-fork
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
johnnyrun/magic-lantern
pulling from https://bitbucket.org/johnnyrun/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
jordancolburn/magic-lantern
pulling from https://bitbucket.org/jordancolburn/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
jordancolburn/magic-lantern-1
pulling from https://bitbucket.org/jordancolburn/magic-lantern-1
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
josepvm/magic-lantern
pulling from https://bitbucket.org/josepvm/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
josepvm/magic-lantern-1
pulling from https://bitbucket.org/josepvm/magic-lantern-1
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
josepvm/magic-lantern-2
pulling from https://bitbucket.org/josepvm/magic-lantern-2
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
jpaana/ml
pulling from https://bitbucket.org/jpaana/ml
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
jplxpto/magic-lantern
pulling from https://bitbucket.org/jplxpto/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
juuh42dias/magic-lantern
pulling from https://bitbucket.org/juuh42dias/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
jwkerr/magic-lantern
pulling from https://bitbucket.org/jwkerr/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
keith_clinton/magic-lantern
pulling from https://bitbucket.org/keith_clinton/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
kfprod/5d3-mlv_rec-naming
pulling from https://bitbucket.org/kfprod/5d3-mlv_rec-naming
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
kfprod/mlv_rec-exfat-naming-suggestion
pulling from https://bitbucket.org/kfprod/mlv_rec-exfat-naming-suggestion
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
kfullman/magic-lantern
pulling from https://bitbucket.org/kfullman/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
KholdStare/magic-lantern-unified-experiments
pulling from https://bitbucket.org/KholdStare/magic-lantern-unified-experiments
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
kichetof/magic-lantern
pulling from https://bitbucket.org/kichetof/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
kichetof/magic-lantern-1
pulling from https://bitbucket.org/kichetof/magic-lantern-1
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
kitchentowel/magic-lantern
pulling from https://bitbucket.org/kitchentowel/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
kitorPL/magic-lantern
pulling from https://bitbucket.org/kitorPL/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
knumat/magic-lantern
pulling from https://bitbucket.org/knumat/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
koenkooi/magic-lantern
pulling from https://bitbucket.org/koenkooi/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
kookiyoung/magic-lantern
pulling from https://bitbucket.org/kookiyoung/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
krashnik/magic-lantern
pulling from https://bitbucket.org/krashnik/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
kuhn90/magic-lantern
pulling from https://bitbucket.org/kuhn90/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
kunchenguid/magic-lantern
pulling from https://bitbucket.org/kunchenguid/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
kurt_selander/magic-lantern
pulling from https://bitbucket.org/kurt_selander/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
larssteenhoff/magic-lantern
pulling from https://bitbucket.org/larssteenhoff/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
LebedevRI/magic-lantern
pulling from https://bitbucket.org/LebedevRI/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
LeoYuanjieLi/magic-lantern
pulling from https://bitbucket.org/LeoYuanjieLi/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
Letshowgoes/magic-lantern
pulling from https://bitbucket.org/Letshowgoes/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
Levas_EOS/magic-lantern
pulling from https://bitbucket.org/Levas_EOS/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
Licaon_Kter/magic-lantern
pulling from https://bitbucket.org/Licaon_Kter/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
Licaon_Kter/magic-lantern-1
pulling from https://bitbucket.org/Licaon_Kter/magic-lantern-1
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
Licaon_Kter/magic-lantern-beta-info-button
pulling from https://bitbucket.org/Licaon_Kter/magic-lantern-beta-info-button
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
Licaon_Kter/magic-lantern-bulb_nd-info
pulling from https://bitbucket.org/Licaon_Kter/magic-lantern-bulb_nd-info
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
Licaon_Kter/magic-lantern-rec_ui_fix
pulling from https://bitbucket.org/Licaon_Kter/magic-lantern-rec_ui_fix
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
lumenmikie/magic-lantern
pulling from https://bitbucket.org/lumenmikie/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
lurnid/magic-lantern
pulling from https://bitbucket.org/lurnid/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
M1ke_M1ke/magic-lantern-m1ke-fork
pulling from https://bitbucket.org/M1ke_M1ke/magic-lantern-m1ke-fork
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
M1ke_M1ke/magic-lantern-m1ke-fork-2
pulling from https://bitbucket.org/M1ke_M1ke/magic-lantern-m1ke-fork-2
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
M1ke_M1ke/tragic-lantern-6d-m1ke-fork
pulling from https://bitbucket.org/M1ke_M1ke/tragic-lantern-6d-m1ke-fork
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
magiclantern/magic-lantern
pulling from https://bitbucket.org/magiclantern/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
maits18/magic-lantern-install-scrip5
pulling from https://bitbucket.org/maits18/magic-lantern-install-scrip5
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
maits18/summon-arm
pulling from https://bitbucket.org/maits18/summon-arm
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
Maqs/magic-lantern
pulling from https://bitbucket.org/Maqs/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
marceljuchelka/magic-lantern
pulling from https://bitbucket.org/marceljuchelka/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
marekk17/60d-silent-dng
pulling from https://bitbucket.org/marekk17/60d-silent-dng
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
marekk17/magic-lantern
pulling from https://bitbucket.org/marekk17/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
marekk17/magic-lantern-1
pulling from https://bitbucket.org/marekk17/magic-lantern-1
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
marekk17/magic-lantern-10
pulling from https://bitbucket.org/marekk17/magic-lantern-10
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
marekk17/magic-lantern-11
pulling from https://bitbucket.org/marekk17/magic-lantern-11
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
marekk17/magic-lantern-12
pulling from https://bitbucket.org/marekk17/magic-lantern-12
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
marekk17/magic-lantern-13
pulling from https://bitbucket.org/marekk17/magic-lantern-13
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
marekk17/magic-lantern-14
pulling from https://bitbucket.org/marekk17/magic-lantern-14
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
marekk17/magic-lantern-15
pulling from https://bitbucket.org/marekk17/magic-lantern-15
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
marekk17/magic-lantern-16
pulling from https://bitbucket.org/marekk17/magic-lantern-16
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
marekk17/magic-lantern-2
pulling from https://bitbucket.org/marekk17/magic-lantern-2
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
marekk17/magic-lantern-3
pulling from https://bitbucket.org/marekk17/magic-lantern-3
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
marekk17/magic-lantern-4
pulling from https://bitbucket.org/marekk17/magic-lantern-4
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
marekk17/magic-lantern-5
pulling from https://bitbucket.org/marekk17/magic-lantern-5
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
marekk17/magic-lantern-6
pulling from https://bitbucket.org/marekk17/magic-lantern-6
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
marekk17/magic-lantern-7
pulling from https://bitbucket.org/marekk17/magic-lantern-7
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
marekk17/magic-lantern-8
pulling from https://bitbucket.org/marekk17/magic-lantern-8
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
marekk17/magic-lantern-9
pulling from https://bitbucket.org/marekk17/magic-lantern-9
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
marekk17/ml123
pulling from https://bitbucket.org/marekk17/ml123
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
marekk17/ml_60d
pulling from https://bitbucket.org/marekk17/ml_60d
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
mario_pich/magic-lantern
pulling from https://bitbucket.org/mario_pich/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
MarsBlessed/magic-lantern
pulling from https://bitbucket.org/MarsBlessed/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
Marsu42/ml-pull
pulling from https://bitbucket.org/Marsu42/ml-pull
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
martinhering/magic-lantern
pulling from https://bitbucket.org/martinhering/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
matias82/1200d
pulling from https://bitbucket.org/matias82/1200d
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
matias82/magic-lantern
pulling from https://bitbucket.org/matias82/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
maxchen/magic-lantern
pulling from https://bitbucket.org/maxchen/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
maxchen/magic-lantern-unified
pulling from https://bitbucket.org/maxchen/magic-lantern-unified
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
maxotics/maxotics-fork-magic-lantern
pulling from https://bitbucket.org/maxotics/maxotics-fork-magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
MAX_XIE/magic-lantern
pulling from https://bitbucket.org/MAX_XIE/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
Mayocomplet/tragic-lantern-6d
pulling from https://bitbucket.org/Mayocomplet/tragic-lantern-6d
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
Mayocomplet/tragic-mayo-6d
pulling from https://bitbucket.org/Mayocomplet/tragic-mayo-6d
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
McGv/magic-lantern
pulling from https://bitbucket.org/McGv/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
mealcardga/magic-lantern
pulling from https://bitbucket.org/mealcardga/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
miguelbrito/magic-lantern
pulling from https://bitbucket.org/miguelbrito/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
miguelbrito/tragic-lantern-7d
pulling from https://bitbucket.org/miguelbrito/tragic-lantern-7d
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
milank/magic-lantern
pulling from https://bitbucket.org/milank/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
minimimi/magic-lantern-raw2dng_vc
pulling from https://bitbucket.org/minimimi/magic-lantern-raw2dng_vc
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
MisterGun/magic-lantern
pulling from https://bitbucket.org/MisterGun/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
mk11174/1200d
pulling from https://bitbucket.org/mk11174/1200d
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
mk11174/1200d_101
pulling from https://bitbucket.org/mk11174/1200d_101
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
mk11174/1200d_new
pulling from https://bitbucket.org/mk11174/1200d_new
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
mk11174/650d
pulling from https://bitbucket.org/mk11174/650d
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
mk11174/700d113
pulling from https://bitbucket.org/mk11174/700d113
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
mk11174/700d114
pulling from https://bitbucket.org/mk11174/700d114
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
mk11174/bolt_trigger
pulling from https://bitbucket.org/mk11174/bolt_trigger
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
mk11174/magic-lantern
pulling from https://bitbucket.org/mk11174/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
mk11174/magic-lantern-fullres
pulling from https://bitbucket.org/mk11174/magic-lantern-fullres
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
mk11174/magic-lantern-fullres2
pulling from https://bitbucket.org/mk11174/magic-lantern-fullres2
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
mk11174/magic-lantern-unified
pulling from https://bitbucket.org/mk11174/magic-lantern-unified
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
mk11174/menu_flickering
pulling from https://bitbucket.org/mk11174/menu_flickering
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
mk11174/t5i
pulling from https://bitbucket.org/mk11174/t5i
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
mk11174/t5i-backup
pulling from https://bitbucket.org/mk11174/t5i-backup
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
mkacvinsky/magic-lantern
pulling from https://bitbucket.org/mkacvinsky/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
mlvisit/magic-lantern
pulling from https://bitbucket.org/mlvisit/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
mofig/magic-lantern-mofig
pulling from https://bitbucket.org/mofig/magic-lantern-mofig
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
mofig/mofig-magic-lantern
pulling from https://bitbucket.org/mofig/mofig-magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
monograph/adding-space_left
pulling from https://bitbucket.org/monograph/adding-space_left
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
monograph/dof_display
pulling from https://bitbucket.org/monograph/dof_display
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
monograph/dof_display_development
pulling from https://bitbucket.org/monograph/dof_display_development
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
mothaibaphoto/crop_rec_4k_mlv_snd_fork
pulling from https://bitbucket.org/mothaibaphoto/crop_rec_4k_mlv_snd_fork
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
mothaibaphoto/magic_lantern_vold_fork
pulling from https://bitbucket.org/mothaibaphoto/magic_lantern_vold_fork
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
mr3wan/magic-lantern
pulling from https://bitbucket.org/mr3wan/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
mrcmraja/magic-lantern
pulling from https://bitbucket.org/mrcmraja/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
nagyistoce/baldand-7d-magic-lantern
pulling from https://bitbucket.org/nagyistoce/baldand-7d-magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
nagyistoce/magic-lantern
pulling from https://bitbucket.org/nagyistoce/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
nandoide/rec_plus
pulling from https://bitbucket.org/nandoide/rec_plus
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
nanomad/phil
pulling from https://bitbucket.org/nanomad/phil
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
nanomad/tragic-lantern-1100d
pulling from https://bitbucket.org/nanomad/tragic-lantern-1100d
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
nestor_cano/magic-lantern
pulling from https://bitbucket.org/nestor_cano/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
nikfreak/magic-lantern
pulling from https://bitbucket.org/nikfreak/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
nikfreak/ml
pulling from https://bitbucket.org/nikfreak/ml
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
nikfreak/ml-isoresearch
pulling from https://bitbucket.org/nikfreak/ml-isoresearch
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
nikil_ragav/magic-lantern
pulling from https://bitbucket.org/nikil_ragav/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
niklasRde/magic-lantern
pulling from https://bitbucket.org/niklasRde/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
niklastisk/magic-lantern
pulling from https://bitbucket.org/niklastisk/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
nmargono/magic-lantern
pulling from https://bitbucket.org/nmargono/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
noreboul/magic-lantern
pulling from https://bitbucket.org/noreboul/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
nviennot/magic-lantern
pulling from https://bitbucket.org/nviennot/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
nydahl98/magic-lantern
pulling from https://bitbucket.org/nydahl98/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
nydahl98/magic-lantern_danne
pulling from https://bitbucket.org/nydahl98/magic-lantern_danne
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
OliRi/magic-lantern
pulling from https://bitbucket.org/OliRi/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
OtherOnePercent/magic-lantern
pulling from https://bitbucket.org/OtherOnePercent/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
OtherOnePercent/tragic-lantern
pulling from https://bitbucket.org/OtherOnePercent/tragic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
OtherOnePercent/tragic-lantern-2.0
pulling from https://bitbucket.org/OtherOnePercent/tragic-lantern-2.0
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
OtherOnePercent/tragic-lantern-6d
pulling from https://bitbucket.org/OtherOnePercent/tragic-lantern-6d
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
pangliang/magic-lantern
pulling from https://bitbucket.org/pangliang/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
pankajc8726/magic-lantern
pulling from https://bitbucket.org/pankajc8726/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
PAPPPmAc/magic-lantern
pulling from https://bitbucket.org/PAPPPmAc/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
pbenco/magic-lantern
pulling from https://bitbucket.org/pbenco/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
pbernardi90/magic-lantern
pulling from https://bitbucket.org/pbernardi90/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
Pelican/7d203
pulling from https://bitbucket.org/Pelican/7d203
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
Pelican/7d.205
pulling from https://bitbucket.org/Pelican/7d.205
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
Pelican/magic-lantern
pulling from https://bitbucket.org/Pelican/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
Pelican/recovery
pulling from https://bitbucket.org/Pelican/recovery
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
Phaenomena/magic-lantern
pulling from https://bitbucket.org/Phaenomena/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
PhotoCat/magic-lantern
pulling from https://bitbucket.org/PhotoCat/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
piers92/magic-lantern
pulling from https://bitbucket.org/piers92/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
piersg/magic-lantern-pg-fooling
pulling from https://bitbucket.org/piersg/magic-lantern-pg-fooling
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
pravdomil/magic-lantern-hack
pulling from https://bitbucket.org/pravdomil/magic-lantern-hack
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
pravdomil/magic-lantern-lvexpo
pulling from https://bitbucket.org/pravdomil/magic-lantern-lvexpo
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
pravdomil/magic-lantern-sndcheck
pulling from https://bitbucket.org/pravdomil/magic-lantern-sndcheck
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
Q111Q/magic-lantern
pulling from https://bitbucket.org/Q111Q/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
qianc/magic-lantern
pulling from https://bitbucket.org/qianc/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
qmatrxp/magic-lantern
pulling from https://bitbucket.org/qmatrxp/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
qqluqq/magic-lantern
pulling from https://bitbucket.org/qqluqq/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
r3dsm0k3/magic-lantern
pulling from https://bitbucket.org/r3dsm0k3/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
racerxdl/magic-lantern
pulling from https://bitbucket.org/racerxdl/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
raeez/magic-lantern
pulling from https://bitbucket.org/raeez/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
rapido7097/magic-lantern-750d
pulling from https://bitbucket.org/rapido7097/magic-lantern-750d
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
raymondlo84/magic-lantern
pulling from https://bitbucket.org/raymondlo84/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
rbrune/magic-lantern
pulling from https://bitbucket.org/rbrune/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
rcdude/magic-lantern
pulling from https://bitbucket.org/rcdude/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
reddeercity/magic-lantern
pulling from https://bitbucket.org/reddeercity/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
reddeercity/magic-lantern_10-12bit
pulling from https://bitbucket.org/reddeercity/magic-lantern_10-12bit
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
reddeercity/magic-lantern_5d2-d4_4k-crop_rec
pulling from https://bitbucket.org/reddeercity/magic-lantern_5d2-d4_4k-crop_rec
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
reddeercity/magic-lantern-hack
pulling from https://bitbucket.org/reddeercity/magic-lantern-hack
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
reddeercity/magic-lantern_reddeercity_5d2-50d_4k-crop_rec
pulling from https://bitbucket.org/reddeercity/magic-lantern_reddeercity_5d2-50d_4k-crop_rec
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
roachhd/magic-lantern
pulling from https://bitbucket.org/roachhd/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
roaldfre/magic-lantern-for-500d
pulling from https://bitbucket.org/roaldfre/magic-lantern-for-500d
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
roaldfre/magic-lantern-unified
pulling from https://bitbucket.org/roaldfre/magic-lantern-unified
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
robin051/magic-lantern
pulling from https://bitbucket.org/robin051/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
romandvorak/magic-lantern-fork
pulling from https://bitbucket.org/romandvorak/magic-lantern-fork
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
rongjuan_xie/magic-lantern
pulling from https://bitbucket.org/rongjuan_xie/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
roshansoni/magic-lantern
pulling from https://bitbucket.org/roshansoni/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
rs68/magic-lantern-rolands-debuging-bricked-5d2
pulling from https://bitbucket.org/rs68/magic-lantern-rolands-debuging-bricked-5d2
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
rs68/magic-lantern-rolands-dm-spy-expriments-ros
pulling from https://bitbucket.org/rs68/magic-lantern-rolands-dm-spy-expriments-ros
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
rs68/magic-lantern-rs68-tests
pulling from https://bitbucket.org/rs68/magic-lantern-rs68-tests
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
rudison/magic-lantern
pulling from https://bitbucket.org/rudison/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
rufustfirefly/magic-lantern
pulling from https://bitbucket.org/rufustfirefly/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
rufustfirefly/magic-lantern-5d3
pulling from https://bitbucket.org/rufustfirefly/magic-lantern-5d3
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
sabujas/magic-lantern
pulling from https://bitbucket.org/sabujas/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
salsasepp/tragic-lantern-6d
pulling from https://bitbucket.org/salsasepp/tragic-lantern-6d
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
samontab/magic-lantern
pulling from https://bitbucket.org/samontab/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
samuel-carvalho/magic-lantern
pulling from https://bitbucket.org/samuel-carvalho/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
samuel-carvalho/magic-lantern-1
pulling from https://bitbucket.org/samuel-carvalho/magic-lantern-1
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
samuel-carvalho/magic-lantern-2
pulling from https://bitbucket.org/samuel-carvalho/magic-lantern-2
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
samuel-carvalho/magic-lantern-3
pulling from https://bitbucket.org/samuel-carvalho/magic-lantern-3
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
samuel-carvalho/magic-lantern-4
pulling from https://bitbucket.org/samuel-carvalho/magic-lantern-4
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
samuel-carvalho/magic-lantern-5
pulling from https://bitbucket.org/samuel-carvalho/magic-lantern-5
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
sblest/magic-lantern
pulling from https://bitbucket.org/sblest/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
sc1ence/magic-lantern
pulling from https://bitbucket.org/sc1ence/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
seed93/magic-lantern
pulling from https://bitbucket.org/seed93/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
sergiodelatorre/magic-lantern
pulling from https://bitbucket.org/sergiodelatorre/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
shadowfax/magic-lantern
pulling from https://bitbucket.org/shadowfax/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
Shiftx07/magic-lantern
pulling from https://bitbucket.org/Shiftx07/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
shorst/magic-lantern
pulling from https://bitbucket.org/shorst/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
shumonsaito/magic-lantern-holy-grail-hack
pulling from https://bitbucket.org/shumonsaito/magic-lantern-holy-grail-hack
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
simmsa/magic-lantern
pulling from https://bitbucket.org/simmsa/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
SinSpy/magic-lantern
pulling from https://bitbucket.org/SinSpy/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
SinusPi/magic-lantern-cr2hdr-append-suffix-support
pulling from https://bitbucket.org/SinusPi/magic-lantern-cr2hdr-append-suffix-support
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
sirleneeraphael_per_golo/raphael
pulling from https://bitbucket.org/sirleneeraphael_per_golo/raphael
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
sl0w0rm/magic-lantern-af-ptp
pulling from https://bitbucket.org/sl0w0rm/magic-lantern-af-ptp
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
Sleeperon/kirill
pulling from https://bitbucket.org/Sleeperon/kirill
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
smeangol/smeangols-sneaky-magic-lantern
pulling from https://bitbucket.org/smeangol/smeangols-sneaky-magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
smokegrafix/magic-lantern
pulling from https://bitbucket.org/smokegrafix/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
sodapopodalaigh/magic-lantern
pulling from https://bitbucket.org/sodapopodalaigh/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
sodapopodalaigh/magic-lanterns
pulling from https://bitbucket.org/sodapopodalaigh/magic-lanterns
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
sodapopodalaigh/my-magic-lantern
pulling from https://bitbucket.org/sodapopodalaigh/my-magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
sombree/magic-lantern
pulling from https://bitbucket.org/sombree/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
sombree/magic-lantern-1
pulling from https://bitbucket.org/sombree/magic-lantern-1
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
sonic74/magic-lantern
pulling from https://bitbucket.org/sonic74/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
spoonfly/magic-lantern
pulling from https://bitbucket.org/spoonfly/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
stealth_tramp/magic-lantern
pulling from https://bitbucket.org/stealth_tramp/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
stereozont/magic-lantern
pulling from https://bitbucket.org/stereozont/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
stevefal/magiclantern-mlvrec-video
pulling from https://bitbucket.org/stevefal/magiclantern-mlvrec-video
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
stevefal/magic-lantern-rawrec-cropmarks
pulling from https://bitbucket.org/stevefal/magic-lantern-rawrec-cropmarks
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
Sticks/magic-lantern-menu-system
pulling from https://bitbucket.org/Sticks/magic-lantern-menu-system
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
Sticks/magic-lantern-stickshack
pulling from https://bitbucket.org/Sticks/magic-lantern-stickshack
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
STNMPTWZero/magic-lantern
pulling from https://bitbucket.org/STNMPTWZero/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
sudharsh/magic-lantern
pulling from https://bitbucket.org/sudharsh/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
sundus2y/magic-lantern
pulling from https://bitbucket.org/sundus2y/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
supermaz/magic-lantern-maz-60d
pulling from https://bitbucket.org/supermaz/magic-lantern-maz-60d
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
SwaroopB/magic-lantern
pulling from https://bitbucket.org/SwaroopB/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
swinxx/ml_a
pulling from https://bitbucket.org/swinxx/ml_a
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
SydTHackerr/magic-lantern
pulling from https://bitbucket.org/SydTHackerr/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
sztupy/magic-lantern
pulling from https://bitbucket.org/sztupy/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
sztupy/magic-lantern-for-60d
pulling from https://bitbucket.org/sztupy/magic-lantern-for-60d
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
t3r4n/magic-lantern
pulling from https://bitbucket.org/t3r4n/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
Tafaube/magic-lantern
pulling from https://bitbucket.org/Tafaube/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
tecgen/magic-lantern
pulling from https://bitbucket.org/tecgen/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
tecgen/magic-lantern-old
pulling from https://bitbucket.org/tecgen/magic-lantern-old
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
teepean/magic-lantern
pulling from https://bitbucket.org/teepean/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
thenickdude/magic-lantern
pulling from https://bitbucket.org/thenickdude/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
tizzleh/magic-lantern
pulling from https://bitbucket.org/tizzleh/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
trsaunders/magic-lantern
pulling from https://bitbucket.org/trsaunders/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
ubbut/magic-lantern
pulling from https://bitbucket.org/ubbut/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
v8rrc/magic-lantern-1
pulling from https://bitbucket.org/v8rrc/magic-lantern-1
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
v8rrc/magic-lantern-v8rrc
pulling from https://bitbucket.org/v8rrc/magic-lantern-v8rrc
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
vance_lear/magic-lantern
pulling from https://bitbucket.org/vance_lear/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
vcrparts/magic-lantern-photobooth-hack
pulling from https://bitbucket.org/vcrparts/magic-lantern-photobooth-hack
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
vehnae/polar-alignment-for-magic-lantern
pulling from https://bitbucket.org/vehnae/polar-alignment-for-magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
VertigoPix/magic-lantern
pulling from https://bitbucket.org/VertigoPix/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
viniciusatique/magic-lantern_1
pulling from https://bitbucket.org/viniciusatique/magic-lantern_1
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
viniciusatique/magic-lantern-mymod
pulling from https://bitbucket.org/viniciusatique/magic-lantern-mymod
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
viniciusatique/movie-restart-5d3
pulling from https://bitbucket.org/viniciusatique/movie-restart-5d3
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
vinlyanimate/raw-60d-110
pulling from https://bitbucket.org/vinlyanimate/raw-60d-110
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
vinlyanimate/raw-6d
pulling from https://bitbucket.org/vinlyanimate/raw-6d
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
Vy7ka/magic-lantern
pulling from https://bitbucket.org/Vy7ka/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
vyskocil/magic-lantern-vyskocil
pulling from https://bitbucket.org/vyskocil/magic-lantern-vyskocil
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
waza57/magic-lantern
pulling from https://bitbucket.org/waza57/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
wildstray/magic-lantern
pulling from https://bitbucket.org/wildstray/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
Xav_L/magic-lantern
pulling from https://bitbucket.org/Xav_L/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
xlee2004/magic-lantern
pulling from https://bitbucket.org/xlee2004/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
xlee2004/magic-lantern-old
pulling from https://bitbucket.org/xlee2004/magic-lantern-old
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
YMP/magic-lantern-afma-improvement
pulling from https://bitbucket.org/YMP/magic-lantern-afma-improvement
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
YMP/magic-lantern-afma-improvement-1
pulling from https://bitbucket.org/YMP/magic-lantern-afma-improvement-1
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
Yongyuth-P/magic-lantern
pulling from https://bitbucket.org/Yongyuth-P/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
ziquan_xu/magic-lantern
pulling from https://bitbucket.org/ziquan_xu/magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
zloe/zloe-magic-lantern
pulling from https://bitbucket.org/zloe/zloe-magic-lantern
searching for changes
no changes found
/bigdata/bitbucket-ml-archive
⏱ 16m27s
Title: Re: Bitbucket set to remove Mercurial support
Post by: Danne on June 27, 2020, 11:30:26 AM
I did two pushes yesterday to my eosm and 5DIII forks/branches. Probably last before deletion.
I still have to go back to work and check my non related mercurial sources. Probably tomorrow...
Title: Re: Bitbucket set to remove Mercurial support
Post by: a1ex on June 27, 2020, 11:35:15 AM
Ah, right, they were captured according to the log, but I've missed them :D

Will update the archive, then.
Title: Re: Bitbucket set to remove Mercurial support
Post by: reddeercity on June 28, 2020, 05:12:06 AM
Thanks a1ex , downloaded the ml-repos.tar.xz
Un-compressing them right now 7zip says 18GB , tried with WinRar and it say the "ml-repos.tar.xz: The archive is corrupt"
Tested the archive with 7zip it says it's Ok , so I'll unzip it and if there a problem I will post . 
Title: Re: Bitbucket set to remove Mercurial support
Post by: 70MM13 on June 28, 2020, 04:55:13 PM
izarc is another good option for windows.  between it and 7zip pretty much everything is covered with strange files ;)
Title: Re: Bitbucket set to remove Mercurial support
Post by: a1ex on June 28, 2020, 07:31:50 PM
My status:


hg-repos-00: 91.25% downloaded, 8.75% errors, 0.00% todo, 2.93 MiB average
hg-repos-01: 92.40% downloaded, 7.60% errors, 0.00% todo, 4.14 MiB average
hg-repos-02: 92.09% downloaded, 7.91% errors, 0.00% todo, 6.79 MiB average
hg-repos-03: 93.59% downloaded, 6.41% errors, 0.00% todo, 8.35 MiB average
hg-repos-04: 93.96% downloaded, 6.04% errors, 0.00% todo, 12.55 MiB average

hg-repos-14: 93.68% downloaded, 6.32% errors, 0.00% todo, 15.26 MiB average
hg-repos-15: 94.70% downloaded, 5.30% errors, 0.00% todo, 20.36 MiB average
hg-repos-16: 84.20% downloaded, 6.64% errors, 9.16% todo, 20.95 MiB average


(I had to stop for a while, for lack of disk space and other reasons, but now I can download again at full speed)

From what I could tell, the current overall status is (edited):

00-04: complete (a1ex)
05-06: complete (critix)
07: complete (audionut)
08: complete (danne)
09: complete (a1ex)
10: complete (danne)
11-12: likely complete? (names_are_hard)
13: complete (audionut)
14-16: complete (a1ex)
17-24: complete (kitor), some doubled by audionut


If I've missed anything, or if there is any repo set that's going slower than expected, please let me know.

Then, I hope kitor can help me figure out how to collect the data from all the participants (uncompressed tar might be the fastest way?), compress all of the stuff (grouping by forks), decide what to do with very large repos (delete? strip huge files from their history?) and finally publish the archive :)

I'm also preparing a more complete archive of ML forks and related projects (all Mercurial repos from all users who have ML forks). That includes ml-focus-pixels, lr_cr2hdr, compiler, mlv_app_compiler, darkframes, 5dplus, walter_ml_tut and others, a few ML forks that were not identified by bitbucket-hg-exporter, and a bunch of unrelated projects. List (autogenerated), on top of the previous one (ml-forks (https://a1ex.magiclantern.fm/bitbucket-mercurial-archive/ml-forks)):

hg 600dplus/600dplus.bitbucket.org
hg 600dplus/magic-lantern600daudio
hg 600dplus/magic-lantern-things
hg a1ex/a1ex.bitbucket.io
hg a1ex/picoc-fork
hg a1ex/ufraw-mod
hg a1ex/uniform-exposure
hg a_d_/laboratory
hg a_d_/magic-lantern
hg alextutubalin/deeplight-copy
hg alextutubalin/ldapd-portable
hg alins/connector-eclipse
hg Ant123/magic-lantern
hg Ant123/magic-lantern-40d
hg Ant123/magic-lantern-uni
hg ArcziPL/magic-lantern
hg Audionut/dual-iso-ec
hg Audionut/lr_cr2hdr
hg berlincount/ml-100d
hg bilal_fakhouri/magic-lantern-crop_rec
hg blinkythebear/invertsaver
hg blinkythebear/multimonitorlogonwallpaper
hg bnvm/magic-lantern-1-1
hg bouncyball/mlv-tools
hg coutts/1000d_dev
hg coutts/5dplus
hg coutts/magic-lantern-500d
hg coutts/magic-lantern-aj-500d
hg daniel_fort/compiler
hg daniel_fort/ml-focus-pixels
hg Dannephoto/batch_mlv
hg Dannephoto/compiler
hg Dannephoto/darkframes
hg Dannephoto/hdrmerge_compiler
hg Dannephoto/lost
hg Dannephoto/lua_magic
hg Dannephoto/magic-lantern-merged
hg Dannephoto/magic-lantern_steroids
hg Dannephoto/ml-dng-dannephoto
hg Dannephoto/ml-focus-pixels-danne
hg Dannephoto/mlv_app_compiler
hg Dannephoto/mlv_dump_on_steroids_danne
hg Dannephoto/mlv-tools
hg Dannephoto/switch
hg Dannephoto/switch_gui
hg dhilung/netniyantrak
hg dietsche/carbon
hg dinkin/coin
hg EdK/aiaikido
hg EdK/codd
hg EdK/daspp
hg EdK/dmt
hg EdK/edk
hg EdK/edk.bitbucket.org
hg EdK/mm
hg EdK/notesapp
hg EdK/oms
hg EdK/recipes
hg EdK/sdsf
hg EdK/spex
hg EdK/sweetsuite
hg emc/orange
hg emc/python-edf
hg g3gg0/esp8266can
hg g3gg0/kraken-win32
hg g3gg0/mados
hg g3gg0/rx-fft
hg geojeff/js.tinymce
hg gertoe/uniform-exposure
hg ggjjl1/py-sdl2
hg gheja/early-ssh
hg greenbox/advanced-server-stats
hg greenbox/apprise-without-jquery
hg greenbox/bash-jump-sublime
hg greenbox/bearbox
hg greenbox/c-hidden-php
hg greenbox/crx-base
hg greenbox/di-helper
hg greenbox/ems-mails-tracking
hg greenbox/export-gdoc-drawings-crx
hg greenbox/hybrid-wordpress-plugin-slickr-flickr-wordpress-flickrmages
hg greenbox/indexed-link-count-checker
hg greenbox/jasmine-for-greasemonkey
hg greenbox/kii
hg greenbox/memproxy
hg greenbox/microframework
hg greenbox/mmframework
hg greenbox/m-shell-do-not-disturb
hg greenbox/m-shell-phone-call-logger
hg greenbox/m-shell-task-postpone
hg greenbox/m-shell-watcher
hg greenbox/myedb-class
hg greenbox/pastebin-code-executer
hg greenbox/plain-php-form
hg greenbox/pluginf
hg greenbox/portable-install
hg greenbox/pusdienas
hg greenbox/tcc-project
hg greenbox/tee-class
hg greenbox/vtiger-personal-budget-plan-model
hg greenbox/vtiger-seo-modules
hg greenbox/wordpress-nameday
hg greenbox/wordpress-plugin-twitter-comments
hg greenbox/workbot
hg greenbox/work-management-scripts
hg greenbox/worldsunrise.info
hg hudson/alphaclock
hg hudson/alphawatch
hg hudson/boxer
hg hudson/epilog
hg hudson/futurecrew
hg hudson/gameshow
hg hudson/gauge
hg hudson/iambic
hg hudson/inpulse
hg hudson/jacket
hg hudson/led-strip
hg hudson/midi
hg hudson/model100
hg hudson/pbw
hg hudson/pebble
hg hudson/prom
hg hudson/psk31
hg hudson/puma
hg hudson/rfid
hg hudson/servo
hg hudson/seven
hg hudson/spiflash
hg hudson/teletype
hg hudson/vectorscope
hg hudson/watches
hg jmheder/magic-lantern
hg kichetof/lr_cr2hdr
hg maclema/random-scripts
hg milank/magic-lantern-frsp-long-expo
hg milank/ml-frsp-long-expo
hg minimimi/ml-idc
hg monograph/space_left_development
hg nagyistoce/axcrypt-net
hg nagyistoce/binarmo-imebrajni
hg nagyistoce/binarno-imebra
hg nagyistoce/hachoir
hg nanomad/cluedocandc
hg nanomad/cv
hg nanomad/erl-mergesort
hg nanomad/ias-featurelocation
hg nanomad/ias-tabletennis
hg nanomad/java-chord
hg nanomad/ml-cbr-backend
hg nanomad/ml-site
hg nanomad/ngi-mud
hg nanomad/pyscola
hg nanomad/video-embed-for-ngi-forum
hg nanomad/vimrc
hg nanomad/wargame-ee-dat-unpacker
hg nikfreak/nikfreak.bitbucket.org
hg niklastisk/100d-testing
hg OtherOnePercent/600d-binaries
hg pravdomil/ml
hg qmatrxp/ryzomcore
hg r3dsm0k3/mobiledeviceaccess
hg roachhd/pygments-main
hg roaldfre/mitsuba
hg rufustfirefly/5dplus
hg SinusPi/lr_cr2hdr_sin
hg tecgen/framebuffer
hg teepean/pcem-msys2
hg up4/aaocean
hg up4/kettle_uber
hg WalterSchulz/lr_cr2hdr
hg WalterSchulz/walter_ml_tut
hg williamh/422toimage


Thanks everyone!
Title: Re: Bitbucket set to remove Mercurial support
Post by: Danne on June 28, 2020, 07:34:34 PM
Update:
I have hg-repos 8 and 10 downloaded.
Hg-repos 9 is still downloading repos.
Downloaded 763gb until now(all three repos)
I will return to my workstation june 30th. Hopefully pack 9 is done by then.

Hg-repos 7 aborted. Hopefully Audionut got it.
Title: Re: Bitbucket set to remove Mercurial support
Post by: kitor on June 28, 2020, 10:13:33 PM
19: almost complete? (kitor)
22,23: ? (kitor)


All complete, I was fetching 20-23 in one location and 17-19 + 22-24 at the same time in another. That's why I was posting two logs  :)
Title: Re: Bitbucket set to remove Mercurial support
Post by: Audionut on June 29, 2020, 08:56:13 AM
I've made effectively no progress since my last post. I got a 7zip command line working to store and move to the synced storage drive, but it is also very slow.

If memory serves correctly, on a folder with repository 07 and 21, it ran for at least 1 day and only made it to M in the alphabet. I had to halt the process, which then required deleting the folders already stored before restarting 7zip, another massive process in itself.

This is still accurate for me.
hg-repos-05: 37.86% downloaded, 3.05% errors, 59.09% todo
hg-repos-07: 92.83% downloaded, 7.17% errors, 0.00% todo
hg-repos-13: 94.49% downloaded, 5.51% errors, 0.00% todo
hg-repos-17: 97.09% downloaded, 2.91% errors, 0.00% todo
hg-repos-18: 67.72% downloaded, 1.16% errors, 31.12% todo
hg-repos-19: 58.56% downloaded, 0.46% errors, 40.98% todo
hg-repos-20: 99.33% downloaded, 0.67% errors, 0.00% todo
hg-repos-21: 99.81% downloaded, 0.19% errors, 0.00% todo
hg-repos-24: 47.42% downloaded, 0.71% errors, 51.87% todo
Title: Re: Bitbucket set to remove Mercurial support
Post by: a1ex on June 29, 2020, 12:18:01 PM
Quote from: Danne on June 28, 2020, 07:34:34 PM
Hg-repos 9 is still downloading repos.
Downloaded 763gb until now(all three repos)
I will return to my workstation june 30th. Hopefully pack 9 is done by then.

Good news: "hg clone" appears to be relatively thread-safe, i.e. the following command worked correctly for me (one thread completed the task, and the other 3 threads failed early, as the destination directory was already created):

hg clone https://bitbucket.org/hudson/magic-lantern & hg clone https://bitbucket.org/hudson/magic-lantern & hg clone https://bitbucket.org/hudson/magic-lantern & hg clone https://bitbucket.org/hudson/magic-lantern


I cannot guarantee it's 100% safe (given enough test runs, you might end up with a messed-up destination directory), but it's likely good enough for parallelizing this stuff. So, I've added a "shuf (https://stackoverflow.com/questions/17578873/randomly-shuffling-lines-in-linux-bash)" in the download script, to randomize the list of repos, like this:

for f in $(cat $1 | cut -d ' ' -f 2 | shuf); do


and launched 6 download threads on repo set #09. Fully downloaded in less than 12 hours :D


hg-repos-09: 92.33% downloaded, 7.67% errors, 0.00% todo, 17.97 MiB average


Also completed 14, 15 and 16, with the same trickery:

hg-repos-14: 95.62% downloaded, 4.38% errors, 0.00% todo, 23.86 MiB average
hg-repos-15: 96.23% downloaded, 3.77% errors, 0.00% todo, 25.55 MiB average
hg-repos-16: 95.51% downloaded, 4.49% errors, 0.00% todo, 29.93 MiB average


Quote from: Audionut on June 29, 2020, 08:56:13 AM
I've made effectively no progress since my last post. I got a 7zip command line working to store and move to the synced storage drive, but it is also very slow.

At least, you've completed 07 and 13, which nobody else downloaded, so let's focus on these.

First, move the two sets into another directory. You could try this script (from the working directory), currently hardcoded for #09, customize as needed:

SRC=hg-repos-09                  # must be in the working directory
DST=../bitbucket-all-repos-09    # must be outside the working directory, sans trailing slash

for f in $(cat $SRC | cut -d ' ' -f 2 ); do
  if [ -f $f.commits ]; then
    echo $f
    mkdir -p -- $DST/$f
    mv -- $f/.hg $DST/$f/
    mv -- $f.commits $DST/$f.commits
  fi
done


On my machine, this took about 2.5 minutes.

Then, you check how much space this folder uses:

du -b -d 0 -h ../bitbucket-all-repos-09


This took a bit longer - 15 minutes, and reported 176G.

Then, one of the fastest ways to turn all of these tiny files (which are locking up your file browser) into a single large file, is probably without compression:

cd ../bitbucket-all-repos-09
find -type f -path '*/*/.hg/*' | tar -cvf - -T - > repos-09.tar


On the directory with ML forks, it took 16 minutes for 17 GiB input, 18 GiB output, so... expecting about 3 hours for one set (09 in particular).

Or maybe with some weak compression (benchmark (https://www.rootusers.com/gzip-vs-bzip2-vs-xz-performance-comparison/)):

cd ../bitbucket-all-repos-09
find -type f -path '*/*/.hg/*' | rev | sort | rev | tar -cvf - -T - | gzip -1 - > repos-09.tar.gz


10 minutes, 12 GiB output. Expecting about 2 hours on repo set 09, but not actually tested. Tempted to try some more.

Edit: gzip -9, 20 minutes, 11.9 GiB output. No, thanks :)

In any case, it should be much faster than Windows Explorer or GUI-based archivers.

With xz, you will get better compression (~157 MiB in previous tests, with -9e --lzma2=dict=1536Mi for the same - highly redundant - input), but it's also much slower (40 min for that particular test).

The above commands can be adapted by anyone else who'd like to share what they downloaded.
Title: Re: Bitbucket set to remove Mercurial support
Post by: a1ex on June 30, 2020, 07:36:32 PM
Update: also downloaded repo sets 11 and 12, as there was no confirmation. Tomorrow they will be gone :)

Anything else I should download?
Title: Re: Bitbucket set to remove Mercurial support
Post by: Danne on June 30, 2020, 07:55:48 PM
Maybe repo 9. Plan is to check into work tonight but no status until then. Or did you download it already?
Title: Re: Bitbucket set to remove Mercurial support
Post by: a1ex on June 30, 2020, 08:58:49 PM
Yes, 09 is already downloaded.

Meanwhile, I'm trying to figure out the workflow on Heptapod, and after that, I hope they will make the new repo visible for everyone.
Title: Re: Bitbucket set to remove Mercurial support
Post by: Danne on June 30, 2020, 09:04:18 PM
Great! Can't wait to leave bb. Rather sooner than later.
Title: Re: Bitbucket set to remove Mercurial support
Post by: DeafEyeJedi on July 02, 2020, 04:10:43 AM
Quote from: a1ex on June 13, 2020, 09:07:17 PM
Anyone with good network connectivity, some hundred(s) of GiB of free space, able to run Bash scripts, recent Python (3.7+) and willing to leave their computer(s) running for the next two weeks? I'll provide a list of repos*) (divided among all participants, if that makes things easier) and download scripts. You will also need to keep an eye on the scripts, as Mercurial sometimes crashes or asks for usernames or whatever, but I'll try to sort it out.

Count me in. I'd even let you remotely control via TeamViewer if need. Just let me know.

Zoey (hackintosh) runs nicely while pushing 480 Mbps for internet download speeds and about 24 Mpbs for upload if that matters.

She never sleeps. Probably unnecessary by now but just may worth noting. Otherwise better late than never.

Quote from: Danne on June 30, 2020, 09:04:18 PM
Great! Can't wait to leave bb. Rather sooner than later.

8)
Title: Re: Bitbucket set to remove Mercurial support
Post by: kitor on July 04, 2020, 09:50:24 AM
@Alex, I have 11 and 12 too. Friend of mine (@Siewca (https://krypto-it.pl/)) downloaded it in meantime and I'm fetching tarball now.
Title: Re: Bitbucket set to remove Mercurial support
Post by: Levas on July 06, 2020, 04:19:54 PM
What is the status of this project ?

I've downloaded hg-repos-00 in June, just as second backup.
I'm not planning on uploading it, because my upload speed is just ~3 Mbit/s.
So how many other people have downloaded hg-repos-00, I see at least A1ex did.
Did everything go well, or is my backup still needed ?
If not necessary to keep, I would like to delete it.

Just let me know.

This is how my hg-clone-errors.txt looks:

z19/freebsd
tingle/test
weisjohn/john-weis
weisjohn/bhive
metaperl/indian-language-converter
metaperl/sanskrit-translit
frechtenstein/partial-soc
metaperl/pushtest
dbergum/roomie_david
metaperl/challenge-ladder
dbergum/david-roomie-real
ianeslick/weblocks-ian
mohbana/contexteditor
max3/metascore
mohbana/pde-scala
MegaMo/wacken-08
weisjohn/endoftheworld_weisjohn_2
anall/dwdev-tools
sanxiyn/apertium-quenya
oskarei/ru
joubert/mnemosyne
csytan/test
clairvy/my
anall/dw-esnimapd
metaperl/gnubux
metaperl/nagare_poll
metaperl/elixir_poll
metaperl/ptc_math
chaitanyag/sandbox
oc/oc
skypher/fdisk
clairvy/csnagoya
metaperl/gnumatrix
skypher/weblocks-stable
mohbana/scalaparsers
repeatedly/livedoor-wiki
skypher/elephant
metaperl/bashrc
metaperl/parse-omimports
joel/robo
metaperl/webpy-tutorial
sanxiyn/clipath
daks/monthcalendartoplist
daks/xenmonit
mazzer/dist_webbshop
metaperl/redick
number5/dotfiles
skypher/weblocks-site
false/depot
mazzer/community
ddrake/sagetex
bwalkin/bwtoolkit
lucmult/pagseglib
zihado/javase
flamedragon3/ae-operation-center
jdhardy/code
Tom/test
jhjaggars/dictionary_switches
metaperl/metaperl-website
metaperl/qooxdo-basicmath
skypher/weblocks-docs
metaperl/pyjamas-book
winsmith/the_zombie
EP/tokyotyrant-java
pacojp/test
pacojp/test2
pacojp/test3
winsmith/die-stimme-gottes
metaperl/moose-cookbook
hakanw/django-better-chunks
hakanw/django-email-usernames
eyunak/wire-etc
metaperl/catalyst_view_seamstress
metaperl/emacs
metaperl/asciidoc-el
flamedragon3/game
metaperl/tmp
pkeane/dase
metaperl/siki
metaperl/cgi-mo
bpd9116/raytracer
sabath/wowtheory
sabath/nvm
evoker/daplayer
davcamer/ccnet
repeatedly/esoteric-language
itaborai83/pywatcher
brynjar/zine
EP/specipy
itaborai83/pareto
haiwurld/haiwurld_site
GreydMiyu/saeman
itaborai83/maze
jmtulloss/cobra
tapam/thought-tracker
coffeemug/weblocks-slava
jnoller/nose-testconfig
jnoller/pyjavaproperties
jnoller/testbutler
sadists/me
jeffar/django-book-pl
will/epgsql
OuchOuchOuch/pygainer
mazzer/maztask
orion/orion-dev-build-linux
okawa/pics
pixelcort/test
jnoller/pycon_2009
sschroed/ruby-mn
ingenieroariel/pinax-api
pot/pot
ingenieroariel/django-oauth-fork
ingenieroariel/django-storages
daks/django-userthemes
gar/coma
skypher/cl-prevalence
jpellerin/nose-xml-skippy
taoyh/wikicube
ingenieroariel/django-wapi
joe/project2
carlisa/avatar
dyoung418/karaoke_player
pao/hsvm
yuval/ngram-project
boothead/hgrecipe
evoker/liber1
david415/mysql-cluster-tools
dbm/website
boothead/django-fixtures
pao/pkgenv
magicsword/millertest
hirman/railsspace
boothead/fixture-django
hirman/scjp-60
kushal/tux3
kushal/tux3_dedup
yoshiori/hatenadiary
dyoung418/pykaraoke_daymod
copiesofcopies/identifox
copiesofcopies/identifox-copiesofcopies
winsmith/copymeister
qwzybug/benlove
kayjb/pics
mbhinder/cop5555
yoshiori/pybundle
qwzybug/learnlove
milancermak/kyva
yoshiori/hatenagraph
admp/python-tutorial-lt-admp
kshimo69/test
ancer/topcoder
jst/inkscape-gcode
EP/schemaless
Gustavo/whatpylonsproject
mitcho/ubiquity-playground
panaut0lordv/tc2-patches
konrada/sphinx-extensions
beamtous/sandbox
evoker/librall
zeus/watermarker
jjc75/testrepo
anall/net-dreamwidth-perl
magopian/django_wsgi_base
widiantonugroho/kamonesan
danskelly/mythexport
yonibear/stuff
malde/bespin-malde
catbert321/ataxx
frosth/dotcloud-constraints
anall/dreamfuse
tnt2ray/buttonfacade-skin-package
sanxiyn/matplotlib-canvas
konrada/ouchclip
oblivionx/cyb
tnt2ray/actionbar
yonibear/kadavr
jmnovelov/guiclientlibrary
ulikoehler/xraysim
chrism/pypes
tnt2ray/totemtimers
hirman/django-tutorial
konrada/pstopkill
jpellerin/nose-pycon
nicholasbs/purplevoter
beamtous/bugger
darthflatus/tgextpages-component
skabet/pretty
EP/me2day-scala
jpellerin/dotfiles
skypher/weblocks-mystic
brainiac318/new
dangoor/testrepo
emma/wima
dangoor/uvc
jayaraj/static-generator-customized
jayaraj/card-project
bobf/sasqlconsole
rentzsch/tasktracker
beamtous/bugger-simple
knappe/flagcommander
bobf/bpython
burak/cpan-sys-info
burak/cpan-sys-info-driver-bsd
burak/cpan-sys-info-driver-linux
burak/cpan-sys-info-driver-unknown
burak/cpan-sys-info-driver-windows
burak/cpan-time-elapsed
jpellerin/nosemacs
stuartrhamilton/web-coches-clasicos
jpellerin/pip
sreeix/metronome
kris/dotfiles
rvnth/trinitycore2
pjhyett/repo-de-janeiro
matsp/minibasic
obeattie/cobra
weswinham/django-storages
gallagher/mumble-admin-ice-php
weswinham/s3-https-access-url-option
copiesofcopies/metafox
frostbite/frostbite
mental/armstrong
yoshiori/java-pit
roettgar/mediaweb
8pm/8up
skypher/cl-slog
ronaldbe/hexengine
dyoung418/pywanderer_old
hoffmann/pysocialgraph
nickdaly/gemrb-launcher
nickdaly/gemrb-installer-disc-collector
srobertson/quodlibet-testing
rinkameari/python_projects
chipsourn/mangoapi_sprockets
yoshiori/gaewicketguice
hirman/nblog
jpellerin/nosedeprecated
thieu/dotcloud
jpellerin/nose
jpellerin/nose3
nickdaly/volume-tray
nickdaly/prboom-launcher
nickdaly/apt-busted
pjhyett/hg-git
nickdaly/pypanel-autohide
ot/bpt
skypher/weblocks-dev-slot-name-clash-control
ehren/django_hackathon_8
skypher/cl-i18n
rakete/hsverse
jdhardy/ironpythonzlib
jdhardy/_ast
jdhardy/django-aspnet
jdhardy/adonet-dbapi
sgraham/sayyoho
EP/undercover
frosth/dotcloud_vmbuilder_plugin
moridin1138/pyecm
srobertson/rc-files
clojure/cultjure
adil/adil-bespin
skabet/bacon-langref
skabet/bacon
mtrichardson/hgmail
mtrichardson/django_satprep
drernie/core-plot
gxti/shapow
iadle/onestop_webservice
zeus/pseon
zeus/elemental
bhagany/lodgemacs
kelvin/slippy-chart
jgeng/upe
magopian/pyconfr
jpellerin/jinja2-main
bhagany/emacsd
dorseye/toolbox
srobertson/strobecc
gugod/waitjs
asdfqwer/stoopid_test
fairview/fccv
jnoller/nose-pathmunge
skypher/weblocks-dev-083branch
guenther/openclonk
insin/chaos-wii
leonh/laterpaper
mcwelschen/emprendinet_2105
spoob/pyload
magopian/pyconfrs5
dyoung418/admin_linux
vivien/etna-pmob
choffman/pyracktables
jgeng/wxhg
nakamura/yomogi
brawnyind/whiteboad
chkfj/eventmanager
ivanov/youtube-dl
sanxiyn/multimine
cascais/kaos
skypher/stx2any
cascais/ideologia
frosth/dotcloud
beamtous/gmail-notify
zeus/limbo
oavdeev/alastfm-player
jpellerin/wtforms
malde/bespinserv-malde
mazzer/calculator
twl/hhscripts
jay_soo/pylons-investor
hyperion/towncrawl
rodrigogalindez/repo1
cleonello/jqplot
skypher/weblocks-dev-defer-javascript
skypher/weblocks-dev-history-rsh
beamtous/vim
nic/twaddle
jpellerin/freehg
nic/resolvconfpy
viellieb/pcp-analyzer
viellieb/vhdl-ad9910
konrada/arduscope
philip/font-optimizer
mihelich/eigen2
Lazin/simple-search
bobf/bpython-www
demizer/libdxf
kamada/flex-starter
jay_soo/pylons-webservice
aezell/feedcache-memcache
lawgon/fossconf
firs/firs
jgeng/osdi2
mcwelschen/dlc_practico_3
demizer/answers-to-the-c-programming-language
nic/md
rakesh/test
mza/core-plot-wwdc
drernie/core-plot-wwdc
klaaspieter/core-plot-wwdc
fredglover/core-plot-wwdc
dmercer/parsec-erlang
abrons/hg4rubymine
trentm/pics
trentm/sandbox
chkfj/kay-openid
gpolo/stuff
firs/heqs
deepspawn/smc
funkin2x/choriflayer
Lazin/cpp-stemmer
jpoirier/cr_lib
shootaenz/shoota
feya/sasplanet
john_b/proc_parser
bobf/cusswords
obmib/strategie
Paradox/trinitycore2-309
mariod/gsoc2009
grouzen/qls
jdhardy/wlw-plugins
mcwelschen/dlc_jee_3
grouzen/dotfiles
chipsourn/mangoapi-rearrange-files-structure
sanxiyn/producingoss-ko
frigo/sconside
viellieb/analysix
Paradox/trinitycore2-309-pq
oheard/gimt
fbru02/pokerstars
cascais/company
mihelich/cvxpp
cascais/tutorial
dmercer/erlang-edi
nels1835/csci5211_nels1835
fbru02/pokerstars2
fbru02/pokerstars3
scubastard/icfp2009
drbrain/hscore
drbrain/hs_util
drbrain/hyperspace_modules
bobf/soundbush
rams/linkpry
Lazin/project-euler
daghenrik/ale
cascais/license
gch/tutorials
bobf/uzbld
mook/mozwin64
xdissent/feedcache-django
priyanka/per-process-namespace
boothead/utils
becomingguru/practical-django-projects
boothead/djrender
davcamer/canary
niels/signupbox
noahcampbell/sdbparql
grouzen/snake-sdl
lucmult/vim
mgunneras/django-storages
rsc/vx32
rsc/plan9port
safe/python-turtlebackend
davcamer/hgsubversion-py26-win
mwilcox3000/mwilcox-public
jgoecks/galaxy-community
bulykyn27/bulykyn27
oliland/compsoc
scarytom/docnap
mariod/couchdbkit
boothead/twodegnosedjango
frosth/dotcloud-vm-generator
croach/dtree-oreilly
bomberman/bomberman-repository
aezell/django-piston-sqlalchemy
tdd/mpiperuse-dtrace-provider
qwzybug/phonepix
zenn/blackbean
rail/translate-toolkit-mozilla
davcamer/bayesian-builds
zenn/gradient
alexi/bespin
darthflatus/miru-enhancements
houtkop/avatar
zenn/physaxe-joints-rays
kerin/minstrel
skypher/shuffletron
bobf/bookshelf
mtrichardson/django_template
esh/latte
kaiga/bos-core
sugi205/my-first-blog
xdissent/virtualenvwrapper
brotherlogic/busitlib
brotherlogic/busit
jrossi/tweethon
bradh/iulib-bradh
dwi/archlinux-packages
Itn2002/ochusha
silverblaze/silverswipe
gthomas/iptcinfo
silverblaze/i-have-no-clue-what-i-am-doing
silverblaze/wtf
cascais/embededfont
jgao/mercurialeclipse
silverblaze/start-over
kosborn/phpns
bart/mcabber
bradh/ocropus-bradh
wiwat/xe-test
mtrichardson/rss-thing
winsmith/cene
winsmith/cenesite
pyalot/abaeus
pyalot/cdlibrary
pyalot/sqlalchemy-console
pyalot/brainfuck-x86-compiler
pyalot/pyasm
pyalot/sociograph
pyalot/gletools
pyalot/lumiscape
maxiplux/test
saketh/notalon
ctheune/assembly-cms
brotherlogic/busitsite
oritang/tossup
matth/everytree
nowells/sphinx
pyalot/springuv
roarnex/vfvf
yas/createmecabdict
nxg/bibhtml
gensior/djangoseattle
wrice/jscript
aamuuninen/lesedb
eti/e-ti-point
yuriks/opentyrian-enhanced
hy/ais
dabomb69/bash-portable
lawgon/ilugc
alunbestor/boxer
raketjan/programsystemkonstruktion-i-c
dustwolf/xsltaggregator
dustwolf/twit
dustwolf/principles-and-classes-database
pbyrne/url-shortener
nic/pywebkitgtk-browser
firs/fish
jrossi/untiny
zenn/garbanzo
tomkfischer/mycrypto
david415/gr_scanner
qwzybug/boxedviews
devender/mytestrepo
hakanw/tabmate
mazzer/j2ee-blog
fil/blog
sanxiyn/megi
rovangju/xinha_csspicker
pyalot/pyglet
nickdaly/murrina-night-2
arthurdebert/django-piston
speno/greenbar
dabomb69/cheesebot
danger/pysublib
chaos/mailteacher
chrism/marco
sanxiyn/fluidfs
ivan88/testproject
tomkfischer/myutilities
tomkfischer/mynetwork
akbloom/config-files
dabomb69/perl-portable
rcourtie/awesometopia
nickdaly/release-utilities
hakanw/connectionchecker
miouge/glob2-yog-web-stats
miouge/glob2-web-stats
dustwolf/microkernel
daevaorn/django-coat
dustwolf/euroctrl-alt-delsi
nels1835/rochester_plone
rinkameari/railroad
ck/openclonk
kevingessner/murky
arvi/arviq
burak/cpan-parse-http-useragent
alessandram09/rv-trader
rgreen/firsttest
rsc/drawterm
knzm/hgbook-ja
wangdong/toolkit
mtrichardson/jsonpusgs
mmalone/django-piston
hunamung/food-fling
filippoalbertin/phil-sites
elaine/tabular
whitmo/blister
neoedmund/neoe
jart/asterisk-voicechanger
jart/asterisk-jukebox
jart/asterisk-parrot
dabomb69/sparta
nhmc/pyserpens
jart/asterator
lawgon/osmindia
jart/rapidcall
milespomeroy/strip-profiles
pbyrne/idea-bucket
idangazit/django-piston
scrubb/openvpn-la
skeeto/sumobots
darrylcousins/geoip-service
tiduswc/tw-simple
kosborn/php_license_verify
reneschmidt/dwb-tvid
jpoirier/efis
gpraveenkumar17/my-public-repository
nataxane/sample
gar/mulligan
scrubb/gpg-backup
scrubb/admin-svn
scrubb/updatenotifier
scrubb/changelog
lajos/beater
aerie/pictures
vbalko/3hore
zinigor/jsspeedtest
carstenlenz/svn-scripts
magopian/munin_response_time
alsh/pygui-mirror
magopian/combienjegagne
digitalxero/hg-eol
magopian/agopianinfo
lawgon/southzone
winsmith/imensa
repeatedly/opauthshibbolethplugin
david415/ganglia_gmetric_scripts
ceejbot/leafedmods
calaniz/eboto
calaniz/eventlet-08
jay_soo/project-euler-solutions
rcourtie/secretsanta
aditya/csnippets
Lazin/alang
howarth/fall-09
erikt/omegapoint-grafisk-profil
mfriedenhagen/hgkit
sanxiyn/we2day
nataxane/concordance
ehren/mote_apps
jgoecks/jg-galaxy-patch-queue
solidsnack/attoparsec
jlatt/v8erl
alsh/pygui-patches
pmpatel/fimero
jasbaker/pysistence
magopian/acamofr
jobs/sysmon
jobs/pinotify
groves/growl
nickdaly/pycontract
jnoller/draft-peps
nicknick63/ezida
david415/fp-python-notes
hmonsalve/orsep-cd
whitmo/geonode
dsibilly/pyga
chilli0/cipher
rlaurie/canal
ehren/gm_mote_apps
liqweed/emissions-old
lililyy2004/lee
kris/ucm
erikt/johnwilandercom
alexi/my-example-repository
bobf/minificationwebhelpers
lericson/spawning
mazzer/musicplayer
jasbaker/conf
balabhaskar/nano
lth/jetpack
mhayes__/csc136-h1
dustwolf/xmlproxy
ngroup/thinkpy-exercise
sanxiyn/seedrb
alistair7682/facesms
mfriedenhagen/mercurial-crew-jython
thebench/fdsvg
thebench/dsgb
bramatos/sources
nnevatie/pegasus
sanxiyn/hama
daevaorn/suds-ews
daomaster3000/info4307
rcompton/mathinwon
mhayes__/csc138-a1
flohaas/mlmanager
lawgon/fida
anchor/settings
quarkcool/html5-fr
olenatkh/tmus
olenatkh/piccoua
gch/utils
magopian/acamodjango
rcourtie/rc033282
dabomb69/gedit-portable
rcompton/fmm
rlotun/pytweepml
jrossi/ossec-hids-tools
jobs/gwt
magopian/django_base
xanothos/rails-depot-app
david415/davids-haskell-notes
rcompton/musical-gauss-seidel
reiatsu/terpentin
jart/soundtouch4c
nataxane/main
ehren/gae_memcachespinlock
wayne/tests-and-junk
mirhampt/jquery-defaulttext
rcompton/ci-matrix
dabomb69/windeb
kris/bb
oliland/compsoc-drupal-skin
dicson/splean
kometen/load-average
lawgon/bamboobanks
lericson/gevent
pratic/metnav
mhayes__/csc138-a3
keba/robo-ai
wayne/mantis
kometen/timekeeping
tranbinhnguyen/asimplejobdatabase
xanothos/vcccc
dhans/seed_module
winsmith/sop
mfa/django-registration
rcompton/fft-sonification
z19/freebsd
tingle/test
weisjohn/john-weis
weisjohn/bhive
metaperl/indian-language-converter
metaperl/sanskrit-translit
frechtenstein/partial-soc
metaperl/pushtest
dbergum/roomie_david
metaperl/challenge-ladder
dbergum/david-roomie-real
ianeslick/weblocks-ian
mohbana/contexteditor
max3/metascore
mohbana/pde-scala
MegaMo/wacken-08
weisjohn/endoftheworld_weisjohn_2
anall/dwdev-tools
sanxiyn/apertium-quenya
oskarei/ru
joubert/mnemosyne
csytan/test
clairvy/my
anall/dw-esnimapd
metaperl/gnubux
metaperl/nagare_poll
metaperl/elixir_poll
metaperl/ptc_math
chaitanyag/sandbox
oc/oc
skypher/fdisk
clairvy/csnagoya
metaperl/gnumatrix
skypher/weblocks-stable
mohbana/scalaparsers
repeatedly/livedoor-wiki
skypher/elephant
metaperl/bashrc
metaperl/parse-omimports
joel/robo
metaperl/webpy-tutorial
sanxiyn/clipath
daks/monthcalendartoplist
daks/xenmonit
mazzer/dist_webbshop
metaperl/redick
number5/dotfiles
skypher/weblocks-site
false/depot
mazzer/community
ddrake/sagetex
bwalkin/bwtoolkit
lucmult/pagseglib
zihado/javase
flamedragon3/ae-operation-center
jdhardy/code
Tom/test
jhjaggars/dictionary_switches
metaperl/metaperl-website
metaperl/qooxdo-basicmath
skypher/weblocks-docs
metaperl/pyjamas-book
winsmith/the_zombie
EP/tokyotyrant-java
pacojp/test
pacojp/test2
pacojp/test3
winsmith/die-stimme-gottes
metaperl/moose-cookbook
hakanw/django-better-chunks
hakanw/django-email-usernames
eyunak/wire-etc
metaperl/catalyst_view_seamstress
metaperl/emacs
metaperl/asciidoc-el
flamedragon3/game
metaperl/tmp
pkeane/dase
metaperl/siki
metaperl/cgi-mo
bpd9116/raytracer
sabath/wowtheory
sabath/nvm
evoker/daplayer
davcamer/ccnet
repeatedly/esoteric-language
itaborai83/pywatcher
brynjar/zine
EP/specipy
itaborai83/pareto
haiwurld/haiwurld_site
GreydMiyu/saeman
itaborai83/maze
jmtulloss/cobra
tapam/thought-tracker
coffeemug/weblocks-slava
jnoller/nose-testconfig
jnoller/pyjavaproperties
jnoller/testbutler
sadists/me
jeffar/django-book-pl
will/epgsql
OuchOuchOuch/pygainer
mazzer/maztask
orion/orion-dev-build-linux
okawa/pics
pixelcort/test
jnoller/pycon_2009
sschroed/ruby-mn
ingenieroariel/pinax-api
pot/pot
ingenieroariel/django-oauth-fork
ingenieroariel/django-storages
daks/django-userthemes
gar/coma
skypher/cl-prevalence
jpellerin/nose-xml-skippy
taoyh/wikicube
ingenieroariel/django-wapi
joe/project2
carlisa/avatar
dyoung418/karaoke_player
pao/hsvm
yuval/ngram-project
boothead/hgrecipe
evoker/liber1
david415/mysql-cluster-tools
dbm/website
boothead/django-fixtures
pao/pkgenv
magicsword/millertest
hirman/railsspace
boothead/fixture-django
hirman/scjp-60
kushal/tux3
kushal/tux3_dedup
yoshiori/hatenadiary
dyoung418/pykaraoke_daymod
copiesofcopies/identifox
copiesofcopies/identifox-copiesofcopies
winsmith/copymeister
qwzybug/benlove
kayjb/pics
mbhinder/cop5555
yoshiori/pybundle
qwzybug/learnlove
milancermak/kyva
yoshiori/hatenagraph
admp/python-tutorial-lt-admp
kshimo69/test
ancer/topcoder
jst/inkscape-gcode
EP/schemaless
Gustavo/whatpylonsproject
mitcho/ubiquity-playground
panaut0lordv/tc2-patches
konrada/sphinx-extensions
beamtous/sandbox
evoker/librall
zeus/watermarker
jjc75/testrepo
anall/net-dreamwidth-perl
magopian/django_wsgi_base
widiantonugroho/kamonesan
danskelly/mythexport
yonibear/stuff
malde/bespin-malde
catbert321/ataxx
frosth/dotcloud-constraints
anall/dreamfuse
tnt2ray/buttonfacade-skin-package
sanxiyn/matplotlib-canvas
konrada/ouchclip
oblivionx/cyb
tnt2ray/actionbar
yonibear/kadavr
jmnovelov/guiclientlibrary
ulikoehler/xraysim
chrism/pypes
tnt2ray/totemtimers
hirman/django-tutorial
konrada/pstopkill
jpellerin/nose-pycon
nicholasbs/purplevoter
beamtous/bugger
darthflatus/tgextpages-component
skabet/pretty
EP/me2day-scala
jpellerin/dotfiles
skypher/weblocks-mystic
brainiac318/new
dangoor/testrepo
emma/wima
dangoor/uvc
jayaraj/static-generator-customized
jayaraj/card-project
bobf/sasqlconsole
rentzsch/tasktracker
beamtous/bugger-simple
knappe/flagcommander
bobf/bpython
burak/cpan-sys-info
burak/cpan-sys-info-driver-bsd
burak/cpan-sys-info-driver-linux
burak/cpan-sys-info-driver-unknown
burak/cpan-sys-info-driver-windows
burak/cpan-time-elapsed
jpellerin/nosemacs
stuartrhamilton/web-coches-clasicos
jpellerin/pip
sreeix/metronome
kris/dotfiles
rvnth/trinitycore2
pjhyett/repo-de-janeiro
matsp/minibasic
obeattie/cobra
weswinham/django-storages
gallagher/mumble-admin-ice-php
weswinham/s3-https-access-url-option
copiesofcopies/metafox
frostbite/frostbite
mental/armstrong
yoshiori/java-pit
roettgar/mediaweb
8pm/8up
skypher/cl-slog
ronaldbe/hexengine
dyoung418/pywanderer_old
hoffmann/pysocialgraph
nickdaly/gemrb-launcher
nickdaly/gemrb-installer-disc-collector
srobertson/quodlibet-testing
rinkameari/python_projects
chipsourn/mangoapi_sprockets
yoshiori/gaewicketguice
hirman/nblog
jpellerin/nosedeprecated
thieu/dotcloud
jpellerin/nose
jpellerin/nose3
nickdaly/volume-tray
nickdaly/prboom-launcher
nickdaly/apt-busted
pjhyett/hg-git
nickdaly/pypanel-autohide
ot/bpt
skypher/weblocks-dev-slot-name-clash-control
ehren/django_hackathon_8
skypher/cl-i18n
rakete/hsverse
jdhardy/ironpythonzlib
jdhardy/_ast
jdhardy/django-aspnet
jdhardy/adonet-dbapi
sgraham/sayyoho
EP/undercover
frosth/dotcloud_vmbuilder_plugin
moridin1138/pyecm
srobertson/rc-files
clojure/cultjure
adil/adil-bespin
skabet/bacon-langref
skabet/bacon
mtrichardson/hgmail
mtrichardson/django_satprep
drernie/core-plot
gxti/shapow
iadle/onestop_webservice
zeus/pseon
zeus/elemental
bhagany/lodgemacs
kelvin/slippy-chart
jgeng/upe
magopian/pyconfr
jpellerin/jinja2-main
bhagany/emacsd
dorseye/toolbox
srobertson/strobecc
gugod/waitjs
asdfqwer/stoopid_test
fairview/fccv
jnoller/nose-pathmunge
skypher/weblocks-dev-083branch
guenther/openclonk
insin/chaos-wii
leonh/laterpaper
mcwelschen/emprendinet_2105
spoob/pyload
magopian/pyconfrs5
dyoung418/admin_linux
vivien/etna-pmob
choffman/pyracktables
jgeng/wxhg
nakamura/yomogi
brawnyind/whiteboad
chkfj/eventmanager
ivanov/youtube-dl
sanxiyn/multimine
cascais/kaos
skypher/stx2any
cascais/ideologia
frosth/dotcloud
beamtous/gmail-notify
zeus/limbo
oavdeev/alastfm-player
jpellerin/wtforms
malde/bespinserv-malde
mazzer/calculator
twl/hhscripts
jay_soo/pylons-investor
hyperion/towncrawl
rodrigogalindez/repo1
cleonello/jqplot
skypher/weblocks-dev-defer-javascript
skypher/weblocks-dev-history-rsh
beamtous/vim
nic/twaddle
jpellerin/freehg
nic/resolvconfpy
viellieb/pcp-analyzer
viellieb/vhdl-ad9910
konrada/arduscope
philip/font-optimizer
mihelich/eigen2
Lazin/simple-search
bobf/bpython-www
demizer/libdxf
kamada/flex-starter
jay_soo/pylons-webservice
aezell/feedcache-memcache
lawgon/fossconf
firs/firs
jgeng/osdi2
mcwelschen/dlc_practico_3
demizer/answers-to-the-c-programming-language
nic/md
rakesh/test
mza/core-plot-wwdc
drernie/core-plot-wwdc
klaaspieter/core-plot-wwdc
fredglover/core-plot-wwdc
dmercer/parsec-erlang
abrons/hg4rubymine
trentm/pics
trentm/sandbox
chkfj/kay-openid
gpolo/stuff
firs/heqs
deepspawn/smc
funkin2x/choriflayer
Lazin/cpp-stemmer
jpoirier/cr_lib
shootaenz/shoota
feya/sasplanet
john_b/proc_parser
bobf/cusswords
obmib/strategie
Paradox/trinitycore2-309
mariod/gsoc2009
grouzen/qls
jdhardy/wlw-plugins
mcwelschen/dlc_jee_3
grouzen/dotfiles
chipsourn/mangoapi-rearrange-files-structure
sanxiyn/producingoss-ko
frigo/sconside
viellieb/analysix
Paradox/trinitycore2-309-pq
oheard/gimt
fbru02/pokerstars
cascais/company
mihelich/cvxpp
cascais/tutorial
dmercer/erlang-edi
nels1835/csci5211_nels1835
fbru02/pokerstars2
fbru02/pokerstars3
scubastard/icfp2009
drbrain/hscore
drbrain/hs_util
drbrain/hyperspace_modules
bobf/soundbush
rams/linkpry
Lazin/project-euler
daghenrik/ale
cascais/license
gch/tutorials
bobf/uzbld
mook/mozwin64
xdissent/feedcache-django
priyanka/per-process-namespace
boothead/utils
becomingguru/practical-django-projects
boothead/djrender
davcamer/canary
niels/signupbox
noahcampbell/sdbparql
grouzen/snake-sdl
lucmult/vim
mgunneras/django-storages
rsc/vx32
rsc/plan9port
safe/python-turtlebackend
davcamer/hgsubversion-py26-win
mwilcox3000/mwilcox-public
jgoecks/galaxy-community
bulykyn27/bulykyn27
oliland/compsoc
scarytom/docnap
mariod/couchdbkit
boothead/twodegnosedjango
frosth/dotcloud-vm-generator
croach/dtree-oreilly
bomberman/bomberman-repository
aezell/django-piston-sqlalchemy
tdd/mpiperuse-dtrace-provider
qwzybug/phonepix
zenn/blackbean
rail/translate-toolkit-mozilla
davcamer/bayesian-builds
zenn/gradient
alexi/bespin
darthflatus/miru-enhancements
houtkop/avatar
zenn/physaxe-joints-rays
kerin/minstrel
skypher/shuffletron
bobf/bookshelf
mtrichardson/django_template
esh/latte
kaiga/bos-core
sugi205/my-first-blog
xdissent/virtualenvwrapper
brotherlogic/busitlib
brotherlogic/busit
jrossi/tweethon
bradh/iulib-bradh
dwi/archlinux-packages
Itn2002/ochusha
silverblaze/silverswipe
gthomas/iptcinfo
silverblaze/i-have-no-clue-what-i-am-doing
silverblaze/wtf
cascais/embededfont
jgao/mercurialeclipse
silverblaze/start-over
kosborn/phpns
bart/mcabber
bradh/ocropus-bradh
wiwat/xe-test
mtrichardson/rss-thing
winsmith/cene
winsmith/cenesite
pyalot/abaeus
pyalot/cdlibrary
pyalot/sqlalchemy-console
pyalot/brainfuck-x86-compiler
pyalot/pyasm
pyalot/sociograph
pyalot/gletools
pyalot/lumiscape
maxiplux/test
saketh/notalon
ctheune/assembly-cms
brotherlogic/busitsite
oritang/tossup
matth/everytree
nowells/sphinx
pyalot/springuv
roarnex/vfvf
yas/createmecabdict
nxg/bibhtml
gensior/djangoseattle
wrice/jscript
aamuuninen/lesedb
eti/e-ti-point
yuriks/opentyrian-enhanced
hy/ais
dabomb69/bash-portable
lawgon/ilugc
alunbestor/boxer
raketjan/programsystemkonstruktion-i-c
dustwolf/xsltaggregator
dustwolf/twit
dustwolf/principles-and-classes-database
pbyrne/url-shortener
nic/pywebkitgtk-browser
firs/fish
jrossi/untiny
zenn/garbanzo
tomkfischer/mycrypto
david415/gr_scanner
qwzybug/boxedviews
devender/mytestrepo
hakanw/tabmate
mazzer/j2ee-blog
fil/blog
sanxiyn/megi
rovangju/xinha_csspicker
pyalot/pyglet
nickdaly/murrina-night-2
arthurdebert/django-piston
speno/greenbar
dabomb69/cheesebot
danger/pysublib
chaos/mailteacher
chrism/marco
sanxiyn/fluidfs
ivan88/testproject
tomkfischer/myutilities
tomkfischer/mynetwork
akbloom/config-files
dabomb69/perl-portable
rcourtie/awesometopia
nickdaly/release-utilities
hakanw/connectionchecker
miouge/glob2-yog-web-stats
miouge/glob2-web-stats
dustwolf/microkernel
daevaorn/django-coat
dustwolf/euroctrl-alt-delsi
nels1835/rochester_plone
rinkameari/railroad
ck/openclonk
kevingessner/murky
arvi/arviq
burak/cpan-parse-http-useragent
alessandram09/rv-trader
rgreen/firsttest
rsc/drawterm
wangdong/toolkit
mtrichardson/jsonpusgs
mmalone/django-piston
hunamung/food-fling
filippoalbertin/phil-sites
elaine/tabular
whitmo/blister
neoedmund/neoe
jart/asterisk-voicechanger
jart/asterisk-jukebox
jart/asterisk-parrot
dabomb69/sparta
nhmc/pyserpens
jart/asterator
lawgon/osmindia
jart/rapidcall
milespomeroy/strip-profiles
pbyrne/idea-bucket
idangazit/django-piston
scrubb/openvpn-la
skeeto/sumobots
darrylcousins/geoip-service
tiduswc/tw-simple
kosborn/php_license_verify
reneschmidt/dwb-tvid
jpoirier/efis
gpraveenkumar17/my-public-repository
nataxane/sample
gar/mulligan
scrubb/gpg-backup
scrubb/admin-svn
scrubb/updatenotifier
scrubb/changelog
lajos/beater
aerie/pictures
vbalko/3hore
zinigor/jsspeedtest
carstenlenz/svn-scripts
magopian/munin_response_time
alsh/pygui-mirror
magopian/combienjegagne
digitalxero/hg-eol
magopian/agopianinfo
lawgon/southzone
winsmith/imensa
repeatedly/opauthshibbolethplugin
david415/ganglia_gmetric_scripts
ceejbot/leafedmods
calaniz/eboto
calaniz/eventlet-08
jay_soo/project-euler-solutions
rcourtie/secretsanta
aditya/csnippets
Lazin/alang
howarth/fall-09
erikt/omegapoint-grafisk-profil
mfriedenhagen/hgkit
sanxiyn/we2day
nataxane/concordance
ehren/mote_apps
jgoecks/jg-galaxy-patch-queue
solidsnack/attoparsec
jlatt/v8erl
alsh/pygui-patches
pmpatel/fimero
jasbaker/pysistence
magopian/acamofr
jobs/sysmon
jobs/pinotify
groves/growl
nickdaly/pycontract
jnoller/draft-peps
nicknick63/ezida
david415/fp-python-notes
hmonsalve/orsep-cd
whitmo/geonode
dsibilly/pyga
chilli0/cipher
rlaurie/canal
ehren/gm_mote_apps
liqweed/emissions-old
lililyy2004/lee
kris/ucm
erikt/johnwilandercom
alexi/my-example-repository
bobf/minificationwebhelpers
lericson/spawning
mazzer/musicplayer
jasbaker/conf
balabhaskar/nano
lth/jetpack
mhayes__/csc136-h1
dustwolf/xmlproxy
ngroup/thinkpy-exercise
sanxiyn/seedrb
alistair7682/facesms
mfriedenhagen/mercurial-crew-jython
thebench/fdsvg
thebench/dsgb
bramatos/sources
nnevatie/pegasus
sanxiyn/hama
daevaorn/suds-ews
daomaster3000/info4307
rcompton/mathinwon
mhayes__/csc138-a1
flohaas/mlmanager
lawgon/fida
anchor/settings
quarkcool/html5-fr
olenatkh/tmus
olenatkh/piccoua
gch/utils
magopian/acamodjango
rcourtie/rc033282
dabomb69/gedit-portable
rcompton/fmm
rlotun/pytweepml
jrossi/ossec-hids-tools
jobs/gwt
magopian/django_base
xanothos/rails-depot-app
david415/davids-haskell-notes
rcompton/musical-gauss-seidel
reiatsu/terpentin
jart/soundtouch4c
nataxane/main
ehren/gae_memcachespinlock
wayne/tests-and-junk
mirhampt/jquery-defaulttext
rcompton/ci-matrix
dabomb69/windeb
kris/bb
oliland/compsoc-drupal-skin
dicson/splean
kometen/load-average
lawgon/bamboobanks
lericson/gevent
pratic/metnav
mhayes__/csc138-a3
keba/robo-ai
wayne/mantis
kometen/timekeeping
tranbinhnguyen/asimplejobdatabase
xanothos/vcccc
winsmith/sop
mfa/django-registration
rcompton/fft-sonification
timattox/sensors-ompi
adonishi/kichi-radar-test
trijezdci/kvslib
lericson/gevent-spawn
sealibora/dingus
zooko/distribute
wenchen/spell
wenchen/transgene
digited/moonglide
rattlehead/mydate
terrycojones/fom
mirhampt/sql_interp
danielks/euler
rcompton/mathjoey
8pm/homework
data/zine-main
kaelin/cuttlefish
davids/add-ignores-and-context
sotarok/wikihub-wiki
mtrichardson/tender-multipass
sarahmaethomas/coursework
sarahmaethomas/paper-works
donovanhide/django-piston
mfriedenhagen/webdriverfirebug
gds/ocaml-dynatvar
knappe/umlello
korchasa/php-templates-test
franckbret/satchmo-xhtml
periwnkl/test
sgithens/arduinolibs
sgithens/nearspace
exebiet/exebiet
gxti/ninamori
milancermak/django-test-pack
bruth/django-breadcrumbs
stani/bpython
rcompton/poisson2d
dabomb69/win-bash
silkwhip/silksbuck
damirr/curso09-10
milancermak/fulldate
gonzokool/ae86-club
pmeerw/test
floppy/ruby-mp3info
zeus/pbot
rcourtie/quotidien
damirr/curso08-09
ulduar/322
dustwolf/eil-framework
cunhaleandro/avatar
rcompton/poisson3d
rcompton/fftw-boost-wrapper
lutik/lutiksd2
tankc/nodelinker
tankc/quakeviz
tankc/pong
tankc/primer
sturmschlagwow/sturmschlag-datenbank
yuriks/threelane
spartango/multi3d
effik/my-tc
btv/ps3_trophies
wragge/rswrapper
jpellerin/python-stomp
amac/tiljander-proxy-graphs
winsmith/django-thumbnail
mfriedenhagen/jbehavesearchtests
wragge/zotero-translators
chewable/django-lfs
Colfax/vimsetup
Colfax/bashsetup
titanemu/titandb
papiani/latex-notes
lacosta/prueba
msheshtawy/bespin-login-page
blunt_dude/blunt_dude
oliland/lolidrewthisdragon.com
gregdelozier/miscellaneous
papiani/formedit
korkakak/txn-pull
becomingguru/django-gotchas
korkakak/txn
gkatsev/old-website
rosh/squares-game
rosh/substitutions
kc/pyaeso
nic/fizzbuzz
thammi/cutesquare
djipi2000/myprogramme
cgs/splitit
ghalex/as3flexdb
nic/imgup
mpenning/ciscoconfparse
lafriks/sourcegridnix
korkakak/txo-signals
abbot/shredder
lericson/werkzeug-main
majedrayan/majedrayan
band/simplesetup
msheshtawy/blp
hammertime/t
willbr/bookit_tweaks
james.andres/taxonomy_export
hyperion/chord
tjacoby/test
mcwelschen/tsb
dangoor/bespinclient
dangoor/bespinserver
lastkarrde/tc2-lk-patches
denzel/comref-translation
gianni/vaet
justinabrahms/south
prof1983/assistant
hansbrattberg/unusedcodedetector
demas/reptool_docs
justin.lazarus/receiving_scheduler
abbot/m-x-doctor
keegan3d/inappsettings
nic/simpletables
oliland/houseplot
dabomb69/o-sparta
dabomb69/u-sparta
abbot/pwdhash
nicholas/projects
dpirotte/amp
boothead/formalchemy
docs/docs.bitbucket.org
arsecroft/botfly
gimite/chromeguestures
leegeorg07/pwitty
dethe/gocairo
jimmikaelkael/new-iop-core
berengier/ek
nowells/django-lifestream
arctic/arcticore
angelogja9/vehicle-shipping
darthflatus/tg-docs-untested
anall/nesdev-tools
rphillips/simple-tarsnap
fubar/galaxy_rgenetics
rlaurie/the-great-travini
datadyne/mobile-episurveyor
boothead/nose
fil/quotes
vintermann/holststpaul
scoxfur/j-csi
howitzer/cakephp.vim
webera/pdf_diagram_creator
chaoyi/test
rdas/splunkengine
justinabrahms/pip
dolinaswiatla/dolinaswiatla-bugtracker
ptroja/mrrocpp
monkey/mcwow-tc
rcourtie/jump
imomoi/4konverta-wpf
agus/projekt
dizzyd/stats
mkramer/sxipm-lua
jart/fabulous
rcourtie/peg-solitaire
carstenlenz/snowoverlay
mkramer/cyassl
earthq/vanilla
Lazin/concur.actors
fil/links
smacdo/rot13
smacdo/brainfreeze
enimihil/dzenstatus
earthq/vanilla-database
idler/mmp
monkey/trinitycore322a
cspanring/arcmap-svg-export
pikthulhu/dominion
nic/bayesianfilter
rattlehead/mathprog
gorstt/gorst
shootaenz/node
carstenlenz/snowonlyoverlay
mikemcmaster/adiumrvpplugin
scoxfur/koalatweet
rcompton/osg_screw_around
yuriks/jumper-engine
cenourinha/youtuga
itaborai83/chess
mfriedenhagen/ckjm-maven-plugin
flavio58/surf
jcole/chess
jrossi/forensicscontest
lawgon/csrftest
sdouche/xpdayfr
keba/pyworm
bcl/homevideo
farid/analis
nathanjd/emubox
bobf/termtools
edmarshall3/pictures
trijezdci/ctelib
trijezdci/ebnftool
warpten2525/commercial-material
trijezdci/lifolib
trijezdci/utils
asplake/routes
bertux/mirrorball-bodhi
trijezdci/fifolib
bobf/devblog
chrism/sphinx
dzenanr/educ
trijezdci/deqlib
zeus/soappy
z19/freebsd
tingle/test
weisjohn/john-weis
weisjohn/bhive
metaperl/indian-language-converter
metaperl/sanskrit-translit
frechtenstein/partial-soc
metaperl/pushtest
dbergum/roomie_david
metaperl/challenge-ladder
dbergum/david-roomie-real
ianeslick/weblocks-ian
mohbana/contexteditor
max3/metascore
mohbana/pde-scala
MegaMo/wacken-08
weisjohn/endoftheworld_weisjohn_2
anall/dwdev-tools
sanxiyn/apertium-quenya
oskarei/ru
joubert/mnemosyne
csytan/test
clairvy/my
anall/dw-esnimapd
metaperl/gnubux
metaperl/nagare_poll
metaperl/elixir_poll
metaperl/ptc_math
chaitanyag/sandbox
oc/oc
skypher/fdisk
clairvy/csnagoya
metaperl/gnumatrix
skypher/weblocks-stable
mohbana/scalaparsers
repeatedly/livedoor-wiki
skypher/elephant
metaperl/bashrc
metaperl/parse-omimports
joel/robo
metaperl/webpy-tutorial
sanxiyn/clipath
daks/monthcalendartoplist
daks/xenmonit
mazzer/dist_webbshop
metaperl/redick
number5/dotfiles
skypher/weblocks-site
false/depot
mazzer/community
ddrake/sagetex
bwalkin/bwtoolkit
lucmult/pagseglib
zihado/javase
flamedragon3/ae-operation-center
jdhardy/code
Tom/test
jhjaggars/dictionary_switches
metaperl/metaperl-website
metaperl/qooxdo-basicmath
skypher/weblocks-docs
metaperl/pyjamas-book
winsmith/the_zombie
EP/tokyotyrant-java
pacojp/test
pacojp/test2
pacojp/test3
winsmith/die-stimme-gottes
metaperl/moose-cookbook
hakanw/django-better-chunks
hakanw/django-email-usernames
eyunak/wire-etc
metaperl/catalyst_view_seamstress
metaperl/emacs
metaperl/asciidoc-el
flamedragon3/game
metaperl/tmp
pkeane/dase
metaperl/siki
metaperl/cgi-mo
bpd9116/raytracer
sabath/wowtheory
sabath/nvm
evoker/daplayer
davcamer/ccnet
repeatedly/esoteric-language
itaborai83/pywatcher
brynjar/zine
EP/specipy
itaborai83/pareto
haiwurld/haiwurld_site
GreydMiyu/saeman
itaborai83/maze
jmtulloss/cobra
tapam/thought-tracker
coffeemug/weblocks-slava
jnoller/nose-testconfig
jnoller/pyjavaproperties
jnoller/testbutler
sadists/me
jeffar/django-book-pl
will/epgsql
OuchOuchOuch/pygainer
mazzer/maztask
orion/orion-dev-build-linux
okawa/pics
pixelcort/test
jnoller/pycon_2009
sschroed/ruby-mn
ingenieroariel/pinax-api
pot/pot
ingenieroariel/django-oauth-fork
ingenieroariel/django-storages
daks/django-userthemes
gar/coma
skypher/cl-prevalence
jpellerin/nose-xml-skippy
taoyh/wikicube
ingenieroariel/django-wapi
joe/project2
carlisa/avatar
dyoung418/karaoke_player
pao/hsvm
yuval/ngram-project
boothead/hgrecipe
evoker/liber1
david415/mysql-cluster-tools
dbm/website
boothead/django-fixtures
pao/pkgenv
magicsword/millertest
hirman/railsspace
boothead/fixture-django
hirman/scjp-60
kushal/tux3
kushal/tux3_dedup
yoshiori/hatenadiary
dyoung418/pykaraoke_daymod
copiesofcopies/identifox
copiesofcopies/identifox-copiesofcopies
winsmith/copymeister
qwzybug/benlove
kayjb/pics
mbhinder/cop5555
yoshiori/pybundle
qwzybug/learnlove
milancermak/kyva
yoshiori/hatenagraph
admp/python-tutorial-lt-admp
kshimo69/test
ancer/topcoder
jst/inkscape-gcode
EP/schemaless
Gustavo/whatpylonsproject
mitcho/ubiquity-playground
panaut0lordv/tc2-patches
konrada/sphinx-extensions
beamtous/sandbox
evoker/librall
zeus/watermarker
jjc75/testrepo
anall/net-dreamwidth-perl
magopian/django_wsgi_base
widiantonugroho/kamonesan
danskelly/mythexport
yonibear/stuff
malde/bespin-malde
catbert321/ataxx
frosth/dotcloud-constraints
anall/dreamfuse
tnt2ray/buttonfacade-skin-package
sanxiyn/matplotlib-canvas
konrada/ouchclip
oblivionx/cyb
tnt2ray/actionbar
yonibear/kadavr
jmnovelov/guiclientlibrary
ulikoehler/xraysim
chrism/pypes
tnt2ray/totemtimers
hirman/django-tutorial
konrada/pstopkill
jpellerin/nose-pycon
nicholasbs/purplevoter
beamtous/bugger
darthflatus/tgextpages-component
skabet/pretty
EP/me2day-scala
jpellerin/dotfiles
skypher/weblocks-mystic
brainiac318/new
dangoor/testrepo
emma/wima
dangoor/uvc
jayaraj/static-generator-customized
jayaraj/card-project
bobf/sasqlconsole
rentzsch/tasktracker
beamtous/bugger-simple
knappe/flagcommander
bobf/bpython
burak/cpan-sys-info
burak/cpan-sys-info-driver-bsd
burak/cpan-sys-info-driver-linux
burak/cpan-sys-info-driver-unknown
burak/cpan-sys-info-driver-windows
burak/cpan-time-elapsed
jpellerin/nosemacs
stuartrhamilton/web-coches-clasicos
jpellerin/pip
sreeix/metronome
kris/dotfiles
rvnth/trinitycore2
pjhyett/repo-de-janeiro
matsp/minibasic
obeattie/cobra
weswinham/django-storages
gallagher/mumble-admin-ice-php
weswinham/s3-https-access-url-option
copiesofcopies/metafox
frostbite/frostbite
mental/armstrong
yoshiori/java-pit
roettgar/mediaweb
8pm/8up
skypher/cl-slog
ronaldbe/hexengine
dyoung418/pywanderer_old
hoffmann/pysocialgraph
nickdaly/gemrb-launcher
nickdaly/gemrb-installer-disc-collector
srobertson/quodlibet-testing
rinkameari/python_projects
chipsourn/mangoapi_sprockets
yoshiori/gaewicketguice
hirman/nblog
jpellerin/nosedeprecated
thieu/dotcloud
jpellerin/nose
jpellerin/nose3
nickdaly/volume-tray
nickdaly/prboom-launcher
nickdaly/apt-busted
pjhyett/hg-git
nickdaly/pypanel-autohide
ot/bpt
skypher/weblocks-dev-slot-name-clash-control
ehren/django_hackathon_8
skypher/cl-i18n
rakete/hsverse
jdhardy/ironpythonzlib
jdhardy/_ast
jdhardy/django-aspnet
jdhardy/adonet-dbapi
sgraham/sayyoho
EP/undercover
frosth/dotcloud_vmbuilder_plugin
moridin1138/pyecm
srobertson/rc-files
clojure/cultjure
adil/adil-bespin
skabet/bacon-langref
skabet/bacon
mtrichardson/hgmail
mtrichardson/django_satprep
drernie/core-plot
gxti/shapow
iadle/onestop_webservice
zeus/pseon
zeus/elemental
bhagany/lodgemacs
kelvin/slippy-chart
jgeng/upe
magopian/pyconfr
jpellerin/jinja2-main
bhagany/emacsd
dorseye/toolbox
srobertson/strobecc
gugod/waitjs
asdfqwer/stoopid_test
fairview/fccv
jnoller/nose-pathmunge
skypher/weblocks-dev-083branch
guenther/openclonk
insin/chaos-wii
leonh/laterpaper
mcwelschen/emprendinet_2105
spoob/pyload
magopian/pyconfrs5
dyoung418/admin_linux
vivien/etna-pmob
choffman/pyracktables
jgeng/wxhg
nakamura/yomogi
brawnyind/whiteboad
chkfj/eventmanager
ivanov/youtube-dl
sanxiyn/multimine
cascais/kaos
skypher/stx2any
cascais/ideologia
frosth/dotcloud
beamtous/gmail-notify
zeus/limbo
oavdeev/alastfm-player
jpellerin/wtforms
malde/bespinserv-malde
mazzer/calculator
twl/hhscripts
jay_soo/pylons-investor
hyperion/towncrawl
rodrigogalindez/repo1
cleonello/jqplot
skypher/weblocks-dev-defer-javascript
skypher/weblocks-dev-history-rsh
beamtous/vim
nic/twaddle
jpellerin/freehg
nic/resolvconfpy
viellieb/pcp-analyzer
viellieb/vhdl-ad9910
konrada/arduscope
philip/font-optimizer
mihelich/eigen2
Lazin/simple-search
bobf/bpython-www
demizer/libdxf
kamada/flex-starter
jay_soo/pylons-webservice
aezell/feedcache-memcache
lawgon/fossconf
firs/firs
jgeng/osdi2
mcwelschen/dlc_practico_3
demizer/answers-to-the-c-programming-language
nic/md
rakesh/test
mza/core-plot-wwdc
drernie/core-plot-wwdc
klaaspieter/core-plot-wwdc
fredglover/core-plot-wwdc
dmercer/parsec-erlang
abrons/hg4rubymine
trentm/pics
trentm/sandbox
chkfj/kay-openid
gpolo/stuff
firs/heqs
deepspawn/smc
funkin2x/choriflayer
Lazin/cpp-stemmer
jpoirier/cr_lib
shootaenz/shoota
feya/sasplanet
john_b/proc_parser
bobf/cusswords
obmib/strategie
Paradox/trinitycore2-309
mariod/gsoc2009
grouzen/qls
jdhardy/wlw-plugins
mcwelschen/dlc_jee_3
grouzen/dotfiles
chipsourn/mangoapi-rearrange-files-structure
sanxiyn/producingoss-ko
frigo/sconside
viellieb/analysix
Paradox/trinitycore2-309-pq
oheard/gimt
fbru02/pokerstars
cascais/company
mihelich/cvxpp
cascais/tutorial
dmercer/erlang-edi
nels1835/csci5211_nels1835
fbru02/pokerstars2
fbru02/pokerstars3
scubastard/icfp2009
drbrain/hscore
drbrain/hs_util
drbrain/hyperspace_modules
bobf/soundbush
rams/linkpry
Lazin/project-euler
daghenrik/ale
cascais/license
gch/tutorials
bobf/uzbld
mook/mozwin64
xdissent/feedcache-django
priyanka/per-process-namespace
boothead/utils
becomingguru/practical-django-projects
boothead/djrender
davcamer/canary
niels/signupbox
noahcampbell/sdbparql
grouzen/snake-sdl
lucmult/vim
mgunneras/django-storages
rsc/vx32
rsc/plan9port
safe/python-turtlebackend
davcamer/hgsubversion-py26-win
mwilcox3000/mwilcox-public
jgoecks/galaxy-community
bulykyn27/bulykyn27
oliland/compsoc
scarytom/docnap
mariod/couchdbkit
boothead/twodegnosedjango
frosth/dotcloud-vm-generator
croach/dtree-oreilly
bomberman/bomberman-repository
aezell/django-piston-sqlalchemy
tdd/mpiperuse-dtrace-provider
qwzybug/phonepix
zenn/blackbean
rail/translate-toolkit-mozilla
davcamer/bayesian-builds
zenn/gradient
alexi/bespin
darthflatus/miru-enhancements
houtkop/avatar
zenn/physaxe-joints-rays
kerin/minstrel
skypher/shuffletron
bobf/bookshelf
mtrichardson/django_template
esh/latte
kaiga/bos-core
sugi205/my-first-blog
xdissent/virtualenvwrapper
brotherlogic/busitlib
brotherlogic/busit
jrossi/tweethon
bradh/iulib-bradh
dwi/archlinux-packages
Itn2002/ochusha
silverblaze/silverswipe
gthomas/iptcinfo
silverblaze/i-have-no-clue-what-i-am-doing
silverblaze/wtf
cascais/embededfont
jgao/mercurialeclipse
silverblaze/start-over
kosborn/phpns
bart/mcabber
bradh/ocropus-bradh
wiwat/xe-test
mtrichardson/rss-thing
winsmith/cene
winsmith/cenesite
pyalot/abaeus
pyalot/cdlibrary
pyalot/sqlalchemy-console
pyalot/brainfuck-x86-compiler
pyalot/pyasm
pyalot/sociograph
pyalot/gletools
pyalot/lumiscape
maxiplux/test
saketh/notalon
ctheune/assembly-cms
brotherlogic/busitsite
oritang/tossup
matth/everytree
nowells/sphinx
pyalot/springuv
roarnex/vfvf
yas/createmecabdict
nxg/bibhtml
gensior/djangoseattle
wrice/jscript
aamuuninen/lesedb
eti/e-ti-point
yuriks/opentyrian-enhanced
hy/ais
dabomb69/bash-portable
lawgon/ilugc
alunbestor/boxer
raketjan/programsystemkonstruktion-i-c
dustwolf/xsltaggregator
dustwolf/twit
dustwolf/principles-and-classes-database
pbyrne/url-shortener
nic/pywebkitgtk-browser
firs/fish
jrossi/untiny
zenn/garbanzo
tomkfischer/mycrypto
david415/gr_scanner
qwzybug/boxedviews
devender/mytestrepo
hakanw/tabmate
mazzer/j2ee-blog
fil/blog
sanxiyn/megi
rovangju/xinha_csspicker
pyalot/pyglet
nickdaly/murrina-night-2
arthurdebert/django-piston
speno/greenbar
dabomb69/cheesebot
danger/pysublib
chaos/mailteacher
chrism/marco
sanxiyn/fluidfs
ivan88/testproject
tomkfischer/myutilities
tomkfischer/mynetwork
akbloom/config-files
dabomb69/perl-portable
rcourtie/awesometopia
nickdaly/release-utilities
hakanw/connectionchecker
miouge/glob2-yog-web-stats
miouge/glob2-web-stats
dustwolf/microkernel
daevaorn/django-coat
dustwolf/euroctrl-alt-delsi
nels1835/rochester_plone
rinkameari/railroad
ck/openclonk
kevingessner/murky
arvi/arviq
burak/cpan-parse-http-useragent
alessandram09/rv-trader
rgreen/firsttest
rsc/drawterm
wangdong/toolkit
mtrichardson/jsonpusgs
mmalone/django-piston
hunamung/food-fling
filippoalbertin/phil-sites
elaine/tabular
whitmo/blister
neoedmund/neoe
jart/asterisk-voicechanger
jart/asterisk-jukebox
jart/asterisk-parrot
dabomb69/sparta
nhmc/pyserpens
jart/asterator
lawgon/osmindia
jart/rapidcall
milespomeroy/strip-profiles
pbyrne/idea-bucket
idangazit/django-piston
scrubb/openvpn-la
skeeto/sumobots
darrylcousins/geoip-service
tiduswc/tw-simple
kosborn/php_license_verify
reneschmidt/dwb-tvid
jpoirier/efis
gpraveenkumar17/my-public-repository
nataxane/sample
gar/mulligan
scrubb/gpg-backup
scrubb/admin-svn
scrubb/updatenotifier
scrubb/changelog
lajos/beater
aerie/pictures
vbalko/3hore
zinigor/jsspeedtest
carstenlenz/svn-scripts
magopian/munin_response_time
alsh/pygui-mirror
magopian/combienjegagne
digitalxero/hg-eol
magopian/agopianinfo
lawgon/southzone
winsmith/imensa
repeatedly/opauthshibbolethplugin
david415/ganglia_gmetric_scripts
ceejbot/leafedmods
calaniz/eboto
calaniz/eventlet-08
jay_soo/project-euler-solutions
rcourtie/secretsanta
aditya/csnippets
Lazin/alang
howarth/fall-09
erikt/omegapoint-grafisk-profil
mfriedenhagen/hgkit
sanxiyn/we2day
nataxane/concordance
ehren/mote_apps
jgoecks/jg-galaxy-patch-queue
solidsnack/attoparsec
jlatt/v8erl
alsh/pygui-patches
pmpatel/fimero
jasbaker/pysistence
magopian/acamofr
jobs/sysmon
jobs/pinotify
groves/growl
nickdaly/pycontract
jnoller/draft-peps
nicknick63/ezida
david415/fp-python-notes
hmonsalve/orsep-cd
whitmo/geonode
dsibilly/pyga
chilli0/cipher
rlaurie/canal
ehren/gm_mote_apps
liqweed/emissions-old
lililyy2004/lee
kris/ucm
erikt/johnwilandercom
alexi/my-example-repository
bobf/minificationwebhelpers
lericson/spawning
mazzer/musicplayer
jasbaker/conf
balabhaskar/nano
lth/jetpack
mhayes__/csc136-h1
dustwolf/xmlproxy
ngroup/thinkpy-exercise
sanxiyn/seedrb
alistair7682/facesms
mfriedenhagen/mercurial-crew-jython
thebench/fdsvg
thebench/dsgb
bramatos/sources
nnevatie/pegasus
sanxiyn/hama
daevaorn/suds-ews
daomaster3000/info4307
rcompton/mathinwon
mhayes__/csc138-a1
flohaas/mlmanager
lawgon/fida
anchor/settings
quarkcool/html5-fr
olenatkh/tmus
olenatkh/piccoua
gch/utils
magopian/acamodjango
rcourtie/rc033282
dabomb69/gedit-portable
rcompton/fmm
rlotun/pytweepml
jrossi/ossec-hids-tools
jobs/gwt
magopian/django_base
xanothos/rails-depot-app
david415/davids-haskell-notes
rcompton/musical-gauss-seidel
reiatsu/terpentin
jart/soundtouch4c
nataxane/main
ehren/gae_memcachespinlock
wayne/tests-and-junk
mirhampt/jquery-defaulttext
rcompton/ci-matrix
dabomb69/windeb
kris/bb
oliland/compsoc-drupal-skin
dicson/splean
kometen/load-average
lawgon/bamboobanks
lericson/gevent
pratic/metnav
mhayes__/csc138-a3
keba/robo-ai
wayne/mantis
kometen/timekeeping
tranbinhnguyen/asimplejobdatabase
xanothos/vcccc
winsmith/sop
mfa/django-registration
rcompton/fft-sonification
timattox/sensors-ompi
adonishi/kichi-radar-test
trijezdci/kvslib
lericson/gevent-spawn
sealibora/dingus
zooko/distribute
wenchen/spell
wenchen/transgene
digited/moonglide
rattlehead/mydate
terrycojones/fom
mirhampt/sql_interp
danielks/euler
rcompton/mathjoey
8pm/homework
data/zine-main
kaelin/cuttlefish
davids/add-ignores-and-context
sotarok/wikihub-wiki
mtrichardson/tender-multipass
sarahmaethomas/coursework
sarahmaethomas/paper-works
donovanhide/django-piston
mfriedenhagen/webdriverfirebug
gds/ocaml-dynatvar
knappe/umlello
korchasa/php-templates-test
franckbret/satchmo-xhtml
periwnkl/test
sgithens/arduinolibs
sgithens/nearspace
exebiet/exebiet
gxti/ninamori
milancermak/django-test-pack
bruth/django-breadcrumbs
stani/bpython
rcompton/poisson2d
dabomb69/win-bash
silkwhip/silksbuck
damirr/curso09-10
milancermak/fulldate
gonzokool/ae86-club
pmeerw/test
floppy/ruby-mp3info
zeus/pbot
rcourtie/quotidien
damirr/curso08-09
ulduar/322
dustwolf/eil-framework
cunhaleandro/avatar
rcompton/poisson3d
rcompton/fftw-boost-wrapper
lutik/lutiksd2
tankc/nodelinker
tankc/quakeviz
tankc/pong
tankc/primer
sturmschlagwow/sturmschlag-datenbank
yuriks/threelane
spartango/multi3d
effik/my-tc
btv/ps3_trophies
wragge/rswrapper
jpellerin/python-stomp
amac/tiljander-proxy-graphs
winsmith/django-thumbnail
mfriedenhagen/jbehavesearchtests
wragge/zotero-translators
chewable/django-lfs
Colfax/vimsetup
Colfax/bashsetup
titanemu/titandb
papiani/latex-notes
lacosta/prueba
msheshtawy/bespin-login-page
blunt_dude/blunt_dude
oliland/lolidrewthisdragon.com
gregdelozier/miscellaneous
papiani/formedit
korkakak/txn-pull
becomingguru/django-gotchas
korkakak/txn
gkatsev/old-website
rosh/squares-game
rosh/substitutions
kc/pyaeso
nic/fizzbuzz
thammi/cutesquare
djipi2000/myprogramme
cgs/splitit
ghalex/as3flexdb
nic/imgup
mpenning/ciscoconfparse
lafriks/sourcegridnix
korkakak/txo-signals
abbot/shredder
lericson/werkzeug-main
majedrayan/majedrayan
band/simplesetup
msheshtawy/blp
hammertime/t
willbr/bookit_tweaks
james.andres/taxonomy_export
hyperion/chord
tjacoby/test
mcwelschen/tsb
dangoor/bespinclient
dangoor/bespinserver
lastkarrde/tc2-lk-patches
denzel/comref-translation
gianni/vaet
justinabrahms/south
prof1983/assistant
hansbrattberg/unusedcodedetector
demas/reptool_docs
justin.lazarus/receiving_scheduler
abbot/m-x-doctor
keegan3d/inappsettings
nic/simpletables
oliland/houseplot
dabomb69/o-sparta
dabomb69/u-sparta
abbot/pwdhash
nicholas/projects
dpirotte/amp
boothead/formalchemy
docs/docs.bitbucket.org
arsecroft/botfly
gimite/chromeguestures
leegeorg07/pwitty
dethe/gocairo
jimmikaelkael/new-iop-core
berengier/ek
nowells/django-lifestream
arctic/arcticore
angelogja9/vehicle-shipping
darthflatus/tg-docs-untested
anall/nesdev-tools
rphillips/simple-tarsnap
fubar/galaxy_rgenetics
rlaurie/the-great-travini
datadyne/mobile-episurveyor
boothead/nose
fil/quotes
vintermann/holststpaul
scoxfur/j-csi
howitzer/cakephp.vim
webera/pdf_diagram_creator
chaoyi/test
rdas/splunkengine
justinabrahms/pip
dolinaswiatla/dolinaswiatla-bugtracker
ptroja/mrrocpp
monkey/mcwow-tc
rcourtie/jump
imomoi/4konverta-wpf
agus/projekt
dizzyd/stats
mkramer/sxipm-lua
jart/fabulous
rcourtie/peg-solitaire
carstenlenz/snowoverlay
mkramer/cyassl
earthq/vanilla
Lazin/concur.actors
fil/links
smacdo/rot13
smacdo/brainfreeze
enimihil/dzenstatus
earthq/vanilla-database
idler/mmp
monkey/trinitycore322a
cspanring/arcmap-svg-export
pikthulhu/dominion
nic/bayesianfilter
rattlehead/mathprog
gorstt/gorst
shootaenz/node
carstenlenz/snowonlyoverlay
mikemcmaster/adiumrvpplugin
scoxfur/koalatweet
rcompton/osg_screw_around
yuriks/jumper-engine
cenourinha/youtuga
itaborai83/chess
mfriedenhagen/ckjm-maven-plugin
flavio58/surf
jcole/chess
jrossi/forensicscontest
lawgon/csrftest
sdouche/xpdayfr
keba/pyworm
bcl/homevideo
farid/analis
nathanjd/emubox
bobf/termtools
edmarshall3/pictures
trijezdci/ctelib
trijezdci/ebnftool
warpten2525/commercial-material
trijezdci/lifolib
trijezdci/utils
asplake/routes
bertux/mirrorball-bodhi
trijezdci/fifolib
bobf/devblog
chrism/sphinx
dzenanr/educ
trijezdci/deqlib
zeus/soappy


Title: Re: Bitbucket set to remove Mercurial support
Post by: yourboylloyd on August 29, 2020, 03:13:27 AM
With Bitbucket now not working. Is there anyway to fix this forum with a few clicks :D ? Or even a tutorial on how to browsing the mercurial github converted repo? Is there even a github converted repo? Also what was the final verdict on moving forward on a repository? Anyone ever heard of Helixcore?

I've seen forks of the repo but I feel like that can get confusing.

(Apologies for anything that sounds noob)
Title: Re: Bitbucket set to remove Mercurial support
Post by: names_are_hard on August 29, 2020, 03:28:44 AM
Bitbucket still works - just not for Mercurial repos, as they warned us for over one year.  The forum is unchanged.  There is no official Mercurial git converted repo.

I have migrated a recent Bitbucket version to git, here: https://github.com/reticulatedpines/magiclantern_hg_02

Officially, I think the plan is https://hg.sr.ht/ ?
Title: Re: Bitbucket set to remove Mercurial support
Post by: Danne on August 29, 2020, 06:19:06 AM
Testing your migrated version @names_are_hard. Switching branches possible but trying to build for eosm asks for mercurial. Expected?
cp ML-SETUP.FIR /Users/daniel/magiclantern_hg_02/platform/EOSM.202/zip/
[ VERSION  ]   ../../platform/EOSM.202/version.bin
abort: there is no Mercurial repository here (.hg not found)
abort: no repository found in '/Users/daniel/magiclantern_hg_02/platform/EOSM.202' (.hg not found)!
make: *** [../../platform/EOSM.202/version.bin] Error 255
daniel@MBPsomtorDaniel EOSM.202 %
Title: Re: Bitbucket set to remove Mercurial support
Post by: a1ex on August 29, 2020, 07:33:58 AM
The repo on Heptapod is finally working:

hg clone https://foss.heptapod.net/magic-lantern/magic-lantern

Still need to do some housekeeping before being able to commit, apparently. Didn't feel particularly well lately (hoping it's not some virus), so... it got delayed once again :(




TODO: I should replace the links with https://foss.heptapod.net/magic-lantern/magic-lantern throughout the forum and website. Forum links can be automated, I'll look into it, so... no need to edit the posts manually (I hope).

There are some syntax differences, for example:
- before: https://bitbucket.org/hudson/magic-lantern/src/qemu/contrib/qemu/README.rst
- after: https://foss.heptapod.net/magic-lantern/magic-lantern/-/blob/branch/qemu/contrib/qemu/README.rst
Title: Re: Bitbucket set to remove Mercurial support
Post by: Danne on August 29, 2020, 12:03:59 PM
Nice to see mercurial still alive on heptapod.
Ok, so I created an account and whatever I try to do I can´t find a way to create a new project to my account? So I try and read tutorials but nowhere can I find that basic info. I must be missing something vital. Create a project button is not active on my account?
(https://i.postimg.cc/qR8GwvMm/Ska-rmavbild-2020-08-29-kl-11-54-57-png-500px.jpg)

(https://i.postimg.cc/ydqP0ZBg/Ska-rmavbild-2020-08-29-kl-12-00-02-png-500px.jpg)
Title: Re: Bitbucket set to remove Mercurial support
Post by: a1ex on August 29, 2020, 12:13:56 PM
Nope, users are not allowed to create their own projects. I cannot do that either; I'd have to request it to them. They don't support personal forks either; everything should be in one repository. Haven't fully grasped how exactly it's supposed to work...

Also, you should be able to reuse your old Bitbucket account.

Quote from: a1ex on June 13, 2020, 12:42:49 PM
Now, we should all review their workflow, which is described here:
https://heptapod.net/pages/faq.html#workflow
https://octobus.net/blog/2019-09-04-heptapod-workflow.html

Existing contributors are already able to login with their Bitbucket and/or Github credentials [...]
Title: Re: Bitbucket set to remove Mercurial support
Post by: Danne on August 29, 2020, 12:42:08 PM
Yes, started out with reusing my old bitbucket account but then thought I would start from scratch since my heptapod user link was including my email adress.

Hm, indpendent forking not working, not even starting up a new project. So you mean you have someone looking att your code before it was uploaded? Seems this needs some more tinkering than expected.

Problem with bitbucket as well is they deleted or blocked all mercurial sources. Will probably affect badly into heptapod. Or maybe they stashed all old mercurial code and use that...
Title: Re: Bitbucket set to remove Mercurial support
Post by: names_are_hard on August 29, 2020, 02:24:19 PM
QuoteTesting your migrated version @names_are_hard. Switching branches possible but trying to build for eosm asks for mercurial. Expected?

This is expected and is not my fault.  The ML build process has been made so that it will only build if the source code is managed by Mercurial.  That is a strange decision to my eyes, but I wanted that repo to be as close a copy as possible.

I have another repo where building with Git works fine, the changes you need to fix that problem are small.  But that repo is not trying to be all of ML, it's a place for me to do whatever I want.  I've drastically cut down the number of branches as I work on merging everything into Unified.

The changes to make building work without requiring Mercurial:
https://github.com/reticulatedpines/magiclantern_simplified/commit/3163d41cee35fb54b4308e1f32318ff87de53645
Title: Re: Bitbucket set to remove Mercurial support
Post by: Danne on August 29, 2020, 02:44:48 PM
Yes, nice to see some progress here. And maybe it´s time to let in on git as it seems to be a viable option around. Don´t really see any "free" mercurial web host giving the accesibilty we had before. Didn´t look very hard but a few hours.
I´m thinking github although I have been testing git on bitbucket a lot lately. Even piggybacked my mercurial branches into git projects so they could be migrated to mercurial further on.
I am weighing in user accessibility vs hard to access code and development environments leaving most enthusiasts out of the code. Code should be out there.
Title: Re: Bitbucket set to remove Mercurial support
Post by: names_are_hard on August 29, 2020, 03:35:02 PM
This was discussed a lot previously.  The main devs prefer Mercurial and want to keep using it.  Yes, this does make the project slightly less accessible to enthusiasts, but not much.  And, honestly, the enthusiasts (I would count myself as one of these) don't matter as much as experienced devs that know the code well.
Title: Re: Bitbucket set to remove Mercurial support
Post by: Danne on August 29, 2020, 04:10:01 PM
Quote from: names_are_hard on August 29, 2020, 03:35:02 PM
Yes, this does make the project slightly less accessible to enthusiasts, but not much.  And, honestly, the enthusiasts (I would count myself as one of these) don't matter as much as experienced devs that know the code well.
Strange view for a growing gpl community imo.

As long as it's not a "knocking at your door" solution, getting permission for doing this and that I am fine with moving to heptapod or similar.
Title: Re: Bitbucket set to remove Mercurial support
Post by: names_are_hard on August 29, 2020, 05:57:32 PM
I think we might be talking about slightly different things?  I was talking Mercurial vs Git, not anything to do with Heptapod.  I think I misinterpreted and you were mostly concerned about the Heptapod UI?  I don't know anything about that.

From skimming the workflow docs Alex linked: "not having forks means that all contributors to a project have to be granted the right to push topics to its main repository. In Heptapod, this is the Developer role, which does not have the right to push to named branches by default".  So people have to get used to working in topics (some Mercurial thing, I don't know what it means, something like a temporary named branch I think?).

And also: "only project Maintainers are permitted to push a public changeset or the promotion a changeset to the public phase".  Which I think means only maintainers can merge topics into "real" branches?  I don't have a good sense of the Mercurial branch model, but at least Heptapod forbids having multiple heads for one branch.  That's one needlessly confusing feature of Mercurial restricted :)
Title: Re: Bitbucket set to remove Mercurial support
Post by: Danne on August 29, 2020, 06:16:21 PM
If independence is gone that's a pretty high price to pay, staying only mercurial.
I am trying to understand the core idea on heptapod. Seems more centred around a main project holder but could be wrong. I still can't figure out how to start project 1.

Sidenote. It is disturbingly easy start using git  :P.
Title: Re: Bitbucket set to remove Mercurial support
Post by: names_are_hard on August 29, 2020, 06:37:31 PM
I don't understand what is supposed to have been lost.  It was a mercurial repo before, it's a mercurial repo now.  You can download everything for free, same as before.  You can take that code and make your own repo somewhere else if you want, same as before.  The workflow for submitting changes has changed, so is it something to do with that?  It reads like it just needs the config tweaking.

I never really used the UI, I prefer CLI tools, so I'm probably missing something.  For me, it's the same ease to start using git or hg.  They both use "init" or "clone" in the same way.
Title: Re: Bitbucket set to remove Mercurial support
Post by: Danne on August 29, 2020, 07:03:35 PM
Hosting and forks, collaboration, flexibilty. Not mercurial of course.
I am no friend of hosting code locally.
Title: Re: Bitbucket set to remove Mercurial support
Post by: names_are_hard on August 29, 2020, 07:16:59 PM
Heptapod allows all those things, just in different ways than Bitbucket.

I'm not talking about hosting locally.  You have to download the code to work on it, but you upload it afterwards.  Although of course with hg and git, you do always have a local repo as well; that's how they do the distributed part.  But that hasn't changed.  And, having that local repo means no server can stop you forking, etc.
Title: Re: Bitbucket set to remove Mercurial support
Post by: Danne on August 29, 2020, 07:24:11 PM
Yeah, well. Let's see what happens.  Meanwhile maybe you can show how to push anything to heptapod? I just couldn't.
Title: Re: Bitbucket set to remove Mercurial support
Post by: names_are_hard on August 29, 2020, 07:58:00 PM
I've never tried to use Heptapod, so I don't know.  I'd suggest starting another thread to try and diagnose any problems.  As a guess, you may be missing a required role for whatever task you're trying to perform.
Title: Re: Bitbucket set to remove Mercurial support
Post by: Danne on August 29, 2020, 08:10:46 PM
Well. Initial tryouts not very successful and no time for posts. I keep going like I do atm.
Jusr think the provider could have been more clear how to get going or maybe I,m just blind atm being busy posting nonsense instead of reading heptapod guides  :P.
Title: Re: Bitbucket set to remove Mercurial support
Post by: a1ex on August 29, 2020, 08:51:50 PM
I thought I said the commits are not working yet (not even for me) :P

But plain "hg clone" should work:

hg clone https://foss.heptapod.net/magic-lantern/magic-lantern


Or "git clone", if you prefer, with the git-remote-hg (https://github.com/felipec/git/wiki/git-remote-hg) extension.

In theory, this should work, but crashes here (figure out why):

git clone hg::https://foss.heptapod.net/magic-lantern/magic-lantern


In practice, it works with this workaround:

hg clone https://foss.heptapod.net/magic-lantern/magic-lantern magic-lantern-hg
git clone hg::magic-lantern-hg magic-lantern-git
Title: Re: Bitbucket set to remove Mercurial support
Post by: names_are_hard on August 29, 2020, 09:24:26 PM
You said you couldn't create projects :)  I don't know what kind of a limit that is, I don't know what a Heptapod project is.

From their FAQ it reads like commits should work for you, I can see you're a Maintainer for the project (and there are no other members which explains why Danne can't push).  I guess they don't have everything working yet.

The first git clone doesn't crash here.  It was very slow so I cancelled it, perhaps before whatever crashes?  I can download the entire Github migrated repo of ML faster than git-remote-hg was able to download only 100D_merge_fw101.
Title: Re: Bitbucket set to remove Mercurial support
Post by: yourboylloyd on October 16, 2020, 01:11:13 AM
Quote from: a1ex on August 29, 2020, 07:33:58 AM

TODO: I should replace the links with https://foss.heptapod.net/magic-lantern/magic-lantern throughout the forum and website. Forum links can be automated, I'll look into it, so... no need to edit the posts manually (I hope).

There are some syntax differences, for example:
- before: https://bitbucket.org/hudson/magic-lantern/src/qemu/contrib/qemu/README.rst
- after: https://foss.heptapod.net/magic-lantern/magic-lantern/-/blob/branch/qemu/contrib/qemu/README.rst

Hey A1ex, any update on this? There have been multiple users that I've seen trying to get started with ML but because the links are dead, there is no all in one place to learn anymore.
Title: Re: Bitbucket set to remove Mercurial support
Post by: a1ex on October 16, 2020, 07:52:42 AM
Other than noticing that old commit hashes cannot be used on Heptapod (i.e. no direct link translations), no significant updates. The FAQ about progress & stuff applies here as well.




Edit: looked further into the Bitbucket - Heptapod link translation issue for commits. Heptapod uses internally a Git repository, as a temporary implementation detail (they intend to get rid of it eventually, but that will probably take some months or years). I've tried to replicate their Git mirroring process using their fork of hg-git (https://foss.heptapod.net/heptapod/hg-git), and I can get consistent Git - Hg mappings until commit 2c7a27c / b08b345ea3f3fb5dc11a0f6ffb4603b07063761a. The next commit, b8083a2 / cea71a6a628f66b722725387bb9c5c4794b0df16 on Heptapod, shows up as ae85588aeb12efb0895b9c41efd18e5d3c747de6 in my local Git copy.

I've looked at their sources (Heptapod itself is open source) and found the hash translation code in hg_git_repository.rb (https://foss.heptapod.net/heptapod/heptapod/-/blob/branch/heptapod/lib/gitlab/mercurial/hg_git_repository.rb#L263). They use a file named "git-mapfile", apparently generated by hg-git, which stores the mapping between git and hg commit hashes.

Currently, they don't seem to be able to look up anything on the web interface using the Mercurial commit hash (grep their sources for "sha_from_hgsha"), so in order to fix our Bitbucket commit links throughout the forum and documentation, we need to pick one of those:

- fix them manually (there are probably hundreds, not going to do that)
- ask Heptapod admins to implement this functionality for us (feature request)
- hack Heptapod source code to implement it ourselves, according to their coding standards, and submit a PR (it has to be accepted by them, a local fork won't be enough)
- ask Heptapod admins for their copy of git-mapfile for our repo
- write a crawler that browses our repo on Heptapod's web interface and rebuild  git-mapfile from there

According to the first joke from here (https://users.cs.northwestern.edu/~riesbeck/mathphyseng.html), the problem is solved - you may consider I'm the mathematician :P

Title: Re: Bitbucket set to remove Mercurial support
Post by: ChristianEOS on October 18, 2020, 12:02:26 AM
I was downgrading my firmware 5D3 III firmware 1.1.3 from 1.2.3. and it took me ages to find the download link obviously everybody wrote The canon Website. Then under magic lantern forum  I have found some bitbucket links as I can see the website is still not working?
Title: Re: Bitbucket set to remove Mercurial support
Post by: Walter Schulz on October 22, 2020, 12:25:59 PM
Not easy to follow your train of thought ...
If you are looking for Canon firmware 1.1.3 -> Top of page -> Downloads -> Download nightly builds -> 5D mark III 1.1.3 -> "Installation" or "Useful Links".
Title: Re: Bitbucket set to remove Mercurial support
Post by: kitor on November 07, 2020, 11:58:51 AM
(https://i.imgur.com/lu3BjSP.png)

I guess this should be fixed, of course it leads to nowhere.
Title: Re: Bitbucket set to remove Mercurial support
Post by: DeafEyeJedi on December 20, 2020, 06:21:55 PM
Quote from: a1ex on October 16, 2020, 07:52:42 AM
According to the first joke from here (https://users.cs.northwestern.edu/~riesbeck/mathphyseng.html), the problem is solved - you may consider I'm the mathematician :P

Joke of the year. Great work, @a1ex!
Title: Re: Bitbucket set to remove Mercurial support
Post by: a1ex on December 20, 2020, 06:29:20 PM
Thanks - for those who didn't get the joke, it means somebody still has to sit down and perform the work ;)

Which is exactly the problem I'm trying to solve with Open Collective.
Title: Re: Bitbucket set to remove Mercurial support
Post by: PaulJBis on December 21, 2020, 12:29:11 AM
Quote from: a1ex on December 20, 2020, 06:29:20 PM
Thanks - for those who didn't get the joke, it means somebody still has to sit down and perform the work ;)

Which is exactly the problem I'm trying to solve with Open Collective.

Excuse me if I'm missing something, but if I'm not mistaken, the tasks you mentioned above (rewriting all the links in the forum to go from Bitbucket to Heptapod) seem pretty much trivial, right? It's just a matter of loading the SQL dump of this forum and doing a search/replace. (the commit IDs are a different matter, admittedly).

I am asking this because I've long wanted to give some help to this project, after using it for so many years, but I have no experience with the kind of low level programming that you guys need, so when I read this, it sounded like something so easy that even *I* could do it...

(As for migrating the commit IDs, that might be above my skill level, but also: I've been looking around in the forum and the website, but haven't been able to find any link to specific commit IDs in Bitbucket. Do you have an example? )


Title: Re: Bitbucket set to remove Mercurial support
Post by: a1ex on December 21, 2020, 01:21:54 PM
Pretty much, yes. However, I'd prefer a "soft" replacement, when displaying the forum posts, rather than permanently altering the forum database. There's plenty of room for making non-obvious mistakes (that could be noticed months after the change).

You can find several examples by typing "bitbucket.org" in the forum search box, though for a complete list, one may need admin access. Or, after fixing the most common classes of links, the search box will reveal the remaining ones. Writing down the search/replace patterns would be a significant time saver. Caveat: it's not as simple as replacing "bitbucket.org" with "heptapod.net".

Though, the problem I've been trying to delegate to the other members of the community, is the one about migrating the commit IDs. Search string: "bitbucket.org/hudson/magic-lantern/commits", but there are also links from other repositories, that should be handled somehow. Heptapod only hosts the main repo, without the forks, but I've saved an archive of all of the forks before they got deleted - link earlier in this thread. Forks were also archived by softwareheritage.org (helped (https://www.magiclantern.fm/forum/index.php?topic=24420.msg227868#msg227868) by the team behind Heptapod), as mentioned here (https://www.magiclantern.fm/forum/index.php?topic=24420.msg228045#msg228045), so linking to them could be an option as well. Again, last time I've checked, the commit IDs didn't match.
Title: Re: Bitbucket set to remove Mercurial support
Post by: PaulJBis on December 21, 2020, 07:18:20 PM
Okay, let's separate this into two problems: the "normal" links to Bitbucket and the links to specific commit IDs.

Quote from: a1ex on December 21, 2020, 01:21:54 PM
Pretty much, yes. However, I'd prefer a "soft" replacement, when displaying the forum posts, rather than permanently altering the forum database. There's plenty of room for making non-obvious mistakes (that could be noticed months after the change).

If you don't want to touch the forum DB itself, the solution would be to add a HTTP redirection somewhere. But the problem is that, since all the links still point to the bitbucket.org domain, either you convince the Bitbucket guys to add that redirection for you, or you'll still have to touch the forum posts, if only to point them to your own redirector.

What I mean is: you'll have to edit all the links so that they point to "myownbitbucket.org" (for example),  and add in that domain a server that would take into account all the different paths and redirect the user transparently to the appropiate URL. We'd still be editing the forum posts, but only to change the domain part (from bitbucket.org to myownbitbucket.org or whatever); the rest of the URL, which is where the "danger" lies, would be rewritten in the new redirect server. Does that sound good to you, or is it too convoluted? (I could handle the redirect server).

As for the commit IDs, my impression after reading this thread is that the simplest solution would be to ask the Heptapod people for a copy of the git-mapfile. Am I mistaken, or is that a static file that doesn't change anymore? (I mean: the new commits are done directly into the Heptapod server, right? They don't have any corresponding commits in Bitbucket). Either that, or reverse engineer how Heptapod generates the new commit IDs...



Title: Re: Bitbucket set to remove Mercurial support
Post by: a1ex on December 22, 2020, 12:14:53 PM
This could actually work - and it doesn't have to be on a different domain. Replacing "^https://bitbucket.org/" with something like "^https://magiclantern.fm/bitbucket.php?u=" could do the trick. This replacement can be done on the fly in the forum code, without modifying the database, so if you'd like to test things temporarily on a different host, that's also possible.

Regarding the commit IDs, I also prefer asking Heptapod for a copy of their the git-mapfile. Still need to find the mental energy for doing that... :-\

BTW, if you prefer to discuss the details on IRC or Discord, I'm keeping an eye of these channels as well.
Title: Re: Bitbucket set to remove Mercurial support
Post by: PaulJBis on December 24, 2020, 11:57:52 AM
Wow, I haven't been on IRC in many years, and I still have to figure out Discord. I don't know if I'm a dinosaur or not enough of one...  ;D

So we would have to hack the forum code then, I guess. Should I just download the code from Simple Machines and start hacking at it, or do you guys have installed any custom mods in this forum? I can also start making a "map" of URLs from the old repo and their correspondences in the new one, as time permits.

(If you need to discuss any details privately, just send me a message here for the moment, until I've figured out Discord...)
Title: Re: Bitbucket set to remove Mercurial support
Post by: PaulJBis on December 28, 2020, 10:50:33 AM
Well, I'v been having a look to all the bitbucket.org links I could find in a quick search, and I saw the following patterns:


And now there are some URLs where I don't know very well what to do with them:

Title: Re: Bitbucket set to remove Mercurial support
Post by: kitor on December 28, 2020, 11:27:37 AM
Quote from: PaulJBis on December 28, 2020, 10:50:33 AM
Links to a given file. In Bitbucket they were like this: https://bitbucket.org/hudson/magic-lantern/src/tip/modules/dual_iso/cr2hdr.c (for example). The problem is that the Heptapod link includes the branch information in it: https://foss.heptapod.net/magic-lantern/magic-lantern/-/blob/branch/unified/modules/dual_iso/cr2hdr.c, so I don't know where to get it from in the Bitbucket links.

well, there's "tip" so there's a tag in URL. Not sure how to map this to heptapod though.

Quote from: https://serverfault.com/questions/202061/whats-the-difference-between-mercurials-tip-tag-and-the-default-branchTip is the most recent changeset in the repository. Default is a branch. Tip is a special Tag (a named changeset) which always refers to the most recently changed Head.

Which also means that URLs with "tip" are... useless ;)
Title: Re: Bitbucket set to remove Mercurial support
Post by: a1ex on December 28, 2020, 11:47:27 AM
Probably the most reasonable way to interpret that "tip" would be "tip at the time of writing". That is, link translation should be done considering the date of the post containing that link.

Otherwise, replacing it with "unified" could also work.

For the forks, which are not hosted on Heptapod, we can probably link to Software Heritage. Example: https://archive.softwareheritage.org/browse/origin/content/?origin_url=https://bitbucket.org/OtherOnePercent/tragic-lantern-2.0&path=src/video_hacks2.c

Or, I could merge all of the forks into one big repo (let's say magic-lantern-all-forks) and ask Heptapod nicely to create it and let me push everything there. I don't have permission to create new repos there, but I've been thinking to ask them to re-host some of the "side projects" related to ML, such as ml-focus-pixels etc, in the same namespace.
Title: Re: Bitbucket set to remove Mercurial support
Post by: PaulJBis on December 29, 2020, 12:49:09 PM
Quote from: a1ex on December 28, 2020, 11:47:27 AM
Probably the most reasonable way to interpret that "tip" would be "tip at the time of writing". That is, link translation should be done considering the date of the post containing that link.

Otherwise, replacing it with "unified" could also work.


The problem I see with those links is the lack of branch information. I mean, with a link like  https://bitbucket.org/hudson/magic-lantern/src/tip/modules/dual_iso/cr2hdr.c, how do we know which branch it's pointing at? Can we safely assume it's for the default branch "unified"?

Title: Re: Bitbucket set to remove Mercurial support
Post by: kitor on December 29, 2020, 01:45:54 PM
Honestly, without knowing author thoughts at the time of writing specific post, you never know.

QuoteProbably the most reasonable way to interpret that "tip" would be "tip at the time of writing". That is, link translation should be done considering the date of the post containing that link.

Alex's idea seems right. If this was routed via internal "proxy" then redirect page might warn user that this points to unknown branch. Requires additional coding though.
Title: Re: Bitbucket set to remove Mercurial support
Post by: Audionut on December 29, 2020, 02:02:56 PM
Quote from: PaulJBis on December 29, 2020, 12:49:09 PM
Can we safely assume it's for the default branch "unified"?

My recollection is that a branch always had the branch name in the link, so yes, it would be safe to assume that IMO.

Quote from: a1ex on December 28, 2020, 11:47:27 AM
Otherwise, replacing it with "unified" could also work.
Title: Re: Bitbucket set to remove Mercurial support
Post by: natschil on January 27, 2021, 11:21:31 PM
I'm currently unable to get the source code from Heptapod. I have no experience with mercurial whatsovever, but I tried "hg clone https://foss.heptapod.net/magic-lantern/magic-lantern". This gave me some source code that is different to what I see on Heptapod. I also tried the mercurial to git approach suggested here, that gave me what seems like the same source code as before, here the last commit is one from 2011. It would be helpful to have a file that gives you instructions on how to install the source code somewhere.


Edit: it seems like doing "hg checkout unified" does the trick.