RejectedSoftware Forums

Sign up

What exactly is a "package" in DUB?

From what I can tell, a package in DUB is not the same as a D package. DUB seems to treat an entire repository as a package. Is that the case?

I'm investigating what I need to do in order to add support for DUB into Derelict. From what I can see so far, I don't know how I can do it and still maintain my project structure. I have several different packages in the same import tree. Each package needs to be built as a separate library. There's no such thing as a Derelict.lib (although I've configured such a thing before when I added support for VisualD to Derelict2, I'd really rather not do that in the current incarnation). So am I overlooking something? Is it possible to build mulitple libraries from the same source tree? Or, alternatively, does DUB support git's sparse checkout feature? That would allow me to create several different DUB packages for the same tree.

Re: What exactly is a "package" in DUB?

On Mon, 25 Mar 2013 10:36:23 GMT, Mike Parker wrote:

From what I can tell, a package in DUB is not the same as a D package. DUB seems to treat an entire repository as a package. Is that the case?

I suggested DUB-package = D package (https://vhios.dyndns.org/drepoDraft.pdf), but despite its nice properties, the approach was considered to be too inflexible. At the moment, the whole repository is a DUB package. I am still pushing for 1 repo - multiple packages and I believe Soenke does not oppose the idea in general, but considers other things more important at the moment.

Some things have to be sorted out first, making sure the current implementation works fine, but I hope I will get to this feature soon as I am really looking forward to implementing it.
Best regards,

Robert

Re: What exactly is a "package" in DUB?

On Mon, 25 Mar 2013 12:33:22 GMT, Robert wrote:

I suggested DUB-package = D package (https://vhios.dyndns.org/drepoDraft.pdf), but despite its nice properties, the approach was considered to be too inflexible. At the moment, the whole repository is a DUB package. I am still pushing for 1 repo - multiple packages and I believe Soenke does not oppose the idea in general, but considers other things more important at the moment.

I see. That's unfortunate. I'm worried that if I configure multiple libs in one case (the current situation using Derelict's build script) and a monolithic lib in another (via DUB), that could cause confusion down the line. And I'm hesitant to move over to a monolithic build across the board just to support a single build tool. I really like the current set up, where you can compile only the packages you need (currently you can do "build util sdl2", for example). So I think I will likely hold off until this feature is implemented.