Quantcast
Channel: Issues for Drupal core
Viewing all articles
Browse latest Browse all 291890

Project messaging channel in core

$
0
0

Problem/Motivation

Per the core idea issue: #2940739: Project messaging channel in core initiative

The vast majority of Drupal users do not have accounts on Drupal.org, and likely do not regularly follow Drupal project news, or engage with communications channels that promote important updates, news and events, or support for the community and association.

The goal of this initiative is to provide a channel for messaging about the Drupal project within the administrative interface of core. This channel could provide information about upcoming releases, new feature highlights, events like DrupalCon, and promote support of the project via Association membership or other programs.

Proposed resolution

This announcement feature has been developed as part of contrib: https://www.drupal.org/project/announce

It was developed using the following guidelines:

  • Follow existing core patterns where possible
  • Reuse existing visual display/layout from the settings tray
  • Provide a notification icon in the primary toolbar
  • Consume a feed from Drupal.org

Initial design concepts were provided here: https://www.figma.com/proto/Ws4Gk0ImaripDb4NAlTvCBtZ/Community-Alerts---...

For initial inclusion, the following potential features were not in scope:

  • Configurable endpoints for multiple feeds.
  • An API for extensibility by other contributed modules.

These sorts of features could be considered for follow-up issues.

Remaining tasks

  • Finalize the feed from Drupal.org (need to handle version constraints for messaging)
  • Complete tests: #3198730: Automated tests for Announce
  • Standardize language to 'announcements' rather than 'alerts'
  • Open the merge request on this issue
  • **D7 Backport can start from here**
  • Usability review
  • Accessibility review
  • Product manager review - Finalize policy for how the feed is to be used
  • Framework manager review
  • Release manager review - determine if we need to start as experimental, or can skip experimental since it is not a site-feature

User interface changes

  • Adds a notification icon to the admin toolbar
  • Adds an announcement tray with a list of the announcements pulled from the feed

API changes

  • This feature does not add any public APIs

Data model changes

  • This feature uses cache tags in the user scope to handle read/unread status of announcements.

Security considerations

  • The feed itself must be securely controlled from Drupal.org with a policy for who has access and editorial approval.

Release notes snippet

Drupal core now includes an announcements feed of project news from Drupal.org. This feed of announcements is displayed in the Drupal administrative toolbar to site owners/editors, tracking read/unread status with cache tags. Announcements may include: news about upcoming Drupal features, important information for site owners on older Drupal versions, and information about supporting the Drupal project through Drupal Association programs.

Governance

To publish a new piece to this announcements feed should require an extra level of governance and oversight.

Proposed governance:

  • Sign off by a designated Drupal Association staff member
  • Sign off by a Drupal Core product manager (per maintainers.txt)
  • (When relevant) sign off by another key stakeholder - such as a security working group member for announcements related to security issues, for example.

D7 Backport

This is an exceptional case where a backport to Drupal 7, even this late in Drupal 7's lifecycle, is likely worth our time. The large number of legacy sites on Drupal 7 are an audience we need to be able to reach, and this may be our only way to do so.

Contributors to D9 release

tedbow, Lal_, drumm, vimaljoseph, mohit_aghera, mitthukumawat, hestnet, Abhinand Gokhala K, AkshayAdhav

Recording

Announcement Feed Video


Viewing all articles
Browse latest Browse all 291890

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>