Hello community,

here is the log from the commit of package python-librouteros for 
openSUSE:Factory checked in at 2020-12-21 10:23:55
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-librouteros (Old)
 and      /work/SRC/openSUSE:Factory/.python-librouteros.new.5145 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "python-librouteros"

Mon Dec 21 10:23:55 2020 rev:5 rq:857037 version:3.1.0

Changes:
--------
--- /work/SRC/openSUSE:Factory/python-librouteros/python-librouteros.changes    
2020-07-21 15:50:39.148315109 +0200
+++ 
/work/SRC/openSUSE:Factory/.python-librouteros.new.5145/python-librouteros.changes
  2020-12-21 10:26:48.228210245 +0100
@@ -1,0 +2,6 @@
+Fri Dec 18 22:31:34 UTC 2020 - Martin Hauke <[email protected]>
+
+- Update to version 3.1.0
+  * Add In operator
+
+-------------------------------------------------------------------

Old:
----
  librouteros-3.0.2.tar.gz

New:
----
  librouteros-3.1.0.tar.gz

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

Other differences:
------------------
++++++ python-librouteros.spec ++++++
--- /var/tmp/diff_new_pack.xPEUs4/_old  2020-12-21 10:26:48.752210839 +0100
+++ /var/tmp/diff_new_pack.xPEUs4/_new  2020-12-21 10:26:48.756210844 +0100
@@ -2,7 +2,7 @@
 # spec file for package python-librouteros
 #
 # Copyright (c) 2020 SUSE LLC
-# Copyright (c) 2017-2019, Martin Hauke <[email protected]>
+# Copyright (c) 2017-2020, Martin Hauke <[email protected]>
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -20,7 +20,7 @@
 %{?!python_module:%define python_module() python-%{**} python3-%{**}}
 %define skip_python2 1
 Name:           python-librouteros
-Version:        3.0.2
+Version:        3.1.0
 Release:        0
 Summary:        Python implementation of MikroTik RouterOS API
 License:        GPL-2.0-or-later

++++++ librouteros-3.0.2.tar.gz -> librouteros-3.1.0.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/librouteros-3.0.2/.bumpversion.cfg 
new/librouteros-3.1.0/.bumpversion.cfg
--- old/librouteros-3.0.2/.bumpversion.cfg      2020-07-20 12:50:59.000000000 
+0200
+++ new/librouteros-3.1.0/.bumpversion.cfg      2020-12-17 23:52:59.000000000 
+0100
@@ -1,5 +1,5 @@
 [bumpversion]
-current_version = 3.0.2
+current_version = 3.1.0
 commit = True
 tag = True
 tag_name = {new_version}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/librouteros-3.0.2/.gitattributes 
new/librouteros-3.1.0/.gitattributes
--- old/librouteros-3.0.2/.gitattributes        1970-01-01 01:00:00.000000000 
+0100
+++ new/librouteros-3.1.0/.gitattributes        2020-12-17 23:52:59.000000000 
+0100
@@ -0,0 +1,3 @@
+images/routeros_6.33.3.qcow2 filter=lfs diff=lfs merge=lfs -text
+images/routeros_6.43rc21.qcow2 filter=lfs diff=lfs merge=lfs -text
+images/routeros_6.44.5.qcow2 filter=lfs diff=lfs merge=lfs -text
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/librouteros-3.0.2/.github/workflows/ci.yml 
new/librouteros-3.1.0/.github/workflows/ci.yml
--- old/librouteros-3.0.2/.github/workflows/ci.yml      2020-07-20 
12:50:59.000000000 +0200
+++ new/librouteros-3.1.0/.github/workflows/ci.yml      2020-12-17 
23:52:59.000000000 +0100
@@ -6,9 +6,11 @@
 
 jobs:
   build:
-    runs-on: ubuntu-latest
-    env:
-      CI: yes
+    runs-on: ubuntu-20.04
+    container:
+      image: lukaszkostka/librouteros:${{ matrix.python-version }}
+      env:
+        CI: yes
     strategy:
       matrix:
         python-version:
@@ -18,23 +20,8 @@
     steps:
       - name: Checkout
         uses: actions/checkout@v2
-
-      - name: Set up Python ${{ matrix.python-version }}
-        uses: actions/setup-python@v1
         with:
-          python-version: ${{ matrix.python-version }}
-
-      - name: Update apt
-        run: sudo apt update
-
-      - name: Install qemu
-        run: >
-          sudo apt-get install -yq --no-install-recommends
-          qemu-system-i386
-          qemu-utils
-
-      - name: Install pipenv
-        run: pip install pipenv
+          lfs: true
 
       - name: Install package
         run: pipenv --python python3 install
@@ -51,24 +38,15 @@
           librouteros
           tests
 
-      - name: Download routeros images
-        run: |
-          wget --quiet netng.pl/routeros_test_images/routeros_6.33.3.qcow2 -O 
images/routeros_6.33.3.qcow2
-          wget --quiet netng.pl/routeros_test_images/routeros_6.44.5.qcow2 -O 
images/routeros_6.44.5.qcow2
-
       - name: Unit tests
         run: pipenv run pytest tests/unit
 
       - name: Integration tests
         run: pipenv run pytest -n auto tests/integration
 
-      - name: Package
-        run: python setup.py sdist
-        if: success()
-
       - name: Publish package
+        run: ./upload.sh
         if: github.event_name == 'push' && startsWith(github.ref, 'refs/tags') 
&& matrix.python-version == '3.7' && success()
-        uses: pypa/gh-action-pypi-publish@master
-        with:
-          user: __token__
-          password: ${{ secrets.pypi_password }}
+        env:
+          TWINE_PASSWORD: ${{ secrets.pypi_password }}
+          TWINE_USERNAME: __token__
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/librouteros-3.0.2/.gitignore 
new/librouteros-3.1.0/.gitignore
--- old/librouteros-3.0.2/.gitignore    2020-07-20 12:50:59.000000000 +0200
+++ new/librouteros-3.1.0/.gitignore    2020-12-17 23:52:59.000000000 +0100
@@ -24,3 +24,5 @@
 .pydevproject
 .settings
 .vscode
+
+Pipfile.lock
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/librouteros-3.0.2/CHANGELOG.rst 
new/librouteros-3.1.0/CHANGELOG.rst
--- old/librouteros-3.0.2/CHANGELOG.rst 2020-07-20 12:50:59.000000000 +0200
+++ new/librouteros-3.1.0/CHANGELOG.rst 2020-12-17 23:52:59.000000000 +0100
@@ -1,3 +1,8 @@
+3.1.0
+----------
+
+* Add In operator
+
 3.0.2
 ----------
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/librouteros-3.0.2/Pipfile 
new/librouteros-3.1.0/Pipfile
--- old/librouteros-3.0.2/Pipfile       2020-07-20 12:50:59.000000000 +0200
+++ new/librouteros-3.1.0/Pipfile       2020-12-17 23:52:59.000000000 +0100
@@ -6,7 +6,7 @@
 [dev-packages]
 
 [packages]
-librouteros = {editable = true,path = "."}
+librouteros = {editable = true, path = "."}
 pytest = "*"
 pylint = "*"
 yapf = "*"
@@ -14,6 +14,3 @@
 bumpversion = "*"
 twine = "*"
 pytest-xdist = "*"
-
-[requires]
-python_version = "3.7"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/librouteros-3.0.2/Pipfile.lock 
new/librouteros-3.1.0/Pipfile.lock
--- old/librouteros-3.0.2/Pipfile.lock  2020-07-20 12:50:59.000000000 +0200
+++ new/librouteros-3.1.0/Pipfile.lock  1970-01-01 01:00:00.000000000 +0100
@@ -1,486 +0,0 @@
-{
-    "_meta": {
-        "hash": {
-            "sha256": 
"c1874ba19c01841b533eafbe7ab0a639ce8447d03018e0c0142478c0ee06e3e6"
-        },
-        "pipfile-spec": 6,
-        "requires": {
-            "python_version": "3.7"
-        },
-        "sources": [
-            {
-                "name": "pypi",
-                "url": "https://pypi.org/simple";,
-                "verify_ssl": true
-            }
-        ]
-    },
-    "default": {
-        "apipkg": {
-            "hashes": [
-                
"sha256:37228cda29411948b422fae072f57e31d3396d2ee1c9783775980ee9c9990af6",
-                
"sha256:58587dd4dc3daefad0487f6d9ae32b4542b185e1c36db6993290e7c41ca2b47c"
-            ],
-            "version": "==1.5"
-        },
-        "astroid": {
-            "hashes": [
-                
"sha256:2f4078c2a41bf377eea06d71c9d2ba4eb8f6b1af2135bec27bbbb7d8f12bb703",
-                
"sha256:bc58d83eb610252fd8de6363e39d4f1d0619c894b0ed24603b881c02e64c7386"
-            ],
-            "version": "==2.4.2"
-        },
-        "attrs": {
-            "hashes": [
-                
"sha256:08a96c641c3a74e44eb59afb61a24f2cb9f4d7188748e76ba4bb5edfa3cb7d1c",
-                
"sha256:f7b7ce16570fe9965acd6d30101a28f62fb4a7f9e926b3bbc9b61f8b04247e72"
-            ],
-            "version": "==19.3.0"
-        },
-        "bleach": {
-            "hashes": [
-                
"sha256:2bce3d8fab545a6528c8fa5d9f9ae8ebc85a56da365c7f85180bfe96a35ef22f",
-                
"sha256:3c4c520fdb9db59ef139915a5db79f8b51bc2a7257ea0389f30c846883430a4b"
-            ],
-            "version": "==3.1.5"
-        },
-        "bump2version": {
-            "hashes": [
-                
"sha256:477f0e18a0d58e50bb3dbc9af7fcda464fd0ebfc7a6151d8888602d7153171a0",
-                
"sha256:cd4f3a231305e405ed8944d8ff35bd742d9bc740ad62f483bd0ca21ce7131984"
-            ],
-            "version": "==1.0.0"
-        },
-        "bumpversion": {
-            "hashes": [
-                
"sha256:4ba55e4080d373f80177b4dabef146c07ce73c7d1377aabf9d3c3ae1f94584a6",
-                
"sha256:4eb3267a38194d09f048a2179980bb4803701969bff2c85fa8f6d1ce050be15e"
-            ],
-            "index": "pypi",
-            "version": "==0.6.0"
-        },
-        "certifi": {
-            "hashes": [
-                
"sha256:5930595817496dd21bb8dc35dad090f1c2cd0adfaf21204bf6732ca5d8ee34d3",
-                
"sha256:8fc0819f1f30ba15bdb34cceffb9ef04d99f420f68eb75d901e9560b8749fc41"
-            ],
-            "version": "==2020.6.20"
-        },
-        "cffi": {
-            "hashes": [
-                
"sha256:001bf3242a1bb04d985d63e138230802c6c8d4db3668fb545fb5005ddf5bb5ff",
-                
"sha256:00789914be39dffba161cfc5be31b55775de5ba2235fe49aa28c148236c4e06b",
-                
"sha256:028a579fc9aed3af38f4892bdcc7390508adabc30c6af4a6e4f611b0c680e6ac",
-                
"sha256:14491a910663bf9f13ddf2bc8f60562d6bc5315c1f09c704937ef17293fb85b0",
-                
"sha256:1cae98a7054b5c9391eb3249b86e0e99ab1e02bb0cc0575da191aedadbdf4384",
-                
"sha256:2089ed025da3919d2e75a4d963d008330c96751127dd6f73c8dc0c65041b4c26",
-                
"sha256:2d384f4a127a15ba701207f7639d94106693b6cd64173d6c8988e2c25f3ac2b6",
-                
"sha256:337d448e5a725bba2d8293c48d9353fc68d0e9e4088d62a9571def317797522b",
-                
"sha256:399aed636c7d3749bbed55bc907c3288cb43c65c4389964ad5ff849b6370603e",
-                
"sha256:3b911c2dbd4f423b4c4fcca138cadde747abdb20d196c4a48708b8a2d32b16dd",
-                
"sha256:3d311bcc4a41408cf5854f06ef2c5cab88f9fded37a3b95936c9879c1640d4c2",
-                
"sha256:62ae9af2d069ea2698bf536dcfe1e4eed9090211dbaafeeedf5cb6c41b352f66",
-                
"sha256:66e41db66b47d0d8672d8ed2708ba91b2f2524ece3dee48b5dfb36be8c2f21dc",
-                
"sha256:675686925a9fb403edba0114db74e741d8181683dcf216be697d208857e04ca8",
-                
"sha256:7e63cbcf2429a8dbfe48dcc2322d5f2220b77b2e17b7ba023d6166d84655da55",
-                
"sha256:8a6c688fefb4e1cd56feb6c511984a6c4f7ec7d2a1ff31a10254f3c817054ae4",
-                
"sha256:8c0ffc886aea5df6a1762d0019e9cb05f825d0eec1f520c51be9d198701daee5",
-                
"sha256:95cd16d3dee553f882540c1ffe331d085c9e629499ceadfbda4d4fde635f4b7d",
-                
"sha256:99f748a7e71ff382613b4e1acc0ac83bf7ad167fb3802e35e90d9763daba4d78",
-                
"sha256:b8c78301cefcf5fd914aad35d3c04c2b21ce8629b5e4f4e45ae6812e461910fa",
-                
"sha256:c420917b188a5582a56d8b93bdd8e0f6eca08c84ff623a4c16e809152cd35793",
-                
"sha256:c43866529f2f06fe0edc6246eb4faa34f03fe88b64a0a9a942561c8e22f4b71f",
-                
"sha256:cab50b8c2250b46fe738c77dbd25ce017d5e6fb35d3407606e7a4180656a5a6a",
-                
"sha256:cef128cb4d5e0b3493f058f10ce32365972c554572ff821e175dbc6f8ff6924f",
-                
"sha256:cf16e3cf6c0a5fdd9bc10c21687e19d29ad1fe863372b5543deaec1039581a30",
-                
"sha256:e56c744aa6ff427a607763346e4170629caf7e48ead6921745986db3692f987f",
-                
"sha256:e577934fc5f8779c554639376beeaa5657d54349096ef24abe8c74c5d9c117c3",
-                
"sha256:f2b0fa0c01d8a0c7483afd9f31d7ecf2d71760ca24499c8697aeb5ca37dc090c"
-            ],
-            "version": "==1.14.0"
-        },
-        "chardet": {
-            "hashes": [
-                
"sha256:84ab92ed1c4d4f16916e05906b6b75a6c0fb5db821cc65e70cbd64a3e2a5eaae",
-                
"sha256:fc323ffcaeaed0e0a02bf4d117757b98aed530d9ed4531e3e15460124c106691"
-            ],
-            "version": "==3.0.4"
-        },
-        "colorama": {
-            "hashes": [
-                
"sha256:7d73d2a99753107a36ac6b455ee49046802e59d9d076ef8e47b61499fa29afff",
-                
"sha256:e96da0d330793e2cb9485e9ddfd918d456036c7149416295932478192f4436a1"
-            ],
-            "version": "==0.4.3"
-        },
-        "cryptography": {
-            "hashes": [
-                
"sha256:091d31c42f444c6f519485ed528d8b451d1a0c7bf30e8ca583a0cac44b8a0df6",
-                
"sha256:18452582a3c85b96014b45686af264563e3e5d99d226589f057ace56196ec78b",
-                
"sha256:1dfa985f62b137909496e7fc182dac687206d8d089dd03eaeb28ae16eec8e7d5",
-                
"sha256:1e4014639d3d73fbc5ceff206049c5a9a849cefd106a49fa7aaaa25cc0ce35cf",
-                
"sha256:22e91636a51170df0ae4dcbd250d318fd28c9f491c4e50b625a49964b24fe46e",
-                
"sha256:3b3eba865ea2754738616f87292b7f29448aec342a7c720956f8083d252bf28b",
-                
"sha256:651448cd2e3a6bc2bb76c3663785133c40d5e1a8c1a9c5429e4354201c6024ae",
-                
"sha256:726086c17f94747cedbee6efa77e99ae170caebeb1116353c6cf0ab67ea6829b",
-                
"sha256:844a76bc04472e5135b909da6aed84360f522ff5dfa47f93e3dd2a0b84a89fa0",
-                
"sha256:88c881dd5a147e08d1bdcf2315c04972381d026cdb803325c03fe2b4a8ed858b",
-                
"sha256:96c080ae7118c10fcbe6229ab43eb8b090fccd31a09ef55f83f690d1ef619a1d",
-                
"sha256:a0c30272fb4ddda5f5ffc1089d7405b7a71b0b0f51993cb4e5dbb4590b2fc229",
-                
"sha256:bb1f0281887d89617b4c68e8db9a2c42b9efebf2702a3c5bf70599421a8623e3",
-                
"sha256:c447cf087cf2dbddc1add6987bbe2f767ed5317adb2d08af940db517dd704365",
-                
"sha256:c4fd17d92e9d55b84707f4fd09992081ba872d1a0c610c109c18e062e06a2e55",
-                
"sha256:d0d5aeaedd29be304848f1c5059074a740fa9f6f26b84c5b63e8b29e73dfc270",
-                
"sha256:daf54a4b07d67ad437ff239c8a4080cfd1cc7213df57d33c97de7b4738048d5e",
-                
"sha256:e993468c859d084d5579e2ebee101de8f5a27ce8e2159959b6673b418fd8c785",
-                
"sha256:f118a95c7480f5be0df8afeb9a11bd199aa20afab7a96bcf20409b411a3a85f0"
-            ],
-            "version": "==2.9.2"
-        },
-        "docutils": {
-            "hashes": [
-                
"sha256:0c5b78adfbf7762415433f5515cd5c9e762339e23369dbe8000d84a4bf4ab3af",
-                
"sha256:c2de3a60e9e7d07be26b7f2b00ca0309c207e06c100f9cc2a94931fc75a478fc"
-            ],
-            "version": "==0.16"
-        },
-        "execnet": {
-            "hashes": [
-                
"sha256:cacb9df31c9680ec5f95553976c4da484d407e85e41c83cb812aa014f0eddc50",
-                
"sha256:d4efd397930c46415f62f8a31388d6be4f27a91d7550eb79bc64a756e0056547"
-            ],
-            "version": "==1.7.1"
-        },
-        "idna": {
-            "hashes": [
-                
"sha256:b307872f855b18632ce0c21c5e45be78c0ea7ae4c15c828c20788b26921eb3f6",
-                
"sha256:b97d804b1e9b523befed77c48dacec60e6dcb0b5391d57af6a65a312a90648c0"
-            ],
-            "version": "==2.10"
-        },
-        "importlib-metadata": {
-            "hashes": [
-                
"sha256:90bb658cdbbf6d1735b6341ce708fc7024a3e14e99ffdc5783edea9f9b077f83",
-                
"sha256:dc15b2969b4ce36305c51eebe62d418ac7791e9a157911d58bfb1f9ccd8e2070"
-            ],
-            "markers": "python_version < '3.8'",
-            "version": "==1.7.0"
-        },
-        "isort": {
-            "hashes": [
-                
"sha256:54da7e92468955c4fceacd0c86bd0ec997b0e1ee80d97f67c35a78b719dccab1",
-                
"sha256:6e811fcb295968434526407adb8796944f1988c5b65e8139058f2014cbe100fd"
-            ],
-            "version": "==4.3.21"
-        },
-        "jeepney": {
-            "hashes": [
-                
"sha256:3479b861cc2b6407de5188695fa1a8d57e5072d7059322469b62628869b8e36e",
-                
"sha256:d6c6b49683446d2407d2fe3acb7a368a77ff063f9182fe427da15d622adc24cf"
-            ],
-            "markers": "sys_platform == 'linux'",
-            "version": "==0.4.3"
-        },
-        "keyring": {
-            "hashes": [
-                
"sha256:3401234209015144a5d75701e71cb47239e552b0882313e9f51e8976f9e27843",
-                
"sha256:c53e0e5ccde3ad34284a40ce7976b5b3a3d6de70344c3f8ee44364cc340976ec"
-            ],
-            "version": "==21.2.1"
-        },
-        "lazy-object-proxy": {
-            "hashes": [
-                
"sha256:0c4b206227a8097f05c4dbdd323c50edf81f15db3b8dc064d08c62d37e1a504d",
-                
"sha256:194d092e6f246b906e8f70884e620e459fc54db3259e60cf69a4d66c3fda3449",
-                
"sha256:1be7e4c9f96948003609aa6c974ae59830a6baecc5376c25c92d7d697e684c08",
-                
"sha256:4677f594e474c91da97f489fea5b7daa17b5517190899cf213697e48d3902f5a",
-                
"sha256:48dab84ebd4831077b150572aec802f303117c8cc5c871e182447281ebf3ac50",
-                
"sha256:5541cada25cd173702dbd99f8e22434105456314462326f06dba3e180f203dfd",
-                
"sha256:59f79fef100b09564bc2df42ea2d8d21a64fdcda64979c0fa3db7bdaabaf6239",
-                
"sha256:8d859b89baf8ef7f8bc6b00aa20316483d67f0b1cbf422f5b4dc56701c8f2ffb",
-                
"sha256:9254f4358b9b541e3441b007a0ea0764b9d056afdeafc1a5569eee1cc6c1b9ea",
-                
"sha256:9651375199045a358eb6741df3e02a651e0330be090b3bc79f6d0de31a80ec3e",
-                
"sha256:97bb5884f6f1cdce0099f86b907aa41c970c3c672ac8b9c8352789e103cf3156",
-                
"sha256:9b15f3f4c0f35727d3a0fba4b770b3c4ebbb1fa907dbcc046a1d2799f3edd142",
-                
"sha256:a2238e9d1bb71a56cd710611a1614d1194dc10a175c1e08d75e1a7bcc250d442",
-                
"sha256:a6ae12d08c0bf9909ce12385803a543bfe99b95fe01e752536a60af2b7797c62",
-                
"sha256:ca0a928a3ddbc5725be2dd1cf895ec0a254798915fb3a36af0964a0a4149e3db",
-                
"sha256:cb2c7c57005a6804ab66f106ceb8482da55f5314b7fcb06551db1edae4ad1531",
-                
"sha256:d74bb8693bf9cf75ac3b47a54d716bbb1a92648d5f781fc799347cfc95952383",
-                
"sha256:d945239a5639b3ff35b70a88c5f2f491913eb94871780ebfabb2568bd58afc5a",
-                
"sha256:eba7011090323c1dadf18b3b689845fd96a61ba0a1dfbd7f24b921398affc357",
-                
"sha256:efa1909120ce98bbb3777e8b6f92237f5d5c8ea6758efea36a473e1d38f7d3e4",
-                
"sha256:f3900e8a5de27447acbf900b4750b0ddfd7ec1ea7fbaf11dfa911141bc522af0"
-            ],
-            "version": "==1.4.3"
-        },
-        "librouteros": {
-            "editable": true,
-            "path": "."
-        },
-        "mccabe": {
-            "hashes": [
-                
"sha256:ab8a6258860da4b6677da4bd2fe5dc2c659cff31b3ee4f7f5d64e79735b80d42",
-                
"sha256:dd8d182285a0fe56bace7f45b5e7d1a6ebcbf524e8f3bd87eb0f125271b8831f"
-            ],
-            "version": "==0.6.1"
-        },
-        "more-itertools": {
-            "hashes": [
-                
"sha256:68c70cc7167bdf5c7c9d8f6954a7837089c6a36bf565383919bb595efb8a17e5",
-                
"sha256:b78134b2063dd214000685165d81c154522c3ee0a1c0d4d113c80361c234c5a2"
-            ],
-            "version": "==8.4.0"
-        },
-        "mypy": {
-            "hashes": [
-                
"sha256:2c6cde8aa3426c1682d35190b59b71f661237d74b053822ea3d748e2c9578a7c",
-                
"sha256:3fdda71c067d3ddfb21da4b80e2686b71e9e5c72cca65fa216d207a358827f86",
-                
"sha256:5dd13ff1f2a97f94540fd37a49e5d255950ebcdf446fb597463a40d0df3fac8b",
-                
"sha256:6731603dfe0ce4352c555c6284c6db0dc935b685e9ce2e4cf220abe1e14386fd",
-                
"sha256:6bb93479caa6619d21d6e7160c552c1193f6952f0668cdda2f851156e85186fc",
-                
"sha256:81c7908b94239c4010e16642c9102bfc958ab14e36048fa77d0be3289dda76ea",
-                
"sha256:9c7a9a7ceb2871ba4bac1cf7217a7dd9ccd44c27c2950edbc6dc08530f32ad4e",
-                
"sha256:a4a2cbcfc4cbf45cd126f531dedda8485671545b43107ded25ce952aac6fb308",
-                
"sha256:b7fbfabdbcc78c4f6fc4712544b9b0d6bf171069c6e0e3cb82440dd10ced3406",
-                
"sha256:c05b9e4fb1d8a41d41dec8786c94f3b95d3c5f528298d769eb8e73d293abc48d",
-                
"sha256:d7df6eddb6054d21ca4d3c6249cae5578cb4602951fd2b6ee2f5510ffb098707",
-                
"sha256:e0b61738ab504e656d1fe4ff0c0601387a5489ca122d55390ade31f9ca0e252d",
-                
"sha256:eff7d4a85e9eea55afa34888dfeaccde99e7520b51f867ac28a48492c0b1130c",
-                
"sha256:f05644db6779387ccdb468cc47a44b4356fc2ffa9287135d05b70a98dc83b89a"
-            ],
-            "index": "pypi",
-            "version": "==0.782"
-        },
-        "mypy-extensions": {
-            "hashes": [
-                
"sha256:090fedd75945a69ae91ce1303b5824f428daf5a028d2f6ab8a299250a846f15d",
-                
"sha256:2d82818f5bb3e369420cb3c4060a7970edba416647068eb4c5343488a6c604a8"
-            ],
-            "version": "==0.4.3"
-        },
-        "packaging": {
-            "hashes": [
-                
"sha256:4357f74f47b9c12db93624a82154e9b120fa8293699949152b22065d556079f8",
-                
"sha256:998416ba6962ae7fbd6596850b80e17859a5753ba17c32284f67bfff33784181"
-            ],
-            "version": "==20.4"
-        },
-        "pkginfo": {
-            "hashes": [
-                
"sha256:7424f2c8511c186cd5424bbf31045b77435b37a8d604990b79d4e70d741148bb",
-                
"sha256:a6d9e40ca61ad3ebd0b72fbadd4fba16e4c0e4df0428c041e01e06eb6ee71f32"
-            ],
-            "version": "==1.5.0.1"
-        },
-        "pluggy": {
-            "hashes": [
-                
"sha256:15b2acde666561e1298d71b523007ed7364de07029219b604cf808bfa1c765b0",
-                
"sha256:966c145cd83c96502c3c3868f50408687b38434af77734af1e9ca461a4081d2d"
-            ],
-            "version": "==0.13.1"
-        },
-        "py": {
-            "hashes": [
-                
"sha256:366389d1db726cd2fcfc79732e75410e5fe4d31db13692115529d34069a043c2",
-                
"sha256:9ca6883ce56b4e8da7e79ac18787889fa5206c79dcc67fb065376cd2fe03f342"
-            ],
-            "version": "==1.9.0"
-        },
-        "pycparser": {
-            "hashes": [
-                
"sha256:2d475327684562c3a96cc71adf7dc8c4f0565175cf86b6d7a404ff4c771f15f0",
-                
"sha256:7582ad22678f0fcd81102833f60ef8d0e57288b6b5fb00323d101be910e35705"
-            ],
-            "version": "==2.20"
-        },
-        "pygments": {
-            "hashes": [
-                
"sha256:647344a061c249a3b74e230c739f434d7ea4d8b1d5f3721bc0f3558049b38f44",
-                
"sha256:ff7a40b4860b727ab48fad6360eb351cc1b33cbf9b15a0f689ca5353e9463324"
-            ],
-            "version": "==2.6.1"
-        },
-        "pylint": {
-            "hashes": [
-                
"sha256:7dd78437f2d8d019717dbf287772d0b2dbdfd13fc016aa7faa08d67bccc46adc",
-                
"sha256:d0ece7d223fe422088b0e8f13fa0a1e8eb745ebffcb8ed53d3e95394b6101a1c"
-            ],
-            "index": "pypi",
-            "version": "==2.5.3"
-        },
-        "pyparsing": {
-            "hashes": [
-                
"sha256:c203ec8783bf771a155b207279b9bccb8dea02d8f0c9e5f8ead507bc3246ecc1",
-                
"sha256:ef9d7589ef3c200abe66653d3f1ab1033c3c419ae9b9bdb1240a85b024efc88b"
-            ],
-            "version": "==2.4.7"
-        },
-        "pytest": {
-            "hashes": [
-                
"sha256:5c0db86b698e8f170ba4582a492248919255fcd4c79b1ee64ace34301fb589a1",
-                
"sha256:7979331bfcba207414f5e1263b5a0f8f521d0f457318836a7355531ed1a4c7d8"
-            ],
-            "index": "pypi",
-            "version": "==5.4.3"
-        },
-        "pytest-forked": {
-            "hashes": [
-                
"sha256:42a438336731465c5bd76ab38e1645647ac55914a08b507efbabe8783a08aa6c",
-                
"sha256:65f96334863d9cbe53d21f73e8febc4dd61b8d1fdcac7b487d9af07a5d02a938"
-            ],
-            "version": "==1.2.0"
-        },
-        "pytest-xdist": {
-            "hashes": [
-                
"sha256:833b902b16473162cc0572d5bd7b63f8b843df63a4ada9c8af1270d31db17607",
-                
"sha256:9149b4010240643a5e206fd0ece6f0a1cd5955dae014cf04610d359e22e22453"
-            ],
-            "index": "pypi",
-            "version": "==1.33.0"
-        },
-        "readme-renderer": {
-            "hashes": [
-                
"sha256:cbe9db71defedd2428a1589cdc545f9bd98e59297449f69d721ef8f1cfced68d",
-                
"sha256:cc4957a803106e820d05d14f71033092537a22daa4f406dfbdd61177e0936376"
-            ],
-            "version": "==26.0"
-        },
-        "requests": {
-            "hashes": [
-                
"sha256:b3559a131db72c33ee969480840fff4bb6dd111de7dd27c8ee1f820f4f00231b",
-                
"sha256:fe75cc94a9443b9246fc7049224f75604b113c36acb93f87b80ed42c44cbb898"
-            ],
-            "version": "==2.24.0"
-        },
-        "requests-toolbelt": {
-            "hashes": [
-                
"sha256:380606e1d10dc85c3bd47bf5a6095f815ec007be7a8b69c878507068df059e6f",
-                
"sha256:968089d4584ad4ad7c171454f0a5c6dac23971e9472521ea3b6d49d610aa6fc0"
-            ],
-            "version": "==0.9.1"
-        },
-        "rfc3986": {
-            "hashes": [
-                
"sha256:112398da31a3344dc25dbf477d8df6cb34f9278a94fee2625d89e4514be8bb9d",
-                
"sha256:af9147e9aceda37c91a05f4deb128d4b4b49d6b199775fd2d2927768abdc8f50"
-            ],
-            "version": "==1.4.0"
-        },
-        "secretstorage": {
-            "hashes": [
-                
"sha256:15da8a989b65498e29be338b3b279965f1b8f09b9668bd8010da183024c8bff6",
-                
"sha256:b5ec909dde94d4ae2fa26af7c089036997030f0cf0a5cb372b4cccabd81c143b"
-            ],
-            "markers": "sys_platform == 'linux'",
-            "version": "==3.1.2"
-        },
-        "six": {
-            "hashes": [
-                
"sha256:30639c035cdb23534cd4aa2dd52c3bf48f06e5f4a941509c8bafd8ce11080259",
-                
"sha256:8b74bedcbbbaca38ff6d7491d76f2b06b3592611af620f8426e82dddb04a5ced"
-            ],
-            "version": "==1.15.0"
-        },
-        "toml": {
-            "hashes": [
-                
"sha256:926b612be1e5ce0634a2ca03470f95169cf16f939018233a670519cb4ac58b0f",
-                
"sha256:bda89d5935c2eac546d648028b9901107a595863cb36bae0c73ac804a9b4ce88"
-            ],
-            "version": "==0.10.1"
-        },
-        "tqdm": {
-            "hashes": [
-                
"sha256:63ef7a6d3eb39f80d6b36e4867566b3d8e5f1fe3d6cb50c5e9ede2b3198ba7b7",
-                
"sha256:7810e627bcf9d983a99d9ff8a0c09674400fd2927eddabeadf153c14a2ec8656"
-            ],
-            "version": "==4.47.0"
-        },
-        "twine": {
-            "hashes": [
-                
"sha256:34352fd52ec3b9d29837e6072d5a2a7c6fe4290e97bba46bb8d478b5c598f7ab",
-                
"sha256:ba9ff477b8d6de0c89dd450e70b2185da190514e91c42cc62f96850025c10472"
-            ],
-            "index": "pypi",
-            "version": "==3.2.0"
-        },
-        "typed-ast": {
-            "hashes": [
-                
"sha256:0666aa36131496aed8f7be0410ff974562ab7eeac11ef351def9ea6fa28f6355",
-                
"sha256:0c2c07682d61a629b68433afb159376e24e5b2fd4641d35424e462169c0a7919",
-                
"sha256:249862707802d40f7f29f6e1aad8d84b5aa9e44552d2cc17384b209f091276aa",
-                
"sha256:24995c843eb0ad11a4527b026b4dde3da70e1f2d8806c99b7b4a7cf491612652",
-                
"sha256:269151951236b0f9a6f04015a9004084a5ab0d5f19b57de779f908621e7d8b75",
-                
"sha256:4083861b0aa07990b619bd7ddc365eb7fa4b817e99cf5f8d9cf21a42780f6e01",
-                
"sha256:498b0f36cc7054c1fead3d7fc59d2150f4d5c6c56ba7fb150c013fbc683a8d2d",
-                
"sha256:4e3e5da80ccbebfff202a67bf900d081906c358ccc3d5e3c8aea42fdfdfd51c1",
-                
"sha256:6daac9731f172c2a22ade6ed0c00197ee7cc1221aa84cfdf9c31defeb059a907",
-                
"sha256:715ff2f2df46121071622063fc7543d9b1fd19ebfc4f5c8895af64a77a8c852c",
-                
"sha256:73d785a950fc82dd2a25897d525d003f6378d1cb23ab305578394694202a58c3",
-                
"sha256:8c8aaad94455178e3187ab22c8b01a3837f8ee50e09cf31f1ba129eb293ec30b",
-                
"sha256:8ce678dbaf790dbdb3eba24056d5364fb45944f33553dd5869b7580cdbb83614",
-                
"sha256:aaee9905aee35ba5905cfb3c62f3e83b3bec7b39413f0a7f19be4e547ea01ebb",
-                
"sha256:bcd3b13b56ea479b3650b82cabd6b5343a625b0ced5429e4ccad28a8973f301b",
-                
"sha256:c9e348e02e4d2b4a8b2eedb48210430658df6951fa484e59de33ff773fbd4b41",
-                
"sha256:d205b1b46085271b4e15f670058ce182bd1199e56b317bf2ec004b6a44f911f6",
-                
"sha256:d43943ef777f9a1c42bf4e552ba23ac77a6351de620aa9acf64ad54933ad4d34",
-                
"sha256:d5d33e9e7af3b34a40dc05f498939f0ebf187f07c385fd58d591c533ad8562fe",
-                
"sha256:fc0fea399acb12edbf8a628ba8d2312f583bdbdb3335635db062fa98cf71fca4",
-                
"sha256:fe460b922ec15dd205595c9b5b99e2f056fd98ae8f9f56b888e7a17dc2b757e7"
-            ],
-            "markers": "implementation_name == 'cpython' and python_version < 
'3.8'",
-            "version": "==1.4.1"
-        },
-        "typing-extensions": {
-            "hashes": [
-                
"sha256:6e95524d8a547a91e08f404ae485bbb71962de46967e1b71a0cb89af24e761c5",
-                
"sha256:79ee589a3caca649a9bfd2a8de4709837400dfa00b6cc81962a1e6a1815969ae",
-                
"sha256:f8d2bd89d25bc39dabe7d23df520442fa1d8969b82544370e03d88b5a591c392"
-            ],
-            "version": "==3.7.4.2"
-        },
-        "urllib3": {
-            "hashes": [
-                
"sha256:3018294ebefce6572a474f0604c2021e33b3fd8006ecd11d62107a5d2a963527",
-                
"sha256:88206b0eb87e6d677d424843ac5209e3fb9d0190d0ee169599165ec25e9d9115"
-            ],
-            "version": "==1.25.9"
-        },
-        "wcwidth": {
-            "hashes": [
-                
"sha256:beb4802a9cebb9144e99086eff703a642a13d6a0052920003a230f3294bbe784",
-                
"sha256:c4d647b99872929fdb7bdcaa4fbe7f01413ed3d98077df798530e5b04f116c83"
-            ],
-            "version": "==0.2.5"
-        },
-        "webencodings": {
-            "hashes": [
-                
"sha256:a0af1213f3c2226497a97e2b3aa01a7e4bee4f403f95be16fc9acd2947514a78",
-                
"sha256:b36a1c245f2d304965eb4e0a82848379241dc04b865afcc4aab16748587e1923"
-            ],
-            "version": "==0.5.1"
-        },
-        "wrapt": {
-            "hashes": [
-                
"sha256:b62ffa81fb85f4332a4f609cab4ac40709470da05643a082ec1eb88e6d9b97d7"
-            ],
-            "version": "==1.12.1"
-        },
-        "yapf": {
-            "hashes": [
-                
"sha256:3000abee4c28daebad55da6c85f3cd07b8062ce48e2e9943c8da1b9667d48427",
-                
"sha256:3abf61ba67cf603069710d30acbc88cfe565d907e16ad81429ae90ce9651e0c9"
-            ],
-            "index": "pypi",
-            "version": "==0.30.0"
-        },
-        "zipp": {
-            "hashes": [
-                
"sha256:aa36550ff0c0b7ef7fa639055d797116ee891440eac1a56f378e2d3179e0320b",
-                
"sha256:c599e4d75c98f6798c509911d08a22e6c021d074469042177c8c86fb92eefd96"
-            ],
-            "version": "==3.1.0"
-        }
-    },
-    "develop": {}
-}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/librouteros-3.0.2/docker/3.6.dockerfile 
new/librouteros-3.1.0/docker/3.6.dockerfile
--- old/librouteros-3.0.2/docker/3.6.dockerfile 1970-01-01 01:00:00.000000000 
+0100
+++ new/librouteros-3.1.0/docker/3.6.dockerfile 2020-12-17 23:52:59.000000000 
+0100
@@ -0,0 +1,13 @@
+FROM python:3.6
+
+ENV DEBIAN_FRONTEND noninteractive
+
+RUN apt-get update
+RUN apt-get install -y --no-install-recommends \
+      qemu-system-i386 \
+      qemu-utils \
+      wget \
+      git-lfs
+
+RUN pip install pipenv
+RUN pip install twine
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/librouteros-3.0.2/docker/3.7.dockerfile 
new/librouteros-3.1.0/docker/3.7.dockerfile
--- old/librouteros-3.0.2/docker/3.7.dockerfile 1970-01-01 01:00:00.000000000 
+0100
+++ new/librouteros-3.1.0/docker/3.7.dockerfile 2020-12-17 23:52:59.000000000 
+0100
@@ -0,0 +1,13 @@
+FROM python:3.7
+
+ENV DEBIAN_FRONTEND noninteractive
+
+RUN apt-get update
+RUN apt-get install -y --no-install-recommends \
+      qemu-system-i386 \
+      qemu-utils \
+      wget \
+      git-lfs
+
+RUN pip install pipenv
+RUN pip install twine
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/librouteros-3.0.2/docker/3.8.dockerfile 
new/librouteros-3.1.0/docker/3.8.dockerfile
--- old/librouteros-3.0.2/docker/3.8.dockerfile 1970-01-01 01:00:00.000000000 
+0100
+++ new/librouteros-3.1.0/docker/3.8.dockerfile 2020-12-17 23:52:59.000000000 
+0100
@@ -0,0 +1,13 @@
+FROM python:3.8
+
+ENV DEBIAN_FRONTEND noninteractive
+
+RUN apt-get update
+RUN apt-get install -y --no-install-recommends \
+      qemu-system-i386 \
+      qemu-utils \
+      wget \
+      git-lfs
+
+RUN pip install pipenv
+RUN pip install twine
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/librouteros-3.0.2/docker/do.sh 
new/librouteros-3.1.0/docker/do.sh
--- old/librouteros-3.0.2/docker/do.sh  1970-01-01 01:00:00.000000000 +0100
+++ new/librouteros-3.1.0/docker/do.sh  2020-12-17 23:52:59.000000000 +0100
@@ -0,0 +1,7 @@
+#!/bin/sh
+
+for ver in 3.6 3.7 3.8
+do
+  docker build -t lukaszkostka/librouteros:${ver} -f docker/${ver}.dockerfile .
+  docker push lukaszkostka/librouteros:${ver}
+done
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/librouteros-3.0.2/docs/conf.py 
new/librouteros-3.1.0/docs/conf.py
--- old/librouteros-3.0.2/docs/conf.py  2020-07-20 12:50:59.000000000 +0200
+++ new/librouteros-3.1.0/docs/conf.py  2020-12-17 23:52:59.000000000 +0100
@@ -62,3 +62,7 @@
 
 # Output file base name for HTML help builder.
 htmlhelp_basename = 'librouteros'
