Hi,

> we need people familiar with Angular and Horizon's ways of using Angular (which seem to be very
> non-standard) that would be willing to write and review code. Unfortunately the people who originally
> introduced Angular in Horizon and designed how it is used are no longer interested in contributing,
> and there don't seem to be any new people able to handle this.

I've been working with Horizon's Angular for quite some time and don't mind keeping at it, but
it's useless unless I can get my code merged, hence my original message.

As far as attracting new developers goes, I think that removing some barriers to entry couldn't hurt -
seeing commits simply lost to time being one of them. I can see it as being fairly demoralizing.

> Personally, I think that a better long-time strategy would be to remove all
> Angular-based views from Horizon, and focus on maintaining one language and one set of tools.

Removing AngularJS wouldn't remove JavaScript from horizon. We'd still be left with a home-brewish
framework (which is buggy as is). I don't think removing js completely is realistic either: we'd lose 
functionality and worsen user experience. I think that keeping Angular is the better alternative:

1) A lot of work has already been put into Angularization, solving many problems
2) Unlike legacy js, Angular code is covered by automated tests
3) Arguably, improvments are, on average, easier to add to Angular than pure js implementations

Whatever reservations there may be about the current implementation can be identified and addressed, but
all in all, I think removing it at this point would be counterproductive.

M.

čt 5. 9. 2019 v 14:28 odesílatel Radomir Dopieralski <openstack@sheep.art.pl> napsal:
Both of your questions have one answer: we need people familiar with Angular and Horizon's ways of using Angular (which seem to be very non-standard) that would be willing to write and review code. Unfortunately the people who originally introduced Angular in Horizon and designed how it is used are no longer interested in contributing, and there don't seem to be any new people able to handle this. Personally, I think that a better long-time strategy would be to remove all Angular-based views from Horizon, and focus on maintaining one language and one set of tools.

On Thu, Sep 5, 2019 at 1:52 PM Marek Lyčka <marek.lycka@ultimum.io> wrote:
Hi all,

I took apart the Horizon paging mechanism while working on [1] and have a 
few of findings:

- Paging is unimplemented/turned off for many (if not most) panels, not just Routers and Networks
- Currently, single page data loads could potentially bump up against API hard limits
- Sorting is also broken in places where paging is enabled (Old images...), see [2]
- The Networks table loads data via three API calls due to neutron API limitations, which makes the marker based mechanism unusable
- There is at least one more minor bug which breaks pagination, there may be more

While some of these things may be fixable in different hacky and/or inefficient ways,
we already have Angular implementations which fix many of them and make improving
and fixing the rest easier.

Since Angular ports would help with other unrelated issues as well and allow us to 
start deprecating old code, I was wondering two things:

1) What would it take to increase the priority of Angularization in general?
2) Can the Code Review process be modified/improved to increase the chance for 
    Angularization changes to be code reviewed and merged if they do happen? 
    My previous attempts in this area have failed because of lack of code reviewers...

Since full Angularization is still the goal for Horizon as far as I know, I'd rather
spend time doing that than hacking solutions to different problems in legacy code
which is slated deprecation.

Best Regards,
Marek


--
Marek Lyčka
Linux Developer

Ultimum Technologies s.r.o.
Na Poříčí 1047/26, 11000 Praha 1
Czech Republic

marek.lycka@ultimum.io
https://ultimum.io


--
Marek Lyčka
Linux Developer

Ultimum Technologies s.r.o.
Na Poříčí 1047/26, 11000 Praha 1
Czech Republic

marek.lycka@ultimum.io
https://ultimum.io