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+100-40
Changes to .github/workflows/precompile-php.yml
@@ -175,7 +175,18 @@ jobs:
175175
176176 # Wait for dependencies to be fully installed
177177 echo "⏳ Waiting for dependency installation to complete..."
178 sleep 5
178 sleep 10
179
180 # Debug: Check what was actually installed
181 echo "🔍 Checking installed dependencies..."
182 echo "📁 .local directory structure (first level):"
183 find "$HOME/.local" -maxdepth 2 -type d | sort | head -20
184
185 echo "🔍 Looking for pkg-config specifically..."
186 find "$HOME/.local" -name "*pkg*" -type f 2>/dev/null | head -10 || echo "No pkg-related files found"
187
188 echo "🔍 Looking for freedesktop.org directory..."
189 find "$HOME/.local" -path "*freedesktop*" -type d 2>/dev/null | head -5 || echo "No freedesktop.org directories found"
179190
180191 # Debug: Check if pkg-config is available
181192 echo "🔍 Checking for pkg-config..."
@@ -246,6 +257,64 @@ jobs:
246257 # Install additional dependencies needed for PHP extensions
247258 echo "Windows build dependencies installed for PHP compilation"
248259
260 - name: Setup Launchpad Environment (macOS)
261 if: matrix.platform == 'darwin'
262 shell: bash
263 run: |
264 # Find and setup Launchpad environment variables
265 echo "🔧 Setting up Launchpad environment for macOS build..."
266
267 # Store original PATH to preserve system tools
268 echo "ORIGINAL_PATH=$PATH" >> $GITHUB_ENV
269
270 # Find all Launchpad binary directories that should be added to PATH
271 LAUNCHPAD_PATHS=""
272
273 # Find pkg-config binary - search broadly first
274 echo "🔍 Searching for pkg-config binary..."
275 PKG_CONFIG_BINARY=$(find "$HOME/.local" -name "pkg-config" -type f 2>/dev/null | head -1)
276 if [ -n "$PKG_CONFIG_BINARY" ]; then
277 PKG_CONFIG_DIR=$(dirname "$PKG_CONFIG_BINARY")
278 echo "✅ Found pkg-config at: $PKG_CONFIG_DIR"
279 LAUNCHPAD_PATHS="$PKG_CONFIG_DIR"
280 else
281 echo "❌ pkg-config binary not found in .local"
282 echo "🔍 Checking if pkg-config exists in system PATH..."
283 if command -v pkg-config >/dev/null 2>&1; then
284 echo "✅ pkg-config found in system PATH: $(which pkg-config)"
285 else
286 echo "❌ pkg-config not found anywhere"
287 fi
288 fi
289
290 # Find other essential Launchpad tools that might override system tools
291 # We'll be more selective to avoid overriding system tools
292 SED_BINARY=$(find "$HOME/.local" -path "*/gnu.org/sed/*/bin/sed" -type f 2>/dev/null | head -1)
293 if [ -n "$SED_BINARY" ]; then
294 SED_DIR=$(dirname "$SED_BINARY")
295 echo "✅ Found sed at: $SED_DIR"
296 # Only add sed if we have other tools too, to avoid conflicts
297 if [ -n "$LAUNCHPAD_PATHS" ]; then
298 LAUNCHPAD_PATHS="$LAUNCHPAD_PATHS:$SED_DIR"
299 fi
300 fi
301
302 # Set the combined Launchpad paths (these will be prepended to PATH later)
303 if [ -n "$LAUNCHPAD_PATHS" ]; then
304 echo "LAUNCHPAD_BINARY_PATHS=$LAUNCHPAD_PATHS" >> $GITHUB_ENV
305 echo "✅ Launchpad binary paths: $LAUNCHPAD_PATHS"
306 else
307 echo "LAUNCHPAD_BINARY_PATHS=" >> $GITHUB_ENV
308 echo "❌ No Launchpad binary paths found - PATH will not be modified"
309 fi
310
311 # Setup comprehensive PKG_CONFIG_PATH
312 PKG_PATHS=$(find "$HOME/.local" -name "pkgconfig" -type d 2>/dev/null | tr '\n' ':')
313 if [ -n "$PKG_PATHS" ]; then
314 echo "LAUNCHPAD_PKG_CONFIG_PATH=$PKG_PATHS" >> $GITHUB_ENV
315 echo "✅ PKG_CONFIG_PATH setup with $(echo "$PKG_PATHS" | tr ':' '\n' | wc -l) directories"
316 fi
317
249318 - name: Build PHP
250319 shell: bash
251320 env:
@@ -255,53 +324,44 @@ jobs:
255324 TARGET_ARCH: ${{ matrix.arch }}
256325 BUILD_DIR: ${{ github.workspace }}/build
257326 OUTPUT_DIR: ${{ github.workspace }}/binaries
327 # Environment for all platforms - will handle PATH logic in shell script
328 PKG_CONFIG_PATH: ${{ matrix.platform == 'darwin' && env.LAUNCHPAD_PKG_CONFIG_PATH || env.PKG_CONFIG_PATH }}
258329 run: |
259 # Source Launchpad environment if available (macOS only)
330 # Setup PATH for macOS with Launchpad tools
260331 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
332 echo "🔧 Setting up macOS environment..."
273333
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
334 # Preserve original PATH
335 ORIGINAL_PATH="$PATH"
336 echo "✅ Original PATH: ${ORIGINAL_PATH:0:100}..."
282337
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"
338 # Add Launchpad binary paths to PATH if they exist
339 if [ -n "${LAUNCHPAD_BINARY_PATHS:-}" ] && [ "${LAUNCHPAD_BINARY_PATHS}" != "NOT SET" ]; then
340 export PATH="$LAUNCHPAD_BINARY_PATHS:$ORIGINAL_PATH"
341 echo "✅ Updated PATH with Launchpad binaries: ${LAUNCHPAD_BINARY_PATHS}"
342 else
343 echo " No Launchpad binary paths found - using original PATH"
289344 fi
290345
291 echo "✅ Current PATH includes freedesktop.org: $(echo $PATH | grep -o freedesktop.org || echo 'NO')"
346 echo "✅ Final PATH: ${PATH:0:100}..."
292347 echo "✅ PKG_CONFIG_PATH: ${PKG_CONFIG_PATH:-'NOT SET'}"
293348
294 # Verify pkg-config is accessible and set up PKG_CONFIG_PATH
349 # Verify essential system tools are available
350 echo "🔧 Checking essential system tools..."
351 for tool in curl tar gzip grep tr find wc head; do
352 if command -v $tool >/dev/null 2>&1; then
353 echo "✅ $tool: $(which $tool)"
354 else
355 echo "❌ $tool: NOT FOUND"
356 fi
357 done
358
359 # Verify pkg-config is accessible
360 echo "🔧 Checking pkg-config..."
295361 if command -v pkg-config >/dev/null 2>&1; then
296362 echo "✅ pkg-config is accessible: $(which pkg-config)"
297363 echo "✅ pkg-config version: $(pkg-config --version)"
298364
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
305365 # Test libxml-2.0 specifically
306366 if pkg-config --exists libxml-2.0; then
307367 echo "✅ libxml-2.0 package found via pkg-config"
@@ -311,13 +371,13 @@ jobs:
311371 echo "🔍 Available packages: $(pkg-config --list-all | head -10)"
312372 fi
313373 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
374 echo "❌ pkg-config not accessible"
375 echo "🔍 Searching for pkg-config in .local..."
376 find "$HOME/.local" -name "pkg-config" -type f 2>/dev/null | head -3 || echo "No pkg-config binaries found"
317377 fi
318378 fi
319379
320 # Run the build script with enhanced environment
380 # Run the build script with properly configured environment
321381 bun run scripts/build-php.ts
322382
323383 - name: Create tarball (Unix)