-
Notifications
You must be signed in to change notification settings - Fork 7
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
Proposal: Move out DoneJS Dependencys to Generator #63
Comments
@frank-dspeed Thanks for the passion! Unfortunately, I'm not sure exactly what you mean. I think something must not be coming through in the translation. I cleaned up your comment to make more sense. Having updated it, I'm still not very sure what you mean. We've already proposed moving some of the Are you recommending something other than that? Some other thoughts that I'm not sure are relevant:
If you literally mean:
Dependencies should not be loaded from the generator. DoneJS generators will take on a life independent from an application. 3 years from now, a donejs app might look very different. Upgrading a generator will not be able to actually update the application. |
@justinbmeyer MyProposal: so all configuration about the project goes into the generators hope that makes sense the main change is to strip out donejs-cli out of the process of creating donejs-projects. this way also any yoman user can do run: yo and install donejs generator via the yo installer and then do it also enables and fixes path issus: also with all plugins and components and that it also enables updateing the generator to detect yarn or npm and use the right as also give config flat for that without the need to add yarn support to donejs-cli only donejs/donejs and the generator would install packages. then all generators get package named generator-donejs-cordova and so on this way we can make all accessible to yoman community and more comfortable to the donejs community the generators all get a versions folder with the definitions for every version we can also put migration into that if you like. Imagin automigrating from donejs 2.3 to 3 yoman offers auto update for generators so they will always have the newst versions ;) |
and by the way i have that ready i can upgrade the generator-donejs to work indipendent from donejs/donejs |
Hey @frank-dspeed a lot of this sounds really good. It sounds like you are almost proposing getting rid of donejs-cli though, is that right? One key thing that we did when designing the cli is make it so that if you install DoneJS 0.8, when you run |
@matthewp they are accounting that at present and yes your right i am planing to put all functions into donejs global bin:
also it will account that via the generator the new donejs bin will handle add over to yoman and yoman will see if there is a installed version else offer all versions so you can choose one for your app it is also able to upgrade your app so it can find in current Project Dir 0.8 and can upgrade to can3 💃 the new generator takes all parameters donejs add did handle + new once |
@justinbmeyer @matthewp did i say it solves all existing issus listed here :) i only need your go then i stop working on my fork and rename all in it to donejs and make a pull request against github.com/donejs/donejs and github.com/donejs/generator-donejs |
*** Update ***
|
I think that moving the responsibility for installing app dependencies into the app generator is a good idea. Currently, I think the only reason for this is what @matthewp mentioned above (#63 (comment)). But |
@phillipskevin yes your missing something :) but first of all 👍 so now the Real Solution that i already did tested and i am using it in production since many month :). IMPORTANT NOTE GENERAL: Yeoman generators are made to be installed Global! and designed to get updated via a internal auto update function of Yeoman
|
@phillipskevin What would be the advantage of putting the list in the generator? The idea of donejs-cli is that you shouldn't have to update the global donejs very often (just major version changes), and by having a local Getting rid of donejs-cli in favor of generator-donejs doesn't solve that problem, donejs-cli is about more than just |
The purpose of moving the app dependencies to the app generator is just to keep the responsibility in one place. Also, I think generators should be responsible for installing their own dependencies. This idea came about while working on I thought about creating another issue for this since the discussion on this one is much broader than what I'm proposing, but I wasn't sure if that would be even more confusing since the title would be nearly identical. |
@phillipskevin Ok, if this is just about where to put the versioning information consider that the versions are used by:
Given that the version numbers are used (potentially) by more than one tool, I think they should remain somewhere neutral. I wonder if it would make sense to have a |
Do developers really look at The idea of a |
i still think there should be a generator-donejs and additional versions in it and later splitted into moduls. the generator has other ways to pin versions and detect installed versions even without a donejs-cli package. |
I Engineered a lot on new versions of the donejs cli and donejs. As a passionated developer, I determined that the dependencies for
donejs add app
shouldn't be in this project at all. They should get added to the generator. This way projects are easy updatable and all that via installing a new generator.This way we could move out all the code to other generators. For example, parts like
donejs add app
,donejs add plugin
and that to the generator we give it a bin "add". This way we can strip out all parts from donejs cli that have to do with the generator and can then do donejs add and it will run the add binary from the generator-donejs.This way we are more cool more stable and easyer update able.
We can also then implement other alternative installers like Yarn as well.
greetings.
Hope that makes sense :D
The text was updated successfully, but these errors were encountered: