HenryJFlynn / mouse2afc

The Mouse2AFC experimental neuroscience protocol.
GNU General Public License v3.0
0 stars 0 forks source link

Enable use of PyBpod on windows OS #43

Closed HenryJFlynn closed 1 year ago

HenryJFlynn commented 1 year ago

The reason for this issue is that the main Bpod setups used by experimenters in this lab run on Windows. In order for me to test what I have so far and more importantly for the experimenters to ever use Pybpod, it must work on Windows, specifically, windows 11

TODO:

HenryJFlynn commented 1 year ago

Step 1: Installing the environment. with conda env create -f utils/environment-windows-10.yml

This failed. Got conflicts with tens of packages which all looked something like this

Package numpy conflicts for:
scipy==1.0.0=py36h1260518_0 -> numpy[version='>=1.11.3,<2.0a0']
matplotlib=2.0.2 -> numpy
opencv==3.4.1=py36_200 -> numpy[version='>=1.11']
numpy==1.13.3=py36hb69e940_3
pandas==0.23.4=py36h830ac7b_0 -> numpy[version='>=1.11.3,<2.0a0']
HenryJFlynn commented 1 year ago

Anaconda was acting weird. Gonna uninstall and start from scratch

HenryJFlynn commented 1 year ago

installing mini conda https://conda.io/projects/conda/en/stable/user-guide/install/windows.html

HenryJFlynn commented 1 year ago

Creating the environment takes forever (20+ minutes) and then fails.

HenryJFlynn commented 1 year ago

I believe the issue is i installed 64 bit miniconda which is incompatible with pybpod. I need to install 32 bit. see https://stackoverflow.com/questions/55554431/conda-fails-to-create-environment-from-yml?noredirect=1&lq=1

HenryJFlynn commented 1 year ago

Uninstalling miniconda through windows does not work. Have to manual search and delete files which laborious

HenryJFlynn commented 1 year ago

with 32 bit miniconda, after about a minute i got this

(base) C:\Users\hflyn>conda env create -f Downloads/environment-windows-10.yml
Collecting package metadata (repodata.json): done
Solving environment: failed

ResolvePackageNotFound:
  - hdf5==1.10.1=vc14hb361328_0
  - pyqt==5.6.0=py36ha878b3d_6
  - cycler==0.10.0=py36h009560c_0
  - mkl==2018.0.0=h36b65af_4
  - qscintilla2==2.9.3=py36h91d67ea_1003
  - wincertstore==0.2=py36h7fe50ca_0
  - intel-openmp==2018.0.0=hcd89f80_7
  - scipy==1.0.0=py36h1260518_0
  - git==2.15.0=heaa8ca2_0
HenryJFlynn commented 1 year ago

^^^ I have removed the second equals requirement for hdf5 =vc14hb361328_0 and now I am back to getting errors

edit: I believe they are called the build info

HenryJFlynn commented 1 year ago

I have removed all version requirements except python=3.6.6 and I could successfully create the environment.

Git this warning

(base) C:\Users\hflyn>conda env create -f Downloads/environment-windows-10.yml
Collecting package metadata (repodata.json): done
Solving environment: \
Warning: 2 possible package resolutions (only showing differing packages):
  - conda-forge/win-32::libwebp-0.5.2-7
  - conda-forge/win-32::libwebp-0.5.2-vc14done

here are the versions it installed image

HenryJFlynn commented 1 year ago

possible changes to guide: Installaton Step 1:

HenryJFlynn commented 1 year ago

Downloading the repo:

I got several errors like this which all reference versions of pywinpty

Collecting pywinpty>=1.1.0
  Using cached pywinpty-2.0.3.tar.gz (23 kB)
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Preparing metadata (pyproject.toml) ... error
  ERROR: Command errored out with exit status 1:
   command: 'C:\Users\hflyn\miniconda3\envs\pybpod-environment\python.exe' 'C:\Users\hflyn\miniconda3\envs\pybpod-environment\lib\site-packages\pip\_vendor\pep517\in_process\_in_process.py' prepare_metadata_for_build_wheel 'C:\Users\hflyn\AppData\Local\Temp\tmp5i4ch9s0'
       cwd: C:\Users\hflyn\AppData\Local\Temp\pip-install-ooq1ly2r\pywinpty_a088de413ecb4a64baeafb84876d477d
  Complete output (6 lines):

  Cargo, the Rust package manager, is not installed or is not on PATH.
  This package requires Rust and Cargo to compile extensions. Install it through
  the system's package manager or via https://rustup.rs/

  Checking for Rust toolchain....
  ----------------------------------------
WARNING: Discarding https://files.pythonhosted.org/packages/c3/61/bda90dba80bc6cb905acebd0bf0710777ab04feb29d0f438202da0e82d72/pywinpty-2.0.3.tar.gz#sha256=6b29a826e896105370c38d53904c3aaac6c36146a50448fc0ed5082cf9d092bc (from https://pypi.org/simple/pywinpty/) (requires-python:>=3.6). Command errored out with exit status 1: 'C:\Users\hflyn\miniconda3\envs\pybpod-environment\python.exe' 'C:\Users\hflyn\miniconda3\envs\pybpod-environment\lib\site-packages\pip\_vendor\pep517\in_process\_in_process.py' prepare_metadata_for_build_wheel 'C:\Users\hflyn\AppData\Local\Temp\tmp5i4ch9s0' Check the logs for full command output.

and this. There were at least 2 full screen scrolls were of the copying ... lines

Building wheels for collected packages: pyarrow, immutables
  Building wheel for pyarrow (pyproject.toml) ... error
  ERROR: Command errored out with exit status 1:
   command: 'C:\Users\hflyn\miniconda3\envs\pybpod-environment\python.exe' 'C:\Users\hflyn\miniconda3\envs\pybpod-environment\lib\site-packages\pip\_vendor\pep517\in_process\_in_process.py' build_wheel 'C:\Users\hflyn\AppData\Local\Temp\tmpgxdl5mec'
       cwd: C:\Users\hflyn\AppData\Local\Temp\pip-install-ooq1ly2r\pyarrow_ec5fd8fcb632469abc4c3efd4a7b19fa
  Complete output (231 lines):
  running bdist_wheel
  running build
  running build_py
  creating build
  creating build\lib.win32-3.6
  creating build\lib.win32-3.6\pyarrow
  copying pyarrow\benchmark.py -> build\lib.win32-3.6\pyarrow
  copying pyarrow\cffi.py -> build\lib.win32-3.6\pyarrow
  copying pyarrow\compat.py -> build\lib.win32-3.6\pyarrow

