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.
Minor Changes
-
#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. -
#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.