Skip to content

build: update dependencies to latest versions#393

Merged
usernane merged 11 commits into
mainfrom
dev
Jun 14, 2026
Merged

build: update dependencies to latest versions#393
usernane merged 11 commits into
mainfrom
dev

Conversation

@usernane

@usernane usernane commented Jun 13, 2026

Copy link
Copy Markdown
Member

Summary

Update all webfiori/* dependencies to their latest versions, fix bugs, and add new features for v3 stable.

Motivation

Prepare the framework for v3 stable release — update deps, fix session bugs, add health check features, add migrations:step command, fix middleware compatibility, and improve test reliability.

Changes

How to Test / Verify

All 994 tests pass across PHP 8.1–8.5. Run vendor/bin/phpunit --configuration tests/phpunit10.xml.

Breaking Changes and Migration Steps

None. All changes are backward compatible.

Checklist

  • I reviewed my own diff before requesting review
  • My commits follow Conventional Commits
  • I added/updated tests (or explained why not)
  • I updated docs (if needed) Docs Repo
  • I ran lint/cs-fixer (if applicable) (composer fix-cs)
  • I considered backward compatibility
  • I considered security

Related issues

Closes #387
Closes #388
Closes #389
Closes #391
Closes #392

Ibrahim BinAlshikh added 2 commits June 13, 2026 21:13
- webfiori/http: v5.0.* -> v6.0.*
- webfiori/file: v2.0.* -> v2.1.*
- webfiori/jsonx: v4.0.* -> v5.0.*
- webfiori/cli: v2.1.* -> v2.2.*
- webfiori/mailer: v2.1.* -> v2.2.*
- Add #[SingleInstance] attribute to CLI commands (cli 2.2)
- Update HelpCommandTest for new grouped help output format
- Move down/up to 'maintenance' group
- Move help/v to 'other' group
- Update HelpCommandTest to match new output
@codecov

codecov Bot commented Jun 13, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 83.67%. Comparing base (9131fcf) to head (b982bd6).
⚠️ Report is 4 commits behind head on main.

Additional details and impacted files
@@             Coverage Diff              @@
##               main     #393      +/-   ##
============================================
+ Coverage     83.37%   83.67%   +0.30%     
- Complexity     3062     3067       +5     
============================================
  Files           103      103              
  Lines          9004     9018      +14     
============================================
+ Hits           7507     7546      +39     
+ Misses         1497     1472      -25     
Flag Coverage Δ
php-8.1 82.59% <100.00%> (+0.25%) ⬆️
php-8.2 82.59% <100.00%> (+0.25%) ⬆️
php-8.3 92.08% <100.00%> (+0.11%) ⬆️
php-8.4 92.08% <100.00%> (+0.11%) ⬆️
php-8.5 91.95% <100.00%> (+0.11%) ⬆️

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

Ibrahim BinAlshikh added 5 commits June 13, 2026 22:32
When a browser sends a session cookie but storage has been cleared,
the framework now reuses the existing cookie ID for the new session
instead of generating a new one. This prevents the infinite
new-session loop where the browser perpetually sends the old cookie.

- Session::start() only regenerates ID when status is KILLED
- SessionManager::start() passes cookie ID to new session

Closes #389
Closes #388
- getChecks() returns registered checks for introspection
- afterAll() registers callbacks invoked after runAll() with aggregate results
- reset() now also clears afterAll callbacks

Closes #392
Closes #391
Allows stepping through pending migrations one at a time with
Apply/Skip/Quit prompts. Shows SQL preview for each migration
before prompting for action.

Closes #387
Ibrahim BinAlshikh added 4 commits June 14, 2026 00:25
- Use App::getRequest() instead of static Request::getUri()/getAuthHeader()
- Pass required storage path to FileStorage constructor
- Add tests for StartSessionMiddleware and CacheMiddleware

Closes #289
Assert isRunning() instead of exact SessionStatus::NEW to avoid
test ordering dependency in CI.
…Test

PHP 8.3 caches file_exists() results via realpath_cache, causing
the autoloader to not see newly created class files. clearstatcache()
forces a fresh filesystem check.
Register the test theme explicitly instead of relying on
pre-registered themes from bootstrap. Fixes skip in CI.
@sonarqubecloud

sonarqubecloud Bot commented Jun 14, 2026

Copy link
Copy Markdown

@usernane usernane merged commit 2611271 into main Jun 14, 2026
16 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment