diff --git a/composer.lock b/composer.lock
index 9d6494e36c605f586104f7c41643fdfe00a32119..d02db1af90f332cea8c48c414fd9835b9847cfb0 100644
--- a/composer.lock
+++ b/composer.lock
@@ -491,7 +491,7 @@
         },
         {
             "name": "drupal/core",
-            "version": "10.2.x-dev",
+            "version": "10.2.0-rc1",
             "dist": {
                 "type": "path",
                 "url": "core",
@@ -651,7 +651,7 @@
         },
         {
             "name": "drupal/core-project-message",
-            "version": "10.2.x-dev",
+            "version": "10.2.0-rc1",
             "dist": {
                 "type": "path",
                 "url": "composer/Plugin/ProjectMessage",
@@ -684,7 +684,7 @@
         },
         {
             "name": "drupal/core-vendor-hardening",
-            "version": "10.2.x-dev",
+            "version": "10.2.0-rc1",
             "dist": {
                 "type": "path",
                 "url": "composer/Plugin/VendorHardening",
@@ -9603,11 +9603,7 @@
     ],
     "aliases": [],
     "minimum-stability": "dev",
-    "stability-flags": {
-        "drupal/core": 20,
-        "drupal/core-project-message": 20,
-        "drupal/core-vendor-hardening": 20
-    },
+    "stability-flags": [],
     "prefer-stable": true,
     "prefer-lowest": false,
     "platform": [],
diff --git a/composer/Metapackage/CoreRecommended/composer.json b/composer/Metapackage/CoreRecommended/composer.json
index 73125ae794a63b2fd67c8dea9bfb81beba4d7821..169dae42a85fa6152e28fbc6e8976aff43c30535 100644
--- a/composer/Metapackage/CoreRecommended/composer.json
+++ b/composer/Metapackage/CoreRecommended/composer.json
@@ -7,7 +7,7 @@
         "webflo/drupal-core-strict": "*"
     },
     "require": {
-        "drupal/core": "10.2.x-dev",
+        "drupal/core": "10.2.0-rc1",
         "asm89/stack-cors": "~v2.2.0",
         "composer/semver": "~3.4.0",
         "doctrine/annotations": "~1.14.3",
diff --git a/composer/Metapackage/PinnedDevDependencies/composer.json b/composer/Metapackage/PinnedDevDependencies/composer.json
index 4c35442426879c8d713294cf7917639e359434c4..c4d7422f245f50384a205a5852aa20c9d0740afe 100644
--- a/composer/Metapackage/PinnedDevDependencies/composer.json
+++ b/composer/Metapackage/PinnedDevDependencies/composer.json
@@ -7,7 +7,7 @@
         "webflo/drupal-core-require-dev": "*"
     },
     "require": {
-        "drupal/core": "10.2.x-dev",
+        "drupal/core": "10.2.0-rc1",
         "behat/mink": "v1.10.0",
         "behat/mink-browserkit-driver": "v2.1.0",
         "behat/mink-selenium2-driver": "v1.6.0",
diff --git a/composer/Template/LegacyProject/composer.json b/composer/Template/LegacyProject/composer.json
index a8fceccd0dd25590ff8cd74889af97fb1b6d142b..11ae560222e14c2f9ba267b404ba1a13163c4196 100644
--- a/composer/Template/LegacyProject/composer.json
+++ b/composer/Template/LegacyProject/composer.json
@@ -27,7 +27,7 @@
     "conflict": {
         "drupal/drupal": "*"
     },
-    "minimum-stability": "dev",
+    "minimum-stability": "RC",
     "prefer-stable": true,
     "config": {
         "allow-plugins": {
diff --git a/composer/Template/RecommendedProject/composer.json b/composer/Template/RecommendedProject/composer.json
index 56d98de870fd8497c08158fe5339ac3cb470288b..61f1ad1ce19c19d41c4e5bd96f445243c32dce12 100644
--- a/composer/Template/RecommendedProject/composer.json
+++ b/composer/Template/RecommendedProject/composer.json
@@ -26,7 +26,7 @@
     "conflict": {
         "drupal/drupal": "*"
     },
-    "minimum-stability": "dev",
+    "minimum-stability": "RC",
     "prefer-stable": true,
     "config": {
         "allow-plugins": {
diff --git a/core/lib/Drupal.php b/core/lib/Drupal.php
index 9352af5d04343739fb5724ff477c703733f4bd60..2433b49dc111f01a1f6e973cd5379d9cca688297 100644
--- a/core/lib/Drupal.php
+++ b/core/lib/Drupal.php
@@ -75,7 +75,7 @@ class Drupal {
   /**
    * The current system version.
    */
-  const VERSION = '10.2.0-dev';
+  const VERSION = '10.2.0-rc1';
 
   /**
    * Core API compatibility.
diff --git a/core/lib/Drupal/Component/Annotation/composer.json b/core/lib/Drupal/Component/Annotation/composer.json
index a755e8f048675147af091601089c74e521f38ecf..7a885fbcf6dfd3889454f99110154d72dfc04f1d 100644
--- a/core/lib/Drupal/Component/Annotation/composer.json
+++ b/core/lib/Drupal/Component/Annotation/composer.json
@@ -9,9 +9,9 @@
     "require": {
         "php": ">=8.1.0",
         "doctrine/annotations": "^1.14",
-        "drupal/core-file-cache": "10.2.x-dev",
-        "drupal/core-plugin": "10.2.x-dev",
-        "drupal/core-utility": "10.2.x-dev"
+        "drupal/core-file-cache": "10.2.0-rc1",
+        "drupal/core-plugin": "10.2.0-rc1",
+        "drupal/core-utility": "10.2.0-rc1"
     },
     "autoload": {
         "psr-4": {
@@ -23,5 +23,5 @@
             "This file was partially generated automatically. See: https://www.drupal.org/node/3293830"
         ]
     },
-    "minimum-stability": "dev"
+    "minimum-stability": "RC"
 }
diff --git a/core/lib/Drupal/Component/Datetime/composer.json b/core/lib/Drupal/Component/Datetime/composer.json
index 7a16ab9e344f7f0cc2dc7141653a47b87f66e325..b6fd28cfde8972491950262ad202154430998287 100644
--- a/core/lib/Drupal/Component/Datetime/composer.json
+++ b/core/lib/Drupal/Component/Datetime/composer.json
@@ -8,7 +8,7 @@
     "license": "GPL-2.0-or-later",
     "require": {
         "php": ">=8.1.0",
-        "drupal/core-utility": "10.2.x-dev"
+        "drupal/core-utility": "10.2.0-rc1"
     },
     "autoload": {
         "psr-4": {
@@ -20,5 +20,5 @@
             "This file was partially generated automatically. See: https://www.drupal.org/node/3293830"
         ]
     },
-    "minimum-stability": "dev"
+    "minimum-stability": "RC"
 }
diff --git a/core/lib/Drupal/Component/Discovery/composer.json b/core/lib/Drupal/Component/Discovery/composer.json
index c0800a842b7c169009507706838701ccc59f9985..9b7c949737ca7531c023601b4d9fb8877083a5f7 100644
--- a/core/lib/Drupal/Component/Discovery/composer.json
+++ b/core/lib/Drupal/Component/Discovery/composer.json
@@ -8,8 +8,8 @@
     "license": "GPL-2.0-or-later",
     "require": {
         "php": ">=8.1.0",
-        "drupal/core-file-cache": "10.2.x-dev",
-        "drupal/core-serialization": "10.2.x-dev"
+        "drupal/core-file-cache": "10.2.0-rc1",
+        "drupal/core-serialization": "10.2.0-rc1"
     },
     "autoload": {
         "psr-4": {
@@ -21,5 +21,5 @@
             "This file was partially generated automatically. See: https://www.drupal.org/node/3293830"
         ]
     },
-    "minimum-stability": "dev"
+    "minimum-stability": "RC"
 }
diff --git a/core/lib/Drupal/Component/FrontMatter/composer.json b/core/lib/Drupal/Component/FrontMatter/composer.json
index ac246ae49b1570ae70cf22a6eb881260fae04bea..02e424fb9343bc9c3646d22ec4c592e451895ada 100644
--- a/core/lib/Drupal/Component/FrontMatter/composer.json
+++ b/core/lib/Drupal/Component/FrontMatter/composer.json
@@ -8,7 +8,7 @@
     "license": "GPL-2.0-or-later",
     "require": {
         "php": ">=8.1.0",
-        "drupal/core-serialization": "10.2.x-dev"
+        "drupal/core-serialization": "10.2.0-rc1"
     },
     "autoload": {
         "psr-4": {
@@ -20,5 +20,5 @@
             "This file was partially generated automatically. See: https://www.drupal.org/node/3293830"
         ]
     },
-    "minimum-stability": "dev"
+    "minimum-stability": "RC"
 }
diff --git a/core/lib/Drupal/Component/Gettext/composer.json b/core/lib/Drupal/Component/Gettext/composer.json
index 8893295f5fb00a6a3d60cb2c975e9c188020aa4b..ae5164ffbd2dda76a994b0146fe9cb1fc2ac8230 100644
--- a/core/lib/Drupal/Component/Gettext/composer.json
+++ b/core/lib/Drupal/Component/Gettext/composer.json
@@ -9,7 +9,7 @@
     },
     "require": {
         "php": ">=8.1.0",
-        "drupal/core-render": "10.2.x-dev"
+        "drupal/core-render": "10.2.0-rc1"
     },
     "autoload": {
         "psr-4": {
@@ -21,5 +21,5 @@
             "This file was partially generated automatically. See: https://www.drupal.org/node/3293830"
         ]
     },
-    "minimum-stability": "dev"
+    "minimum-stability": "RC"
 }
diff --git a/core/lib/Drupal/Component/PhpStorage/composer.json b/core/lib/Drupal/Component/PhpStorage/composer.json
index 29466cafd95ca577eaa8f4abd069b221e047d930..9f7b4bd242d460ce63befcbceec8f614b864da87 100644
--- a/core/lib/Drupal/Component/PhpStorage/composer.json
+++ b/core/lib/Drupal/Component/PhpStorage/composer.json
@@ -8,7 +8,7 @@
     "license": "GPL-2.0-or-later",
     "require": {
         "php": ">=8.1.0",
-        "drupal/core-file-security": "10.2.x-dev"
+        "drupal/core-file-security": "10.2.0-rc1"
     },
     "autoload": {
         "psr-4": {
@@ -20,5 +20,5 @@
             "This file was partially generated automatically. See: https://www.drupal.org/node/3293830"
         ]
     },
-    "minimum-stability": "dev"
+    "minimum-stability": "RC"
 }
diff --git a/core/lib/Drupal/Component/Render/composer.json b/core/lib/Drupal/Component/Render/composer.json
index fd01afa0b255d2ece199d543df4b0ddbacdda904..cdf1194ccb338d4104aef1bc53456f69bd94bf0c 100644
--- a/core/lib/Drupal/Component/Render/composer.json
+++ b/core/lib/Drupal/Component/Render/composer.json
@@ -8,7 +8,7 @@
     "license": "GPL-2.0-or-later",
     "require": {
         "php": ">=8.1.0",
-        "drupal/core-utility": "10.2.x-dev"
+        "drupal/core-utility": "10.2.0-rc1"
     },
     "autoload": {
         "psr-4": {
@@ -20,5 +20,5 @@
             "This file was partially generated automatically. See: https://www.drupal.org/node/3293830"
         ]
     },
-    "minimum-stability": "dev"
+    "minimum-stability": "RC"
 }