Comments (6)
Aha, of course legacy Edge doesn't support TextEncoder
🤦
caniuse confirms: https://caniuse.com/?search=TextEncoder
I'm torn on how to address this. SimpleWebAuthn supports "modern browsers" which I could argue omits legacy Edge for the Chromium version MS switched to. I see a couple of paths forward:
- I update documentation on browser's browser support and link to a polyfill when legacy Edge support is desired
- I include a polyfill in browser
I'm inclined to go with Option 1. Option 2 would be a waste since it'd only be needed for a single now-deprecated browser.
@mahnunchik would you be willing to identify an npm
polyfill package that fixes the issue? MDN also includes a spec-compliant polyfill I could link to to solve this with advice to "search NPM for 'textencoder polyfill browser'"
from simplewebauthn.
I've created a new "Edge Browser" page on the homepage with information about this issue, including suggestions on how to work around it: https://simplewebauthn.dev/docs/advanced/edge-browser
@mahnunchik Think there's anything more I should add?
from simplewebauthn.
Edge bundled with Windows 10 doesn't have TextEncoder
🤦
Even latest classic Edge
: Microsoft Edge 44.19041.423.0
from simplewebauthn.
Yep, option 2 is overhead for this issue. I think that mention in the readme is enough.
I've faced with the issue while testing on fresh installation of Windows 10 VM from MS: https://developer.microsoft.com/en-us/windows/downloads/virtual-machines/
It is surprised me a lot that latest Windows 10 ships with too outdated Microsoft Edge 44.19041.423.0
from simplewebauthn.
@MasterKale I'm going to skip support of Edge < 79 for my product.
But polyfill may be required for products which must work on bare Windows 10, maybe bank or school software.
from simplewebauthn.
I think it is definitely enough. Thank you!
from simplewebauthn.
Related Issues (20)
- VerifiedRegistrationResponse type missing transports attribute HOT 3
- failed test in packages/server HOT 4
- generateRegistrationOptions's `excludeCredentials` is returning empty string for each id HOT 1
- extractStrings is not a function HOT 3
- `pubKeyCredParams` field not properly functioning w/ non ES256 Algos on register HOT 2
- Unable to Register a Passkey Using a PIN Code HOT 2
- RFC: Rename @simplewebauthn/typescript-types to something shorter HOT 3
- Treat all custom string challenges as UTF-8 strings
- Uint8Array --> String --> Uint8Array Conversion from isoUint8Array helper doesn't work HOT 3
- Cannot find module 'cbor-x/index-no-eval' or its corresponding type declarations. HOT 9
- ignore `node:crypto` import with webpack in `@simplewebauthn/server` HOT 8
- Update minimum Node support to v20+ HOT 3
- library reports lack of support to webauthn in mobile chrome but webauthn seems to work if using reference site HOT 8
- Using Android devices without non-Google Password managers fail to authenticate HOT 11
- Change signature of `decodeClientDataJSON` to accept `Base64URLString` as paramater HOT 2
- Improve ergonomics of `excludeCredentials` and `allowCredentials` HOT 3
- Remove footgun related to random user IDs HOT 16
- Update `getWebCrypto()` for Node 20 HOT 2
- cross-platform authenticator usage on android 14 HOT 1
- Default `userDisplayName` to empty string when not specified HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from simplewebauthn.