Your message dated Mon, 04 Jul 2022 07:35:08 +0000
with message-id <e1o8gbs-000cbb...@fasolo.debian.org>
and subject line Bug#1009458: fixed in vitables 3.0.2-3
has caused the Debian Bug report #1009458,
regarding vitables: FTBFS: dh_auto_test: error: pybuild --test --test-pytest -i 
python{version} -p 3.10 returned exit code 13
to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact ow...@bugs.debian.org
immediately.)


-- 
1009458: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1009458
Debian Bug Tracking System
Contact ow...@bugs.debian.org with problems
--- Begin Message ---
Source: vitables
Version: 3.0.2-2
Severity: serious
Justification: FTBFS
Tags: bookworm sid ftbfs
User: lu...@debian.org
Usertags: ftbfs-20220412 ftbfs-bookworm

Hi,

During a rebuild of all packages in sid, your package failed to build
on amd64.


Relevant part (hopefully):
> make[2]: Entering directory '/<<PKGBUILDDIR>>/doc'
> sphinx-build -b qthelp -d _build/doctrees   . _build/qthelp
> Running Sphinx v4.5.0
> making output directory... done
> loading pickled environment... done
> building [mo]: targets for 0 po files that are out of date
> building [qthelp]: targets for 9 source files that are out of date
> updating environment: 0 added, 0 changed, 0 removed
> looking for now-outdated files... none found
> preparing documents... done
> writing output... [ 11%] develop
> writing output... [ 22%] index
> writing output... [ 33%] usersguide-app1
> writing output... [ 44%] usersguide-app2
> writing output... [ 55%] usersguide-ch1
> writing output... [ 66%] usersguide-ch2
> writing output... [ 77%] usersguide-ch3
> writing output... [ 88%] usersguide-ch4
> writing output... [100%] usersguide-ch5
> 
> generating indices... genindex done
> writing additional pages... done
> copying images... [ 10%] images/title_page_plain.png
> copying images... [ 20%] images/helpBrowser.png
> copying images... [ 30%] images/mainWindow.png
> copying images... [ 40%] images/treeSymbols.png
> copying images... [ 50%] images/browseDataset.png
> copying images... [ 60%] images/zoomingCells.png
> copying images... [ 70%] images/propertiesDlg.png
> copying images... [ 80%] images/newFilteredTable.png
> copying images... [ 90%] images/groupCreation.png
> copying images... [100%] images/editingUserAttrs.png
> 
> copying static files... done
> copying extra files... done
> writing project file...
> writing collection project file...
> build succeeded.
> 
> You can now run "qcollectiongenerator" with the .qhcp project file in 
> _build/qthelp, like this:
> $ qcollectiongenerator _build/qthelp/ViTables Users' Guide.qhcp
> To view the help file:
> $ assistant -collectionFile _build/qthelp/ViTables Users' Guide.qhc
> 
> Build finished; now you can run qcollectiongenerator with the .qhcp project 
> file in _build/qthelp, like this:
> # qcollectiongenerator _build/qthelp/ViTablesUsersGuide.qhcp
> To view the help file:
> # assistant -collectionFile _build/qthelp/ViTablesUsersGuide.qhc
> make[2]: Leaving directory '/<<PKGBUILDDIR>>/doc'
> cd doc/_build && rm -r html && mv qthelp html && rm html/_static/*.js
> make[1]: Leaving directory '/<<PKGBUILDDIR>>'
>    dh_auto_test -O--buildsystem=pybuild
>       pybuild --test --test-pytest -i python{version} -p 3.10
> I: pybuild base:239: cd /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10/build; 
> python3.10 -m pytest tests
> ============================= test session starts 
> ==============================
> platform linux -- Python 3.10.4, pytest-6.2.5, py-1.10.0, pluggy-1.0.0
> rootdir: /<<PKGBUILDDIR>>
> plugins: xvfb-2.0.0
> collected 54 items
> 
> tests/test_filenode.py EEEEEE                                            [ 
> 11%]
> tests/test_logger.py EEEEE                                               [ 
> 20%]
> tests/test_utils.py EEEEEEEEEEEE                                         [ 
> 42%]
> tests/test_vtconfig.py EEEEEEEEEEE                                       [ 
> 62%]
> tests/test_vtgui.py EEEEEEEEEEEEEEEEEEEE                                 
> [100%]
> 
> ==================================== ERRORS 
> ====================================
> ________________ ERROR at setup of TestFilenode.test_isFilenode 
> ________________
> 
>     @pytest.fixture(scope='module')
>     def launcher():
> >       return Launcher()
> 
> tests/conftest.py:33: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> tests/conftest.py:27: in __init__
>     self.vtapp_object = vitables.vtapp.VTApp(keep_splash=False)
> vitables/vtapp.py:139: in __init__
>     self.csv_importer = importcsv.ImportCSV()
> vitables/csv/import_csv.py:102: in __init__
>     self.addEntry()
> vitables/csv/import_csv.py:176: in addEntry
>     vitables.utils.insertInMenu(
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> 
> menu = <PyQt5.QtWidgets.QMenu object at 0x7fc2d8b5a9e0>
> entries = <PyQt5.QtWidgets.QMenu object at 0x7fc2d8b5beb0>, uid = 'fileClose'
> 
>     def insertInMenu(menu, entries, uid):
>         """Insert entries to the given menu before the action named uid.
>     
>         The function accept a QAction/QMenu or an iterable. The entries will
>         be added before the action whose name is uid.
>     
>         :Parameters:
>     
>         - `menu`: the menu or context menu being updated
>         - `entries`: QAction/Qmenu object or a list of such objects
>         - `uid`: indicates the insertion position for the new entries
>     
>         :return: None
>         """
>     
> >       if not isinstance(entries, collections.Iterable):
> E       AttributeError: module 'collections' has no attribute 'Iterable'
> 
> vitables/utils.py:152: AttributeError
> ---------------------------- Captured stderr setup 
> -----------------------------
> QStandardPaths: XDG_RUNTIME_DIR not set, defaulting to '/tmp/runtime-user42'
> QPixmap::scaled: Pixmap is a null pixmap
> QPixmap::scaled: Pixmap is a null pixmap
> QPixmap::scaled: Pixmap is a null pixmap
> QPixmap::scaled: Pixmap is a null pixmap
> QPixmap::scaled: Pixmap is a null pixmap
> QPixmap::scaled: Pixmap is a null pixmap
> QPixmap::scaled: Pixmap is a null pixmap
> QPixmap::scaled: Pixmap is a null pixmap
> QPixmap::scaled: Pixmap is a null pixmap
> QPixmap::scaled: Pixmap is a null pixmap
> QPixmap::scaled: Pixmap is a null pixmap
> QPixmap::scaled: Pixmap is a null pixmap
> QPixmap::scaled: Pixmap is a null pixmap
> QPixmap::scaled: Pixmap is a null pixmap
> QPixmap::scaled: Pixmap is a null pixmap
> QPixmap::scaled: Pixmap is a null pixmap
> QPixmap::scaled: Pixmap is a null pixmap
> QPixmap::scaled: Pixmap is a null pixmap
> ______________ ERROR at setup of TestFilenode.test_filenodeToFile 
> ______________
> 
>     @pytest.fixture(scope='module')
>     def launcher():
> >       return Launcher()
> 
> tests/conftest.py:33: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> tests/conftest.py:27: in __init__
>     self.vtapp_object = vitables.vtapp.VTApp(keep_splash=False)
> vitables/vtapp.py:139: in __init__
>     self.csv_importer = importcsv.ImportCSV()
> vitables/csv/import_csv.py:102: in __init__
>     self.addEntry()
> vitables/csv/import_csv.py:176: in addEntry
>     vitables.utils.insertInMenu(
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> 
> menu = <PyQt5.QtWidgets.QMenu object at 0x7fc2d8b5a9e0>
> entries = <PyQt5.QtWidgets.QMenu object at 0x7fc2d8b5beb0>, uid = 'fileClose'
> 
>     def insertInMenu(menu, entries, uid):
>         """Insert entries to the given menu before the action named uid.
>     
>         The function accept a QAction/QMenu or an iterable. The entries will
>         be added before the action whose name is uid.
>     
>         :Parameters:
>     
>         - `menu`: the menu or context menu being updated
>         - `entries`: QAction/Qmenu object or a list of such objects
>         - `uid`: indicates the insertion position for the new entries
>     
>         :return: None
>         """
>     
> >       if not isinstance(entries, collections.Iterable):
> E       AttributeError: module 'collections' has no attribute 'Iterable'
> 
> vitables/utils.py:152: AttributeError
> ____________ ERROR at setup of TestFilenode.test_filenodeTotalRows 
> _____________
> 
>     @pytest.fixture(scope='module')
>     def launcher():
> >       return Launcher()
> 
> tests/conftest.py:33: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> tests/conftest.py:27: in __init__
>     self.vtapp_object = vitables.vtapp.VTApp(keep_splash=False)
> vitables/vtapp.py:139: in __init__
>     self.csv_importer = importcsv.ImportCSV()
> vitables/csv/import_csv.py:102: in __init__
>     self.addEntry()
> vitables/csv/import_csv.py:176: in addEntry
>     vitables.utils.insertInMenu(
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> 
> menu = <PyQt5.QtWidgets.QMenu object at 0x7fc2d8b5a9e0>
> entries = <PyQt5.QtWidgets.QMenu object at 0x7fc2d8b5beb0>, uid = 'fileClose'
> 
>     def insertInMenu(menu, entries, uid):
>         """Insert entries to the given menu before the action named uid.
>     
>         The function accept a QAction/QMenu or an iterable. The entries will
>         be added before the action whose name is uid.
>     
>         :Parameters:
>     
>         - `menu`: the menu or context menu being updated
>         - `entries`: QAction/Qmenu object or a list of such objects
>         - `uid`: indicates the insertion position for the new entries
>     
>         :return: None
>         """
>     
> >       if not isinstance(entries, collections.Iterable):
> E       AttributeError: module 'collections' has no attribute 'Iterable'
> 
> vitables/utils.py:152: AttributeError
> ______________ ERROR at setup of TestFilenode.test_fnbTotalNRows 
> _______________
> 
>     @pytest.fixture(scope='module')
>     def launcher():
> >       return Launcher()
> 
> tests/conftest.py:33: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> tests/conftest.py:27: in __init__
>     self.vtapp_object = vitables.vtapp.VTApp(keep_splash=False)
> vitables/vtapp.py:139: in __init__
>     self.csv_importer = importcsv.ImportCSV()
> vitables/csv/import_csv.py:102: in __init__
>     self.addEntry()
> vitables/csv/import_csv.py:176: in addEntry
>     vitables.utils.insertInMenu(
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> 
> menu = <PyQt5.QtWidgets.QMenu object at 0x7fc2d8b5a9e0>
> entries = <PyQt5.QtWidgets.QMenu object at 0x7fc2d8b5beb0>, uid = 'fileClose'
> 
>     def insertInMenu(menu, entries, uid):
>         """Insert entries to the given menu before the action named uid.
>     
>         The function accept a QAction/QMenu or an iterable. The entries will
>         be added before the action whose name is uid.
>     
>         :Parameters:
>     
>         - `menu`: the menu or context menu being updated
>         - `entries`: QAction/Qmenu object or a list of such objects
>         - `uid`: indicates the insertion position for the new entries
>     
>         :return: None
>         """
>     
> >       if not isinstance(entries, collections.Iterable):
> E       AttributeError: module 'collections' has no attribute 'Iterable'
> 
> vitables/utils.py:152: AttributeError
> ______________ ERROR at setup of TestFilenode.test_fnbReadBuffer 
> _______________
> 
>     @pytest.fixture(scope='module')
>     def launcher():
> >       return Launcher()
> 
> tests/conftest.py:33: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> tests/conftest.py:27: in __init__
>     self.vtapp_object = vitables.vtapp.VTApp(keep_splash=False)
> vitables/vtapp.py:139: in __init__
>     self.csv_importer = importcsv.ImportCSV()
> vitables/csv/import_csv.py:102: in __init__
>     self.addEntry()
> vitables/csv/import_csv.py:176: in addEntry
>     vitables.utils.insertInMenu(
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> 
> menu = <PyQt5.QtWidgets.QMenu object at 0x7fc2d8b5a9e0>
> entries = <PyQt5.QtWidgets.QMenu object at 0x7fc2d8b5beb0>, uid = 'fileClose'
> 
>     def insertInMenu(menu, entries, uid):
>         """Insert entries to the given menu before the action named uid.
>     
>         The function accept a QAction/QMenu or an iterable. The entries will
>         be added before the action whose name is uid.
>     
>         :Parameters:
>     
>         - `menu`: the menu or context menu being updated
>         - `entries`: QAction/Qmenu object or a list of such objects
>         - `uid`: indicates the insertion position for the new entries
>     
>         :return: None
>         """
>     
> >       if not isinstance(entries, collections.Iterable):
> E       AttributeError: module 'collections' has no attribute 'Iterable'
> 
> vitables/utils.py:152: AttributeError
> ________________ ERROR at setup of TestFilenode.test_fnbGetCell 
> ________________
> 
>     @pytest.fixture(scope='module')
>     def launcher():
> >       return Launcher()
> 
> tests/conftest.py:33: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> tests/conftest.py:27: in __init__
>     self.vtapp_object = vitables.vtapp.VTApp(keep_splash=False)
> vitables/vtapp.py:139: in __init__
>     self.csv_importer = importcsv.ImportCSV()
> vitables/csv/import_csv.py:102: in __init__
>     self.addEntry()
> vitables/csv/import_csv.py:176: in addEntry
>     vitables.utils.insertInMenu(
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> 
> menu = <PyQt5.QtWidgets.QMenu object at 0x7fc2d8b5a9e0>
> entries = <PyQt5.QtWidgets.QMenu object at 0x7fc2d8b5beb0>, uid = 'fileClose'
> 
>     def insertInMenu(menu, entries, uid):
>         """Insert entries to the given menu before the action named uid.
>     
>         The function accept a QAction/QMenu or an iterable. The entries will
>         be added before the action whose name is uid.
>     
>         :Parameters:
>     
>         - `menu`: the menu or context menu being updated
>         - `entries`: QAction/Qmenu object or a list of such objects
>         - `uid`: indicates the insertion position for the new entries
>     
>         :return: None
>         """
>     
> >       if not isinstance(entries, collections.Iterable):
> E       AttributeError: module 'collections' has no attribute 'Iterable'
> 
> vitables/utils.py:152: AttributeError
> ___________________ ERROR at setup of TestLogger.test_write 
> ____________________
> 
>     @pytest.fixture(scope='module')
>     def launcher():
> >       return Launcher()
> 
> tests/conftest.py:33: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> tests/conftest.py:27: in __init__
>     self.vtapp_object = vitables.vtapp.VTApp(keep_splash=False)
> vitables/vtapp.py:139: in __init__
>     self.csv_importer = importcsv.ImportCSV()
> vitables/csv/import_csv.py:102: in __init__
>     self.addEntry()
> vitables/csv/import_csv.py:176: in addEntry
>     vitables.utils.insertInMenu(
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> 
> menu = <PyQt5.QtWidgets.QMenu object at 0x7fc2d8acc310>
> entries = <PyQt5.QtWidgets.QMenu object at 0x7fc2d8acd7e0>, uid = 'fileClose'
> 
>     def insertInMenu(menu, entries, uid):
>         """Insert entries to the given menu before the action named uid.
>     
>         The function accept a QAction/QMenu or an iterable. The entries will
>         be added before the action whose name is uid.
>     
>         :Parameters:
>     
>         - `menu`: the menu or context menu being updated
>         - `entries`: QAction/Qmenu object or a list of such objects
>         - `uid`: indicates the insertion position for the new entries
>     
>         :return: None
>         """
>     
> >       if not isinstance(entries, collections.Iterable):
> E       AttributeError: module 'collections' has no attribute 'Iterable'
> 
> vitables/utils.py:152: AttributeError
> ______________ ERROR at setup of TestLogger.test_setupContextMenu 
> ______________
> 
>     @pytest.fixture(scope='module')
>     def launcher():
> >       return Launcher()
> 
> tests/conftest.py:33: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> tests/conftest.py:27: in __init__
>     self.vtapp_object = vitables.vtapp.VTApp(keep_splash=False)
> vitables/vtapp.py:139: in __init__
>     self.csv_importer = importcsv.ImportCSV()
> vitables/csv/import_csv.py:102: in __init__
>     self.addEntry()
> vitables/csv/import_csv.py:176: in addEntry
>     vitables.utils.insertInMenu(
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> 
> menu = <PyQt5.QtWidgets.QMenu object at 0x7fc2d8acc310>
> entries = <PyQt5.QtWidgets.QMenu object at 0x7fc2d8acd7e0>, uid = 'fileClose'
> 
>     def insertInMenu(menu, entries, uid):
>         """Insert entries to the given menu before the action named uid.
>     
>         The function accept a QAction/QMenu or an iterable. The entries will
>         be added before the action whose name is uid.
>     
>         :Parameters:
>     
>         - `menu`: the menu or context menu being updated
>         - `entries`: QAction/Qmenu object or a list of such objects
>         - `uid`: indicates the insertion position for the new entries
>     
>         :return: None
>         """
>     
> >       if not isinstance(entries, collections.Iterable):
> E       AttributeError: module 'collections' has no attribute 'Iterable'
> 
> vitables/utils.py:152: AttributeError
> _____________ ERROR at setup of TestLogger.test_updateContextMenu 
> ______________
> 
>     @pytest.fixture(scope='module')
>     def launcher():
> >       return Launcher()
> 
> tests/conftest.py:33: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> tests/conftest.py:27: in __init__
>     self.vtapp_object = vitables.vtapp.VTApp(keep_splash=False)
> vitables/vtapp.py:139: in __init__
>     self.csv_importer = importcsv.ImportCSV()
> vitables/csv/import_csv.py:102: in __init__
>     self.addEntry()
> vitables/csv/import_csv.py:176: in addEntry
>     vitables.utils.insertInMenu(
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> 
> menu = <PyQt5.QtWidgets.QMenu object at 0x7fc2d8acc310>
> entries = <PyQt5.QtWidgets.QMenu object at 0x7fc2d8acd7e0>, uid = 'fileClose'
> 
>     def insertInMenu(menu, entries, uid):
>         """Insert entries to the given menu before the action named uid.
>     
>         The function accept a QAction/QMenu or an iterable. The entries will
>         be added before the action whose name is uid.
>     
>         :Parameters:
>     
>         - `menu`: the menu or context menu being updated
>         - `entries`: QAction/Qmenu object or a list of such objects
>         - `uid`: indicates the insertion position for the new entries
>     
>         :return: None
>         """
>     
> >       if not isinstance(entries, collections.Iterable):
> E       AttributeError: module 'collections' has no attribute 'Iterable'
> 
> vitables/utils.py:152: AttributeError
> ________________ ERROR at setup of TestLogger.test_focusInEvent 
> ________________
> 
>     @pytest.fixture(scope='module')
>     def launcher():
> >       return Launcher()
> 
> tests/conftest.py:33: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> tests/conftest.py:27: in __init__
>     self.vtapp_object = vitables.vtapp.VTApp(keep_splash=False)
> vitables/vtapp.py:139: in __init__
>     self.csv_importer = importcsv.ImportCSV()
> vitables/csv/import_csv.py:102: in __init__
>     self.addEntry()
> vitables/csv/import_csv.py:176: in addEntry
>     vitables.utils.insertInMenu(
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> 
> menu = <PyQt5.QtWidgets.QMenu object at 0x7fc2d8acc310>
> entries = <PyQt5.QtWidgets.QMenu object at 0x7fc2d8acd7e0>, uid = 'fileClose'
> 
>     def insertInMenu(menu, entries, uid):
>         """Insert entries to the given menu before the action named uid.
>     
>         The function accept a QAction/QMenu or an iterable. The entries will
>         be added before the action whose name is uid.
>     
>         :Parameters:
>     
>         - `menu`: the menu or context menu being updated
>         - `entries`: QAction/Qmenu object or a list of such objects
>         - `uid`: indicates the insertion position for the new entries
>     
>         :return: None
>         """
>     
> >       if not isinstance(entries, collections.Iterable):
> E       AttributeError: module 'collections' has no attribute 'Iterable'
> 
> vitables/utils.py:152: AttributeError
> _______________ ERROR at setup of TestLogger.test_focusOutEvent 
> ________________
> 
>     @pytest.fixture(scope='module')
>     def launcher():
> >       return Launcher()
> 
> tests/conftest.py:33: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> tests/conftest.py:27: in __init__
>     self.vtapp_object = vitables.vtapp.VTApp(keep_splash=False)
> vitables/vtapp.py:139: in __init__
>     self.csv_importer = importcsv.ImportCSV()
> vitables/csv/import_csv.py:102: in __init__
>     self.addEntry()
> vitables/csv/import_csv.py:176: in addEntry
>     vitables.utils.insertInMenu(
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> 
> menu = <PyQt5.QtWidgets.QMenu object at 0x7fc2d8acc310>
> entries = <PyQt5.QtWidgets.QMenu object at 0x7fc2d8acd7e0>, uid = 'fileClose'
> 
>     def insertInMenu(menu, entries, uid):
>         """Insert entries to the given menu before the action named uid.
>     
>         The function accept a QAction/QMenu or an iterable. The entries will
>         be added before the action whose name is uid.
>     
>         :Parameters:
>     
>         - `menu`: the menu or context menu being updated
>         - `entries`: QAction/Qmenu object or a list of such objects
>         - `uid`: indicates the insertion position for the new entries
>     
>         :return: None
>         """
>     
> >       if not isinstance(entries, collections.Iterable):
> E       AttributeError: module 'collections' has no attribute 'Iterable'
> 
> vitables/utils.py:152: AttributeError
> __________________ ERROR at setup of TestUtils.test_getVTApp 
> ___________________
> 
>     @pytest.fixture(scope='module')
>     def launcher():
> >       return Launcher()
> 
> tests/conftest.py:33: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> tests/conftest.py:27: in __init__
>     self.vtapp_object = vitables.vtapp.VTApp(keep_splash=False)
> vitables/vtapp.py:139: in __init__
>     self.csv_importer = importcsv.ImportCSV()
> vitables/csv/import_csv.py:102: in __init__
>     self.addEntry()
> vitables/csv/import_csv.py:176: in addEntry
>     vitables.utils.insertInMenu(
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> 
> menu = <PyQt5.QtWidgets.QMenu object at 0x7fc2d8acfe20>
> entries = <PyQt5.QtWidgets.QMenu object at 0x7fc2d8ae9360>, uid = 'fileClose'
> 
>     def insertInMenu(menu, entries, uid):
>         """Insert entries to the given menu before the action named uid.
>     
>         The function accept a QAction/QMenu or an iterable. The entries will
>         be added before the action whose name is uid.
>     
>         :Parameters:
>     
>         - `menu`: the menu or context menu being updated
>         - `entries`: QAction/Qmenu object or a list of such objects
>         - `uid`: indicates the insertion position for the new entries
>     
>         :return: None
>         """
>     
> >       if not isinstance(entries, collections.Iterable):
> E       AttributeError: module 'collections' has no attribute 'Iterable'
> 
> vitables/utils.py:152: AttributeError
> ___________________ ERROR at setup of TestUtils.test_getGui 
> ____________________
> 
>     @pytest.fixture(scope='module')
>     def launcher():
> >       return Launcher()
> 
> tests/conftest.py:33: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> tests/conftest.py:27: in __init__
>     self.vtapp_object = vitables.vtapp.VTApp(keep_splash=False)
> vitables/vtapp.py:139: in __init__
>     self.csv_importer = importcsv.ImportCSV()
> vitables/csv/import_csv.py:102: in __init__
>     self.addEntry()
> vitables/csv/import_csv.py:176: in addEntry
>     vitables.utils.insertInMenu(
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> 
> menu = <PyQt5.QtWidgets.QMenu object at 0x7fc2d8acfe20>
> entries = <PyQt5.QtWidgets.QMenu object at 0x7fc2d8ae9360>, uid = 'fileClose'
> 
>     def insertInMenu(menu, entries, uid):
>         """Insert entries to the given menu before the action named uid.
>     
>         The function accept a QAction/QMenu or an iterable. The entries will
>         be added before the action whose name is uid.
>     
>         :Parameters:
>     
>         - `menu`: the menu or context menu being updated
>         - `entries`: QAction/Qmenu object or a list of such objects
>         - `uid`: indicates the insertion position for the new entries
>     
>         :return: None
>         """
>     
> >       if not isinstance(entries, collections.Iterable):
> E       AttributeError: module 'collections' has no attribute 'Iterable'
> 
> vitables/utils.py:152: AttributeError
> __________________ ERROR at setup of TestUtils.test_getModel 
> ___________________
> 
>     @pytest.fixture(scope='module')
>     def launcher():
> >       return Launcher()
> 
> tests/conftest.py:33: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> tests/conftest.py:27: in __init__
>     self.vtapp_object = vitables.vtapp.VTApp(keep_splash=False)
> vitables/vtapp.py:139: in __init__
>     self.csv_importer = importcsv.ImportCSV()
> vitables/csv/import_csv.py:102: in __init__
>     self.addEntry()
> vitables/csv/import_csv.py:176: in addEntry
>     vitables.utils.insertInMenu(
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> 
> menu = <PyQt5.QtWidgets.QMenu object at 0x7fc2d8acfe20>
> entries = <PyQt5.QtWidgets.QMenu object at 0x7fc2d8ae9360>, uid = 'fileClose'
> 
>     def insertInMenu(menu, entries, uid):
>         """Insert entries to the given menu before the action named uid.
>     
>         The function accept a QAction/QMenu or an iterable. The entries will
>         be added before the action whose name is uid.
>     
>         :Parameters:
>     
>         - `menu`: the menu or context menu being updated
>         - `entries`: QAction/Qmenu object or a list of such objects
>         - `uid`: indicates the insertion position for the new entries
>     
>         :return: None
>         """
>     
> >       if not isinstance(entries, collections.Iterable):
> E       AttributeError: module 'collections' has no attribute 'Iterable'
> 
> vitables/utils.py:152: AttributeError
> ___________________ ERROR at setup of TestUtils.test_getView 
> ___________________
> 
>     @pytest.fixture(scope='module')
>     def launcher():
> >       return Launcher()
> 
> tests/conftest.py:33: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> tests/conftest.py:27: in __init__
>     self.vtapp_object = vitables.vtapp.VTApp(keep_splash=False)
> vitables/vtapp.py:139: in __init__
>     self.csv_importer = importcsv.ImportCSV()
> vitables/csv/import_csv.py:102: in __init__
>     self.addEntry()
> vitables/csv/import_csv.py:176: in addEntry
>     vitables.utils.insertInMenu(
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> 
> menu = <PyQt5.QtWidgets.QMenu object at 0x7fc2d8acfe20>
> entries = <PyQt5.QtWidgets.QMenu object at 0x7fc2d8ae9360>, uid = 'fileClose'
> 
>     def insertInMenu(menu, entries, uid):
>         """Insert entries to the given menu before the action named uid.
>     
>         The function accept a QAction/QMenu or an iterable. The entries will
>         be added before the action whose name is uid.
>     
>         :Parameters:
>     
>         - `menu`: the menu or context menu being updated
>         - `entries`: QAction/Qmenu object or a list of such objects
>         - `uid`: indicates the insertion position for the new entries
>     
>         :return: None
>         """
>     
> >       if not isinstance(entries, collections.Iterable):
> E       AttributeError: module 'collections' has no attribute 'Iterable'
> 
> vitables/utils.py:152: AttributeError
> _____________ ERROR at setup of TestUtils.test_getSelectedIndexes 
> ______________
> 
>     @pytest.fixture(scope='module')
>     def launcher():
> >       return Launcher()
> 
> tests/conftest.py:33: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> tests/conftest.py:27: in __init__
>     self.vtapp_object = vitables.vtapp.VTApp(keep_splash=False)
> vitables/vtapp.py:139: in __init__
>     self.csv_importer = importcsv.ImportCSV()
> vitables/csv/import_csv.py:102: in __init__
>     self.addEntry()
> vitables/csv/import_csv.py:176: in addEntry
>     vitables.utils.insertInMenu(
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> 
> menu = <PyQt5.QtWidgets.QMenu object at 0x7fc2d8acfe20>
> entries = <PyQt5.QtWidgets.QMenu object at 0x7fc2d8ae9360>, uid = 'fileClose'
> 
>     def insertInMenu(menu, entries, uid):
>         """Insert entries to the given menu before the action named uid.
>     
>         The function accept a QAction/QMenu or an iterable. The entries will
>         be added before the action whose name is uid.
>     
>         :Parameters:
>     
>         - `menu`: the menu or context menu being updated
>         - `entries`: QAction/Qmenu object or a list of such objects
>         - `uid`: indicates the insertion position for the new entries
>     
>         :return: None
>         """
>     
> >       if not isinstance(entries, collections.Iterable):
> E       AttributeError: module 'collections' has no attribute 'Iterable'
> 
> vitables/utils.py:152: AttributeError
> ______________ ERROR at setup of TestUtils.test_getSelectedNodes 
> _______________
> 
>     @pytest.fixture(scope='module')
>     def launcher():
> >       return Launcher()
> 
> tests/conftest.py:33: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> tests/conftest.py:27: in __init__
>     self.vtapp_object = vitables.vtapp.VTApp(keep_splash=False)
> vitables/vtapp.py:139: in __init__
>     self.csv_importer = importcsv.ImportCSV()
> vitables/csv/import_csv.py:102: in __init__
>     self.addEntry()
> vitables/csv/import_csv.py:176: in addEntry
>     vitables.utils.insertInMenu(
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> 
> menu = <PyQt5.QtWidgets.QMenu object at 0x7fc2d8acfe20>
> entries = <PyQt5.QtWidgets.QMenu object at 0x7fc2d8ae9360>, uid = 'fileClose'
> 
>     def insertInMenu(menu, entries, uid):
>         """Insert entries to the given menu before the action named uid.
>     
>         The function accept a QAction/QMenu or an iterable. The entries will
>         be added before the action whose name is uid.
>     
>         :Parameters:
>     
>         - `menu`: the menu or context menu being updated
>         - `entries`: QAction/Qmenu object or a list of such objects
>         - `uid`: indicates the insertion position for the new entries
>     
>         :return: None
>         """
>     
> >       if not isinstance(entries, collections.Iterable):
> E       AttributeError: module 'collections' has no attribute 'Iterable'
> 
> vitables/utils.py:152: AttributeError
> ________________ ERROR at setup of TestUtils.test_insertInMenu 
> _________________
> 
>     @pytest.fixture(scope='module')
>     def launcher():
> >       return Launcher()
> 
> tests/conftest.py:33: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> tests/conftest.py:27: in __init__
>     self.vtapp_object = vitables.vtapp.VTApp(keep_splash=False)
> vitables/vtapp.py:139: in __init__
>     self.csv_importer = importcsv.ImportCSV()
> vitables/csv/import_csv.py:102: in __init__
>     self.addEntry()
> vitables/csv/import_csv.py:176: in addEntry
>     vitables.utils.insertInMenu(
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> 
> menu = <PyQt5.QtWidgets.QMenu object at 0x7fc2d8acfe20>
> entries = <PyQt5.QtWidgets.QMenu object at 0x7fc2d8ae9360>, uid = 'fileClose'
> 
>     def insertInMenu(menu, entries, uid):
>         """Insert entries to the given menu before the action named uid.
>     
>         The function accept a QAction/QMenu or an iterable. The entries will
>         be added before the action whose name is uid.
>     
>         :Parameters:
>     
>         - `menu`: the menu or context menu being updated
>         - `entries`: QAction/Qmenu object or a list of such objects
>         - `uid`: indicates the insertion position for the new entries
>     
>         :return: None
>         """
>     
> >       if not isinstance(entries, collections.Iterable):
> E       AttributeError: module 'collections' has no attribute 'Iterable'
> 
> vitables/utils.py:152: AttributeError
> __________________ ERROR at setup of TestUtils.test_addToMenu 
> __________________
> 
>     @pytest.fixture(scope='module')
>     def launcher():
> >       return Launcher()
> 
> tests/conftest.py:33: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> tests/conftest.py:27: in __init__
>     self.vtapp_object = vitables.vtapp.VTApp(keep_splash=False)
> vitables/vtapp.py:139: in __init__
>     self.csv_importer = importcsv.ImportCSV()
> vitables/csv/import_csv.py:102: in __init__
>     self.addEntry()
> vitables/csv/import_csv.py:176: in addEntry
>     vitables.utils.insertInMenu(
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> 
> menu = <PyQt5.QtWidgets.QMenu object at 0x7fc2d8acfe20>
> entries = <PyQt5.QtWidgets.QMenu object at 0x7fc2d8ae9360>, uid = 'fileClose'
> 
>     def insertInMenu(menu, entries, uid):
>         """Insert entries to the given menu before the action named uid.
>     
>         The function accept a QAction/QMenu or an iterable. The entries will
>         be added before the action whose name is uid.
>     
>         :Parameters:
>     
>         - `menu`: the menu or context menu being updated
>         - `entries`: QAction/Qmenu object or a list of such objects
>         - `uid`: indicates the insertion position for the new entries
>     
>         :return: None
>         """
>     
> >       if not isinstance(entries, collections.Iterable):
> E       AttributeError: module 'collections' has no attribute 'Iterable'
> 
> vitables/utils.py:152: AttributeError
> _________________ ERROR at setup of TestUtils.test_addActions 
> __________________
> 
>     @pytest.fixture(scope='module')
>     def launcher():
> >       return Launcher()
> 
> tests/conftest.py:33: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> tests/conftest.py:27: in __init__
>     self.vtapp_object = vitables.vtapp.VTApp(keep_splash=False)
> vitables/vtapp.py:139: in __init__
>     self.csv_importer = importcsv.ImportCSV()
> vitables/csv/import_csv.py:102: in __init__
>     self.addEntry()
> vitables/csv/import_csv.py:176: in addEntry
>     vitables.utils.insertInMenu(
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> 
> menu = <PyQt5.QtWidgets.QMenu object at 0x7fc2d8acfe20>
> entries = <PyQt5.QtWidgets.QMenu object at 0x7fc2d8ae9360>, uid = 'fileClose'
> 
>     def insertInMenu(menu, entries, uid):
>         """Insert entries to the given menu before the action named uid.
>     
>         The function accept a QAction/QMenu or an iterable. The entries will
>         be added before the action whose name is uid.
>     
>         :Parameters:
>     
>         - `menu`: the menu or context menu being updated
>         - `entries`: QAction/Qmenu object or a list of such objects
>         - `uid`: indicates the insertion position for the new entries
>     
>         :return: None
>         """
>     
> >       if not isinstance(entries, collections.Iterable):
> E       AttributeError: module 'collections' has no attribute 'Iterable'
> 
> vitables/utils.py:152: AttributeError
> _____________ ERROR at setup of TestUtils.test_checkFileExtension 
> ______________
> 
>     @pytest.fixture(scope='module')
>     def launcher():
> >       return Launcher()
> 
> tests/conftest.py:33: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> tests/conftest.py:27: in __init__
>     self.vtapp_object = vitables.vtapp.VTApp(keep_splash=False)
> vitables/vtapp.py:139: in __init__
>     self.csv_importer = importcsv.ImportCSV()
> vitables/csv/import_csv.py:102: in __init__
>     self.addEntry()
> vitables/csv/import_csv.py:176: in addEntry
>     vitables.utils.insertInMenu(
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> 
> menu = <PyQt5.QtWidgets.QMenu object at 0x7fc2d8acfe20>
> entries = <PyQt5.QtWidgets.QMenu object at 0x7fc2d8ae9360>, uid = 'fileClose'
> 
>     def insertInMenu(menu, entries, uid):
>         """Insert entries to the given menu before the action named uid.
>     
>         The function accept a QAction/QMenu or an iterable. The entries will
>         be added before the action whose name is uid.
>     
>         :Parameters:
>     
>         - `menu`: the menu or context menu being updated
>         - `entries`: QAction/Qmenu object or a list of such objects
>         - `uid`: indicates the insertion position for the new entries
>     
>         :return: None
>         """
>     
> >       if not isinstance(entries, collections.Iterable):
> E       AttributeError: module 'collections' has no attribute 'Iterable'
> 
> vitables/utils.py:152: AttributeError
> _________________ ERROR at setup of TestUtils.test_createIcons 
> _________________
> 
>     @pytest.fixture(scope='module')
>     def launcher():
> >       return Launcher()
> 
> tests/conftest.py:33: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> tests/conftest.py:27: in __init__
>     self.vtapp_object = vitables.vtapp.VTApp(keep_splash=False)
> vitables/vtapp.py:139: in __init__
>     self.csv_importer = importcsv.ImportCSV()
> vitables/csv/import_csv.py:102: in __init__
>     self.addEntry()
> vitables/csv/import_csv.py:176: in addEntry
>     vitables.utils.insertInMenu(
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> 
> menu = <PyQt5.QtWidgets.QMenu object at 0x7fc2d8acfe20>
> entries = <PyQt5.QtWidgets.QMenu object at 0x7fc2d8ae9360>, uid = 'fileClose'
> 
>     def insertInMenu(menu, entries, uid):
>         """Insert entries to the given menu before the action named uid.
>     
>         The function accept a QAction/QMenu or an iterable. The entries will
>         be added before the action whose name is uid.
>     
>         :Parameters:
>     
>         - `menu`: the menu or context menu being updated
>         - `entries`: QAction/Qmenu object or a list of such objects
>         - `uid`: indicates the insertion position for the new entries
>     
>         :return: None
>         """
>     
> >       if not isinstance(entries, collections.Iterable):
> E       AttributeError: module 'collections' has no attribute 'Iterable'
> 
> vitables/utils.py:152: AttributeError
> _________________ ERROR at setup of TestUtils.test_forwardPath 
> _________________
> 
>     @pytest.fixture(scope='module')
>     def launcher():
> >       return Launcher()
> 
> tests/conftest.py:33: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> tests/conftest.py:27: in __init__
>     self.vtapp_object = vitables.vtapp.VTApp(keep_splash=False)
> vitables/vtapp.py:139: in __init__
>     self.csv_importer = importcsv.ImportCSV()
> vitables/csv/import_csv.py:102: in __init__
>     self.addEntry()
> vitables/csv/import_csv.py:176: in addEntry
>     vitables.utils.insertInMenu(
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> 
> menu = <PyQt5.QtWidgets.QMenu object at 0x7fc2d8acfe20>
> entries = <PyQt5.QtWidgets.QMenu object at 0x7fc2d8ae9360>, uid = 'fileClose'
> 
>     def insertInMenu(menu, entries, uid):
>         """Insert entries to the given menu before the action named uid.
>     
>         The function accept a QAction/QMenu or an iterable. The entries will
>         be added before the action whose name is uid.
>     
>         :Parameters:
>     
>         - `menu`: the menu or context menu being updated
>         - `entries`: QAction/Qmenu object or a list of such objects
>         - `uid`: indicates the insertion position for the new entries
>     
>         :return: None
>         """
>     
> >       if not isinstance(entries, collections.Iterable):
> E       AttributeError: module 'collections' has no attribute 'Iterable'
> 
> vitables/utils.py:152: AttributeError
> ________________ ERROR at setup of TestLogger.test_credentials 
> _________________
> 
>     @pytest.fixture(scope='module')
>     def launcher():
> >       return Launcher()
> 
> tests/conftest.py:33: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> tests/conftest.py:27: in __init__
>     self.vtapp_object = vitables.vtapp.VTApp(keep_splash=False)
> vitables/vtapp.py:139: in __init__
>     self.csv_importer = importcsv.ImportCSV()
> vitables/csv/import_csv.py:102: in __init__
>     self.addEntry()
> vitables/csv/import_csv.py:176: in addEntry
>     vitables.utils.insertInMenu(
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> 
> menu = <PyQt5.QtWidgets.QMenu object at 0x7fc2d8aeb9a0>
> entries = <PyQt5.QtWidgets.QMenu object at 0x7fc2d8a10ee0>, uid = 'fileClose'
> 
>     def insertInMenu(menu, entries, uid):
>         """Insert entries to the given menu before the action named uid.
>     
>         The function accept a QAction/QMenu or an iterable. The entries will
>         be added before the action whose name is uid.
>     
>         :Parameters:
>     
>         - `menu`: the menu or context menu being updated
>         - `entries`: QAction/Qmenu object or a list of such objects
>         - `uid`: indicates the insertion position for the new entries
>     
>         :return: None
>         """
>     
> >       if not isinstance(entries, collections.Iterable):
> E       AttributeError: module 'collections' has no attribute 'Iterable'
> 
> vitables/utils.py:152: AttributeError
> ___________________ ERROR at setup of TestLogger.test_logger 
> ___________________
> 
>     @pytest.fixture(scope='module')
>     def launcher():
> >       return Launcher()
> 
> tests/conftest.py:33: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> tests/conftest.py:27: in __init__
>     self.vtapp_object = vitables.vtapp.VTApp(keep_splash=False)
> vitables/vtapp.py:139: in __init__
>     self.csv_importer = importcsv.ImportCSV()
> vitables/csv/import_csv.py:102: in __init__
>     self.addEntry()
> vitables/csv/import_csv.py:176: in addEntry
>     vitables.utils.insertInMenu(
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> 
> menu = <PyQt5.QtWidgets.QMenu object at 0x7fc2d8aeb9a0>
> entries = <PyQt5.QtWidgets.QMenu object at 0x7fc2d8a10ee0>, uid = 'fileClose'
> 
>     def insertInMenu(menu, entries, uid):
>         """Insert entries to the given menu before the action named uid.
>     
>         The function accept a QAction/QMenu or an iterable. The entries will
>         be added before the action whose name is uid.
>     
>         :Parameters:
>     
>         - `menu`: the menu or context menu being updated
>         - `entries`: QAction/Qmenu object or a list of such objects
>         - `uid`: indicates the insertion position for the new entries
>     
>         :return: None
>         """
>     
> >       if not isinstance(entries, collections.Iterable):
> E       AttributeError: module 'collections' has no attribute 'Iterable'
> 
> vitables/utils.py:152: AttributeError
> _________________ ERROR at setup of TestLogger.test_workspace 
> __________________
> 
>     @pytest.fixture(scope='module')
>     def launcher():
> >       return Launcher()
> 
> tests/conftest.py:33: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> tests/conftest.py:27: in __init__
>     self.vtapp_object = vitables.vtapp.VTApp(keep_splash=False)
> vitables/vtapp.py:139: in __init__
>     self.csv_importer = importcsv.ImportCSV()
> vitables/csv/import_csv.py:102: in __init__
>     self.addEntry()
> vitables/csv/import_csv.py:176: in addEntry
>     vitables.utils.insertInMenu(
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> 
> menu = <PyQt5.QtWidgets.QMenu object at 0x7fc2d8aeb9a0>
> entries = <PyQt5.QtWidgets.QMenu object at 0x7fc2d8a10ee0>, uid = 'fileClose'
> 
>     def insertInMenu(menu, entries, uid):
>         """Insert entries to the given menu before the action named uid.
>     
>         The function accept a QAction/QMenu or an iterable. The entries will
>         be added before the action whose name is uid.
>     
>         :Parameters:
>     
>         - `menu`: the menu or context menu being updated
>         - `entries`: QAction/Qmenu object or a list of such objects
>         - `uid`: indicates the insertion position for the new entries
>     
>         :return: None
>         """
>     
> >       if not isinstance(entries, collections.Iterable):
> E       AttributeError: module 'collections' has no attribute 'Iterable'
> 
> vitables/utils.py:152: AttributeError
> __________________ ERROR at setup of TestLogger.test_appStyle 
> __________________
> 
>     @pytest.fixture(scope='module')
>     def launcher():
> >       return Launcher()
> 
> tests/conftest.py:33: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> tests/conftest.py:27: in __init__
>     self.vtapp_object = vitables.vtapp.VTApp(keep_splash=False)
> vitables/vtapp.py:139: in __init__
>     self.csv_importer = importcsv.ImportCSV()
> vitables/csv/import_csv.py:102: in __init__
>     self.addEntry()
> vitables/csv/import_csv.py:176: in addEntry
>     vitables.utils.insertInMenu(
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> 
> menu = <PyQt5.QtWidgets.QMenu object at 0x7fc2d8aeb9a0>
> entries = <PyQt5.QtWidgets.QMenu object at 0x7fc2d8a10ee0>, uid = 'fileClose'
> 
>     def insertInMenu(menu, entries, uid):
>         """Insert entries to the given menu before the action named uid.
>     
>         The function accept a QAction/QMenu or an iterable. The entries will
>         be added before the action whose name is uid.
>     
>         :Parameters:
>     
>         - `menu`: the menu or context menu being updated
>         - `entries`: QAction/Qmenu object or a list of such objects
>         - `uid`: indicates the insertion position for the new entries
>     
>         :return: None
>         """
>     
> >       if not isinstance(entries, collections.Iterable):
> E       AttributeError: module 'collections' has no attribute 'Iterable'
> 
> vitables/utils.py:152: AttributeError
> _______________ ERROR at setup of TestLogger.test_windowGeometry 
> _______________
> 
>     @pytest.fixture(scope='module')
>     def launcher():
> >       return Launcher()
> 
> tests/conftest.py:33: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> tests/conftest.py:27: in __init__
>     self.vtapp_object = vitables.vtapp.VTApp(keep_splash=False)
> vitables/vtapp.py:139: in __init__
>     self.csv_importer = importcsv.ImportCSV()
> vitables/csv/import_csv.py:102: in __init__
>     self.addEntry()
> vitables/csv/import_csv.py:176: in addEntry
>     vitables.utils.insertInMenu(
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> 
> menu = <PyQt5.QtWidgets.QMenu object at 0x7fc2d8aeb9a0>
> entries = <PyQt5.QtWidgets.QMenu object at 0x7fc2d8a10ee0>, uid = 'fileClose'
> 
>     def insertInMenu(menu, entries, uid):
>         """Insert entries to the given menu before the action named uid.
>     
>         The function accept a QAction/QMenu or an iterable. The entries will
>         be added before the action whose name is uid.
>     
>         :Parameters:
>     
>         - `menu`: the menu or context menu being updated
>         - `entries`: QAction/Qmenu object or a list of such objects
>         - `uid`: indicates the insertion position for the new entries
>     
>         :return: None
>         """
>     
> >       if not isinstance(entries, collections.Iterable):
> E       AttributeError: module 'collections' has no attribute 'Iterable'
> 
> vitables/utils.py:152: AttributeError
> ______________ ERROR at setup of TestLogger.test_dockwidgetState 
> _______________
> 
>     @pytest.fixture(scope='module')
>     def launcher():
> >       return Launcher()
> 
> tests/conftest.py:33: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> tests/conftest.py:27: in __init__
>     self.vtapp_object = vitables.vtapp.VTApp(keep_splash=False)
> vitables/vtapp.py:139: in __init__
>     self.csv_importer = importcsv.ImportCSV()
> vitables/csv/import_csv.py:102: in __init__
>     self.addEntry()
> vitables/csv/import_csv.py:176: in addEntry
>     vitables.utils.insertInMenu(
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> 
> menu = <PyQt5.QtWidgets.QMenu object at 0x7fc2d8aeb9a0>
> entries = <PyQt5.QtWidgets.QMenu object at 0x7fc2d8a10ee0>, uid = 'fileClose'
> 
>     def insertInMenu(menu, entries, uid):
>         """Insert entries to the given menu before the action named uid.
>     
>         The function accept a QAction/QMenu or an iterable. The entries will
>         be added before the action whose name is uid.
>     
>         :Parameters:
>     
>         - `menu`: the menu or context menu being updated
>         - `entries`: QAction/Qmenu object or a list of such objects
>         - `uid`: indicates the insertion position for the new entries
>     
>         :return: None
>         """
>     
> >       if not isinstance(entries, collections.Iterable):
> E       AttributeError: module 'collections' has no attribute 'Iterable'
> 
> vitables/utils.py:152: AttributeError
> _______________ ERROR at setup of TestLogger.test_toolbarsState 
> ________________
> 
>     @pytest.fixture(scope='module')
>     def launcher():
> >       return Launcher()
> 
> tests/conftest.py:33: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> tests/conftest.py:27: in __init__
>     self.vtapp_object = vitables.vtapp.VTApp(keep_splash=False)
> vitables/vtapp.py:139: in __init__
>     self.csv_importer = importcsv.ImportCSV()
> vitables/csv/import_csv.py:102: in __init__
>     self.addEntry()
> vitables/csv/import_csv.py:176: in addEntry
>     vitables.utils.insertInMenu(
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> 
> menu = <PyQt5.QtWidgets.QMenu object at 0x7fc2d8aeb9a0>
> entries = <PyQt5.QtWidgets.QMenu object at 0x7fc2d8a10ee0>, uid = 'fileClose'
> 
>     def insertInMenu(menu, entries, uid):
>         """Insert entries to the given menu before the action named uid.
>     
>         The function accept a QAction/QMenu or an iterable. The entries will
>         be added before the action whose name is uid.
>     
>         :Parameters:
>     
>         - `menu`: the menu or context menu being updated
>         - `entries`: QAction/Qmenu object or a list of such objects
>         - `uid`: indicates the insertion position for the new entries
>     
>         :return: None
>         """
>     
> >       if not isinstance(entries, collections.Iterable):
> E       AttributeError: module 'collections' has no attribute 'Iterable'
> 
> vitables/utils.py:152: AttributeError
> _______________ ERROR at setup of TestLogger.test_hsplitterState 
> _______________
> 
>     @pytest.fixture(scope='module')
>     def launcher():
> >       return Launcher()
> 
> tests/conftest.py:33: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> tests/conftest.py:27: in __init__
>     self.vtapp_object = vitables.vtapp.VTApp(keep_splash=False)
> vitables/vtapp.py:139: in __init__
>     self.csv_importer = importcsv.ImportCSV()
> vitables/csv/import_csv.py:102: in __init__
>     self.addEntry()
> vitables/csv/import_csv.py:176: in addEntry
>     vitables.utils.insertInMenu(
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> 
> menu = <PyQt5.QtWidgets.QMenu object at 0x7fc2d8aeb9a0>
> entries = <PyQt5.QtWidgets.QMenu object at 0x7fc2d8a10ee0>, uid = 'fileClose'
> 
>     def insertInMenu(menu, entries, uid):
>         """Insert entries to the given menu before the action named uid.
>     
>         The function accept a QAction/QMenu or an iterable. The entries will
>         be added before the action whose name is uid.
>     
>         :Parameters:
>     
>         - `menu`: the menu or context menu being updated
>         - `entries`: QAction/Qmenu object or a list of such objects
>         - `uid`: indicates the insertion position for the new entries
>     
>         :return: None
>         """
>     
> >       if not isinstance(entries, collections.Iterable):
> E       AttributeError: module 'collections' has no attribute 'Iterable'
> 
> vitables/utils.py:152: AttributeError
> _____________ ERROR at setup of TestLogger.test_restoreLastSession 
> _____________
> 
>     @pytest.fixture(scope='module')
>     def launcher():
> >       return Launcher()
> 
> tests/conftest.py:33: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> tests/conftest.py:27: in __init__
>     self.vtapp_object = vitables.vtapp.VTApp(keep_splash=False)
> vitables/vtapp.py:139: in __init__
>     self.csv_importer = importcsv.ImportCSV()
> vitables/csv/import_csv.py:102: in __init__
>     self.addEntry()
> vitables/csv/import_csv.py:176: in addEntry
>     vitables.utils.insertInMenu(
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> 
> menu = <PyQt5.QtWidgets.QMenu object at 0x7fc2d8aeb9a0>
> entries = <PyQt5.QtWidgets.QMenu object at 0x7fc2d8a10ee0>, uid = 'fileClose'
> 
>     def insertInMenu(menu, entries, uid):
>         """Insert entries to the given menu before the action named uid.
>     
>         The function accept a QAction/QMenu or an iterable. The entries will
>         be added before the action whose name is uid.
>     
>         :Parameters:
>     
>         - `menu`: the menu or context menu being updated
>         - `entries`: QAction/Qmenu object or a list of such objects
>         - `uid`: indicates the insertion position for the new entries
>     
>         :return: None
>         """
>     
> >       if not isinstance(entries, collections.Iterable):
> E       AttributeError: module 'collections' has no attribute 'Iterable'
> 
> vitables/utils.py:152: AttributeError
> _____________ ERROR at setup of TestLogger.test_startupWorkingDir 
> ______________
> 
>     @pytest.fixture(scope='module')
>     def launcher():
> >       return Launcher()
> 
> tests/conftest.py:33: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> tests/conftest.py:27: in __init__
>     self.vtapp_object = vitables.vtapp.VTApp(keep_splash=False)
> vitables/vtapp.py:139: in __init__
>     self.csv_importer = importcsv.ImportCSV()
> vitables/csv/import_csv.py:102: in __init__
>     self.addEntry()
> vitables/csv/import_csv.py:176: in addEntry
>     vitables.utils.insertInMenu(
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> 
> menu = <PyQt5.QtWidgets.QMenu object at 0x7fc2d8aeb9a0>
> entries = <PyQt5.QtWidgets.QMenu object at 0x7fc2d8a10ee0>, uid = 'fileClose'
> 
>     def insertInMenu(menu, entries, uid):
>         """Insert entries to the given menu before the action named uid.
>     
>         The function accept a QAction/QMenu or an iterable. The entries will
>         be added before the action whose name is uid.
>     
>         :Parameters:
>     
>         - `menu`: the menu or context menu being updated
>         - `entries`: QAction/Qmenu object or a list of such objects
>         - `uid`: indicates the insertion position for the new entries
>     
>         :return: None
>         """
>     
> >       if not isinstance(entries, collections.Iterable):
> E       AttributeError: module 'collections' has no attribute 'Iterable'
> 
> vitables/utils.py:152: AttributeError
> _______________ ERROR at setup of TestLogger.test_lastWorkingDir 
> _______________
> 
>     @pytest.fixture(scope='module')
>     def launcher():
> >       return Launcher()
> 
> tests/conftest.py:33: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> tests/conftest.py:27: in __init__
>     self.vtapp_object = vitables.vtapp.VTApp(keep_splash=False)
> vitables/vtapp.py:139: in __init__
>     self.csv_importer = importcsv.ImportCSV()
> vitables/csv/import_csv.py:102: in __init__
>     self.addEntry()
> vitables/csv/import_csv.py:176: in addEntry
>     vitables.utils.insertInMenu(
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> 
> menu = <PyQt5.QtWidgets.QMenu object at 0x7fc2d8aeb9a0>
> entries = <PyQt5.QtWidgets.QMenu object at 0x7fc2d8a10ee0>, uid = 'fileClose'
> 
>     def insertInMenu(menu, entries, uid):
>         """Insert entries to the given menu before the action named uid.
>     
>         The function accept a QAction/QMenu or an iterable. The entries will
>         be added before the action whose name is uid.
>     
>         :Parameters:
>     
>         - `menu`: the menu or context menu being updated
>         - `entries`: QAction/Qmenu object or a list of such objects
>         - `uid`: indicates the insertion position for the new entries
>     
>         :return: None
>         """
>     
> >       if not isinstance(entries, collections.Iterable):
> E       AttributeError: module 'collections' has no attribute 'Iterable'
> 
> vitables/utils.py:152: AttributeError
> _________________ ERROR at setup of TestVTGui.test_dockWidget 
> __________________
> 
>     @pytest.fixture(scope='module')
>     def launcher():
> >       return Launcher()
> 
> tests/conftest.py:33: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> tests/conftest.py:27: in __init__
>     self.vtapp_object = vitables.vtapp.VTApp(keep_splash=False)
> vitables/vtapp.py:139: in __init__
>     self.csv_importer = importcsv.ImportCSV()
> vitables/csv/import_csv.py:102: in __init__
>     self.addEntry()
> vitables/csv/import_csv.py:176: in addEntry
>     vitables.utils.insertInMenu(
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> 
> menu = <PyQt5.QtWidgets.QMenu object at 0x7fc2d8a13490>
> entries = <PyQt5.QtWidgets.QMenu object at 0x7fc2d89b49d0>, uid = 'fileClose'
> 
>     def insertInMenu(menu, entries, uid):
>         """Insert entries to the given menu before the action named uid.
>     
>         The function accept a QAction/QMenu or an iterable. The entries will
>         be added before the action whose name is uid.
>     
>         :Parameters:
>     
>         - `menu`: the menu or context menu being updated
>         - `entries`: QAction/Qmenu object or a list of such objects
>         - `uid`: indicates the insertion position for the new entries
>     
>         :return: None
>         """
>     
> >       if not isinstance(entries, collections.Iterable):
> E       AttributeError: module 'collections' has no attribute 'Iterable'
> 
> vitables/utils.py:152: AttributeError
> __________________ ERROR at setup of TestVTGui.test_hsplitter 
> __________________
> 
>     @pytest.fixture(scope='module')
>     def launcher():
> >       return Launcher()
> 
> tests/conftest.py:33: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> tests/conftest.py:27: in __init__
>     self.vtapp_object = vitables.vtapp.VTApp(keep_splash=False)
> vitables/vtapp.py:139: in __init__
>     self.csv_importer = importcsv.ImportCSV()
> vitables/csv/import_csv.py:102: in __init__
>     self.addEntry()
> vitables/csv/import_csv.py:176: in addEntry
>     vitables.utils.insertInMenu(
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> 
> menu = <PyQt5.QtWidgets.QMenu object at 0x7fc2d8a13490>
> entries = <PyQt5.QtWidgets.QMenu object at 0x7fc2d89b49d0>, uid = 'fileClose'
> 
>     def insertInMenu(menu, entries, uid):
>         """Insert entries to the given menu before the action named uid.
>     
>         The function accept a QAction/QMenu or an iterable. The entries will
>         be added before the action whose name is uid.
>     
>         :Parameters:
>     
>         - `menu`: the menu or context menu being updated
>         - `entries`: QAction/Qmenu object or a list of such objects
>         - `uid`: indicates the insertion position for the new entries
>     
>         :return: None
>         """
>     
> >       if not isinstance(entries, collections.Iterable):
> E       AttributeError: module 'collections' has no attribute 'Iterable'
> 
> vitables/utils.py:152: AttributeError
> ___________________ ERROR at setup of TestVTGui.test_actions 
> ___________________
> 
>     @pytest.fixture(scope='module')
>     def launcher():
> >       return Launcher()
> 
> tests/conftest.py:33: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> tests/conftest.py:27: in __init__
>     self.vtapp_object = vitables.vtapp.VTApp(keep_splash=False)
> vitables/vtapp.py:139: in __init__
>     self.csv_importer = importcsv.ImportCSV()
> vitables/csv/import_csv.py:102: in __init__
>     self.addEntry()
> vitables/csv/import_csv.py:176: in addEntry
>     vitables.utils.insertInMenu(
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> 
> menu = <PyQt5.QtWidgets.QMenu object at 0x7fc2d8a13490>
> entries = <PyQt5.QtWidgets.QMenu object at 0x7fc2d89b49d0>, uid = 'fileClose'
> 
>     def insertInMenu(menu, entries, uid):
>         """Insert entries to the given menu before the action named uid.
>     
>         The function accept a QAction/QMenu or an iterable. The entries will
>         be added before the action whose name is uid.
>     
>         :Parameters:
>     
>         - `menu`: the menu or context menu being updated
>         - `entries`: QAction/Qmenu object or a list of such objects
>         - `uid`: indicates the insertion position for the new entries
>     
>         :return: None
>         """
>     
> >       if not isinstance(entries, collections.Iterable):
> E       AttributeError: module 'collections' has no attribute 'Iterable'
> 
> vitables/utils.py:152: AttributeError
> _________________ ERROR at setup of TestVTGui.test_fileToolBar 
> _________________
> 
>     @pytest.fixture(scope='module')
>     def launcher():
> >       return Launcher()
> 
> tests/conftest.py:33: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> tests/conftest.py:27: in __init__
>     self.vtapp_object = vitables.vtapp.VTApp(keep_splash=False)
> vitables/vtapp.py:139: in __init__
>     self.csv_importer = importcsv.ImportCSV()
> vitables/csv/import_csv.py:102: in __init__
>     self.addEntry()
> vitables/csv/import_csv.py:176: in addEntry
>     vitables.utils.insertInMenu(
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> 
> menu = <PyQt5.QtWidgets.QMenu object at 0x7fc2d8a13490>
> entries = <PyQt5.QtWidgets.QMenu object at 0x7fc2d89b49d0>, uid = 'fileClose'
> 
>     def insertInMenu(menu, entries, uid):
>         """Insert entries to the given menu before the action named uid.
>     
>         The function accept a QAction/QMenu or an iterable. The entries will
>         be added before the action whose name is uid.
>     
>         :Parameters:
>     
>         - `menu`: the menu or context menu being updated
>         - `entries`: QAction/Qmenu object or a list of such objects
>         - `uid`: indicates the insertion position for the new entries
>     
>         :return: None
>         """
>     
> >       if not isinstance(entries, collections.Iterable):
> E       AttributeError: module 'collections' has no attribute 'Iterable'
> 
> vitables/utils.py:152: AttributeError
> _________________ ERROR at setup of TestVTGui.test_nodeToolBar 
> _________________
> 
>     @pytest.fixture(scope='module')
>     def launcher():
> >       return Launcher()
> 
> tests/conftest.py:33: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> tests/conftest.py:27: in __init__
>     self.vtapp_object = vitables.vtapp.VTApp(keep_splash=False)
> vitables/vtapp.py:139: in __init__
>     self.csv_importer = importcsv.ImportCSV()
> vitables/csv/import_csv.py:102: in __init__
>     self.addEntry()
> vitables/csv/import_csv.py:176: in addEntry
>     vitables.utils.insertInMenu(
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> 
> menu = <PyQt5.QtWidgets.QMenu object at 0x7fc2d8a13490>
> entries = <PyQt5.QtWidgets.QMenu object at 0x7fc2d89b49d0>, uid = 'fileClose'
> 
>     def insertInMenu(menu, entries, uid):
>         """Insert entries to the given menu before the action named uid.
>     
>         The function accept a QAction/QMenu or an iterable. The entries will
>         be added before the action whose name is uid.
>     
>         :Parameters:
>     
>         - `menu`: the menu or context menu being updated
>         - `entries`: QAction/Qmenu object or a list of such objects
>         - `uid`: indicates the insertion position for the new entries
>     
>         :return: None
>         """
>     
> >       if not isinstance(entries, collections.Iterable):
> E       AttributeError: module 'collections' has no attribute 'Iterable'
> 
> vitables/utils.py:152: AttributeError
> ________________ ERROR at setup of TestVTGui.test_queryToolBar 
> _________________
> 
>     @pytest.fixture(scope='module')
>     def launcher():
> >       return Launcher()
> 
> tests/conftest.py:33: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> tests/conftest.py:27: in __init__
>     self.vtapp_object = vitables.vtapp.VTApp(keep_splash=False)
> vitables/vtapp.py:139: in __init__
>     self.csv_importer = importcsv.ImportCSV()
> vitables/csv/import_csv.py:102: in __init__
>     self.addEntry()
> vitables/csv/import_csv.py:176: in addEntry
>     vitables.utils.insertInMenu(
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> 
> menu = <PyQt5.QtWidgets.QMenu object at 0x7fc2d8a13490>
> entries = <PyQt5.QtWidgets.QMenu object at 0x7fc2d89b49d0>, uid = 'fileClose'
> 
>     def insertInMenu(menu, entries, uid):
>         """Insert entries to the given menu before the action named uid.
>     
>         The function accept a QAction/QMenu or an iterable. The entries will
>         be added before the action whose name is uid.
>     
>         :Parameters:
>     
>         - `menu`: the menu or context menu being updated
>         - `entries`: QAction/Qmenu object or a list of such objects
>         - `uid`: indicates the insertion position for the new entries
>     
>         :return: None
>         """
>     
> >       if not isinstance(entries, collections.Iterable):
> E       AttributeError: module 'collections' has no attribute 'Iterable'
> 
> vitables/utils.py:152: AttributeError
> _________________ ERROR at setup of TestVTGui.test_helpToolBar 
> _________________
> 
>     @pytest.fixture(scope='module')
>     def launcher():
> >       return Launcher()
> 
> tests/conftest.py:33: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> tests/conftest.py:27: in __init__
>     self.vtapp_object = vitables.vtapp.VTApp(keep_splash=False)
> vitables/vtapp.py:139: in __init__
>     self.csv_importer = importcsv.ImportCSV()
> vitables/csv/import_csv.py:102: in __init__
>     self.addEntry()
> vitables/csv/import_csv.py:176: in addEntry
>     vitables.utils.insertInMenu(
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> 
> menu = <PyQt5.QtWidgets.QMenu object at 0x7fc2d8a13490>
> entries = <PyQt5.QtWidgets.QMenu object at 0x7fc2d89b49d0>, uid = 'fileClose'
> 
>     def insertInMenu(menu, entries, uid):
>         """Insert entries to the given menu before the action named uid.
>     
>         The function accept a QAction/QMenu or an iterable. The entries will
>         be added before the action whose name is uid.
>     
>         :Parameters:
>     
>         - `menu`: the menu or context menu being updated
>         - `entries`: QAction/Qmenu object or a list of such objects
>         - `uid`: indicates the insertion position for the new entries
>     
>         :return: None
>         """
>     
> >       if not isinstance(entries, collections.Iterable):
> E       AttributeError: module 'collections' has no attribute 'Iterable'
> 
> vitables/utils.py:152: AttributeError
> _______________ ERROR at setup of TestVTGui.test_statusBarWidget 
> _______________
> 
>     @pytest.fixture(scope='module')
>     def launcher():
> >       return Launcher()
> 
> tests/conftest.py:33: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> tests/conftest.py:27: in __init__
>     self.vtapp_object = vitables.vtapp.VTApp(keep_splash=False)
> vitables/vtapp.py:139: in __init__
>     self.csv_importer = importcsv.ImportCSV()
> vitables/csv/import_csv.py:102: in __init__
>     self.addEntry()
> vitables/csv/import_csv.py:176: in addEntry
>     vitables.utils.insertInMenu(
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> 
> menu = <PyQt5.QtWidgets.QMenu object at 0x7fc2d8a13490>
> entries = <PyQt5.QtWidgets.QMenu object at 0x7fc2d89b49d0>, uid = 'fileClose'
> 
>     def insertInMenu(menu, entries, uid):
>         """Insert entries to the given menu before the action named uid.
>     
>         The function accept a QAction/QMenu or an iterable. The entries will
>         be added before the action whose name is uid.
>     
>         :Parameters:
>     
>         - `menu`: the menu or context menu being updated
>         - `entries`: QAction/Qmenu object or a list of such objects
>         - `uid`: indicates the insertion position for the new entries
>     
>         :return: None
>         """
>     
> >       if not isinstance(entries, collections.Iterable):
> E       AttributeError: module 'collections' has no attribute 'Iterable'
> 
> vitables/utils.py:152: AttributeError
> ____________________ ERROR at setup of TestVTGui.test_menus 
> ____________________
> 
>     @pytest.fixture(scope='module')
>     def launcher():
> >       return Launcher()
> 
> tests/conftest.py:33: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> tests/conftest.py:27: in __init__
>     self.vtapp_object = vitables.vtapp.VTApp(keep_splash=False)
> vitables/vtapp.py:139: in __init__
>     self.csv_importer = importcsv.ImportCSV()
> vitables/csv/import_csv.py:102: in __init__
>     self.addEntry()
> vitables/csv/import_csv.py:176: in addEntry
>     vitables.utils.insertInMenu(
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> 
> menu = <PyQt5.QtWidgets.QMenu object at 0x7fc2d8a13490>
> entries = <PyQt5.QtWidgets.QMenu object at 0x7fc2d89b49d0>, uid = 'fileClose'
> 
>     def insertInMenu(menu, entries, uid):
>         """Insert entries to the given menu before the action named uid.
>     
>         The function accept a QAction/QMenu or an iterable. The entries will
>         be added before the action whose name is uid.
>     
>         :Parameters:
>     
>         - `menu`: the menu or context menu being updated
>         - `entries`: QAction/Qmenu object or a list of such objects
>         - `uid`: indicates the insertion position for the new entries
>     
>         :return: None
>         """
>     
> >       if not isinstance(entries, collections.Iterable):
> E       AttributeError: module 'collections' has no attribute 'Iterable'
> 
> vitables/utils.py:152: AttributeError
> __________________ ERROR at setup of TestVTGui.test_fileMenu 
> ___________________
> 
>     @pytest.fixture(scope='module')
>     def launcher():
> >       return Launcher()
> 
> tests/conftest.py:33: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> tests/conftest.py:27: in __init__
>     self.vtapp_object = vitables.vtapp.VTApp(keep_splash=False)
> vitables/vtapp.py:139: in __init__
>     self.csv_importer = importcsv.ImportCSV()
> vitables/csv/import_csv.py:102: in __init__
>     self.addEntry()
> vitables/csv/import_csv.py:176: in addEntry
>     vitables.utils.insertInMenu(
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> 
> menu = <PyQt5.QtWidgets.QMenu object at 0x7fc2d8a13490>
> entries = <PyQt5.QtWidgets.QMenu object at 0x7fc2d89b49d0>, uid = 'fileClose'
> 
>     def insertInMenu(menu, entries, uid):
>         """Insert entries to the given menu before the action named uid.
>     
>         The function accept a QAction/QMenu or an iterable. The entries will
>         be added before the action whose name is uid.
>     
>         :Parameters:
>     
>         - `menu`: the menu or context menu being updated
>         - `entries`: QAction/Qmenu object or a list of such objects
>         - `uid`: indicates the insertion position for the new entries
>     
>         :return: None
>         """
>     
> >       if not isinstance(entries, collections.Iterable):
> E       AttributeError: module 'collections' has no attribute 'Iterable'
> 
> vitables/utils.py:152: AttributeError
> __________________ ERROR at setup of TestVTGui.test_nodeMenu 
> ___________________
> 
>     @pytest.fixture(scope='module')
>     def launcher():
> >       return Launcher()
> 
> tests/conftest.py:33: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> tests/conftest.py:27: in __init__
>     self.vtapp_object = vitables.vtapp.VTApp(keep_splash=False)
> vitables/vtapp.py:139: in __init__
>     self.csv_importer = importcsv.ImportCSV()
> vitables/csv/import_csv.py:102: in __init__
>     self.addEntry()
> vitables/csv/import_csv.py:176: in addEntry
>     vitables.utils.insertInMenu(
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> 
> menu = <PyQt5.QtWidgets.QMenu object at 0x7fc2d8a13490>
> entries = <PyQt5.QtWidgets.QMenu object at 0x7fc2d89b49d0>, uid = 'fileClose'
> 
>     def insertInMenu(menu, entries, uid):
>         """Insert entries to the given menu before the action named uid.
>     
>         The function accept a QAction/QMenu or an iterable. The entries will
>         be added before the action whose name is uid.
>     
>         :Parameters:
>     
>         - `menu`: the menu or context menu being updated
>         - `entries`: QAction/Qmenu object or a list of such objects
>         - `uid`: indicates the insertion position for the new entries
>     
>         :return: None
>         """
>     
> >       if not isinstance(entries, collections.Iterable):
> E       AttributeError: module 'collections' has no attribute 'Iterable'
> 
> vitables/utils.py:152: AttributeError
> _________________ ERROR at setup of TestVTGui.test_datasetMenu 
> _________________
> 
>     @pytest.fixture(scope='module')
>     def launcher():
> >       return Launcher()
> 
> tests/conftest.py:33: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> tests/conftest.py:27: in __init__
>     self.vtapp_object = vitables.vtapp.VTApp(keep_splash=False)
> vitables/vtapp.py:139: in __init__
>     self.csv_importer = importcsv.ImportCSV()
> vitables/csv/import_csv.py:102: in __init__
>     self.addEntry()
> vitables/csv/import_csv.py:176: in addEntry
>     vitables.utils.insertInMenu(
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> 
> menu = <PyQt5.QtWidgets.QMenu object at 0x7fc2d8a13490>
> entries = <PyQt5.QtWidgets.QMenu object at 0x7fc2d89b49d0>, uid = 'fileClose'
> 
>     def insertInMenu(menu, entries, uid):
>         """Insert entries to the given menu before the action named uid.
>     
>         The function accept a QAction/QMenu or an iterable. The entries will
>         be added before the action whose name is uid.
>     
>         :Parameters:
>     
>         - `menu`: the menu or context menu being updated
>         - `entries`: QAction/Qmenu object or a list of such objects
>         - `uid`: indicates the insertion position for the new entries
>     
>         :return: None
>         """
>     
> >       if not isinstance(entries, collections.Iterable):
> E       AttributeError: module 'collections' has no attribute 'Iterable'
> 
> vitables/utils.py:152: AttributeError
> ________________ ERROR at setup of TestVTGui.test_settingsMenu 
> _________________
> 
>     @pytest.fixture(scope='module')
>     def launcher():
> >       return Launcher()
> 
> tests/conftest.py:33: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> tests/conftest.py:27: in __init__
>     self.vtapp_object = vitables.vtapp.VTApp(keep_splash=False)
> vitables/vtapp.py:139: in __init__
>     self.csv_importer = importcsv.ImportCSV()
> vitables/csv/import_csv.py:102: in __init__
>     self.addEntry()
> vitables/csv/import_csv.py:176: in addEntry
>     vitables.utils.insertInMenu(
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> 
> menu = <PyQt5.QtWidgets.QMenu object at 0x7fc2d8a13490>
> entries = <PyQt5.QtWidgets.QMenu object at 0x7fc2d89b49d0>, uid = 'fileClose'
> 
>     def insertInMenu(menu, entries, uid):
>         """Insert entries to the given menu before the action named uid.
>     
>         The function accept a QAction/QMenu or an iterable. The entries will
>         be added before the action whose name is uid.
>     
>         :Parameters:
>     
>         - `menu`: the menu or context menu being updated
>         - `entries`: QAction/Qmenu object or a list of such objects
>         - `uid`: indicates the insertion position for the new entries
>     
>         :return: None
>         """
>     
> >       if not isinstance(entries, collections.Iterable):
> E       AttributeError: module 'collections' has no attribute 'Iterable'
> 
> vitables/utils.py:152: AttributeError
> _________________ ERROR at setup of TestVTGui.test_windowMenu 
> __________________
> 
>     @pytest.fixture(scope='module')
>     def launcher():
> >       return Launcher()
> 
> tests/conftest.py:33: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> tests/conftest.py:27: in __init__
>     self.vtapp_object = vitables.vtapp.VTApp(keep_splash=False)
> vitables/vtapp.py:139: in __init__
>     self.csv_importer = importcsv.ImportCSV()
> vitables/csv/import_csv.py:102: in __init__
>     self.addEntry()
> vitables/csv/import_csv.py:176: in addEntry
>     vitables.utils.insertInMenu(
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> 
> menu = <PyQt5.QtWidgets.QMenu object at 0x7fc2d8a13490>
> entries = <PyQt5.QtWidgets.QMenu object at 0x7fc2d89b49d0>, uid = 'fileClose'
> 
>     def insertInMenu(menu, entries, uid):
>         """Insert entries to the given menu before the action named uid.
>     
>         The function accept a QAction/QMenu or an iterable. The entries will
>         be added before the action whose name is uid.
>     
>         :Parameters:
>     
>         - `menu`: the menu or context menu being updated
>         - `entries`: QAction/Qmenu object or a list of such objects
>         - `uid`: indicates the insertion position for the new entries
>     
>         :return: None
>         """
>     
> >       if not isinstance(entries, collections.Iterable):
> E       AttributeError: module 'collections' has no attribute 'Iterable'
> 
> vitables/utils.py:152: AttributeError
> __________________ ERROR at setup of TestVTGui.test_helpMenu 
> ___________________
> 
>     @pytest.fixture(scope='module')
>     def launcher():
> >       return Launcher()
> 
> tests/conftest.py:33: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> tests/conftest.py:27: in __init__
>     self.vtapp_object = vitables.vtapp.VTApp(keep_splash=False)
> vitables/vtapp.py:139: in __init__
>     self.csv_importer = importcsv.ImportCSV()
> vitables/csv/import_csv.py:102: in __init__
>     self.addEntry()
> vitables/csv/import_csv.py:176: in addEntry
>     vitables.utils.insertInMenu(
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> 
> menu = <PyQt5.QtWidgets.QMenu object at 0x7fc2d8a13490>
> entries = <PyQt5.QtWidgets.QMenu object at 0x7fc2d89b49d0>, uid = 'fileClose'
> 
>     def insertInMenu(menu, entries, uid):
>         """Insert entries to the given menu before the action named uid.
>     
>         The function accept a QAction/QMenu or an iterable. The entries will
>         be added before the action whose name is uid.
>     
>         :Parameters:
>     
>         - `menu`: the menu or context menu being updated
>         - `entries`: QAction/Qmenu object or a list of such objects
>         - `uid`: indicates the insertion position for the new entries
>     
>         :return: None
>         """
>     
> >       if not isinstance(entries, collections.Iterable):
> E       AttributeError: module 'collections' has no attribute 'Iterable'
> 
> vitables/utils.py:152: AttributeError
> ___________________ ERROR at setup of TestVTGui.test_viewCM 
> ____________________
> 
>     @pytest.fixture(scope='module')
>     def launcher():
> >       return Launcher()
> 
> tests/conftest.py:33: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> tests/conftest.py:27: in __init__
>     self.vtapp_object = vitables.vtapp.VTApp(keep_splash=False)
> vitables/vtapp.py:139: in __init__
>     self.csv_importer = importcsv.ImportCSV()
> vitables/csv/import_csv.py:102: in __init__
>     self.addEntry()
> vitables/csv/import_csv.py:176: in addEntry
>     vitables.utils.insertInMenu(
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> 
> menu = <PyQt5.QtWidgets.QMenu object at 0x7fc2d8a13490>
> entries = <PyQt5.QtWidgets.QMenu object at 0x7fc2d89b49d0>, uid = 'fileClose'
> 
>     def insertInMenu(menu, entries, uid):
>         """Insert entries to the given menu before the action named uid.
>     
>         The function accept a QAction/QMenu or an iterable. The entries will
>         be added before the action whose name is uid.
>     
>         :Parameters:
>     
>         - `menu`: the menu or context menu being updated
>         - `entries`: QAction/Qmenu object or a list of such objects
>         - `uid`: indicates the insertion position for the new entries
>     
>         :return: None
>         """
>     
> >       if not isinstance(entries, collections.Iterable):
> E       AttributeError: module 'collections' has no attribute 'Iterable'
> 
> vitables/utils.py:152: AttributeError
> _________________ ERROR at setup of TestVTGui.test_rootNodeCM 
> __________________
> 
>     @pytest.fixture(scope='module')
>     def launcher():
> >       return Launcher()
> 
> tests/conftest.py:33: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> tests/conftest.py:27: in __init__
>     self.vtapp_object = vitables.vtapp.VTApp(keep_splash=False)
> vitables/vtapp.py:139: in __init__
>     self.csv_importer = importcsv.ImportCSV()
> vitables/csv/import_csv.py:102: in __init__
>     self.addEntry()
> vitables/csv/import_csv.py:176: in addEntry
>     vitables.utils.insertInMenu(
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> 
> menu = <PyQt5.QtWidgets.QMenu object at 0x7fc2d8a13490>
> entries = <PyQt5.QtWidgets.QMenu object at 0x7fc2d89b49d0>, uid = 'fileClose'
> 
>     def insertInMenu(menu, entries, uid):
>         """Insert entries to the given menu before the action named uid.
>     
>         The function accept a QAction/QMenu or an iterable. The entries will
>         be added before the action whose name is uid.
>     
>         :Parameters:
>     
>         - `menu`: the menu or context menu being updated
>         - `entries`: QAction/Qmenu object or a list of such objects
>         - `uid`: indicates the insertion position for the new entries
>     
>         :return: None
>         """
>     
> >       if not isinstance(entries, collections.Iterable):
> E       AttributeError: module 'collections' has no attribute 'Iterable'
> 
> vitables/utils.py:152: AttributeError
> _________________ ERROR at setup of TestVTGui.test_groupNodeCM 
> _________________
> 
>     @pytest.fixture(scope='module')
>     def launcher():
> >       return Launcher()
> 
> tests/conftest.py:33: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> tests/conftest.py:27: in __init__
>     self.vtapp_object = vitables.vtapp.VTApp(keep_splash=False)
> vitables/vtapp.py:139: in __init__
>     self.csv_importer = importcsv.ImportCSV()
> vitables/csv/import_csv.py:102: in __init__
>     self.addEntry()
> vitables/csv/import_csv.py:176: in addEntry
>     vitables.utils.insertInMenu(
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> 
> menu = <PyQt5.QtWidgets.QMenu object at 0x7fc2d8a13490>
> entries = <PyQt5.QtWidgets.QMenu object at 0x7fc2d89b49d0>, uid = 'fileClose'
> 
>     def insertInMenu(menu, entries, uid):
>         """Insert entries to the given menu before the action named uid.
>     
>         The function accept a QAction/QMenu or an iterable. The entries will
>         be added before the action whose name is uid.
>     
>         :Parameters:
>     
>         - `menu`: the menu or context menu being updated
>         - `entries`: QAction/Qmenu object or a list of such objects
>         - `uid`: indicates the insertion position for the new entries
>     
>         :return: None
>         """
>     
> >       if not isinstance(entries, collections.Iterable):
> E       AttributeError: module 'collections' has no attribute 'Iterable'
> 
> vitables/utils.py:152: AttributeError
> _________________ ERROR at setup of TestVTGui.test_leafNodeCM 
> __________________
> 
>     @pytest.fixture(scope='module')
>     def launcher():
> >       return Launcher()
> 
> tests/conftest.py:33: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> tests/conftest.py:27: in __init__
>     self.vtapp_object = vitables.vtapp.VTApp(keep_splash=False)
> vitables/vtapp.py:139: in __init__
>     self.csv_importer = importcsv.ImportCSV()
> vitables/csv/import_csv.py:102: in __init__
>     self.addEntry()
> vitables/csv/import_csv.py:176: in addEntry
>     vitables.utils.insertInMenu(
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> 
> menu = <PyQt5.QtWidgets.QMenu object at 0x7fc2d8a13490>
> entries = <PyQt5.QtWidgets.QMenu object at 0x7fc2d89b49d0>, uid = 'fileClose'
> 
>     def insertInMenu(menu, entries, uid):
>         """Insert entries to the given menu before the action named uid.
>     
>         The function accept a QAction/QMenu or an iterable. The entries will
>         be added before the action whose name is uid.
>     
>         :Parameters:
>     
>         - `menu`: the menu or context menu being updated
>         - `entries`: QAction/Qmenu object or a list of such objects
>         - `uid`: indicates the insertion position for the new entries
>     
>         :return: None
>         """
>     
> >       if not isinstance(entries, collections.Iterable):
> E       AttributeError: module 'collections' has no attribute 'Iterable'
> 
> vitables/utils.py:152: AttributeError
> ____________________ ERROR at setup of TestVTGui.test_mdiCM 
> ____________________
> 
>     @pytest.fixture(scope='module')
>     def launcher():
> >       return Launcher()
> 
> tests/conftest.py:33: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> tests/conftest.py:27: in __init__
>     self.vtapp_object = vitables.vtapp.VTApp(keep_splash=False)
> vitables/vtapp.py:139: in __init__
>     self.csv_importer = importcsv.ImportCSV()
> vitables/csv/import_csv.py:102: in __init__
>     self.addEntry()
> vitables/csv/import_csv.py:176: in addEntry
>     vitables.utils.insertInMenu(
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> 
> menu = <PyQt5.QtWidgets.QMenu object at 0x7fc2d8a13490>
> entries = <PyQt5.QtWidgets.QMenu object at 0x7fc2d89b49d0>, uid = 'fileClose'
> 
>     def insertInMenu(menu, entries, uid):
>         """Insert entries to the given menu before the action named uid.
>     
>         The function accept a QAction/QMenu or an iterable. The entries will
>         be added before the action whose name is uid.
>     
>         :Parameters:
>     
>         - `menu`: the menu or context menu being updated
>         - `entries`: QAction/Qmenu object or a list of such objects
>         - `uid`: indicates the insertion position for the new entries
>     
>         :return: None
>         """
>     
> >       if not isinstance(entries, collections.Iterable):
> E       AttributeError: module 'collections' has no attribute 'Iterable'
> 
> vitables/utils.py:152: AttributeError
> =============================== warnings summary 
> ===============================
> vitables/vtapp.py:492
>   /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10/build/vitables/vtapp.py:492: 
> DeprecationWarning: invalid escape sequence '\.'
>     "(^{0}$)|[a-zA-Z_]+[0-9a-zA-Z_]*(?:\.[0-9a-zA-Z_]+)?$"
> 
> vitables/vtapp.py:501
>   /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10/build/vitables/vtapp.py:501: 
> DeprecationWarning: invalid escape sequence '\.'
>     "(^{0}$)|[a-zA-Z_]+[0-9a-zA-Z_]*(?:\.[0-9a-zA-Z_]+)?$"
> 
> vitables/vtapp.py:509
>   /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10/build/vitables/vtapp.py:509: 
> DeprecationWarning: invalid escape sequence '\.'
>     pattern = "[a-zA-Z_]+[0-9a-zA-Z_]*(?:\.[0-9a-zA-Z_]+)?$"
> 
> vitables/utils.py:334
>   /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10/build/vitables/utils.py:334: 
> DeprecationWarning: invalid escape sequence '\.'
>     if not re.search('\.(.+)$', os.path.basename(filepath)):
> 
> vitables/preferences/vtconfig.py:127
>   
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10/build/vitables/preferences/vtconfig.py:127:
>  DeprecationWarning: invalid escape sequence '\S'
>     """
> 
> vitables/docbrowser/browsergui.py:319
>   
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10/build/vitables/docbrowser/browsergui.py:319:
>  DeprecationWarning: invalid escape sequence '\s'
>     if re.search("^(\s?\d)", action.text()):
> 
> -- Docs: https://docs.pytest.org/en/stable/warnings.html
> =========================== short test summary info 
> ============================
> ERROR tests/test_filenode.py::TestFilenode::test_isFilenode - 
> AttributeError:...
> ERROR tests/test_filenode.py::TestFilenode::test_filenodeToFile - 
> AttributeEr...
> ERROR tests/test_filenode.py::TestFilenode::test_filenodeTotalRows - 
> Attribut...
> ERROR tests/test_filenode.py::TestFilenode::test_fnbTotalNRows - 
> AttributeErr...
> ERROR tests/test_filenode.py::TestFilenode::test_fnbReadBuffer - 
> AttributeErr...
> ERROR tests/test_filenode.py::TestFilenode::test_fnbGetCell - 
> AttributeError:...
> ERROR tests/test_logger.py::TestLogger::test_write - AttributeError: module 
> '...
> ERROR tests/test_logger.py::TestLogger::test_setupContextMenu - 
> AttributeErro...
> ERROR tests/test_logger.py::TestLogger::test_updateContextMenu - 
> AttributeErr...
> ERROR tests/test_logger.py::TestLogger::test_focusInEvent - AttributeError: 
> m...
> ERROR tests/test_logger.py::TestLogger::test_focusOutEvent - AttributeError: 
> ...
> ERROR tests/test_utils.py::TestUtils::test_getVTApp - AttributeError: module 
> ...
> ERROR tests/test_utils.py::TestUtils::test_getGui - AttributeError: module 
> 'c...
> ERROR tests/test_utils.py::TestUtils::test_getModel - AttributeError: module 
> ...
> ERROR tests/test_utils.py::TestUtils::test_getView - AttributeError: module 
> '...
> ERROR tests/test_utils.py::TestUtils::test_getSelectedIndexes - 
> AttributeErro...
> ERROR tests/test_utils.py::TestUtils::test_getSelectedNodes - 
> AttributeError:...
> ERROR tests/test_utils.py::TestUtils::test_insertInMenu - AttributeError: 
> mod...
> ERROR tests/test_utils.py::TestUtils::test_addToMenu - AttributeError: 
> module...
> ERROR tests/test_utils.py::TestUtils::test_addActions - AttributeError: 
> modul...
> ERROR tests/test_utils.py::TestUtils::test_checkFileExtension - 
> AttributeErro...
> ERROR tests/test_utils.py::TestUtils::test_createIcons - AttributeError: 
> modu...
> ERROR tests/test_utils.py::TestUtils::test_forwardPath - AttributeError: 
> modu...
> ERROR tests/test_vtconfig.py::TestLogger::test_credentials - AttributeError: 
> ...
> ERROR tests/test_vtconfig.py::TestLogger::test_logger - AttributeError: 
> modul...
> ERROR tests/test_vtconfig.py::TestLogger::test_workspace - AttributeError: 
> mo...
> ERROR tests/test_vtconfig.py::TestLogger::test_appStyle - AttributeError: 
> mod...
> ERROR tests/test_vtconfig.py::TestLogger::test_windowGeometry - 
> AttributeErro...
> ERROR tests/test_vtconfig.py::TestLogger::test_dockwidgetState - 
> AttributeErr...
> ERROR tests/test_vtconfig.py::TestLogger::test_toolbarsState - 
> AttributeError...
> ERROR tests/test_vtconfig.py::TestLogger::test_hsplitterState - 
> AttributeErro...
> ERROR tests/test_vtconfig.py::TestLogger::test_restoreLastSession - 
> Attribute...
> ERROR tests/test_vtconfig.py::TestLogger::test_startupWorkingDir - 
> AttributeE...
> ERROR tests/test_vtconfig.py::TestLogger::test_lastWorkingDir - 
> AttributeErro...
> ERROR tests/test_vtgui.py::TestVTGui::test_dockWidget - AttributeError: 
> modul...
> ERROR tests/test_vtgui.py::TestVTGui::test_hsplitter - AttributeError: 
> module...
> ERROR tests/test_vtgui.py::TestVTGui::test_actions - AttributeError: module 
> '...
> ERROR tests/test_vtgui.py::TestVTGui::test_fileToolBar - AttributeError: 
> modu...
> ERROR tests/test_vtgui.py::TestVTGui::test_nodeToolBar - AttributeError: 
> modu...
> ERROR tests/test_vtgui.py::TestVTGui::test_queryToolBar - AttributeError: 
> mod...
> ERROR tests/test_vtgui.py::TestVTGui::test_helpToolBar - AttributeError: 
> modu...
> ERROR tests/test_vtgui.py::TestVTGui::test_statusBarWidget - AttributeError: 
> ...
> ERROR tests/test_vtgui.py::TestVTGui::test_menus - AttributeError: module 
> 'co...
> ERROR tests/test_vtgui.py::TestVTGui::test_fileMenu - AttributeError: module 
> ...
> ERROR tests/test_vtgui.py::TestVTGui::test_nodeMenu - AttributeError: module 
> ...
> ERROR tests/test_vtgui.py::TestVTGui::test_datasetMenu - AttributeError: 
> modu...
> ERROR tests/test_vtgui.py::TestVTGui::test_settingsMenu - AttributeError: 
> mod...
> ERROR tests/test_vtgui.py::TestVTGui::test_windowMenu - AttributeError: 
> modul...
> ERROR tests/test_vtgui.py::TestVTGui::test_helpMenu - AttributeError: module 
> ...
> ERROR tests/test_vtgui.py::TestVTGui::test_viewCM - AttributeError: module 
> 'c...
> ERROR tests/test_vtgui.py::TestVTGui::test_rootNodeCM - AttributeError: 
> modul...
> ERROR tests/test_vtgui.py::TestVTGui::test_groupNodeCM - AttributeError: 
> modu...
> ERROR tests/test_vtgui.py::TestVTGui::test_leafNodeCM - AttributeError: 
> modul...
> ERROR tests/test_vtgui.py::TestVTGui::test_mdiCM - AttributeError: module 
> 'co...
> ======================== 6 warnings, 54 errors in 8.44s 
> ========================
> Fatal Python error: Segmentation fault
> 
> Current thread 0x00007fc2e53da740 (most recent call first):
>   <no Python frame>
> 
> Extension modules: numpy.core._multiarray_umath, 
> numpy.core._multiarray_tests, numpy.linalg.lapack_lite, 
> numpy.linalg._umath_linalg, numpy.fft._pocketfft_internal, 
> numpy.random._common, numpy.random.bit_generator, 
> numpy.random._bounded_integers, numpy.random._mt19937, numpy.random.mtrand, 
> numpy.random._philox, numpy.random._pcg64, numpy.random._sfc64, 
> numpy.random._generator, tables._comp_lzo, tables._comp_bzip2, 
> tables.utilsextension, numexpr.interpreter, tables.hdf5extension, 
> tables.linkextension, tables.lrucacheextension, tables.tableextension, 
> tables.indexesextension, PyQt5.QtCore, PyQt5.QtGui, PyQt5.QtWidgets (total: 
> 26)
> Segmentation fault
> E: pybuild pybuild:369: test: plugin distutils failed with: exit code=139: cd 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10/build; python3.10 -m pytest tests
> dh_auto_test: error: pybuild --test --test-pytest -i python{version} -p 3.10 
> returned exit code 13


The full build log is available from:
http://qa-logs.debian.net/2022/04/12/vitables_3.0.2-2_unstable.log

All bugs filed during this archive rebuild are listed at:
https://bugs.debian.org/cgi-bin/pkgreport.cgi?tag=ftbfs-20220412;users=lu...@debian.org
or:
https://udd.debian.org/bugs/?release=na&merged=ign&fnewerval=7&flastmodval=7&fusertag=only&fusertagtag=ftbfs-20220412&fusertaguser=lu...@debian.org&allbugs=1&cseverity=1&ctags=1&caffected=1#results

A list of current common problems and possible solutions is available at
http://wiki.debian.org/qa.debian.org/FTBFS . You're welcome to contribute!

If you reassign this bug to another package, please marking it as 'affects'-ing
this package. See https://www.debian.org/Bugs/server-control#affects

If you fail to reproduce this, please provide a build log and diff it with mine
so that we can identify if something relevant changed in the meantime.

--- End Message ---
--- Begin Message ---
Source: vitables
Source-Version: 3.0.2-3
Done: Benda Xu <o...@debian.org>

We believe that the bug you reported is fixed in the latest version of
vitables, which is due to be installed in the Debian FTP archive.

A summary of the changes between this version and the previous one is
attached.

Thank you for reporting the bug, which will now be closed.  If you
have further comments please address them to 1009...@bugs.debian.org,
and the maintainer will reopen the bug report if appropriate.

Debian distribution maintenance software
pp.
Benda Xu <o...@debian.org> (supplier of updated vitables package)

(This message was generated automatically at their request; if you
believe that there is a problem with it please contact the archive
administrators by mailing ftpmas...@ftp-master.debian.org)


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512

Format: 1.8
Date: Mon, 04 Jul 2022 15:13:00 +0800
Source: vitables
Architecture: source
Version: 3.0.2-3
Distribution: unstable
Urgency: medium
Maintainer: Debian Science Maintainers 
<debian-science-maintain...@lists.alioth.debian.org>
Changed-By: Benda Xu <o...@debian.org>
Closes: 1009458
Changes:
 vitables (3.0.2-3) unstable; urgency=medium
 .
   * Backport upstream fixes for Python 3.10 (Closes: #1009458).
   * Bump standard to 4.6.1.
   * Use GitHub tags for uscan.
Checksums-Sha1:
 bd3cb74484dcce6956b72e16e1b2e7f35c28ef9d 2202 vitables_3.0.2-3.dsc
 e8e01a8baf04eac8d845d93fcfa9de0ad6d95d29 5620 vitables_3.0.2-3.debian.tar.xz
 e74269f8bb56680efa1c0e6306aee8b122f023fd 14635 
vitables_3.0.2-3_source.buildinfo
Checksums-Sha256:
 467cc980cd4e535609de1913d3724f06486ebaba9ccf462035f5f28f632b54f5 2202 
vitables_3.0.2-3.dsc
 09ba560c3b333a753f726950020a6c31327bfaedb7edb0f6cfa4b4cf2327a48a 5620 
vitables_3.0.2-3.debian.tar.xz
 a6bd97b07dfbbd8c8aab007dc792895fde0480db6233229727b4d8daa2d2f81d 14635 
vitables_3.0.2-3_source.buildinfo
Files:
 10615bf526d700c9da19803c580e9dfd 2202 science optional vitables_3.0.2-3.dsc
 2219e6027e065d5faccc779c78a821c9 5620 science optional 
vitables_3.0.2-3.debian.tar.xz
 c714be36c47b5bd0d6133afcf83c3b66 14635 science optional 
vitables_3.0.2-3_source.buildinfo

-----BEGIN PGP SIGNATURE-----

iQJDBAEBCgAtFiEENTS8ZhMowhj4Iw2H33YQtSHxcSIFAmLClVMPHG9ydkBkZWJp
YW4ub3JnAAoJEN92ELUh8XEirioP/iNlmryI7lQV5v+XErGq2hzNYnsS2b5ucqUc
Am1rHTC+hksfHf5QrOuIP2HuPfkrfpS2z681rtzcqieXqOTFcwNdok24lHhl+Si6
5tDNrBQmlvCXI/6GVEYUT5TzmAPq0/H4hMLqtdTCc71b/ZoosMO63QxMkP97tIl3
lSkEtASiSlvTCBM2kCULe6MrOKYIlwWh0NEHEIFNfXG9cRCN0axqJmGnfKf+3Z3G
D+HaRSFm/mjFvkYws7UMDT5HpuYQxGB52cQKQ2+yu0h0+6j2XF6Mk4g6Ng1KCEwY
39Oedr7v5ERpc4U6gog/4oDcrFmwA2kDY/xr8DZQcKyiK92myMNPNf170eoFHJ2p
AxvVX7alSRNXQ36QNJL6eodvNQpdXIwKdZi132KPWtbnHAQ0eAS45lnQAimWB6Sb
daRmD3fYAMmi3asCeo28lsVLz/L3D9EsXlnCCAe6ez5V3hhQiJzt5Q9W3r97heoz
9uz/iBqle/HXhih+gCLJHO5nFuBOfDDTPtf/GJdES5yk03ImGtmS55i0/DX0AC7x
JfqbjPJZHAuD9geR+Oj3e87jAyB2pnUiy6qkokXkiOPbHvYz8pICQkCWtf0o5eoy
5KHtmPi2ejWaDdeaqmfsJjll14f5/R2yzgt3TZYG9BTFb+2CmrdR+WUH72Didgi9
4n2Z6Nyt
=tvGJ
-----END PGP SIGNATURE-----

--- End Message ---

Reply via email to