Manageiq to use Rails 5.1?


#1

I was informed by one of our team members that the upcoming Rails 5.1 should have a good built in support for JS.
(via webpack gem)

Is there any plan/timeline to update miq to work with Rails 5.1 and use this new functionality when it’s released?

thank you


#2

Hey,

yes we plan to use Rails 5.1, not sure about the timeline for that.

But as for webpack, that’s a separate effort that’s already on the way (though a bit stalled at the moment, we need to finish the transition from bower to npm first, and make bin/update work with ui split before that) - so we’ll either finish sooner and use the same aproach with rails 5.0 + webpacker, or rails 5.1 will happen sooner and we’ll use that.

So, coming soon ™ :slight_smile: (± a year)


#3

HI,

For what I’ve seen you are talking about yarn, not npm. Is that right?


#4

Well, not much difference, really.

I have encountered multiple problems working with yarn and local npm packages when doing stuff on ui-service which already uses yarn.

So… while I agree that yarn is better for travis, and definitely for actual releases, I’m not very sure it’s a good fit for development mode yet. Especially given the assumption that yarn.lock should be in the repo, which is exactly what we don’t do with Gemfile.lock before release…


#5

Ok.

I’ve been using 5.1 beta with Angular, and it uses webpacker gem, webpack and yarn. Somehow moving to 5.1 will imply yarn anyway


#6

The big disadvantage to not going to Angular 2 sooner is that everything we create now is technical debt. Everything we create now is technical debt. All the other incremental changes discussed are superfluous, such as: webpack, yarn, and bower/npm are largely irrelevant to developers writing the code (these are packaging issues).

We should at least move to ES6 now so we don’t have to change language syntax as well as framework packaging.


#7

@mtho11 ES6 is definitely on the list :). Except you can’t use that without replacing sprockets - thus webpacker and webpack becomes a dependency… And if we don’t want to deal with npm and bower at the same time, so does the bower to npm transition… And since we don’t want to deal with npm in manageiq, but want it living in manageiq-ui-classic, we need pluggable bin/update before that. So that’s where it is right now :slight_smile: