This repository has been archived by the owner. It is now read-only.

Warn when dependencies do not install #163

kikoval opened this Issue Mar 9, 2014 · 7 comments


None yet
3 participants

kikoval commented Mar 9, 2014

I created a python-flask project on debian-based system (mint 16) using da. The command da crt python flask -n "test" have run without any problem, but when I tried to run the flask dev server I realized that that the dependencies have not beed installed.

Later I've found that the assisstant doesn't include necessary definitions (example is attached) for debian. It would be nice to include a warning in this situation.

- use: super.dependencies
- if $venv:
  - rpm: [python-virtualenv]
- else:
  # if changing, don't forget to also change these in run section in virtualenv installation
  # this is not completely dry, but mapping of PyPI names to Fedora names would be a pain to do here
  - rpm: [python-flask, python-flask-sqlalchemy, python-flask-wtf, python-flask-script]

ossvikend-fmfi #SOITsk


bkabrda commented Mar 11, 2014

Yeah, I've been thinking about this situation for a while. The problem is - due to the way that dependencies are installed - there's no way of telling if your platform is supported by this assistant or not. E.g. your platform might generally not need to install any dependencies for an assistant to work properly.
One possible solution of this problem would be introducing an optional field in assistants, that would describe platforms that this assistant can work on, but that might turn very ugly to maintain. I'll try to think about this more. Feel free to share any ideas here.

kikoval commented Mar 11, 2014

Is there any way for the da to find out whether installation of some dependencies was required by the assisstant definition (except those within if statement) but does not happen?


bkabrda commented Mar 13, 2014

Nope. And if you try to consider implications of trying to implement something like this, it's either impossible or a road to hell :)

The problem is the part "except those within if statement" - what if there are only dependencies in if/else statements and either those in if or those in else have to be installed? With more complex assistants, this verification method wouldn't work at all, I think.
What I was thinking about was introducing a tag for assistants, which would state what platforms are supported. Or more generally, since we'll have central assistant index [1] and we'll have sort-of-very-simple-packaging-system-which-is-not-really-a-packaging-system-but-for-the-lack-of-better-terms-we-call-it-packaging-system, we could specify this in assistant packages.

Either way, I agree that we have to sort this out somehow.



hroncok commented Mar 13, 2014


I love the terminology.


bkabrda commented Oct 13, 2014

Ping @hroncok are you working on the possibility of specifying supported platforms in DAPs? If so, please remember to close this bug when your work is ready with a reference to documentation. Thanks.


hroncok commented Oct 14, 2014

I was not, but I see what you mean. Assignign this to myself.

@hroncok hroncok self-assigned this Oct 14, 2014

@hroncok hroncok added the Dapi label Oct 14, 2014


hroncok commented Oct 29, 2014

Closing this and tracking it in #294

@hroncok hroncok closed this Oct 29, 2014

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.