style-guide

Vercel's engineering style guide

MPL-2.0 License

Downloads
1.1M
Stars
1.1K
Committers
10

Bot releases are visible (Hide)

style-guide - v6.0.0 Latest Release

Published by vercel-release-bot 8 months ago

6.0.0 (2024-03-05)

Features

  • eslint: update @typescript-eslint/* dependencies (#102) (dd7004d)
  • deps: update dependencies and require Node >=18.18 (#97) (4efc908)
  • eslint: accept @next/eslint-plugin-next@canary as peer dep (#89) (55508ac)
  • eslint: add vitest config (#96) (325b65a)
  • eslint: remove jest/require-top-level-describe (#93) (e09a147)
  • eslint: remove no-await-in-loop (#95) (2b0ce9d)
  • eslint: remove react/jsx-sort-props (#87) (0088457)
  • eslint: remove deprecated no-return-await (#94) (1ea97f4)
  • eslint: update eslint-plugin-playwright (#98) (4b89216)

BREAKING CHANGES

  • deps: Node 18.18 is now the minimum required version.
  • eslint: Contains changes to @typescript-eslint/* enabled rules and configuration.
  • eslint: Enabled rules for eslint-plugin-playwright have changed.
  • eslint: no-await-in-loop has been removed.
  • eslint: no-return-await is deprecated and has been removed.
  • eslint: jest/require-top-level-describe has been removed.
style-guide - v6.0.0-canary.1

Published by vercel-release-bot 8 months ago

6.0.0-canary.1 (2024-03-05)

Features

  • deps: update @typescript-eslint/* dependencies (#102) (dd7004d)

Reverts

  • feat(eslint): update @typescript-eslint/* dependencies (#99) (#101) (40f1c5d)

BREAKING CHANGES

  • deps: Contains changes to @typescript-eslint/* rules and configuration.
style-guide - v5.3.0-canary.8

Published by vercel-release-bot 8 months ago

5.3.0-canary.8 (2024-03-05)

Features

  • deps: update dependencies and require Node >=18.18 (#97) (4efc908)
  • eslint: update @typescript-eslint/* dependencies (#99) (2ff7465)
style-guide - v5.3.0-canary.7

Published by vercel-release-bot 8 months ago

5.3.0-canary.7 (2024-03-05)

Features

style-guide - v5.3.0-canary.6

Published by vercel-release-bot 8 months ago

5.3.0-canary.6 (2024-03-05)

Features

  • eslint: update eslint-plugin-playwright (#98) (4b89216)
style-guide - v5.3.0-canary.5

Published by vercel-release-bot 8 months ago

5.3.0-canary.5 (2024-03-05)

Features

  • eslint: remove deprecated no-return-await (#94) (1ea97f4)
style-guide - v5.3.0-canary.4

Published by vercel-release-bot 8 months ago

5.3.0-canary.4 (2024-03-04)

Features

  • eslint: remove jest/require-top-level-describe (#93) (e09a147)
style-guide - v5.3.0-canary.3

Published by vercel-release-bot 8 months ago

5.3.0-canary.3 (2024-03-04)

Features

style-guide - v5.3.0-canary.2

Published by vercel-release-bot 8 months ago

5.3.0-canary.2 (2024-03-04)

Features

  • eslint: remove react/jsx-sort-props (#87) (0088457)
style-guide - v5.3.0-canary.1

Published by vercel-release-bot 8 months ago

5.3.0-canary.1 (2024-03-04)

Features

  • eslint: accept @next/eslint-plugin-next@canary as peer dep (#89) (55508ac)
style-guide - v5.2.0

Published by vercel-release-bot 9 months ago

5.2.0 (2024-02-02)

Bug Fixes

Features

  • typescript: add multiple tsconfigs (#60) (3991e02)
style-guide - v5.2.0-canary.2

Published by vercel-release-bot 9 months ago

5.2.0-canary.2 (2024-02-02)

Bug Fixes

style-guide - v5.2.0-canary.1

Published by vercel-release-bot 11 months ago

5.2.0-canary.1 (2023-11-22)

Features

  • typescript: add multiple tsconfigs (#60) (3991e02)
style-guide - v5.1.0

Published by vercel-release-bot 11 months ago

5.1.0 (2023-11-10)

Bug Fixes

  • eslint: disable includeInternal flag (943626e)

Features

  • eslint: expand peer @next/eslint-plugin-next version (#74) (b2b253e)
style-guide - v5.1.0-canary.1

Published by vercel-release-bot 12 months ago

5.1.0-canary.1 (2023-11-03)

Features

  • eslint: expand peer @next/eslint-plugin-next version (#74) (b2b253e)
style-guide - v5.0.2-canary.1

Published by vercel-release-bot about 1 year ago

5.0.2-canary.1 (2023-09-22)

Bug Fixes

  • eslint: disable includeInternal flag (943626e)
style-guide - v5.0.1

Published by vercel-release-bot about 1 year ago

5.0.1 (2023-08-31)

Bug Fixes

  • update peer dependencies (cd70de9)
style-guide - v5.0.1-canary.1

Published by vercel-release-bot about 1 year ago

5.0.1-canary.1 (2023-08-30)

Bug Fixes

  • update peer dependencies (cd70de9)
style-guide - v5.0.0

Published by vercel-release-bot about 1 year ago

5.0.0 (2023-08-29)

Features

  • eslint: change config for import/no-extraneous-dependencies (b81ebaa), closes #42
  • eslint: enable @typescript-eslint/require-array-sort-compare (c55c6fc), closes #61
  • eslint: enable allowExpressions in @typescript-eslint/explicit-function-return-type (6b4214f), closes #51
  • eslint: enable eslint-comments/require-description (ec761d9), closes #26
  • eslint: enable react/no-unknown-property (2a4bd0e), closes #52
  • eslint: introduce from jest-react config (8f612e0)
  • eslint: introduce rules from playwright/recommended (85f8b18)
  • eslint: update to ESLint 8.48.0 (dac7a98)
  • eslint: upgrade @typescript-eslint/* and recommended configs (8c4c673), closes #66
  • eslint: upgrade dependencies (8850581)
  • prettier: upgrade to 3.x (f1346cd), closes #65

BREAKING CHANGES

  • eslint: A compare function is now required when calling sort on non-string arrays. This change applies to TypeScript only.
  • eslint: Types are no longer required in expressions (callbacks), as the parent will flag unexpected return types.
  • eslint: ESLint disable directives (comments) now require a description. An example migration script is available below.
  • eslint: import/no-extraneous-dependencies now checks internal modules and type-only imports.
  • eslint: react/no-unknown-property has been enabled as it provides a useful auto-fix for SVG properties.
  • eslint: Upgrading to @typescript-eslint/*@6.x may have have enabled additional rules.
  • eslint: Rules for @testing-library/react have been moved to a new jest-react config, which extends the jest config.
  • eslint: Rules were enabled to align with the recommended rules from eslint-plugin-playwright.
  • eslint: ESLint 8.48.0 is now the minimum supported version.
  • prettier: Prettier 3.0 is now the minimum supported version.

Migrations

For eslint-comments/require-description, we've created this example script - which you can modify. It appends a placeholder comment to eslint-disable directives without comments.

#!/bin/bash

# find all .js files in the current directory and all subdirectories
find . -type f \( -name '*.js' -o -name '*.ts' \) ! -path "*/node_modules/*" | while read file
do
    ### Use sed to modify strings
    sed -i '' -E '/--/!s|^( *// eslint-disable.*)$|\1 -- [@vercel/style-guide@5 migration]|' "$file"
