diff --git a/lib/modules/versioning/cargo/index.spec.ts b/lib/modules/versioning/cargo/index.spec.ts
index beb92118f248e02ef861391f5093fb8d3cc2a698..c9cc7d47f098a816404c8a57f9f92917b5cbe082 100644
--- a/lib/modules/versioning/cargo/index.spec.ts
+++ b/lib/modules/versioning/cargo/index.spec.ts
@@ -111,11 +111,11 @@ describe('modules/versioning/cargo/index', () => {
     ${'  =   1.0.0'}         | ${'bump'}     | ${'1.0.0'}     | ${'1.1.0'}      | ${'=1.1.0'}
     ${'=    1.0.0'}          | ${'bump'}     | ${'1.0.0'}     | ${'1.1.0'}      | ${'= 1.1.0'}
     ${'1.0.0'}               | ${'bump'}     | ${'1.0.0'}     | ${'1.1.0'}      | ${'1.1.0'}
-    ${'^1.0'}                | ${'bump'}     | ${'1.0.0'}     | ${'1.0.7'}      | ${'^1.0'}
+    ${'^1.0'}                | ${'bump'}     | ${'1.0.0'}     | ${'1.0.7'}      | ${'^1.0.7'}
     ${'^1.0.0'}              | ${'replace'}  | ${'1.0.0'}     | ${'2.0.7'}      | ${'^2.0.0'}
     ${'1.0.0'}               | ${'replace'}  | ${'1.0.0'}     | ${'2.0.7'}      | ${'2.0.0'}
-    ${'^1'}                  | ${'bump'}     | ${'1.0.0'}     | ${'2.1.7'}      | ${'^2'}
-    ${'~1'}                  | ${'bump'}     | ${'1.0.0'}     | ${'1.1.7'}      | ${'~1'}
+    ${'^1'}                  | ${'bump'}     | ${'1.0.0'}     | ${'2.1.7'}      | ${'^2.1.7'}
+    ${'~1'}                  | ${'bump'}     | ${'1.0.0'}     | ${'1.1.7'}      | ${'~1.1.7'}
     ${'5'}                   | ${'bump'}     | ${'5.0.0'}     | ${'5.1.7'}      | ${'5'}
     ${'5'}                   | ${'bump'}     | ${'5.0.0'}     | ${'6.1.7'}      | ${'6'}
     ${'5.0'}                 | ${'bump'}     | ${'5.0.0'}     | ${'5.0.7'}      | ${'5.0'}
diff --git a/lib/modules/versioning/composer/index.spec.ts b/lib/modules/versioning/composer/index.spec.ts
index 21b03a642a03a6fc6f01a83b182c869b22d83274..8f4e30b9283f9230e23350ad3840020c3b2d6610 100644
--- a/lib/modules/versioning/composer/index.spec.ts
+++ b/lib/modules/versioning/composer/index.spec.ts
@@ -147,7 +147,7 @@ describe('modules/versioning/composer/index', () => {
     ${'~1.0 || >=3.0 <=4.0'}  | ${'widen'}           | ${'2.9.0'}        | ${'5.0.0'}       | ${'~1.0 || >=3.0 <=5.0'}
     ${'+4.0.0'}               | ${'replace'}         | ${'4.0.0'}        | ${'4.2.0'}       | ${'4.2.0'}
     ${'v4.0.0'}               | ${'replace'}         | ${'4.0.0'}        | ${'4.2.0'}       | ${'v4.2.0'}
-    ${'^v1.0'}                | ${'bump'}            | ${'1.0.0'}        | ${'1.1.7'}       | ${'^v1.1'}
+    ${'^v1.0'}                | ${'bump'}            | ${'1.0.0'}        | ${'1.1.7'}       | ${'^v1.1.7'}
     ${'^v1.0@beta'}           | ${'bump'}            | ${'1.0.0-beta3'}  | ${'1.0.0-beta5'} | ${'^v1.0.0-beta5@beta'}
     ${'^v1.0@beta'}           | ${'replace'}         | ${'1.0.0-beta3'}  | ${'2.0.0-beta5'} | ${'^v2.0.0-beta5@beta'}
     ${'^4.0@alpha'}           | ${'replace'}         | ${'4.0.0-alpha1'} | ${'4.0.0-beta5'} | ${'^4.0.0-beta5@alpha'}
diff --git a/lib/modules/versioning/helm/index.spec.ts b/lib/modules/versioning/helm/index.spec.ts
index 58584c94858622b7ff66713b9d52631b1615e067..1ef08aa9b16cfe50b740e40ac037797165b56987 100644
--- a/lib/modules/versioning/helm/index.spec.ts
+++ b/lib/modules/versioning/helm/index.spec.ts
@@ -34,13 +34,13 @@ describe('modules/versioning/helm/index', () => {
   test.each`
     currentValue            | rangeStrategy | currentVersion | newVersion              | expected
     ${'=1.0.0'}             | ${'bump'}     | ${'1.0.0'}     | ${'1.1.0'}              | ${'=1.1.0'}
-    ${'^1.0'}               | ${'bump'}     | ${'1.0.0'}     | ${'1.0.7'}              | ${'^1.0'}
+    ${'^1.0'}               | ${'bump'}     | ${'1.0.0'}     | ${'1.0.7'}              | ${'^1.0.7'}
     ${'^1'}                 | ${'bump'}     | ${'1.0.0'}     | ${'1.0.7-prerelease.1'} | ${'^1.0.7-prerelease.1'}
-    ${'^1.0'}               | ${'bump'}     | ${'1.0.0'}     | ${'1.1.7'}              | ${'^1.1'}
-    ${'~1.0'}               | ${'bump'}     | ${'1.0.0'}     | ${'1.1.7'}              | ${'~1.1'}
+    ${'^1.0'}               | ${'bump'}     | ${'1.0.0'}     | ${'1.1.7'}              | ${'^1.1.7'}
+    ${'~1.0'}               | ${'bump'}     | ${'1.0.0'}     | ${'1.1.7'}              | ${'~1.1.7'}
     ${'~1.0'}               | ${'bump'}     | ${'1.0.0'}     | ${'1.0.7-prerelease.1'} | ${'~1.0.7-prerelease.1'}
-    ${'^1'}                 | ${'bump'}     | ${'1.0.0'}     | ${'2.1.7'}              | ${'^2'}
-    ${'~1'}                 | ${'bump'}     | ${'1.0.0'}     | ${'1.1.7'}              | ${'~1'}
+    ${'^1'}                 | ${'bump'}     | ${'1.0.0'}     | ${'2.1.7'}              | ${'^2.1.7'}
+    ${'~1'}                 | ${'bump'}     | ${'1.0.0'}     | ${'1.1.7'}              | ${'~1.1.7'}
     ${'5'}                  | ${'bump'}     | ${'5.0.0'}     | ${'5.1.7'}              | ${'5'}
     ${'5'}                  | ${'bump'}     | ${'5.0.0'}     | ${'6.1.7'}              | ${'6'}
     ${'5.0'}                | ${'bump'}     | ${'5.0.0'}     | ${'5.0.7'}              | ${'5.0'}
diff --git a/lib/modules/versioning/npm/index.spec.ts b/lib/modules/versioning/npm/index.spec.ts
index 8330064d653422bdc1433f521e1bd4f1fac31bad..20dedb0f82616cc6946dd117c43bf40982af84f2 100644
--- a/lib/modules/versioning/npm/index.spec.ts
+++ b/lib/modules/versioning/npm/index.spec.ts
@@ -58,14 +58,14 @@ describe('modules/versioning/npm/index', () => {
   test.each`
     currentValue            | rangeStrategy        | currentVersion   | newVersion              | expected
     ${'=1.0.0'}             | ${'bump'}            | ${'1.0.0'}       | ${'1.1.0'}              | ${'=1.1.0'}
-    ${'^1.0'}               | ${'bump'}            | ${'1.0.0'}       | ${'1.0.7'}              | ${'^1.0'}
+    ${'^1.0'}               | ${'bump'}            | ${'1.0.0'}       | ${'1.0.7'}              | ${'^1.0.7'}
     ${'^1'}                 | ${'bump'}            | ${'1.0.0'}       | ${'1.0.7-prerelease.1'} | ${'^1.0.7-prerelease.1'}
     ${'~> 1.0.0'}           | ${'replace'}         | ${'1.0.0'}       | ${'1.1.7'}              | ${'~> 1.1.0'}
-    ${'^1.0'}               | ${'bump'}            | ${'1.0.0'}       | ${'1.1.7'}              | ${'^1.1'}
-    ${'~1.0'}               | ${'bump'}            | ${'1.0.0'}       | ${'1.1.7'}              | ${'~1.1'}
+    ${'^1.0'}               | ${'bump'}            | ${'1.0.0'}       | ${'1.1.7'}              | ${'^1.1.7'}
+    ${'~1.0'}               | ${'bump'}            | ${'1.0.0'}       | ${'1.1.7'}              | ${'~1.1.7'}
     ${'~1.0'}               | ${'bump'}            | ${'1.0.0'}       | ${'1.0.7-prerelease.1'} | ${'~1.0.7-prerelease.1'}
-    ${'^1'}                 | ${'bump'}            | ${'1.0.0'}       | ${'2.1.7'}              | ${'^2'}
-    ${'~1'}                 | ${'bump'}            | ${'1.0.0'}       | ${'1.1.7'}              | ${'~1'}
+    ${'^1'}                 | ${'bump'}            | ${'1.0.0'}       | ${'2.1.7'}              | ${'^2.1.7'}
+    ${'~1'}                 | ${'bump'}            | ${'1.0.0'}       | ${'1.1.7'}              | ${'~1.1.7'}
     ${'5'}                  | ${'bump'}            | ${'5.0.0'}       | ${'5.1.7'}              | ${'5'}
     ${'5'}                  | ${'bump'}            | ${'5.0.0'}       | ${'6.1.7'}              | ${'6'}
     ${'5.0'}                | ${'bump'}            | ${'5.0.0'}       | ${'5.0.7'}              | ${'5.0'}
diff --git a/lib/modules/versioning/npm/range.ts b/lib/modules/versioning/npm/range.ts
index 37140e3d9cce2fa19f8b5ef76c4157eb0e004fcb..f8c37b0157bb6574a9f916efef8cd2e6df4b274c 100644
--- a/lib/modules/versioning/npm/range.ts
+++ b/lib/modules/versioning/npm/range.ts
@@ -136,33 +136,9 @@ export function getNewValue({
         });
       }
       if (element.operator === '^') {
-        const split = currentValue.split('.');
-        if (suffix.length) {
-          return `^${newVersion}`;
-        }
-        if (split.length === 1) {
-          // ^4
-          return `^${toVersionMajor}`;
-        }
-        if (split.length === 2) {
-          // ^4.1
-          return `^${toVersionMajor}.${toVersionMinor}`;
-        }
         return `^${newVersion}`;
       }
       if (element.operator === '~') {
-        const split = currentValue.split('.');
-        if (suffix.length) {
-          return `~${newVersion}`;
-        }
-        if (split.length === 1) {
-          // ~4
-          return `~${toVersionMajor}`;
-        }
-        if (split.length === 2) {
-          // ~4.1
-          return `~${toVersionMajor}.${toVersionMinor}`;
-        }
         return `~${newVersion}`;
       }
       if (element.operator === '=') {
diff --git a/lib/modules/versioning/poetry/index.spec.ts b/lib/modules/versioning/poetry/index.spec.ts
index 7d919a24c6cbb29cb6cdf77d22c3a860cf9f3f38..d0c69c2c3e5417aa8f58749430f51745c02e1e1f 100644
--- a/lib/modules/versioning/poetry/index.spec.ts
+++ b/lib/modules/versioning/poetry/index.spec.ts
@@ -189,15 +189,15 @@ describe('modules/versioning/poetry/index', () => {
     ${'  = 1.0.0'}      | ${'bump'}     | ${'1.0.0'}         | ${'1.1.0'}         | ${'=1.1.0'}
     ${'  =   1.0.0'}    | ${'bump'}     | ${'1.0.0'}         | ${'1.1.0'}         | ${'=1.1.0'}
     ${'=    1.0.0'}     | ${'bump'}     | ${'1.0.0'}         | ${'1.1.0'}         | ${'=1.1.0'}
-    ${'^1.0'}           | ${'bump'}     | ${'1.0.0'}         | ${'1.0.7'}         | ${'^1.0'}
+    ${'^1.0'}           | ${'bump'}     | ${'1.0.0'}         | ${'1.0.7'}         | ${'^1.0.7'}
     ${'^1.0.0'}         | ${'replace'}  | ${'1.0.0'}         | ${'2.0.7'}         | ${'^2.0.0'}
     ${'^5.0.3'}         | ${'replace'}  | ${'5.3.1'}         | ${'5.5'}           | ${'^5.0.3'}
     ${'1.0.0'}          | ${'replace'}  | ${'1.0.0'}         | ${'2.0.7'}         | ${'2.0.7'}
     ${'^1.0.0'}         | ${'replace'}  | ${'1.0.0'}         | ${'2.0.7'}         | ${'^2.0.0'}
     ${'^0.5.15'}        | ${'replace'}  | ${'0.5.15'}        | ${'0.6'}           | ${'^0.5.15'}
     ${'^0.5.15'}        | ${'replace'}  | ${'0.5.15'}        | ${'0.6b.4'}        | ${'^0.5.15'}
-    ${'^1'}             | ${'bump'}     | ${'1.0.0'}         | ${'2.1.7'}         | ${'^2'}
-    ${'~1'}             | ${'bump'}     | ${'1.0.0'}         | ${'1.1.7'}         | ${'~1'}
+    ${'^1'}             | ${'bump'}     | ${'1.0.0'}         | ${'2.1.7'}         | ${'^2.1.7'}
+    ${'~1'}             | ${'bump'}     | ${'1.0.0'}         | ${'1.1.7'}         | ${'~1.1.7'}
     ${'5'}              | ${'bump'}     | ${'5.0.0'}         | ${'5.1.7'}         | ${'5'}
     ${'5'}              | ${'bump'}     | ${'5.0.0'}         | ${'6.1.7'}         | ${'6'}
     ${'5.0'}            | ${'bump'}     | ${'5.0.0'}         | ${'5.0.7'}         | ${'5.0'}
@@ -211,7 +211,7 @@ describe('modules/versioning/poetry/index', () => {
     ${'^0.8.0-alpha.0'} | ${'bump'}     | ${'0.8.0-alpha.0'} | ${'0.8.0-alpha.1'} | ${'^0.8.0-alpha.1'}
     ${'^0.8.0-alpha.0'} | ${'bump'}     | ${'0.8.0-alpha.0'} | ${'0.8.0a1'}       | ${'^0.8.0-alpha.1'}
     ${'^1.0.0'}         | ${'replace'}  | ${'1.0.0'}         | ${'1.2.3'}         | ${'^1.0.0'}
-    ${'~1.0'}           | ${'bump'}     | ${'1.0.0'}         | ${'1.1.7'}         | ${'~1.1'}
+    ${'~1.0'}           | ${'bump'}     | ${'1.0.0'}         | ${'1.1.7'}         | ${'~1.1.7'}
     ${'1.0.*'}          | ${'replace'}  | ${'1.0.0'}         | ${'1.1.0'}         | ${'1.1.*'}
     ${'1.*'}            | ${'replace'}  | ${'1.0.0'}         | ${'2.1.0'}         | ${'2.*'}
     ${'~0.6.1'}         | ${'replace'}  | ${'0.6.8'}         | ${'0.7.0-rc.2'}    | ${'~0.7.0-rc'}