Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package python-pymisp for openSUSE:Factory 
checked in at 2021-05-06 22:53:11
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-pymisp (Old)
 and      /work/SRC/openSUSE:Factory/.python-pymisp.new.2988 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "python-pymisp"

Thu May  6 22:53:11 2021 rev:33 rq:891131 version:2.4.142

Changes:
--------
--- /work/SRC/openSUSE:Factory/python-pymisp/python-pymisp.changes      
2021-04-14 10:11:57.669593186 +0200
+++ /work/SRC/openSUSE:Factory/.python-pymisp.new.2988/python-pymisp.changes    
2021-05-06 22:53:44.662473078 +0200
@@ -1,0 +2,28 @@
+Thu Apr 29 19:10:39 UTC 2021 - Sebastian Wagner <sebix+novell....@sebix.at>
+
+- update to version 2.4.142:
+ - New
+   - Support for correlation exclusion list. [Rapha??l Vinot]
+     Fix #732
+ - Changes
+   - Bump version. [Rapha??l Vinot]
+   - Bump deps. [Rapha??l Vinot]
+   - Fix test suite. [Rapha??l Vinot]
+   - Bump objects templates. [Rapha??l Vinot]
+   - Bump deps. [Rapha??l Vinot]
+   - Bump deps. [Rapha??l Vinot]
+   - Add comment for controller attribute in search. [Rapha??l Vinot]
+ - Fix
+   - Enable/disable feeds. [Rapha??l Vinot]
+   - Mistake in mypy config. [Rapha??l Vinot]
+   - Exclude data from mypy. [Rapha??l Vinot]
+- update to version 2.4.141.1:
+ - Changes
+   - Bump changelog. [Rapha??l Vinot]
+   - Re-bump changelog. [Rapha??l Vinot]
+   - Bump version. [Rapha??l Vinot]
+ - Other
+   - Fix bump version, deps, templates. [Rapha??l Vinot]
+   - Update README.md. [Rapha??l Vinot]
+
+-------------------------------------------------------------------

Old:
----
  python-pymisp-2.4.141.1.tar.gz

New:
----
  python-pymisp-2.4.142.tar.gz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ python-pymisp.spec ++++++
--- /var/tmp/diff_new_pack.WxnndS/_old  2021-05-06 22:53:45.218470785 +0200
+++ /var/tmp/diff_new_pack.WxnndS/_new  2021-05-06 22:53:45.222470768 +0200
@@ -18,9 +18,9 @@
 
 %{?!python_module:%define python_module() python-%{**} python3-%{**}}
 %define skip_python2 1
-%define misp_objects_revision 067ae494983cd8dc3d8549e64166cd0d4faeab4f
+%define misp_objects_revision 5e6f887fa131437089eaa8cdb9078b6a6371d121
 Name:           python-pymisp
-Version:        2.4.141.1
+Version:        2.4.142
 Release:        0
 Summary:        Python API for MISP
 License:        BSD-2-Clause

++++++ misp-objects.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/misp-objects-067ae494983cd8dc3d8549e64166cd0d4faeab4f/objects/report/definition.json
 
new/misp-objects-5e6f887fa131437089eaa8cdb9078b6a6371d121/objects/report/definition.json
--- 
old/misp-objects-067ae494983cd8dc3d8549e64166cd0d4faeab4f/objects/report/definition.json
    2021-03-05 18:23:11.000000000 +0100
+++ 
new/misp-objects-5e6f887fa131437089eaa8cdb9078b6a6371d121/objects/report/definition.json
    2021-04-14 09:20:52.000000000 +0200
@@ -30,6 +30,21 @@
       "misp-attribute": "text",
       "multiple": true,
       "ui-priority": 100
+    },
+    "type": {
+      "description": "Type of report",
+      "misp-attribute": "text",
+      "sane_default": [
+        "Report",
+        "Alert",
+        "Incident",
+        "Operation",
+        "Press Article",
+        "Press Release",
+        "Online Article",
+        "Blog post"
+      ],
+      "ui-priority": 100
     }
   },
   "description": "Metadata used to generate an executive level report",
@@ -40,5 +55,5 @@
     "link"
   ],
   "uuid": "70a68471-df22-4e3f-aa1a-5a3be19f82df",
-  "version": 3
+  "version": 4
 }
\ No newline at end of file

++++++ python-pymisp-2.4.141.1.tar.gz -> python-pymisp-2.4.142.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/PyMISP-2.4.141.1/CHANGELOG.txt 
new/PyMISP-2.4.142/CHANGELOG.txt
--- old/PyMISP-2.4.141.1/CHANGELOG.txt  2021-04-02 16:36:34.000000000 +0200
+++ new/PyMISP-2.4.142/CHANGELOG.txt    2021-04-26 10:54:35.000000000 +0200
@@ -2,11 +2,38 @@
 =========
 
 
+v2.4.142 (2021-04-26)
+---------------------
+
+New
+~~~
+- Support for correlation exclusion list. [Rapha??l Vinot]
+
+  Fix #732
+
+Changes
+~~~~~~~
+- Bump version. [Rapha??l Vinot]
+- Bump deps. [Rapha??l Vinot]
+- Fix test suite. [Rapha??l Vinot]
+- Bump objects templates. [Rapha??l Vinot]
+- Bump deps. [Rapha??l Vinot]
+- Bump deps. [Rapha??l Vinot]
+- Add comment for controller attribute in search. [Rapha??l Vinot]
+
+Fix
+~~~
+- Enable/disable feeds. [Rapha??l Vinot]
+- Mistake in mypy config. [Rapha??l Vinot]
+- Exclude data from mypy. [Rapha??l Vinot]
+
+
 v2.4.141.1 (2021-04-02)
 -----------------------
 
 Changes
 ~~~~~~~
+- Bump changelog. [Rapha??l Vinot]
 - Re-bump changelog. [Rapha??l Vinot]
 - Bump version. [Rapha??l Vinot]
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/PyMISP-2.4.141.1/mypy.ini new/PyMISP-2.4.142/mypy.ini
--- old/PyMISP-2.4.141.1/mypy.ini       1970-01-01 01:00:00.000000000 +0100
+++ new/PyMISP-2.4.142/mypy.ini 2021-04-26 10:54:35.000000000 +0200
@@ -0,0 +1,6 @@
+[mypy]
+ignore_errors = False
+
+show_error_context = True
+pretty = True
+exclude = pymisp/data
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/PyMISP-2.4.141.1/poetry.lock 
new/PyMISP-2.4.142/poetry.lock
--- old/PyMISP-2.4.141.1/poetry.lock    2021-04-02 16:36:34.000000000 +0200
+++ new/PyMISP-2.4.142/poetry.lock      2021-04-26 10:54:35.000000000 +0200
@@ -233,7 +233,7 @@
 
 [[package]]
 name = "decorator"
-version = "5.0.1"
+version = "5.0.7"
 description = "Decorators for Humans"
 category = "main"
 optional = false
@@ -318,7 +318,7 @@
 
 [[package]]
 name = "flake8"
-version = "3.9.0"
+version = "3.9.1"
 description = "the modular source code checker: pep8 pyflakes and co"
 category = "dev"
 optional = false
@@ -363,7 +363,7 @@
 
 [[package]]
 name = "importlib-metadata"
-version = "3.10.0"
+version = "4.0.1"
 description = "Read metadata from Python packages"
 category = "main"
 optional = false
@@ -436,18 +436,18 @@
 
 [[package]]
 name = "jedi"
-version = "0.17.2"
+version = "0.18.0"
 description = "An autocompletion tool for Python that can be used for text 
editors."
 category = "dev"
 optional = false
-python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*"
+python-versions = ">=3.6"
 
 [package.dependencies]
-parso = ">=0.7.0,<0.8.0"
+parso = ">=0.8.0,<0.9.0"
 
 [package.extras]
-qa = ["flake8 (==3.7.9)"]
-testing = ["Django (<3.1)", "colorama", "docopt", "pytest (>=3.9.0,<5.0.0)"]
+qa = ["flake8 (==3.8.3)", "mypy (==0.782)"]
+testing = ["Django (<3.1)", "colorama", "docopt", "pytest (<6.0.0)"]
 
 [[package]]
 name = "jinja2"
@@ -494,7 +494,7 @@
 
 [[package]]
 name = "jupyter-client"
-version = "6.1.12"
+version = "6.1.13"
 description = "Jupyter protocol implementation and client libraries"
 category = "dev"
 optional = false
@@ -502,6 +502,7 @@
 
 [package.dependencies]
 jupyter-core = ">=4.6.0"
+nest-asyncio = ">=1.5"
 python-dateutil = ">=2.1"
 pyzmq = ">=13"
 tornado = ">=4.1"
@@ -509,7 +510,7 @@
 
 [package.extras]
 doc = ["sphinx (>=1.3.6)", "sphinx-rtd-theme", "sphinxcontrib-github-alt"]
-test = ["async-generator", "ipykernel", "ipython", "mock", "pytest-asyncio", 
"pytest-timeout", "pytest", "jedi (<0.18)"]
+test = ["async-generator", "ipykernel", "ipython", "mock", "pytest-asyncio", 
"pytest-timeout", "pytest", "mypy", "pre-commit", "jedi (<0.18)"]
 
 [[package]]
 name = "jupyter-core"
@@ -628,7 +629,7 @@
 
 [[package]]
 name = "mypy"
-version = "0.790"
+version = "0.812"
 description = "Optional static typing for Python"
 category = "dev"
 optional = false
@@ -773,7 +774,7 @@
 
 [[package]]
 name = "oletools"
-version = "0.56"
+version = "0.56.1"
 description = "Python tools to analyze security characteristics of MS Office 
and OLE files (also called Structured Storage, Compound File Binary Format or 
Compound Document File Format), for Malware Analysis and Incident Response 
#DFIR"
 category = "main"
 optional = true
@@ -782,7 +783,7 @@
 [package.dependencies]
 colorclass = "*"
 easygui = "*"
-msoffcrypto-tool = "*"
+msoffcrypto-tool = {version = "*", markers = "platform_python_implementation 
!= \"PyPy\" or python_version >= \"3\" and platform_system != \"Windows\" and 
platform_system != \"Darwin\""}
 olefile = ">=0.46"
 pcodedmp = ">=1.2.5"
 pyparsing = ">=2.1.0,<3"