+
+html_theme_options = {
+    'fixed_sidebar': True,
+}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/librouteros-3.0.2/docs/connect.rst 
new/librouteros-3.1.0/docs/connect.rst
--- old/librouteros-3.0.2/docs/connect.rst      2020-07-20 12:50:59.000000000 
+0200
+++ new/librouteros-3.1.0/docs/connect.rst      2020-12-17 23:52:59.000000000 
+0100
@@ -38,6 +38,14 @@
         port=8729
         )
 
+If you need to pass any other parameters like ``server_name``,
+use `partial 
<https://docs.python.org/3/library/functools.html#functools.partial>`_.
+
+.. code-block:: python
+
+    from functools import partial
+    ssl_wrapper=partial(ctx.wrap_socket, server_hostname='some.address.com')
+
 Auth methods
 ------------
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/librouteros-3.0.2/docs/query.rst 
new/librouteros-3.1.0/docs/query.rst
--- old/librouteros-3.0.2/docs/query.rst        2020-07-20 12:50:59.000000000 
+0200
+++ new/librouteros-3.1.0/docs/query.rst        2020-12-17 23:52:59.000000000 
+0100
@@ -24,17 +24,27 @@
 
    name = Key('name')
    disabled = Key('disabled')
-   for row in api.path('/interface').select(name, disabled).where(
+   query = api.path('/interface').select(name, disabled).where(
            disabled == False,
            Or(
                name == 'ether2',
                name == 'wlan-lan',
                ),
-           ):
+           )
 
 Above code demonstrates how to select ``name``, ``disabled`` fields where each 
