endojs / endo

Endo is a distributed secure JavaScript sandbox, based on SES
Apache License 2.0
829 stars 72 forks source link

Running lockdown in Chrome 117 throws - groupBy is not boolean #1767

Closed naugtur closed 1 year ago

naugtur commented 1 year ago

Steps to reproduce: call lockdown() in Chrome 117

Example error output:

TypeError#1: At intrinsics.Object.groupBy expected boolean not function

lockdown.umd.js:6628 
  at isAllowedPropertyValue (http://localhost:8081/frontend/dist/lockdown.umd.js:4032:19)
  at isAllowedProperty (http://localhost:8081/frontend/dist/lockdown.umd.js:4059:14)
  at visitProperties (http://localhost:8081/frontend/dist/lockdown.umd.js:4109:26)
  at isAllowedPropertyValue (http://localhost:8081/frontend/dist/lockdown.umd.js:3996:7)
  at isAllowedProperty (http://localhost:8081/frontend/dist/lockdown.umd.js:4059:14)
  at visitProperties (http://localhost:8081/frontend/dist/lockdown.umd.js:4109:26)
  at whitelistIntrinsics (http://localhost:8081/frontend/dist/lockdown.umd.js:4152:3)
  at repairIntrinsics (http://localhost:8081/frontend/dist/lockdown.umd.js:9750:3)
  at lockdown (http://localhost:8081/frontend/dist/lockdown.umd.js:9825:28)

Seems like the error might be here: https://github.com/endojs/endo/commit/de46b14e1f2933338217090ee7bbe013365e24ec#diff-f3e4581684a41bfc17458a0453b40fd9c234e02c7533a36bff380963ec7ccc40R441 I don't understand why groupBy is specified as a boolean while

naugtur commented 1 year ago

Seems fixed in SES 0.18.8