Welcome!
This is the community forum for my apps Pythonista and Editorial.
For individual support questions, you can also send an email. If you have a very short question or just want to say hello — I'm @olemoritz on Twitter.
Time to update python to the latest version?
-
On the other hand, since it does not support virtual environments, one positive side of the slow pace of updates is that it makes Pythonista a more stable platform, in a sense.
-
@victordomingos @victordomingos But python 3.6.0 or python 3.7.0 or python 2.7.0 is not stable, while others like python 2.7.15 should be more stable than python 2.7.12.
-
And the modules.… The modules are old now.
-
I think you might get better traction if you open an issue with specific module, and why a new version is needed. I.e are you actually running into problems that were fixed in a newer version, without any workarounds? Or you just want it because it is newer. Many module updates are for obscure problems that might not be applicable for the average pythonista user.
-
There security issues in the stagnant modules... To see, create a new repo and add the requirements.txt file from https://github.com/cclauss/pythonista-module-versions and within a week GitHub will start sending you security warnings about your repo. Your repo probably needs enough Python files that GitHub recognizes it as a Python repo.
-
@JonB I used "PEP 553, Built-in breakpoint()" and "The insertion-order preservation nature of dict objects" in python 3.7. And I'm sure many people need other new features. And python 3.7 would be better than python 3.6 just like python 3.6 was better than 3.5. Python 2.7.15 is better than python 2.7.12. So why we kept using old versions for SEVERAL YEARS?
-
@JonB The old modules maybe had many bugs because we can't make sure that we killed all bugs. So we need to update old mudules not just for the new feature. I met some bugs in chardet 2.1.1(2012), while the latest version is 3.0.4. 6 years now, and we are using the outdated modules.
-
I think pythonista should update modules 0.5time/year at least.
-
I guess I just don't see it. I can't think of any security issues that are really likely to be issues for the type of work the typical pythonista user is doing. Most people are not running servers exposed to the world.
Yes, there are some new language features that are nice. What did people do before dict order was preserved? They did not rely on it, and it took a few extra lines of code . It is not like python was unuseful a year ago. It was mature and functional and most updates have been minor improvements.
I can see if you are using other people's code that makes use of new features, it might be annoying.
Chardet is pure python and can be updated via stash. Sure it is annoying, but once you do it you are set.
-
@JonB I installed chardet via stash. But when I checked version with code "chardet.__version__". It did not work.
-
@JonB Just like the f-str in python 3.6. You could use others if we still used python 3.5. But if we had python 3.6, we can try new features and improve our code. Besides, I don't think python 3.7 is a small version. If it is, then the version should be python 3.6.x.
-
You would need to force quit pythonista. Also you may need to check which site packages it was installed in.
-
@JonB I used the latest stash and ran it on python 3. I found the new chardet in site-packages-3. But it did not work with "chardet.__version__". (Pythonista had its own chardet already.)
-
We wrote better code not just runnable code. Python 2 is dying in 2020. And we still use python 2 in 2020? Why don't you try python 3 now? We have a better version and we still use the outdated one. We don't run the code as a server on ipad. We don't run 10000 rows code on ipad. We can try the new features and enjoy the new version.
-
>>> import chardet >>> chardet.__file__ '/private/var/mobile/Containers/Shared/AppGroup/C534C622-2FDA-41F7-AE91-E3AAFE5FFC6B/Pythonista3/Documents/site-packages/chardet/__init__.py' >>> chardet.__version__ '3.0.4'
You might want to delete the chardet folder, and try install again. Be sure to force quit pythonista after.
Don't get me wrong... if there is a new version that continues to work on ios9.3.5/Ipad3, I'll use it. I just don't feel like there is no use to the app. even without any updates in the future, there is plenty to keep things interesting.
-
@JonB I'm using pythonista 3.2. And I can't delete the package installed in Pythonista by omz, since it looks like omz did not allow us to do it. When I reopen it, it restores the package.
-
You can install the new package in site-packages or site-packages-3, those take precedence over pythonista pylib folder.
Pip in stash might have a -f to force install of a pythonista pre-installed module. There are some thread around about installing chardet, idna, and a few others.
-
@JonB Thx. But some modules like matplotlib 3.0 which are not pure python modules. So it is still a problem. I hope omz would update these modules and python soon. By the way asyncio had some bugs when the network is unstable.
-
@JonB I installed chardet in site-package-3, but it seems it did not take precedence over the pre-installed version.
-
Did you force quit pythonista?
Try this:
from stash:
ls ~/Documents/site-packages-3/chardetnext, in console:
import sys, chardet del sys.modules['chardet'] import chardet print(chardet.__file__)
next:
import sys print(sys.path)