3.5 KiB
jspsych
7.0.0
Major Changes
-
#2183
c8760b1
Thanks @jodeleeuw, @becky-gilbert, @bjoluc! - jsPsych is now fully modular, with individual NPM packages for the core library, plugins, and extensions.To support this change, we've made a number of breaking changes. We've added a guide for migrating from version 6.x to 7.x to the documentation, and updated the hello world tutorial with instructions for configuring jsPsych in three different ways. In addition to enabling package management, some of the benefits that this change provides include an improved developer experience with IntelliSense code hints, proper encapsulation of jsPsych so that multiple instances can be run on the same page, and easier integration with modern JavaScript tools like bundlers.
-
#2130
2802430
Thanks @jodeleeuw! - Added the option for plugins to return aPromise
and delay the execution of theon_load
event handler for the trial until the plugin manually invokes it. This allows for plugins that have asynchronous components to finish loading before triggering theon_load
event. Added this functionality to all plugins that currently require it. -
#2100
b0d77e7
Thanks @jodeleeuw! - Renamed all getter-type functions to haveget
prefix to make it clearer what the role of these functions are. The following were affected:currentTimelineNodeID
->getCurrentTimelineNodeID
progress
->getProgress
startTime
->getStartTime
totalTime
->getTotalTime
currentTrial
->getCurrentTrial
initSettings
->getInitSettings
allTimelineVariables
->getAllTimelineVariables
Minor Changes
-
#2142
12d6753
Thanks @jodeleeuw! - WhenjsPsych.endExperiment
is called it provides the option of displaying a message on the screen. If theon_finish
event handler ininitJsPsych()
returns aPromise
then the message will now display only after the promise has resolved. -
#2129
f37f64a
Thanks @jodeleeuw! - All duration measurements, including response times, are now rounded to the nearest millisecond. We changed this because the precision thatperformance.now()
generates is misleading in this context and removing the (often very long) decimal component of the measurement will save space in the data files. -
#2121
03517a0
Thanks @zimmerrol! - Updatedturk.submitToTurk()
to usePOST
instead ofGET
to avoid errors where too much data is transmitted.