• @cvp
    Thank you very much!

  • as a temporary fix, see
    https://github.com/ywangd/stash/issues/328#issuecomment-416044398

    edit git.py and change the one line.

  • I just realised the error. It’s meant to be Rect(self.player.position.x-12, self.player.position.y-12, 24, 24) I forgot the .x on the end of position. Thanks for making me notice it!

  • Yeah, FIFOs are strange, I don't think there's any use for them in Pythonista. A FIFO works kind of like a normal pipe in a shell - one side writes to it, the other one reads from it. (Usually the two sides would be different processes, but you can probably do it in a single process if you use threads or non-blocking IO.) The reason why Pythonista froze when you opened the FIFO is because the editor tried to read the file contents, but because there was no writer attached to it, the read (or possibly the file open) blocked forever.

    I don't know why Pythonista crashed when you tried to do anything else with the FIFO - my guess would be that the file manipulation methods that Pythonista uses don't handle FIFOs properly. I also have no idea why safe mode helped (I thought it did the same thing as pythonista3:// - disabling pythonista_startup and closing all editor tabs) but I'm not going to complain.

    In case safe mode ever doesn't work, there is another way you can get rid of a problematic file. Pythonista's share extension has full access to all files stored in the app, so you can use the Python console there to delete the file. The share extension has much fewer features than the main app, and the file browser and editor aren't loaded by default, so it's much less likely to crash than the main app.

    If that doesn't work either, and you have purchased the old Pythonista 2 when it was still available, you can use it as well. Although you can't see Pythonista 3 files in Pythonista 2's UI anywhere, both versions share the same storage location internally. In Pythonista 2, Pythonista 3's files are located at os.path.expanduser("~/Pythonista3/Documents"). The chance of a Pythonista 3 file crashing Pythonista 2 is basically zero, because Pythonista 2 never looks at Pythonista 3's files (unless you do so manually using Python).

    If that isn't an option either, you can make a backup of your device using iTunes, and then use a tool like iFunbox or iExplorer to extract your Pythonista files from the backup. (I honestly don't know how either of those tools deal with FIFOs and other special files in backups, or if iTunes even backs such files up. If special files cause issues when extracting, you can manually copy out all files except the problematic special files.) Once you're sure that you've gotten all your data out, you can delete and reinstall Pythonista and copy all of your data back.

  • @Phuket2 hehe thanks anyway. Really glad fir all the help

  • @ccc tried rebooting still get the "None" message. I have 10.3.1 on my iPad and pythonista 3.1 with python 3.5

  • @ABLPHA Could you please upgrade to the latest version (3.1) and check if the issue persists?

  • @Swoboderz which extension are you trying to use?

    You will note that that chunk if code is using errors, encoding, etc. However:

    >>> dir(sys.stdout) ['__class__', '__delattr__', '__dict__', '__dir__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__gt__', '__hash__', '__init__', '__le__', '__lt__', '__module__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__', '__weakref__', 'encoding', 'flush', 'isatty', 'write', 'writelines']

    notice there is no errors attribute.

    So, before calling that code (probably in your script, not in the console, since the streams might be reset when globals get cleared, i forget), just do

    sys.stdout.errors ='strict'

    or, maybe try a different option, depending on whether you want that bit of code executing or not.

    It is all probably moot anyway, since you won't be able to call a c extension that wasnt shipped with pythonista.

  • Thanks a lot! THAT WORKS!!! Without you I could have wasted time on trying to correct this error!

  • @lukaskollmer I got it all working again, except imgurpython.
    I removed it from site-packages and tried to reinstall it with pip, but it wouldn't let me.

  • I am on Wifi swapping to 4G when it fails (in pasted log)

    As I said in Slack, updating dulwich as per your recommendation, seems to have done the trick.

    There was an error saying something about an error renaming to dulwich.old but restarting worked

  • This sounds like a location problem.

    import will check the site-packages folder in modules & templates\site-packages (there are three folders in Pythonista 3.

    import will also check the current folder and can import something from there.

    import does not import from just anywhere.

  • @happy_variable try the following instead of __init__:
    def __init__ (self, name, dration, from_brick):
    In python, class methods (except the staticmethods or classmethods) are called with the instance of the class as the first argument.

    EDIT: You will also need to replace SpriteNode.__setattr__(name, duration, from_brick) with SpriteNode.__setattr__(self, name, duration, from_brick).
    This is because SpriteNode.__setattr__ is a unbound class method.

  • @Webmaster4o , ok, great. Thanks that works. You still get the traceback error. But you still need to know to look at the console to see all the error text. But I can modify the error text to say more information in the console, just put it at the top to make sure they see that part of the msg. But of course the more information you can return as an error the better I think

Internal error.

Oops! Looks like something went wrong!