To encourage active collaboration, Laravel strongly encourages pull requests, not just bug reports. "Bug reports" may also be sent in the form of a pull request containing a failing test.
However, if you file a bug report, your issue should contain a title and a clear description of the issue. You should also include as much relevant information as possible and a code sample that demonstrates the issue. The goal of a bug report is to make it easy for yourself - and others - to replicate the bug and develop a fix.
Remember, bug reports are created in the hope that others with the same problem will be able to collaborate with you on solving it. Do not expect that the bug report will automatically see any activity or that others will jump to fix it. Creating a bug report serves to help yourself and others start on the path of fixing the problem.
The Laravel source code is managed on Github, and there are repositories for each of the Laravel projects:
- Laravel Framework
- Laravel Application
- Laravel Documentation
- Laravel Cashier
- Laravel Envoy
- Laravel Homestead
- Laravel Homestead Build Scripts
- Laravel Website
- Laravel Art
Discussion regarding bugs, new features, and implementation of existing features takes place in the #internals
channel of the LaraChat Slack team. Taylor Otwell, the maintainer of Laravel, is typically present in the channel on weekdays from 8am-5pm (UTC-06:00 or America/Chicago), and sporadically present in the channel at other times.
All bug fixes should be sent to the latest stable branch. Bug fixes should never be sent to the master
branch unless they fix features that exist only in the upcoming release.
Minor features that are fully backwards compatible with the current Laravel release may be sent to the latest stable branch.
Major new features should always be sent to the master
branch, which contains the upcoming Laravel release.
If you are unsure if your feature qualifies as a major or minor, please ask Taylor Otwell in the #internals
channel of the LaraChat Slack team.
If you discover a security vulnerability within Laravel, please send an e-mail to Taylor Otwell at [email protected]. All security vulnerabilities will be promptly addressed.
Laravel follows the PSR-2 coding standard and the PSR-4 autoloading standard.
@param
tags should not be aligned and arguments should be separated by 2 spaces.
Here's an example block:
/**
* Register a binding with the container.
*
* @param string|array $abstract
* @param \Closure|string|null $concrete
* @param bool $shared
* @return void
*/
public function bind($abstract, $concrete = null, $shared = false)
{
//
}
You may use the PHP-CS-Fixer to fix your code style before committing.
To get started, install the tool globally and check the code style by issuing the following terminal command from your project's root directory:
php-cs-fixer fix