Beta Status Update
pydfiles are dynamic libraries. As far as I know they don't have a specific format - on Windows for example they are just
dlls with a different extension, on other operating systems that's probably also the case. This means that most
pyds would not be compatible with the iOS kernel in the first place and would need to be recompiled from source code. Because Apple doesn't allow apps to dynamically link to custom libraries it wouldn't be possible to use those anyway.
pyofiles are optimized Python bytecode. (Optimized means that any
assertstatements, and sometimes docstrings, have been removed.) Their format is the same as for
pycfiles, which Pythonista already generates to improve module loading speed. These files are usable in Pythonista - IIRC someone has done this before - but there's little point in doing that, you might just as well use the Python source code for the files.
pyxfiles are Pyrex or Cython code. Both are languages that are syntactically similar to Python, but compile to C source code and can use C types and libraries. The problems with these are the same as with
pyds that I explained above.
zencuke last edited by
I upgraded my iPhone 6 to iOS 8.3 and Platformer game works now. Unfortunately I don't remember the iOS version that failed.
I am getting a repeatable crash of pythonista 1.6 when editing a meduim sized file. It comes when I type anything after I type the instace of a tableview and then the period. I beleive this is an autocompletion issue. But I can't figure out how to disable autocompletion to test it.
Does clearing the code completion cache change anything? If not, mind uploading the code in question to Gist? Interestingly I don't get any code completion at all for a
AFAICT it isn't possible to disable code completion (or switch it to "simple" mode) anymore in the latest beta. There isn't even an option for that in the
I do get TableView instances to code complete, though the first time takes a few seconds.
I have observed
Gittleobjects take a really really long time to complete(like minutes....I think the innards of these are very dynamic) in 1.5, which locked everything up until a completion popped up! The workaround was to type a space, then period followed by your attribute, then go back as backspace out the space. This prevents autocomplete from happening, at least in the console. Misspelling the object name also works,etc.
Blmacbeth, where are you setting the physics? Make sure you are setting it AFTER calling sk.load, otherwise load overwrites anything you have set already.
Gcarver166 last edited by
node.copy() does not copy the physics body correctly. The node copy points to a physics body but I think it's the same as the original. I have to manually make a copy.
More on autocompletion explosions. I opening up
tvCapos.delegate = fred
When I went to the file menu to switch files, the app crashed.
Re: platformer grey screen. I found on IOS 8.2 that removing the [`orientations='landscape'] from the last line, then rotating my device after pressing play, the game was playable.
It's fine in 8.3.
blmacbeth last edited by
@JonB, I am setting up the physics through the sprite kit editor, not through the script editor. The first thing I do in the script is
things = sk.load('things.pysk, sk.Node()). I would assume that the numbers I set in
things.pyskwould load there. However, when I run the following: (where I have set
ball = things['ball'] print ball.physics_body.restitution
0.5. I found a work around by setting the restitution in the script editor.
Hooked up to my Mac and used XCODE to look for a crash report. None.
(Thought I had posted this before...)
I manually imported
jediand tried to get a code completion on one of the problematic spots. At some point it ends up in an infinite recursion loop, until the interpreter throws an exception due to exceeding the recursion limit. Why exactly this happens I can't say though.
An off switch would be nice. This was not a problem (in 1.5). @degelessus: Which version of jedi did you try? The installed jedi in 1.6 is 0.9.0. Perhaps a rollback to 0.8.1?
mteep last edited by
@polymerchm It seems that only crash reports with file names ending in ".ips" are shown in Xcode. Those that have been transferred are renamed on the device to ".ips-transferred" or similar. Those from the Pythonista beta end in ".ips-beta" or so. Fortunately, they call all be viewed on the device, if you go to Settings -> Privacy -> Diagnosis ... -> Diagnosis ... (or something close to that).
@OMZ Do you automatically get crash logs, or can I send them to you? Will sync device tonight and see if I have logs relevant to the autocomplete bug (now that I know where to find them).
Omega0 last edited by
I've found an issue where
editor.make_new_file()causes the app to crash. It doesn't seem to matter what arguments I pass to it the app just shuts down.
works fine for me (iOS 8.3, beta 1.6).
import editor editor.make_new_file('test.py','this is a test')
create a file in the root directory each time its run, adding a number to the end to avoid a duplicate name.
Tizzy last edited by
I love the updates!!! especially tabs and search. Also love the purplish theme. And most of all love the improved traceback readout. And the consolidated keyboard is a great idea.
Great job OMZ you've created the premier development platform for (on) iOS!
Just an observation - the yellow dot to the left of "Pythonista" under the icon doesn't go away for me. I believe it's supposed to indicate that there's a new version of the app on your device that you haven't opened yet...but I have. Pythonista is the only app I have in test flight so forgive me if I'm wrong - either way sounds like it would be a test flight issue.
Also one gripe - if you have a script in the foreground and it runs, you can click the x in the upper right while in console view to stop it. You can't press play(run) from the same place - instead it's a greyed out x and you have to backup to the script to press play again. It wasn't like this in previous versions, and while I can see the logic in making sure you're at the script before you can run it, being able to run a script multiple times while looking at the console without backing out of it is very useful to quickly try code modifications out during development...for me at least. Perhaps a toggle for this functionality deserves to exist in settings?
ALSO, since the new version I get this error all the time. Everything still works, but this error shows up in red in the console.
D96-4218-87C0-D09DA5054558/Pythonista2.app/pylib/site-packages/requests/packages/urllib3/util/ssl_.py:79: InsecurePlatformWarning: A true SSLContext object is not available. This prevents urllib3 from configuring SSL appropriately and may cause certain SSL connections to fail. For more information, see https://urllib3.readthedocs.org/en/latest/security.html#insecureplatformwarning. InsecurePlatformWarning