Open kayhide opened 8 years ago
This is a little heavy handed, it replaces motion-support
with motion_blender-support
. At the least, I would want the name to stay the same. I would definitely like there to be only one active-support port, I never like having fragmentation.
However, since this gem is in the "public rubymotion domain", I wonder if it should drop all external dependencies. I think your work on MotionBlender is awesome for people consuming gems and writing cross-platform gems, but since this gem is a "purely RubyMotion" implementation of ActiveSupport, I'm not sure it's the right place for using a dependency manager at all.
Thoughts on that?
Ahh I think I see the benefit now - the ability to add only the parts of motion-support
that your app uses, and those could be in the source files instead of in the Rakefile.
I came to RubyMotion without ever writing Ruby code, so this style (the "native" Ruby style that is) never really appealed to me - but I'm in the minority in this case!
What has the response been to your gem? Can you let me know what other gems have adopted it over motion-require
?
Yes, I completely agree with that there should not be more than one active-support port.
motion_blender-support
is just a temporary one.
I made it because I needed it to develop another gem on it.
OK now, please let me explain my idea. I have been working on rails for many years, so I have a reasonable experience of native-Ruby. Through this experience, I believe that there must be a great advantage if the development tools for native-Ruby (or rails) are available on RubyMotion.
This gem or MotionBlender is not only for some specific applications or gems. I am thinking of importing the "native way" of development into the RubyMotion world.
For example, I am developing a gem motion_flux which is to introduce Flux-Architecture into RubyMotion apps. This gem is completely compatible with native-Ruby, so that I am developing it on native way, using guard, rspec, simple-cov, rubocop, pry and so on.
After a while, I wanted to use motion-support functionality. I looked for the way to import motion-support natively, keeping my developing style as it was, but there not seemed to be any solution. That is why I made MotionBlender and this motion_blender-support.
So far, things are going well. I made it sure that MotionBlender and motion_blender-support (and motion_flux) are working well in a RubyMotion app. Also I checked if it cooperates nicely with other well-known gems like ProMotion, RMQ, MotionKit, BubbleWrap, AFMotion...
Like this way, I am trying to develop things as native as possible. Even if it is only for RubyMotion, native-development is quite powerful. This is the main goal of MotionBlender and motion_blender-support.
I see that requiring something from a source code is nice, but that is not the main goal of the whole idea.
What do you think of this idea?
@colinta Well, to answer your question:
What has the response been to your gem? Can you let me know what other gems have adopted it over motion-require?
My gem is good for the case when developing a "compatible" gem and wanting to develop "natively". Am I answering your question?
I am not sure this should go as a PR, but I think this is the handiest way to tell you things.
I made a clone of
motion-support
which usesMotionBlender
in place ofmotion-require
. In that way, we can use this gem by 'require'-ing like ordinary Ruby code. For the detail, please refer to MotionBlender.And to make it available as a gem, I made
motion_blender-support
gem. Though, this is not a very good idea because yet another version of*-support
makes other developers confused.On the other hand, this change is quite impactive on the existing apps or gems so that it seems not easy to merge into the main master branch.
In my thought, it is a good idea to move for making this version of motion-support as a main version. Because MotionBlender is taking a comprehensive approach and is covering the needs of
motion-require
andMotionBundler
.Now I would like to know what you think. Thanks.