digitalmars.D.learn - Dub, Git, Mercurial, Bazaar
- Russel Winder via Digitalmars-d-learn (21/21) Apr 10 2017 Go only uses Git, Mercurial, or Bazaar for dependency handling. Rust
- drug (2/13) Apr 10 2017 You can use local repository if you want
- Russel Winder via Digitalmars-d-learn (12/14) Apr 11 2017 But that implies something very manual, go and cargo handle all that.
- drug (2/6) Apr 11 2017 How go and cargo know where the local repository is to handle that?
- Russel Winder via Digitalmars-d-learn (29/40) Apr 11 2017 I fear we may well have started talking at cross purposes. At the risk
- drug (2/30) Apr 11 2017 I see. Thanks for clarification.
- rikki cattermole (7/18) Apr 11 2017 FYI, if we wanted a user configurable interfacing to any source of
- Guillaume Piolat (2/7) Apr 11 2017 https://github.com/dlang/dub/issues/632
Go only uses Git, Mercurial, or Bazaar for dependency handling. Rust (via Cargo) allows for a central repository, and Git (, and Mercurial ?) repositories. Dub appears only to allow for central repository, or have I missed it's ability to work with DVCS repositories? If Dub cannot handle DVCS repositories, it needs to be able to. The rationale is that people can access dependencies that are available but not yet, or never will be, in the central repository. The use case that matters is working with a dependency that is not yet, but definitely will be in the central repository. Experience of Rust, and Herd with Ceylon, shows this to be very valuable to community activity. --=20 Russel. =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D Dr Russel Winder t: +44 20 7585 2200 voip: sip:russel.winder ekiga.n= et 41 Buckmaster Road m: +44 7770 465 077 xmpp: russel winder.org.uk London SW11 1EN, UK w: www.russel.org.uk skype: russel_winder
Apr 10 2017
11.04.2017 07:59, Russel Winder via Digitalmars-d-learn пишет:Go only uses Git, Mercurial, or Bazaar for dependency handling. Rust (via Cargo) allows for a central repository, and Git (, and Mercurial ?) repositories. Dub appears only to allow for central repository, or have I missed it's ability to work with DVCS repositories? If Dub cannot handle DVCS repositories, it needs to be able to. The rationale is that people can access dependencies that are available but not yet, or never will be, in the central repository. The use case that matters is working with a dependency that is not yet, but definitely will be in the central repository. Experience of Rust, and Herd with Ceylon, shows this to be very valuable to community activity.You can use local repository if you want
Apr 10 2017
On Tue, 2017-04-11 at 09:55 +0300, drug via Digitalmars-d-learn wrote:[=E2=80=A6] You can use local repository if you wantBut that implies something very manual, go and cargo handle all that. --=20 Russel. =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D Dr Russel Winder t: +44 20 7585 2200 voip: sip:russel.winder ekiga.n= et 41 Buckmaster Road m: +44 7770 465 077 xmpp: russel winder.org.uk London SW11 1EN, UK w: www.russel.org.uk skype: russel_winder
Apr 11 2017
11.04.2017 14:15, Russel Winder via Digitalmars-d-learn пишет:On Tue, 2017-04-11 at 09:55 +0300, drug via Digitalmars-d-learn wrote:How go and cargo know where the local repository is to handle that?[…] You can use local repository if you wantBut that implies something very manual, go and cargo handle all that.
Apr 11 2017
On Tue, 2017-04-11 at 14:21 +0300, drug via Digitalmars-d-learn wrote:11.04.2017 14:15, Russel Winder via Digitalmars-d-learn =D0=BF=D0=B8=D1==88=D0=B5=D1=82:I fear we may well have started talking at cross purposes. At the risk of doing the wrong thing I'll reset this thread with: Go allows for any Git, Mercurial or Bazaar repository as a dependency. It fetches the source into the workspace and compiles into the workspace. The go language uses URIs to specify the import so the DVCS nature is up front =E2=80=93 and leads to lots of vendoring problems. There= is only the Go distribution and DVCS repositories. Cargo fetches source from the central crate repository or from a DVCS repository depending on the contents of the Cargo.toml file. The crate names are the only thing the application source code knows about. There is a central repository and DVCS repositories. Dub cannot get from a DVCS repository but has a sequence of repositories it can reach. It is feasible that these local Dub repositories could have been got by DVCS, but this is a manual thing not something Dub handles, unlike Go and Cargo. I feel that Dub should behave more like Cargo. =20 --=20 Russel. =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D Dr Russel Winder t: +44 20 7585 2200 voip: sip:russel.winder ekiga.n= et 41 Buckmaster Road m: +44 7770 465 077 xmpp: russel winder.org.uk London SW11 1EN, UK w: www.russel.org.uk skype: russel_winderOn Tue, 2017-04-11 at 09:55 +0300, drug via Digitalmars-d-learn wrote:=20 How go and cargo know where the local repository is to handle that?[=E2=80=A6] You can use local repository if you want=20 But that implies something very manual, go and cargo handle all that. =20
Apr 11 2017
11.04.2017 15:12, Russel Winder via Digitalmars-d-learn пишет:On Tue, 2017-04-11 at 14:21 +0300, drug via Digitalmars-d-learn wrote:I see. Thanks for clarification.11.04.2017 14:15, Russel Winder via Digitalmars-d-learn пишет:I fear we may well have started talking at cross purposes. At the risk of doing the wrong thing I'll reset this thread with: Go allows for any Git, Mercurial or Bazaar repository as a dependency. It fetches the source into the workspace and compiles into the workspace. The go language uses URIs to specify the import so the DVCS nature is up front – and leads to lots of vendoring problems. There is only the Go distribution and DVCS repositories. Cargo fetches source from the central crate repository or from a DVCS repository depending on the contents of the Cargo.toml file. The crate names are the only thing the application source code knows about. There is a central repository and DVCS repositories. Dub cannot get from a DVCS repository but has a sequence of repositories it can reach. It is feasible that these local Dub repositories could have been got by DVCS, but this is a manual thing not something Dub handles, unlike Go and Cargo. I feel that Dub should behave more like Cargo.On Tue, 2017-04-11 at 09:55 +0300, drug via Digitalmars-d-learn wrote:How go and cargo know where the local repository is to handle that?[…] You can use local repository if you wantBut that implies something very manual, go and cargo handle all that.
Apr 11 2017
On 11/04/2017 5:59 AM, Russel Winder via Digitalmars-d-learn wrote:Go only uses Git, Mercurial, or Bazaar for dependency handling. Rust (via Cargo) allows for a central repository, and Git (, and Mercurial ?) repositories. Dub appears only to allow for central repository, or have I missed it's ability to work with DVCS repositories? If Dub cannot handle DVCS repositories, it needs to be able to. The rationale is that people can access dependencies that are available but not yet, or never will be, in the central repository. The use case that matters is working with a dependency that is not yet, but definitely will be in the central repository. Experience of Rust, and Herd with Ceylon, shows this to be very valuable to community activity.FYI, if we wanted a user configurable interfacing to any source of projects we would need some complicated "scripting" to allow for it. E.g. I have a little bit of code that can help with this[0]. I'm currently designing a UI for it but ugh, it would be a lot of work to get this working for dub. [0] https://gist.github.com/rikkimax/4718740223748256d94b3b1474525012
Apr 11 2017
On Tuesday, 11 April 2017 at 04:59:27 UTC, Russel Winder wrote:Go only uses Git, Mercurial, or Bazaar for dependency handling. Rust (via Cargo) allows for a central repository, and Git (, and Mercurial ?) repositories. Dub appears only to allow for central repository, or have I missed it's ability to work with DVCS repositories?https://github.com/dlang/dub/issues/632
Apr 11 2017