react.rb icon indicating copy to clipboard operation
react.rb copied to clipboard

Remove opal-activesupport dependency?

Open wied03 opened this issue 8 years ago • 7 comments

React-opal has this as well. If it's possible to remove it (like opal-browser) such that it's only included if higher level code needs it, that might help keep the core GEM lean.

wied03 avatar Mar 25 '16 21:03 wied03

@wied03 If opal-activesupport were any where near the size of ruby active support, I'd definitely agree with you. But opal-activesupport is still quite lean. In fact older versions of react.rb implemented a handful of core extensions that I moved into the opal-activesupport gem to avoid multiple implementations of the same core ext.

ajjahn avatar Mar 28 '16 11:03 ajjahn

Might be a fair point. How small is small though? And will opal-activesupport stay that way?

Maybe as a compromise, getting rid of require 'active_support' from top_level.rb so that the active support requires are more granular might be a good goal. That way active support can grow but the served script to the browser with React.rb doesn't necessarily grow.

I know some files already do a granular require but the top level one is there.

wied03 avatar Mar 28 '16 15:03 wied03

@wied03 I managed to compile all of active support into ~13k. It is quite possible never versions of active support would implement more or it's ruby counter part. I think you are correct to suggest simply being deliberate in only requiring extensions that are needed. That should protect against a growing size as AS matures.

ajjahn avatar Mar 29 '16 02:03 ajjahn

again the suggestion of either a basic vs. full version would answer this, or somehow making it configurable.

catmando avatar Mar 29 '16 13:03 catmando

For this one I don't think you need a basic or full react.gem. it's just a matter of a couple more granular requires.

sent from my mobile device On Mar 29, 2016 07:52, "Mitch VanDuyn" [email protected] wrote:

again the suggestion of either a basic vs. full version would answer this, or somehow making it configurable.

— You are receiving this because you were mentioned. Reply to this email directly or view it on GitHub https://github.com/zetachang/react.rb/issues/135#issuecomment-202902754

wied03 avatar Mar 29 '16 13:03 wied03

For this one I don't think you need a basic or full react.gem. it's just a matter of a couple more granular requires.

Exactly. AS isn't providing features to the user here. It's just allowing us to avoid recoding the wheel. Really, the more we lean on AS (and only require what which we need), the better. Users who include AS in their projects will benefit from the overlap.

ajjahn avatar Mar 29 '16 15:03 ajjahn

This issue was moved to reactrb/reactrb#135

sollycatprint avatar Jun 13 '16 13:06 sollycatprint