GuiDub

Sönke Ludwig via Digitalmars-d digitalmars-d at puremagic.com
Tue Sep 29 00:43:11 PDT 2015


Am 29.09.2015 um 07:17 schrieb Jacob:
> On Tuesday, 29 September 2015 at 04:01:18 UTC, Jacob wrote:
>> On Tuesday, 29 September 2015 at 03:28:41 UTC, Rikki Cattermole wrote:
>>> On 29/09/15 3:47 PM, Jacob wrote:
>>>> Idea:
>>>>
>>>> A gui app for dub that you run, it downloads the package info from the
>>>> repository and you can select a project or create a new one and it will
>>>> automatically add or remove dependencies?
>>>>
>>>> I'm having to browse the repository then manually add the dependencies
>>>> to the dub.json file... so old school!
>>>>
>>>> Also, the app could provide documentation, and other
>>>> resources(tutorials, etc) related the packages.
>>>>
>>>> An app probably could be created in a few days and would make the
>>>> experience more enjoyable. I'd create it myself but I'm busy at the
>>>> moment, and it would probably take a big longer than someone more
>>>> informed.
>>>
>>> Sounds like something an IDE can be used for.
>>
>> Could be integrated but not necessary. Something that can maintain and
>> make it easier to remove, update, and all that. doing it by hand is a
>> pain when you have a lot of libraries added.
>>
>>
>> Also:
>> Error executing command build:
>> Root package test1 contains reference to invalid package gtk-d
>>
>> Yet I used exactly what the dub repository says to use.
>
> also
>
> Error executing command build:
> Root package test1 contains reference to invalid package derelict-gl3
>
> Error executing command build:
> Root package test1 contains reference to invalid package derelict-sdl2
>
> Error executing command build:
> Root package test1 contains reference to invalid package gfm:math
>
> Error executing command build:
> Root package test1 contains reference to invalid package scid
>
> Error executing command build:
> Root package test1 contains reference to invalid package derelict-util
>
> Error executing command build:
> Root package test1 contains reference to invalid package gl3n
>
> etc..
>
> It seems like all the packages are invalid!! WTH is going on? I thought
> dub was suppose to be easy and work?
>
>
> Does anyone actually maintain all this or use it? Cause surely I
> shouldn't be getting errors like this? I have about 50 packages in my
> dub.json and they all came from copying the dependency directly(so no
> mistake on my part).
>
>
> {
>      "name": "test1",
>      "description": "A minimal D application.",

Looks quite gigantic for a minimal application ;)

