Skip to content

chore: fix composer dependencies and stop committing composer.lock - #25

Merged
MostafaShehab merged 2 commits into
masterfrom
chore/composer-dependencies
Nov 12, 2026
Merged

MostafaShehab merged 2 commits into
masterfrom
chore/composer-dependencies

Conversation

@omarabdelazizgamal

@omarabdelazizgamal omarabdelazizgamal commented Nov 12, 2026 •

Copy link
Copy Markdown
Collaborator

Summary

Fixes the dependency setup of the package and removes the committed composer.lock, which is the source of the open Dependabot alerts.

Closes #24

Why

  • composer.lock should not be in a library. The app that installs Resala resolves its own versions, so the lock was never used by consumers. It pinned an old Laravel 10 dev setup (laravel/framework 10.50.2, Symfony 6.x, league/commonmark, older Guzzle/psr7), which produced all 42 open Dependabot alerts. They should close once this is merged.
  • Missing dependencies. The code uses packages that composer.json never declared:
    • illuminate/console: PublishProviderEnvVariablesCommand extends Illuminate\Console\Command.
    • illuminate/filesystem: the same command uses the File facade.
    • psr/http-message: drivers and responses type-hint ResponseInterface.
    • mockery/mockery: used by the tests, previously only pulled in through testbench.
  • Version ranges. master allowed Laravel 9 (end of life) but not Laravel 13, and the testbench/PHPUnit ranges didn't match the Laravel range.

Breaking changes

  • Laravel 9 is no longer supported.
  • Apps must be able to install guzzlehttp/guzzle 7.15.2 or later. That's the first release with the fixes for the Guzzle advisories.

I suggest releasing this as 3.0.0. The latest tag, 2.3.5, only supports Laravel 9 and 10, so the Laravel 11 and 12 work already on master (#22, #23) isn't installable from Packagist until a new release is tagged.

Security notes

The latest releases of every supported major version have no known advisories, with one exception: laravel/framework 10.x and 11.x still have three advisories that weren't fixed for those versions (email rule CRLF injection, signed URL path confusion, debug page XSS). Resala doesn't depend on laravel/framework, only on illuminate/support, console and filesystem, which have no advisories. Apps on Laravel 10 or 11 are affected whether or not they use Resala.

@MostafaShehab
MostafaShehab merged commit e0f0b35 into master Nov 12, 2026
1 check passed
@MostafaShehab
MostafaShehab deleted the chore/composer-dependencies branch November 12, 2026 11:20
@ahmadalfy

Copy link
Copy Markdown
Member

@omarabdelazizgamal then we should release v3.0.0 as this breaks the compatility

@omarabdelazizgamal

Copy link
Copy Markdown
Collaborator Author

@omarabdelazizgamal then we should release v3.0.0 as this breaks the compatility

This is now released: https://github.com/RobustaStudio/Resala/releases/tag/v3.0.0

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Multiple Critical and High Vulnerabilities in dependencies

3 participants