fix: Correction format version YY.MM.DDNN (3 parties au lieu de 4)
- VERSION file stocke maintenant: 26.01.2604 (3 parties) - Au lieu de: 26.01.26.04 (4 parties - invalide pour semver) - Regex ajustée pour parser le nouveau format: ^YY.MM.DDNN$ - Détection changement de date compare YY, MM, DD séparément - Build number reste YYMMDDNN (26012604) - Commentaires mis à jour pour refléter format YY.MM.DDNN Résout: "Could not parse 26.01.26.04+26012604" 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
@@ -164,10 +164,10 @@ if [ "$SOURCE_TYPE" = "local_build" ]; then
|
|||||||
fi
|
fi
|
||||||
source .env-deploy-dev
|
source .env-deploy-dev
|
||||||
|
|
||||||
# Système automatique de versioning YY.MM.DD.NN
|
# Système automatique de versioning YY.MM.DDNN
|
||||||
echo_info "Managing version (automatic YY.MM.DD.NN)..."
|
echo_info "Managing version (automatic YY.MM.DDNN)..."
|
||||||
|
|
||||||
# Date du jour au format YY.MM.DD
|
# Date du jour
|
||||||
TODAY=$(date +%y.%m.%d)
|
TODAY=$(date +%y.%m.%d)
|
||||||
TODAY_YY=$(date +%y)
|
TODAY_YY=$(date +%y)
|
||||||
TODAY_MM=$(date +%m)
|
TODAY_MM=$(date +%m)
|
||||||
@@ -177,15 +177,17 @@ if [ "$SOURCE_TYPE" = "local_build" ]; then
|
|||||||
CURRENT_VERSION=$(cat ../VERSION | tr -d '\n\r' | tr -d ' ')
|
CURRENT_VERSION=$(cat ../VERSION | tr -d '\n\r' | tr -d ' ')
|
||||||
echo_info "Current version: $CURRENT_VERSION"
|
echo_info "Current version: $CURRENT_VERSION"
|
||||||
|
|
||||||
# Extraire la partie date et le build number
|
# Extraire la partie date et le build number (format: YY.MM.DDNN)
|
||||||
if [[ $CURRENT_VERSION =~ ^([0-9]{2}\.[0-9]{2}\.[0-9]{2})\.([0-9]{2})$ ]]; then
|
if [[ $CURRENT_VERSION =~ ^([0-9]{2})\.([0-9]{2})\.([0-9]{2})([0-9]{2})$ ]]; then
|
||||||
VERSION_DATE="${BASH_REMATCH[1]}"
|
PREV_YY="${BASH_REMATCH[1]}"
|
||||||
BUILD_NUM="${BASH_REMATCH[2]}"
|
PREV_MM="${BASH_REMATCH[2]}"
|
||||||
|
PREV_DD="${BASH_REMATCH[3]}"
|
||||||
|
BUILD_NUM="${BASH_REMATCH[4]}"
|
||||||
|
|
||||||
# Si la date a changé, reset à .01
|
# Si la date a changé, reset à 01
|
||||||
if [ "$VERSION_DATE" != "$TODAY" ]; then
|
if [ "$PREV_YY" != "$TODAY_YY" ] || [ "$PREV_MM" != "$TODAY_MM" ] || [ "$PREV_DD" != "$TODAY_DD" ]; then
|
||||||
NEW_BUILD="01"
|
NEW_BUILD="01"
|
||||||
echo_info "Date changed: $VERSION_DATE → $TODAY, resetting build to 01"
|
echo_info "Date changed: $PREV_YY.$PREV_MM.$PREV_DD → $TODAY_YY.$TODAY_MM.$TODAY_DD, resetting build to 01"
|
||||||
else
|
else
|
||||||
# Incrémenter le build number
|
# Incrémenter le build number
|
||||||
NEW_BUILD=$(printf "%02d" $((10#$BUILD_NUM + 1)))
|
NEW_BUILD=$(printf "%02d" $((10#$BUILD_NUM + 1)))
|
||||||
@@ -202,19 +204,16 @@ if [ "$SOURCE_TYPE" = "local_build" ]; then
|
|||||||
echo_warning "VERSION file not found, creating new one"
|
echo_warning "VERSION file not found, creating new one"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Construire la version complète YY.MM.DD.NN pour le fichier VERSION
|
# Construire la version semver: YY.MM.DDNN (3 parties)
|
||||||
VERSION="${TODAY}.${NEW_BUILD}"
|
VERSION="${TODAY_YY}.${TODAY_MM}.${TODAY_DD}${NEW_BUILD}"
|
||||||
echo "$VERSION" > ../VERSION
|
echo "$VERSION" > ../VERSION
|
||||||
echo_success "✅ New version: $VERSION"
|
echo_success "✅ New version: $VERSION"
|
||||||
|
|
||||||
# Version semver compatible: YY.MM.DDNN (3 parties)
|
|
||||||
SEMVER_VERSION="${TODAY_YY}.${TODAY_MM}.${TODAY_DD}${NEW_BUILD}"
|
|
||||||
|
|
||||||
# Build number: YYMMDDNN (tous les chiffres)
|
# Build number: YYMMDDNN (tous les chiffres)
|
||||||
BUILD_NUMBER="${TODAY_YY}${TODAY_MM}${TODAY_DD}${NEW_BUILD}"
|
BUILD_NUMBER="${TODAY_YY}${TODAY_MM}${TODAY_DD}${NEW_BUILD}"
|
||||||
|
|
||||||
# Version complète pour pubspec.yaml
|
# Version complète pour pubspec.yaml
|
||||||
FULL_VERSION="${SEMVER_VERSION}+${BUILD_NUMBER}"
|
FULL_VERSION="${VERSION}+${BUILD_NUMBER}"
|
||||||
echo_info "Semver version for pubspec.yaml: $FULL_VERSION"
|
echo_info "Semver version for pubspec.yaml: $FULL_VERSION"
|
||||||
|
|
||||||
sed -i "s/^version: .*/version: $FULL_VERSION/" pubspec.yaml || echo_error "Failed to update pubspec.yaml"
|
sed -i "s/^version: .*/version: $FULL_VERSION/" pubspec.yaml || echo_error "Failed to update pubspec.yaml"
|
||||||
@@ -274,13 +273,13 @@ cat > lib/core/services/app_info_service.dart <<EOF
|
|||||||
// Provides application version and build information without external dependencies
|
// Provides application version and build information without external dependencies
|
||||||
|
|
||||||
class AppInfoService {
|
class AppInfoService {
|
||||||
// Version number (format: YY.MM.DD.NN - auto-incremented on each DEV deploy)
|
// Version number (format: YY.MM.DDNN - auto-incremented on each DEV deploy)
|
||||||
static const String version = '$VERSION';
|
static const String version = '$VERSION';
|
||||||
|
|
||||||
// Build number (version without dots: YYMMDDNN)
|
// Build number (version without dots: YYMMDDNN)
|
||||||
static const String buildNumber = '$BUILD_NUMBER';
|
static const String buildNumber = '$BUILD_NUMBER';
|
||||||
|
|
||||||
// Full version string (format: vYY.MM.DD.NN+YYMMDDNN)
|
// Full version string (format: vYY.MM.DDNN+YYMMDDNN)
|
||||||
static String get fullVersion => 'v\$version+\$buildNumber';
|
static String get fullVersion => 'v\$version+\$buildNumber';
|
||||||
|
|
||||||
// Application name
|
// Application name
|
||||||
|
|||||||
Reference in New Issue
Block a user