- Can I use this package in a pure Laravel project without Symfony dependencies?
- The package is Symfony-centric, relying on Doctrine ORM and Symfony Console. For Laravel, you’ll need to bridge Symfony components (e.g., `symfony/console`) or rewrite CLI tools as Artisan commands. Consider using `laravel-doctrine/orm` for Doctrine support, but expect migration conflicts with Eloquent.
- What Laravel versions does this package support?
- Officially, it targets Laravel 9.x+ with PHP 8.4+. Earlier Laravel versions (pre-9.x) are unsupported due to PHP 8.4+ requirements. If using Laravel <9, isolate the package in a microservice or upgrade your stack.
- How do I handle database migrations if I’m already using Eloquent?
- The package uses Doctrine migrations, which may conflict with Eloquent’s schema. Run `php bin/console doctrine:migrations:diff --dry-run` to audit conflicts, then adapt migrations to Eloquent syntax or use raw SQL. Test rollbacks thoroughly in staging.
- Does this package support serialized/expired goods tracking for FDA or EU FMD compliance?
- Yes, it includes built-in features like serial number generation, expiration tracking, and audit logs, which directly address FDA 21 CFR Part 11 and EU FMD requirements. However, validate if additional tooling (e.g., electronic signatures) is needed for your specific compliance needs.
- How do I install and configure the package in Laravel?
- Run `composer require baks-dev/manufacture-part baks-dev/users-table`, then install assets with `php bin/console baks:assets:install`. For Laravel, replace Symfony’s `bin/console` with Artisan commands or wrap the package using `spatie/laravel-package-tools`.
- What’s the impact of this package on performance for large-scale batches (e.g., 10K+ records)?
- Performance depends on Doctrine query optimization. Test with `doctrine:query:sql` to analyze batch queries. For large datasets, consider indexing `batch_part` tables and batching operations. Monitor memory usage during migrations in production.
- Is there a way to avoid vendor lock-in with `baks-dev/core/users-table`?
- Yes, fork the dependency or replace it with Laravel equivalents like `spatie/laravel-permission` for auth. Document changes in your `composer.json` to avoid future updates overriding your customizations.
- How do I run tests for the manufacture-part module?
- Execute `php bin/phpunit --group=manufacture-part` in the project root. Ensure your test environment mirrors production (e.g., Doctrine schema, PHP 8.4+). For Laravel, mock Symfony dependencies or use a hybrid testing setup.
- Can I use this package in a non-PHP stack (e.g., Node.js or Python)?
- No, this package is PHP/Symfony-specific. For batch tracking in other stacks, consider alternatives like NestJS (Node.js) or Django (Python). If migrating later, design your API endpoints to abstract core logic.
- What’s the long-term maintenance strategy if the package stops receiving updates?
- The MIT license allows forking. Plan to fork critical components (e.g., Doctrine migrations) early. Monitor GitHub issues for breaking changes. For production, consider commercial support or rewriting high-risk dependencies (e.g., CLI tools) as Artisan commands.