interface is disabled
 and ``name`` is equal to one of ``ether2``, ``wlan-lan``.
 If you do not specify any logical operation within `where()`, them it defaults 
to `And()`.
+Above example can be rewritten using `In` operator.
+
+.. code-block:: python
+
+   name = Key('name')
+   disabled = Key('disabled')
+   query = api.path('/interface').select(name, disabled).where(
+           disabled == False,
+           name.In('ether2', 'wlan-lan'),
+           )
 
 Usable operators
 ----------------
@@ -45,6 +55,7 @@
 ``!=``   ``name != 'ether2'``
 ``>``    ``mtu > 1500``
 ``<``    ``mtu < 1400``
+``In``   ``name.In('ether1', 'ether2', 'wlan1')``
 ======== =========
 
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/librouteros-3.0.2/images/.gitignore 
new/librouteros-3.1.0/images/.gitignore
--- old/librouteros-3.0.2/images/.gitignore     2020-07-20 12:50:59.000000000 
+0200
+++ new/librouteros-3.1.0/images/.gitignore     1970-01-01 01:00:00.000000000 
+0100
@@ -1 +0,0 @@
-*.qcow2
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/librouteros-3.0.2/images/routeros_6.33.3.qcow2 
new/librouteros-3.1.0/images/routeros_6.33.3.qcow2
--- old/librouteros-3.0.2/images/routeros_6.33.3.qcow2  1970-01-01 
01:00:00.000000000 +0100
+++ new/librouteros-3.1.0/images/routeros_6.33.3.qcow2  2020-12-17 
23:52:59.000000000 +0100
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:be3b9d982d1ffc893ad50d5295a5f4e55f222eb6088cd52ba8d453a6da800a28
+size 46006272
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/librouteros-3.0.2/images/routeros_6.43rc21.qcow2 
new/librouteros-3.1.0/images/routeros_6.43rc21.qcow2
--- old/librouteros-3.0.2/images/routeros_6.43rc21.qcow2        1970-01-01 
01:00:00.000000000 +0100
+++ new/librouteros-3.1.0/images/routeros_6.43rc21.qcow2        2020-12-17 
23:52:59.000000000 +0100
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:72579f09778acd8023cf0b467801378373042cc8dc2492121271081cd9914115
+size 37027840
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/librouteros-3.0.2/images/routeros_6.44.5.qcow2 
new/librouteros-3.1.0/images/routeros_6.44.5.qcow2
--- old/librouteros-3.0.2/images/routeros_6.44.5.qcow2  1970-01-01 
01:00:00.000000000 +0100
+++ new/librouteros-3.1.0/images/routeros_6.44.5.qcow2  2020-12-17 
23:52:59.000000000 +0100
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:7a58b18c702b046622f86d68255252135dc5b660a5f8a71989a0e4e95072d3cd
+size 36241408
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/librouteros-3.0.2/librouteros/query.py 
new/librouteros-3.1.0/librouteros/query.py
--- old/librouteros-3.0.2/librouteros/query.py  2020-07-20 12:50:59.000000000 
+0200
+++ new/librouteros-3.1.0/librouteros/query.py  2020-12-17 23:52:59.000000000 
+0100
@@ -31,6 +31,12 @@
     def __str__(self) -> str:
         return str(self.name)
 
