/** * Method to raise a version number * * @param string $raise one of "main", "sub", "dev" - the version part to raise by one * @param string $version (like 4.1.20) * @return string * @throws \TYPO3\CMS\Core\Exception */ public static function raiseVersionNumber($raise, $version) { if (!in_array($raise, array('main', 'sub', 'dev'))) { throw new \TYPO3\CMS\Core\Exception('RaiseVersionNumber expects one of "main", "sub" or "dev".', 1342639555); } $parts = GeneralUtility::intExplode('.', $version . '..'); $parts[0] = MathUtility::forceIntegerInRange($parts[0], 0, 999); $parts[1] = MathUtility::forceIntegerInRange($parts[1], 0, 999); $parts[2] = MathUtility::forceIntegerInRange($parts[2], 0, 999); switch ((string) $raise) { case 'main': $parts[0]++; $parts[1] = 0; $parts[2] = 0; break; case 'sub': $parts[1]++; $parts[2] = 0; break; case 'dev': $parts[2]++; break; } return $parts[0] . '.' . $parts[1] . '.' . $parts[2]; }