ReviewOS

also looking at this

pantry-pm/pantry

chore(deps): update all non-major dependencies

#185
Closed chrisbbreuer wants to merge buddy-bot/update-non-major-updates-1757488178247 into main
10 files +301 -78

Review threads live on the whole diff, not on one commit, so none are shown here - a thread's line means something in the branch's final form, and painting it into an intermediate step would put it on code it is not about.

.github/workflows/precompile-php.ymlmodified+110-3
Changes to .github/workflows/precompile-php.yml
@@ -171,7 +171,22 @@ jobs:
171171
172172 # Pre-install dependencies to ensure they're available
173173 echo "🔧 Pre-installing dependencies via Launchpad..."
174 bun run launchpad install php --deps-only || echo "⚠️ Dependency installation had issues, continuing anyway"
174 bun run launchpad install php --deps-only
175
176 # Wait for dependencies to be fully installed
177 echo "⏳ Waiting for dependency installation to complete..."
178 sleep 5
179
180 # Debug: Check if pkg-config is available
181 echo "🔍 Checking for pkg-config..."
182 if command -v pkg-config >/dev/null 2>&1; then
183 echo "✅ pkg-config found: $(which pkg-config)"
184 echo "📋 pkg-config version: $(pkg-config --version)"
185 else
186 echo "❌ pkg-config not found in PATH"
187 echo "🔍 Searching for pkg-config in .local..."
188 find "$HOME/.local" -name "pkg-config" -type f 2>/dev/null || echo "No pkg-config found in .local"
189 fi
175190
176191 # Debug: Check if ICU libraries are available
177192 echo "🔍 Checking for ICU libraries..."
@@ -188,11 +203,39 @@ jobs:
188203 echo "❌ ICU libraries not found"
189204 fi
190205
206 # Debug: Check libxml2 libraries
207 echo "🔍 Checking for libxml2 libraries..."
208 if [ -d "$HOME/.local/gnome.org/libxml2" ]; then
209 echo "✅ libxml2 libraries found at: $HOME/.local/gnome.org/libxml2"
210 ls -la "$HOME/.local/gnome.org/libxml2/"
211 if [ -f "$HOME/.local/gnome.org/libxml2"/*/lib/pkgconfig/libxml-2.0.pc ]; then
212 echo "✅ libxml2 pkgconfig files found"
213 find "$HOME/.local/gnome.org/libxml2" -name "libxml-2.0.pc" -type f
214 else
215 echo "❌ libxml2 pkgconfig files not found"
216 fi
217 else
218 echo "❌ libxml2 libraries not found"
219 fi
220
191221 # Debug: Check PATH and PKG_CONFIG_PATH
192222 echo "🔍 Environment check:"
193223 echo "PATH includes unicode.org: $(echo $PATH | grep -o unicode.org || echo 'NO')"
224 echo "PATH includes freedesktop.org: $(echo $PATH | grep -o freedesktop.org || echo 'NO')"
194225 echo "PKG_CONFIG_PATH: ${PKG_CONFIG_PATH:-'NOT SET'}"
195226
227 # Debug: Check if Launchpad environment script exists
228 echo "🔍 Checking for Launchpad environment..."
229 if [ -f "$HOME/.local/launchpad.sh" ]; then
230 echo "✅ Launchpad environment script found"
231 echo "📋 Sourcing environment to check paths..."
232 source "$HOME/.local/launchpad.sh"
233 echo "PATH after sourcing: ${PATH:0:200}..."
234 echo "PKG_CONFIG_PATH after sourcing: ${PKG_CONFIG_PATH:-'NOT SET'}"
235 else
236 echo "❌ Launchpad environment script not found"
237 fi
238
196239 - name: Install build dependencies (Windows)
197240 if: matrix.platform == 'win32'
198241 run: |
@@ -204,6 +247,7 @@ jobs:
204247 echo "Windows build dependencies installed for PHP compilation"
205248
206249 - name: Build PHP
250 shell: bash
207251 env:
208252 PHP_VERSION: ${{ matrix.php_version }}
209253 PHP_CONFIG: ${{ matrix.config }}
@@ -211,7 +255,70 @@ jobs:
211255 TARGET_ARCH: ${{ matrix.arch }}
212256 BUILD_DIR: ${{ github.workspace }}/build
213257 OUTPUT_DIR: ${{ github.workspace }}/binaries
214 run: bun run scripts/build-php.ts
258 run: |
259 # Source Launchpad environment if available (macOS only)
260 if [ "$" = "darwin" ]; then
261 # Find and source the best available Launchpad environment
262 if [ -f "$HOME/.local/build-env.sh" ]; then
263 echo "🔧 Sourcing Launchpad build environment for macOS build..."
264 source "$HOME/.local/build-env.sh"
265 echo "✅ Environment sourced from build-env.sh"
266 elif [ -f "$HOME/.local/share/launchpad/global/build-env.sh" ]; then
267 echo "🔧 Sourcing global Launchpad environment for macOS build..."
268 source "$HOME/.local/share/launchpad/global/build-env.sh"
269 echo "✅ Environment sourced from global build-env.sh"
270 else
271 echo "⚠️ No Launchpad environment file found"
272 fi
273
274 # Always ensure pkg-config is available - find it dynamically
275 echo "🔍 Finding and adding pkg-config to PATH..."
276 PKG_CONFIG_PATH_FOUND=$(find "$HOME/.local" -name "pkg-config" -type f 2>/dev/null | head -1)
277 if [ -n "$PKG_CONFIG_PATH_FOUND" ]; then
278 PKG_CONFIG_DIR=$(dirname "$PKG_CONFIG_PATH_FOUND")
279 export PATH="$PKG_CONFIG_DIR:$PATH"
280 echo "✅ Added pkg-config to PATH from: $PKG_CONFIG_DIR"
281 fi
282
283 # Also ensure sed is available
284 SED_PATH_FOUND=$(find "$HOME/.local" -path "*/gnu.org/sed/*/bin/sed" -type f 2>/dev/null | head -1)
285 if [ -n "$SED_PATH_FOUND" ]; then
286 SED_DIR=$(dirname "$SED_PATH_FOUND")
287 export PATH="$SED_DIR:$PATH"
288 echo "✅ Added sed to PATH from: $SED_DIR"
289 fi
290
291 echo "✅ Current PATH includes freedesktop.org: $(echo $PATH | grep -o freedesktop.org || echo 'NO')"
292 echo "✅ PKG_CONFIG_PATH: ${PKG_CONFIG_PATH:-'NOT SET'}"
293
294 # Verify pkg-config is accessible and set up PKG_CONFIG_PATH
295 if command -v pkg-config >/dev/null 2>&1; then
296 echo "✅ pkg-config is accessible: $(which pkg-config)"
297 echo "✅ pkg-config version: $(pkg-config --version)"
298
299 # Ensure PKG_CONFIG_PATH includes all Launchpad library paths
300 echo "🔧 Setting up comprehensive PKG_CONFIG_PATH..."
301 PKG_PATHS=$(find "$HOME/.local" -name "pkgconfig" -type d 2>/dev/null | tr '\n' ':')
302 export PKG_CONFIG_PATH="$PKG_PATHS:${PKG_CONFIG_PATH:-}"
303 echo "✅ PKG_CONFIG_PATH set to: $PKG_CONFIG_PATH"
304
305 # Test libxml-2.0 specifically
306 if pkg-config --exists libxml-2.0; then
307 echo "✅ libxml-2.0 package found via pkg-config"
308 echo "📋 libxml-2.0 cflags: $(pkg-config --cflags libxml-2.0)"
309 else
310 echo "❌ libxml-2.0 package not found via pkg-config"
311 echo "🔍 Available packages: $(pkg-config --list-all | head -10)"
312 fi
313 else
314 echo "❌ pkg-config still not accessible"
315 echo "🔍 All pkg-config instances:"
316 find "$HOME/.local" -name "pkg-config" -type f 2>/dev/null
317 fi
318 fi
319
320 # Run the build script with enhanced environment
321 bun run scripts/build-php.ts
215322
216323 - name: Create tarball (Unix)
217324 if: matrix.platform != 'win32'
@@ -745,7 +852,7 @@ jobs:
745852 echo " - Manifest file size: $(stat -c%s manifest.json 2>/dev/null || stat -f%z manifest.json) bytes"
746853
747854 - name: Create GitHub Release
748 uses: softprops/action-gh-release@v1
855 uses: softprops/action-gh-release@v2.3.3
749856 with:
750857 tag_name: binaries-${{ github.run_number }}
751858 name: PHP Binaries - Build ${{ github.run_number }}
package.jsonmodified+12-19
Changes to package.json
@@ -17,43 +17,36 @@
1717 "keywords": ["homebrew", "pkgx", "bun", "package"],
1818 "scripts": {
1919 "build": "for dir in packages/*; do if [ -f \"$dir/package.json\" ]; then echo \"Building $dir\" && bun run --cwd $dir build; fi; done",
20 "fresh": "bunx rimraf node_modules/ bun.lock && bun i",
21 "test": "bun test",
2220 "lint": "bunx --bun eslint .",
2321 "lint:fix": "bunx --bun eslint . --fix",
24 "changelog": "bunx logsmith --verbose",
25 "changelog:generate": "bunx logsmith --output CHANGELOG.md",
26 "release": "bun run changelog:generate && bunx bumpx prompt --recursive",
27 "postinstall": "bunx git-hooks",
22 "fresh": "bunx rimraf node_modules/ bun.lock && bun i",
23 "changelog": "bunx --bun changelogen --output CHANGELOG.md",
24 "release": "bun run changelog && bunx --bun bumpp -r --all",
25 "test": "bun test",
2826 "dev:docs": "bun vitepress dev docs",
2927 "build:docs": "bun vitepress build docs",
3028 "preview:docs": "bun vitepress preview docs",
3129 "typecheck": "bun --bun tsc --noEmit"
3230 },
3331 "devDependencies": {
34 "@stacksjs/bumpx": "^0.1.84",
3532 "@stacksjs/docs": "^0.70.23",
3633 "@stacksjs/eslint-config": "^4.14.0-beta.3",
37 "@stacksjs/gitlint": "^0.1.5",
3834 "@stacksjs/launchpad": "workspace:*",
39 "@stacksjs/logsmith": "^0.1.18",
40 "@types/bun": "^1.2.22",
41 "buddy-bot": "^0.9.7",
42 "bun-git-hooks": "^0.2.19",
35 "@types/bun": "^1.2.20",
36 "buddy-bot": "^0.8.8",
37 "bumpp": "^10.2.3",
4338 "bun-plugin-dtsx": "0.21.12",
39 "changelogen": "^0.6.2",
40 "lint-staged": "^15.5.2",
41 "simple-git-hooks": "^2.13.1",
4442 "typescript": "^5.9.2"
4543 },
4644 "overrides": {
4745 "@stacksjs/dtsx": "0.9.5",
4846 "unconfig": "0.3.10"
4947 },
50 "git-hooks": {
51 "pre-commit": {
52 "staged-lint": {
53 "*.{js,ts,json,yaml,yml,md}": "bunx --bun eslint --fix"
54 }
55 },
56 "commit-msg": "bunx gitlint --edit .git/COMMIT_EDITMSG"
48 "lint-staged": {
49 "*.{js,ts}": "bunx --bun eslint . --fix"
5750 },
5851 "workspaces": [
5952 "packages/*"
packages/launchpad/package.jsonmodified+2-2
Changes to packages/launchpad/package.json
@@ -2,7 +2,7 @@
22 "name": "@stacksjs/launchpad",
33 "type": "module",
44 "version": "0.6.4",
5 "packageManager": "bun@1.2.21",
5 "packageManager": "bun",
66 "description": "Like Homebrew, but faster.",
77 "author": "Chris Breuer <chris@stacksjs.org>",
88 "license": "MIT",
@@ -64,7 +64,7 @@
6464 "typecheck": "bun --bun tsc --noEmit --skipLibCheck"
6565 },
6666 "dependencies": {
67 "bunfig": "^0.15.0",
67 "bunfig": "^0.11.1",
6868 "cac": "^6.7.14",
6969 "ts-pkgx": "^0.4.76"
7070 },