• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

valkyrjaio / valkyrja-php / 24648724889
100%

Build:
DEFAULT BRANCH: 26.x
Ran 20 Apr 2026 04:40AM UTC
Jobs 1
Files 1161
Run time 2min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

20 Apr 2026 04:39AM UTC coverage: 100.0%. Remained the same
24648724889

push

github

web-flow
[Application] Refactor Config to explicit interfaces (#767)

# Description

Refactors the config system away from class inheritance toward explicit
interfaces. Introduces `CliConfigContract`, `HttpConfigContract`, and
`ConfigContract` under `Application\Data\Contract`. Renames all generic
`ConfigContract` files across CLI and HTTP components to
component-prefixed names (e.g. `CliInteractionConfigContract`,
`CliRoutingConfigContract`) for clarity and to avoid naming collisions.
Removes the now-redundant `Cli\Middleware` and `Http\Middleware` config
contracts.

## Types of changes

- [X] Improvement _(non-breaking change which improves code)_
- [ ] Bug fix _(non-breaking change which fixes an issue)_
- [ ] New feature _(non-breaking change which adds functionality)_
- [ ] Deprecation _(breaking change which removes functionality)_
- [X] Breaking change _(fix or feature that would cause existing
functionality to change)_
- [ ] Documentation improvement

## Changes

- **`Application\Data\Contract\ConfigContract`** — added; base
application config interface
- **`Application\Data\Contract\CliConfigContract`** — added; interface
for CLI application config
- **`Application\Data\Contract\HttpConfigContract`** — added; interface
for HTTP application config
- **`CliConfig`** — changed from extending `Config` to implementing
`CliConfigContract`
- **`Cli\Interaction\Data\Config`** →
**`Cli\Interaction\Data\CliInteractionConfig`** — renamed; contract
renamed to `CliInteractionConfigContract`
- **`Cli\Routing\Data\Contract\ConfigContract`** →
**`Cli\Routing\Data\Contract\CliRoutingConfigContract`** — renamed
- **`Cli\Server\Data\Contract\*ConfigContract`** — renamed with explicit
`Cli` prefix throughout
- **`Cli\Middleware\Data\Contract\ConfigContract`** — removed
- **`Http\Middleware\Data\Contract\ConfigContract`** — removed
- **`.github/ci/psalm/psalm.xml`** — suppressed `NoInterfaceProperties`
for property hooks support

> [!WARNING]
> This is a breaking change. ... (continued)

65 of 65 new or added lines in 14 files covered. (100.0%)

13040 of 13040 relevant lines covered (100.0%)

16.01 hits per line

Jobs
ID Job ID Ran Files Coverage
1 24648724889.1 20 Apr 2026 04:40AM UTC 1161
100.0
GitHub Action Run
Source Files on build 24648724889
  • Tree
  • List 1161
  • Changed 24
  • Source Changed 24
  • Coverage Changed 8
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #24648724889
  • df59fd48 on github
  • Prev Build on 26.x (#24646352826)
  • Next Build on 26.x (#24649313214)
  • Delete
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc