in both Legacy (3.x) and Modern (4.X), on iPad Pro M1, code 3.16 (but problem already there since 3.14), “require()” loading assets takes more and more time when assets are located on iCloud (even if they are in cache on my device)
Open File1, execute (CMD R), stop, exec, stop, exec, stop … takes more and more time to load and execute when the files are located on iCloud. With significant libraries, first exec could be straightforward at first sight, then leads to minutes (!) to show the left hand side panel, then again minutes of wait to execute.
Running on MacOs 26.4.1 (M1PRO 32Gb) leads to similar behavior (fast first exec, longer subsequent executions, then crashes).
Example of content for test_main:
require(asset.icloud.test_07_lib)
-- test_07
-- Use this function to perform your initial setup
function setup()
print("Hello World!")
if unit_test() then
print("UT: ok")
else
print("UT: failed")
end
end
function unit_test()
cl = class_lib(4)
print("cl.x = ",cl.x)
print("cl.coeff= ",cl.coeff)
-- (2 * 4) + (1 * coef=3.14159) + 2 > 13.14159
return cl:compute(2,1,2) == 13.14159
end
Example of content for test_07_lib:
-- test_07_lib (tab class_lib)
class_lib = class("class_lib")
function class_lib:init(x)
-- you can accept and set parameters here
self.x = x
self.coeff = 3.14159
end
function class_lib:draw()
-- Codea does not automatically call this method
end
function class_lib:touched(touch)
-- Codea does not automatically call this method
end
function class_lib:compute(a, b, c)
return (a * self.x) + (b * self.coeff) + c
end
You’re not the only one to notice iCloud slowing things down in different ways, for sure. Codea iCloud stuff is nice to have when you need it but in general I prefer to keep projects local, and sync them between devices with WorkingCopy.
Thank you @UberGoober for your answer, I thought I was the only one encountering this type of issue.
I used to work with WorkingCopy in parallel to Pyto and/or Pythonista, I’ve not yet tried on Codea … Thks for this advice.
Best regards
F
The trick with Codea is getting the repository to sync with the project as a “document” under the sync menu. But aside from a few minor glitches I love working copy.
@ftoucodea@UberGoober A new build 3.17 (610) is available on TestFlight with a potential fix for slow project performance when using iCloud. We’d appreciate it if you could test it and share your feedback.
Thank you for the reactiveness of the team,
The issue seems to be corrected, launching the execution of a Lua Code is now fast, as it was in the past years. Wherever the code is located (iCloud or locally). Good job ! I hope this will help you improve your set of non regretion & automated tests
Best regards
F