Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[TODO] [offtopic] discussion regarding nimble limitation (from comments in #6) #12

Closed
timotheecour opened this issue Oct 17, 2018 · 1 comment

Comments

@timotheecour
Copy link
Contributor

moved to here the discussion started here #6 (comment) to keep each topic separate

@sinkingsugar

Nimble has a major flaw, which is it applies all the packages it has on every project you have by default. That's my major concern that easy can create a mess if not considered.

I will give you an example exactly with nimtorch:
Have nimtorch installed as nimble package
Also work on the repository
Did not run nimble develop
Rename a file in the repository
Forget to update the module import myrenamedfile into import newlocation/myrenamedfile
Build will succeed yet will use import myrenamedfile from nimble this time..

but it all works if you run nimble develop, right? I think that's expected and I don't see a limitation here (in the sense of making it impossible to do certain things).
if you really feel something is ill-designed with nimble it really should be a bug report in https://github.com/nim-lang/nimble/issues/ otherwise it will never get fixed (if there's anything to fix).

That being said, one possibility would be (and that's doable, not a fundamental flaw IMO):
if you call nimble build inside a local package foo, nimble could remove from search path an installed package named foo

@sinkingsugar
Copy link
Owner

Thanks for moving it here.

Well honestly I don't think that's really good (the nimble develop thing). It's easy to forget sometimes and specially hard to understand for new users.
Imho should be default to have packages bound to the project folder somehow or have environments like conda.
Another very confusing point is package versions, afaik nimble keeps all versions you fetch on disk but anyway it will always use the head ignoring nimble file specs. ( correct me if you figured the arcane behind this, I did not really dig )
Finally yes, hardly documented.
Anyway not supporting binaries and using a .json file as db does not fit our needs really.
Oh and I think Araq is not a fan either so much https://github.com/Araq/nawabs

Btw if you don't mind I'll close the issue just cos not so related to nimtorch.

That said, it's a good tool and still very useful, just I suspect it's slowly collecting dust and it seems that noone wants to take care of it much.

@timotheecour timotheecour changed the title [offtopic] discussion regarding nimble limitation (from comments in #6) [TODO] [offtopic] discussion regarding nimble limitation (from comments in #6) Oct 21, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants