1
0
mirror of synced 2025-12-25 11:03:37 -05:00
Files
docs/data/features
Laura Coursen 30aed6f825 Custom organization roles (#38963)
Co-authored-by: Dylan Smith <dylan-smith@github.com>
Co-authored-by: isaacmbrown <isaacmbrown@github.com>
Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: Isaac Brown <101839405+isaacmbrown@users.noreply.github.com>
Co-authored-by: Matt Pollard <mattpollard@users.noreply.github.com>
Co-authored-by: Rachael Rose Renk <91027132+rachaelrenk@users.noreply.github.com>
Co-authored-by: Hirsch Singhal <1666363+hpsin@users.noreply.github.com>
Co-authored-by: Craig Steinberger <cjs@github.com>
Co-authored-by: Siara <108543037+SiaraMist@users.noreply.github.com>
2023-11-16 17:09:28 +00:00
..
2023-03-09 10:28:07 +00:00
2021-10-27 07:47:17 -07:00
2022-06-08 12:26:37 +02:00
2023-09-22 10:46:46 +00:00
2021-10-15 15:41:33 -05:00
2022-07-27 15:55:35 +01:00
2023-05-09 19:39:36 +00:00
2022-01-21 18:04:18 +00:00

Feature-based versioning

Feature-based versioning allows us to define and control the versions of an arbitrarily named "feature" in one place.

Note: Do not delete data/features/placeholder.yml because it is used by tests.

How it works

Add a new YAML file with the feature name you want to use in this directory. For a feature named meow, that would be data/features/meow.yml.

Add a versions block to the YML file with the short names of the versions the feature is available in. For example:

versions:
  fpt: '*'
  ghec: '*'
  ghes: '>3.1'
  ghae: '*'

The format and allowed values are the same as the frontmatter versions property.

Liquid conditionals

Now you can use {% ifversion meow %} ... {% endif %} in content files!

Frontmatter

You can also use the feature in frontmatter in content files:

versions:
  fpt: '*'
  ghec: '*'
  ghes: '>3.1'
  feature: 'meow'

You cannot use feature: to specify multiple concurrent versions, as this is not supported. Alternatively, you could create a new feature-based versioning file with the required versioning.

Schema enforcement

The schema for validating the feature versioning lives in src/content-linter/lib/feature-versions-schema.js and is exercised by tests/linting/lint-versioning.js.

Script to remove feature tags

TBD!