Commit graph

379 commits

Author SHA1 Message Date
Ray Schamp
de86eb3f19
Merge pull request #1691 from rschamp/storage-no-cache
Store asset objects on costumes and sounds
2018-10-25 10:15:47 +01:00
Karishma Chadha
d3e38c1ae9
Merge pull request #1640 from mzgoddard/set-procedure-param-missing
Set procedure param missing
2018-10-25 00:13:51 -04:00
Katie Broida
18c83dcc67
Prevent non-core extensions from adding monitors (#1688) 2018-10-24 16:43:01 -04:00
Ray Schamp
902aee48ee Merge branch 'develop' of https://github.com/LLK/scratch-vm into storage-no-cache
# Conflicts:
#	package-lock.json
2018-10-24 12:09:06 +01:00
Michael "Z" Goddard
afd2ed72c8
add procedure parameter used outside of proc integrations 2018-10-23 15:14:31 -04:00
Michael "Z" Goddard
58a7a6bb04
add get param blocks in wrong procedure integrations 2018-10-23 15:14:30 -04:00
Michael "Z" Goddard
ef4045aaf1
Merge pull request #1642 from mzgoddard/set-procedure-param-defaults
Set procedure param defaults
2018-10-23 15:13:16 -04:00
Michael "Z" Goddard
5e5655c916
Merge pull request #1632 from mzgoddard/stop-other-sounds
Stop other sounds
2018-10-23 15:11:08 -04:00
Ray Schamp
b47912dce4 Store asset objects on costumes and sounds
Stop using storage for in-memory storage, and keep these on the vm objects. Towards https://github.com/LLK/scratch-vm/issues/1577
2018-10-23 11:10:50 +01:00
DD
91e2f3a935 Revert 1643 Confirm extension in use in sb2 serialization 2018-10-18 11:06:13 -04:00
Katie Broida
899ce56214
Confirm extension in use in sb2 serialization (#1643)
Add a check when serializing sb2 projects to see whether an extension is actually in use in a block or a visible monitor.
2018-10-17 10:49:08 -04:00
Michael "Z" Goddard
2b257dde57
add getProcedureParamNamesIdsAndDefaults
Use getProcedureParamNamesIdsAndDefaults to get the defaults along with
names and ids so defaults may be set for a procedure call if the
parameter is not provided.
2018-10-16 16:31:45 -04:00
Michael "Z" Goddard
ca38fb2cc3
add recursive procedure default parameter execute integrations 2018-10-16 16:31:45 -04:00
Andrew Sliwinski
23f6346045
Merge pull request #1631 from mzgoddard/stop-other-asks
Stop other asks
2018-10-15 13:16:49 -04:00
Michael "Z" Goddard
4d56dd3872
ask and wait units should define target.sprite 2018-10-05 16:42:46 -04:00
Michael "Z" Goddard
ecf9a359e2
fix inaccuracy in 760 unit regression test 2018-10-05 16:34:01 -04:00
Michael "Z" Goddard
533109541b
add broadcast and wait integration that ensures it yields a tick 2018-10-05 16:33:56 -04:00
Michael "Z" Goddard
f1af5b5e99
add order changing broadcast and wait with same message integration 2018-10-05 14:54:02 -04:00
Michael "Z" Goddard
afc546077e
add execution order execute integration tests
- rename order-clones-2 -> order-clones-static-2
2018-10-05 13:26:05 -04:00
Michael "Z" Goddard
a22b74e6cb
Merge pull request #1617 from mzgoddard/execution-order
Sprite clone and initial draw order execution order
2018-10-05 13:25:22 -04:00
Andrew Sliwinski
853de9fa7d
Merge pull request #1593 from joker314/fix/compare-strings
Fix locale-dependant string comparison operators to match 2.0
2018-10-04 14:38:40 -04:00
Andrew Sliwinski
e024b7d369
Add case from GH-1526 to unit test suite 2018-10-04 14:36:44 -04:00
Michael "Z" Goddard
574749bbba
add STOP_FOR_TARGET runtime event and respond for ask blocks
Remove questions for targets that are individually stopping and
progress the asked question if it is from a stopping target.
2018-10-03 10:38:14 -04:00
Michael "Z" Goddard
dec0cd10df
add execution order execute integration tests 2018-10-03 10:35:24 -04:00
Andrew Sliwinski
7a28d5e41d
Merge pull request #1586 from mzgoddard/variable-id-type
conflict workaround for variables and lists of the same name
2018-10-01 18:27:59 -04:00
Michael "Z" Goddard
8c98000caf
add execute integration masked variable and list test 2018-09-27 11:57:24 -04:00
Chris Willis-Ford
c541e87da5
Merge pull request #1587 from cwillisf/util_token-bucket
Add a rate-limited task queue utility
2018-09-19 10:48:04 -07:00
Ray Schamp
416377ad2d
Merge pull request #1594 from rschamp/renderer-getter
Add API for the attached renderer
2018-09-18 16:11:53 -04:00
Ray Schamp
6c94c85c9a Add API for the attached renderer
Resolves #1281
2018-09-18 15:47:47 -04:00
Karishma Chadha
0ad59d3859
Merge pull request #1563 from mzgoddard/get-param-condition-input
Get param condition input
2018-09-18 15:29:43 -04:00
jokebookservice1
bbefc18158
test: correct typo for function name 2018-09-17 23:25:40 +01:00
jokebookservice1
460b1745be
test: Ensure less-than compares well 2018-09-17 23:12:30 +01:00
Christopher Willis-Ford
69ba2045fe Rename TokenBucket to TaskQueue 2018-09-14 22:34:34 -04:00
Christopher Willis-Ford
70c6ad4ef1 Add cancelAll method to clear the task queue 2018-09-14 22:10:17 -04:00
Christopher Willis-Ford
33e0197ad5 Add tests for TokenBucket 2018-09-13 17:05:00 -04:00
Chris Willis-Ford
8977ce1e93
Merge pull request #1565 from cwillisf/extension-monitors
Extension monitors
2018-09-12 18:10:12 -04:00
Christopher Willis-Ford
2a13697621 Add tests for getLabelForOpcode 2018-09-12 17:23:01 -04:00
Karishma Chadha
91d2663c35
Merge pull request #1564 from mzgoddard/monitor-rename
Rename Stage object and Stage monitors together
2018-09-12 12:11:45 -04:00
Michael "Z" Goddard
cbb79c40ad
add monitors-stage-name test
Test that an sb2 with a stage name other than Stage and a monitor on
one of its variables is able to load.
2018-09-11 15:10:14 -04:00
Michael "Z" Goddard
18c565794e
support execute integration tests with monitor threads
Do not count monitor threads towards the "active" number of threads.
The test is complete when there are no non-monitor threads running.
2018-09-11 15:10:14 -04:00
Michael "Z" Goddard
d8309e9d24
add execute integration procedures-boolean-reporter-bug test 2018-09-07 19:06:18 -04:00
Evelyn Eastmond
ec432e3b2f Refactor for hardware extensions (#1555)
* Beginning refactor: renaming 'device' to 'peripheral', shortening function names, reordering functions, etc.

* Continuing refactoring: renaming some functions to be more verbose in the runtime, adding JSDocs, etc.

* Changing 'device' to 'peripheral', etc.

* Changing 'session' to 'socket'.

* Fixing EV3 menus and menu arg validation, reordering functions, etc.

* Add _send, add some references to documentation, etc.

* Factored out _outputCommand and _inputCommand, renamed some enums, etc.

* Fixed _outputCommand, some other minor cleanup.

* Make _outputCommand and _inputCommand public.

* Added TODO.

* Renamed BLE UUID enums to be clearer.

* Change WeDo2 in comments to WeDo 2.0, etc.

* Changed some WeDo2Motor command names, cleaned up some JSDocs.

* Beginning a major EV3 refactor.

* WeDo2 formatting and comment changes.

* Motor refactoring in EV3: motorTurnClockwise and motorTurnCounterClockwise initial working state.

* Add reminders to possibly cast motor menu args in WeDo2.

* Continue to move motor commands in EV3 to EV3Motor class, don't create new EV3Motor on every poll cycle, etc.

* Factoring EV3 polling value commands, etc.

* Fixing EV3 motor power, position and button pressed, and some commenting, etc.

* Move EV3 motor position parsing to EV3Motor class, move directCommand and directCompoundCommand functions, some commenting, etc.

* Changed WeDo2 motor label enum name.

* Removed some EV3 motor functions that aren't needed, changed menu label enum names, moved some opcodes up to enums.

* Fixing comments and documentation.

* Some commenting.

* Adding further documentation and references to PDFs, changed reply check to be safer, etc.

* Some comment changes.

* Moving some functions around in EV3 and WeDo2 to match.

* Commenting, etc.

* Some renaming of session, etc.

* Fix stopAllMotors in EV3.

* Fixing clearing of motors in EV3.

* Some comment changes.

* Change runtime .extensions/registerExtension to .peripheralExtensions/registerPeripheralExtension.

* Renaming outputCommand/inputCommand to generateOutputCommand/generateInputCommand, etc.

* Moved motorCommandIDs to EV3Motor class, renamed directCommand to generateCommand, etc.

* Adding a reminder to rename something.

* JSDoc fix in EV3Motor class.

* Fixing microbit function name.

* Adding a todo item.

* Changing Ev3 menu formats to be backwards compatible, moving a BLE function up.

* Fixing EV3 ports again, and button pressed returning a boolean.

* Fixing menu value to be a string in EV3.
2018-09-07 17:01:23 -04:00
Eric Rosenbaum
39be6d873c
Rate-limiting with a token bucket for the WeDo extension (#1540)
* Initial version of token bucket

* Add rateLimiter util

* Remove check for motor.isOn in stopAllMotors

* Fix unit test

* Fix unit test with stubbed timer, and cleanup

* Add comment

* Reduce WeDo rate limit to 20 sends/sec

* Move rate limit into a constant

* Stop button stops motors and tone even if rate limit exceeded
2018-08-29 17:37:59 -04:00
Ray Schamp
9c556219ce
Merge pull request #1528 from kchadha/fix-comment-import
Fix Comment import/save/load issue
2018-08-28 16:04:53 -04:00
Karishma Chadha
2c24ef37a0 Fix issue where block comments converted to workspace comments import correctly when there are no scripts on the workspace. 2018-08-24 14:29:10 -04:00
Karishma Chadha
c65c06534e Add fixture and integration test for the project load failure that was resolved. 2018-08-23 18:56:22 -04:00
Karishma Chadha
50f65b4e60 Add test fixture and integration test. 2018-08-22 19:06:06 -04:00
Karishma Chadha
3fb48f9aa4 Add and update tests for deleteCostume functionality. 2018-08-21 15:42:14 -04:00
Karishma Chadha
6f9da87abe
Merge pull request #1503 from kchadha/restore-sound
Restore sound
2018-08-21 15:28:39 -04:00
Karishma Chadha
a8c56948cb Clean up test. 2018-08-21 15:23:14 -04:00