ended with this:

  copying pyarrow\tests\parquet\test_parquet_writer.py -> build\lib.win32-3.6\pyarrow\tests\parquet
  running build_ext
  creating C:\Users\hflyn\AppData\Local\Temp\pip-install-ooq1ly2r\pyarrow_ec5fd8fcb632469abc4c3efd4a7b19fa\build\temp.win32-3.6
  Traceback (most recent call last):
    File "C:\Users\hflyn\miniconda3\envs\pybpod-environment\lib\site-packages\pip\_vendor\pep517\in_process\_in_process.py", line 363, in <module>
      main()
    File "C:\Users\hflyn\miniconda3\envs\pybpod-environment\lib\site-packages\pip\_vendor\pep517\in_process\_in_process.py", line 345, in main
      json_out['return_val'] = hook(**hook_input['kwargs'])
    File "C:\Users\hflyn\miniconda3\envs\pybpod-environment\lib\site-packages\pip\_vendor\pep517\in_process\_in_process.py", line 262, in build_wheel
      metadata_directory)
    File "C:\Users\hflyn\AppData\Local\Temp\pip-build-env-qip5tyog\overlay\Lib\site-packages\setuptools\build_meta.py", line 222, in build_wheel
      wheel_directory, config_settings)
    File "C:\Users\hflyn\AppData\Local\Temp\pip-build-env-qip5tyog\overlay\Lib\site-packages\setuptools\build_meta.py", line 207, in _build_with_temp_dir
      self.run_setup()
    File "C:\Users\hflyn\AppData\Local\Temp\pip-build-env-qip5tyog\overlay\Lib\site-packages\setuptools\build_meta.py", line 259, in run_setup
      self).run_setup(setup_script=setup_script)
    File "C:\Users\hflyn\AppData\Local\Temp\pip-build-env-qip5tyog\overlay\Lib\site-packages\setuptools\build_meta.py", line 150, in run_setup
      exec(compile(code, __file__, 'exec'), locals())
    File "setup.py", line 632, in <module>
      url='https://arrow.apache.org/'
    File "C:\Users\hflyn\AppData\Local\Temp\pip-build-env-qip5tyog\overlay\Lib\site-packages\setuptools\__init__.py", line 159, in setup
      return distutils.core.setup(**attrs)
    File "C:\Users\hflyn\miniconda3\envs\pybpod-environment\lib\distutils\core.py", line 148, in setup
      dist.run_commands()
    File "C:\Users\hflyn\miniconda3\envs\pybpod-environment\lib\distutils\dist.py", line 955, in run_commands
      self.run_command(cmd)
    File "C:\Users\hflyn\miniconda3\envs\pybpod-environment\lib\distutils\dist.py", line 974, in run_command
      cmd_obj.run()
    File "C:\Users\hflyn\AppData\Local\Temp\pip-build-env-qip5tyog\overlay\Lib\site-packages\wheel\bdist_wheel.py", line 299, in run
      self.run_command('build')
    File "C:\Users\hflyn\miniconda3\envs\pybpod-environment\lib\distutils\cmd.py", line 313, in run_command
      self.distribution.run_command(command)
    File "C:\Users\hflyn\miniconda3\envs\pybpod-environment\lib\distutils\dist.py", line 974, in run_command
      cmd_obj.run()
    File "C:\Users\hflyn\miniconda3\envs\pybpod-environment\lib\distutils\command\build.py", line 135, in run
      self.run_command(cmd_name)
    File "C:\Users\hflyn\miniconda3\envs\pybpod-environment\lib\distutils\cmd.py", line 313, in run_command
      self.distribution.run_command(command)
    File "C:\Users\hflyn\miniconda3\envs\pybpod-environment\lib\distutils\dist.py", line 974, in run_command
      cmd_obj.run()
    File "setup.py", line 96, in run
      self._run_cmake()
    File "setup.py", line 288, in _run_cmake
      raise RuntimeError('Not supported on 32-bit Windows')
  RuntimeError: Not supported on 32-bit Windows
  ----------------------------------------
  ERROR: Failed building wheel for pyarrow
  Building wheel for immutables (pyproject.toml) ... error
  ERROR: Command errored out with exit status 1:
   command: 'C:\Users\hflyn\miniconda3\envs\pybpod-environment\python.exe' 'C:\Users\hflyn\miniconda3\envs\pybpod-environment\lib\site-packages\pip\_vendor\pep517\in_process\_in_process.py' build_wheel 'C:\Users\hflyn\AppData\Local\Temp\tmp14x4lsno'
       cwd: C:\Users\hflyn\AppData\Local\Temp\pip-install-ooq1ly2r\immutables_8a0c375810ca43c1a1b2e8a3623d0219
  Complete output (30 lines):
  running bdist_wheel
  running build
  running build_py
  creating build
  creating build\lib.win32-3.6
  creating build\lib.win32-3.6\immutables
  copying immutables\map.py -> build\lib.win32-3.6\immutables
  copying immutables\_protocols.py -> build\lib.win32-3.6\immutables
  copying immutables\_testutils.py -> build\lib.win32-3.6\immutables
  copying immutables\_version.py -> build\lib.win32-3.6\immutables
  copying immutables\__init__.py -> build\lib.win32-3.6\immutables
  running egg_info
  writing immutables.egg-info\PKG-INFO
  writing dependency_links to immutables.egg-info\dependency_links.txt
  writing requirements to immutables.egg-info\requires.txt
  writing top-level names to immutables.egg-info\top_level.txt
  reading manifest file 'immutables.egg-info\SOURCES.txt'
  reading manifest template 'MANIFEST.in'
  adding license file 'LICENSE'
  adding license file 'LICENSE-APACHE'
  adding license file 'NOTICE'
  writing manifest file 'immutables.egg-info\SOURCES.txt'
  copying immutables\_map.c -> build\lib.win32-3.6\immutables
  copying immutables\_map.h -> build\lib.win32-3.6\immutables
  copying immutables\_map.pyi -> build\lib.win32-3.6\immutables
  copying immutables\py.typed -> build\lib.win32-3.6\immutables
  copying immutables\pythoncapi_compat.h -> build\lib.win32-3.6\immutables
  running build_ext
  building 'immutables._map' extension
  error: Microsoft Visual C++ 14.0 or greater is required. Get it with "Microsoft C++ Build Tools": https://visualstudio.microsoft.com/visual-cpp-build-tools/
  ----------------------------------------
  ERROR: Failed building wheel for immutables
Failed to build pyarrow immutables
ERROR: Could not build wheels for pyarrow, immutables, which is required to install pyproject.toml-based projects

edit: found this thread which says that the issue is that python or windows is 32bit tho neither is the case. Verified this by looking in system info and python in terminal, both say 64 bit.

HenryJFlynn commented 1 year ago

Gonna try a different method for installing the environment.

I believe the issue is i installed 64 bit miniconda which is incompatible with pybpod. I need to install 32 bit. see https://stackoverflow.com/questions/55554431/conda-fails-to-create-environment-from-yml?noredirect=1&lq=1

Reading more in this thread. My best option may be to create a new environment file without the build info

HenryJFlynn commented 1 year ago

32 bit minconda may have been a mistake

HenryJFlynn commented 1 year ago

add conda-forge/label/broken for channels (see) in the envirnment file:

ResolvePackageNotFound:
  - qscintilla2==2.9.3=py36h91d67ea_1003
  - cycler==0.10.0=py36h009560c_0
  - mkl==2018.0.0=h36b65af_4
  - scipy==1.0.0=py36h1260518_0
  - jpeg==9b=vc14_2
  - matplotlib==2.0.2=np113py36_0
  - pyqt==5.6.0=py36ha878b3d_6
  - hdf5==1.10.1=vc14hb361328_0
  - wincertstore==0.2=py36h7fe50ca_0
  - tk==8.5.18=vc14_0
  - git==2.15.0=heaa8ca2_0
  - intel-openmp==2018.0.0=hcd89f80_7
  - qt==5.6.2=vc14_1
HenryJFlynn commented 1 year ago

Got rid of the build info for those ^^^ packages and retried:

ResolvePackageNotFound:
  - tk=8.5.18
HenryJFlynn commented 1 year ago

Deleted version for tk and I got package conflicts again

HenryJFlynn commented 1 year ago

This person is having the same issue https://stackoverflow.com/questions/76317034/python-dependency-conflicts

Here is the beginning part of mine

(base) C:\Users\hflyn>conda env create -f Downloads/environment-windows-10.yml
Collecting package metadata (repodata.json): done
Solving environment: /
Found conflicts! Looking for incompatible packages.
This can take several minutes.  Press CTRL-C to abort.
Examining @/win-32::__cuda==12.0=0:  35%|████████████████████████████████▎                                                            | 16/46 [00:00<00:01, 19.12it/s]\Examining hdf5=1.10.1:  48%|██████████████████████████████████████████████████▋                                                       | 22/46 [00:00<00:01, 19.12it/s]|Examining python==3.6.6=hea74fb7_0:  70%|████████████████████████████████████████████████████████████████▋                            | 32/46 [00:01<00:00, 24.19it/s]\Examining jpeg=9b:  87%|███████████████████████████████████████████████████████████████████████████████████████████████▋              | 40/46 [00:02<00:00,  9.86it/s]\Examining conflict for pandas matplotlib pytz:  15%|████████████▋                                                                      | 7/46 [00:04<00:26,  1.48it/s]|Examining conflict for cycler backports.functools_lru_cache wincertstore:  24%|█████████████▏                                         | 11/46 [00:05<00:18,  1.87it/s]/Examining conflict for matplotlib sip qscintilla2 pyqt:  50%|████████████████████████████████████▌                                    | 23/46 [00:09<00:07,  3.01it/s]|Examining conflict for qt libpng qscintilla2 opencv pyqt libopencv matplotlib:  54%|███████████████████████████▏                      | 25/46 [00:10<00:07,  2.78it/s]|failed
Solving environment: \
Found conflicts! Looking for incompatible packages.
This can take several minutes.  Press CTRL-C to abort.
Examining sqlite==3.19.3=vc14_1:  24%|██████████████████████▉                                                                         | 11/46 [00:00<00:00, 43.75it/s]|Examining @/win-32::__cuda==12.0=0:  35%|████████████████████████████████▎                                                            | 16/46 [00:00<00:01, 18.53it/s]/Examining jpeg=9b:  87%|███████████████████████████████████████████████████████████████████████████████████████████████▋              | 40/46 [00:02<00:00,  8.96it/s]-Examining conflict for mkl scipy intel-openmp blas numpy:   2%|█▌                                                                      | 1/46 [00:00<00:38,  1.18it/s]|Examining conflict for pyparsing matplotlib:   7%|█████▌                                                                               | 3/46 [00:00<00:12,  3.42it/s]/Examining conflict for libtiff qt jpeg qscintilla2 opencv pyqt libopencv:  50%|███████████████████████████▌                           | 23/46 [00:10<00:07,  2.91it/s]/Examining conflict for matplotlib sip qscintilla2 pyqt:  50%|████████████████████████████████████▌                                    | 23/46 [00:10<00:07,  2.91it/s]-failed

UnsatisfiableError: The following specifications were found to be incompatible with each other:

Output in format: Requested package -> Available versions

Package vc conflicts for:
tornado==5.1.1=py36hfa6e2cd_0 -> python[version='>=3.6,<3.7.0a0'] -> vc[version='>=14.1,<15.0a0']
sqlite==3.19.3=vc14_1 -> vc==14
numpy==1.13.3=py36hb69e940_3 -> python[version='>=3.6,<3.7.0a0'] -> vc[version='>=14.1,<15.0a0']
matplotlib=2.0.2 -> vc[version='14.*|9.*']
HenryJFlynn commented 1 year ago

May have found the issue. The environment is for windows 10 and my computer is windows 11

HenryJFlynn commented 1 year ago

These issues seems to related to windows which means likely means I can not solve them. It seems I must give up trying to make windows work therefore we can only use ubuntu. We must switch all Bpod setups to ubuntu or I leave this problem for someone else to fix.

HenryJFlynn commented 1 year ago

Anaconda 64 bit, install env, package not found, remove build info, try again, package not found with tk, remove tk version, try again, package conflicts, remove all build info, same package conflicts, add conda-forge/label/broken, retry, same package conflicts, removing all versions, it worked after an hour? I wait for about 30min because going to lunch, when I came back it had worked. It did pop a warning,

(base) C:\Users\hflyn>conda env create -f Downloads/environment-windows-10.yml
Collecting package metadata (repodata.json): / WARNING conda.models.version:get_matcher(548): Using .* with relational operator is superfluous and deprecated and will be removed in a future version of conda. Your spec was 1.*, but conda is ignoring the .* and treating it as 1
done

next pyhton utils/install.py got one error,

INFO: pip is looking at multiple versions of pyforms-gui to determine which version is compatible with other requirements. This could take a while.
ERROR: Ignored the following versions that require a different python version: 1.21.2 Requires-Python >=3.7,<3.11; 1.21.3 Requires-Python >=3.7,<3.11; 1.21.4 Requires-Python >=3.7,<3.11; 1.21.5 Requires-Python >=3.7,<3.11; 1.21.6 Requires-Python >=3.7,<3.11
ERROR: Could not find a version that satisfies the requirement opencv-python==3.4.5.20 (from pyforms-gui) (from versions: 3.4.0.14, 3.4.10.37, 3.4.11.39, 3.4.11.41, 3.4.11.43, 3.4.11.45, 3.4.13.47, 3.4.15.55, 3.4.16.57, 3.4.16.59, 3.4.17.61, 3.4.17.63, 3.4.18.65, 4.3.0.38, 4.4.0.40, 4.4.0.42, 4.4.0.44, 4.4.0.46, 4.5.1.48, 4.5.3.56, 4.5.4.58, 4.5.4.60, 4.5.5.62, 4.5.5.64, 4.6.0.66, 4.7.0.68, 4.7.0.72, 4.8.0.74)
ERROR: No matching distribution found for opencv-python==3.4.5.20
HenryJFlynn commented 1 year ago

