Wingmonkey

Latest version: v0.1.21

Safety actively analyzes 701645 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 2 of 4

0.1.15

Warning:
Upgrade pip before running setup.py. pip 10 is required from this release on.

0.1.14

Increase log levels to ease troubleshooting

0.1.13

- Implement member activity

0.1.12

- async http requests have a configurable time out now, it can be set with the env variable: DEFAULT_ASYNC_WAIT

- additionally error handling in the update_members_async and related functions has been improved.

0.1.11

Add optional group_id and group_count parameters to update_members_async.
This can be used when splitting a very large update into multiple chunks of update operations. The group_ parameters facilitate tracking the results.

0.1.10

When doing very regular updates of big amounts of members it turns out batch operations aren't a good fit. This release adds functionality to do 'batch' updates using `POST` calls on the `/lists/<list_id>` endpoint directly. This means connections to mailchimp remain open longer but there's a guarantee that everything gets processed in the correct order. Tests show that to create/update a batch of 250 000 members takes about 20-25 minutes this way.

If you want to be able to follow the progress of these updates it's possible to pass a callback function. This should be a generator looking something like this:

python
def callback():
try:
while True:
progress = yield
this will yield namedtuple 'ProgressStatus' with following data: id (batch id), total (total batch size), completed, last_response_status
do stuff with progress here
finally:
do stuff that needs to be done after update is finished, handle success, errors,...



Some more insights about mailchimp batch operations and when to use or not use them I've gotten after communication with a few very helpful mailchimp support people:

>Batches work best we they are submitted one at a time, and are allowed to finish running before the next batch is submitted. Because of this, batches are good for when you need to update or retrieve information semi-regularly.


>Individual operations within batches are processed randomly. Additionally, if you submit smaller batches while a large batch is processing, the smaller batches would get picked up in the middle of the large batch.
This means that attempting to pass smaller batches while a large batch is running can cause for the small batches to complete first, or even cause for the large batch to timeout before it has finished.

Page 2 of 4

© 2025 Safety CLI Cybersecurity Inc. All Rights Reserved.