68
68
fi
69
69
done
70
70
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)
72
95
pnpm changeset version
73
96
74
97
# Ensure beta versions on develop branch
@@ -89,44 +112,35 @@ jobs:
89
112
fi
90
113
}
91
114
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..."
95
117
96
- # Check main package
118
+ # Check main package - if no beta suffix, it was processed by changeset
97
119
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"
107
125
else
108
- echo "✓ vue-pivottable unchanged : $NEW_MAIN"
126
+ echo "✓ vue-pivottable already has beta suffix : $NEW_MAIN"
109
127
fi
110
128
111
- # Check sub-packages
129
+ # Check sub-packages - if no beta suffix, they were processed by changeset
112
130
for pkg in packages/*/; do
113
131
if [ -d "$pkg" ] && [ -f "$pkg/package.json" ]; then
114
132
cd "$pkg"
115
133
PKG_NAME=$(basename "$pkg")
116
134
NEW_VERSION=$(node -p "require('./package.json').version")
117
135
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"
128
142
else
129
- echo "✓ $PKG_NAME unchanged : $NEW_VERSION"
143
+ echo "✓ $PKG_NAME already has beta suffix : $NEW_VERSION"
130
144
fi
131
145
cd -
132
146
fi
0 commit comments