for python -c 'import pybpodgui_plugin.__main__ as Main; Main.start()' need to use double quotes " " for the import on windows

HenryJFlynn commented 1 year ago

Started pybpod.

(base) C:\Users\hflyn\pybpod-windows-test>python -c "import pybpodgui_plugin.__main__ as Main; Main.start()"
2023-07-28 15:18:50 DESKTOP-ORTS253 OpenGL.acceleratesupport[9012] INFO No OpenGL_accelerate module loaded: No module named 'OpenGL_accelerate'
2023-07-28 15:18:51 DESKTOP-ORTS253 matplotlib.font_manager[9012] INFO generated new fontManager
libpng warning: iCCP: known incorrect sRGB profile
2023-07-28 15:18:52 DESKTOP-ORTS253 pyforms_generic_editor.plugins.loader[9012] INFO ------------- LOADING PLUGINS -------------
28/07/2023 03:18:52 | WARNING | 9012 | pyforms_generic_editor.plugins.loader | install_plugins | Plugins path was not defined by user
2023-07-28 15:18:52 DESKTOP-ORTS253 pyforms_generic_editor.plugins.loader[9012] WARNING Plugins path was not defined by user
2023-07-28 15:18:52 DESKTOP-ORTS253 pyforms_generic_editor.plugins.loader[9012] INFO Installing plugin: pybpodgui_plugin
2023-07-28 15:18:52 DESKTOP-ORTS253 pyforms_generic_editor.plugins.loader[9012] INFO Installing plugin: pybpodgui_plugin_timeline
2023-07-28 15:18:52 DESKTOP-ORTS253 pyforms_generic_editor.plugins.loader[9012] INFO Installing plugin: pybpodgui_plugin_session_history
2023-07-28 15:18:52 DESKTOP-ORTS253 pyforms_generic_editor.plugins.loader[9012] INFO ------------- END LOADING PLUGINS -------------
HenryJFlynn commented 1 year ago

Note: the session path in user_settings.py in the example folder is incorrect.

HenryJFlynn commented 1 year ago

for python -c 'import pybpodgui_plugin.__main__ as Main; Main.start()' need to use double quotes " " for the import on windows

Another windoes thing, formet BPOD_SESSION_PATH like this image

HenryJFlynn commented 1 year ago

I made a mistake when doing python utils/install.py, I did not activate the environment first. smh

HenryJFlynn commented 1 year ago

^^^ got same error with opencv-python along with a new one,

 Attempting uninstall: opencv-python
    Found existing installation: opencv-python 4.7.0
ERROR: Cannot uninstall opencv-python 4.7.0, RECORD file not found. Hint: The package was installed by conda.
HenryJFlynn commented 1 year ago

Trying to start pybpod,

(pybpod-environment) C:\Users\hflyn\pybpod-windows-test>python -c "import pybpodgui_plugin.__main__ as Main; Main.start()"
Traceback (most recent call last):
  File "<string>", line 1, in <module>
ModuleNotFoundError: No module named 'pybpodgui_plugin'

This is strange because in the base conda env where I accidently installed pybpod, it worked. Does this mean that the base conda env has some that my pybpod envrionment is missing?

HenryJFlynn commented 1 year ago

For some reason the package pybpod-gui-plugin was installed to my base environment when I did it accidently, but not into my pybpod environment when I did the same commands.

HenryJFlynn commented 1 year ago

Trying to replicate the problem. Reinstalled the env( it took an hour), the did python utils.install.py to get the same erros as before

INFO: pip is looking at multiple versions of pyforms-gui to determine which version is compatible with other requirements. This could take a while.
ERROR: Could not find a version that satisfies the requirement opencv-python==3.4.5.20 (from pyforms-gui) (from versions: 3.4.0.14, 3.4.10.37, 3.4.11.39, 3.4.11.41, 3.4.11.43, 3.4.11.45, 3.4.13.47, 3.4.15.55, 3.4.16.57, 3.4.16.59, 3.4.17.61, 3.4.17.63, 3.4.18.65, 4.3.0.38, 4.4.0.40, 4.4.0.42, 4.4.0.44, 4.4.0.46, 4.5.1.48, 4.5.3.56, 4.5.4.58, 4.5.4.60, 4.5.5.62, 4.5.5.64, 4.6.0.66, 4.7.0.68, 4.7.0.72, 4.8.0.74)
ERROR: No matching distribution found for opencv-python==3.4.5.20

and

  Attempting uninstall: opencv-python
    Found existing installation: opencv-python 4.7.0
ERROR: Cannot uninstall opencv-python 4.7.0, RECORD file not found. Hint: The package was installed by conda.

still no pybpod-gui-plugin package installed.

HenryJFlynn commented 1 year ago

^^^ manualling doing a pip install pybpod-gui-plugin i can a bunch of requirements already satisfied and then

ERROR: Cannot uninstall opencv-python 4.7.0, RECORD file not found. Hint: The package was installed by conda.

further more, i can't uninstall opencv-python

(pybpod-environment) C:\Users\hflyn\pybpod-windows-test>pip uninstall opencv-python
Found existing installation: opencv-python 4.7.0
ERROR: Cannot uninstall opencv-python 4.7.0, RECORD file not found. Hint: The package was installed by conda.
HenryJFlynn commented 1 year ago

^^^ Trying to fix this, I followed this advice, deleted opencv related packages from my base env and my pybpodenvironment. Was able to successfully install pybpod-gui-plugin

HenryJFlynn commented 1 year ago

Now I get this error:

(pybpod-environment) C:\Users\hflyn\pybpod-windows-test>python -c "import pybpodgui_plugin.__main__ as Main; Main.start()"
2023-07-31 10:53:31 DESKTOP-ORTS253 OpenGL.acceleratesupport[28192] INFO No OpenGL_accelerate module loaded: No module named 'OpenGL_accelerate'
2023-07-31 10:53:33 DESKTOP-ORTS253 pyforms_gui.allcontrols[28192] WARNING ControlWeb will not work. Please check PyQt5.QtWebEngineWidgets is installed.
qt.qpa.plugin: Could not find the Qt platform plugin "windows" in ""
This application failed to start because no Qt platform plugin could be initialized. Reinstalling the application may fix this problem.
HenryJFlynn commented 1 year ago

^^^ In ipython, can import PyQt5 but not QtWebEngineWidgets

HenryJFlynn commented 1 year ago

Trying

pip uninstall PyQt5 PyQ5-sip PyQtWebEngine-Qt5 PyQtWebEngine

then, pip install PyQt5 PyQ5-sip PyQtWebEngine-Qt5 PyQtWebEngine yields

Collecting PyQt5
  Using cached PyQt5-5.15.9-cp37-abi3-win_amd64.whl (6.8 MB)
ERROR: Could not find a version that satisfies the requirement PyQ5-sip (from versions: none)
ERROR: No matching distribution found for PyQ5-sip

so I got rid of it

pip install PyQt5 PyQtWebEngine-Qt5 PyQtWebEngine

and now i can open Pybpod but with a new warning about window size

(pybpod-environment) C:\Users\hflyn>python -c "import pybpodgui_plugin.__main__ as Main; Main.start()"
2023-07-31 14:03:58 DESKTOP-ORTS253 OpenGL.acceleratesupport[1644] INFO No OpenGL_accelerate module loaded: No module named 'OpenGL_accelerate'
libpng warning: iCCP: known incorrect sRGB profile
2023-07-31 14:03:59 DESKTOP-ORTS253 pyforms_generic_editor.plugins.loader[1644] INFO ------------- LOADING PLUGINS -------------
31/07/2023 02:03:59 | WARNING | 1644 | pyforms_generic_editor.plugins.loader | install_plugins | Plugins path was not defined by user
2023-07-31 14:03:59 DESKTOP-ORTS253 pyforms_generic_editor.plugins.loader[1644] WARNING Plugins path was not defined by user
2023-07-31 14:03:59 DESKTOP-ORTS253 pyforms_generic_editor.plugins.loader[1644] INFO Installing plugin: pybpodgui_plugin
2023-07-31 14:03:59 DESKTOP-ORTS253 pyforms_generic_editor.plugins.loader[1644] INFO ------------- END LOADING PLUGINS -------------
QWindowsWindow::setGeometry: Unable to set geometry 1200x800+100+100 (frame: 1218x847+91+62) on QWidgetWindow/"StandAloneContainerClassWindow" on "\\.\DISPLAY1". Resulting geometry: 1502x1002+101+107 (frame: 1520x1049+92+69) margins: 9, 38, 9, 9 minimum size: 360x173 MINMAXINFO maxSize=0,0 maxpos=0,0 mintrack=378,220 maxtrack=0,0)
HenryJFlynn commented 1 year ago

Selecting options in an effoter the mofity the user settings crashes Pybpod with this error,

QWidget: Must construct a QApplication before a QWidget

this happens with other actions as well, but opening user settings is the first thing you do

HenryJFlynn commented 1 year ago

Why does base env work but not pybpod-environment ?

HenryJFlynn commented 1 year ago

Comparing the two env's site-packages

