Skip to content

chore(release): pact-python v3.3.0#1556

Merged
JP-Ellis merged 1 commit intomainfrom
release/pact-python
Apr 17, 2026
Merged

chore(release): pact-python v3.3.0#1556
JP-Ellis merged 1 commit intomainfrom
release/pact-python

Conversation

@JP-Ellis
Copy link
Copy Markdown
Contributor

@JP-Ellis JP-Ellis commented Apr 16, 2026

[pact-python/3.3.0] 2026-04-17

🚀 Features

  • Add xml matching

    A new pact.xml module provides builder functions for constructing XML request and response bodies with embedded Pact matchers. Use xml.element() to describe the XML structure and attach matchers where needed, then wrap the result with xml.body() before passing it to with_body(..., content_type="application/xml"):

    from pact import match, xml
    
    response = xml.body(
        xml.element(
            "user",
            xml.element("id", match.int(123)),
            xml.element("name", match.str("Alice")),
        )
    )
    interaction.with_body(response, content_type="application/xml")

    Repeating elements are supported via .each(min=1, examples=2) on any XmlElement. Attributes (including namespace declarations) can be passed via the attrs keyword argument.

  • Allow iteration over all interactions

  • Use common PactInteraction type

  • Can toggle follow redirects

  • Allow plugin loading delay

📚 Documentation

  • Update changelog for pact-python/3.2.1
  • (examples) Add http+xml example
  • Update xml example to use new matcher
  • (examples) Add service consumer/provider HTTP example

⚙️ Miscellaneous Tasks

  • (ci) Re-enable 3.14 tests
  • Upgrade stable python version
  • Add .worktrees to .gitignore
  • (ci) Reduce ci usage
  • (ci) Downgrade stable python version
  • (ci) Remove unused workflows
  • Remove versioningit, switch to static version in pyproject.toml
  • Add release script
  • Minor update to cliff config
  • Authenticate gh api calls
  • Remove release label
  • Replace taplo with tombi
  • (ci) Have wheel target 310
  • (ci) Avoid most of CI on draft PRs
  • Fix hatch env workspaces
  • Remove connect test

� Other

  • Fix coverage upload overwrite and add example coverage

Contributors

@codecov
Copy link
Copy Markdown

codecov bot commented Apr 16, 2026

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 74%. Comparing base (dfc1e6e) to head (b87ddb3).
⚠️ Report is 1 commits behind head on main.
✅ All tests successful. No failed tests found.

Additional details and impacted files
@@         Coverage Diff          @@
##           main   #1556   +/-   ##
====================================
  Coverage    74%     74%           
====================================
  Files        36      36           
  Lines      4007    4007           
====================================
  Hits       2983    2983           
  Misses     1024    1024           
Flag Coverage Δ
examples 37% <ø> (ø)
tests 73% <ø> (ø)

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

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

@JP-Ellis JP-Ellis force-pushed the release/pact-python branch 10 times, most recently from bf79994 to 2108854 Compare April 17, 2026 05:44
@JP-Ellis JP-Ellis force-pushed the release/pact-python branch from 2108854 to b87ddb3 Compare April 17, 2026 05:56
@JP-Ellis JP-Ellis marked this pull request as ready for review April 17, 2026 05:56
Copilot AI review requested due to automatic review settings April 17, 2026 05:56
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Bumps the pact-python package to v3.3.0 and adds the corresponding release notes entry to the changelog.

Changes:

  • Update package version in pyproject.toml from 3.2.1 to 3.3.0.
  • Add pact-python/3.3.0 release notes section to CHANGELOG.md.

Reviewed changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated 1 comment.

File Description
pyproject.toml Updates the project version to 3.3.0 for the release.
CHANGELOG.md Adds the v3.3.0 changelog entry, including feature highlights and other release notes.

Comment thread CHANGELOG.md
@JP-Ellis JP-Ellis enabled auto-merge (rebase) April 17, 2026 05:58
@JP-Ellis JP-Ellis merged commit c15032c into main Apr 17, 2026
54 checks passed
@JP-Ellis JP-Ellis deleted the release/pact-python branch April 17, 2026 06:01
@JP-Ellis JP-Ellis deployed to release-pr April 17, 2026 06:03 — with GitHub Actions Active
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants