Last Week in ManageIQ: API refactor, Observables and more!


#1

Greetings from sunny Brno, Happy Martin here, from the UI team :).

Stats

Last week, we merged 112 PRs into master, consisting of 298 commits made by 49 people! Growing strong…

As always, everybody is welcome to contribute, see our issue tracker.

Improved

Convert API collections to individual controllers

Tim Wade has done an impressive amount of work refactoring our REST API code, converting collections to individual controllers, moving the entrypoint to ApiController, changing the namespace and removing custom routing, which may make it much easier to expand the API to manage all the things, REST style :).

Add missing gettext

Milan Zazrivec is pushing forward with our i18n efforts, this week by adding missing gettext, and restoring internationalization functionality in toolbars. If you want him to keep his sanity, please go through our i18n guidelines at least once a week, before bedtime.

For Middleware Server operations use Rx.js Observables for communication

Mike Thompson has been working in middleware code, this time to use RxJs Observables to talk to the toolbar, progress! :)

Fixed

Fix dev reload issues when Vmdb::Settings.reload! is called

Jason Frey and Chris Arcand have been busy in fixing-the-fix-to-fix-the-fix-land - this time to fix some reload issues and test failures after the recent changes to Vmdb::Settings. First, we skipped the failures, actually skipped the failures, then fixed the failures and the reload error in devel mode. Developers everywhere, rejoice!

Check the request format before setting the redirection after the login page

Yaacov Zamir has done a small but important fix to prevent an annoying routing error, when the user gets redirected to the login screen from a POST action. 1 error less, NaN to go!

Force jasmine-core 2.4.1 instead of 2.5

Last week jasmine 2.5 also came out, making all our javascript tests fail because of an overly optimistic version constraint. Fixed shortly after by yours truly, cough shameless plug cough.

Fix enabling of toolbar components if item is selected in automate explorer

Karel Hála had recently converted our toolbars to angular and now he's fixing the odd places where that didn't quite work out, this time in Automate. Thanks for touching that :).

Add missing policy buttons to Network Manager Relationship pages

One of our newest colleagues, Hilda Šťastná has added a Policy toolbar button to all the places that should have it but didn't. More tags for everyone :cookie:!

New

Archived: Scope for not archived nor orphaned

Keenan Brock, our DB guru, has found an old TODO and has actually TODONE. (TODID?) Now, we have a scope for non-archived, non-orphaned VMs.

Authentication token for initiation web sockets

Šimon Lukašík has been working on making the websocket have its own authentication token, with some prior TokenManager changes. This being done, we should be well on the way towards asynchronous notifications via websockets, wheee.

API - add backend version info

People really seem to like our About dialog, so we're bringing it to the Self-Service UI too. Just a small change from yours truly, adding some necessary info to the API entrypoint.

Deleted

Remove process_tasks methods from provider classes

Nick Carboni has found some more dead code, this time process_tasks in a couple of provider classes .. aaand it's gone, never to be seen again :).

Remove old "admintable" class table styling

Eric Winchell has been working on multiple old styling cleanups - admintable class, tagstable class, form buttons and checkboxes. Good riddance.

Removed unused report tree partials

David Halász has also found a couple of unused tree partials during his bootstrap tree work - and he promptly dispatched them to /dev/null.

Wrapping up

Of course I missed most of the boring PRs doing some actual work, but feel free to check all of them out here. And stay tuned for even more exciting news next week :).


This is a companion discussion topic for the original entry at http://manageiq.org/blog/2016/09/last-week-in-manageiq-api-refactor-observables/