From f26135bc7163f9804413f8206a46c41d3b1ee283 Mon Sep 17 00:00:00 2001 From: Istvan Soos Date: Fri, 24 Oct 2025 10:31:33 +0200 Subject: [PATCH] Enable manual publishing settings on package admin UI --- CHANGELOG.md | 1 + app/lib/frontend/handlers/experimental.dart | 3 -- .../templates/views/pkg/admin_page.dart | 9 ++---- app/test/frontend/golden/pkg_admin_page.html | 29 +++++++++++++++++++ .../test/pkg_admin_page_test.dart | 1 - 5 files changed, 32 insertions(+), 11 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index f1c2795dc4..02656e359c 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,7 @@ Important changes to data models, configuration, and migrations between each AppEngine version, listed here to ease deployment and troubleshooting. ## Next Release (replace with git tag when deployed) + * Enabled manual publishing settings on package admin UI. ## `20251023t081900-all` * Bump runtimeVersion to `2025.10.22`. diff --git a/app/lib/frontend/handlers/experimental.dart b/app/lib/frontend/handlers/experimental.dart index c99f4483e2..d745713e2b 100644 --- a/app/lib/frontend/handlers/experimental.dart +++ b/app/lib/frontend/handlers/experimental.dart @@ -14,7 +14,6 @@ const _publicFlags = { final _allFlags = { 'dark-as-default', - 'manual-publishing', ..._publicFlags.map((x) => x.name), }; @@ -89,8 +88,6 @@ class ExperimentalFlags { bool get isDarkModeDefault => isEnabled('dark-as-default'); - bool get isManualPublishingConfigAvailable => isEnabled('manual-publishing'); - String encodedAsCookie() => _enabled.join(':'); @override diff --git a/app/lib/frontend/templates/views/pkg/admin_page.dart b/app/lib/frontend/templates/views/pkg/admin_page.dart index 5eb1324272..f000585f6b 100644 --- a/app/lib/frontend/templates/views/pkg/admin_page.dart +++ b/app/lib/frontend/templates/views/pkg/admin_page.dart @@ -3,7 +3,6 @@ // BSD-style license that can be found in the LICENSE file. import 'package:_pub_shared/data/package_api.dart'; -import 'package:pub_dev/frontend/request_context.dart'; import '../../../../account/models.dart'; import '../../../../package/models.dart'; @@ -36,10 +35,7 @@ d.Node packageAdminPageNode({ 'Publishing', href: '#publishing', children: [ - if (requestContext - .experimentalFlags - .isManualPublishingConfigAvailable) - TocNode('Manual publishing', href: '#manual-publishing'), + TocNode('Manual publishing', href: '#manual-publishing'), TocNode( 'Automated publishing', href: '#automated-publishing', @@ -239,8 +235,7 @@ d.Node packageAdminPageNode({ ], d.a(name: 'publishing'), d.h2(text: 'Publishing'), - if (requestContext.experimentalFlags.isManualPublishingConfigAvailable) - _manualPublishing(package), + _manualPublishing(package), _automatedPublishing(package), d.a(name: 'version-retraction'), d.h2(text: 'Version retraction'), diff --git a/app/test/frontend/golden/pkg_admin_page.html b/app/test/frontend/golden/pkg_admin_page.html index d8cac0068b..52fc7f5e49 100644 --- a/app/test/frontend/golden/pkg_admin_page.html +++ b/app/test/frontend/golden/pkg_admin_page.html @@ -264,6 +264,9 @@

Metadata

+ @@ -409,6 +412,32 @@

Unlisted

Publishing

+ +

Manual publishing

+

+ Manual publishing, using personal credentials for the + pub + client ( + pub login + ) . +

+

Disable to prevent accidental publication from the command line.

+

It is recommended to disable when automated publishing is enabled.

+
+
+
+ +
+ + + +
+
+
+
+ +
+

Automated publishing

diff --git a/pkg/pub_integration/test/pkg_admin_page_test.dart b/pkg/pub_integration/test/pkg_admin_page_test.dart index 0f7ca1af4e..8c0356ecef 100644 --- a/pkg/pub_integration/test/pkg_admin_page_test.dart +++ b/pkg/pub_integration/test/pkg_admin_page_test.dart @@ -81,7 +81,6 @@ void main() { // disable manual publishing await user.withBrowserPage((page) async { - await page.gotoOrigin('/experimental?manual-publishing=1'); await page.gotoOrigin('/packages/test_pkg/admin'); await page.waitAndClick('#-pkg-admin-manual-publishing-enabled');