MyUW 2016-10-25 release


Today MyUW promoted a new release to production. This post highlights some aspects of this.

Edits:

  • Updated to reflect new name uPortal home and new git repository location for what was once called AngularJS-portal

This release

This release upgraded MyUW to uPortal home v5.4.1 from v5.2.4.

Highlights for Apereo community

  • Continued implementation of Material Design. Piggybacking on Google’s Material Design in higher education web applications is an opportunity to raise the baseline for design and consistency without having to invent and maintain that design guidance using scarce higher education resources. To the extent feasible, we’re trying to use MyUW design resources on unique-to-MyUW design problems rather than on web-application-general design problems. Also, Material Design theming is rocking the skinning problem, supporting different color treatments across the many Wisconsin system campuses MyUW serves.
  • Continued development of lightweight notifications technology. Notifications now have optional associated actions and more options for priority treatment and end-user option to dismiss unneeded notifications.

Lessons to learn

  • Semantic versioning is important. We had a hiccup in this release because a rest-proxy change wasn’t backwards-compatible as regards endpoints.properties. In retrospect, the properties file configuring this product is its API so breaking changes would be better signaled with a MAJOR version change (and avoided when not strictly necessary).
  • Deep linking is important, enabling better communication about and leverage of content in your portal. This release fixed support for deep links into uPortal home content.

Calls to action

Talk about what you are doing.

It is only possible to discover opportunities to collaborate, to share code, to compare notes on the practices of portals in higher education if we talk about what we are doing.

Adopt and collaborate on microservices.

You don’t have to adopt everything MyUW has adopted to find something that would add value to your local projects.

Likewise, maybe you’ve got some microservice projects and products we could be collaborating on if we knew about them.

Adopt uPortal home.

uPortal home is a modern user experience layer to plop down in front of your uPortal.

  • You don’t have to adopt it all at once, for everyone, for every user experience in your portal. MyUW variously implemented it as opt-in, opt-out, at certain hostnames, for certain identities, for certain experiences within MyUW. It’s been a long walk using the new technology for more and more experiences, and we’re still using the traditional uPortal rendering pipeline to render some maximized portlet user experiences. uPortal home is engineered to be flexible because it had to be.
  • You don’t have to stay stuck on AngularJS 1. We too want to migrate forward to AngularJS2, when time and technology allow.

Andrew Petro

Related Posts

CAS 6.1.0 RC3 Feature Release

...in which I present an overview of CAS 6.1.0 RC3 release.

Apereo CAS 6.1.x - Credential Caching & Proxy AuthN

Learn how you may configure Apereo CAS to capture and cache the credential's password and the proxy-granting ticket in proxy authentication scenarios, pass them along to applications as regular attributes/claims. We will also be reviewing a handful of attribute release strategies that specifically affect authentication attributes, conveying metadata about the authentication event itself.

Apereo CAS 6.1.x - Attribute Repositories w/ Person Directory

An overview of CAS attribute repositories and strategies on how to fetch attributes from a variety of sources in addition to the authentication source, merge and combine attributes from said sources to ultimately release them to applications with a fair bit of caching.

Apereo CAS 6.1.x - Building CAS Feature Modules

An overview of how various CAS features modules today can be changed and tested from the perspective of a CAS contributor working on the codebase itself to handle a feature request, bug fix, etc.

CAS 6.1.0 RC2 Feature Release

...in which I present an overview of CAS 6.1.0 RC2 release.

Apereo CAS - Riffing on Attribute Release Policies

Learn how to release the kraken of attributes to CAS clients, relying parties and service providers using a variety of attribute release policies and authentication protocols, sampled and collected here to fun and profit.

Apereo CAS - Delegated Authentication to SAML2 Identity Providers

Learn how your Apereo CAS deployment may be configured to delegate authentication to an external SAML2 identity provider.

Apereo CAS - Custom Login Fields w/ Dynamic Bindings

Learn how to extend the Spring Webflow model to add custom fields to the CAS login form and the authentication process and take advantage of the additional user-provided data in customized authentication handlers.

Apereo CAS as an OAuth2 Authorization Server

Learn how to configure CAS as an OAuth2 Authorization Server and configure Spring Boot client app to work with it

Apereo CAS - SAML2 Identity Provider Integration w/ Gitlab (also staring HAProxy and LDAP)

Learn how Apereo CAS may act as a SAML2 identity provider for Gitlab and run everything locally on a workstation with Docker and Java.