ckirkendall / kioo

Enlive/Enfocus style templating for Facebook's React and Om in ClojureScript.
Eclipse Public License 1.0
404 stars 39 forks source link

Hard dependencies #68

Closed danielsz closed 8 years ago

danielsz commented 8 years ago

Why does kioo need to specify hard dependencies regarding om, etc? Wouldn't it be better to let the user pull dependencies himself?

I've just tried to update 4.0.0 to 4.0.1 and saw that it breaks my app. This is because kioo pulls an older cljsjs/react version that gets selected over mine.

[!] cljsjs/react
    ✘ 0.13.3-0
      org.omcljs/om
    ✔ 0.12.2-5
      kioo
ckirkendall commented 8 years ago

Daniel, The dependency tree is set in order so you can either :excludes or move your cljsjs/react above the definition of kioo in the project file. This is something that is common and often difficult to manage. I would always suggest ordering your dependency from lowest level to higher level.

Creighton

On Wed, Oct 28, 2015 at 8:18 AM, Daniel Szmulewicz <notifications@github.com

wrote:

Why does kioo need to specify hard dependencies regarding om, etc? Wouldn't it be better to let the user pull dependencies himself?

I've just tried to update 4.0.0 to 4.0.1 and saw that it breaks my app. This is because kioo pulls an older cljsjs/react version that gets selected over mine.

[!] cljsjs/react ✘ 0.13.3-0 org.omcljs/om ✔ 0.12.2-5 kioo

— Reply to this email directly or view it on GitHub https://github.com/ckirkendall/kioo/issues/68.

danielsz commented 8 years ago

Fine. But why does kioo need to specify hard dependencies in the first place?

ckirkendall commented 8 years ago

The main reason is kioo core can be run as a base like om or reagent. So not including the dependencies would make using it much more complex.

On Wed, Oct 28, 2015 at 8:26 AM, Daniel Szmulewicz <notifications@github.com

wrote:

Fine. But why does kioo need to specify hard dependencies in the first place?

— Reply to this email directly or view it on GitHub https://github.com/ckirkendall/kioo/issues/68#issuecomment-151828182.

danielsz commented 8 years ago

Ah, I see. I didn't know kioo was used like that. So I guess it's a matter of what audience is more important.If the majority of people use it as base, then by all means keep the dependencies, but if most people use it as a templating system with om or reagent, then you may want to revise this strategy.

Using kioo is now complex for the second group. I have to check which dependencies it pulls, and use exclusions to keep my app running.

That's all I have to say on this matter. I'm a big fan of kioo otherwise.

ckirkendall commented 8 years ago

I am closing this because I don't think the strategy should change right now. I am open to changing it in the future is this resurfaces though.