done

Co-authored-by: Vu Van Dung [email protected]

style-guide - v5.0.0-canary.1

Published by vercel-release-bot about 1 year ago

5.0.0-canary.1 (2023-08-29)

Features

  • eslint: change config for import/no-extraneous-dependencies (b81ebaa), closes #42
  • eslint: enable @typescript-eslint/require-array-sort-compare (c55c6fc), closes #61
  • eslint: enable allowExpressions in @typescript-eslint/explicit-function-return-type (6b4214f), closes #51
  • eslint: enable eslint-comments/require-description (ec761d9), closes #26
  • eslint: enable react/no-unknown-property (2a4bd0e), closes #52
  • eslint: introduce from jest-react config (8f612e0)
  • eslint: introduce rules from playwright/recommended (85f8b18)
  • eslint: update to ESLint 8.48.0 (dac7a98)
  • eslint: upgrade @typescript-eslint/* and recommended configs (8c4c673), closes #66
  • eslint: upgrade dependencies (8850581)
  • prettier: upgrade to 3.x (f1346cd), closes #65

BREAKING CHANGES

  • eslint: A compare function is now required when calling sort on non-string arrays. This change applies to TypeScript only.
  • eslint: Types are no longer required in expressions (callbacks), as the parent will flag unexpected return types.
  • eslint: ESLint disable directives (comments) now require a description. When migrating to this version, you may want to disable this rule for some files.
  • eslint: import/no-extraneous-dependencies now checks internal modules and type-only imports.
  • eslint: react/no-unknown-property has been enabled as it provides a useful auto-fix for SVG properties.
  • eslint: Upgrading to @typescript-eslint/*@6.x may have have enabled additional rules.
  • eslint: Rules for @testing-library/react have been moved to a new jest-react config, which extends the jest config.
  • eslint: Rules were enabled to align with the recommended rules from eslint-plugin-playwright.
  • eslint: ESLint 8.48.0 is now the minimum supported version.
  • prettier: Prettier 3.0 is now the minimum supported version.

Co-authored-by: Vu Van Dung [email protected]