@@ -808,14 +809,15 @@
 
 [[package]]
 name = "parso"
-version = "0.7.1"
+version = "0.8.2"
 description = "A Python Parser"
 category = "dev"
 optional = false
-python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*"
+python-versions = ">=3.6"
 
 [package.extras]
-testing = ["docopt", "pytest (>=3.0.7)"]
+qa = ["flake8 (==3.8.3)", "mypy (==0.782)"]
+testing = ["docopt", "pytest (<6.0.0)"]
 
 [[package]]
 name = "pcodedmp"
@@ -858,11 +860,11 @@
 
 [[package]]
 name = "prometheus-client"
-version = "0.9.0"
+version = "0.10.1"
 description = "Python client for the Prometheus monitoring system."
 category = "dev"
 optional = false
-python-versions = "*"
+python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*"
 
 [package.extras]
 twisted = ["twisted"]
@@ -1028,7 +1030,7 @@
 
 [[package]]
 name = "reportlab"
-version = "3.5.66"
+version = "3.5.67"
 description = "The Reportlab Toolkit"
 category = "main"
 optional = true
@@ -1124,7 +1126,7 @@
 
 [[package]]
 name = "sphinx"
-version = "3.5.3"
+version = "3.5.4"
 description = "Python documentation generator"
 category = "main"
 optional = true
@@ -1134,7 +1136,7 @@
 alabaster = ">=0.7,<0.8"
 babel = ">=1.3"
 colorama = {version = ">=0.3.5", markers = "sys_platform == \"win32\""}
-docutils = ">=0.12"
+docutils = ">=0.12,<0.17"
 imagesize = "*"
 Jinja2 = ">=2.3"
 packaging = "*"
@@ -1155,11 +1157,11 @@
 
 [[package]]
 name = "sphinx-autodoc-typehints"
-version = "1.11.1"
+version = "1.12.0"
 description = "Type hints (PEP 484) support for the Sphinx autodoc extension"
 category = "main"
 optional = true
-python-versions = ">=3.5.2"
+python-versions = ">=3.6"
 
 [package.dependencies]
 Sphinx = ">=3.0"
@@ -1292,7 +1294,7 @@
 
 [[package]]
 name = "typed-ast"
-version = "1.4.2"
+version = "1.4.3"
 description = "a fork of Python 2 and 3 ast modules with type comment support"
 category = "dev"
 optional = false
@@ -1405,7 +1407,7 @@
 [metadata]
 lock-version = "1.1"
 python-versions = "^3.6"