>      "copyright": "Copyright © 2015, Jacob",
>      "authors": ["Jacob"],
>      "dependencies": {
>          "gfm:math": "~>3.0",
>          "dplug": "~>1.1.34",
>          "cerealed": "~>0.6.2",
>          "imageformats": "~>5.1.0",
>          "pathlib": "~>0.3.0",
>          "enumap": "~>0.4.0",
>          "mintegrated": "~>0.2.1",
>          "speech4d": "~>0.1.0",
>          "jsonizer": "~>0.5.1",
>          "dgame": "~>0.6.3",
>          "desil": "~>0.2.1",
>
>
>          "derelict-imgui": "~>0.7.0",
>          "derelict-sfml2": "~>3.0.1",
>
>
>          "derelict-steamworks": "~>0.0.3",
>          "derelict-util": "~>2.0.3",
>          "derelict-lua": "~>1.2.2",
>          "derelict-ode": "~>1.1.2",
>          "derelict-allegro5": "~>0.0.2",
>          "derelict_extras-mantle": "~>0.2.0",
>          "derelict_extras-fann": "~>4.0.1",
>          "derelict_extras-sndfile": "~>2.0.0",
>          "derelict_extras-bass": "~>2.0.0",
>          "derelict-cl": "~>2.0.0",
>          "derelict-enet": "~>2.0.0",
>          "derelict-assimp3": "~>1.0.1",
>          "derelict-ft": "~>1.0.2",
>          "m3d": "~>0.1.4",
>          "derelict-sass": "~>2.0.0",
>          "derelict-glfw3": "~>1.1.0",
>          "derelict-ogg": "~>1.0.1",
>          "derelict-vorbis": "~>1.0.1",
>          "wave-d": "~>1.0.2",
>          "derelict-physfs": "~>1.0.0",
>          "derelict-il": "~>1.0.0",
>          "directx-d": "~>0.9.1",
>          "freeimage": "~>1.0.1+3.16.0",
>          "clfft": "~>0.1.1",
>          "lock-free": "~>0.1.1",
>          "derelict-alure": "~>1.0.0",
>          "dsfml": "~master",
>
>          "std_event": "~master",
>          "derelict_extras-glib": "~master",
>          "netstack": "~master",
>          "luad": "~master",
>          "three-d": "~master",
>          "grape": "~master",
>
>          "civge": "~master",
>          "nitro": "~master",
>          "nitro-gen": "~master",
>
>          "process-stats": "~master",
>          "llvm-d": "~master",
>
>
>          "bzip2": "~>0.1.0",
>          "simd": "~>0.0.2",
>          "cassowary-d": "~>0.0.1",
>          "dcheck": "~>0.1.0",
>
>          "d-beard": "~>2.0.0",
>          "geneticd": "~>0.1.1",
>          "orderedmap": "~>0.0.2",
>          "stochastic": "~>0.3.0",
>          "maybe-d": "~>0.0.1",
>          "pack-d": "~>0.3.0",
>
>          "quack": "~>1.0.0",
>          "dshell": "~>0.0.2",
>          "dgui": "~>1.0.1",
>          "djack": "~>0.0.1",
>          "dfl": "~>0.0.1",
>          "moggle": "~>0.0.1",
>          "libhell": "~>0.1.1",
>          "ae": "~>1.0.1",
>          "bloom": "~>0.2.1",
>          "dash": "~>0.12.0-beta2",
>          "dgraph": "~>0.0.1",
>          "opencl": "~>1.1.3",
>          "lua_d_api": "~>0.0.1",
>          "descl": "~>0.5.1",
>          "matte": "~>0.1.0",
>          "hap": "~>1.0.0-rc.2.1",
>          "voxelman": "~>0.4.1",
>          "jin-tree": "~>1.0.2",
>          "plot2kill": "~>0.0.2",
>          "pegged": "~>0.2.1",
>          "stribog": "~>1.4.0",
>          "jack": "~>1.0.1",
>          "allegro": "~>3.0.1+5.1.8",
>          "quantities": "~>0.4.4",
>          "m3": "~>0.0.7",
>          "descore": "~>1.2.7",
>          "dfftw3": "~>1.0.0",
>          "libusb-d": "~>0.1.1",
>          "ctpg": "~>3.0.2",
>          "phobosx": "~>0.7.3",
>          "ddbus": "~>1.0.1",
>          "standardpaths": "~>0.2.0",
>          "dmech": "~>0.2.2",
>          "imaged": "~>1.0.1",
>          "dyaml": "~>0.5.2",
>          "d2dgame": "~>2.0.1",
>          "rcstring": "~>0.0.1",
>          "dstats": "~>1.0.3",
>          "dmathgl": "~>0.1.2",
>
>          "fixed": "~>1.0.2",
>          "scid": "~>0.3.0",
>          "atmosphere": "~>0.1.7",
>          "sdlang-d": "~>0.9.3",
>          "libcerf": "~>1.4.1",
>          "digitalnet": "~>0.5.0",
>
>          "entitysysd": "~>1.0.1",
>
>          "wafom": "~>0.2.1",
>
>
>
>          "memutils": "~>0.4.1",
>
>          "dproto": "~>1.3.1",
>
>          "gl3n": "~>1.2.0",
>          "color": "~>0.0.1",
>
>          "windows-headers": "~>1.0.1",
>
>          "de_window": "~>0.1.3",
>          "asynchronous": "~>0.4.1",
>
>          "minimized": "~>0.1.7",
>          "cybuf": "~>1.0.0",
>
>          "sat": "~>1.0.0",
>
>          "dlangui": "~>0.6.32",
>          "meatbox": "~>0.1.6",
>      }
> }
>
>

I'd say that there simply are version conflicts within this huge 
dependency graph (e.g. "meatbox" requires "gl3n" 1.1.0, but another 
dependency requires 1.0.0). The current dependency resolution algorithm 
(which is planned to be revamped) is quite bad at outputting good error 
messages in many situations (technically there often isn't an 
unambiguous error message, but then it often picks one of the less 
helpful ones).


More information about the Digitalmars-d mailing list