From b2e4dc8316eea7918ba9ef26992aa0889164a6e9 Mon Sep 17 00:00:00 2001 From: Sophie <29382425+sophietheking@users.noreply.github.com> Date: Wed, 12 Mar 2025 17:00:07 +0100 Subject: [PATCH 1/3] Removes feature from GHES 3.16 release notes (#54796) Co-authored-by: Isaac Brown <101839405+isaacmbrown@users.noreply.github.com> --- data/release-notes/enterprise-server/3-16/0.yml | 7 ------- 1 file changed, 7 deletions(-) diff --git a/data/release-notes/enterprise-server/3-16/0.yml b/data/release-notes/enterprise-server/3-16/0.yml index 48af30e51905..533749d973d4 100644 --- a/data/release-notes/enterprise-server/3-16/0.yml +++ b/data/release-notes/enterprise-server/3-16/0.yml @@ -162,13 +162,6 @@ sections: - | Enterprise administrators can better monitor the health of the appliance with optimized dashboards that provide concise, actionable metrics. See [AUTOTITLE](/admin/monitoring-and-managing-your-instance/monitoring-your-instance/about-the-monitor-dashboards). - - heading: Issues - notes: - # https://github.com/github/releases/issues/4033 - # https://github.com/github/releases/issues/3121 - - | - Issues and projects feature highly-requested enhancements including sub-issues, issue types, and advanced search for issues. These feature enhancements make it easy to break down work, visualize progress, categorize and find just the right issue in GitHub. See the [GitHub blog post](https://github.blog/changelog/2024-10-01-evolving-github-issues-public-beta/). - - heading: GitHub Mobile notes: # https://github.com/github/releases/issues/4456 From edaf1d798be484fcd726ebdcc47e2a3d66e4f27e Mon Sep 17 00:00:00 2001 From: Greg Mondello <72952982+gmondello@users.noreply.github.com> Date: Wed, 12 Mar 2025 12:14:34 -0500 Subject: [PATCH 2/3] add section about budget scopes (#54575) Co-authored-by: Rachael Rose Renk <91027132+rachaelrenk@users.noreply.github.com> --- .../preventing-overspending.md | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/content/billing/using-the-new-billing-platform/preventing-overspending.md b/content/billing/using-the-new-billing-platform/preventing-overspending.md index 86fe38a775a4..72649376f4c9 100644 --- a/content/billing/using-the-new-billing-platform/preventing-overspending.md +++ b/content/billing/using-the-new-billing-platform/preventing-overspending.md @@ -44,6 +44,21 @@ You can set spending limits and receive alerts when your usage reaches 75%, 90%, You can manage budgets for your {% data variables.enterprise.enterprise_or_org %} by setting a budget, viewing budgets, and editing or deleting budgets. +{% ifversion ghec %} + +### Budget scopes + +You can create a budget for a given {% data variables.product.github %} product and specific scope: + +* `Enterprise` scoped budgets track spending for all organizations, repositories, and cost centers in the enterprise +* `Organization` scoped budgets track spending for a single organization, repositories, and cost centers in the organization +* `Repository` scoped budgets track spending for a single repository +* `Cost center` scoped budgets track spending for a single cost center + +Usage is applied towards all applicable budgets. If any applicable budget with "Stop usage when budget limit is reached" enabled becomes exhausted, additional usage will be stopped. + +{% endif %} + ### Viewing budgets If you are an {% data variables.enterprise.enterprise_or_org %} owner or billing manager, your {% data variables.enterprise.enterprise_or_org %}'s budget will be listed at the top of the "Budgets and alerts" page{% ifversion ghec %}, followed by the budgets for your organizations and cost centers. As an organization owner, you will be able to view the budgets for your organizations, repositories, and cost centers{% endif %}. From 8a3948d8177688ff5fb15a55fb4c83c096775804 Mon Sep 17 00:00:00 2001 From: Hector Alfaro Date: Wed, 12 Mar 2025 13:59:29 -0400 Subject: [PATCH 3/3] =?UTF-8?q?=F0=9F=8D=9E=20Add=20breadcrumbs=20to=20`/a?= =?UTF-8?q?rticle/meta`=20endpoint=20(#54779)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/article-api/middleware/article-pageinfo.ts | 10 +++++++++- src/versions/middleware/short-versions.ts | 4 ++-- 2 files changed, 11 insertions(+), 3 deletions(-) diff --git a/src/article-api/middleware/article-pageinfo.ts b/src/article-api/middleware/article-pageinfo.ts index cb500b211f7e..690dda37f9e9 100644 --- a/src/article-api/middleware/article-pageinfo.ts +++ b/src/article-api/middleware/article-pageinfo.ts @@ -5,6 +5,8 @@ import type { ExtendedRequest, Page, Context, Permalink } from '@/types' import shortVersions from '@/versions/middleware/short-versions.js' import contextualize from '@/frame/middleware/context/context' import features from '@/versions/middleware/features.js' +import breadcrumbs from '@/frame/middleware/context/breadcrumbs.js' +import currentProductTree from '@/frame/middleware/context/current-product-tree.js' import { readCompressedJsonFile } from '@/frame/lib/read-json-file.js' // If you have pre-computed page info into a JSON file on disk, this is @@ -29,6 +31,7 @@ export async function getPageInfo(page: Page, pathname: string) { await contextualize(renderingReq as ExtendedRequest, res as Response, next) await shortVersions(renderingReq as ExtendedRequest, res as Response, next) renderingReq.context.page = page + await currentProductTree(renderingReq as ExtendedRequest, res as Response, next) features(renderingReq as ExtendedRequest, res as Response, next) const context = renderingReq.context @@ -50,7 +53,12 @@ export async function getPageInfo(page: Page, pathname: string) { } const product = productPage ? await getProductPageInfo(productPage, context) : '' - return { title, intro, product } + // Call breadcrumbs middleware to populate renderingReq.context.breadcrumbs + breadcrumbs(renderingReq as ExtendedRequest, res as Response, next) + + const { breadcrumbs: pageBreadcrumbs } = renderingReq.context + + return { title, intro, product, breadcrumbs: pageBreadcrumbs } } const _productPageCache: { diff --git a/src/versions/middleware/short-versions.ts b/src/versions/middleware/short-versions.ts index 2dfbfff09a2f..565b486538a4 100644 --- a/src/versions/middleware/short-versions.ts +++ b/src/versions/middleware/short-versions.ts @@ -9,11 +9,11 @@ import type { ExtendedRequest } from '@/types.js' import type { Response, NextFunction } from 'express' -export default function shortVersions( +export default async function shortVersions( req: ExtendedRequest, res: Response | null, next: NextFunction, -): void { +): Promise { if (!req.context) throw new Error('No context on request') const { currentVersion, currentVersionObj } = req.context if (!currentVersionObj) {