NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
PyPI · #2959 most downloaded on PyPI
Python client for the Evergreen API
Last release 2 days ago
02 Oct 2026
Release timing varies
gaps range from 8 days to 3 months
Nearly every release is documented
notes for 60 of the last 60 stable releases
Nothing withdrawn
no release was ever pulled
8 years old
197 releases · first in 2019
graphql, task_history and task_history_iter accept a timeout argument to override the client's timeout per call, since GraphQL queries can take much l
graphql, task_history and task_history_iter accept a timeout argument to override the
client's timeout per call, since GraphQL queries can take much longer than REST calls.RetryingEvergreenApi now retries GraphQL queries that fail with a transient Evergreen database
error (ReauthenticationRequired). Evergreen returns these with a 200 status code, so they
were never retried by the HTTP-level retries.Allow nested field selections in task_history's fields parameter (e.g. "details { status }"), not just simple field names.
task_history's fields parameter (e.g.
"details { status }"), not just simple field names.EvergreenGraphQLError from the GraphQL server instead of a client-side ValueError.One column per quarter.
Fix an issue with task names containing special characters by URL-encoding task names.
Fix HTTP retries for POST requests (including GraphQL): urllib3's Retry excluded POST from retryable methods, so POST endpoints were never retried on
Retry excluded POST from
retryable methods, so POST endpoints were never retried on retryable status codes (429/5xx).version_by_project_and_revision to look up a mainline version by project identifier and
git revision, constructing the version id the same way the Evergreen server does./api prefix
(e.g. api_server_host): GraphQL is served at the host root, not under /api.Add a graphql method to EvergreenApi for querying the Evergreen GraphQL API. It reuses the client's auth/retry/timeout handling and raises EvergreenGr
graphql method to EvergreenApi for querying the Evergreen GraphQL API. It reuses the client's
auth/retry/timeout handling and raises EvergreenGraphQLError when the GraphQL API returns errors.task_history and task_history_iter methods that wrap the GraphQL taskHistory query, with
cursor pagination and selectable task fields. task_history_iter accepts an optional max_results
cap to prevent unbounded iteration.Support OIDC auth on spawn hosts by reading the embedded oauth.spawn_host_access_token from ~/.evergreen.yml.
oauth.spawn_host_access_token from ~/.evergreen.yml.Download response content only for errors in _raise_for_status
Revert changes made in version 3.17.0
Raise an error in _stream_api when the server returns a non-2xx status, instead of silently yielding no content.
_stream_api when the server returns a non-2xx status, instead of silently yielding no content.Convert IssueLinkRequest and MetadataLinkRequest from NamedTuple to Pydantic BaseModel.
Add GITHUB_MERGE_REQUEST and GIT_TAG_REQUEST to Requester enum
GITHUB_MERGE_REQUEST and GIT_TAG_REQUEST to Requester enumAdd support for abort/restart/activate version endpoints.
Add support for large flag when creating patches
- OIDC credential support
Escape user provided args to CLI
Fix supported Python versions (only Python 3.9-3.13 supported)
in a massive coincidence, python 3.13 support in version 3.13.0
in a massive coincidence, python 3.12 support in version 3.12.0
add multi version testing on Python 3.9-3.11
revert kanopy-oidc support pending rethinking of auth
fix method all_user_permissions_for_resource call to endpoint /permissions/users instead of /users/permissions.
all_user_permissions_for_resource call to endpoint /permissions/users instead of /users/permissions.Add compatibility for urllib3 < 2.0.0
Add additional logging for cloning patch
Add strategies parameter to select tests endpoint.
strategies parameter to select tests endpoint.No user facing changes, when creating a copy of a patch check both stderr and stdout for the patch creation details. This ensures forward compatibilit
Added test_name parameter to get_tests method of task class.
test_name parameter to get_tests method of task class.Fixed the type of group_id field of test object.
group_id field of test object.Add group_id field to test object.
group_id field to test object.url_lobster and log_id fields from Logs object.exit_code field from test object.Add activated field to version object.
activated field to version object.Add functions to deal with project aliases.
- Fix includeRepo concatenation
includeRepo concatenationAdd includeRepo parameter to project API calls
Add module parameter to get_patch_diff
- Add tags to builds
- Add test_id to tests
- Add tags to tasks
- Add ChangeLog data
Add repeat_patch function to EvergreenApi. This function repeats the tasks and variants of a previous patch.
repeat_patch function to EvergreenApi. This function repeats the tasks and variants of a previous patch.EvergreenApi constructor now accepts an optional urllib3.util.Retry object that can be used to customize http request retry approach.
EvergreenApi constructor now accepts an optional urllib3.util.Retry object that can be used to customize http request retry approach.urllib3.util.Retry instead of Tenacity library.Add support for select tests endpoint
- Fix file_diffs getter.
file_diffs getter.Switch to GitHub merge queue (no code changes)
Added cached support for the tasks_by_build method
- Updated README.
Updated author information and README on Python version.
Changed log level to debug in Version constructor.
debug in Version constructor.Added parameters field to Version.
parameters field to Version.patch_from_diff and patch_from_patch_id methods to include a parameters field to set parameters on the patch.Added id field to PatchCreationDetails.
id field to PatchCreationDetails.Added error handling for missing config.
Added support for sending emails.
Added support for binary and nonbinary artifact streams.
Fix bug in Version to always initialize member build_variants_map.
Version to always initialize member build_variants_map.Added parameter in get_api for logging on error.
get_api for logging on error.Add optional execution param to task_by_id command
execution param to task_by_id commandparent_task_id variable to Task objectMoved structlog configuration to within constructor.
Add patch_from_patch_id command.
patch_from_patch_id command.reuse_compile_from param on patch diffs.Add stream function for Artifact.
stream function for Artifact.Fix bug in manifest_for_task to return Optional[Manifest] in the case a manifest is not found.
manifest_for_task to return Optional[Manifest] in the case a manifest is not found.- Add tasks_by_project_and_name.
tasks_by_project_and_name.- Add num_total to TaskStats.
num_total to TaskStats.Your coding agent can read these notes before it upgrades. Set up the MCP server →