https://pact.io logo
Join Slack
Powered by
# maintainers
  • y

    Yousaf Nabi (pactflow.io)

    04/01/2026, 10:07 AM
    No worries dude, if anyone does turn up, just drop me a ping here and I will pop in. Outside of that, if you want to reach out directly anytime, just holla
    thankyou 1
  • m

    Matt (pactflow.io / pact-js / pact-go)

    04/15/2026, 9:56 AM
    Likely to miss tonight sorry team. Just getting the kids down and forgot about TZ shift
  • m

    Matt (pactflow.io / pact-js / pact-go)

    04/15/2026, 9:57 AM
    Scrap that, wife will deal with them. But might be a few mins late
    smooth parrot 2
  • r

    rholshausen

    04/21/2026, 1:34 AM
    Wow, look what Google did: https://github.com/google/magika
    👍 1
    m
    • 2
    • 6
  • r

    rholshausen

    05/05/2026, 6:24 AM
    The CI builds in the pact-reference are extremely slow (sometimes over an hour). This is mainly queue time waiting for MacOS agents. It currently runs both intel and arm MacOS agents, which I think is a waste as the OS is not going to behave differently on the different architectures. I'm going to remove the intel build, and reduce the matrix a bit.
    y
    • 2
    • 2
  • r

    rholshausen

    05/21/2026, 4:59 AM
    Coming back to the Pact Plugin proposals. There has been no work on this since 2024, because busy. I have got Mr Claude to revise the proposals and we have broken them down into a number of smaller ones and also fixed a lot of things that were just confusing or no longer relevant. Docos are here: https://github.com/pact-foundation/pact-plugins/blob/main/docs/proposals/README.md
    👀 2
    ❤️ 1
    m
    t
    • 3
    • 9
  • r

    rholshausen

    06/22/2026, 2:22 AM
    PR to cleanup logging with plugins: https://github.com/pact-foundation/pact-plugins/pull/99
    cool doge flip 1
    👍 1
    smooth parrot 1
  • m

    Matt (pactflow.io / pact-js / pact-go)

    06/22/2026, 7:15 AM
    This (and related work) would be good to discuss at this Wednesday’s maintainer catch up ^^
    💯 1
  • r

    rholshausen

    06/29/2026, 12:01 AM
    I have been going around in circles thinking about how to support simpler Pact plugins, especially when we want to have plugins that can provide new matchers and/or generators. I have come back to using scripting languages as a good candidate for that. I did a spike a few years ago with a Lua content type plugin supporting JWT and that seemed to work ok but only with Rust. A brief investigation for JVM support, and I think it is doable for both Lua and Python. Javascript is a bit more of a problem, firstly they have dropped the Nashorn engine from the JVM in JDK 15, but it is a separate project now so we could still use it. Also, it will be supporting pure JavaScript not Node, and will require something like Webpack to bundle the plugin code.
    👀 1
    m
    • 2
    • 8
  • r

    rholshausen

    07/03/2026, 1:35 AM
    Have a brief investigation (using Claude) on supporting Python for plugins. Proposal written up in github.com/pact-foundation/pact-plugins/blob/…/010_Support_Python_script_plugins.md
    👀 1
    j
    a
    • 3
    • 21
  • m

    Matt (pactflow.io / pact-js / pact-go)

    07/08/2026, 9:51 AM
    Sorry folks, I'm a decline for tonight's call. Had to duck out to pickup some furniture for kids and need to get dinner before my next meeting
    hug blob but its okay because theyre vaccinated 1
    y
    • 2
    • 1
  • y

    Yousaf Nabi (pactflow.io)

    07/08/2026, 10:03 AM
    With you in 5 @Joshua Ellis
  • r

    rholshausen

    07/19/2026, 11:26 PM
    I have updated the Pact plugin callback (007) and Host-provided core matching (009) proposals with a concrete architecture. 009 now just becomes configuration and wiring in in the Pact framework implementations. These allow a plugin to use the capabilities from either another plugin or from the host Pact framework github.com/pact-foundation/pact-plugins/blob/…/007_Driver_plugin_callback_model.md github.com/pact-foundation/pact-plugins/blob/…/009_Host_provided_core_matching_and…
    👀 2
  • m

    Marko (IttyBittyApps / pact-swift)

    07/21/2026, 12:07 AM
    g'day, again... months have passed and I still didn't do what I offered to do. Now that the PactSwift drifted past breaking changes in
    libpact_ffi
    more than a couple of people are willing to contribute. But, I still don't have much time on my hands. So, I promised to move PactSwift and related repos to
    pact-foundation
    org... I think it's time we start doing that. I'll need help/access to the repos I need to push shallow clone up. Why? Because the history is waaaaaay too big to drag around. We could just transfer ownershipt, but I don't think you want 4GB of history because... `bin`s
    👋 1
    r
    m
    • 3
    • 24
  • m

    Matt (pactflow.io / pact-js / pact-go)

    07/22/2026, 8:20 AM
    Hey folks apologies again but I'm likely to miss tonight (meeting clash). I think Josh is also unwell and should rest
    j
    j
    • 3
    • 2
  • r

    rholshausen

    07/30/2026, 6:13 AM
    I'll just leave this here: github.com/pact-foundation/roadmap/pull/146
    ooohweee 2
  • r

    rholshausen

    07/31/2026, 1:56 AM
    I have updated the design for the Plugin V2 field level matchers/generators (006) as well as created a example plugin that shows the proposed design for matching/generating credit card numbers. It is a good example because it can check the first 4 digits are correct for the brand as well as the final check digit is valid, which you can't do with a regex. This is the final missing piece for the plugin overhaul. Updated design doc: github.com/pact-foundation/pact-plugins/blob/…/006_Field_level_matchers_and… Example plugin: github.com/pact-foundation/pact-plugins/…/creditcard
    👍 1
    m
    • 2
    • 4
  • r

    rholshausen

    08/07/2026, 1:00 AM
    I have released Pact-Rust consumer lib (1.4.10) and the verifier cli (1.3.5) with support for Lua plugins and field level matching rules and generators. Pact-JVM 4.7.4 also has support, but it requires the latest plugin driver to work. The example plugin and project works. Here is an example of a provider returning an invalid credit card number
    • 1
    • 1
  • y

    Yousaf Nabi (pactflow.io)

    08/19/2026, 8:48 AM
    blob wave Won’t be able to make it today to our pact community meeting, and Matt is on PTO. Have a good day/evening all
    j
    • 2
    • 3
  • m

    Matt (pactflow.io / pact-js / pact-go)

    09/15/2026, 11:42 AM
    Hey folks, Unfortunately I’ll have to miss tomorrow (a few conflicts).
    👍 1
    j
    y
    • 3
    • 8
  • m

    Matt (pactflow.io / pact-js / pact-go)

    09/18/2026, 4:24 AM
    FYI I’ll be raising a new invoice in OC soon. Question - do we want to keep paying this? There’s only a handful of secrets in there, and it’s quite expensive. I wonder if moving them to our AWS account secret manager would be a much cheaper and fiscally responsible option. Side note: I still pay that bill, so I should probably claim that too…..
    r
    • 2
    • 7
  • m

    Matt (pactflow.io / pact-js / pact-go)

    09/18/2026, 4:54 AM
    P.S. one more (AWS invoices for past 12 months): opencollective.com/pact-foundation/expenses/346769
  • r

    rholshausen

    09/24/2026, 5:26 AM
    I have run through a prototype design and build with Claude scoped to answer the questions in the Pact MkII RFC, findings comment here github.com/pact-foundation/roadmap/pull/146#…
    👀 1
    • 1
    • 1
  • m

    Matt (pactflow.io / pact-js / pact-go)

    09/30/2026, 10:30 AM
    Argh, sorry folks - I forgot I had a clash tonight!
  • m

    Matt (pactflow.io / pact-js / pact-go)

    09/30/2026, 10:30 AM
    I know Yousaf’s at API Days so not sure you made it?
    y
    • 2
    • 1
  • t

    Tien Vo

    10/07/2026, 1:52 PM
    Does anyone know why pact ffi library 0.5.9 hang on Windows, while 0.5.8 work fine? It hang without any log or error message, so I don't have any to share github.com/pact-foundation/pact-php/pull/829
    blob wave 1
    y
    r
    • 3
    • 7
  • r

    rholshausen

    10/07/2026, 11:10 PM
    I would like to progress the janus prototype into an actual project. There are a few foundational things that must be resolved: what is it called, where does it live. I was wondering if we should create a new GitHub org for it with a main repo for the engine. That way example projects can be in that org. The Pact org is getting rather over run. Other options is a repo in the Pact org or a subdirectory in the pact reference repo, and if it is Pact V5 or Pact2, but I think it is a totally different design so should be named on it's own. It can execute Pact files, but the process would be to upgrade to it as it provides better contract that a Pact file (an upgraded Pact file will only contain a single variant which is the example defined in the Pact file) Here is the list Claude drew up: Questions for the community The charter says these belong to the community, and this plan does not decide them. What it can do is say why each one matters and what the prototype found that bears on it. 1. Naming and versioning. Janus writes its own contract format and does not claim to be "pact v5" (ADR 0011). Some of the options: ◦ make that format the Pact specification's next version; ◦ keep it a separately versioned format under the Pact name; ◦ brand the whole redesign (the RFC's "MkII", "Pact 6"). It needs deciding before stage 2 ships a major version, because the format's identifier is written into every contract. 2. Where it lives, and who owns what. The engine, the specifications, and conformance sign-off each need an owner. The prototype suggests sign-off can be mechanical (a build passes the suite, ADR 0017), which leaves people deciding what goes into the specification rather than whether an SDK complies. The engine could live beside
    pact_matching
    in pact-reference, which it forked, or in a repository of its own. 3. Funding. Stages 1 and 2 are large, and providers-first means stage 1 pays back before stage 2 finishes. Whether that is foundation sponsorship, vendor contribution or grants is not this plan's to say. 4. When today's implementations go into maintenance mode. The RFC ties it to each SDK passing conformance on the new engine. This plan's stage exits make that measurable per language. The timeline around them is the community's. 5. How the broker's API evolves. The broker notes (task 7.5) set out a PR series for provider shapes and decisions. How far the open-source broker and PactFlow each go is theirs to decide.
    🤔 2
    🧡 1
    y
    • 2
    • 2
  • y

    Yousaf Nabi (pactflow.io)

    10/09/2026, 8:35 AM
    Hey @rholshausen, Ok for me to release pact models and pact-ffi to get @Tien Vo and @Fábio Rodrigues’s changes out?
    r
    • 2
    • 1
  • y

    Yousaf Nabi (pactflow.io)

    10/09/2026, 8:44 AM
    @Tien Vo just wanted to say blob wave Miss catching up with you in the maintainers call. Hope you are good!
  • m

    Matt (pactflow.io / pact-js / pact-go)

    10/14/2026, 9:32 AM
    I’ll be around to join tonight, but need to leave 15mins early (due to daylight savings here another meeting I have overlaps)
    💛 1