11

Google Code's downloads feature allowed open source project maintainers to upload binary files at no cost, either:

  • using the web interface, or
  • using an API, which is very convenient to integrate in build script.

PROBLEM: This downloads feature has been retired on January 15, 2014.
Is there an alternative?

Requirements:

  • Upload file via API
  • Anyone can download from direct URL, no delay nor advertisement/registration step
  • URL is short (length of your project name + length of your file name + 50 characters max)
  • Website usable by smartphone
  • Domain that sounds friendly to the Open Source community. For instance, "gnu.org" or "gitcentral.net" would be better than "warez.biz"
  • Shows how many times each file has been downloaded, more statistics welcome

Bonus:

  • Ability to add "categories" to releases and give URL that filter on categories, for instance Please download the latest at http://g.org/aegif/CmisSync/downloads?stable+mac where stable and mac are categories.

SourceForge and CodePlex have downloads, but hide them behind delay/advertisement.
Bitbucket has no advertisements, but no API to upload files.
Github has an API, but does not show download statistics.
Google Drive has awfully long/opaque URLs, and they are not even direct.

  • 1
    Discussion already here. Can't flag duplicate because they're on different sites. stackoverflow.com/questions/18451666/… – Bodo Jul 14 '14 at 11:40
  • Github is pretty responsive. Since I personally love git and Github I'd suggest giving Github a ping to see if they'd be interested in providing statistics. – Nick Wilde Jul 14 '14 at 15:02
  • I asked the linked SO question and ended up migrating our project away from Google Code to Github. It offered everything you ask for, except for download statistics. I have not yet found an event hook or service hook that tracks downloads (say of our pre-built binary releases), though that would be nice to have one day. – Alex Reynolds Jul 14 '14 at 17:53
  • @AlexReynolds: Github does not have release categories either, right? – Nicolas Raoul Jul 15 '14 at 2:39
  • You can set up branches and tag names with a semantic versioning name scheme, in order to categorize releases: semver.org – Alex Reynolds Jul 15 '14 at 3:12
1

I personally used Gitlab self hosted on my server, but there is also the ability to use it as a cloud service (similar to github).

It has the following features:

  1. Public projects can be easily downloaded
  2. The urls are resonable:

    https://gitlab.com/group/project/repository/archive.zip?ref=$GITTAG
    

    or

    https://gitlab.com/group/project/repository/archive.tar.gz?ref=$GITTAG
    

    as a bonus, when setting a tag, you can direct people to download the latest archive with that tag (or branch). This can be used to create your bonus feature.

  3. The site's design is done via bootstrap and can be reasonably well used with a smartphone
  4. The domain name is friendly
  5. There is an API, from which you are able to create files. You can also use git, of course.
  6. The current version includes git-annex which enables you also to work with huge files and keep them under version control.

It does not have the following feature you wanted:

  1. As far as I can tell, there are no download statistics.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.