Low hanging fruit: dub git integration
Andre Pany via Digitalmars-d
digitalmars-d at puremagic.com
Tue May 16 13:57:26 PDT 2017
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é
More information about the Digitalmars-d
mailing list