Psychopy: Should we default PsychoPy3 to use Python 3.6?

Created on 16 Aug 2018  Â·  6Comments  Â·  Source: psychopy/psychopy

So far in the releases we've had

  • PsychoPy3
  • PsychoPy3_PY3
  • on windows I'm toying with PsychoPy3_PY3_win64 as well

bu maybe I should switch the naming at this point so that the standard/default is py3.6 and py2.7 is a deliberate choice:

  • PsychoPy3 (now Python 3.6)?
  • PsychoPy3_PY2

I'm guessing all the developers would support this

Most helpful comment

I'm not just +1, but, like, +1k on this one ;) I don't think there would be any drawbacks for end users.

All 6 comments

I'm not just +1, but, like, +1k on this one ;) I don't think there would be any drawbacks for end users.

I'd go one further and drop py2 support with the release of psychopy3. Resources are finite, and working around the differences between the two pythons takes considerable effort in my experience.

Psychopy3 seems like a very good place to make the cut — especially as people who are going to want to take advantage of pavlovia are going to need to migrate their hand-built python scripts anyhow.

I'm not in favour of dropping Py2.7 support altogether for some time yet. In particular, some hardware isn't yet supported on py3. Labjack, for instance is still not Py3 compatible, so if you want triggers I think Python2 is still needed. https://labjack.com/comment/5680

100% your call, though Psychopy2 is still around and I'm guessing it'll be supported for an extended period of time?

I don't have any skin in this game, but I can say with some certainty that our lab would be fine running python2 stuff in psychopy2 and going python3-only with psychopy3.

Regardless, though, I'm +1 on py3 being the default going forward.

I think defaulting to 3.6 (32-bit) and putting work towards a 64-bit option would be best (my AMD Sempron in 2004 supported AMD64). We should eventually drop Python 2.7 support since it will be discontinued in a bit over a year, but we need to make sure there is plenty of notice to users.

Since everyone's time is limited, anything which reduces fragmentation is going to make contributing to this project more productive.

It's done. The decision to discontinue 2.7 will be largely pragmatic. When something comes along that breaks it (e.g. makes it hard for me to build or support) then we'll stop supporting it.

Was this page helpful?
0 / 5 - 0 ratings