Instead of merging it into master, could we merge it to a feature branch like `experimental/TP.rewrite` if there is a desire for collaborative efforts. This would allow changes to flow in without adding more code to our normal review processes and polluting the changelog with WIP until it's done and ready to be merged. As an additional bonus it provides a more stable development for the new work since you'd be choosing when to pay the merge costs of ongoing master changes.
Jonathan G On 4/10/19, 8:59 AM, "Fieck, Brennan" <[email protected]> wrote: I guess that depends what you mean by "we". I personally think it's worthwhile, and I'll probably keep working on it until it reaches feature parity with the existing TP. I'm not saying development on the existing AngularJS-based TP should stop in the meantime, just that self-service be implemented separately in a more modern and flexible framework. Then - and only then - should we consider replacing the old TP with the new. Slowly, over time. The current TP was built for admins, so I don't think it'd actually be more work to implement a customer-facing interface this way than restructuring the existing TP to support it. ________________________________________ From: Hank Beatty <[email protected]> Sent: Wednesday, April 10, 2019 8:38 AM To: [email protected] Subject: [EXTERNAL] Re: Traffic Portal Angular7 rewrite w/ Self-Service Hello, Are we seriously considering totally re-writing another component? -Hank On 4/5/19 12:09 PM, Fieck, Brennan wrote: > Some of you may have heard, but about two and a half weeks ago I opened a Pull Request to add something to the `/experimental` directory. It's basically a re-implementation of Traffic Portal, which I think is beneficial not only because Traffic Portal wasn't designed with self-service in mind, but also because it cleans up a few issues on the development side. First of all, it uses the most recent LTS version of Angular, while the one on which Traffic Portal is currently based is now deprecated (this new version can also compile projects for Electron, which would make TP distributable as a standalone/mobile app). It also uses Typescript which compiles more cleanly to an overall smaller product, and is much easier to read, write and document. Remember the SCSS compiler issues (compass) we keep having? Angular 7 comes with a compiler at project init, so we never need that as an externally-provided dependency again. Finally, it already has unit testing and end-to-end testing working in four different JS engines. > > > I'm currently looking for a reviewer (https://github.com/apache/trafficcontrol/pull/3419) and you can read more about what's implemented there, but a short summary: > > > * Login/authentication and API proxy > * Delivery Service view with bandwidth charts > * New Delivery Service creation targeted at self-service users with limited advanced editing options > > * User listing (read-only) > > * Preliminary HTTPS support (currently only listens on 'localhost') > > > Plus, if I do say so myself, it all looks pretty snappy on every screen I could test. > > > Feedback is also appreciated, especially concerning the "New Delivery Service" form. >
