Bug list for beta release 160037
-
I figured I would start a thread to document bugs in one place.
As of
160036160037 (starting to test in 2.0):bugs
extended keyboard still does not work in console on iPad 3/ios8.On Ipad 3, typing a two single quotes after an equal sign in the editor results in='''
instead of=''
. pressing a space before the = properly inserts a pair of quotes.- On Ipad 3, fullscreen convert_point, convert_rect, do not work correctly in fullscreen. see here. This was a bug in 1.5 as well, though I thought it was fixed in a recent beta build
- Similar problems with convert_point converting from a
sheet
to None.. the result has the sheet screen position added in twice. Thus 0,0 gets converted to (2x,2y) instead of (x,y) View.close
does not work for panel mode (not new)- Keyboard focus stays in editor, but shows console
Keyboard displays white keys after dismissing view.- View.touch_enabled = False has no effect:
>>> v=ui.View() >>> v.touch_enabled True >>> v.touch_enabled=False >>> v.touch_enabled True
- popover_location does not accept ui.Point [verified in 2.0]
SegmentedControl().subviews does not work properly- image_quad from arguments are incorrectly scaled. (workaround seems to be to multiply by 2, though i suspect this may depend on device)[not tested yet in 160037]
- ui editor does not save the currently editing view when switching focus to console (unlike script editor, which does). This leads to confusion when loading/presenting a view from the console( why the $!?& is the button action i added not getting called?). It does seem to save when switching to a different file tab. Seems like whenever console input gets focus, play is pushed, or an action run, any dirty files should be written to disk first.
- editor strips off trailing newlines from files.
- syntax highlighting for multiple same line imports (
import ui, os
) only highlights first module - SpriteNode without a texture=None does not work.
- IndentationErrors in the traceback viewer do not navigate to, or highlight the offending line, despite listing the line number in the traceback.
- TableView does not honor
flex
orframe
in constructor. - ~~App Extension does not work on 32 bit devices. ~~
- autocomplete in console: autocomplete after an equal sign (without a space) results in whole line getting replaced.
- If a quote is opened in the console input, copy/paste from the console does not work (copy is from the input, not output)
- scene.ShapeNode requires a
path
argument, otherwise attribute error occurs. - Vector2, etc type error when using future.division.
- Rect.inset does not work correctly when the Rect has negative widths (need to change sign of inputs)
suggestions
- (suggestion) Views presented as panel should have the "dock" button to return to the editor (rather than first tabbing to console). This goes for webbrowsers too.
- (suggestion) option to open contextmenu help in docked doc window rather than popover quickhelp. or, a button in quickhelp to open same page in full docs.
- (suggestion) ability to manage
editor
tabs. - (suggestion) Community forum link should open in an internal webbrowser, rather than launching safari. Or, this should be an option. With the new docking mode, it is now much easier to paste back and forth between editor and forums.
updated 11/13
-
Bug in the
scene
module:The documentation for
SpriteNode
states, that a node without texture is rendered as a rectangle with the color of the color attribute. However creating aSpriteNode
like this creates an error:node = SpriteNode(texture=None,position=(10,10),color='blue') TypeError: Expected Texture or image name.
-
@Moe a workaround: omit the texture argument if you don't want a texture.
-
BUG:
ui.TableView
does not respect eitherframe
orflex
attributes. Meaning, it never resizes if you do it programmatically. I haven't tried it another way. A work-around for those wondering:table = ui.TableView() table_pntr = ObjCInstance(table) table_pntr.frame = CGRect(CGPoint(0,0), CGSize(500,500))
Also, can we get a
PhysicsNode
in thescene
module?
-
blmacbeth, the issue seems to be that these are not accepted in the constructor. However, setting .frame and .flex attributes after you create the TableView works fine.
import ui v=ui.View(frame=([0,0,200,200])) t1=ui.TableView() t1.frame=(0,0,200,200) t1.flex='w' t2=ui.TableView() t2.frame=(0,250,300,300) v.add_subview(t1) v.add_subview(t2) v.present('panel')
-
I have noticed that sys.lath no longer contains . or Documents.
I thought in 160032 this was changed to- Changed the order of
sys.path
once more, so that files in the main documents folder can't shadow standard library modules anymore. Imports from the current directory should also work again.
which I think had documents and '.' just at the end...
- Changed the order of
-
@JonB The directory of the current script is still in
sys.path
, just as an absolute path instead of.
. I don't remember the details right now, but there were some subtle problems with having.
insys.path
.I think Documents used to be in the import path, but I don't really think it should be there. That's what site-packages is for.
-
There's still that bug in syntax highlighting where if you have multiple same-line imports (
import ui, os
) only the first module will be correctly highlighted.
-
@omz
Oh, I see, the starting path of a script is added to sys.path as an absolute path, but not in the interactive console, and not when using chdir. That leads to a confusing situation where imports work when running a script, but not when pasting the same line by line.There is something else strange happening with
from . import xxx
package imports, but not sure if it is related. Gittle imports did not workfrom . import path
(complained about path, perhaps there is a conflicting path.py?). Strangley this woed wh gittle was in site-packages, but not whn it was in stash/lib ( and that path was on sys.path). I will need to experimt with this a bit.
-
The current beta expires in 21 hours.
-
13 hours now... Getting down to the wire
While it would be interesting to see what happens when the beta expires. I really prefer not to find out 😰
-
I've found the best way to contact @omz directly is through Twitter. The new beta is "processing" https://twitter.com/1defenestrator/status/670962735560134656
-
@Webmaster4o , thanks, I am not stressing about it. Just a bit of fun. If it goes off online for a day, will give me time to reflect 🤕😃
-
I've uploaded a new build a couple of hours ago. It's still "processing" unfortunately (always a bit unpredictable how long that takes). If the current build expires before the new one is ready, you'll get a "beta expired" alert when trying to launch it, but it won't disappear from your device or anything like that. You might still want to make a backup of your files.
-
Just wanted to report - 15 hours since your post and the beta is expired but the new one hasn't shown up yet.
-
It's there now.
Woke up to find the 037 beta waiting in TestFlight!
-
updated this thread for latest build.
Can anyone on ios8 using a 32 bit device check if the extension works? i.e safari share sheet, does clicking Run Pythonista Scropt do anything? this is the second build for me where it does not.
-
@omz just curious do you archive/export the bundle and then upload or do you upload through the archive manager in Xcode?
-
With the built in traceback viewer, IndentationError (expected an indented block) does not highlight the line number in the editor. This is strange, as IndentationError is a subclass of SyntaxError, which does highlight the offending line.
-
@JonB said:
Can anyone on ios8 using a 32 bit device check if the extension works? i.e safari share sheet, does clicking Run Pythonista Scropt do anything? this is the second build for me where it does not.
Thanks, I just tested it on an iPad mini with iOS 8, and it doesn't work here either. I'm looking into it, not sure yet what to make of the crash log.
-
@JonB Turns out I had accidentally left some testing code there that was using ReplayKit (iOS 9 only).