Add Python 3.7+ compatibility and migrate tests to nose2#974
Open
alfonsoalongi wants to merge 2 commits intoduo-labs:mainfrom
Open
Add Python 3.7+ compatibility and migrate tests to nose2#974alfonsoalongi wants to merge 2 commits intoduo-labs:mainfrom
alfonsoalongi wants to merge 2 commits intoduo-labs:mainfrom
Conversation
Author
|
Hi Duo Labs team,
I just signed the CLA.
Thank you for your quick response and congratulations on your tool, which I
see is widely used in the security field.
Il giorno mer 8 ott 2025 alle ore 13:00 CLAassistant <
***@***.***> ha scritto:
… *CLAassistant* left a comment (duo-labs/cloudmapper#974)
<#974 (comment)>
[image: CLA assistant check]
<https://cla-assistant.io/duo-labs/cloudmapper?pullRequest=974>
Thank you for your submission! We really appreciate it. Like many open
source projects, we ask that you sign our Contributor License Agreement
<https://cla-assistant.io/duo-labs/cloudmapper?pullRequest=974> before we
can accept your contribution.
You have signed the CLA already but the status is still pending? Let us
recheck
<https://cla-assistant.io/check/duo-labs/cloudmapper?pullRequest=974> it.
—
Reply to this email directly, view it on GitHub
<#974 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/ALCW6ZNTDOFABMOLMGEMDH33WTVDLAVCNFSM6AAAAACITSBOC2VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZTGOBQHE3TKMRYGU>
.
You are receiving this because you authored the thread.Message ID:
***@***.***>
--
Ai sensi dell’art. 13 del Regolamento 2016/679/UE (GDPR) si informa che la
presente email s’intende inviata per scopi lavorativi. Per tale ragione non
è possibile garantire che, rispondendo alla stessa, il contenuto venga
visualizzato esclusivamente dal soggetto cui è indirizzata la risposta. Si
precisa che le informazioni contenute in questo messaggio sono
confidenziali, riservate e a uso esclusivo del destinatario. Se questa
email è stata ricevuta per errore, si prega di cancellarla immediatamente
senza farne ulteriore uso e di avvisare gentilmente il mittente. Grazie.
Pursuant to Article 13 of the Regulation (EU) 2016/679 (GDPR), we inform
you that this email is intended to be sent for working purposes. For this
reason it is not possible to guarantee that, by replying to it, the content
will be viewed exclusively by the person to whom the reply is addressed. We
specify that the information contained in this message is confidential,
privileged and for the exclusive use of the addressee. If this email has
been received by mistake, please delete it immediately without making
further use of it and kindly notify the event to the sender. Thank you.
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Hi Duo Labs team,
I’m proposing a PR that does two things:
Add Python 3.7+ support and replace pyjq – swap the unmaintained pyjq dependency for the official jq bindings, fix boto3/botocore pinning so installs succeed on current Python, and guard jq.first calls against StopIteration. Installation is now fast and deterministic on Python 3.7 through 3.12.
Migrate the test suite from nose to nose2 – nose 1.x doesn’t run on Python 3.12 because it still imports imp. I’ve switched the assertions to built-in unittest helpers, added unittest.cfg + .coveragerc, and updated the test script. Coverage stays above the same 60 % threshold.
The demo fixtures produce identical output before and after these changes. Let me know if you’d like any tweaks before I open the PR.