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

valkyrjaio / valkyrja-php / 30719237452
100%

Build:
DEFAULT BRANCH: 26.x
Ran 01 Aug 2026 09:32PM UTC
Jobs 1
Files 1144
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

01 Aug 2026 09:29PM UTC coverage: 100.0%. Remained the same
30719237452

push

github

web-flow
[HttpClient] feat!: Configure the http client component with a typed config contract (#1007)

# Description

`Valkyrja\Application\Env\Env` is deprecated. It is one non-final class
that holds
about 120 `public const` env variables for every component at once. This
pull
request gives the Http Client component its own typed config contract
and its own
config class. It also converts `HttpClientServiceProvider` to read that
contract.

`HttpClientServiceProvider` no longer reads `Env`. An application that
sets
`Env::HTTP_CLIENT_DEFAULT` loses that setting, so this change breaks a
public
contract.

This pull request does not change `Env.php`. Each component gets its own
pull
request, and all of those pull requests are independent. A pull request
that
deleted its own constants would conflict with every sibling pull request
on that
one file. `Env` therefore stays in place and goes unread. A later pull
request
removes the whole class.

The shape follows `Cli\Interaction`:

- `HttpClientConfigContract` is the container binding key. The
application can
implement the contract on its own `Config` class. `publishConfig` then
binds
  that object.
- `HttpClientConfig` is the default. `publishConfig` binds a new
instance when
  the application config does not implement the contract.

The Http Client component reads one env constant, so the config class
holds one
property and needs no nested adapter config.

This is one of 14 pull requests that give each component its own config
contract.
See #1002 for the first one, which describes the pattern in full.

## Types of changes

- [ ] Improvement _(non-breaking change which improves code)_
- [ ] Bug fix _(non-breaking change which fixes an issue)_
- [x] 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

-
**`src/Va... (continued)

19 of 19 new or added lines in 2 files covered. (100.0%)

12626 of 12626 relevant lines covered (100.0%)

23.77 hits per line

Jobs
ID Job ID Ran Files Coverage
1 30719237452.1 01 Aug 2026 09:32PM UTC 1144
100.0
GitHub Action Run
Source Files on build 30719237452
  • Tree
  • List 1144
  • Changed 1
  • Source Changed 1
  • Coverage Changed 1
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #30719237452
  • b4c0bd96 on github
  • Prev Build on 26.x (#30719226954)
  • Next Build on 26.x (#30719344272)
  • Delete
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE TRIAL · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc