Codea 3.6.1 (353)

@Simeon - ignore my reported error after installing this version - forgot, first time running crashes.

Could you give a little more detail on what you want testing here - what’s new?

@Simeon - one funny, checking that the version was in the system, tapped on TLL logo on main screen and a dialogue was loaded asking me to login with my AppleID - never seen this before.

Also, menu bar response with regard to three central dots much improved - requires a touch in a much smaller area, meaning menu bar tab selection improved. Thanks for that.

@Bri_G As for the prompt for AppleID, I didn’t get that, but I remember see it a long time ago (years) when TLL was thinking about In-App-Purchases. Haven’t seen it since. There’s some documentation (link) in the text below where you see the 4.0 runtime. This is going to be a mystery for awhile. Something different to mess with.

@Simeon Not sure what the [<-] is for at the top middle of the screen when the code is run and errors show in the output area. Tried tapping on it but the split screen stuff takes over.

When I try to run a simple print program, it runs OK. If I close the code and run it again I get a lot of errors messages (error requiring package). If I add a blank line to the code, it runs OK again, but anytime after that puts out the errors again until I do something in the editor.

@Simeon - tried to run the example at the top of the documentation but wouldn’t run. Removed all the line numbers present from the cut and paste (please remove them). Threw up error when run.

Cut and pasted the code from the setup() section of the documentation, ran but fired up errors - posted an image capture below. One point - trivial for the future, could you make the error reporting window in the sidebar scrollable as in the current version 3, and reduce the text size so we can see more of the reported error. This one was quite extensive.

Clarification, by scrollable I mean moving the top of the lower widow higher.

started testing the new 4 runtime, same problem as Bri_G, i see a bunch of error about not being able to find the files for the tabs, do we need to do the “import” stuff now?

or maybe just a bad build -
Base empty project, can’t find the Main file but it’s looking for not Main.lua? actually i should clarify, this is the base project template that still uses craft namespace

but using an actual empty project with an added class in a tab throws errors

@Bri_G check out the migration docs here, this should give you a good idea on what needs testing

@skar - thanks for the links, the documentation will take a lot of digesting. Looks better on my Mac than fiddling with the Pad.

Not 100% sure, but on the Pad in Portrait the editing and side panel didn’t look like yours - were your images form a Mac/PC? or - could it just be that Landscape is better defined than Portrait?

@Simeon In portrait mode, the [<-] at the top of the screen overlays the … for split screen mode. If you try to press it to hide the output and parameter windows, the iPad tries to do the split screen stuff instead of switching to full screen.

@Simeon The fix works. A program can be run multiple times without kicking out an error message.

@Simeon I’m sure there’s a lot more changes to be made, but what I see so far is 4.x runs about 50% slower than 3.x. Also, a print of a string only show a max of 3,072 characters in the output area. This is base on my Pi program that prints up to 200,000 digits of Pi. That’s one of the programs I use to test the speed of the different Codea releases to see if releases are faster or slower than previous versions. I noticed the slower speed and only 3072 digits were shown.

I picked that program because it was small and didn’t use a lot of functions that might not work on 4.x .

@Simeon How much testing should we be doing. I’m finding things, but I don’t know if they’re really errors or they’re just things that aren’t fully operational yet.

Hey guys, this experimental release of the 4.x runtime should be treated as an early alpha at best…

The parameter sidebar and console is temporary and will be replaced with a proper one once UI integration is finished. The current one is using ImGui and I expect it will be a lot slower than the native one (it definitely doesn’t like printing lots of values)

We could have waited longer to dump the new runtime on you guys but I thought it was already taking far too long and so we compromised with this experimental switch allowing for (very) early access with the hope that some good feedback and stress testing would move things along

Here be dragons and a lot of hidden and missing things. It’s the biggest project I’ve ever worked on and a lot of that was mainly solo engine work as Simeon has been needed for Codea upkeep and maintained

So I expect a lot of feedback, error reports and general confusion which I hope we can address and settle down over time

how would you like us to report the bugs? i can’t get past this bug with classes, requires a name?

I changed the class system to use which requires a name when you use class(name) so you would do test = class('test') but I can modify middleclass to make the name optional

@skar @dave1707 @Bri_G thank you all for the valuable feedback! Regarding testing and reporting — we are always happy to hear about anything you think should change or is a bug, it may be something we know about or plan to fix, but it doesn’t hurt to mention them

So that we don’t end up repeating ourselves, I’ve made a public document you can log your bugs into:

I’ve added some example ones. Feel free to add or edit items as necessary

it does seem redundant unless it serves a purpose like being able to get the name of the class from an instance?

@skar It does, if you print out an instance of the class it will show up, but yeah it can be made optional

error indexing nil global “physics”

physics.body ←

error indexing nil global “asset”

asset. documents ←

@Simeon @John - setContext() throws up an error. Looking through initial docs link just has the heading. Will check through links from @skar.

Found recommended solution using

require ‘legacy’:export()

Came back with an error ‘Error requiring package (Main)’

Should that have been import.