C:\Users\hflyn>robocopy "C:\Users\hflyn\miniconda3\envs\pybpod-environment\Lib\site-packages" "C:\Users\hflyn\miniconda3\Lib\site-packages"  /L /NJH /NJS /NP /NS

                        C:\Users\hflyn\miniconda3\envs\pybpod-environment\Lib\site-packages\
        *EXTRA Dir      C:\Users\hflyn\miniconda3\Lib\site-packages\boltons\
        *EXTRA Dir      C:\Users\hflyn\miniconda3\Lib\site-packages\boltons-23.0.0.dist-info\
        *EXTRA Dir      C:\Users\hflyn\miniconda3\Lib\site-packages\boto3-1.28.14.dist-info\
        *EXTRA Dir      C:\Users\hflyn\miniconda3\Lib\site-packages\botocore-1.31.14.dist-info\
        *EXTRA Dir      C:\Users\hflyn\miniconda3\Lib\site-packages\brotli\
        *EXTRA Dir      C:\Users\hflyn\miniconda3\Lib\site-packages\brotlipy-0.7.0-py3.11.egg-info\
        *EXTRA Dir      C:\Users\hflyn\miniconda3\Lib\site-packages\certifi-2023.7.22.dist-info\
        *EXTRA Dir      C:\Users\hflyn\miniconda3\Lib\site-packages\charset_normalizer-2.0.4.dist-info\
        *EXTRA Dir      C:\Users\hflyn\miniconda3\Lib\site-packages\conda\
        *EXTRA Dir      C:\Users\hflyn\miniconda3\Lib\site-packages\conda-23.7.2.dist-info\
        *EXTRA Dir      C:\Users\hflyn\miniconda3\Lib\site-packages\conda_content_trust\
        *EXTRA Dir      C:\Users\hflyn\miniconda3\Lib\site-packages\conda_content_trust-0.1.3.dist-info\
        *EXTRA Dir      C:\Users\hflyn\miniconda3\Lib\site-packages\conda_env\
        *EXTRA Dir      C:\Users\hflyn\miniconda3\Lib\site-packages\conda_libmamba_solver\
        *EXTRA Dir      C:\Users\hflyn\miniconda3\Lib\site-packages\conda_libmamba_solver-23.5.0.dist-info\
        *EXTRA Dir      C:\Users\hflyn\miniconda3\Lib\site-packages\conda_package_handling\
        *EXTRA Dir      C:\Users\hflyn\miniconda3\Lib\site-packages\conda_package_handling-2.1.0.dist-info\
        *EXTRA Dir      C:\Users\hflyn\miniconda3\Lib\site-packages\conda_package_streaming\
        *EXTRA Dir      C:\Users\hflyn\miniconda3\Lib\site-packages\conda_package_streaming-0.8.0.dist-info\
        *EXTRA Dir      C:\Users\hflyn\miniconda3\Lib\site-packages\cryptography-39.0.1.dist-info\
        *EXTRA Dir      C:\Users\hflyn\miniconda3\Lib\site-packages\flake8-6.0.0.dist-info\
        *EXTRA Dir      C:\Users\hflyn\miniconda3\Lib\site-packages\jsonpatch-1.32.dist-info\
        *EXTRA Dir      C:\Users\hflyn\miniconda3\Lib\site-packages\jsonpointer-2.1-py3.6.egg-info\
        *EXTRA Dir      C:\Users\hflyn\miniconda3\Lib\site-packages\libmambapy\
        *EXTRA Dir      C:\Users\hflyn\miniconda3\Lib\site-packages\libmambapy-1.4.1.dist-info\
        *EXTRA Dir      C:\Users\hflyn\miniconda3\Lib\site-packages\matplotlib-3.7.2.dist-info\
        *EXTRA Dir      C:\Users\hflyn\miniconda3\Lib\site-packages\matplotlib.libs\
        *EXTRA Dir      C:\Users\hflyn\miniconda3\Lib\site-packages\menuinst\
        *EXTRA Dir      C:\Users\hflyn\miniconda3\Lib\site-packages\menuinst-1.4.19.dist-info\
        *EXTRA Dir      C:\Users\hflyn\miniconda3\Lib\site-packages\OpenSSL\
        *EXTRA Dir      C:\Users\hflyn\miniconda3\Lib\site-packages\packaging-23.0.dist-info\
        *EXTRA Dir      C:\Users\hflyn\miniconda3\Lib\site-packages\Pillow-10.0.0.dist-info\
        *EXTRA Dir      C:\Users\hflyn\miniconda3\Lib\site-packages\pip-23.1.2-py3.11.egg-info\
        *EXTRA Dir      C:\Users\hflyn\miniconda3\Lib\site-packages\pluggy-1.0.0.dist-info\
        *EXTRA Dir      C:\Users\hflyn\miniconda3\Lib\site-packages\pycodestyle-2.10.0.dist-info\
        *EXTRA Dir      C:\Users\hflyn\miniconda3\Lib\site-packages\pycosat-0.6.4.dist-info\
        *EXTRA Dir      C:\Users\hflyn\miniconda3\Lib\site-packages\pyflakes-3.0.1.dist-info\
        *EXTRA Dir      C:\Users\hflyn\miniconda3\Lib\site-packages\pyOpenSSL-23.2.0.dist-info\
        *EXTRA Dir      C:\Users\hflyn\miniconda3\Lib\site-packages\pyparsing-3.0.9.dist-info\
        *EXTRA Dir      C:\Users\hflyn\miniconda3\Lib\site-packages\QScintilla-2.14.1.dist-info\
        *EXTRA Dir      C:\Users\hflyn\miniconda3\Lib\site-packages\ruamel\
        *EXTRA Dir      C:\Users\hflyn\miniconda3\Lib\site-packages\ruamel.yaml-0.17.21.dist-info\
        *EXTRA Dir      C:\Users\hflyn\miniconda3\Lib\site-packages\scipy-1.11.1.dist-info\
        *EXTRA Dir      C:\Users\hflyn\miniconda3\Lib\site-packages\scipy.libs\
        *EXTRA Dir      C:\Users\hflyn\miniconda3\Lib\site-packages\setuptools-67.8.0-py3.11.egg-info\
        *EXTRA Dir      C:\Users\hflyn\miniconda3\Lib\site-packages\tests\
        *EXTRA Dir      C:\Users\hflyn\miniconda3\Lib\site-packages\wheel-0.38.4-py3.11.egg-info\
        *EXTRA Dir      C:\Users\hflyn\miniconda3\Lib\site-packages\xontrib\
        *EXTRA Dir      C:\Users\hflyn\miniconda3\Lib\site-packages\zstandard\
        *EXTRA Dir      C:\Users\hflyn\miniconda3\Lib\site-packages\zstandard-0.19.0-py3.11.egg-info\
          *EXTRA File                   jsonpatch.py
          *EXTRA File                   jsonpointer.py
          *EXTRA File                   matplotlib-3.7.2-py3.11-nspkg.pth
          *EXTRA File                   pybpod-gui-plugin.egg-link
          *EXTRA File                   pycosat.cp311-win_amd64.pyd
          *EXTRA File                   ruamel.yaml-0.17.21-py3.11-nspkg.pth
          *EXTRA File                   scipy-1.11.1-cp311-cp311-win_amd64.whl
          *EXTRA File                   test_pycosat.py
            New File                    brotli.py
            Newer                       coloredlogs.pth
            New File                    cv2.cp311-win_amd64.pyd
            Older                       cycler.py
            New File                    decorator.py
            Newer                       distutils-precedence.pth
            Newer                       dot_parser.py
            Newer                       easy-install.pth
            Newer                       logging-bootstrap.egg-link
            New File                    matplotlib-3.7.1-py3.11-nspkg.pth
            Newer                       mccabe.py
            Newer                       Mouse2AFC.egg-link
            Newer                       mtscomp.py
            New File                    munkres.py
            Newer                       neuropixel.py
            Newer                       pge-plugin-terminal.egg-link
            New File                    pickleshare.py
            Newer                       py.py
            Newer                       pybpod-api.egg-link
            Newer                       pybpod-gui-api.egg-link
            Newer                       pybpod-gui-plugin-alyx.egg-link
            Newer                       pybpod-gui-plugin-emulator.egg-link
            Newer                       pybpod-gui-plugin-rotaryencoder.egg-link
            Newer                       pybpod-gui-plugin-session-history.egg-link
            Newer                       pybpod-gui-plugin-soundcard.egg-link
            Newer                       pybpod-gui-plugin-stmdiagram.egg-link
            Newer                       pybpod-gui-plugin-timeline.egg-link
            Newer                       pybpod-gui-plugin-trial-timeline.egg-link
            Newer                       pybpod-gui-plugin-waveplayer.egg-link
            Newer                       pycodestyle.py
            Newer                       pydot.py
            Newer                       pyforms-generic-editor.egg-link
            Older                       pylab.py
            Newer                       readline.py
            Newer                       safe-and-collaborative-architecture.egg-link
            Older                       six.py
            Older                       socks.py
            Older                       sockshandler.py
            Newer                       spikeglx.py
            Newer                       threadpoolctl.py
            Older                       typing_extensions.py
            New File                    wincertstore.py
            Older                       win_inet_pton.py
            New File                    _brotli.cp311-win_amd64.pyd
            Newer                       _cffi_backend.cp311-win_amd64.pyd
HenryJFlynn commented 1 year ago

Manuall

Selecting options in an effoter the mofity the user settings crashes Pybpod with this error,

QWidget: Must construct a QApplication before a QWidget

this happens with other actions as well, but opening user settings is the first thing you do

manually changing user settings then trying to run the protocol also causes it to crash

HenryJFlynn commented 1 year ago

FULL SUMMRARY

Everything I tried and where I ended up

Begins with this always:

conda env create -f Downloads/environment-windows-10.yml

First try:

Changing nothing yields:

Collecting package metadata (repodata.json): done
Solving environment: failed

ResolvePackageNotFound:
  - qt==5.6.2=vc14_1
  - tk==8.5.18=vc14_0
  - matplotlib==2.0.2=np113py36_0
  - jpeg==9b=vc14_2

This step took 3min before there was an output

Second Try

Will now try to follow this advice and move those packages to the pip section

  - pip:
    - matplotlib=2.0.2=np113py36_0
    - qt==5.6.2=vc14_1
    - tk==8.5.18=vc14_0
    - jpeg==9b=vc14_2

yields:

Collecting package metadata (repodata.json): done
Solving environment: |
Found conflicts! Looking for incompatible packages.
This can take several minutes.  Press CTRL-C to abort.
failed
Solving environment: -
Found conflicts! Looking for incompatible packages.
This can take several minutes.  Press CTRL-C to abort.
failed

UnsatisfiableError: The following specifications were found to be incompatible with each other:

Output in format: Requested package -> Available versions

and then a very very long list of package conflicts which look like this

Package tbb conflicts for:
numpy==1.13.3=py36hb69e940_3 -> mkl -> tbb=2021
scipy==1.0.0=py36h1260518_0 -> mkl[version='>=2018.0.0'] -> tbb=2021
blas==1.0=mkl -> mkl -> tbb=2021

It took 5min for it to print failed and 20 min for it total.

Try 3:

Gonna try deleting the pip section I added previously and installing them manually(if it works) as suggested here https://github.com/conda/conda/issues/6073#issuecomment-356981567.

Nope. Yields the same error as the second try.

Try 4:

Maybe this https://github.com/datitran/object_detector_app/issues/41#issuecomment-588469805

Nope. Same as the second try.

Try 5:

Deleting all the build numbers:

Nope. same as the second try.

Try 6:

Delete build and version numbers. See https://stackoverflow.com/questions/55554431/conda-fails-to-create-environment-from-yml.

Yields:

INFO: pip is looking at multiple versions of pyforms-gui to determine which version is compatible with other requirements. This could take a while.
ERROR: Could not find a version that satisfies the requirement opencv-python==3.4.5.20 (from pyforms-gui) (from versions: 3.4.0.14, 3.4.10.37, 3.4.11.39, 3.4.11.41, 3.4.11.43, 3.4.11.45, 3.4.13.47, 3.4.15.55, 3.4.16.57, 3.4.16.59, 3.4.17.61, 3.4.17.63, 3.4.18.65, 4.3.0.38, 4.4.0.40, 4.4.0.42, 4.4.0.44, 4.4.0.46, 4.5.1.48, 4.5.3.56, 4.5.4.58, 4.5.4.60, 4.5.5.62, 4.5.5.64, 4.6.0.66, 4.7.0.68, 4.7.0.72, 4.8.0.74)
ERROR: No matching distribution found for opencv-python==3.4.5.20

and

  Attempting uninstall: opencv-python
    Found existing installation: opencv-python 4.7.0
ERROR: Cannot uninstall opencv-python 4.7.0, RECORD file not found. Hint: The package was installed by conda.

then trying to start pybpod,

(pybpod-environment) C:\Users\hflyn\pybpod-windows-test>python -c "import pybpodgui_plugin.__main__ as Main; Main.start()"
Traceback (most recent call last):
  File "<string>", line 1, in <module>
ModuleNotFoundError: No module named 'pybpodgui_plugin'

Without opencv-python installing correctly pybpod-gui-plugin cannot install properly which means we are unable to start pybpod.

This is an on going problem which other people are also having. See https://github.com/scipy/scipy/issues/17928.

Try 7:

Same as Try 6 plus deleting opencv-python from the env and requirement files then installing them afterwards. See https://stackoverflow.com/questions/68886239/cannot-uninstall-numpy-1-21-2-record-file-not-found

Successfully created the env in about 30min.

now: python utils/install.py

In trying to run pybpod


L

(pybpod-environment) C:\Users\hflyn\pybpod-windows-test>python -c "import pybpodgui_plugin.__main__ as Main; Main.start()"
DLL load failed while importing QtWebEngineWidgets: The specified module could not be found.
ControlWeb will not work
QtWebEngine may be missing
qt.qpa.plugin: Could not find the Qt platform plugin "windows" in ""
This application failed to start because no Qt platform plugin could be initialized. Reinstalling the application may fix this problem.

can fix this by uninstall and reinstalling PyQt5 PyQt5-sip PyQtWebEngine and PyQtWebEngine-Qt5.

Now I can start the gui but once I try to edit settings or load board information, the gui crashes and I get this in terminal

QWidget: Must construct a QApplication before a QWidget
HenryJFlynn commented 1 year ago

In summary, things that failed:

  1. Following Pybpod's instructions --> Error = ResolvePackagesNotFound
  2. Moving the packages causing the ResolvePackagesNotFound to the pip section of the yml files ---> Error = Package x conflicts for...
  3. Deleting the packages causing the ResolvePackagesNotFound ---> Error = Package x conflicts for...
  4. doing conda config --set restore_free_channel true ---> Error = package x conflicts for ...
  5. Deleting build numbers ---> Error 'package x conflicts for ...`

The first error is the ResolvePackagesNotFound and then once that is solved, we get the package conflicts.

HenryJFlynn commented 1 year ago

Idea about the opencv issue. The version specified in the env isn't the one later download which causes issue. Possibly, the newer version is the problem

HenryJFlynn commented 1 year ago

^^^ searched opencv in the vscode (both inside the utils folder) and deleted the version and build numbers then retried the install. No errors. pybpod-gui-plugin was successfully installed.

HenryJFlynn commented 1 year ago

L

(pybpod-environment) C:\Users\hflyn\pybpod-windows-test>python -c "import pybpodgui_plugin.__main__ as Main; Main.start()"
DLL load failed while importing QtWebEngineWidgets: The specified module could not be found.
ControlWeb will not work
QtWebEngine may be missing
qt.qpa.plugin: Could not find the Qt platform plugin "windows" in ""
This application failed to start because no Qt platform plugin could be initialized. Reinstalling the application may fix this problem.
HenryJFlynn commented 1 year ago

Failed solutions

  1. Tried adding miniconda to my path https://github.com/ContinuumIO/anaconda-issues/issues/10079#issuecomment-475724521 and https://www.geeksforgeeks.org/how-to-setup-anaconda-path-to-environment-variable/.
HenryJFlynn commented 1 year ago

Solutions, well half. Did this Uninstall reinstall https://stackoverflow.com/questions/66202005/importerror-dll-load-failed-while-importing-qtwebenginewidgets-when-running-sp as well as a reinstall of PyQt5 and PyQt5-sip recommended here:https://www.techguy.org/threads/error-when-importing-pyqt5-qtwebenginewidgets.1266746/

HenryJFlynn commented 1 year ago

Back to this error:

(pybpod-environment) C:\Users\hflyn\pybpod-windows-test>python -c "import pybpodgui_plugin.__main__ as Main; Main.start()"
libpng warning: iCCP: known incorrect sRGB profile
01/08/2023 12:00:15 | WARNING | 11824 | pyforms_generic_editor.plugins.loader | install_plugins | Plugins path was not defined by user
QWindowsWindow::setGeometry: Unable to set geometry 1200x800+100+100 (frame: 1218x847+91+62) on QWidgetWindow/"StandAloneContainerClassWindow" on "\\.\DISPLAY1". Resulting geometry: 1502x1002+101+107 (frame: 1520x1049+92+69) margins: 9, 38, 9, 9 minimum size: 360x173 MINMAXINFO maxSize=0,0 maxpos=0,0 mintrack=378,220 maxtrack=0,0)
QWidget: Must construct a QApplication before a QWidget
HenryJFlynn commented 1 year ago

^^^ nvm abot the wontfix I am may have found something.

Using a new conda env, and skipping creating pybpod-environment with the yml file, i do python utils/install.py and I can start pybpod and open user settings no problem. Once I click run protocol I get this error,

b'Traceback (most recent call last):\r\n'
b'  File "C:\\Users\\hflyn\\mouse2afc\\mouse2afc\\pybpod-project\\tasks\\Mouse2AFC\\Mouse2AFC.py", line 5, in <module>\r\n'
b'    from mouse2afc import Mouse2AFC\r\n'

