Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

add optional isDeepCopy to shuffle & 2 tests for the same #3051

Closed
wants to merge 2 commits into from

Conversation

sanaagarwal
Copy link

To address the issue in #2808 and its comments, I added the optional isDeepCopy input parameter to the shuffle method. Now if people want to have a deep copy of the array that's to be shuffled, they can simply set it to be true, while the default only returns a shallow copy or they can manually set it to false.

I added 2 tests in the the randomization test suite for the same.

@changeset-bot
Copy link

changeset-bot bot commented May 24, 2023

⚠️ No Changeset found

Latest commit: f5e7ac8

Merging this PR will not cause a version bump for any packages. If these changes should not result in a new version, you're good to go. If these changes should result in a version bump, you need to add a changeset.

This PR includes no changesets

When changesets are added to this PR, you'll see the packages that this PR includes changesets for and the associated semver types

Click here to learn what changesets are, and how to add one.

Click here if you're a maintainer who wants to add a changeset to this PR

@bjoluc
Copy link
Member

bjoluc commented Sep 12, 2023

Thanks @sanaagarwal and sorry for the wait. I'd prefer simply exposing the internal deepCopy utility function, so people can deep-copy whatever they need to. @jodeleeuw WDYT?

@jodeleeuw
Copy link
Member

I agree. I think it is semantically cleaner to have a distinct method. Otherwise it's not clear which methods should have this optional parameter and which shouldn't (e.g., sampleWithoutReplacement?)

@bjoluc bjoluc closed this Sep 12, 2023
@bjoluc
Copy link
Member

bjoluc commented Sep 12, 2023

Working on a PR to expose deepCopy now – hang on @sanaagarwal 🙃

@bjoluc
Copy link
Member

bjoluc commented Sep 12, 2023

@sanaagarwal I just noticed deepCopy is already available as jsPsych.utils.deepCopy(), so feel free to use that and we'll update the docs.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants