Skip to content

Instantly share code, notes, and snippets.

ignoreErrors:
message: '#Method (.+) should return (.+) but returns Illuminate\\Database\\Eloquent\\Model.#'
path: ./app/*
-
message: '#Access to an undefined property (.+)\\Eloquent\\(.+).#'
paths:
- ./app/*
- ./tests/*
-
message: '#Parameter (.+) of method (.+) expects Library\\Eloquent\\(.+), Illuminate\\Database\\Eloquent\\Builder|Illuminate\\Database\\Eloquent\\Model given.#'
  • Name: refinement_rfc_guidelines
  • Date: TBD
  • Author: Marco Deleu [email protected]
  • Proposed Version: PHP 8.2

PHP RFC: Feature Freeze Guidelines

Introduction

Since the Release Process RFC from 11 years ago, PHP has greatly matured and evolved on all fronts. The predictable and consistent release

<?php
class RemoveUserTest extends DatabaseTestCase
{
protected function setUp(): void
{
parent::setUp();
Schema::create('users', function (Blueprint $table) {
$table->increments('id');
{
"awsvpcConfiguration": {
"subnets": ["subnet-your-subnet-id"],
"securityGroups": ["sg-your-security-group-id"],
"assignPublicIp": "ENABLED"
}
}
aws ecs run-task \
--cluster your_cluster_name \
--task-definition your_task_definition_name-artisan \
--overrides "{\"containerOverrides\":[{\"name\":\"artisan\",\"command\":[\"php\",\"/app/artisan\",\"$1\"]}]}" \
--launch-type FARGATE \
--network-configuration file://$(pwd)/amazon/network.json \
--profile your_aws_profile
version: 0.2
phases:
pre_build:
commands:
- $(aws ecr get-login --region $AWS_REGION --no-include-email)
- TAG="$(echo $CODEBUILD_RESOLVED_SOURCE_VERSION | head -c 8)"
- BUILD_URL="${REPOSITORY_URL}:${TAG}"
build:
commands:
- 'echo "{\"Parameters\":{\"CommitHash\":\"$TAG\"}}" > build.hash.json'
#BASE
FROM alpine:3.8 as base
RUN apk update \
&& apk add php7-pdo_mysql php7-json php7-tokenizer php7-mbstring php7-iconv php7-session php7-bcmath php7-simplexml
#DEPENDENCIES
FROM base as dependencies
COPY docker /
<?php
namespace App\Modules\Authors\Resources;
use App\Modules\Books\Resources\BookResource;
use Illuminate\Http\Resources\Json\Resource;
class AuthorResource extends Resource
{
public function toArray($request)
<?php
namespace App\Modules\Authors;
use App\Eloquent\Author;
use App\Modules\Authors\Resources\AuthorResource;
class ListAuthors
{
public function __invoke(Author $author)
<?php
use App\Modules\Authors\ListAuthors;
use Illuminate\Support\Facades\Route;
Route::get('/authors', ListAuthors::class);