+    # pylint: disable=invalid-name
+    def In(self, one, *elems):
+        yield from self == one
+        yield from chain.from_iterable(self == str(elem) for elem in elems)
+        yield from ('?#|', ) * len(elems)
+
 
 class Query:
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/librouteros-3.0.2/setup.py 
new/librouteros-3.1.0/setup.py
--- old/librouteros-3.0.2/setup.py      2020-07-20 12:50:59.000000000 +0200
+++ new/librouteros-3.1.0/setup.py      2020-12-17 23:52:59.000000000 +0100
@@ -28,7 +28,7 @@
     setup_requires=setup_pkgs,
     zip_safe=False,
     name='librouteros',
-    version='3.0.2',
+    version='3.1.0',
     description='Python implementation of MikroTik RouterOS API',
     long_description=read('README.rst'),
     author='Ɓukasz Kostka',
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/librouteros-3.0.2/tests/integration/test_general.py 
new/librouteros-3.1.0/tests/integration/test_general.py
--- old/librouteros-3.0.2/tests/integration/test_general.py     2020-07-20 
12:50:59.000000000 +0200
+++ new/librouteros-3.1.0/tests/integration/test_general.py     2020-12-17 
23:52:59.000000000 +0100
@@ -1,4 +1,5 @@
 import socket