-content-hash = 
"c8714d721bedbe775c304c614f6ce8fce15fb44340f9d99364b4843adcbbf60f"
+content-hash = 
"d2c9a68576f9c03bd98d430bc4674b33a04782f964be058d9b1e68d1e32cb631"
 
 [metadata.files]
 alabaster = [
@@ -1636,8 +1638,8 @@
     {file = "cryptography-3.4.7.tar.gz", hash = 
"sha256:3d10de8116d25649631977cb37da6cbdd2d6fa0e0281d014a5b7d337255ca713"},
 ]
 decorator = [
-    {file = "decorator-5.0.1-py2.py3-none-any.whl", hash = 
"sha256:2ec6e8cce2d71850b0af58ceceeab83f4bbaf60e1cc23d96db08c9d1425b7ac0"},
-    {file = "decorator-5.0.1.tar.gz", hash = 
"sha256:1e53162e016f317a61d93848f00e80e7109ca9ed06846c7f2930cf0ebede7c6c"},
+    {file = "decorator-5.0.7-py3-none-any.whl", hash = 
"sha256:945d84890bb20cc4a2f4a31fc4311c0c473af65ea318617f13a7257c9a58bc98"},
+    {file = "decorator-5.0.7.tar.gz", hash = 
"sha256:6f201a6c4dac3d187352661f508b9364ec8091217442c9478f1f83c003a0f060"},
 ]
 defusedxml = [
     {file = "defusedxml-0.7.1-py2.py3-none-any.whl", hash = 
"sha256:a352e7e428770286cc899e2542b6cdaedb2b4953ff269a210103ec58f6198a61"},
@@ -1670,8 +1672,8 @@
     {file = "extract_msg-0.28.7.tar.gz", hash = 
"sha256:7ebdbd7863a3699080a69f71ec0cd30ed9bfee70bad9acc6a8e6abe9523c78c0"},
 ]
 flake8 = [
-    {file = "flake8-3.9.0-py2.py3-none-any.whl", hash = 
"sha256:12d05ab02614b6aee8df7c36b97d1a3b2372761222b19b58621355e82acddcff"},
-    {file = "flake8-3.9.0.tar.gz", hash = 
"sha256:78873e372b12b093da7b5e5ed302e8ad9e988b38b063b61ad937f26ca58fc5f0"},
+    {file = "flake8-3.9.1-py2.py3-none-any.whl", hash = 
"sha256:3b9f848952dddccf635be78098ca75010f073bfe14d2c6bda867154bea728d2a"},
+    {file = "flake8-3.9.1.tar.gz", hash = 
"sha256:1aa8990be1e689d96c745c5682b687ea49f2e05a443aff1f8251092b0014e378"},
 ]
 idna = [
     {file = "idna-2.10-py2.py3-none-any.whl", hash = 
"sha256:b97d804b1e9b523befed77c48dacec60e6dcb0b5391d57af6a65a312a90648c0"},
@@ -1686,8 +1688,8 @@
     {file = "IMAPClient-2.1.0.zip", hash = 
"sha256:60ba79758cc9f13ec910d7a3df9acaaf2bb6c458720d9a02ec33a41352fd1b99"},
 ]
 importlib-metadata = [
-    {file = "importlib_metadata-3.10.0-py3-none-any.whl", hash = 
"sha256:d2d46ef77ffc85cbf7dac7e81dd663fde71c45326131bea8033b9bad42268ebe"},
-    {file = "importlib_metadata-3.10.0.tar.gz", hash = 
"sha256:c9db46394197244adf2f0b08ec5bc3cf16757e9590b02af1fca085c16c0d600a"},
+    {file = "importlib_metadata-4.0.1-py3-none-any.whl", hash = 
"sha256:d7eb1dea6d6a6086f8be21784cc9e3bcfa55872b52309bc5fad53a8ea444465d"},
+    {file = "importlib_metadata-4.0.1.tar.gz", hash = 
"sha256:8c501196e49fb9df5df43833bdb1e4328f64847763ec8a50703148b73784d581"},
 ]
 ipykernel = [
     {file = "ipykernel-5.5.3-py3-none-any.whl", hash = 
"sha256:21abd584543759e49010975a4621603b3cf871b1039cb3879a14094717692614"},
@@ -1702,8 +1704,8 @@
     {file = "ipython_genutils-0.2.0.tar.gz", hash = 
"sha256:eb2e116e75ecef9d4d228fdc66af54269afa26ab4463042e33785b887c628ba8"},
 ]
 jedi = [
-    {file = "jedi-0.17.2-py2.py3-none-any.whl", hash = 
"sha256:98cc583fa0f2f8304968199b01b6b4b94f469a1f4a74c1560506ca2a211378b5"},
-    {file = "jedi-0.17.2.tar.gz", hash = 
"sha256:86ed7d9b750603e4ba582ea8edc678657fb4007894a12bcf6f4bb97892f31d20"},
+    {file = "jedi-0.18.0-py2.py3-none-any.whl", hash = 
"sha256:18456d83f65f400ab0c2d3319e48520420ef43b23a086fdc05dff34132f0fb93"},
+    {file = "jedi-0.18.0.tar.gz", hash = 
"sha256:92550a404bad8afed881a137ec9a461fed49eca661414be45059329614ed0707"},
 ]
 jinja2 = [
     {file = "Jinja2-2.11.3-py2.py3-none-any.whl", hash = 
"sha256:03e47ad063331dd6a3f04a43eddca8a966a26ba0c5b7207a9a9e4e08f1b29419"},
@@ -1718,8 +1720,8 @@
     {file = "jsonschema-3.2.0.tar.gz", hash = 
"sha256:c8a85b28d377cc7737e46e2d9f2b4f44ee3c0e1deac6bf46ddefc7187d30797a"},
 ]
 jupyter-client = [
-    {file = "jupyter_client-6.1.12-py3-none-any.whl", hash = 
"sha256:e053a2c44b6fa597feebe2b3ecb5eea3e03d1d91cc94351a52931ee1426aecfc"},
-    {file = "jupyter_client-6.1.12.tar.gz", hash = 
"sha256:c4bca1d0846186ca8be97f4d2fa6d2bae889cce4892a167ffa1ba6bd1f73e782"},
+    {file = "jupyter_client-6.1.13-py3-none-any.whl", hash = 
"sha256:1df17b0525b45cc03645fc9eeab023765882d3c18fb100f82499cf6a353b3941"},
+    {file = "jupyter_client-6.1.13.tar.gz", hash = 
"sha256:d03558bc9b7955d8b4a6df604a8d9d257e00bcea7fb364fe41cdef81d998a966"},
 ]
 jupyter-core = [
     {file = "jupyter_core-4.7.1-py3-none-any.whl", hash = 
"sha256:8c6c0cac5c1b563622ad49321d5ec47017bd18b94facb381c6973a0486395f8e"},
@@ -1804,20 +1806,28 @@
     {file = "msoffcrypto-tool-4.11.0.tar.gz", hash = 
"sha256:56a1fe5e58ca417ca8756e8d7224ae599323996da65f81a35273c0f1e2eaf490"},
 ]
 mypy = [
-    {file = "mypy-0.790-cp35-cp35m-macosx_10_6_x86_64.whl", hash = 
"sha256:bd03b3cf666bff8d710d633d1c56ab7facbdc204d567715cb3b9f85c6e94f669"},
-    {file = "mypy-0.790-cp35-cp35m-manylinux1_x86_64.whl", hash = 
"sha256:2170492030f6faa537647d29945786d297e4862765f0b4ac5930ff62e300d802"},
-    {file = "mypy-0.790-cp35-cp35m-win_amd64.whl", hash = 
"sha256:e86bdace26c5fe9cf8cb735e7cedfe7850ad92b327ac5d797c656717d2ca66de"},
-    {file = "mypy-0.790-cp36-cp36m-macosx_10_9_x86_64.whl", hash = 
"sha256:e97e9c13d67fbe524be17e4d8025d51a7dca38f90de2e462243ab8ed8a9178d1"},
-    {file = "mypy-0.790-cp36-cp36m-manylinux1_x86_64.whl", hash = 
"sha256:0d34d6b122597d48a36d6c59e35341f410d4abfa771d96d04ae2c468dd201abc"},
-    {file = "mypy-0.790-cp36-cp36m-win_amd64.whl", hash = 
"sha256:72060bf64f290fb629bd4a67c707a66fd88ca26e413a91384b18db3876e57ed7"},
-    {file = "mypy-0.790-cp37-cp37m-macosx_10_9_x86_64.whl", hash = 
"sha256:eea260feb1830a627fb526d22fbb426b750d9f5a47b624e8d5e7e004359b219c"},
-    {file = "mypy-0.790-cp37-cp37m-manylinux1_x86_64.whl", hash = 
"sha256:c614194e01c85bb2e551c421397e49afb2872c88b5830e3554f0519f9fb1c178"},
-    {file = "mypy-0.790-cp37-cp37m-win_amd64.whl", hash = 
"sha256:0a0d102247c16ce93c97066443d11e2d36e6cc2a32d8ccc1f705268970479324"},
-    {file = "mypy-0.790-cp38-cp38-macosx_10_9_x86_64.whl", hash = 
"sha256:cf4e7bf7f1214826cf7333627cb2547c0db7e3078723227820d0a2490f117a01"},
-    {file = "mypy-0.790-cp38-cp38-manylinux1_x86_64.whl", hash = 
"sha256:af4e9ff1834e565f1baa74ccf7ae2564ae38c8df2a85b057af1dbbc958eb6666"},
-    {file = "mypy-0.790-cp38-cp38-win_amd64.whl", hash = 
"sha256:da56dedcd7cd502ccd3c5dddc656cb36113dd793ad466e894574125945653cea"},
-    {file = "mypy-0.790-py3-none-any.whl", hash = 
"sha256:2842d4fbd1b12ab422346376aad03ff5d0805b706102e475e962370f874a5122"},
-    {file = "mypy-0.790.tar.gz", hash = 
"sha256:2b21ba45ad9ef2e2eb88ce4aeadd0112d0f5026418324176fd494a6824b74975"},
+    {file = "mypy-0.812-cp35-cp35m-macosx_10_9_x86_64.whl", hash = 
"sha256:a26f8ec704e5a7423c8824d425086705e381b4f1dfdef6e3a1edab7ba174ec49"},
+    {file = "mypy-0.812-cp35-cp35m-manylinux1_x86_64.whl", hash = 
"sha256:28fb5479c494b1bab244620685e2eb3c3f988d71fd5d64cc753195e8ed53df7c"},
+    {file = "mypy-0.812-cp35-cp35m-manylinux2010_x86_64.whl", hash = 
"sha256:9743c91088d396c1a5a3c9978354b61b0382b4e3c440ce83cf77994a43e8c521"},
+    {file = "mypy-0.812-cp35-cp35m-win_amd64.whl", hash = 
"sha256:d7da2e1d5f558c37d6e8c1246f1aec1e7349e4913d8fb3cb289a35de573fe2eb"},
+    {file = "mypy-0.812-cp36-cp36m-macosx_10_9_x86_64.whl", hash = 
"sha256:4eec37370483331d13514c3f55f446fc5248d6373e7029a29ecb7b7494851e7a"},
+    {file = "mypy-0.812-cp36-cp36m-manylinux1_x86_64.whl", hash = 
"sha256:d65cc1df038ef55a99e617431f0553cd77763869eebdf9042403e16089fe746c"},
+    {file = "mypy-0.812-cp36-cp36m-manylinux2010_x86_64.whl", hash = 
"sha256:61a3d5b97955422964be6b3baf05ff2ce7f26f52c85dd88db11d5e03e146a3a6"},
+    {file = "mypy-0.812-cp36-cp36m-win_amd64.whl", hash = 
"sha256:25adde9b862f8f9aac9d2d11971f226bd4c8fbaa89fb76bdadb267ef22d10064"},
+    {file = "mypy-0.812-cp37-cp37m-macosx_10_9_x86_64.whl", hash = 
"sha256:552a815579aa1e995f39fd05dde6cd378e191b063f031f2acfe73ce9fb7f9e56"},
+    {file = "mypy-0.812-cp37-cp37m-manylinux1_x86_64.whl", hash = 
"sha256:499c798053cdebcaa916eef8cd733e5584b5909f789de856b482cd7d069bdad8"},
+    {file = "mypy-0.812-cp37-cp37m-manylinux2010_x86_64.whl", hash = 
"sha256:5873888fff1c7cf5b71efbe80e0e73153fe9212fafdf8e44adfe4c20ec9f82d7"},
+    {file = "mypy-0.812-cp37-cp37m-win_amd64.whl", hash = 
"sha256:9f94aac67a2045ec719ffe6111df543bac7874cee01f41928f6969756e030564"},
+    {file = "mypy-0.812-cp38-cp38-macosx_10_9_x86_64.whl", hash = 
"sha256:d23e0ea196702d918b60c8288561e722bf437d82cb7ef2edcd98cfa38905d506"},
+    {file = "mypy-0.812-cp38-cp38-manylinux1_x86_64.whl", hash = 
"sha256:674e822aa665b9fd75130c6c5f5ed9564a38c6cea6a6432ce47eafb68ee578c5"},
+    {file = "mypy-0.812-cp38-cp38-manylinux2010_x86_64.whl", hash = 
"sha256:abf7e0c3cf117c44d9285cc6128856106183938c68fd4944763003decdcfeb66"},
+    {file = "mypy-0.812-cp38-cp38-win_amd64.whl", hash = 
"sha256:0d0a87c0e7e3a9becdfbe936c981d32e5ee0ccda3e0f07e1ef2c3d1a817cf73e"},
+    {file = "mypy-0.812-cp39-cp39-macosx_10_9_x86_64.whl", hash = 
"sha256:7ce3175801d0ae5fdfa79b4f0cfed08807af4d075b402b7e294e6aa72af9aa2a"},
+    {file = "mypy-0.812-cp39-cp39-manylinux1_x86_64.whl", hash = 
"sha256:b09669bcda124e83708f34a94606e01b614fa71931d356c1f1a5297ba11f110a"},
+    {file = "mypy-0.812-cp39-cp39-manylinux2010_x86_64.whl", hash = 
"sha256:33f159443db0829d16f0a8d83d94df3109bb6dd801975fe86bacb9bf71628e97"},
+    {file = "mypy-0.812-cp39-cp39-win_amd64.whl", hash = 
"sha256:3f2aca7f68580dc2508289c729bd49ee929a436208d2b2b6aab15745a70a57df"},
+    {file = "mypy-0.812-py3-none-any.whl", hash = 
"sha256:2f9b3407c58347a452fc0736861593e105139b905cca7d097e413453a1d650b4"},
+    {file = "mypy-0.812.tar.gz", hash = 
"sha256:cd07039aa5df222037005b08fbbfd69b3ab0b0bd7a07d7906de75ae52c4e3119"},
 ]
 mypy-extensions = [
     {file = "mypy_extensions-0.4.3-py2.py3-none-any.whl", hash = 
"sha256:090fedd75945a69ae91ce1303b5824f428daf5a028d2f6ab8a299250a846f15d"},
@@ -1852,7 +1862,8 @@
     {file = "olefile-0.46.zip", hash = 
"sha256:133b031eaf8fd2c9399b78b8bc5b8fcbe4c31e85295749bb17a87cba8f3c3964"},
 ]
 oletools = [
-    {file = "oletools-0.56.zip", hash = 
"sha256:8481cd60352399e15e9290ac57862a65952e9c83e3526ba833991a5c78f5cca1"},
+    {file = "oletools-0.56.1-py2.py3-none-any.whl", hash = 
"sha256:64b86e5bf1a1177717e79f9665e05fdc2c2ce13855d2190d8ec5f1665ff64d63"},
+    {file = "oletools-0.56.1.zip", hash = 
"sha256:f4370880011211b000ab3ff6d44dc376a20b1c189f3b56a3298bc67bdf1792cd"},
 ]
 packaging = [
     {file = "packaging-20.9-py2.py3-none-any.whl", hash = 
"sha256:67714da7f7bc052e064859c05c595155bd1ee9f69f76557e21f051443c20947a"},
@@ -1862,8 +1873,8 @@
     {file = "pandocfilters-1.4.3.tar.gz", hash = 
"sha256:bc63fbb50534b4b1f8ebe1860889289e8af94a23bff7445259592df25a3906eb"},
 ]
 parso = [
-    {file = "parso-0.7.1-py2.py3-none-any.whl", hash = 
"sha256:97218d9159b2520ff45eb78028ba8b50d2bc61dcc062a9682666f2dc4bd331ea"},
-    {file = "parso-0.7.1.tar.gz", hash = 
"sha256:caba44724b994a8a5e086460bb212abc5a8bc46951bf4a9a1210745953622eb9"},
+    {file = "parso-0.8.2-py2.py3-none-any.whl", hash = 
"sha256:a8c4922db71e4fdb90e0d0bc6e50f9b273d3397925e5e60a717e719201778d22"},
+    {file = "parso-0.8.2.tar.gz", hash = 
"sha256:12b83492c6239ce32ff5eed6d3639d6a536170723c6f3f1506869f1ace413398"},
 ]
 pcodedmp = [
     {file = "pcodedmp-1.2.6-py2.py3-none-any.whl", hash = 
"sha256:4441f7c0ab4cbda27bd4668db3b14f36261d86e5059ce06c0828602cbe1c4278"},
@@ -1913,8 +1924,8 @@
     {file = "Pillow-8.2.0.tar.gz", hash = 
"sha256:a787ab10d7bb5494e5f76536ac460741788f1fbce851068d73a87ca7c35fc3e1"},
 ]
 prometheus-client = [
-    {file = "prometheus_client-0.9.0-py2.py3-none-any.whl", hash = 
"sha256:b08c34c328e1bf5961f0b4352668e6c8f145b4a087e09b7296ef62cbe4693d35"},
-    {file = "prometheus_client-0.9.0.tar.gz", hash = 
"sha256:9da7b32f02439d8c04f7777021c304ed51d9ec180604700c1ba72a4d44dceb03"},
+    {file = "prometheus_client-0.10.1-py2.py3-none-any.whl", hash = 
"sha256:030e4f9df5f53db2292eec37c6255957eb76168c6f974e4176c711cf91ed34aa"},
+    {file = "prometheus_client-0.10.1.tar.gz", hash = 
"sha256:b6c5a9643e3545bcbfd9451766cbaa5d9c67e7303c7bc32c750b6fa70ecb107d"},
 ]
 prompt-toolkit = [
     {file = "prompt_toolkit-3.0.3-py3-none-any.whl", hash = 
"sha256:c93e53af97f630f12f5f62a3274e79527936ed466f038953dfa379d4941f651a"},
@@ -2032,35 +2043,35 @@
     {file = "recommonmark-0.7.1.tar.gz", hash = 
"sha256:bdb4db649f2222dcd8d2d844f0006b958d627f732415d399791ee436a3686d67"},
 ]
 reportlab = [
-    {file = "reportlab-3.5.66-cp36-cp36m-macosx_10_10_x86_64.whl", hash = 
"sha256:54827fa29843b15834e5bc618508f245f3addee7bf980eebacfebb74f150e611"},
-    {file = "reportlab-3.5.66-cp36-cp36m-manylinux1_i686.whl", hash = 
"sha256:b784685141fe3fc26d8f703b21f89073a0ce46a800d06b7d58f2ceb481a65644"},
-    {file = "reportlab-3.5.66-cp36-cp36m-manylinux1_x86_64.whl", hash = 
"sha256:fdf604246a5318157a581a483ceb0aab858582b478b24016768fdaff1c190f50"},
-    {file = "reportlab-3.5.66-cp36-cp36m-manylinux2010_i686.whl", hash = 
"sha256:374252d118719e7b9b1bd0e5ce3f7083b5aaaeb1a9422983aa63b116621d34ae"},
-    {file = "reportlab-3.5.66-cp36-cp36m-manylinux2010_x86_64.whl", hash = 
"sha256:7d4a59975a743eddc15895014d738bb38cbdecdd2496f651fb05779486bcb536"},
-    {file = "reportlab-3.5.66-cp36-cp36m-win32.whl", hash = 
"sha256:15aeb8f8bdad5fa666d18a7d229bc7eb8f4e5a1dc8423931b3e690b6ce5021bc"},
-    {file = "reportlab-3.5.66-cp36-cp36m-win_amd64.whl", hash = 
"sha256:879e1123d49e0df76c478cccdacd4a9f4a2b4b445beec3d72a05f8b3775daa84"},
-    {file = "reportlab-3.5.66-cp37-cp37m-macosx_10_10_x86_64.whl", hash = 
"sha256:ce04f4bf9d15895bbfee6d53eb168cffd9fcedc625f0fcb5c343d809d0b37271"},
-    {file = "reportlab-3.5.66-cp37-cp37m-manylinux1_i686.whl", hash = 
"sha256:45fe94e90c6b48c4ae877339b777fcc4f822795c1d4c7a0d6cffaf24987199b1"},
-    {file = "reportlab-3.5.66-cp37-cp37m-manylinux1_x86_64.whl", hash = 
"sha256:aa1ec9557c0d9dbe3eceb6581220aa1d77c404b8ff3decb40eae0bf075512142"},
-    {file = "reportlab-3.5.66-cp37-cp37m-manylinux2010_i686.whl", hash = 
"sha256:7711fcdb0c1edfb48dcffd7e73430e9b5ceba0816a37fd269a327cd13088bcaf"},
-    {file = "reportlab-3.5.66-cp37-cp37m-manylinux2010_x86_64.whl", hash = 
"sha256:55c903f8aea4fbfca26f9f821c77c576c9791ce487ddfa3ffa1f2c44c5af79e2"},
-    {file = "reportlab-3.5.66-cp37-cp37m-win32.whl", hash = 
"sha256:bdb0781d1d4d1ed0745f5f22c06ed60760865511e65046432d145f55fd908f60"},
-    {file = "reportlab-3.5.66-cp37-cp37m-win_amd64.whl", hash = 
"sha256:cf76145a89bb0ebf562c3252ce4d254547fe59daeb80ce2076d89867e9c03735"},
-    {file = "reportlab-3.5.66-cp38-cp38-macosx_10_10_x86_64.whl", hash = 
"sha256:6ff269ea41daa5cfd6124b13da1481fc40db2539fa82107dd9675f6670d95c25"},
-    {file = "reportlab-3.5.66-cp38-cp38-manylinux1_i686.whl", hash = 
"sha256:6fc3f01e9005ac53d639eafe22b3852937e42161d74a7d0681bc83f48cff1b30"},
-    {file = "reportlab-3.5.66-cp38-cp38-manylinux1_x86_64.whl", hash = 
"sha256:202109018f40d620812cf30dc300ea73385aed305d1de63c42229cb881821ffb"},
-    {file = "reportlab-3.5.66-cp38-cp38-manylinux2010_i686.whl", hash = 
"sha256:f8a8f8b62cc150f71310e444ded4e32e7136c75aced6738877c3328e84338c94"},
-    {file = "reportlab-3.5.66-cp38-cp38-manylinux2010_x86_64.whl", hash = 
"sha256:13ac281c8d5c904089022377bd9646c910deae63e7342dd9552088d330d73e89"},
-    {file = "reportlab-3.5.66-cp38-cp38-win32.whl", hash = 
"sha256:1db86072b0ec3e5f9c5ab2980c61658ae3acee86e204b0d4c48112bc5cffd2f5"},
-    {file = "reportlab-3.5.66-cp38-cp38-win_amd64.whl", hash = 
"sha256:ed4b80c24a4e5e91927aa95901cce3f6fef7551e94a72ac5a2fa22740708cbff"},
-    {file = "reportlab-3.5.66-cp39-cp39-macosx_10_10_x86_64.whl", hash = 
"sha256:536f1ebf951cd48623974ba160c95e7c7219d4aa5664cdae17dffa2f19cf1cf3"},
-    {file = "reportlab-3.5.66-cp39-cp39-manylinux1_i686.whl", hash = 
"sha256:e8ebb34f30a11ac4196ae83d0b4f1f87bbe326c0f8a6eb4b768e622ec7f017f5"},
-    {file = "reportlab-3.5.66-cp39-cp39-manylinux1_x86_64.whl", hash = 
"sha256:14f38792176e41642f9ea7a83678df156d8abb3a90bbe396425a200614eed03d"},
-    {file = "reportlab-3.5.66-cp39-cp39-manylinux2010_i686.whl", hash = 
"sha256:30e82ec00c566c4d8bfdcca0b93131749cc51ea0884395054d2afedf266f3f29"},
-    {file = "reportlab-3.5.66-cp39-cp39-manylinux2010_x86_64.whl", hash = 
"sha256:bd0870c840d47a6639df17c54f0c5676a06ab6798bb92ed8ef9b983c0326c2d0"},
-    {file = "reportlab-3.5.66-cp39-cp39-win32.whl", hash = 
"sha256:ad0d3f657addd9c4215faf2699eafd54e89e404e35d696dda9dbe3c126132900"},
-    {file = "reportlab-3.5.66-cp39-cp39-win_amd64.whl", hash = 
"sha256:3c1be70cf168ed29a449a009d7cad6dcc3e45d129f7ddb07b3854b8cee8d125b"},
-    {file = "reportlab-3.5.66.tar.gz", hash = 
"sha256:63fba51babad0047def4ffaa41d0065248ca39d680e98dc9e3010de5425539b4"},
+    {file = "reportlab-3.5.67-cp36-cp36m-macosx_10_10_x86_64.whl", hash = 
"sha256:51a2d5de2c605117cd25dfb3f51d1d14caf1cbed4ef6db582f085eeb0a0c922f"},
+    {file = "reportlab-3.5.67-cp36-cp36m-manylinux1_i686.whl", hash = 
"sha256:34d827c771d6b4d7b45f7fc49a638c97fbd8a0fab6c9d3838ff04d307420b739"},
+    {file = "reportlab-3.5.67-cp36-cp36m-manylinux1_x86_64.whl", hash = 
"sha256:e4b9b443e88735be4927529d66d9e1164b4fbd6a882e90114967eedc6ad608e7"},
+    {file = "reportlab-3.5.67-cp36-cp36m-manylinux2010_i686.whl", hash = 
"sha256:9517f26a512a62d49fc4800222b306e21a14ceec8bd82c93182313ef1eefaa7a"},
+    {file = "reportlab-3.5.67-cp36-cp36m-manylinux2010_x86_64.whl", hash = 
"sha256:5c483c96d4cbeb4919ad9fcf2f262e8e08e34dcbcf8d2bda16263ef002c890d4"},
+    {file = "reportlab-3.5.67-cp36-cp36m-win32.whl", hash = 
"sha256:9989737a409235a734ec783b0545f2966247b26ff555e847f3d0f945e5a11493"},
+    {file = "reportlab-3.5.67-cp36-cp36m-win_amd64.whl", hash = 
"sha256:e2b47a8e0126ec0a3820a2e299a94a6fc29ba132249957dd32c447d380eaae5f"},
+    {file = "reportlab-3.5.67-cp37-cp37m-macosx_10_10_x86_64.whl", hash = 
"sha256:8cd355f8a4c7c126a246f4b4a9803c80498939709bb37d3db4f8dbee1eb7d8f0"},
+    {file = "reportlab-3.5.67-cp37-cp37m-manylinux1_i686.whl", hash = 
"sha256:0d670e119d7f7a68a1136de024464999e8e3d5d1491f23cdd39d5d72481af88f"},
+    {file = "reportlab-3.5.67-cp37-cp37m-manylinux1_x86_64.whl", hash = 
"sha256:df2784a474028b15a723f6b347625f1f91740de418bed4a0a2694c954de34dd7"},
+    {file = "reportlab-3.5.67-cp37-cp37m-manylinux2010_i686.whl", hash = 
"sha256:9c0d71aef4fb5d30dc6ebd08a2bce317a7eaf37d468f85320947eb580daea90a"},
+    {file = "reportlab-3.5.67-cp37-cp37m-manylinux2010_x86_64.whl", hash = 
"sha256:b2b72a0742a493979c348dc3c9a329bd5b87e4243ffecf837b1c8739d58410ba"},
+    {file = "reportlab-3.5.67-cp37-cp37m-win32.whl", hash = 
"sha256:1e41b441542881e007420530bbc028f08c0f546ecaaebdf9f065f901acdac106"},
+    {file = "reportlab-3.5.67-cp37-cp37m-win_amd64.whl", hash = 
"sha256:6a3119d0e985e5c7dadfcf29fb79bbab19806b08ad901622b23f5868c0221fce"},
+    {file = "reportlab-3.5.67-cp38-cp38-macosx_10_10_x86_64.whl", hash = 
"sha256:bda784ebb116d56d3e7133c8e0942cf68cb7fd58bdccf57231dbe56b6430eb01"},
+    {file = "reportlab-3.5.67-cp38-cp38-manylinux1_i686.whl", hash = 
"sha256:55ef4476b2cdecfa643ae4d7591aa157568f903c378c83ea544650b33b2d856d"},
+    {file = "reportlab-3.5.67-cp38-cp38-manylinux1_x86_64.whl", hash = 
"sha256:72bb5417f198eb059f01d5a9e1ef80f2fbaf3eaa4cd63e9a681bbbd0ed9fcdf9"},
+    {file = "reportlab-3.5.67-cp38-cp38-manylinux2010_i686.whl", hash = 
"sha256:519ef25d49fe807c6c0402abb5fe4d14b47a8e2358050d8d7673beecfbe116b2"},
+    {file = "reportlab-3.5.67-cp38-cp38-manylinux2010_x86_64.whl", hash = 
"sha256:9d48fd4a1c2d98ec6686511717f0980d36f5590e038d5afe4e5241f328f06e38"},
+    {file = "reportlab-3.5.67-cp38-cp38-win32.whl", hash = 
"sha256:9945e80a0a6e370f90a23907cc70a0811e808f79420fb9051e26d9c79eb8e26b"},
+    {file = "reportlab-3.5.67-cp38-cp38-win_amd64.whl", hash = 
"sha256:370c5225f0c395a9f1482ac8d4f974d2073548f186eaf49ceb91414f534ad4d8"},
+    {file = "reportlab-3.5.67-cp39-cp39-macosx_10_10_x86_64.whl", hash = 
"sha256:42b90b0cb3556f4d1cc1c538345abc249b6ff58939d3af5e37f5fa8421d9ae07"},
+    {file = "reportlab-3.5.67-cp39-cp39-manylinux1_i686.whl", hash = 
"sha256:5b4acfb15ca028bbc652a6c8d63073dec2a3c8c0db7585d68b96b52940f65899"},
+    {file = "reportlab-3.5.67-cp39-cp39-manylinux1_x86_64.whl", hash = 
"sha256:492bd47aabeaa3215cde7a8d3c0d88c909bf7e6b63f0b511a645f1ffc1e948f6"},
+    {file = "reportlab-3.5.67-cp39-cp39-manylinux2010_i686.whl", hash = 
"sha256:af12fbff15a9652ef117456d1d6a4d6fade8fdc02670d6fd31212402e9d03559"},
+    {file = "reportlab-3.5.67-cp39-cp39-manylinux2010_x86_64.whl", hash = 
"sha256:5c931032aa955431c808e469eb0780ca7d12b39228a02ae7ea09f63d47b1e260"},
+    {file = "reportlab-3.5.67-cp39-cp39-win32.whl", hash = 
"sha256:4c5785b018ed6f48e762737deaa6b7528b0ba43ad67fca566bf10d0337a76dcd"},
+    {file = "reportlab-3.5.67-cp39-cp39-win_amd64.whl", hash = 
"sha256:1656722530b3bbce012b093abf6290ab76dcba39d21f9e703310b008ddc7ffe9"},
+    {file = "reportlab-3.5.67.tar.gz", hash = 
"sha256:0cf2206c73fbca752c8bd39e12bb9ad7f2d01e6fcb2b25b9eaf94ea042fe86c9"},
 ]
 requests = [
     {file = "requests-2.25.1-py2.py3-none-any.whl", hash = 
"sha256:c210084e36a42ae6b9219e00e48287def368a26d03a048ddad7bfee44f75871e"},
@@ -2091,12 +2102,12 @@
     {file = "soupsieve-2.2.1.tar.gz", hash = 
"sha256:052774848f448cf19c7e959adf5566904d525f33a3f8b6ba6f6f8f26ec7de0cc"},
 ]
 sphinx = [
-    {file = "Sphinx-3.5.3-py3-none-any.whl", hash = 
"sha256:3f01732296465648da43dec8fb40dc451ba79eb3e2cc5c6d79005fd98197107d"},
-    {file = "Sphinx-3.5.3.tar.gz", hash = 
"sha256:ce9c228456131bab09a3d7d10ae58474de562a6f79abb3dc811ae401cf8c1abc"},
+    {file = "Sphinx-3.5.4-py3-none-any.whl", hash = 
"sha256:2320d4e994a191f4b4be27da514e46b3d6b420f2ff895d064f52415d342461e8"},
+    {file = "Sphinx-3.5.4.tar.gz", hash = 
"sha256:19010b7b9fa0dc7756a6e105b2aacd3a80f798af3c25c273be64d7beeb482cb1"},
 ]
 sphinx-autodoc-typehints = [
-    {file = "sphinx-autodoc-typehints-1.11.1.tar.gz", hash = 
"sha256:244ba6d3e2fdb854622f643c7763d6f95b6886eba24bec28e86edf205e4ddb20"},
-    {file = "sphinx_autodoc_typehints-1.11.1-py3-none-any.whl", hash = 
"sha256:da049791d719f4c9813642496ee4764203e317f0697eb75446183fa2a68e3f77"},
+    {file = "sphinx-autodoc-typehints-1.12.0.tar.gz", hash = 
"sha256:193617d9dbe0847281b1399d369e74e34cd959c82e02c7efde077fca908a9f52"},
+    {file = "sphinx_autodoc_typehints-1.12.0-py3-none-any.whl", hash = 
"sha256:5e81776ec422dd168d688ab60f034fccfafbcd94329e9537712c93003bddc04a"},
 ]
 sphinxcontrib-applehelp = [
     {file = "sphinxcontrib-applehelp-1.0.2.tar.gz", hash = 
"sha256:a072735ec80e7675e3f432fcae8610ecf509c5f1869d17e2eecff44389cdbc58"},
@@ -2178,36 +2189,36 @@
     {file = "traitlets-4.3.3.tar.gz", hash = 
"sha256:d023ee369ddd2763310e4c3eae1ff649689440d4ae59d7485eb4cfbbe3e359f7"},
 ]
 typed-ast = [
-    {file = "typed_ast-1.4.2-cp35-cp35m-manylinux1_i686.whl", hash = 
"sha256:7703620125e4fb79b64aa52427ec192822e9f45d37d4b6625ab37ef403e1df70"},
-    {file = "typed_ast-1.4.2-cp35-cp35m-manylinux1_x86_64.whl", hash = 
"sha256:c9aadc4924d4b5799112837b226160428524a9a45f830e0d0f184b19e4090487"},
-    {file = "typed_ast-1.4.2-cp35-cp35m-manylinux2014_aarch64.whl", hash = 
"sha256:9ec45db0c766f196ae629e509f059ff05fc3148f9ffd28f3cfe75d4afb485412"},
-    {file = "typed_ast-1.4.2-cp35-cp35m-win32.whl", hash = 
"sha256:85f95aa97a35bdb2f2f7d10ec5bbdac0aeb9dafdaf88e17492da0504de2e6400"},
-    {file = "typed_ast-1.4.2-cp35-cp35m-win_amd64.whl", hash = 
"sha256:9044ef2df88d7f33692ae3f18d3be63dec69c4fb1b5a4a9ac950f9b4ba571606"},
-    {file = "typed_ast-1.4.2-cp36-cp36m-macosx_10_9_x86_64.whl", hash = 
"sha256:c1c876fd795b36126f773db9cbb393f19808edd2637e00fd6caba0e25f2c7b64"},
-    {file = "typed_ast-1.4.2-cp36-cp36m-manylinux1_i686.whl", hash = 
"sha256:5dcfc2e264bd8a1db8b11a892bd1647154ce03eeba94b461effe68790d8b8e07"},
-    {file = "typed_ast-1.4.2-cp36-cp36m-manylinux1_x86_64.whl", hash = 
"sha256:8db0e856712f79c45956da0c9a40ca4246abc3485ae0d7ecc86a20f5e4c09abc"},
-    {file = "typed_ast-1.4.2-cp36-cp36m-manylinux2014_aarch64.whl", hash = 
"sha256:d003156bb6a59cda9050e983441b7fa2487f7800d76bdc065566b7d728b4581a"},
-    {file = "typed_ast-1.4.2-cp36-cp36m-win32.whl", hash = 
"sha256:4c790331247081ea7c632a76d5b2a265e6d325ecd3179d06e9cf8d46d90dd151"},
-    {file = "typed_ast-1.4.2-cp36-cp36m-win_amd64.whl", hash = 
"sha256:d175297e9533d8d37437abc14e8a83cbc68af93cc9c1c59c2c292ec59a0697a3"},
-    {file = "typed_ast-1.4.2-cp37-cp37m-macosx_10_9_x86_64.whl", hash = 
"sha256:cf54cfa843f297991b7388c281cb3855d911137223c6b6d2dd82a47ae5125a41"},
-    {file = "typed_ast-1.4.2-cp37-cp37m-manylinux1_i686.whl", hash = 
"sha256:b4fcdcfa302538f70929eb7b392f536a237cbe2ed9cba88e3bf5027b39f5f77f"},
-    {file = "typed_ast-1.4.2-cp37-cp37m-manylinux1_x86_64.whl", hash = 
"sha256:987f15737aba2ab5f3928c617ccf1ce412e2e321c77ab16ca5a293e7bbffd581"},
-    {file = "typed_ast-1.4.2-cp37-cp37m-manylinux2014_aarch64.whl", hash = 
"sha256:37f48d46d733d57cc70fd5f30572d11ab8ed92da6e6b28e024e4a3edfb456e37"},
-    {file = "typed_ast-1.4.2-cp37-cp37m-win32.whl", hash = 
"sha256:36d829b31ab67d6fcb30e185ec996e1f72b892255a745d3a82138c97d21ed1cd"},
-    {file = "typed_ast-1.4.2-cp37-cp37m-win_amd64.whl", hash = 
"sha256:8368f83e93c7156ccd40e49a783a6a6850ca25b556c0fa0240ed0f659d2fe496"},
-    {file = "typed_ast-1.4.2-cp38-cp38-macosx_10_9_x86_64.whl", hash = 
"sha256:963c80b583b0661918718b095e02303d8078950b26cc00b5e5ea9ababe0de1fc"},
-    {file = "typed_ast-1.4.2-cp38-cp38-manylinux1_i686.whl", hash = 
"sha256:e683e409e5c45d5c9082dc1daf13f6374300806240719f95dc783d1fc942af10"},
-    {file = "typed_ast-1.4.2-cp38-cp38-manylinux1_x86_64.whl", hash = 
"sha256:84aa6223d71012c68d577c83f4e7db50d11d6b1399a9c779046d75e24bed74ea"},
-    {file = "typed_ast-1.4.2-cp38-cp38-manylinux2014_aarch64.whl", hash = 
"sha256:a38878a223bdd37c9709d07cd357bb79f4c760b29210e14ad0fb395294583787"},
-    {file = "typed_ast-1.4.2-cp38-cp38-win32.whl", hash = 
"sha256:a2c927c49f2029291fbabd673d51a2180038f8cd5a5b2f290f78c4516be48be2"},
-    {file = "typed_ast-1.4.2-cp38-cp38-win_amd64.whl", hash = 
"sha256:c0c74e5579af4b977c8b932f40a5464764b2f86681327410aa028a22d2f54937"},
-    {file = "typed_ast-1.4.2-cp39-cp39-macosx_10_9_x86_64.whl", hash = 
"sha256:07d49388d5bf7e863f7fa2f124b1b1d89d8aa0e2f7812faff0a5658c01c59aa1"},
-    {file = "typed_ast-1.4.2-cp39-cp39-manylinux1_i686.whl", hash = 
"sha256:240296b27397e4e37874abb1df2a608a92df85cf3e2a04d0d4d61055c8305ba6"},
-    {file = "typed_ast-1.4.2-cp39-cp39-manylinux1_x86_64.whl", hash = 
"sha256:d746a437cdbca200622385305aedd9aef68e8a645e385cc483bdc5e488f07166"},
-    {file = "typed_ast-1.4.2-cp39-cp39-manylinux2014_aarch64.whl", hash = 
"sha256:14bf1522cdee369e8f5581238edac09150c765ec1cb33615855889cf33dcb92d"},
-    {file = "typed_ast-1.4.2-cp39-cp39-win32.whl", hash = 
"sha256:cc7b98bf58167b7f2db91a4327da24fb93368838eb84a44c472283778fc2446b"},
-    {file = "typed_ast-1.4.2-cp39-cp39-win_amd64.whl", hash = 
"sha256:7147e2a76c75f0f64c4319886e7639e490fee87c9d25cb1d4faef1d8cf83a440"},
-    {file = "typed_ast-1.4.2.tar.gz", hash = 
"sha256:9fc0b3cb5d1720e7141d103cf4819aea239f7d136acf9ee4a69b047b7986175a"},
+    {file = "typed_ast-1.4.3-cp35-cp35m-manylinux1_i686.whl", hash = 
"sha256:2068531575a125b87a41802130fa7e29f26c09a2833fea68d9a40cf33902eba6"},
+    {file = "typed_ast-1.4.3-cp35-cp35m-manylinux1_x86_64.whl", hash = 
"sha256:c907f561b1e83e93fad565bac5ba9c22d96a54e7ea0267c708bffe863cbe4075"},
+    {file = "typed_ast-1.4.3-cp35-cp35m-manylinux2014_aarch64.whl", hash = 
"sha256:1b3ead4a96c9101bef08f9f7d1217c096f31667617b58de957f690c92378b528"},
+    {file = "typed_ast-1.4.3-cp35-cp35m-win32.whl", hash = 
"sha256:dde816ca9dac1d9c01dd504ea5967821606f02e510438120091b84e852367428"},
+    {file = "typed_ast-1.4.3-cp35-cp35m-win_amd64.whl", hash = 
"sha256:777a26c84bea6cd934422ac2e3b78863a37017618b6e5c08f92ef69853e765d3"},
+    {file = "typed_ast-1.4.3-cp36-cp36m-macosx_10_9_x86_64.whl", hash = 
"sha256:f8afcf15cc511ada719a88e013cec87c11aff7b91f019295eb4530f96fe5ef2f"},
+    {file = "typed_ast-1.4.3-cp36-cp36m-manylinux1_i686.whl", hash = 
"sha256:52b1eb8c83f178ab787f3a4283f68258525f8d70f778a2f6dd54d3b5e5fb4341"},
+    {file = "typed_ast-1.4.3-cp36-cp36m-manylinux1_x86_64.whl", hash = 
"sha256:01ae5f73431d21eead5015997ab41afa53aa1fbe252f9da060be5dad2c730ace"},
+    {file = "typed_ast-1.4.3-cp36-cp36m-manylinux2014_aarch64.whl", hash = 
"sha256:c190f0899e9f9f8b6b7863debfb739abcb21a5c054f911ca3596d12b8a4c4c7f"},
+    {file = "typed_ast-1.4.3-cp36-cp36m-win32.whl", hash = 
"sha256:398e44cd480f4d2b7ee8d98385ca104e35c81525dd98c519acff1b79bdaac363"},
+    {file = "typed_ast-1.4.3-cp36-cp36m-win_amd64.whl", hash = 
"sha256:bff6ad71c81b3bba8fa35f0f1921fb24ff4476235a6e94a26ada2e54370e6da7"},
+    {file = "typed_ast-1.4.3-cp37-cp37m-macosx_10_9_x86_64.whl", hash = 
"sha256:0fb71b8c643187d7492c1f8352f2c15b4c4af3f6338f21681d3681b3dc31a266"},
+    {file = "typed_ast-1.4.3-cp37-cp37m-manylinux1_i686.whl", hash = 
"sha256:760ad187b1041a154f0e4d0f6aae3e40fdb51d6de16e5c99aedadd9246450e9e"},
+    {file = "typed_ast-1.4.3-cp37-cp37m-manylinux1_x86_64.whl", hash = 
"sha256:5feca99c17af94057417d744607b82dd0a664fd5e4ca98061480fd8b14b18d04"},
+    {file = "typed_ast-1.4.3-cp37-cp37m-manylinux2014_aarch64.whl", hash = 
"sha256:95431a26309a21874005845c21118c83991c63ea800dd44843e42a916aec5899"},
+    {file = "typed_ast-1.4.3-cp37-cp37m-win32.whl", hash = 
"sha256:aee0c1256be6c07bd3e1263ff920c325b59849dc95392a05f258bb9b259cf39c"},
+    {file = "typed_ast-1.4.3-cp37-cp37m-win_amd64.whl", hash = 
"sha256:9ad2c92ec681e02baf81fdfa056fe0d818645efa9af1f1cd5fd6f1bd2bdfd805"},
+    {file = "typed_ast-1.4.3-cp38-cp38-macosx_10_9_x86_64.whl", hash = 
"sha256:b36b4f3920103a25e1d5d024d155c504080959582b928e91cb608a65c3a49e1a"},
+    {file = "typed_ast-1.4.3-cp38-cp38-manylinux1_i686.whl", hash = 
"sha256:067a74454df670dcaa4e59349a2e5c81e567d8d65458d480a5b3dfecec08c5ff"},
+    {file = "typed_ast-1.4.3-cp38-cp38-manylinux1_x86_64.whl", hash = 
"sha256:7538e495704e2ccda9b234b82423a4038f324f3a10c43bc088a1636180f11a41"},
+    {file = "typed_ast-1.4.3-cp38-cp38-manylinux2014_aarch64.whl", hash = 
"sha256:af3d4a73793725138d6b334d9d247ce7e5f084d96284ed23f22ee626a7b88e39"},
+    {file = "typed_ast-1.4.3-cp38-cp38-win32.whl", hash = 
"sha256:f2362f3cb0f3172c42938946dbc5b7843c2a28aec307c49100c8b38764eb6927"},
+    {file = "typed_ast-1.4.3-cp38-cp38-win_amd64.whl", hash = 
"sha256:dd4a21253f42b8d2b48410cb31fe501d32f8b9fbeb1f55063ad102fe9c425e40"},
+    {file = "typed_ast-1.4.3-cp39-cp39-macosx_10_9_x86_64.whl", hash = 
"sha256:f328adcfebed9f11301eaedfa48e15bdece9b519fb27e6a8c01aa52a17ec31b3"},
+    {file = "typed_ast-1.4.3-cp39-cp39-manylinux1_i686.whl", hash = 
"sha256:2c726c276d09fc5c414693a2de063f521052d9ea7c240ce553316f70656c84d4"},
+    {file = "typed_ast-1.4.3-cp39-cp39-manylinux1_x86_64.whl", hash = 
"sha256:cae53c389825d3b46fb37538441f75d6aecc4174f615d048321b716df2757fb0"},
+    {file = "typed_ast-1.4.3-cp39-cp39-manylinux2014_aarch64.whl", hash = 
"sha256:b9574c6f03f685070d859e75c7f9eeca02d6933273b5e69572e5ff9d5e3931c3"},
+    {file = "typed_ast-1.4.3-cp39-cp39-win32.whl", hash = 
"sha256:209596a4ec71d990d71d5e0d312ac935d86930e6eecff6ccc7007fe54d703808"},
+    {file = "typed_ast-1.4.3-cp39-cp39-win_amd64.whl", hash = 
"sha256:9c6d1a54552b5330bc657b7ef0eae25d00ba7ffe85d9ea8ae6540d2197a3788c"},
+    {file = "typed_ast-1.4.3.tar.gz", hash = 
"sha256:fb1bbeac803adea29cedd70781399c99138358c26d05fcbd23c13016b7f5ec65"},
 ]
 typing-extensions = [
     {file = "typing_extensions-3.7.4.3-py2-none-any.whl", hash = 
"sha256:dafc7639cde7f1b6e1acc0f457842a83e722ccca8eef5270af2d74792619a89f"},
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/PyMISP-2.4.141.1/pymisp/__init__.py 
new/PyMISP-2.4.142/pymisp/__init__.py
--- old/PyMISP-2.4.141.1/pymisp/__init__.py     2021-04-02 16:36:34.000000000 
+0200
+++ new/PyMISP-2.4.142/pymisp/__init__.py       2021-04-26 10:54:35.000000000 
+0200
@@ -1,4 +1,4 @@
-__version__ = '2.4.141.1'
+__version__ = '2.4.142'
 import logging
 import sys
 import warnings
@@ -28,7 +28,12 @@
     warning_2022()
     from .exceptions import PyMISPError, NewEventError, NewAttributeError, 
MissingDependency, NoURL, NoKey, InvalidMISPObject, UnknownMISPObjectTemplate, 
PyMISPInvalidFormat, MISPServerError, PyMISPNotImplementedYet, 
PyMISPUnexpectedResponse, PyMISPEmptyResponse  # noqa
     from .abstract import AbstractMISP, MISPEncode, pymisp_json_default, 
MISPTag, Distribution, ThreatLevel, Analysis  # noqa
-    from .mispevent import MISPEvent, MISPAttribute, MISPObjectReference, 
MISPObjectAttribute, MISPObject, MISPUser, MISPOrganisation, MISPSighting, 
MISPLog, MISPShadowAttribute, MISPWarninglist, MISPTaxonomy, MISPNoticelist, 
MISPObjectTemplate, MISPSharingGroup, MISPRole, MISPServer, MISPFeed, 
MISPEventDelegation, MISPUserSetting, MISPInbox, MISPEventBlocklist, 
MISPOrganisationBlocklist, MISPEventReport, MISPGalaxyCluster, 
MISPGalaxyClusterElement, MISPGalaxyClusterRelation # noqa
+    from .mispevent import (MISPEvent, MISPAttribute, MISPObjectReference, 
MISPObjectAttribute, MISPObject, MISPUser, # noqa
+                            MISPOrganisation, MISPSighting, MISPLog, 
MISPShadowAttribute, MISPWarninglist, MISPTaxonomy,
+                            MISPNoticelist, MISPObjectTemplate, 
MISPSharingGroup, MISPRole, MISPServer, MISPFeed,
+                            MISPEventDelegation, MISPUserSetting, MISPInbox, 
MISPEventBlocklist, MISPOrganisationBlocklist,
+                            MISPEventReport, MISPGalaxyCluster, 
MISPGalaxyClusterElement, MISPGalaxyClusterRelation,
+                            MISPCorrelationExclusion)
     from .tools import AbstractMISPObjectGenerator  # noqa
     from .tools import Neo4j  # noqa
     from .tools import openioc  # noqa
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/PyMISP-2.4.141.1/pymisp/api.py 
new/PyMISP-2.4.142/pymisp/api.py
--- old/PyMISP-2.4.141.1/pymisp/api.py  2021-04-02 16:36:34.000000000 +0200
+++ new/PyMISP-2.4.142/pymisp/api.py    2021-04-26 10:54:35.000000000 +0200
@@ -25,7 +25,7 @@
     MISPGalaxy, MISPNoticelist, MISPObjectReference, MISPObjectTemplate, 
MISPSharingGroup, \
     MISPRole, MISPServer, MISPFeed, MISPEventDelegation, MISPCommunity, 
MISPUserSetting, \
     MISPInbox, MISPEventBlocklist, MISPOrganisationBlocklist, MISPEventReport, 
\
-    MISPGalaxyCluster, MISPGalaxyClusterRelation
+    MISPGalaxyCluster, MISPGalaxyClusterRelation, MISPCorrelationExclusion
 from .abstract import pymisp_json_default, MISPTag, AbstractMISP, 
describe_types
 
 SearchType = TypeVar('SearchType', str, int)
@@ -1301,6 +1301,69 @@
 
     # ## END Noticelist ###
 
+    # ## BEGIN Correlation Exclusions ###
+
+    def correlation_exclusions(self, pythonify: bool = False) -> Union[Dict, 
List[MISPCorrelationExclusion]]:
+        """Get all the correlation exclusions
+
+        :param pythonify: Returns a list of PyMISP Objects instead of the 
plain json output. Warning: it might use a lot of RAM
+        """
+        r = self._prepare_request('GET', 'correlation_exclusions')
+        correlation_exclusions = self._check_json_response(r)
+        if not (self.global_pythonify or pythonify) or 'errors' in 
correlation_exclusions:
+            return correlation_exclusions
+        to_return = []
+        for correlation_exclusion in correlation_exclusions:
+            c = MISPCorrelationExclusion()
+            c.from_dict(**correlation_exclusion)
+            to_return.append(c)
+        return to_return
+
+    def get_correlation_exclusion(self, correlation_exclusion: 
Union[MISPCorrelationExclusion, int, str, UUID], pythonify: bool = False) -> 
Union[Dict, MISPCorrelationExclusion]:
+        """Get a correlation exclusion by ID
+
+        :param correlation_exclusion: Correlation exclusion to get
+        :param pythonify: Returns a PyMISP Object instead of the plain json 
output
+        """
+        exclusion_id = get_uuid_or_id_from_abstract_misp(correlation_exclusion)
+        r = self._prepare_request('GET', 
f'correlation_exclusions/view/{exclusion_id}')
+        correlation_exclusion_j = self._check_json_response(r)
+        if not (self.global_pythonify or pythonify) or 'errors' in 
correlation_exclusion_j:
+            return correlation_exclusion_j
+        c = MISPCorrelationExclusion()
+        c.from_dict(**correlation_exclusion_j)
+        return c
+
+    def add_correlation_exclusion(self, correlation_exclusion: 
MISPCorrelationExclusion, pythonify: bool = False) -> Union[Dict, 
MISPCorrelationExclusion]:
+        """Add a new correlation exclusion
+
+        :param correlation_exclusion: correlation exclusion to add
+        :param pythonify: Returns a PyMISP Object instead of the plain json 
output
+        """
+        r = self._prepare_request('POST', 'correlation_exclusions/add', 
data=correlation_exclusion)
+        new_correlation_exclusion = self._check_json_response(r)
+        if not (self.global_pythonify or pythonify) or 'errors' in 
new_correlation_exclusion:
+            return new_correlation_exclusion
+        c = MISPCorrelationExclusion()
+        c.from_dict(**new_correlation_exclusion)
+        return c
+
+    def delete_correlation_exclusion(self, correlation_exclusion: 
Union[MISPCorrelationExclusion, int, str, UUID]) -> Dict:
+        """Delete a correlation exclusion
+
+        :param correlation_exclusion: The MISPCorrelationExclusion you wish to 
delete from MISP
+        """
+        exclusion_id = get_uuid_or_id_from_abstract_misp(correlation_exclusion)
+        r = self._prepare_request('POST', 
f'correlation_exclusions/delete/{exclusion_id}')
+        return self._check_json_response(r)
+
+    def clean_correlation_exclusions(self):
+        """Initiate correlation exclusions cleanup"""
+        r = self._prepare_request('POST', 'correlation_exclusions/clean')
+        return self._check_json_response(r)
+
+    # ## END Correlation Exclusions ###
+
     # ## BEGIN Galaxy ###
 
     def galaxies(self, pythonify: bool = False) -> Union[Dict, 
List[MISPGalaxy]]:
@@ -1564,9 +1627,9 @@
             feed_id = get_uuid_or_id_from_abstract_misp(feed)  # In case we 
have a UUID
             f = MISPFeed()
             f.id = feed_id
-            f.enabled = True
         else:
             f = feed
+        f.enabled = True
         return self.update_feed(feed=f, pythonify=pythonify)
 
     def disable_feed(self, feed: Union[MISPFeed, int, str, UUID], pythonify: 
bool = False) -> Union[Dict, MISPFeed]:
@@ -1579,9 +1642,9 @@
             feed_id = get_uuid_or_id_from_abstract_misp(feed)  # In case we 
have a UUID
             f = MISPFeed()
             f.id = feed_id
-            f.enabled = False
         else:
             f = feed
+        f.enabled = False
         return self.update_feed(feed=f, pythonify=pythonify)
 
     def enable_feed_cache(self, feed: Union[MISPFeed, int, str, UUID], 
pythonify: bool = False) -> Union[Dict, MISPFeed]:
@@ -1594,9 +1657,9 @@
             feed_id = get_uuid_or_id_from_abstract_misp(feed)  # In case we 
have a UUID
             f = MISPFeed()
             f.id = feed_id
-            f.caching_enabled = True
         else:
             f = feed
+        f.caching_enabled = True
         return self.update_feed(feed=f, pythonify=pythonify)
 
     def disable_feed_cache(self, feed: Union[MISPFeed, int, str, UUID], 
pythonify: bool = False) -> Union[Dict, MISPFeed]:
@@ -1609,9 +1672,9 @@
             feed_id = get_uuid_or_id_from_abstract_misp(feed)  # In case we 
have a UUID
             f = MISPFeed()
             f.id = feed_id
-            f.caching_enabled = False
         else:
             f = feed
+        f.caching_enabled = False
         return self.update_feed(feed=f, pythonify=pythonify)
 
     def update_feed(self, feed: MISPFeed, feed_id: Optional[int] = None, 
pythonify: bool = False) -> Union[Dict, MISPFeed]:
@@ -2251,6 +2314,7 @@
                **kwargs) -> Union[Dict, str, List[Union[MISPEvent, 
MISPAttribute, MISPObject]]]:
         '''Search in the MISP instance
 
+        :param controller: Controller to search on, it can be `events`, 
`objects`, `attributes`. The response will either be a list of events, objects, 
or attributes.
         :param return_format: Set the return format of the search (Currently 
supported: json, xml, openioc, suricata, snort - more formats are being moved 
to restSearch with the goal being that all searches happen through this API). 
Can be passed as the first parameter after restSearch or via the JSON payload.
         :param limit: Limit the number of results returned, depending on the 
scope (for example 10 attributes or 10 full events).
         :param page: If a limit is set, sets the page to be returned. page 3, 
limit 100 will return records 201->300).
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/PyMISP-2.4.141.1/pymisp/mispevent.py 
new/PyMISP-2.4.142/pymisp/mispevent.py
--- old/PyMISP-2.4.141.1/pymisp/mispevent.py    2021-04-02 16:36:34.000000000 
+0200
+++ new/PyMISP-2.4.142/pymisp/mispevent.py      2021-04-26 10:54:35.000000000 
+0200
@@ -2071,6 +2071,14 @@
         super().from_dict(**kwargs)
 
 
+class MISPCorrelationExclusion(AbstractMISP):
+
+    def from_dict(self, **kwargs):
+        if 'CorrelationExclusion' in kwargs:
+            kwargs = kwargs['CorrelationExclusion']
+        super().from_dict(**kwargs)
+
+
 class MISPRole(AbstractMISP):
 
     def __init__(self, **kwargs):
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/PyMISP-2.4.141.1/pyproject.toml 
new/PyMISP-2.4.142/pyproject.toml
--- old/PyMISP-2.4.141.1/pyproject.toml 2021-04-02 16:36:34.000000000 +0200
+++ new/PyMISP-2.4.142/pyproject.toml   2021-04-26 10:54:35.000000000 +0200
@@ -1,6 +1,6 @@
 [tool.poetry]
 name = "pymisp"
-version = "2.4.141.1"
+version = "2.4.142"
 description = "Python API for MISP."
 authors = ["Rapha??l Vinot <raphael.vi...@circl.lu>"]
 license = "BSD-2-Clause"
@@ -42,23 +42,23 @@
 
 [tool.poetry.dependencies]
 python = "^3.6"
-requests = "^2.25.0"
+requests = "^2.25.1"
 python-dateutil = "^2.8.1"
 jsonschema = "^3.2.0"
-deprecated = "^1.2.10"
-extract_msg = {version = "^0.28.0", optional = true}
+deprecated = "^1.2.12"
+extract_msg = {version = "^0.28.7", optional = true}
 RTFDE = {version = "^0.0.2", optional = true}
-oletools = {version = "^0.56", optional = true}
-python-magic = {version = "^0.4.18", optional = true}
+oletools = {version = "^0.56.1", optional = true}
+python-magic = {version = "^0.4.22", optional = true}
 pydeep = {version = "^0.4", optional = true}
-lief = {version = "^0.11.2", optional = true}
+lief = {version = "^0.11.4", optional = true}
 beautifulsoup4 = {version = "^4.9.3", optional = true}
-validators = {version = "^0.18.1", optional = true}
-sphinx-autodoc-typehints = {version = "^1.11.1", optional = true}
+validators = {version = "^0.18.2", optional = true}
+sphinx-autodoc-typehints = {version = "^1.12.0", optional = true}
 recommonmark = {version = "^0.7.1", optional = true}
-reportlab = {version = "^3.5.55", optional = true}
+reportlab = {version = "^3.5.67", optional = true}
 pyfaup = {version = "^1.2", optional = true}
-urllib3 = {extras = ["brotli"], version = "^1.26.3", optional = true}
+urllib3 = {extras = ["brotli"], version = "^1.26.4", optional = true}
 
 
 [tool.poetry.extras]
@@ -73,15 +73,13 @@
 
 [tool.poetry.dev-dependencies]
 nose = "^1.3.7"
-coveralls = "^3.0.0"
-codecov = "^2.1.10"
+coveralls = "^3.0.1"
+codecov = "^2.1.11"
 requests-mock = "^1.8.0"
-mypy = "^0.790"
-flake8 = "^3.8.4"
+mypy = "^0.812"
+flake8 = "^3.9.0"
 ipython = "^7.16.1"
-jupyterlab = "^2.2.9"
-# jedi 0.18.0 breaks ipython
-jedi = "<0.18.0"
+jupyterlab = "^2.3.1"
 
 [build-system]
 requires = ["poetry_core>=1.0", "setuptools"]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/PyMISP-2.4.141.1/tests/testlive_comprehensive.py 
new/PyMISP-2.4.142/tests/testlive_comprehensive.py
--- old/PyMISP-2.4.141.1/tests/testlive_comprehensive.py        2021-04-02 
16:36:34.000000000 +0200
+++ new/PyMISP-2.4.142/tests/testlive_comprehensive.py  2021-04-26 
10:54:35.000000000 +0200
@@ -27,7 +27,7 @@
 
 
 try:
-    from pymisp import register_user, PyMISP, MISPEvent, MISPOrganisation, 
MISPUser, Distribution, ThreatLevel, Analysis, MISPObject, MISPAttribute, 
MISPSighting, MISPShadowAttribute, MISPTag, MISPSharingGroup, MISPFeed, 
MISPServer, MISPUserSetting, MISPEventBlocklist, MISPEventReport, 
MISPGalaxyCluster
+    from pymisp import register_user, PyMISP, MISPEvent, MISPOrganisation, 
MISPUser, Distribution, ThreatLevel, Analysis, MISPObject, MISPAttribute, 
MISPSighting, MISPShadowAttribute, MISPTag, MISPSharingGroup, MISPFeed, 
MISPServer, MISPUserSetting, MISPEventBlocklist, MISPEventReport, 
MISPCorrelationExclusion, MISPGalaxyCluster
     from pymisp.tools import CSVLoader, DomainIPObject, ASNObject, 
GenericObjectGenerator
     from pymisp.exceptions import MISPServerError
 except ImportError:
@@ -1223,7 +1223,7 @@
 
             # Test generic Tag methods
             r = self.admin_misp_connector.tag(second, 'generic_tag_test')
-            self.assertTrue('successfully' in r['message'].lower() and f'Event 
({second.id})' in r['message'], r['message'])
+            self.assertTrue('successfully' in r['message'].lower() and 
f'({second.id})' in r['message'], r['message'])
             second = self.user_misp_connector.get_event(second.id, 
pythonify=True)
             self.assertTrue('generic_tag_test' == second.tags[0].name)
 
@@ -1237,7 +1237,7 @@
             # r = self.admin_misp_connector.untag(second.objects[0].uuid, 
'generic_tag_test')
             # self.assertTrue(r['message'].endswith(f'successfully removed 
from Object({second.objects[0].id}).'), r['message'])
             r = 
self.admin_misp_connector.tag(second.objects[0].attributes[0].uuid, 
'generic_tag_test')
-            self.assertTrue('successfully' in r['message'].lower() and 
f'Attribute ({second.objects[0].attributes[0].id})' in r['message'], 
r['message'])
+            self.assertTrue('successfully' in r['message'].lower() and 
f'({second.objects[0].attributes[0].id})' in r['message'], r['message'])
             attr = 
self.user_misp_connector.get_attribute(second.objects[0].attributes[0].uuid, 
pythonify=True)
             self.assertTrue('generic_tag_test' == attr.tags[0].name)
             r = 
self.admin_misp_connector.untag(second.objects[0].attributes[0].uuid, 
'generic_tag_test')
@@ -1422,11 +1422,11 @@
             # self.assertEqual(r['errors'][1]['message'], 'Invalid Tag. This 
tag can only be set by a fixed organisation.')
             self.assertEqual(r['errors'][1]['message'], 'Invalid Target.')
             r = self.user_misp_connector.tag(first, tag_org_restricted)
-            self.assertTrue('successfully' in r['message'].lower() and f'Event 
({first.id})' in r['message'], r['message'])
+            self.assertTrue('successfully' in r['message'].lower() and 
f'({first.id})' in r['message'], r['message'])
             r = self.pub_misp_connector.tag(first.attributes[0], 
tag_user_restricted)
             self.assertIn('Invalid Tag. This tag can only be set by a fixed 
user.', r['errors'][1]['errors'])
             r = self.user_misp_connector.tag(first.attributes[0], 
tag_user_restricted)
-            self.assertTrue('successfully' in r['message'].lower() and 
f'Attribute ({first.attributes[0].id})' in r['message'], r['message'])
+            self.assertTrue('successfully' in r['message'].lower() and 
f'({first.attributes[0].id})' in r['message'], r['message'])
             first = self.user_misp_connector.get_event(first, pythonify=True)
             self.assertTrue(len(first.attributes[0].tags) == 1)
             # test delete tag on attribute edit
@@ -1633,6 +1633,21 @@
         r = self.admin_misp_connector.disable_noticelist(testnl)
         self.assertFalse(r['Noticelist']['enabled'], r)
 
+    def test_correlation_exclusions(self):
+        newce = MISPCorrelationExclusion()
+        newce.value = "test-correlation-exclusion"
+        r = self.admin_misp_connector.add_correlation_exclusion(newce, 
pythonify=True)
+        self.assertEqual(r.value, newce.value)
+        correlation_exclusions = 
self.admin_misp_connector.correlation_exclusions(pythonify=True)
+        self.assertTrue(isinstance(correlation_exclusions, list))
+        testce = correlation_exclusions[0]
+        r = self.admin_misp_connector.get_correlation_exclusion(testce, 
pythonify=True)
+        self.assertEqual(r.value, testce.value)
+        r = self.admin_misp_connector.delete_correlation_exclusion(r)
+        self.assertTrue(r['success'])
+        r = self.admin_misp_connector.clean_correlation_exclusions()
+        self.assertTrue(r['success'])
+
     def test_galaxies(self):
         # Make sure we're up-to-date
         r = self.admin_misp_connector.update_galaxies()
@@ -2171,12 +2186,19 @@
                 e_thread_csv_feed = feed
                 break
         updated_feed = 
self.admin_misp_connector.enable_feed(e_thread_csv_feed, pythonify=True)
+        self.assertTrue(updated_feed.enabled)
         self.assertEqual(updated_feed.settings, e_thread_csv_feed.settings)
+
         updated_feed = 
self.admin_misp_connector.disable_feed(e_thread_csv_feed, pythonify=True)
+        self.assertFalse(updated_feed.enabled)
         self.assertEqual(updated_feed.settings, e_thread_csv_feed.settings)
 
         # Test partial update
         updated_feed = 
self.admin_misp_connector.enable_feed(e_thread_csv_feed.id, pythonify=True)
+        self.assertTrue(updated_feed.enabled)
+        self.assertEqual(updated_feed.settings, e_thread_csv_feed.settings)
+        updated_feed = 
self.admin_misp_connector.disable_feed(e_thread_csv_feed.id, pythonify=True)
+        self.assertFalse(updated_feed.enabled)
         self.assertEqual(updated_feed.settings, e_thread_csv_feed.settings)
 
     def test_servers(self):

Reply via email to