edit in main.lua at line 16
[6.9]→[6.9:63](∅→∅),
[6.63]→[4.11:129](∅→∅),
[6.121]→[6.11:130](∅→∅),
[4.129]→[6.11:130](∅→∅),
[6.169]→[6.11:130](∅→∅),
[6.130]→[6.240:318](∅→∅),
[6.240]→[6.240:318](∅→∅) − function App.version_check()
− Mode = 'version_check'
− Supported_versions = {'11.5', '11.4', '11.3', '11.2', '11.1', '11.0', '12.0'} -- put the recommended version first
− local minor_version
− Major_version, minor_version = love.getVersion()
− Version = Major_version..'.'..minor_version
− if array.find(Supported_versions, Version) then
− Mode = 'run'
− end
− end
−
edit in main.lua at line 18
+ Supported_versions = {'11.5', '11.4', '12.0'} -- put the recommended version first
+ check_love_version_for_tests()
+
edit in main.lua at line 25
[6.127]→[6.0:105](∅→∅),
[6.127]→[6.0:105](∅→∅),
[6.127]→[6.0:105](∅→∅) − -- Current_app =
− -- | run
− -- | source
− -- | {name=warning message='...' next_app = run|source}
resurrect zombie in main.lua at line 25
[6.105]→[6.105:106](∅→∅),
[6.105]→[6.105:106](∅→∅),
[6.105]→[6.105:106](∅→∅) resolve order conflict in main.lua at line 25
edit in main.lua at line 26
[6.106]→[6.20:73](∅→∅),
[6.106]→[6.20:73](∅→∅),
[6.106]→[6.20:73](∅→∅),
[6.30]→[6.30:31](∅→∅),
[6.186724]→[6.107:146](∅→∅),
[6.186724]→[6.107:146](∅→∅),
[6.186281]→[6.186281:186411](∅→∅),
[6.186281]→[6.186281:186411](∅→∅),
[6.186411]→[6.74:113](∅→∅),
[6.186411]→[6.74:113](∅→∅),
[6.57]→[6.186411:186477](∅→∅),
[6.113]→[6.186411:186477](∅→∅),
[6.186411]→[6.186411:186477](∅→∅),
[6.186411]→[6.186411:186477](∅→∅),
[6.31]→[5.20:173](∅→∅),
[6.31]→[5.20:173](∅→∅) − if Current_app == nil then
− Current_app = 'run'
−
− elseif current_app_is_warning() then
− if Current_app == 'run' then
− run.initialize_globals()
− elseif Current_app == 'source' then
− source.initialize_globals()
− elseif current_app_is_warning() then
− else
− assert(false, 'unknown app "'..Current_app..'"')
− end
− function App.initialize_globals()
− Supported_versions = {'11.5', '11.4', '12.0'} -- put the recommended version first
− check_love_version_for_tests()
edit in main.lua at line 30
−
− -- Another weird bit for a class of corner cases. E.g.:
− -- * I press ctrl+e, switch Current_app. I don't want the new app to receive
− -- text_input and key_release events.
− -- If I try to avoid text_input events by switching modes on key_release, I
− -- hit a new problem:
− -- * I press ctrl+e, am running an untested version, Current_app goes to
− -- 'warning', and immediately rolls back out of 'warning' in the
− -- key_release event.
− -- Skip_rest_of_key_events is ugly, but feels cleaner than creating yet
− -- another possible value for Current_app.
− Skip_rest_of_key_events = nil
edit in main.lua at line 31
[6.1052]→[6.2322:2350](∅→∅),
[6.1052]→[6.2322:2350](∅→∅) − -- called only for real run
edit in main.lua at line 39
+ -- called only for real run
edit in main.lua at line 48
[6.2567]→[6.12:12](∅→∅),
[6.187263]→[6.283:322](∅→∅),
[6.187263]→[6.283:322](∅→∅) −
− elseif current_app_is_warning() then
resolve order conflict in main.lua at line 48
edit in main.lua at line 51
[6.187329]→[6.673:697](∅→∅),
[6.187329]→[6.673:697](∅→∅) edit in main.lua at line 78
[6.3078]→[6.11:11](∅→∅),
[6.187493]→[6.1030:1076](∅→∅),
[6.187493]→[6.1030:1076](∅→∅) −
− if current_app_is_warning() then return end
resolve order conflict in main.lua at line 78
edit in main.lua at line 78
+ end
+
+ check_love_version()
+ end
+
+ function check_love_version()
+ if array.find(Supported_versions, Version) == nil then
+ Mode = 'version_check'
+ -- continue initializing everything; hopefully we won't have errors during initialization
replacement in main.lua at line 184
− love.graphics.printf(("This app doesn't support version %s; please use version %s. Press any key to try it with this version anyway."):format(Version, Supported_versions[1]), 40,40, 400)
+ love.graphics.printf(("This app hasn't been tested with LÖVE version %s; please switch to version %s if you run into issues. Press any key to continue."):format(Version, Supported_versions[1]), 40,40, 400)
edit in main.lua at line 188
[6.6071]→[6.20:20](∅→∅),
[6.198]→[6.1077:1116](∅→∅),
[6.198]→[6.1077:1116](∅→∅),
[6.198]→[6.1077:1116](∅→∅),
[6.690]→[6.1117:1175](∅→∅),
[6.690]→[6.1117:1175](∅→∅),
[6.690]→[6.1117:1175](∅→∅),
[6.187951]→[6.1177:1177](∅→∅),
[6.187951]→[6.1177:1177](∅→∅) −
− elseif current_app_is_warning() then
− love.graphics.printf(Current_app.message, 40,40, 600)
−
resolve order conflict in main.lua at line 188
edit in main.lua at line 193
− if current_app_is_warning() then return end
edit in main.lua at line 252
[6.67]→[6.24:24](∅→∅),
[6.188858]→[6.1317:1349](∅→∅),
[6.188858]→[6.1317:1349](∅→∅),
[6.188858]→[6.1317:1349](∅→∅),
[6.1349]→[6.809:844](∅→∅),
[6.1349]→[6.809:844](∅→∅),
[6.1349]→[6.809:844](∅→∅),
[6.1154]→[6.1350:1359](∅→∅),
[6.1154]→[6.1350:1359](∅→∅),
[6.1359]→[6.845:867](∅→∅),
[6.1359]→[6.845:867](∅→∅),
[6.867]→[6.1409:1446](∅→∅),
[6.1409]→[6.1409:1446](∅→∅),
[6.1409]→[6.1409:1446](∅→∅),
[6.189585]→[6.1447:1482](∅→∅),
[6.189585]→[6.1447:1482](∅→∅) −
− Skip_rest_of_key_events = nil
− if current_app_is_warning() then
− else
− clear_warning()
− Skip_rest_of_key_events = true
− Skip_rest_of_key_events = true
resolve order conflict in main.lua at line 252
edit in main.lua at line 256
[6.1049]→[6.136:136](∅→∅),
[6.1512]→[6.1178:1224](∅→∅) −
− if current_app_is_warning() then return end
resolve order conflict in main.lua at line 256
edit in main.lua at line 262
[6.189951]→[6.1483:1528](∅→∅),
[6.189951]→[6.1483:1528](∅→∅) − if Skip_rest_of_key_events then return end
resolve order conflict in main.lua at line 262
edit in main.lua at line 269
[6.1118]→[6.138:138](∅→∅),
[6.57]→[6.1225:1271](∅→∅) −
− if current_app_is_warning() then return end
resolve order conflict in main.lua at line 269
edit in main.lua at line 272
[6.456]→[6.868:909](∅→∅),
[6.456]→[6.868:909](∅→∅),
[6.456]→[6.868:909](∅→∅) − elseif current_app_is_warning() then
resolve order conflict in main.lua at line 272
edit in main.lua at line 275
[6.503]→[6.503:507](∅→∅),
[6.507]→[4.131:131](∅→∅),
[6.190302]→[6.1574:1650](∅→∅),
[6.190302]→[6.1574:1650](∅→∅),
[6.190302]→[6.1574:1650](∅→∅),
[6.190738]→[6.1368:1414](∅→∅),
[6.190738]→[6.1368:1414](∅→∅),
[6.190074]→[6.1272:1318](∅→∅),
[6.190074]→[6.1272:1318](∅→∅),
[6.889]→[6.1320:1320](∅→∅),
[6.889]→[6.1320:1320](∅→∅),
[6.889]→[6.1320:1320](∅→∅),
[6.889]→[6.1320:1320](∅→∅),
[6.1071]→[6.1321:1367](∅→∅),
[6.1071]→[6.1321:1367](∅→∅),
[6.1071]→[6.1321:1367](∅→∅),
[6.1320]→[6.1098:1144](∅→∅),
[6.925]→[6.1098:1144](∅→∅),
[6.925]→[6.1098:1144](∅→∅),
[6.925]→[6.1098:1144](∅→∅),
[6.191780]→[6.1192:1474](∅→∅),
[6.191780]→[6.1192:1474](∅→∅),
[6.191780]→[6.1192:1474](∅→∅),
[6.268]→[6.1475:1577](∅→∅),
[6.268]→[6.1475:1577](∅→∅) − end
−
− if Skip_rest_of_key_events then return end
− if Current_app == 'run' then
− if current_app_is_warning() then return end
− if current_app_is_warning() then return end
−
− if current_app_is_warning() then return end
− if current_app_is_warning() then return end
− end
−
− function current_app_is_warning()
− return type(Current_app) == 'table' and Current_app.name == 'warning'
− end
−
− function show_warning(message)
− assert(type(Current_app) == 'string')
− Current_app = {
− name = 'warning',
− message = message,
− next_app = Current_app,
− }
−
− function clear_warning()
− assert(type(Current_app) == 'table')
− Current_app = Current_app.next_app
resurrect zombie in main.lua at line 275
[6.1577]→[6.1577:1581](∅→∅),
[6.1577]→[6.1577:1581](∅→∅) resolve order conflict in main.lua at line 275
edit in main.lua at line 276
[6.1581]→[5.175:175](∅→∅),
[6.1581]→[5.175:175](∅→∅),
[6.187701]→[6.981:1027](∅→∅),
[6.187701]→[6.981:1027](∅→∅),
[6.187701]→[6.981:1027](∅→∅),
[6.4536]→[6.1029:1029](∅→∅),
[6.4536]→[6.1029:1029](∅→∅),
[6.4536]→[6.1029:1029](∅→∅),
[6.1320]→[6.698:785](∅→∅),
[6.1320]→[6.698:785](∅→∅),
[6.785]→[6.323:521](∅→∅),
[6.785]→[6.323:521](∅→∅),
[6.521]→[6.1031:1136](∅→∅),
[6.1031]→[6.1031:1136](∅→∅),
[6.1031]→[6.1031:1136](∅→∅),
[6.187407]→[6.522:568](∅→∅),
[6.187407]→[6.522:568](∅→∅) −
− if current_app_is_warning() then return end
−
− function check_love_version()
− if array.find(Supported_versions, Version) == nil then
− show_warning(
− ("This app hasn't been tested with LÖVE version %s; please switch to version %s if you run into issues. Press any key to continue."):format(Version, Supported_versions[1]))
− -- continue initializing everything; hopefully we won't have errors during initialization
− end
− end
−
− if current_app_is_warning() then return end
resolve order conflict in main.lua at line 276
edit in app.lua at line 10
+ Version, Major_version = App.love_version()
replacement in app.lua at line 16
− error('There were test failures:\n\n'..table.concat(Test_errors))
+ local error_message = ''
+ if Warning_before_tests then
+ error_message = Warning_before_tests..'\n\n'
+ end
+ error_message = error_message .. ('There were %d test failures:\n%s'):format(#Test_errors, table.concat(Test_errors))
+ error(error_message)
edit in app.lua at line 25
replacement in app.lua at line 63
[6.5849]→[6.1479:1653](∅→∅),
[6.5849]→[6.1479:1653](∅→∅),
[6.17]→[6.630:639](∅→∅),
[6.5830]→[6.630:639](∅→∅),
[6.209590]→[6.17:17](∅→∅),
[6.209589]→[6.209589:209590](∅→∅) − function App.love_version()
− local major_version, minor_version = love.getVersion()
− local version = major_version..'.'..minor_version
− return version, major_version
− end
−
− App = {}
−
−
+
+ App = {}
+
+ function App.love_version()
+ local major_version, minor_version = love.getVersion()
+ local version = major_version..'.'..minor_version
+ return version, major_version
+ end
edit in app.lua at line 489
[6.8166]→[6.1924:1924](∅→∅),
[6.35229]→[6.1654:1922](∅→∅),
[6.35229]→[6.1654:1922](∅→∅),
[6.54]→[6.1432:1478](∅→∅),
[6.54]→[6.1432:1478](∅→∅) −
− local error_message = ''
− if Warning_before_tests then
− error_message = Warning_before_tests..'\n\n'
− end
− error_message = error_message .. ('There were %d test failures:\n%s'):format(#Test_errors, table.concat(Test_errors))
− error(error_message)
− Version, Major_version = App.love_version()
resolve order conflict in app.lua at line 489
edit in Manual_tests.md at line 15
[6.40]→[6.40:179](∅→∅),
[6.40]→[6.40:179](∅→∅) − - run with an unsupported version. Error message pops up and waits for a key. The app attempts to continue, and doesn't receive the key.
resurrect zombie in Manual_tests.md at line 15
[6.179]→[4.169:271](∅→∅),
[6.179]→[4.169:271](∅→∅) +
+ Code loading:
+ * run love with directory; text editor runs
+ * run love with zip file; text editor runs
edit in Manual_tests.md at line 15
+ - run with an untested version. Error message pops up and waits for a key. The app attempts to continue, and doesn't receive the key.
+ - run with a LÖVE v12 release candidate. No errors; it is a supported version. All tests pass.
edit in Manual_tests.md at line 21
[6.40]→[6.1929:2163](∅→∅) − - run with an untested version. Error message pops up and waits for a key. The app attempts to continue, and doesn't receive the key.
− - run with a LÖVE v12 release candidate. No errors; it is a supported version. All tests pass.
resolve order conflict in Manual_tests.md at line 21
edit in Manual_tests.md at line 53
[6.16279]→[6.2165:2165](∅→∅),
[6.211526]→[6.1670:1918](∅→∅),
[6.211526]→[6.1670:1918](∅→∅),
[6.1918]→[6.1971:2103](∅→∅),
[6.1971]→[6.1971:2103](∅→∅),
[6.1971]→[6.1971:2103](∅→∅) −
− * run with an untested version. Error message pops up. Press a key. Text editor comes up, and doesn't receive the key. Press ctrl+e. Error pops up. Press a key. Source editor opens up. Press ctrl+e. Error pops up. Press a key. Text editor returns.
− * create a couple of spuriously failing tests. Run with an untested version. Error message includes message about untested version.
resolve order conflict in Manual_tests.md at line 53