I was wondering what we could do as a community to prevent scenarios such as this one:
I need moment in my app so I add the momentjs:moment (“official”) package.
I also need to have simple forms based on schemas and add aldeed:autoform and another autoform package for datetimepicker that also uses moment but the mrt:moment package.
This means that in the files sent to the client, I will have moment two times right ? Conflicts and unexpected behaviors are therefore happening.
The solution I found myself forced to use was to remove the momentjs:moment and add the mrt:moment in my app, which I didn’t mind. But the momentjs:moment package had a newer version of moment, I can see people needing to keep this package if they use new API functions.
How can we prevent such a scenario ? Ask the timepicker package manager to change his dependency ?
Are “weak” dependencies the solution ? I find that the tutorials about package editing are not so clear and could be improved and some even contain bad practices.
What I would like are stronger guidelines on package creation, like the discussion Dan Dascalescu had on github.