+import pytest
 from time import sleep
 from librouteros.query import Key
 from librouteros import connect
@@ -46,6 +47,23 @@
     assert selected_data[0]['address'] == new_address
 
 
[email protected](
+    'addresses', (
+        {'172.16.1.1/24', '172.16.1.2/24'},
+        {'172.16.1.1/24', '172.16.1.2/24', '1.1.1.1/24'},
+        {'172.16.1.2/24'},
+    )
+)
+def test_query_In_operator(routeros_api, addresses):
+    addr_path = routeros_api.path('/ip/address')
+    for addr in addresses:
+        addr_path.add(interface='ether1', address=addr)
+
+    address = Key('address')
+    query = addr_path.select(address).where(address.In(*addresses))
+    assert addresses == set(row['address'] for row in query)
+
+
 def test_long_word(routeros_api):
     r"""
     Assert that when word length is encoded with \x00 in it,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/librouteros-3.0.2/upload.sh 
new/librouteros-3.1.0/upload.sh
--- old/librouteros-3.0.2/upload.sh     1970-01-01 01:00:00.000000000 +0100
+++ new/librouteros-3.1.0/upload.sh     2020-12-17 23:52:59.000000000 +0100
@@ -0,0 +1,5 @@
+#!/usr/bin/env bash
+set -Eeuo pipefail
+
+python setup.py sdist
+twine upload dist/*
_______________________________________________
openSUSE Commits mailing list -- [email protected]
To unsubscribe, email [email protected]
List Netiquette: https://en.opensuse.org/openSUSE:Mailing_list_netiquette
List Archives: 
https://lists.opensuse.org/archives/list/[email protected]

Reply via email to