diff --git a/.github/workflows/azure-preview-env-deploy-public.yml b/.github/workflows/azure-preview-env-deploy-public.yml index fde6c90618b7..6cdf30f44852 100644 --- a/.github/workflows/azure-preview-env-deploy-public.yml +++ b/.github/workflows/azure-preview-env-deploy-public.yml @@ -112,7 +112,7 @@ jobs: run: src/workflows/prune-for-preview-env.sh - name: 'Build and push image' - uses: docker/build-push-action@ca052bb54ab0790a636c9b5f226502c73d547a25 + uses: docker/build-push-action@1a162644f9a7e87d8f4b053101d1d9a712edc18c with: context: . push: true diff --git a/.github/workflows/azure-preview-env-deploy.yml b/.github/workflows/azure-preview-env-deploy.yml index be10e7fd36e5..3fd51fb3e399 100644 --- a/.github/workflows/azure-preview-env-deploy.yml +++ b/.github/workflows/azure-preview-env-deploy.yml @@ -171,7 +171,7 @@ jobs: run: src/workflows/prune-for-preview-env.sh - name: 'Build and push image' - uses: docker/build-push-action@ca052bb54ab0790a636c9b5f226502c73d547a25 + uses: docker/build-push-action@1a162644f9a7e87d8f4b053101d1d9a712edc18c with: context: . push: true diff --git a/.github/workflows/azure-prod-build-deploy.yml b/.github/workflows/azure-prod-build-deploy.yml index b70523dbd8a9..3c468c970900 100644 --- a/.github/workflows/azure-prod-build-deploy.yml +++ b/.github/workflows/azure-prod-build-deploy.yml @@ -90,7 +90,7 @@ jobs: token: ${{ secrets.DOCS_BOT_PAT_READPUBLICKEY }} - name: 'Build and push image' - uses: docker/build-push-action@ca052bb54ab0790a636c9b5f226502c73d547a25 + uses: docker/build-push-action@1a162644f9a7e87d8f4b053101d1d9a712edc18c with: context: . push: true diff --git a/.github/workflows/azure-staging-build-deploy.yml b/.github/workflows/azure-staging-build-deploy.yml index 1769d2ebb23e..df5e29b8fd44 100644 --- a/.github/workflows/azure-staging-build-deploy.yml +++ b/.github/workflows/azure-staging-build-deploy.yml @@ -91,7 +91,7 @@ jobs: run: src/early-access/scripts/merge-early-access.sh - name: 'Build and push image' - uses: docker/build-push-action@ca052bb54ab0790a636c9b5f226502c73d547a25 + uses: docker/build-push-action@1a162644f9a7e87d8f4b053101d1d9a712edc18c with: context: . push: true diff --git a/.github/workflows/main-preview-docker-cache.yml b/.github/workflows/main-preview-docker-cache.yml index 918cd886c6d2..d8dc052e8994 100644 --- a/.github/workflows/main-preview-docker-cache.yml +++ b/.github/workflows/main-preview-docker-cache.yml @@ -68,7 +68,7 @@ jobs: run: src/workflows/prune-for-preview-env.sh - name: 'Build and push image' - uses: docker/build-push-action@ca052bb54ab0790a636c9b5f226502c73d547a25 + uses: docker/build-push-action@1a162644f9a7e87d8f4b053101d1d9a712edc18c with: context: . push: true diff --git a/content/account-and-profile/managing-subscriptions-and-notifications-on-github/setting-up-notifications/configuring-notifications.md b/content/account-and-profile/managing-subscriptions-and-notifications-on-github/setting-up-notifications/configuring-notifications.md index fce402e78722..00b27ef32a41 100644 --- a/content/account-and-profile/managing-subscriptions-and-notifications-on-github/setting-up-notifications/configuring-notifications.md +++ b/content/account-and-profile/managing-subscriptions-and-notifications-on-github/setting-up-notifications/configuring-notifications.md @@ -159,7 +159,7 @@ For more information, see "[AUTOTITLE](/account-and-profile/managing-subscriptio ## Configuring your watch settings for an individual repository -You can choose whether to watch or unwatch an individual repository. You can also choose to only be notified of certain event types such as {% data reusables.notifications-v2.custom-notification-types %} (if enabled for the repository) , or completely ignore an individual repository. +You can choose whether to watch or unwatch an individual repository. You can also choose to only be notified of certain event types such as {% data reusables.notifications-v2.custom-notification-types %} (if enabled for the repository), or completely ignore an individual repository. {% data reusables.repositories.navigate-to-repo %} 1. In the upper-right corner, select the "Watch" drop-down menu, then click a watch option. diff --git a/content/contributing/writing-for-github-docs/annotating-code-examples.md b/content/contributing/writing-for-github-docs/annotating-code-examples.md index 65bd15c1f9a6..6dc17e35d85c 100644 --- a/content/contributing/writing-for-github-docs/annotating-code-examples.md +++ b/content/contributing/writing-for-github-docs/annotating-code-examples.md @@ -1,6 +1,6 @@ --- title: Annotating code examples -shortTitle: Annotating code examples +shortTitle: Annotate code examples intro: "You can annotate longer code examples to explain how they work and how people can customize them for other uses." layout: inline versions: diff --git a/content/contributing/writing-for-github-docs/configuring-redirects.md b/content/contributing/writing-for-github-docs/configuring-redirects.md index 01e1c74bab3b..74e624cc848b 100644 --- a/content/contributing/writing-for-github-docs/configuring-redirects.md +++ b/content/contributing/writing-for-github-docs/configuring-redirects.md @@ -1,5 +1,6 @@ --- title: Configuring redirects +shortTitle: Configure redirects intro: "If an article's title, version, or location changes, you can create a redirect to the current content." versions: feature: 'contributing' diff --git a/content/contributing/writing-for-github-docs/creating-diagrams-for-github-docs.md b/content/contributing/writing-for-github-docs/creating-diagrams-for-github-docs.md index 643c6facab21..8e193d7d9dd2 100644 --- a/content/contributing/writing-for-github-docs/creating-diagrams-for-github-docs.md +++ b/content/contributing/writing-for-github-docs/creating-diagrams-for-github-docs.md @@ -1,6 +1,6 @@ --- title: Creating diagrams for {% data variables.product.prodname_docs %} -shortTitle: Creating diagrams +shortTitle: Create diagrams intro: 'This guide explains when and how to create diagrams for {% data variables.product.prodname_docs %}.' versions: feature: 'contributing' diff --git a/content/contributing/writing-for-github-docs/creating-tool-switchers-in-articles.md b/content/contributing/writing-for-github-docs/creating-tool-switchers-in-articles.md index 41b78dae85bc..b84f450e309a 100644 --- a/content/contributing/writing-for-github-docs/creating-tool-switchers-in-articles.md +++ b/content/contributing/writing-for-github-docs/creating-tool-switchers-in-articles.md @@ -1,6 +1,6 @@ --- title: Creating tool switchers in articles -shortTitle: Creating tool switchers +shortTitle: Create tool switchers intro: 'You can use a tool switcher to show how to complete tasks using specific tools.' versions: feature: 'contributing' diff --git a/content/contributing/writing-for-github-docs/index.md b/content/contributing/writing-for-github-docs/index.md index e791e9ee4f60..e2c648ea2eed 100644 --- a/content/contributing/writing-for-github-docs/index.md +++ b/content/contributing/writing-for-github-docs/index.md @@ -7,8 +7,9 @@ versions: children: - /best-practices-for-github-docs - /about-githubs-documentation-philosophy - - /writing-content-to-be-translated - /content-design-principles + - /writing-content-to-be-translated + - /making-content-findable-in-search - /versioning-documentation - /using-markdown-and-liquid-in-github-docs - /using-yaml-frontmatter diff --git a/content/contributing/writing-for-github-docs/making-content-findable-in-search.md b/content/contributing/writing-for-github-docs/making-content-findable-in-search.md new file mode 100644 index 000000000000..ed3069f80826 --- /dev/null +++ b/content/contributing/writing-for-github-docs/making-content-findable-in-search.md @@ -0,0 +1,66 @@ +--- +title: Making content findable in search +shortTitle: Make content findable +intro: 'Follow these SEO best practices to help users find {% data variables.product.company_short %} documentation using search engines.' +versions: + feature: 'contributing' +--- + +## About search engine optimization (SEO) + +Search engine optimization (SEO) is the practice of earning visibility for web content in search engine results, such as those of Google and Bing. Google search is the top referrer to {% data variables.product.prodname_docs %} and the most common entry point for our users. + +We can plan and write our content to improve SEO. Better SEO improves the experience of people searching for documentation because it makes it more likely for them to find the information they seek using their preferred search terms. + +## Best practices for content SEO + +Good SEO requires planning content for specific audiences and being attentive to the words they use to search. Follow these best practices to improve an article's SEO. + +### Select a target audience + +Understand and write to the specific audience for the content: developers, administrators, or code learners. This helps you to: + +* Use words that your readers use. +* Make content relevant to their needs and tasks. +* Provide the right amount of context and background information. + +### Respond to search intent + +Craft content around **search intent**: the task, question, or problem that drives a member of the target audience to search for information online. + +* Conduct search intent research. For example, analyze search engine results pages (SERPs) for relevant queries. +* Understand user needs. Use multiple sources such as customer feedback, user interviews, and metrics. + +### Use clear language + +Follow guidance in "[AUTOTITLE](/contributing/writing-for-github-docs/best-practices-for-github-docs)," including: + +* Ensure every article has a clear, discrete topic. +* Put higher priority content first in an article. +* Structure articles with clear headings. +* Edit content for consistency following the "[AUTOTITLE](/contributing/style-guide-and-content-model/style-guide)." + +### Incorporate keywords + +Incorporate keywords, or top search terms used by your audience, into page copy and metadata. For example, if you are writing about "billing" but your audience primarily uses "cost" and "payment," use those terms instead. + +Google and Bing both offer keyword research tools to help you discover relevant keywords. The Docs team also consults Google Search Console data to understand what search terms lead to pages on {% data variables.product.prodname_docs %}. + +### Include metadata + +Use complete metadata in the frontmatter. To see the values available, see "[AUTOTITLE](/contributing/writing-for-github-docs/using-yaml-frontmatter)." + +On {% data variables.product.prodname_docs %}, the `intro` element displays as an on-page subhead and serves as the HTML metadata description. The article title serves as the HTML page title. For good SEO: + +* Write the title and `intro` to be complementary and keyword-rich. Consider how they will render in research. +* Accompany all images with keyword-rich alt text, which is also metadata used by search engines. See "[Alt text](/contributing/style-guide-and-content-model/style-guide#alt-text)" in the {% data variables.product.prodname_docs %} Style Guide. + +### Link strategically + +Link frugally to other task-relevant pages on {% data variables.product.prodname_docs %} and high-quality peer sites, following "[Links](/contributing/style-guide-and-content-model/style-guide#links)" in the {% data variables.product.prodname_docs %} Style Guide. + +Ensure that incoming links do not break by carefully maintaining redirects. + +### Maintain accuracy + +Ensure content is free of errors in fact, spelling, and style. Audit content periodically to remove errors such as broken links and to retire unneeded content. See "[AUTOTITLE](/contributing/writing-for-github-docs/configuring-redirects)." diff --git a/content/contributing/writing-for-github-docs/using-videos-in-github-docs.md b/content/contributing/writing-for-github-docs/using-videos-in-github-docs.md index 5ecef052e1ed..94167af8ad49 100644 --- a/content/contributing/writing-for-github-docs/using-videos-in-github-docs.md +++ b/content/contributing/writing-for-github-docs/using-videos-in-github-docs.md @@ -1,6 +1,6 @@ --- title: Using videos in GitHub Docs -shortTitle: Using videos +shortTitle: Use videos intro: 'This guide explains how to create videos that support user needs for {% data variables.product.prodname_docs %}.' versions: feature: 'contributing' diff --git a/data/reusables/notifications/vulnerable-dependency-notification-options.md b/data/reusables/notifications/vulnerable-dependency-notification-options.md index b5a175c27679..d1fb355338cb 100644 --- a/data/reusables/notifications/vulnerable-dependency-notification-options.md +++ b/data/reusables/notifications/vulnerable-dependency-notification-options.md @@ -2,7 +2,7 @@ * in your inbox, as web notifications. A web notification is sent when {% data variables.product.prodname_dependabot %} is enabled for a repository, when a new manifest file is committed to the repository, and when a new vulnerability with a critical or high severity is found (**On {% data variables.product.prodname_dotcom %}** option). * by email, an email is sent when {% data variables.product.prodname_dependabot %} is enabled for a repository, when a new manifest file is committed to the repository, and when a new vulnerability with a critical or high severity is found (**Email** option). -* on the command line, warnings are displayed as callbacks when you push to repositories with any insecure dependencies (**CLI** option). +* on the command line. Warnings are displayed as callbacks when you push to repositories with any insecure dependencies (**CLI** option). * on {% data variables.product.prodname_mobile %}, as web notifications. For more information, see "[AUTOTITLE](/account-and-profile/managing-subscriptions-and-notifications-on-github/setting-up-notifications/configuring-notifications#enabling-push-notifications-with-github-mobile)." {% note %} diff --git a/package-lock.json b/package-lock.json index b46bc00a2941..cdaa9e7b0c3b 100644 --- a/package-lock.json +++ b/package-lock.json @@ -17,7 +17,7 @@ "@primer/css": "^21.3.1", "@primer/octicons": "^19.10.0", "@primer/octicons-react": "^19.10.0", - "@primer/react": "36.23.0", + "@primer/react": "36.24.0", "accept-language-parser": "^1.5.0", "ajv": "^8.16.0", "ajv-errors": "^3.0.0", @@ -123,8 +123,8 @@ "@types/react-dom": "^18.3.0", "@types/semver": "^7.5.8", "@types/tcp-port-used": "1.0.4", - "@typescript-eslint/eslint-plugin": "^7.13.0", - "@typescript-eslint/parser": "^7.14.1", + "@typescript-eslint/eslint-plugin": "^7.15.0", + "@typescript-eslint/parser": "^7.15.0", "chalk": "^5.0.1", "change-case": "^5.4.4", "commander": "^12.1.0", @@ -2688,9 +2688,9 @@ "integrity": "sha512-/3lNloWONQMiasMAmJl5b85tP86e4uElU1d+kQQOBoVoXttni98DEigqQrKgIdwWaEcbp43IU2ks/9EZdwM2XA==" }, "node_modules/@primer/react": { - "version": "36.23.0", - "resolved": "https://registry.npmjs.org/@primer/react/-/react-36.23.0.tgz", - "integrity": "sha512-4wFDscBnZ+IenYCUqxvX/Yl6Arc2i+pJiJq+qzRxI40pvMefMBSZx3yOdbHMiQDP1gSZsIP+bDofwIk90jDKQg==", + "version": "36.24.0", + "resolved": "https://registry.npmjs.org/@primer/react/-/react-36.24.0.tgz", + "integrity": "sha512-KrKo50myOGtbUJD35ck3Bfkz8R7vdYpeWcIxa8rgyIxFF/iVt3fr4gIId5WbaSzCnEeOKSKGAgssCKPjIJLnAA==", "dependencies": { "@github/combobox-nav": "^2.1.5", "@github/markdown-toolbar-element": "^2.1.0", @@ -3479,16 +3479,16 @@ "license": "MIT" }, "node_modules/@typescript-eslint/eslint-plugin": { - "version": "7.13.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-7.13.0.tgz", - "integrity": "sha512-FX1X6AF0w8MdVFLSdqwqN/me2hyhuQg4ykN6ZpVhh1ij/80pTvDKclX1sZB9iqex8SjQfVhwMKs3JtnnMLzG9w==", + "version": "7.15.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-7.15.0.tgz", + "integrity": "sha512-uiNHpyjZtFrLwLDpHnzaDlP3Tt6sGMqTCiqmxaN4n4RP0EfYZDODJyddiFDF44Hjwxr5xAcaYxVKm9QKQFJFLA==", "dev": true, "dependencies": { "@eslint-community/regexpp": "^4.10.0", - "@typescript-eslint/scope-manager": "7.13.0", - "@typescript-eslint/type-utils": "7.13.0", - "@typescript-eslint/utils": "7.13.0", - "@typescript-eslint/visitor-keys": "7.13.0", + "@typescript-eslint/scope-manager": "7.15.0", + "@typescript-eslint/type-utils": "7.15.0", + "@typescript-eslint/utils": "7.15.0", + "@typescript-eslint/visitor-keys": "7.15.0", "graphemer": "^1.4.0", "ignore": "^5.3.1", "natural-compare": "^1.4.0", @@ -3512,15 +3512,15 @@ } }, "node_modules/@typescript-eslint/parser": { - "version": "7.14.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-7.14.1.tgz", - "integrity": "sha512-8lKUOebNLcR0D7RvlcloOacTOWzOqemWEWkKSVpMZVF/XVcwjPR+3MD08QzbW9TCGJ+DwIc6zUSGZ9vd8cO1IA==", + "version": "7.15.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-7.15.0.tgz", + "integrity": "sha512-k9fYuQNnypLFcqORNClRykkGOMOj+pV6V91R4GO/l1FDGwpqmSwoOQrOHo3cGaH63e+D3ZiCAOsuS/D2c99j/A==", "dev": true, "dependencies": { - "@typescript-eslint/scope-manager": "7.14.1", - "@typescript-eslint/types": "7.14.1", - "@typescript-eslint/typescript-estree": "7.14.1", - "@typescript-eslint/visitor-keys": "7.14.1", + "@typescript-eslint/scope-manager": "7.15.0", + "@typescript-eslint/types": "7.15.0", + "@typescript-eslint/typescript-estree": "7.15.0", + "@typescript-eslint/visitor-keys": "7.15.0", "debug": "^4.3.4" }, "engines": { @@ -3539,89 +3539,14 @@ } } }, - "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/scope-manager": { - "version": "7.14.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-7.14.1.tgz", - "integrity": "sha512-gPrFSsoYcsffYXTOZ+hT7fyJr95rdVe4kGVX1ps/dJ+DfmlnjFN/GcMxXcVkeHDKqsq6uAcVaQaIi3cFffmAbA==", - "dev": true, - "dependencies": { - "@typescript-eslint/types": "7.14.1", - "@typescript-eslint/visitor-keys": "7.14.1" - }, - "engines": { - "node": "^18.18.0 || >=20.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, - "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/types": { - "version": "7.14.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-7.14.1.tgz", - "integrity": "sha512-mL7zNEOQybo5R3AavY+Am7KLv8BorIv7HCYS5rKoNZKQD9tsfGUpO4KdAn3sSUvTiS4PQkr2+K0KJbxj8H9NDg==", - "dev": true, - "engines": { - "node": "^18.18.0 || >=20.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, - "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/typescript-estree": { - "version": "7.14.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-7.14.1.tgz", - "integrity": "sha512-k5d0VuxViE2ulIO6FbxxSZaxqDVUyMbXcidC8rHvii0I56XZPv8cq+EhMns+d/EVIL41sMXqRbK3D10Oza1bbA==", - "dev": true, - "dependencies": { - "@typescript-eslint/types": "7.14.1", - "@typescript-eslint/visitor-keys": "7.14.1", - "debug": "^4.3.4", - "globby": "^11.1.0", - "is-glob": "^4.0.3", - "minimatch": "^9.0.4", - "semver": "^7.6.0", - "ts-api-utils": "^1.3.0" - }, - "engines": { - "node": "^18.18.0 || >=20.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, - "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/visitor-keys": { - "version": "7.14.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-7.14.1.tgz", - "integrity": "sha512-Crb+F75U1JAEtBeQGxSKwI60hZmmzaqA3z9sYsVm8X7W5cwLEm5bRe0/uXS6+MR/y8CVpKSR/ontIAIEPFcEkA==", - "dev": true, - "dependencies": { - "@typescript-eslint/types": "7.14.1", - "eslint-visitor-keys": "^3.4.3" - }, - "engines": { - "node": "^18.18.0 || >=20.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, "node_modules/@typescript-eslint/scope-manager": { - "version": "7.13.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-7.13.0.tgz", - "integrity": "sha512-ZrMCe1R6a01T94ilV13egvcnvVJ1pxShkE0+NDjDzH4nvG1wXpwsVI5bZCvE7AEDH1mXEx5tJSVR68bLgG7Dng==", + "version": "7.15.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-7.15.0.tgz", + "integrity": "sha512-Q/1yrF/XbxOTvttNVPihxh1b9fxamjEoz2Os/Pe38OHwxC24CyCqXxGTOdpb4lt6HYtqw9HetA/Rf6gDGaMPlw==", "dev": true, "dependencies": { - "@typescript-eslint/types": "7.13.0", - "@typescript-eslint/visitor-keys": "7.13.0" + "@typescript-eslint/types": "7.15.0", + "@typescript-eslint/visitor-keys": "7.15.0" }, "engines": { "node": "^18.18.0 || >=20.0.0" @@ -3632,13 +3557,13 @@ } }, "node_modules/@typescript-eslint/type-utils": { - "version": "7.13.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-7.13.0.tgz", - "integrity": "sha512-xMEtMzxq9eRkZy48XuxlBFzpVMDurUAfDu5Rz16GouAtXm0TaAoTFzqWUFPPuQYXI/CDaH/Bgx/fk/84t/Bc9A==", + "version": "7.15.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-7.15.0.tgz", + "integrity": "sha512-SkgriaeV6PDvpA6253PDVep0qCqgbO1IOBiycjnXsszNTVQe5flN5wR5jiczoEoDEnAqYFSFFc9al9BSGVltkg==", "dev": true, "dependencies": { - "@typescript-eslint/typescript-estree": "7.13.0", - "@typescript-eslint/utils": "7.13.0", + "@typescript-eslint/typescript-estree": "7.15.0", + "@typescript-eslint/utils": "7.15.0", "debug": "^4.3.4", "ts-api-utils": "^1.3.0" }, @@ -3659,9 +3584,9 @@ } }, "node_modules/@typescript-eslint/types": { - "version": "7.13.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-7.13.0.tgz", - "integrity": "sha512-QWuwm9wcGMAuTsxP+qz6LBBd3Uq8I5Nv8xb0mk54jmNoCyDspnMvVsOxI6IsMmway5d1S9Su2+sCKv1st2l6eA==", + "version": "7.15.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-7.15.0.tgz", + "integrity": "sha512-aV1+B1+ySXbQH0pLK0rx66I3IkiZNidYobyfn0WFsdGhSXw+P3YOqeTq5GED458SfB24tg+ux3S+9g118hjlTw==", "dev": true, "engines": { "node": "^18.18.0 || >=20.0.0" @@ -3672,13 +3597,13 @@ } }, "node_modules/@typescript-eslint/typescript-estree": { - "version": "7.13.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-7.13.0.tgz", - "integrity": "sha512-cAvBvUoobaoIcoqox1YatXOnSl3gx92rCZoMRPzMNisDiM12siGilSM4+dJAekuuHTibI2hVC2fYK79iSFvWjw==", + "version": "7.15.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-7.15.0.tgz", + "integrity": "sha512-gjyB/rHAopL/XxfmYThQbXbzRMGhZzGw6KpcMbfe8Q3nNQKStpxnUKeXb0KiN/fFDR42Z43szs6rY7eHk0zdGQ==", "dev": true, "dependencies": { - "@typescript-eslint/types": "7.13.0", - "@typescript-eslint/visitor-keys": "7.13.0", + "@typescript-eslint/types": "7.15.0", + "@typescript-eslint/visitor-keys": "7.15.0", "debug": "^4.3.4", "globby": "^11.1.0", "is-glob": "^4.0.3", @@ -3700,15 +3625,15 @@ } }, "node_modules/@typescript-eslint/utils": { - "version": "7.13.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-7.13.0.tgz", - "integrity": "sha512-jceD8RgdKORVnB4Y6BqasfIkFhl4pajB1wVxrF4akxD2QPM8GNYjgGwEzYS+437ewlqqrg7Dw+6dhdpjMpeBFQ==", + "version": "7.15.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-7.15.0.tgz", + "integrity": "sha512-hfDMDqaqOqsUVGiEPSMLR/AjTSCsmJwjpKkYQRo1FNbmW4tBwBspYDwO9eh7sKSTwMQgBw9/T4DHudPaqshRWA==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.4.0", - "@typescript-eslint/scope-manager": "7.13.0", - "@typescript-eslint/types": "7.13.0", - "@typescript-eslint/typescript-estree": "7.13.0" + "@typescript-eslint/scope-manager": "7.15.0", + "@typescript-eslint/types": "7.15.0", + "@typescript-eslint/typescript-estree": "7.15.0" }, "engines": { "node": "^18.18.0 || >=20.0.0" @@ -3722,12 +3647,12 @@ } }, "node_modules/@typescript-eslint/visitor-keys": { - "version": "7.13.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-7.13.0.tgz", - "integrity": "sha512-nxn+dozQx+MK61nn/JP+M4eCkHDSxSLDpgE3WcQo0+fkjEolnaB5jswvIKC4K56By8MMgIho7f1PVxERHEo8rw==", + "version": "7.15.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-7.15.0.tgz", + "integrity": "sha512-Hqgy/ETgpt2L5xueA/zHHIl4fJI2O4XUE9l4+OIfbJIRSnTJb/QscncdqqZzofQegIJugRIF57OJea1khw2SDw==", "dev": true, "dependencies": { - "@typescript-eslint/types": "7.13.0", + "@typescript-eslint/types": "7.15.0", "eslint-visitor-keys": "^3.4.3" }, "engines": { diff --git a/package.json b/package.json index f83d11245a9d..b169ec16dc95 100644 --- a/package.json +++ b/package.json @@ -233,7 +233,7 @@ "@primer/css": "^21.3.1", "@primer/octicons": "^19.10.0", "@primer/octicons-react": "^19.10.0", - "@primer/react": "36.23.0", + "@primer/react": "36.24.0", "accept-language-parser": "^1.5.0", "ajv": "^8.16.0", "ajv-errors": "^3.0.0", @@ -339,8 +339,8 @@ "@types/react-dom": "^18.3.0", "@types/semver": "^7.5.8", "@types/tcp-port-used": "1.0.4", - "@typescript-eslint/eslint-plugin": "^7.13.0", - "@typescript-eslint/parser": "^7.14.1", + "@typescript-eslint/eslint-plugin": "^7.15.0", + "@typescript-eslint/parser": "^7.15.0", "chalk": "^5.0.1", "change-case": "^5.4.4", "commander": "^12.1.0", diff --git a/src/audit-logs/lib/config.json b/src/audit-logs/lib/config.json index 87d42551e7e2..d715d0c49199 100644 --- a/src/audit-logs/lib/config.json +++ b/src/audit-logs/lib/config.json @@ -3,5 +3,5 @@ "apiOnlyEvents": "This event is not available in the web interface, only via the REST API, audit log streaming, or JSON/CSV exports.", "apiRequestEvent": "This event is only available via audit log streaming." }, - "sha": "a244bf32d6248357f5e491cf0539f5fbec86bb0f" + "sha": "e6a81c02013834968e098fbf3420b7d8ca094bb3" } \ No newline at end of file diff --git a/src/graphql/data/fpt/changelog.json b/src/graphql/data/fpt/changelog.json index 6ee68edfec60..e8a1dea7e915 100644 --- a/src/graphql/data/fpt/changelog.json +++ b/src/graphql/data/fpt/changelog.json @@ -1,4 +1,24 @@ [ + { + "schemaChanges": [ + { + "title": "The GraphQL schema includes these changes:", + "changes": [ + "
Type 'ProjectV2PermissionLevel' was added
", + "Argument 'minPermissionLevel: ProjectV2PermissionLevel' (with default value) added to field 'Issue.projectsV2'
", + "Argument 'minPermissionLevel: ProjectV2PermissionLevel' (with default value) added to field 'Organization.projectsV2'
", + "Argument 'minPermissionLevel: ProjectV2PermissionLevel' (with default value) added to field 'ProjectV2Owner.projectsV2'
", + "Argument 'minPermissionLevel: ProjectV2PermissionLevel' (with default value) added to field 'PullRequest.projectsV2'
", + "Argument 'minPermissionLevel: ProjectV2PermissionLevel' (with default value) added to field 'Repository.projectsV2'
", + "Argument 'minPermissionLevel: ProjectV2PermissionLevel' (with default value) added to field 'Team.projectsV2'
", + "Argument 'minPermissionLevel: ProjectV2PermissionLevel' (with default value) added to field 'User.projectsV2'
" + ] + } + ], + "previewChanges": [], + "upcomingChanges": [], + "date": "2024-07-08" + }, { "schemaChanges": [ { diff --git a/src/graphql/data/fpt/schema.docs.graphql b/src/graphql/data/fpt/schema.docs.graphql index 0f205fcc361b..db2f88f408a3 100644 --- a/src/graphql/data/fpt/schema.docs.graphql +++ b/src/graphql/data/fpt/schema.docs.graphql @@ -18292,6 +18292,11 @@ type Issue implements Assignable & Closable & Comment & Deletable & Labelable & """ last: Int + """ + Filter projects based on user role. + """ + minPermissionLevel: ProjectV2PermissionLevel = READ + """ How to order the returned projects. """ @@ -29429,6 +29434,11 @@ type Organization implements Actor & AnnouncementBanner & MemberStatusable & Nod """ last: Int + """ + Filter projects based on user role. + """ + minPermissionLevel: ProjectV2PermissionLevel = READ + """ How to order the returned projects. """ @@ -35004,6 +35014,11 @@ interface ProjectV2Owner { """ last: Int + """ + Filter projects based on user role. + """ + minPermissionLevel: ProjectV2PermissionLevel = READ + """ How to order the returned projects. """ @@ -35016,6 +35031,26 @@ interface ProjectV2Owner { ): ProjectV2Connection! } +""" +The possible roles of a collaborator on a project. +""" +enum ProjectV2PermissionLevel { + """ + The collaborator can view, edit, and maange the settings of the project + """ + ADMIN + + """ + The collaborator can view the project + """ + READ + + """ + The collaborator can view and edit the project + """ + WRITE +} + """ Recent projects for the owner. """ @@ -36785,6 +36820,11 @@ type PullRequest implements Assignable & Closable & Comment & Labelable & Lockab """ last: Int + """ + Filter projects based on user role. + """ + minPermissionLevel: ProjectV2PermissionLevel = READ + """ How to order the returned projects. """ @@ -45500,6 +45540,11 @@ type Repository implements Node & PackageOwner & ProjectOwner & ProjectV2Recent """ last: Int + """ + Filter projects based on user role. + """ + minPermissionLevel: ProjectV2PermissionLevel = READ + """ How to order the returned projects. """ @@ -54659,6 +54704,11 @@ type Team implements MemberStatusable & Node & Subscribable { """ last: Int + """ + Filter projects based on user role. + """ + minPermissionLevel: ProjectV2PermissionLevel = READ + """ How to order the returned projects. """ @@ -61437,6 +61487,11 @@ type User implements Actor & Node & PackageOwner & ProfileOwner & ProjectOwner & """ last: Int + """ + Filter projects based on user role. + """ + minPermissionLevel: ProjectV2PermissionLevel = READ + """ How to order the returned projects. """ diff --git a/src/graphql/data/fpt/schema.json b/src/graphql/data/fpt/schema.json index be599b4861b7..c2222d3f9b3d 100644 --- a/src/graphql/data/fpt/schema.json +++ b/src/graphql/data/fpt/schema.json @@ -28543,6 +28543,17 @@ "href": "/graphql/reference/scalars#int" } }, + { + "name": "minPermissionLevel", + "defaultValue": "READ", + "description": "Filter projects based on user role.
", + "type": { + "name": "ProjectV2PermissionLevel", + "id": "projectv2permissionlevel", + "kind": "enums", + "href": "/graphql/reference/enums#projectv2permissionlevel" + } + }, { "name": "orderBy", "description": "How to order the returned projects.
", @@ -40713,6 +40724,17 @@ "href": "/graphql/reference/scalars#int" } }, + { + "name": "minPermissionLevel", + "defaultValue": "READ", + "description": "Filter projects based on user role.
", + "type": { + "name": "ProjectV2PermissionLevel", + "id": "projectv2permissionlevel", + "kind": "enums", + "href": "/graphql/reference/enums#projectv2permissionlevel" + } + }, { "name": "orderBy", "description": "How to order the returned projects.
", @@ -50636,6 +50658,17 @@ "href": "/graphql/reference/scalars#int" } }, + { + "name": "minPermissionLevel", + "defaultValue": "READ", + "description": "Filter projects based on user role.
", + "type": { + "name": "ProjectV2PermissionLevel", + "id": "projectv2permissionlevel", + "kind": "enums", + "href": "/graphql/reference/enums#projectv2permissionlevel" + } + }, { "name": "orderBy", "description": "How to order the returned projects.
", @@ -62376,6 +62409,17 @@ "href": "/graphql/reference/scalars#int" } }, + { + "name": "minPermissionLevel", + "defaultValue": "READ", + "description": "Filter projects based on user role.
", + "type": { + "name": "ProjectV2PermissionLevel", + "id": "projectv2permissionlevel", + "kind": "enums", + "href": "/graphql/reference/enums#projectv2permissionlevel" + } + }, { "name": "orderBy", "description": "How to order the returned projects.
", @@ -70380,6 +70424,17 @@ "href": "/graphql/reference/scalars#int" } }, + { + "name": "minPermissionLevel", + "defaultValue": "READ", + "description": "Filter projects based on user role.
", + "type": { + "name": "ProjectV2PermissionLevel", + "id": "projectv2permissionlevel", + "kind": "enums", + "href": "/graphql/reference/enums#projectv2permissionlevel" + } + }, { "name": "orderBy", "description": "How to order the returned projects.
", @@ -75639,6 +75694,17 @@ "href": "/graphql/reference/scalars#int" } }, + { + "name": "minPermissionLevel", + "defaultValue": "READ", + "description": "Filter projects based on user role.
", + "type": { + "name": "ProjectV2PermissionLevel", + "id": "projectv2permissionlevel", + "kind": "enums", + "href": "/graphql/reference/enums#projectv2permissionlevel" + } + }, { "name": "orderBy", "description": "How to order the returned projects.
", @@ -80716,6 +80782,17 @@ "href": "/graphql/reference/scalars#int" } }, + { + "name": "minPermissionLevel", + "defaultValue": "READ", + "description": "Filter projects based on user role.
", + "type": { + "name": "ProjectV2PermissionLevel", + "id": "projectv2permissionlevel", + "kind": "enums", + "href": "/graphql/reference/enums#projectv2permissionlevel" + } + }, { "name": "orderBy", "description": "How to order the returned projects.
", @@ -85748,6 +85825,27 @@ } ] }, + { + "name": "ProjectV2PermissionLevel", + "kind": "enums", + "id": "projectv2permissionlevel", + "href": "/graphql/reference/enums#projectv2permissionlevel", + "description": "The possible roles of a collaborator on a project.
", + "values": [ + { + "name": "ADMIN", + "description": "The collaborator can view, edit, and maange the settings of the project.
" + }, + { + "name": "READ", + "description": "The collaborator can view the project.
" + }, + { + "name": "WRITE", + "description": "The collaborator can view and edit the project.
" + } + ] + }, { "name": "ProjectV2Roles", "kind": "enums", diff --git a/src/graphql/data/ghec/schema.docs.graphql b/src/graphql/data/ghec/schema.docs.graphql index 0f205fcc361b..db2f88f408a3 100644 --- a/src/graphql/data/ghec/schema.docs.graphql +++ b/src/graphql/data/ghec/schema.docs.graphql @@ -18292,6 +18292,11 @@ type Issue implements Assignable & Closable & Comment & Deletable & Labelable & """ last: Int + """ + Filter projects based on user role. + """ + minPermissionLevel: ProjectV2PermissionLevel = READ + """ How to order the returned projects. """ @@ -29429,6 +29434,11 @@ type Organization implements Actor & AnnouncementBanner & MemberStatusable & Nod """ last: Int + """ + Filter projects based on user role. + """ + minPermissionLevel: ProjectV2PermissionLevel = READ + """ How to order the returned projects. """ @@ -35004,6 +35014,11 @@ interface ProjectV2Owner { """ last: Int + """ + Filter projects based on user role. + """ + minPermissionLevel: ProjectV2PermissionLevel = READ + """ How to order the returned projects. """ @@ -35016,6 +35031,26 @@ interface ProjectV2Owner { ): ProjectV2Connection! } +""" +The possible roles of a collaborator on a project. +""" +enum ProjectV2PermissionLevel { + """ + The collaborator can view, edit, and maange the settings of the project + """ + ADMIN + + """ + The collaborator can view the project + """ + READ + + """ + The collaborator can view and edit the project + """ + WRITE +} + """ Recent projects for the owner. """ @@ -36785,6 +36820,11 @@ type PullRequest implements Assignable & Closable & Comment & Labelable & Lockab """ last: Int + """ + Filter projects based on user role. + """ + minPermissionLevel: ProjectV2PermissionLevel = READ + """ How to order the returned projects. """ @@ -45500,6 +45540,11 @@ type Repository implements Node & PackageOwner & ProjectOwner & ProjectV2Recent """ last: Int + """ + Filter projects based on user role. + """ + minPermissionLevel: ProjectV2PermissionLevel = READ + """ How to order the returned projects. """ @@ -54659,6 +54704,11 @@ type Team implements MemberStatusable & Node & Subscribable { """ last: Int + """ + Filter projects based on user role. + """ + minPermissionLevel: ProjectV2PermissionLevel = READ + """ How to order the returned projects. """ @@ -61437,6 +61487,11 @@ type User implements Actor & Node & PackageOwner & ProfileOwner & ProjectOwner & """ last: Int + """ + Filter projects based on user role. + """ + minPermissionLevel: ProjectV2PermissionLevel = READ + """ How to order the returned projects. """ diff --git a/src/graphql/data/ghec/schema.json b/src/graphql/data/ghec/schema.json index be599b4861b7..c2222d3f9b3d 100644 --- a/src/graphql/data/ghec/schema.json +++ b/src/graphql/data/ghec/schema.json @@ -28543,6 +28543,17 @@ "href": "/graphql/reference/scalars#int" } }, + { + "name": "minPermissionLevel", + "defaultValue": "READ", + "description": "Filter projects based on user role.
", + "type": { + "name": "ProjectV2PermissionLevel", + "id": "projectv2permissionlevel", + "kind": "enums", + "href": "/graphql/reference/enums#projectv2permissionlevel" + } + }, { "name": "orderBy", "description": "How to order the returned projects.
", @@ -40713,6 +40724,17 @@ "href": "/graphql/reference/scalars#int" } }, + { + "name": "minPermissionLevel", + "defaultValue": "READ", + "description": "Filter projects based on user role.
", + "type": { + "name": "ProjectV2PermissionLevel", + "id": "projectv2permissionlevel", + "kind": "enums", + "href": "/graphql/reference/enums#projectv2permissionlevel" + } + }, { "name": "orderBy", "description": "How to order the returned projects.
", @@ -50636,6 +50658,17 @@ "href": "/graphql/reference/scalars#int" } }, + { + "name": "minPermissionLevel", + "defaultValue": "READ", + "description": "Filter projects based on user role.
", + "type": { + "name": "ProjectV2PermissionLevel", + "id": "projectv2permissionlevel", + "kind": "enums", + "href": "/graphql/reference/enums#projectv2permissionlevel" + } + }, { "name": "orderBy", "description": "How to order the returned projects.
", @@ -62376,6 +62409,17 @@ "href": "/graphql/reference/scalars#int" } }, + { + "name": "minPermissionLevel", + "defaultValue": "READ", + "description": "Filter projects based on user role.
", + "type": { + "name": "ProjectV2PermissionLevel", + "id": "projectv2permissionlevel", + "kind": "enums", + "href": "/graphql/reference/enums#projectv2permissionlevel" + } + }, { "name": "orderBy", "description": "How to order the returned projects.
", @@ -70380,6 +70424,17 @@ "href": "/graphql/reference/scalars#int" } }, + { + "name": "minPermissionLevel", + "defaultValue": "READ", + "description": "Filter projects based on user role.
", + "type": { + "name": "ProjectV2PermissionLevel", + "id": "projectv2permissionlevel", + "kind": "enums", + "href": "/graphql/reference/enums#projectv2permissionlevel" + } + }, { "name": "orderBy", "description": "How to order the returned projects.
", @@ -75639,6 +75694,17 @@ "href": "/graphql/reference/scalars#int" } }, + { + "name": "minPermissionLevel", + "defaultValue": "READ", + "description": "Filter projects based on user role.
", + "type": { + "name": "ProjectV2PermissionLevel", + "id": "projectv2permissionlevel", + "kind": "enums", + "href": "/graphql/reference/enums#projectv2permissionlevel" + } + }, { "name": "orderBy", "description": "How to order the returned projects.
", @@ -80716,6 +80782,17 @@ "href": "/graphql/reference/scalars#int" } }, + { + "name": "minPermissionLevel", + "defaultValue": "READ", + "description": "Filter projects based on user role.
", + "type": { + "name": "ProjectV2PermissionLevel", + "id": "projectv2permissionlevel", + "kind": "enums", + "href": "/graphql/reference/enums#projectv2permissionlevel" + } + }, { "name": "orderBy", "description": "How to order the returned projects.
", @@ -85748,6 +85825,27 @@ } ] }, + { + "name": "ProjectV2PermissionLevel", + "kind": "enums", + "id": "projectv2permissionlevel", + "href": "/graphql/reference/enums#projectv2permissionlevel", + "description": "The possible roles of a collaborator on a project.
", + "values": [ + { + "name": "ADMIN", + "description": "The collaborator can view, edit, and maange the settings of the project.
" + }, + { + "name": "READ", + "description": "The collaborator can view the project.
" + }, + { + "name": "WRITE", + "description": "The collaborator can view and edit the project.
" + } + ] + }, { "name": "ProjectV2Roles", "kind": "enums",