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

Phar Builder Bundle Laravel Package

efrane/phar-builder-bundle

View on GitHub
Deep Wiki
Context7

Application and Kernel customization

By default, EFrane\PharBuilder\Application\PharApplication and EFrane\PharBuilder\Application\PharKernel are used as application and kernel class.

This, however, is completely customizable and may become necessary depending on your use case.

::: tip As a refresher, you should read the Symfony documentation on Console Applications. :::

Configuration

Aside from extending your custom Application or Kernel classes from the above mentioned interfaces, you need to tell the Phar Builder about their existence:

# in config/phar_builder.yaml

phar_builder:
  application_class: Your\Custom\Application
  kernel_class: Your\Custom\Kernel

How does the default Kernel differ from Symfony's?

The short answer: Not much. It assumes the default directory structure and looks for your service and application configuration in the appropriate places.

The longer answer: It's in the details. Day to day use of the Kernel is not different at all. However, Phars pose some unique constraints like being a read-only filesystem and having a build phase. These lead to some changes around path management.

What methods not to touch

As a result of the problem space, all path related methods have been specially catered. You should therefore refrain from changing any of the below unless you know what you're doing:

  • getCacheDir
  • getLogDir
  • getProjectDir

Additionally, the process of building and loading the dependency injection container has been modified to match the needs, this adds a few more methods to be very careful with:

  • configureContainer
  • initializeContainer
  • getConfigCache
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.
directorytree/privacy-filter-classifier
directorytree/privacy-filter
datacore/hub-sdk
develia/commons
cuci/prototurk-sdk
cuci/prototurk-sdk-symfony
develia/geo-bundle
dreamzy/livewire-charts
touchestate-sdk/php-sdk
22h/doctrine-garbage-collection-bundle
agtp/agtp-php
agtp/mod-php
splash/sonata-admin
splash/metadata
splash/openapi
splash/scopes
splash/toolkit
testo/output-teamcity
testo/bridge-symfony
spatie/flare-daemon-runtime