humbletim
132a889f74
* Add Qt::DirectConnection to signalHandlerException
...
* CR feedback / coding standards
2017-02-22 20:36:49 -05:00
humbletim
417587dcda
* Update per CR feedback / code standards
...
* Cull log spam
* Add tryLock to deferred processor to preempt unnecessary loadEntityContent round-trips
2017-02-22 15:22:56 -05:00
humbletim
b15956278c
separate out supporting changes into 21114-part2 branch
2017-02-16 07:40:19 -05:00
humbletim
9b0bee92d1
add executeOnScriptThread
2017-02-11 06:21:11 -05:00
humbletim
0f7652e173
* integrate with latest master
...
* consolidate emit entityScriptDetailsUpdated calls
* limit maxRetries to 1 when isEntityServerScript()
2017-02-11 06:00:31 -05:00
humbletim
831bf93500
* refactor ScriptCache per FIXMEs
...
* include error details in BatchLoader results
* update EntityServerScript properties in edtior to reflect more granular statuses
* ScriptEngine plumbing in prep for require/module integration
2017-02-11 04:47:31 -05:00
Brad Hefta-Gaub
74f10a1e7f
Merge pull request #9603 from huffman/feat/trace-thread-script
...
Add thread names and scripts to chrome traces
2017-02-09 13:00:05 -08:00
Ryan Huffman
f75eceda65
Add entity PPS per script configuration
2017-02-08 13:11:18 -08:00
Ryan Huffman
55df6f8f76
Add tracing to ScriptEngine and EntitiesScriptingInterface
2017-02-03 09:45:33 -08:00
Ryan Huffman
f2638637f7
Add thread names to traces
2017-02-03 09:18:58 -08:00
Seth Alves
91e542a7a7
ModelScriptingInterface::meshToOBJ takes a list of MeshProxys instead of just one
2017-01-31 21:26:49 -08:00
Seth Alves
541692c5ca
start on scripting interface to allow saving polyvox meshes to obj files
2017-01-28 15:38:18 -08:00
Seth Alves
c317ba8054
merge from upstream
2017-01-25 15:57:53 -08:00
Ryan Huffman
9b1cd52fb4
Add the ability to get the context that a script is running in
2017-01-23 08:58:01 -08:00
Clément Brisset
6da188b6ae
Merge pull request #33 from huffman/feat/entity-server-script-property
...
Fix compilation error and move MessageID to CilentServerUtils
2017-01-20 17:37:01 -08:00
Ryan Huffman
be9b19e534
Fix default param ref failing on non-MSVC builds
2017-01-20 16:43:35 -08:00
Clément Brisset
95f07f3917
Merge pull request #32 from huffman/feat/entity-server-script-property
...
PR FIxes
2017-01-20 15:39:22 -08:00
Ryan Huffman
888d7ab03d
Add exception information to script status
2017-01-20 15:33:48 -08:00
Stephen Birarda
25bd6fa2c1
move recording interface to Agent/Application only
2017-01-20 10:27:08 -08:00
Ryan Huffman
c252d80782
Fix EntityScriptDetails having incorrect scriptText
2017-01-19 14:41:56 -08:00
Ryan Huffman
cbb55a06a0
Update ScriptEngine to store full running status off entity scripts
2017-01-19 13:27:44 -08:00
Seth Alves
bacc796730
Merge branch 'master' of github.com:highfidelity/hifi into update-tablet-ui-again
2017-01-11 09:54:26 -08:00
Ryan Huffman
39070fe0d1
Merge pull request #9065 from huffman/fix/script-engine-abuse
...
Fix deleteLater() vulnerability in scripts
2017-01-09 11:02:28 -08:00
Seth Alves
d072b1524a
Merge branch 'master' of github.com:highfidelity/hifi into tablet-ui
2017-01-05 15:27:11 -08:00
Ryan Huffman
601aa51392
Merge branch 'master' into fix/script-engine-abuse
2017-01-04 08:09:06 -08:00
Brad Hefta-Gaub
d440532cff
make sure RPC is timely
2017-01-03 11:10:07 -08:00
Anthony J. Thibault
00980366d6
Merge branch 'master' into tablet-ui
2017-01-03 09:45:23 -08:00
Brad Hefta-Gaub
82ab8635d7
debugging
2016-12-30 12:02:48 -08:00
Brad Hefta-Gaub
7c7d239e00
first cut at using wait signals to improve RPC timing
2016-12-30 09:13:21 -08:00
Brad Hefta-Gaub
4b9345d7c6
cleanup accidental change
2016-12-29 16:45:16 -08:00
Brad Hefta-Gaub
0c22fcb5c4
better handling of timers
2016-12-29 16:41:14 -08:00
Brad Hefta-Gaub
a72f60152b
audit use of QTimer intervals to make sure we're using Qt::PreciseTimer when appropriate
2016-12-29 08:53:37 -08:00
Brad Hefta-Gaub
6a7fa63327
classify ScriptEngine errors better, and send them as signal to JS
2016-12-20 09:00:01 -08:00
Brad Hefta-Gaub
dbbed462b4
cleanup naked qDebug() calls
2016-12-19 22:24:25 -08:00
Brad Hefta-Gaub
df954cab10
remove some log spam, recatargorize script logs to allow fine grain filtering
2016-12-19 16:15:10 -08:00
Anthony J. Thibault
d4f9d21ce8
Pass tablet QQuickItem to TabletScriptingInterface
...
Also, moved TabletScriptingInterface to script-engine library for easy access, baby.
2016-12-14 14:04:48 -08:00
Seth Alves
43b73f0380
Merge branch 'master' of github.com:highfidelity/hifi into fix-include-race
2016-11-14 10:00:46 -08:00
Ryan Huffman
51586ae0a3
Fix log typo in SpatiallyNestable
2016-11-14 09:06:11 -08:00
Seth Alves
5133ce0548
print a debug message when skipping evaluation of a previously included url
2016-11-12 10:50:21 -08:00
Ryan Huffman
4df9302af9
Disable access to deleteLater in ScriptEngine
2016-11-11 16:23:23 -08:00
Seth Alves
576eed9941
use a mutex to avoid a smaller race
2016-11-10 17:12:06 -08:00
Seth Alves
aef39ce6fa
block until follow-on includes are finished but still avoid multiple evaluation of included urls
2016-11-10 16:06:53 -08:00
humbletim
28eadc149f
switch to apply normalizeURL only and move to top of for loop
2016-11-06 16:08:42 -05:00
humbletim
d749f243c6
revert f9747d8a
(rawURL) + apply alternative approach for aligning batch-loaded script URLs
2016-11-02 14:58:50 -04:00
Anthony J. Thibault
2193c5faad
Integrated controller display from tutorial scripts + assets
2016-10-20 18:24:58 -07:00
Ryan Huffman
73a0266edb
Fix case in Script.include where urls is empty
2016-10-18 11:41:15 -07:00
Ryan Huffman
03c01bb9b0
Add exception handling to callEntityMethod calls
2016-10-07 10:30:18 -07:00
howard-stearns
6cae62f584
init the accumulator for script elapsed time
2016-10-07 09:38:30 -07:00
Ryan Huffman
bbd7174d06
Fix script paths not resolving correctly
2016-10-06 17:37:47 -07:00
Ryan Huffman
42b0d8230c
Move extract/encode enitty functions in ScriptEngine
2016-10-05 19:14:42 -07:00
Ryan Huffman
df09254437
Fix EntityItemID not being converted to string in ScriptEngine
2016-10-05 15:45:54 -07:00
Ryan Huffman
8e3f4b705f
Add entity url back into entity script filenames
2016-07-09 03:57:29 -07:00
Ryan Huffman
e3be333144
Remove 'EntityID' from entity script filename
2016-10-05 09:28:12 -07:00
Ryan Huffman
667a737018
Fix ScriptEngine not properly resolving paths
2016-10-05 09:28:12 -07:00
howard-stearns
c806f6cad2
better shutdown check for timer firings
2016-09-30 16:05:39 -07:00
Thijs Wenker
3d14a32d17
fix controller::ScriptingInterface not found warning in AC
2016-09-29 22:11:12 +02:00
elisa-lj11
cdc5dde40e
Merge remote-tracking branch 'highfidelity/master' into zip_project
2016-08-23 11:22:43 -07:00
Anthony J. Thibault
1be434342b
Work In Progress snapshot
...
* Added new PointerEvent type.
* Mouse events are still sent from Application to EntityTreeRenderer, however, EntityTreeRenderer converts them to PointerEvents
* All outgoing signals from EntityTreeRenderer use PointerEvents instead of MouseEvents
* Associated JavaScript entity methods will receive PointerEvents instead of MouseEvents
* Events from handControllerGrab.js to entities are currently broken.
2016-08-12 17:11:59 -07:00
elisa-lj11
b1b2ea48b2
Made code more QA; extra browser and download widget close upon download
2016-08-04 17:01:19 -07:00
elisa-lj11
f277a019bf
FileScriptingInterface
...
Created new .cpp and .h for the download and unzipping of a model
2016-08-04 16:46:56 -07:00
Brad Hefta-Gaub
74a3835a1e
CR feedback
2016-07-28 15:15:33 -07:00
Brad Hefta-Gaub
22619a66ba
process events also
2016-07-28 10:51:17 -07:00
Brad Hefta-Gaub
755989b8ff
don't allow punished scripts to slow stop or shutdown
2016-07-28 10:01:05 -07:00
Brad Hefta-Gaub
2d199fe3d0
rename function for better clarity
2016-07-26 08:08:44 -07:00
Brad Hefta-Gaub
a12034cb45
fix unix warning, added comments
2016-07-26 07:54:55 -07:00
Brad Hefta-Gaub
83dc9ea6bb
punish slow scripts and don't send updates while physics is still loading
2016-07-25 21:46:30 -07:00
Seth Alves
4e70e8ed42
js call to ray-pick against avatars
2016-06-28 09:55:49 -07:00
Seth Alves
49769f7d29
trying again -- frantic clicking on reload no longer appears to wedge things
2016-05-25 13:39:13 -07:00
Seth Alves
b0ce65ec01
trying to mimic previous behavior more closely
2016-05-25 11:42:06 -07:00
Seth Alves
ef709c09d0
Merge branch 'master' of github.com:highfidelity/hifi into fix-edit-js-restart
2016-05-25 09:46:30 -07:00
Seth Alves
00336f4860
Merge branch 'master' of github.com:highfidelity/hifi into fix-edit-js-restart
2016-05-23 09:58:20 -07:00
Seth Alves
40e862cf9e
quiet gcc 5 warnings
2016-05-21 16:53:01 -07:00
Seth Alves
aa58cad93e
code review
2016-05-20 09:54:54 -07:00
Zach Pomerantz
4c8ff557db
Merge branch 'master' of github.com:highfidelity/hifi into fix/debug-script-crash
2016-05-20 09:31:30 -07:00
Zach Pomerantz
8025a3f14c
Prevent crash from script timers on shutdown
2016-05-18 17:30:34 -07:00
Zach Pomerantz
c480dcfddd
Check thread validity after event processing
2016-05-18 16:26:54 -07:00
Zach Pomerantz
7d4276d15f
Merge branch 'master' of github.com:highfidelity/hifi into fix/script-thread-dtor
2016-05-16 10:51:23 -07:00
Zach Pomerantz
2140dc77b3
Rename wait and unload in best thread
2016-05-13 16:14:22 -07:00
Zach Pomerantz
36565598a7
Hide script stop behind accessor and fix friendship
2016-05-13 15:52:53 -07:00
Zach Pomerantz
59e4b9c356
Merge branch 'master' of github.com:highfidelity/hifi into fix/shutdown
2016-05-13 15:28:12 -07:00
Zach Pomerantz
70d0ebb91c
Consolidate stoppingAllScripts to ScriptEngines::_stopped
2016-05-13 15:24:15 -07:00
Zach Pomerantz
e1c130d02f
Timeout long sandbox scripts
2016-05-12 17:51:39 -07:00
Zach Pomerantz
1107882be2
Throw to stop non-evaluating scripts
2016-05-12 17:51:38 -07:00
Zach Pomerantz
7e82494a66
Add cap on entities scripting thread stop time
2016-05-12 17:51:37 -07:00
Zach Pomerantz
f2f89ca062
Add logging to ScriptEngine lifetime
2016-05-12 17:51:36 -07:00
Zach Pomerantz
2cc788f98d
Rename ScriptEngine::wait to match std threading
2016-05-12 17:51:35 -07:00
Zach Pomerantz
edf82c57ba
Clean scripting thread deletion
2016-05-12 12:45:02 -07:00
Zach Pomerantz
13d602487f
Remove guard over atomic in ScriptEngine::stop
2016-05-12 12:43:16 -07:00
Zach Pomerantz
820fdf09e2
Remove unused ScriptEngine::_wantSignals
2016-05-12 12:42:29 -07:00
Brad Hefta-Gaub
af6be7f5f3
Merge pull request #7845 from jherico/script_debug
...
Enable script debugging
2016-05-10 15:56:38 -07:00
Brad Davis
b117a4b8d7
Debugging menu destruction
2016-05-10 12:21:19 -07:00
Seth Alves
68201746aa
Merge branch 'master' of github.com:highfidelity/hifi into fix-stanard-library-include-some-more
2016-05-09 18:39:37 -07:00
Brad Davis
40316498a4
Enable script debugging
2016-05-09 17:02:40 -07:00
Zach Pomerantz
7db082b915
Amend comment that was not a busy wait
2016-05-09 15:05:13 -07:00
Seth Alves
b0a5d8b719
make Script.include(/~/system/libraries/utils.js) work from web again
2016-05-08 08:45:58 -07:00
Zach Pomerantz
173d2a590c
Use sleep_until for ScriptEngine
2016-05-06 19:30:37 -07:00
Zach Pomerantz
56ec0e5db0
Abort infinite JS loops on quit
2016-05-04 12:02:08 -07:00
Zach Pomerantz
284feaf5d4
Properly shut down scripting thread
2016-05-03 20:29:31 -07:00
Brad Hefta-Gaub
754ef071eb
Merge pull request #7786 from sethalves/web-scripts-use-local-libs
...
allow scripts on the web to refer to local libraries with /~/
2016-05-03 11:10:48 -07:00
Brad Hefta-Gaub
ad285ff9a1
Merge pull request #7769 from ZappoMan/abortForInfiniteLoops
...
add support to abort evaluation of long running scripts on shutdown
2016-05-02 20:44:12 -07:00
Brad Hefta-Gaub
2b54813075
Merge pull request #7783 from zzmp/fix/script-engine-deletion
...
Fix script engine deletion
2016-05-02 18:16:07 -07:00
Brad Hefta-Gaub
b98419e537
add units to debug message
2016-05-02 14:58:38 -07:00
Brad Hefta-Gaub
4569032314
more CR feedback
2016-05-02 12:44:07 -07:00
ZappoMan
6026e055aa
more CR feedback removed redundant abort code
2016-04-30 15:45:42 -07:00
ZappoMan
ee4748fee9
CR Feedback
2016-04-30 15:31:09 -07:00
ZappoMan
73ff0308a9
some CR feedback
2016-04-30 15:23:50 -07:00
Seth Alves
351a5d2cb1
remove debug print
2016-04-29 13:24:12 -07:00
Seth Alves
b28cfd27ec
fix problem where canonicalFilePath will strip a trailing slash
2016-04-29 13:17:59 -07:00
Seth Alves
f03130ff5a
more work toward keeping /~/../.. from working
2016-04-29 11:04:08 -07:00
Seth Alves
8c278563f5
allow scripts on the web to refer to interface-local javascript libraries
2016-04-28 13:41:50 -07:00
Zach Pomerantz
30e7b950a1
Fix script engine deletion
2016-04-28 11:41:36 -07:00
Zach Pomerantz
854c0ea3e3
Clean out updateMemoryCost
2016-04-27 19:20:43 -07:00
Zach Pomerantz
1e8d45aecb
Put ScriptableResource state enum in prototype
2016-04-27 19:20:43 -07:00
Brad Hefta-Gaub
48e63ea828
add support to abort evaluation of long running scripts on shutdown
2016-04-26 16:24:53 -07:00
Brad Hefta-Gaub
a21bc66fa3
add support to abort evaluation of long running scripts on shutdown
2016-04-26 16:21:11 -07:00
Zach Pomerantz
1a0a623d5f
Report ScriptableResource memory cost to engine
2016-04-20 20:18:22 -07:00
Zach Pomerantz
8ad8b5d0d9
Return ScriptableResource from prefetch
2016-04-20 20:14:15 -07:00
Brad Hefta-Gaub
d5891e9073
remove abortEvaluation() since it has no effect for the test cases and might cause unexpected side effects
2016-04-18 15:28:33 -07:00
Brad Hefta-Gaub
bf8cdabd1b
CR feedback
2016-04-18 12:50:29 -07:00
Brad Hefta-Gaub
9e13b1bbae
more CR feedback
2016-04-18 12:25:46 -07:00
Brad Hefta-Gaub
f6c75d0530
cleanup
2016-04-18 10:41:54 -07:00
Brad Hefta-Gaub
0520363da8
cleanup
2016-04-18 10:37:15 -07:00
Brad Hefta-Gaub
d1f6b371c9
cleanup
2016-04-18 10:27:12 -07:00
Brad Hefta-Gaub
9db0fe0d11
switch to using QSharedPointer for _entitiesScriptEngine
2016-04-18 09:46:04 -07:00
Brad Hefta-Gaub
71d57295eb
handle possibly deleted ScriptEngine in getScriptContents
2016-04-16 19:39:45 -07:00
Brad Hefta-Gaub
87078b1ea2
first cut at resetting entities script engine on domain change
2016-04-16 11:09:23 -07:00
Anthony J. Thibault
253e4cbb73
validate arguments to MyAvatar.addAnimationStateHandler()
...
Also validate arguments to MyAvatar.removeAnimationStateHandler() and the return result from the user provided callback function.
2016-04-14 16:25:17 -07:00
Brad Hefta-Gaub
ce1625b551
Merge pull request #7600 from sethalves/fix-entity-script-error-message
...
attempt to make the failed-to-load-entity-script error-message be more helpful
2016-04-07 09:17:04 -07:00
Brad Hefta-Gaub
986b4bea7c
Merge pull request #7603 from zzmp/fix/entities-thread-crash
...
Fix intermittent crash on exit
2016-04-07 08:21:51 -07:00
Zach Pomerantz
06e827cb5e
Guard against no script engine thread affinity
2016-04-06 15:41:13 -07:00
howard-stearns
f35c59ce5f
Guard against meaningless query and fragment parts.
2016-04-06 15:21:43 -07:00
Seth Alves
672b4df7c1
get rid of magic number
2016-04-06 13:36:44 -07:00
Seth Alves
21c2db7cdc
attempt to make the failed-to-load-entity-script error-message be more helpful
2016-04-06 12:40:59 -07:00
Zach Pomerantz
1e710712cc
Check entities scripting thread before signaling it
2016-04-06 11:19:07 -07:00
howard-stearns
7b7ec5a174
Prohibit entity script file includes from outside the original entity
...
script's directory (unless its in our resources).
2016-04-04 16:41:21 -07:00
Seth Alves
35affe26e3
trying again on script loading changes
2016-04-01 11:52:47 -07:00
Seth Alves
63595e196e
fix batch-loaded local scripts
2016-03-31 14:02:47 -07:00
Seth Alves
cfa847ba54
don't put empty folders at end of scripts tree. allow /~/ to work from outside scripts
2016-03-31 09:45:28 -07:00
Seth Alves
bb43347599
Merge branch 'master' of github.com:highfidelity/hifi into use-local-scripts
2016-03-30 13:33:59 -07:00
Seth Alves
26e01bbacd
rewrite a bunch of path/url mangling code
2016-03-30 13:33:49 -07:00
Andrew Meadows
5ac0640cbe
check for time machine
2016-03-27 16:33:53 -07:00
Ryan Huffman
1a2f74f43a
Add protection around ScriptEngine::runInThread being called twice
2016-03-22 11:26:10 -07:00
Anthony J. Thibault
0d62b10a8f
Added Mat4 support to script
...
Also, hooked up MyAvatar.sensorToWorldMatrix access to script.
2016-03-07 16:16:14 -08:00
Howard Stearns
05943ed353
Entity scripts keep of the which entity they are executing for. When the entity goes away, any created timers do, too. Also, loading interface scripts is not allowed from entity scripts.
2016-03-01 16:50:58 -08:00
Brad Davis
c07f3789e4
Don't crash on script destructor
2016-02-22 14:26:33 -08:00
Brad Davis
55af5eaf06
Fix crash on shutdown due to lifetime of scripts
2016-01-12 12:40:02 -08:00
Brad Davis
d28f80aa07
Moving running scripts functionality to scripting library
2016-01-11 12:44:03 -08:00
Brad Hefta-Gaub
553e455a53
Merge pull request #6759 from huffman/script-engine-slot-exception
...
Add logging of signal slot exceptions in ScriptEngine
2016-01-07 08:54:34 -08:00
Ryan Huffman
810da77abe
Update ScriptEngine signal exception handling to call hadUncaughtExceptions
2016-01-04 10:34:55 -08:00
Ryan Huffman
f60cd09b45
Add logging of signal slot exceptions in ScriptEngine
2016-01-03 21:12:21 -08:00