6868 fi
6969 done
7070
71- # Apply changesets and consume them
71+ # Remove beta suffixes temporarily so changeset can properly increment versions
72+ echo "Temporarily removing beta suffixes for proper version increments..."
73+
74+ # Remove beta suffix from main package
75+ MAIN_VERSION=$(node -p "require('./package.json').version")
76+ if [[ "$MAIN_VERSION" == *"-beta."* ]]; then
77+ CLEAN_MAIN=$(echo "$MAIN_VERSION" | sed 's/-beta\.[0-9]*$//')
78+ npm version $CLEAN_MAIN --no-git-tag-version
79+ echo "✓ Main package: $MAIN_VERSION → $CLEAN_MAIN"
80+ fi
81+
82+ # Remove beta suffix from sub-packages
83+ for pkg in packages/*/; do
84+ if [ -d "$pkg" ] && [ -f "$pkg/package.json" ]; then
85+ PKG_VERSION=$(node -p "require('./$pkg/package.json').version")
86+ if [[ "$PKG_VERSION" == *"-beta."* ]]; then
87+ CLEAN_PKG=$(echo "$PKG_VERSION" | sed 's/-beta\.[0-9]*$//')
88+ cd "$pkg" && npm version $CLEAN_PKG --no-git-tag-version && cd ../..
89+ echo "✓ $(basename $pkg): $PKG_VERSION → $CLEAN_PKG"
90+ fi
91+ fi
92+ done
93+
94+ # Apply changesets and consume them (now versions will properly increment)
7295 pnpm changeset version
7396
7497 # Ensure beta versions on develop branch
@@ -89,44 +112,35 @@ jobs:
89112 fi
90113 }
91114
92- # Check which packages were changed by changeset version
93- # Only apply beta timestamps to packages that were actually modified
94- echo "Checking which packages were modified by changeset..."
115+ # Apply beta suffixes to packages processed by changeset
116+ echo "Applying beta timestamps to packages processed by changeset..."
95117
96- # Check main package
118+ # Check main package - if no beta suffix, it was processed by changeset
97119 NEW_MAIN=$(node -p "require('./package.json').version")
98- if [ "$ORIGINAL_MAIN" != "$NEW_MAIN" ] || [[ "$NEW_MAIN" != *"-beta."* ]]; then
99- BETA_MAIN=$(update_beta_timestamp "$NEW_MAIN" "$TIMESTAMP")
100- if [ "$NEW_MAIN" != "$BETA_MAIN" ]; then
101- npm version $BETA_MAIN --no-git-tag-version
102- CHANGED_PACKAGES="vue-pivottable"
103- echo "✓ Updated vue-pivottable: $NEW_MAIN → $BETA_MAIN"
104- else
105- echo "✓ vue-pivottable already has correct beta version: $NEW_MAIN"
106- fi
120+ if [[ "$NEW_MAIN" != *"-beta."* ]]; then
121+ BETA_MAIN="${NEW_MAIN}-beta.${TIMESTAMP}"
122+ npm version $BETA_MAIN --no-git-tag-version
123+ CHANGED_PACKAGES="vue-pivottable"
124+ echo "✓ Updated vue-pivottable: $NEW_MAIN → $BETA_MAIN"
107125 else
108- echo "✓ vue-pivottable unchanged : $NEW_MAIN"
126+ echo "✓ vue-pivottable already has beta suffix : $NEW_MAIN"
109127 fi
110128
111- # Check sub-packages
129+ # Check sub-packages - if no beta suffix, they were processed by changeset
112130 for pkg in packages/*/; do
113131 if [ -d "$pkg" ] && [ -f "$pkg/package.json" ]; then
114132 cd "$pkg"
115133 PKG_NAME=$(basename "$pkg")
116134 NEW_VERSION=$(node -p "require('./package.json').version")
117135
118- # Only update if package was changed by changeset OR doesn't have beta suffix
119- if [ "${ORIGINAL_VERSIONS[$PKG_NAME]}" != "$NEW_VERSION" ] || [[ "$NEW_VERSION" != *"-beta."* ]]; then
120- BETA_VERSION=$(update_beta_timestamp "$NEW_VERSION" "$TIMESTAMP")
121- if [ "$NEW_VERSION" != "$BETA_VERSION" ]; then
122- npm version $BETA_VERSION --no-git-tag-version
123- CHANGED_PACKAGES="$CHANGED_PACKAGES $PKG_NAME"
124- echo "✓ Updated $PKG_NAME: $NEW_VERSION → $BETA_VERSION"
125- else
126- echo "✓ $PKG_NAME already has correct beta version: $NEW_VERSION"
127- fi
136+ # If no beta suffix, it was processed by changeset, so add beta
137+ if [[ "$NEW_VERSION" != *"-beta."* ]]; then
138+ BETA_VERSION="${NEW_VERSION}-beta.${TIMESTAMP}"
139+ npm version $BETA_VERSION --no-git-tag-version
140+ CHANGED_PACKAGES="$CHANGED_PACKAGES $PKG_NAME"
141+ echo "✓ Updated $PKG_NAME: $NEW_VERSION → $BETA_VERSION"
128142 else
129- echo "✓ $PKG_NAME unchanged : $NEW_VERSION"
143+ echo "✓ $PKG_NAME already has beta suffix : $NEW_VERSION"
130144 fi
131145 cd -
132146 fi
0 commit comments