Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Bug]: package egi_pynetstation not installable with plugin manager in 2024.2.1 #6878

Open
pmolfese opened this issue Sep 26, 2024 · 6 comments
Labels
🐞 bug Issue describes a bug (crash or error) or undefined behavior.

Comments

@pmolfese
Copy link
Contributor

PsychoPy Version

2024.2.1

What OS are your PsychoPy running on?

macOS Silicon

Bug Description

Package egi_pynetstation is not included in Python 3.10 branch, but is included in 3.8 branch. Attempting to install via package manager in PsychoPy doesn't allow single click install in 3.10, but pip install works.

Expected Behaviour

Previous default behavior was to include egi_pynetstation in the distribution. Unclear why it is included in 3.8 branch but not 3.10 branch. Pypi cleared for package on Python > 3.8. Unclear why the install button is grayed out

310_plugin_egi

Steps to Reproduce

  1. Launch PsychoPy on Mac 2024.2.1 3.10 branch
  2. Click Tools --> Plugin Manager --> Packages --> Search EGI
  3. Notice install unavailable

Additional context

I'm the maintainer of egi_pynetstation.

@pmolfese pmolfese added the 🐞 bug Issue describes a bug (crash or error) or undefined behavior. label Sep 26, 2024
@peircej
Copy link
Member

peircej commented Oct 8, 2024

The intended behaviour was that py3.8 would provide it built-in because that's aiming for wider compatibility (although on reflection that isn't really needed because egi_pynetstation does now happily install as a user package) and py3.10 would not include it because we're expecting people to need more plugins there.

BUT it looks like py2app has spotted the existence of import egi_pynetstation inside the project so it provided a partial install to make just that call possible. On py310 standalone you can do import egi_pynetstation but not from egi_pynetstation import NetStation. That's why you aren't offered the option to install - because psychopy thinks it's there but not enough of the lib is there to actually work.

Options for psychopy 2024.2.3 (imminent release to fix issue with macos installers):

  1. pre-package in both python versions - easiest for the user and only slightly against the plugins ethos
  2. remove from both releases - has the advantage that users can install/uninstall/update rather than having the fixed version provided

For the 2025.1.0 release, I suggest it's time to create a psychopy-egi plugin with a component that covers the use-case of your current documented tutorial. The plugin will be easier to find than the package, and can specify the package as a dependency

@peircej
Copy link
Member

peircej commented Oct 8, 2024

Shall we go with option 1 for this release and switch to option 2 for 2025 with the additional plugin option?

@pmolfese
Copy link
Contributor Author

pmolfese commented Oct 8, 2024

Yes I think Option 1 for next release and Option 2 for 2025.x.

I'll dig into how to build a proper plugin.

@peircej
Copy link
Member

peircej commented Oct 8, 2024

Very happy to support you on that, or possibly worth just co-authoring one with @TEParsons or @mdcutone to get started

@pmolfese
Copy link
Contributor Author

pmolfese commented Oct 8, 2024

Would absolutely welcome the support and co-authoring!

@TEParsons
Copy link
Contributor

I recommend https://github.com/psychopy/psychopy-plugin-template as a starting point, happy to help if you have any questions :)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
🐞 bug Issue describes a bug (crash or error) or undefined behavior.
Projects
None yet
Development

No branches or pull requests

3 participants