How to start? (CALL FOR COMMUNITY ARTICLES) #348
Comments
Another issue I have is that |
Please, use quick start: https://dephell.readthedocs.io/#quick-start
DepHell is available on pypi. However, it's not the recommended way to install it. |
You should know any dependency format. Setup.py is a bad choice because dephell can't modify it. But for most commands it's ok. Flit is a good choice for nice and simple format. |
I saw quick start but it doesn’t help much in my opinion as the converter is so complex and goes into so many different potential lines of progress it’s more confusing than quick-starting. My sequence of requested tutorials was about a candidate package to distribute, not about dephell itself, sorry if that wasn’t clear. So,
That should cover most use cases for people like me (scientists forced to be devs) |
Hmm, that makes sense. A lot of sense. I think it should be an article. |
Hmm. I've put a lot of labels here. I will do an article by myself but this is the point where I expect community help most. I'll be happy to see third-party articles about DepHell and promote them in the readme and docs. |
I’ll be happy to promote once I understand it myself! :) |
A few points that could be a good thing to talk about:
I'm going to do a talk on Moscow Python Conf++, and after it some parts of the talk can be turned into articles as well. |
3: pipx seems to do this? |
Popx and pipsi are about global cli tools, like jail in dephell. The third point, however, about per-project tools and checks like pytest with all required dependencies inside. |
I particularly think some documentation on the configuration options would be useful - and some stuff on exactly what mutation/layers means. Actually just looking through the doc folder I see there is a lot more info on individual commands that otherwise is not obvious to find - particularly if, like myself, you start reading the docs at the "Main Info" section.
If i am understanding you correctly that is indeed very cool - and I had no idea dephell could do that. |
Layers are layers in your dependency graph. In the center is your project (or more virtual projects if you are merging two dependency files), it's zero layer. The first layer is your project direct dependencies that you explicitly specified. The second layer is dependencies of dependencies and so on. Graph is cyclic directed, we can handle cycles as well. Mutations hapoen when we faced with dependencies conflict. DepHell is the only tool that values "as few network requests as possible" over "as few mutations as possible". In some cases it is the same but not always. So, you can see a lot of mutations happen in a row. No worries about it, dephell never repeats the same mutation twice. Mutations stop when the conflict is reconflict resolved or dephell tried to many mutations (200 by default) without success. In the second case you get the conflict report. |
DepHell had one-level menu before, with all commands listed. Now it's grouped because feedback showed it scares newcomers. It's hard to make friendly docs for such a big tool that can do everything but I try my best. Docs for dephell project bump my favorite. |
Ask more, let's see what is missed |
Hi, I am new to dephell. Good project! I am struggling a little bit with the documentation. In particular, I'd like to understand what is the current docker support. I've been able to create a docker image using dephell docker create. However, this image does not contain the packages installed in the venv ( dephell deps install ). Is there a way to do it? |
@mfoglio, that's a good catch. Right, there is no built-in way to install deps into docker yet. And it is definitely in the plans. I've seen a few projects using dephell, they use on of the next solutions:
As I said, direct support is certainly should be implemented soon, these workarounds too verbose but that's what we have now. |
Do you think it would be difficult to implement this? I can try to get my hands dirty, but I've never contributed to an open-source project before so I would need some guidance. |
Short description
I'm trying to get into using
dephell
but the lack of a minimal working example is hindering my grokking it.I was going here as it's the first example:
https://dephell.readthedocs.io/use-warehouse.html
and tried to execute the first line:
which I guess means that this example is not self-consistent? I fail to fully understand how to productively start with
dephell
currently.Would it be easiest/fastest to start from a working setup.py file?
I learn mostly by example, so I think what would be really helpful for people getting into it would be a set of the following tutorials:
At least in my world (astronomy/planetary), pypi and conda are the most used way to disseminate new packages.
The text was updated successfully, but these errors were encountered: