On Tuesday, 16 May 2017 at 19:41:32 UTC, Brad Anderson wrote:
On Tuesday, 16 May 2017 at 18:10:52 UTC, Andre Pany wrote:
Hi,
While integrating the git protocol into dub is complex, there
is a much much easier solution.
Github and bitbucket provides access to the source code,
including releases, branches and commits as archive files
using the http protocol.
Without counting the actual unzip/untar coding I assume more
or less 100 lines of additional coding is needed in dub.
In dub.json in addition to the existing path attribute of the
dependeny object a new attribute "url" has to be added. You
can specify here an url to a zip/tar.gz. This file has to be
downloaded and extracted. The extract path is then filled into
the existing path attribute of the dependency object.
The only issue is the untar/unzip logic...
This little tweak would make dub a lot more flexible like npm.
Kind regards
André
This is actually exactly how dub fetches source code but the
registry does it rather than dub itself (I'm not sure why)[1].
A bare URL dependency may be controversial though because it
makes versioning more difficult to ensure.
1.
https://github.com/dlang/dub-registry/blob/d825840770bb29356495f265480035ed7e3321b8/source/dubregistry/repositories/github.d#L89
In my scenario I have github repositories stored on the company
github server but not on the public github server. Also running
an own dub registry server is not an option as I would have to
adapt the source code (settings are hard coded) and the license
type of dub registry is lgpl.
Kind regards
André