Hacktoberfest 2026 : les issues que les mainteneurs ont marquées pour octobre, ouvertes et accessibles aux débutants. Parcourir les issues Hacktoberfest

fails on regular expressions with Unicode property escapes

Ouverte
#177 2 commentaires 0 réactions 0 personnes assignées Voir sur GitHub

Personne n'a encore pris cette issue.

Évaluation

Difficulté
4/5
Temps estimé
3-5 jours
Accessibilité débutants
30/100
Type d'issue
Bug
Clarté
À clarifier
Activité
À l'abandon
Stack technique
javascript, wasm
Domaine
tooling

Piste de recherche

Reproduisez l’échec avec la commande signalée bunx jco componentize world.js --wit wit -o ts-typescript.wasm -d clocks -d random -d http et examinez les expressions régulières de propriétés Unicode dans node_modules/.pnpm/change-case@5.4.4/node_modules/change-case/dist/index.js. Suivez l’échec dans src/componentize.js autour de la ligne 305 et dans les points d’entrée jco signalés. C’est terminé lorsque la même entrée peut être componentisée sans l’erreur d’initialisation de Wizer.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Description

bug good first issue

I am trying to wrap typespec into a component. It pulls in change-case library which uses regular expressions with Unicode. componetize is failing on these regular expressions:

var SPLIT_LOWER_UPPER_RE = /([\p{Ll}\d])(\p{Lu})/gu;
var SPLIT_UPPER_UPPER_RE = /(\p{Lu})([\p{Lu}][\p{Ll}])/gu;
var SPLIT_SEPARATE_NUMBER_RE = /(\d)\p{Ll}|(\p{L})\d/u;
var DEFAULT_STRIP_REGEXP = /[^\p{L}\d]+/giu;

The code is from here:
node_modules/.pnpm/change-case@5.4.4/node_modules/change-case/dist/index.js
https://www.npmjs.com/package/change-case
https://github.com/blakeembrey/change-case/blob/main/packages/change-case/src/index.ts

$ bunx jco componentize world.js --wit wit -o ts-typescript.wasm -d clocks -d random -d http

Exception while evaluating top-level script
world.js:31083:32 SyntaxError: invalid class property name in regular expression:
world.js:31083:32 ([\p{Ll}\d])(\p{Lu})
world.js:31083:32 ....^
Error: the `componentize.wizer` function trapped

Caused by:
    0: error while executing at wasm backtrace:
           0: 0x79597a - <unknown>!<wasm function 12739>
           1: 0x7962ed - <unknown>!<wasm function 12755>
           2: 0x20646 - <unknown>!<wasm function 98>
           3: 0x1f5f9 - <unknown>!<wasm function 96>
           4: 0xa6a5 - <unknown>!<wasm function 78>
           5: 0x22acba - <unknown>!<wasm function 5037>
    1: Exited with i32 exit status 1
Error: Failed to initialize the compiled Wasm binary with Wizer:
Wizering failed to complete
    at componentize (file:///Users/cataggar/ms/ComponentizeJS/src/componentize.js:305:13)
    at async componentize (file:///Users/cataggar/ms/jco/src/cmd/componentize.js:11:25)
    at async file:///Users/cataggar/ms/jco/src/jco.js:213:9
error: script "componentize" exited with code 1
(jco componentize) 
In 'typescript' script 'componentize' failed with exit code 1

Copilot says:

SpiderMonkey, the JavaScript and WebAssembly engine used in Mozilla Firefox, supports Unicode property escapes as part of the ECMAScript 2018 (ES9) specification. This feature allows you to use Unicode property escapes in regular expressions to match characters based on their Unicode properties.

Enabling Unicode Property Escapes in SpiderMonkey

To ensure that SpiderMonkey is compiled with support for Unicode property escapes, you need to use a version of SpiderMonkey that supports ECMAScript 2018 or later. Most modern versions of SpiderMonkey, including those used in recent versions of Firefox, already include this support.

Langage dominant
Rust
Étoiles
392
Forks
54
Merge moyen
2 j 18 h
PR mergées (30 j)
3

Guide de contribution

Aucun guide de contribution indexé pour ce dépôt

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Autres issues de bytecodealliance/ComponentizeJS

Toutes les issues de bytecodealliance/ComponentizeJS

Issues similaires

Plus d'issues Rust

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.