which I am counting as a win

HenryJFlynn commented 1 year ago

I have run an example protocol in pybpod. the problem is with mouse2afc

HenryJFlynn commented 1 year ago

I gave up chasing this. It it no longer worth it. I submitted an issue with pybpod and hope they can solve it

HenryJFlynn commented 1 year ago

Trying to manually do it. First error

(test1-env) C:\Users\hflyn>conda install mkl=2018.0.0=h36b65af_4
Collecting package metadata (current_repodata.json): done
Solving environment: unsuccessful initial attempt using frozen solve. Retrying with flexible solve.
Collecting package metadata (repodata.json): done
Solving environment: done
WARNING conda.gateways.disk.delete:unlink_or_rename_to_trash(188): Could not remove or rename C:\Users\hflyn\miniconda3\pkgs\numpy-1.25.2-py310hd02465a_0.conda.  Please remove this file manually (you may need to reboot to free file handles)
WARNING conda.gateways.disk.delete:unlink_or_rename_to_trash(188): Could not remove or rename C:\Users\hflyn\miniconda3\pkgs\pillow-9.4.0-py310hdbb7713_1.conda.  Please remove this file manually (you may need to reboot to free file handles)
WARNING conda.gateways.disk.delete:unlink_or_rename_to_trash(188): Could not remove or rename C:\Users\hflyn\miniconda3\pkgs\scipy-1.11.1-py310h578b7cb_0.conda.  Please remove this file manually (you may need to reboot to free file handles)

deleted three files, restarted and reinstalled mkl.

Installing one package (ex numpy) can leads to installing many ( ex. blas, numpy,pands/python-dateutilpytz,six)

(test1-env) C:\Users\hflyn>conda install backports.functools_lru_cache=1.5=py_1
Collecting package metadata (current_repodata.json): done
Solving environment: unsuccessful initial attempt using frozen solve. Retrying with flexible solve.
Collecting package metadata (repodata.json): done
Solving environment: unsuccessful initial attempt using frozen solve. Retrying with flexible solve.

PackagesNotFoundError: The following packages are not available from current channels:

  - backports.functools_lru_cache==1.5=py_1

Current channels:

  - https://repo.anaconda.com/pkgs/main/win-64
  - https://repo.anaconda.com/pkgs/main/noarch
  - https://repo.anaconda.com/pkgs/free/win-64
  - https://repo.anaconda.com/pkgs/free/noarch
  - https://repo.anaconda.com/pkgs/r/win-64
  - https://repo.anaconda.com/pkgs/r/noarch
  - https://repo.anaconda.com/pkgs/msys2/win-64
  - https://repo.anaconda.com/pkgs/msys2/noarch

and

(test1-env) C:\Users\hflyn>conda install icu=58.2=vc14_0
Collecting package metadata (current_repodata.json): done
Solving environment: unsuccessful initial attempt using frozen solve. Retrying with flexible solve.
Collecting package metadata (repodata.json): done
Solving environment: unsuccessful initial attempt using frozen solve. Retrying with flexible solve.

PackagesNotFoundError: The following packages are not available from current channels:

  - icu==58.2=vc14_0

Current channels:

  - https://repo.anaconda.com/pkgs/main/win-64
  - https://repo.anaconda.com/pkgs/main/noarch
  - https://repo.anaconda.com/pkgs/free/win-64
  - https://repo.anaconda.com/pkgs/free/noarch
  - https://repo.anaconda.com/pkgs/r/win-64
  - https://repo.anaconda.com/pkgs/r/noarch
  - https://repo.anaconda.com/pkgs/msys2/win-64
  - https://repo.anaconda.com/pkgs/msys2/noarch

Package not found erros can be solved by specifying channels like this

conda install PACKAGE_NAME --channel conda-forge --channel anaconda --channel defaults

Trying to install sqlite triggered the package conflicts seen previously

(test1-env) C:\Users\hflyn>conda install sqlite==3.19.3=vc14_1 --channel conda-forge --channel anaconda --channel defaults
Collecting package metadata (current_repodata.json): done
Solving environment: unsuccessful initial attempt using frozen solve. Retrying with flexible solve.
Collecting package metadata (repodata.json): done
Solving environment: unsuccessful initial attempt using frozen solve. Retrying with flexible solve.
Solving environment: |
Found conflicts! Looking for incompatible packages.
This can take several minutes.  Press CTRL-C to abort.
failed                                                          /

UnsatisfiableError: The following specifications were found
to be incompatible with the existing python installation in your environment:

Specifications:

  - certifi -> python[version='3.10.*|3.7.*|3.9.*|3.8.*']
  - opencv==3.4.1 -> python[version='2.6.*|2.7.*|>=2.7,<2.8.0a0|>=3.10,<3.11.0a0|>=3.9,<3.10.0a0|>=3.11,<3.12.0a0|>=3.8,<3.9.0a0|3.4.*|3.3.*']
  - pyqt -> python[version='3.10.*|3.9.*|3.8.*|3.11.*|3.7.*']
  - python-dateutil -> python[version='>=3.8,<3.9.0a0|>=3.9,<3.10.0a0']
  - qscintilla2==2.9.3 -> python[version='2.6.*|3.3.*|>=3.10,<3.11.0a0|>=3.8,<3.9.0a0|>=3.9,<3.10.0a0|>=3.11,<3.12.0a0']  - wincertstore -> python[version='3.10.*|3.8.*|3.9.*|3.7.*']

Your python: python=3.6

If python is on the left-most side of the chain, that's the version you've asked for.
When python appears to the right, that indicates that the thing on the left is somehow
not available for the python version you are constrained to. Note that conda will not
change your python version to a different minor version unless you explicitly specify
that.

The following specifications were found to be incompatible with a past
explicit spec that is not an explicit spec in this operation (vc):

  - sqlite==3.19.3=vc14_1 -> vc==14 -> vs2015_runtime[version='>=14.0.25123,<15.0a0|>=14.0.25420']

The following specifications were found to be incompatible with each other:

Output in format: Requested package -> Available versions

Package mkl conflicts for:
scipy==1.0.0=py36h1260518_0 -> numpy[version='>=1.11.3,<2.0a0'] -> mkl[version='2017.0.*|>=2018.0.1,<2019.0a0|>=2018.0.1|>=2018.0.2|>=2018.0.3|>=2019.1,<2020.0a0|>=2019.3,<2020.0a0|>=2019.4,<2020.0a0|>=2021.2.0,<2022.0a0|>=2021.3.0,<2022.0a0|>=2021.4.0,<2022.0a0|>=2023.1.0,<2024.0a0|>=2019.4,<2021.0a0|>=2019.3,<2021.0a0|>=2019.1,<2021.0a0|>=2018.0.3,<2019.0a0|>=2018.0.2,<2019.0a0']`

...

Every package was installed just fine. It seems that sqlite was causing the problems