Skip to content

Deprecation is Hard to Do, and We Can Do it Better #20

Open
@bvandersloot-mozilla

Description

@bvandersloot-mozilla

Session description

Deprecating behavior on the web has to be done sparingly. Removing a behavior from the platform means that some websites that once worked will no longer do so. For some sites and behaviors that may be a good thing, e.g if it improves security or privacy protections provided to the user. However, this needs to be weighed against the impact on existing website deployments that don’t need or merit that protection and the impact on the web ecosystem of removing that behavior. Failing to sufficiently incorporate those website deployments' needs leaves the deprecation paternalistic at best.

One place this tension arises is in the similarity of authentication and tracking to the browser. Privacy protections that rely upon deprecating behavior, like third-party cookies, have had to work around this tension.

In this session we will discuss principles for deciding:

  • what behaviors are candidates for deprecation,
  • when a deprecation should proceed,
  • how to mitigate harm from those deprecations.

Participants are encouraged to bring their own examples that reveal challenges to provide concreteness. The chair will use third party cookie deprecation, storage access, FedCM, navigational tracking, OpenID Connect, and SAML as a starting point and example that they are familiar with

Session goal

Improve consensus around deprecation of web platform behaviors

Additional session chairs (Optional)

No response

Who can attend

Anyone may attend (Default)

IRC channel (Optional)

#unship-it-2024

Other sessions where we should avoid scheduling conflicts (Optional)

#10, #12, #49

Instructions for meeting planners (Optional)

No response

Agenda for the meeting.

5-10 minutes of stage setting, followed by discussion.

Links to calendar

Meeting materials

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    Status

    No status

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions