Weave Code
Code Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Laravel Installer Laravel Package

jmrashed/laravel-installer

View on GitHub
Deep Wiki
Context7
v2.0.9

๐Ÿ› BUG FIXES

  • Added Laravel 12 support (illuminate/console, illuminate/http, illuminate/support now accept ^12.0; orchestra/testbench dev dependency now accepts ^10.0). composer create-project laravel/laravel has defaulted to Laravel 12 since its release, so composer require jmrashed/laravel-installer into any new Laravel app was failing to resolve entirely until this fix โ€” this affected every new install, not just CI
  • Added laravel: 12.* to the CI test matrix (excluding php: 8.1 + laravel: 12.*, since Laravel 12 requires PHP ^8.2), and fixed the CI integration job, which creates a real laravel/laravel project and installs this package into it โ€” it had been failing since Laravel 12's release
v2.0.8

๐Ÿ” SECURITY FIXES

  • ๐Ÿšจ Critical: Fixed a command-injection vulnerability in the dependency installer โ€” DependencyController::installPackage() now validates the package name against a strict allow-list pattern and shells out via an argument-array Process instead of an interpolated shell string
  • ๐Ÿšจ Critical: Registered the 5 v2.0 middleware (SecurityMiddleware, PerformanceMiddleware, ProgressMiddleware, DependencyMiddleware, ExceptionHandlerMiddleware) on the install/update route groups โ€” they were fully implemented but never wired into the service provider, so the advertised rate limiting, security headers, suspicious-content filtering, and audit logging were not actually active in any v2.0.x release before this one
  • ๐Ÿšจ Critical: PurchaseController::validatePurchase() no longer unconditionally bypasses license validation โ€” it returned before running any of its own logic, so a purchase code was never actually checked. Now gated by installer.purchase_validation.enabled (defaults to false, preserving prior default behavior for consumers who don't sell through Envato; real validation runs when enabled)
  • High: Added an optional IP allow-list / shared access-token gate for the entire install/update flow (installer.security.allowed_ips, installer.security.access_token) โ€” previously the only gate was a storage/installed lock file that doesn't exist until installation is complete, leaving every route (including database migrate/rollback and dependency-install) reachable by anyone who got there first
  • High: Sanitized .env writes in CacheQueueManager::updateEnvFile() to strip control characters, closing an env-line-injection path for the Redis queue-setup form (EnvironmentManager already had this protection; CacheQueueManager didn't)
  • High: DatabaseBackupManager::restoreBackup() now validates the backup identifier format before building a filesystem path from it
  • Medium: mysqldump/mysql/pg_dump/psql now receive database credentials via MYSQL_PWD/PGPASSWORD environment variables instead of a --password= CLI flag, so they're no longer visible in ps aux for the life of the process
  • Medium: Backup directories/files are now created with 0700/0600 permissions instead of world-readable defaults
  • Medium: Implemented the previously-declared-but-unused audit.sensitive_fields redaction in LogManager โ€” passwords/secrets are now stripped before any operation is written to the audit log
  • Medium: Fixed EnvironmentController::checkDatabaseConnection() mutating the application's ambient config('database') state during a connection test, which could leak the installer's test credentials into the rest of the request lifecycle

๐Ÿ› BUG FIXES

  • Fixed layouts/master.blade.php referencing nonexistent route names (LaravelInstaller::environment/LaravelInstaller::requirements), which threw a RouteNotFoundException whenever an error page (or the resume-installation page) tried to render
  • Fixed missing createPostgresBackup/restorePostgresBackup implementations โ€” the driver switch in DatabaseBackupManager referenced them, but they didn't exist, so any PostgreSQL install would fatally error on backup
  • Fixed DatabaseOptimizer::optimizeMemoryUsage() โ€” memory-limit recommendations were based on the current process's own memory usage rather than the configured memory_limit, and a MySQL-only PDO attribute was being set unconditionally on all drivers (would warn/fail on PostgreSQL/SQLite, both advertised as supported)
  • Fixed a broken Dockerfile/docker-compose.yml/package.json chain: docker-compose.yml mounted a nonexistent docker/nginx/default.conf, Dockerfile ran npm run build against a package.json with no build script, and the asset paths in package.json pointed at the wrong directory โ€” docker-compose up and a from-scratch npm run build both failed before this release

๐Ÿงน CLEANUP

  • Removed dead ad-hoc scripts test-installer.php / test-package.php from the repo root (not wired into CI, and test-package.php referenced a controller class that no longer exists)
  • Removed ~190KB of orphaned pre-Tailwind sass//scss/ source trees, an unreferenced style-prev.css, and unused CSS source maps โ€” none of it was reachable from the actual Tailwind build script or any view

๐Ÿ“š DOCUMENTATION

  • Added CODE_OF_CONDUCT.md (referenced by CONTRIBUTING.md since it was written, but never existed)
  • Rewrote SECURITY.md, which was an unmodified template: a fake supported-versions table (5.x/4.x for a package that has never shipped past 2.0.x) and a security@example.com placeholder contact
  • Fixed the README license link (pointed at LICENSE.md; the file is LICENSE)
  • Corrected the README's minimum PHP requirement (8.0 โ†’ 8.1, matching composer.json) and softened the "18+ languages supported" claim to reflect that most locales are partial

โš ๏ธ Known issues carried into this release

  • 14 of 19 non-English locale files remain incomplete (English is complete); see CONTRIBUTING.md if you'd like to help translate
  • Long-running install operations (database migration, backup, dependency install) still run synchronously within the request instead of being queued โ€” acceptable for typical installer usage, but can be slow against large databases
v2.0.7

๐Ÿ› BUG FIXES

  • โœ… Fixed version compatibility logic for OR constraints (e.g., ^9.0|^10.0|^11.0)
  • โœ… Fixed PHP package handling in dependency checker
  • โœ… Fixed dev version compatibility (e.g., 2.x-dev now matches ^2.10.1)
  • โœ… Fixed dependencies auto-check on page load
  • โœ… Added semi-transparent background to sidebar (#ffffff66)

๐Ÿ”ง IMPROVEMENTS

  • โœ… Enhanced dependency checker with proper constraint parsing
  • โœ… Improved error handling for dependency validation
  • โœ… Better visual feedback for dependency status
  • โœ… Auto-execution of dependency checks on page load
  • โœ… Detailed dependency information display (required vs installed versions)

๐Ÿ“ฑ UI ENHANCEMENTS

  • โœ… Added background overlay to installation sidebar
  • โœ… Improved dependency status indicators with icons
  • โœ… Better error messages for failed dependency checks
  • โœ… Enhanced visual hierarchy in dependency display
v2.0.0

๐Ÿš€ MAJOR RELEASE - COMPLETE REWRITE

โœ… NEW FEATURES IMPLEMENTED

Enhanced Security System

  • โœ… Global exception handlers with detailed logging (InstallerExceptionHandler)
  • โœ… Input sanitization and XSS prevention (SecurityMiddleware)
  • โœ… Rate limiting for installation endpoints (20 requests/5 minutes)
  • โœ… Security middleware with suspicious content detection
  • โœ… Comprehensive audit logging for compliance (LogManager)
  • โœ… Security headers (CSP, XSS Protection, Frame Options)

Database Backup & Recovery

  • โœ… Pre-migration database backup functionality (DatabaseBackupManager)
  • โœ… Automatic rollback on failed installations (DatabaseController::rollback)
  • โœ… Support for MySQL, PostgreSQL, and SQLite
  • โœ… Backup cleanup and management with cache storage
  • โœ… Batch migration support for large databases

Progress Tracking & Resumability

  • โœ… Visual progress bars with step indicators (ProgressTracker)
  • โœ… Installation state persistence with session storage
  • โœ… Resumable installations after interruption (ProgressMiddleware)
  • โœ… Real-time progress updates via AJAX API
  • โœ… 9-step installation flow with validation

Performance Monitoring

  • โœ… Execution time tracking with microsecond precision (PerformanceMonitor)
  • โœ… Memory usage monitoring and optimization
  • โœ… Performance dashboard with real-time metrics and charts
  • โœ… Database optimization for large installations (DatabaseOptimizer)
  • โœ… Performance headers in HTTP responses

Dependency Management

  • โœ… Composer dependency validation (DependencyChecker)
  • โœ… Version compatibility checking with detailed reports
  • โœ… Critical dependency enforcement (DependencyMiddleware)
  • โœ… Package installation automation via shell commands
  • โœ… Interactive dependency resolution interface

Cache & Queue Setup

  • โœ… Automated cache clearing and optimization (CacheQueueManager)
  • โœ… Queue driver configuration (sync, database, Redis)
  • โœ… Task scheduler setup with cron generation
  • โœ… Application performance optimization commands
  • โœ… Redis configuration with authentication support

๐Ÿ”ง ENHANCED FEATURES

Complete 9-Step Installation Process

  1. โœ… Welcome Screen
  2. โœ… Server Requirements Check
  3. โœ… File Permissions Validation
  4. โœ… Dependencies Check (NEW)
  5. โœ… Environment Configuration
  6. โœ… Database Configuration
  7. โœ… Database Backup & Migration (NEW)
  8. โœ… Cache & Queue Setup (NEW)
  9. โœ… Performance Dashboard (NEW)

New Controllers & APIs

  • โœ… DependencyController - Composer dependency management
  • โœ… PerformanceController - Real-time performance monitoring
  • โœ… ProgressController - Installation progress tracking
  • โœ… CacheQueueController - Cache and queue configuration
  • โœ… Enhanced DatabaseController - Backup and rollback support

New Middleware System

  • โœ… SecurityMiddleware - XSS protection and rate limiting
  • โœ… PerformanceMiddleware - Execution time and memory tracking
  • โœ… ProgressMiddleware - Installation step validation
  • โœ… DependencyMiddleware - Critical dependency checking
  • โœ… ExceptionHandlerMiddleware - Global error handling

New Views & UI

  • โœ… dependencies.blade.php - Interactive dependency checking
  • โœ… performance-dashboard.blade.php - Real-time metrics dashboard
  • โœ… cache-queue.blade.php - Cache and queue setup interface
  • โœ… database-backup.blade.php - Backup and migration interface
  • โœ… resume-installation.blade.php - Installation resumability

๐Ÿ›ก๏ธ SECURITY ENHANCEMENTS

  • โœ… Input validation and sanitization for all forms
  • โœ… Rate limiting and abuse prevention (IP-based)
  • โœ… Security headers and CSP implementation
  • โœ… Audit logging for compliance tracking
  • โœ… XSS and injection attack prevention
  • โœ… Suspicious content detection and blocking

โšก PERFORMANCE IMPROVEMENTS

  • โœ… Memory usage optimization with garbage collection
  • โœ… Database query optimization for large datasets
  • โœ… Cache management and optimization
  • โœ… Performance metrics and real-time monitoring
  • โœ… Batch processing for large operations
  • โœ… OPCache integration and optimization

๐ŸŒ MULTI-LANGUAGE SUPPORT

  • โœ… Extended translations for all new features
  • โœ… Support for 18+ languages
  • โœ… Contextual help text and descriptions

๐Ÿ“ฆ PACKAGE IMPROVEMENTS

  • โœ… Enhanced service provider with middleware registration
  • โœ… Console commands for cache management
  • โœ… Improved configuration publishing
  • โœ… Better asset management and optimization

๐Ÿ”„ API ENDPOINTS

  • โœ… /api/progress - Get installation progress
  • โœ… /api/dependencies/check - Check dependencies
  • โœ… /api/performance/metrics - Get performance metrics
  • โœ… /api/cache/clear - Clear application caches
  • โœ… /api/database/migrate - Run database migrations
  • โœ… /api/database/rollback - Rollback database changes
v1.0.3
  • Basic installation functionality
  • Environment configuration
  • Database setup
  • Purchase code validation
v1.0.2
  • Initial release features
v1.0.1
  • Bug fixes and improvements
v1.0.0
  • Basic Laravel installer functionality
Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
codifyo/ts-generator-bundle
andydefer/laravel-cluster
testo/fiber
mintobit/jobqueue
a4sex/maintenance-bundle
a4sex/entity-date-update
a4sex/client-identifier
a4sex/base-utilites
a4sex/key-value-storage
a4sex/micro-status
chilldev/dependency-injection-extra
datinglibre/datinglibre-app-api
biberltd/corebundle
bricre/symfony-bundle-test
biberltd/logbundle
dominium/http-adapter-bundle
dominium/google-analytics
a4sex/auto-clean-entity
christhompsontldr/laravel-inky
spatie/mailcoach-vapor