https://pact.io logo
Join Slack
Powered by
# pact-php
  • g

    GitHub

    05/18/2024, 1:16 AM
    Release - 10.0.0-beta1 New release published by tienvx What's Changed • deps: Remove repository for pact-foundation/composer-downloads-plugin by @tienvx in #545 • docs: Update badges by @tienvx in #546 • docs: Use table to show supported specifications by @tienvx in #547 • docs: Add PHP Compatibility column to table by @tienvx in #548 • deps: Update ffi library to 0.4.19 by @tienvx in #550 • docs: Add preamble to readme by @tienvx in #553 • feat: Support 'arrayContains' matcher in query and header by @tienvx in #551 • chore: arrayContains and eachValue example for query and header by @tienvx in #552 • docs: Make comments more readable by @tienvx in #554 • docs: Move RELEASING.md to docs/ by @tienvx in #555 • docs: Move additional examples to docs/ by @tienvx in #556 • chore: Use both pactffi_set_comment and pactffi_add_text_comment by @tienvx in #557 • docs: Fix wrong variable by @tienvx in #558 • docs: Reorganize provider usage in readme by @tienvx in #559 • docs: Add Framework Integrations section to readme by @tienvx in #562 • docs: Update links to examples by @tienvx in #561 • deps: Update composer-downloads-plugin to 2.0 by @tienvx in #563 • chore: Use intersection types feature by @tienvx in #565 • chore: Add void return type to tests by @tienvx in #566 • chore: Add parameter type by @tienvx in #567 • chore: Fix bool to int casting errors by @tienvx in #568 • chore: Throw SocketNotOpenException by @tienvx in #569 • chore: Add more void return type by @tienvx in #570 • chore: Fix wrong types by @tienvx in #571 • chore: Specify type of array by @tienvx in #572 • chore: Assert json encoded value is string by @tienvx in #573 • chore: Use class-string PHPdoc by @tienvx in #574 • chore: Fix 'Variable $key might not be defined' by @tienvx in #575 • chore: Fix 'Match expression does not handle remaining value' by @tienvx in #576 • chore: Fix copy paste issues in MinimalFormatterTest by @tienvx in #577 • chore: Fix variable not callable by @tienvx in #579 • chore: Assert variable is string by @tienvx in #581 • chore: Fix call to undefined method by @tienvx in #582 • chore: PHPStan ignore line by @tienvx in #580 • chore: Fix wrong type by @tienvx in #578 • chore: Static code analysis for tests by @tienvx in #564 • docs(chore): remove erroneous span closing tag by @YOU54F in #583 • docs: Update ADDITIONAL-EXAMPLES.md by @YOU54F in #585 • docs(ci): add trigger update to docs.pact.io by @YOU54F in #584 • docs: Fix PHP version in wrong column by @tienvx in #587 • refactor: Use intersection types by @tienvx in #588 • refactor: Apply Visitor pattern for MatchingField matcher by @tienvx in #589 • refactor: Apply Visitor pattern for NotEmpty matcher by @tienvx in #590 • Revert "refactor: Apply Visitor pattern for NotEmpty matcher" by @tienvx in #594 • Revert "refactor: Apply Visitor pattern for MatchingField matcher" by @tienvx in #595 • refactor: Use intersection types by @tienvx in #596 • feat: Allow combining matchers by @tienvx in #597 • refactor: Extract traits by @tienvx in #598 • Formatter factory method by @tienvx in #599 • docs(chore): fix releasing doc heading by @YOU54F in #586 • refactor: Add formatters for Min/Max Type matchers by @tienvx in #601 • docs: Fix missing single quote in comment by @tienvx in #603 • docs: Refactor readme using structure from pact-js by @tienvx in #604 • ci: Upload code coverage to coveralls by @tienvx in #605 • docs: Fix contributors image in readme by @tienvx in #606 • doc… pact-foundation/pact-php
    🙌 3
  • v

    Val Kolovos

    05/22/2024, 6:59 PM
    @Val Kolovos has left the channel
  • t

    Taha Shakibania

    05/27/2024, 11:03 AM
    @Taha Shakibania has left the channel
  • j

    Jason Sunde

    05/28/2024, 3:22 PM
    @Jason Sunde has left the channel
  • g

    georgia andrews

    06/03/2024, 5:40 PM
    @georgia andrews has left the channel
  • p

    PK

    06/04/2024, 3:45 AM
    @PK has left the channel
  • s

    Stephen Bell

    06/18/2024, 10:28 PM
    @Stephen Bell has left the channel
  • g

    GitHub

    06/20/2024, 3:52 PM
    Release - 10.0.0-beta2 New release published by tienvx What's Changed • fix: update libpact_ffi to 0.4.21 by @YOU54F in #617 • ci: Upgrade PHP to 8.3 by @tienvx in #618 Full Changelog: 10.0.0-beta1...10.0.0-beta2 pact-foundation/pact-php
    🙌 3
  • j

    Jocelyn Lecomte

    07/25/2024, 9:22 AM
    @Jocelyn Lecomte has left the channel
  • r

    Rachel Loziuk

    07/25/2024, 3:05 PM
    Hello. We are using pact-js for the consumer (@pact-foundation/pact": "^12.1.3") and pact-php 10 for the provider. Our goal is to inject values from the provider state setup into the consumer test using the matcher `fromProviderState.`I assume the returned value from the provider callback will be used by the consumer. However I don't see any mention of the return type or structure in the pact-php docs. Are there any examples of what the provider state callback should return so that we can invoke
    fromProviderState
    on the consumer side? @Megan Honig
    m
    t
    • 3
    • 5
  • i

    Inken

    07/25/2024, 3:21 PM
    @Inken has left the channel
  • d

    Diego Betancur

    07/29/2024, 4:44 PM
    @Diego Betancur has left the channel
  • m

    Megan Honig

    07/30/2024, 6:55 PM
    @Megan Honig has left the channel
  • a

    Anthony Hindle

    07/31/2024, 2:39 PM
    @Anthony Hindle has left the channel
  • r

    Rachel Loziuk

    08/22/2024, 9:37 AM
    With pact-php 10, is there any way to add a request filter on the provider side? Specifically, to add a session token to the request header. Looks like pact-js library has this capability, but I haven't found anything in pact-php. https://github.com/pact-foundation/pact-js/blob/master/docs/provider.md#modify-requests-prior-to-verification-request-filters
    m
    a
    t
    • 4
    • 6
  • r

    Rachel Loziuk

    08/28/2024, 11:10 AM
    Hello again. I might be asking the same question. But I thought I'd try anyway. Our team is using pact-js for the client and pact-php for the provider. Our goal is to implement contract testing for our API, which is currently consumed by a single client which builds a web-based application. Our api is very stateful. And we need to have something which glues individual api calls into a shared session state. For example, we have an api endpoint like
    api/user/{userId}/articles/getAll
    Using Pact 3, we have written a contract test to verify
    articles/getAll
    . The test is able to rely on an actual userId that the provider state created. However, the above example will not respond if the caller is not authenticated. We can create a session, generate an auth bearer token, and return it from the provder state setup. But unless that token is added to the request, the api will not respond with any data. Kindly, are there any recommendations from the Pact community on how we can achieve this?
    👋 1
    m
    s
    t
    • 4
    • 4
  • g

    GitHub

    09/06/2024, 10:27 AM
    Release - 10.0.0 New release published by tienvx What's Changed • docs: document multiple interactions by @individual-it in #620 • feat: Allow debug mock server in compatibility suites by @tienvx in #621 • fix: Fix type error in PHPUnit's configuration registry (temporarily) by @tienvx in #622 • Fix wrong content type in protobuf plugin 0.5 by @tienvx in #623 • fix: update pact-ffi to 0.4.22 by @YOU54F in #619 • fix: Fix 'Exception: String could not be parsed as XML' in xml's consumer test by @tienvx in #624 • chore: Update generated pact files by @tienvx in #625 • feat: Allow add custom provider headers by @tienvx in #627 • deps: Update ffi library to 0.4.23 by @tienvx in #629 New Contributors • @individual-it made their first contribution in #620 Full Changelog: 10.0.0-beta2...10.0.0 pact-foundation/pact-php
    🚀 1
    y
    t
    • 3
    • 3
  • b

    Bertold Kolics

    09/08/2024, 8:12 PM
    @Bertold Kolics has left the channel
  • m

    Marcus Couto

    10/04/2024, 4:16 PM
    @Marcus Couto has left the channel
  • g

    GitHub

    11/01/2024, 10:21 AM
    Release - 10.1.0-beta1 New release published by tienvx What's Changed • ci: Run all examples at once on windows by @tienvx in #637 • refactor: Split autoload for each example by @tienvx in #633 • feat: Add graphql example by @tienvx in #634 • deps: Allow update to PHPUnit 11.3 by @tienvx in #635 • feat: Add variables to graphql example by @tienvx in #638 • Use body parsing middleware by @tienvx in #639 • refactor: Install rector and auto refactor by @tienvx in #640 • refactor: Use PHP 8.0 constructor property promotion feature by @tienvx in #642 • chore: Add type hint by @tienvx in #643 • refactor: Wrap ffi call > pactffi_with_multipart_file_v2 by @tienvx in #644 • refactor: Wrap ffi call > pactffi_with_binary_file by @tienvx in #645 • refactor: Wrap ffi call > pactffi_with_body by @tienvx in #646 • refactor: Use ffi call wrappers by @tienvx in #647 • refactor: Wrap ffi call > get specification enum methods by @tienvx in #648 • refactor: Use ffi call wrappers by @tienvx in #649 • refactor: FFI client hide get() method by @tienvx in #650 • refactor: Move helper code to new directory by @tienvx in #651 • feat: Add composer test coverage command by @tienvx in #653 • refactor: Wrap ffi call > set interaction attributes methods by @tienvx in #652 • refactor: Wrap ffi call > new interaction methods by @tienvx in #654 • refactor: Wrap ffi call > setup interaction methods by @tienvx in #655 • refactor: Wrap ffi call > setup message interaction methods by @tienvx in #656 • fix: Fix wrong value of env PACT_DO_NOT_TRACK by @tienvx in #658 • refactor: Wrap ffi call > setup pact methods by @tienvx in #657 • refactor: Wrap ffi call > setup mock server methods by @tienvx in #659 • refactor: Wrap ffi call > setup verifier methods by @tienvx in #660 • Wrap ffi call remaining methods by @tienvx in #661 • Ffi client hide call method by @tienvx in #662 • refactor: PHPStan max level > Fix 'expects string, string|null given' by @tienvx in #663 • refactor: PHPStan max level > Fix 'Cannot call method on null' by @tienvx in #664 • refactor: PHPStan max level > Fix 'Property does not accept null' by @tienvx in #665 • refactor: PHPStan max level > Fix wrong return type by @tienvx in #666 • refactor: PHPStan max level > Fix wrong parameter type by @tienvx in #667 • refactor: PHPStan max level > Fix wrong parameter type by @tienvx in #669 • refactor: PHPStan max level > Fix 'Cannot access property on null' by @tienvx in #668 • refactor: PHPStan max level > Fix errors on tests by @tienvx in #670 • chore: Update PHPStan level to max by @tienvx in #671 • refactor: Replace Slim Framework by Framework X by @tienvx in #673 • refactor: Compare strings directly by @tienvx in #674 • refactor: Define enums by @tienvx in #676 • feat: Support string contains single quote in matching expression by @tienvx in #675 • refactor: Merge formatters into matchers by @tienvx in #677 • feat: Support generators in more matchers by @tienvx in #678 • feat: Support fromProviderState generator in matching expression by @tienvx in #679 • refactor: Use 'never' return type by @tienvx in #682 • chore: Add semver generator example by @tienvx in #680 • chore: Add eachValue matcher's complex value example by @tienvx in #681 • docs: Fix running example commands by @tienvx in #683 • docs: Mark version 10 stable by @tienvx in #684 • chore(compatibility-suite): Show log by @tienvx in #686 • fix(compatibility-suite): Clean up mock server by @tienvx in #688 • feat: Allow logging to multiple sinks by @tienvx in #689 • feat: Provider state > allow param mixed value by @tienvx in #691 *Full Changel… pact-foundation/pact-php
  • g

    Gianluca Ciccarelli

    11/22/2024, 2:08 PM
    @Gianluca Ciccarelli has left the channel
  • s

    Shakil Riyad

    11/25/2024, 9:57 PM
    @Shakil Riyad has left the channel
  • t

    Thomas Su

    12/16/2024, 2:16 AM
    @Tien Vo After I upgraded pact from version 8 to 10, I noticed the
    pactSpecification
    was changed from
    Copy code
    "pactSpecification": {
          "version": "2.0.0"
        }
    to
    Copy code
    "pactSpecification": {
          "version": "3.0.0"
     }
    Is there a way to keep it
    2.0.0
    ?
    t
    • 2
    • 2
  • p

    Pietro Di Bello

    12/17/2024, 11:22 AM
    @Pietro Di Bello has left the channel
  • g

    GitHub

    01/04/2025, 6:50 AM
    Release - 10.1.0 New release published by tienvx What's Changed • ci: Test PHP 8.4 by @tienvx in #693 • chore: Configure Renovate by @renovate in #695 • style: Fix method return type hint by @tienvx in #697 • deps: Upgrade to PHPStan 2.0 by @tienvx in #694 • chore: Don't validate example value with regex by @tienvx in #696 • feat: Dont allow null as example value by @tienvx in #701 • docs: Add troubleshooting doc (logging) by @tienvx in #704 • deps: Replace pact broker docker image by @tienvx in #706 • deps: Tell renovate to ignore docker-compose.yml by @tienvx in #707 • chore(deps): pin dependencies by @renovate in #698 • chore: Remove unused code by @tienvx in #708 • fix: Fix PHPStan no error to ignore by @tienvx in #709 • chore(deps): update dependency clue/framework-x to ^0.17.0 by @renovate in #710 • chore(deps): update shivammathur/setup-php digest to 9e72090 by @renovate in #711 • chore: Add form urlencoded example by @tienvx in #630 New Contributors • @renovate made their first contribution in #695 Full Changelog: 10.1.0-beta1...10.1.0 pact-foundation/pact-php
  • g

    GitHub

    01/09/2025, 3:04 PM
    Release - 10.1.1 New release published by tienvx What's Changed • chore(ci): prevent duplicate ci triggers by @JP-Ellis in #714 • chore(deps): update docker/setup-qemu-action digest to 53851d1 by @renovate in #712 • docs: Add use statements by @tienvx in #715 • fix: Revert breaking changes to FFI\Client::call and FFI\Client::get by @tienvx in #716 New Contributors • @JP-Ellis made their first contribution in #714 Full Changelog: 10.1.0...10.1.1 pact-foundation/pact-php
  • r

    Romain Létendart

    01/31/2025, 4:56 PM
    @Romain Létendart has left the channel
  • s

    Spencer

    02/11/2025, 3:34 PM
    @Spencer has left the channel
  • d

    Dominik Krichbaum

    02/26/2025, 2:22 PM
    @Dominik Krichbaum has left the channel
  • m

    Martin Mineo

    03/07/2025, 1:16 PM
    @Martin Mineo has left the channel