This changeset's key new feature is allowing web browsers to display media player notifications for Pony.fm by implementing the media session API. These notifications display Play/Pause, Previous, and Next controls that control Pony.fm's playback. This also makes Pony.fm controllable by automotive audio systems and other Bluetooth devices that expose their own (often physical) playback controls.
Other improvements in this changeset include:
- Update the automated dev environment setup to work in 2021
- Remove extraneous frontend logging
- Fix to consistently include album data with a track's data
- upgraded everything that Gulp uses
- locked packages to specific versions
- removed npm-shrinkwrap.json because it contained a macOS-specific dependency
Summary:
The `is_archived` attribute on the `User` model did not explicitly come
back as any particular type. The resulting JSON had the string `"0"` for what's
meant to be a falsey value, but it evaluated to truthy in JS.
`is_archived` now has a getter which explicitly casts it to `boolean` before being
returned anywhere.
Test Plan: Manually tested in dev.
Reviewers: Feld0
Reviewed By: Feld0
Subscribers: #pony.fm
Projects: #pony.fm
Maniphest Tasks: T126
Differential Revision: https://phabricator.poniverse.net/D6