Deprecation guidelines

This page includes information about how and when to remove or make breaking changes to GitLab features.

Terminology

It's important to understand the difference between deprecation and removal:

Deprecation is the process of flagging/marking/announcing that a feature is scheduled for removal in a future version of GitLab.

Removal is the process of actually removing a feature that was previously deprecated.

When can a feature be deprecated?

A feature can be deprecated at any time, provided there is a viable alternative.

When can a feature be removed/changed?

For API removals, see the GraphQL and GitLab API guidelines.

For configuration removals, see the Omnibus deprecation policy.

For versioning and upgrade details, see our Release and Maintenance policy.