nodejs / nodejs/node

Enable the 2 new SQLite 3.51.0 amalgamation extensions.

Ouverte
#60,618 5 commentaires 1 réaction 0 personnes assignées Voir sur GitHub

Personne n'a encore pris cette issue.

feature request sqlite
Langage dominant
JavaScript
Étoiles
122k
Forks
37.3k
Merge moyen
4 j 2 h
PR mergées (30 j)
283

Description

Depends on #60614.

What is the problem this feature will solve?

SQLite 3.51.0 added 2 new extensions to the amalgamation:

  • Carray: Enabled by compile-time flag -DSQLITE_ENABLE_CARRAY. Useful for binding C-language arrays to SQL queries. I am unsure wether JS/TS can make use of this directly, but perhaps it may at least be useful for internal use in the Node.js-SQLite bindings. I am, however, not familiar enough with the code to comment on it.

  • Percentile: Enabled by compile-time flag -DSQLITE_ENABLE_PERCENTILE. Useful for extracting various statistical percentages from tables and should be faster than JS by having a native implementation. It also includes another compile time flag, -DSQLITE_ENABLE_ORDERED_SET_AGGREGATES=1, which can be set to 1 to support cross-platform SQL syntax, adding the new WITHIN keyword. Also increases binary size by about 1200 bytes. See the docs for all details: https://sqlite.org/compile.html#enable_ordered_set_aggregates.

What is the feature you are proposing to solve the problem?

Enable the Percentile extension with its compile flags.

Carray usefulness should be investigated and can also be enabled via its compile-time flag.

What alternatives have you considered?

Missing out on these new extensions.

Guide de contribution

Ouvrir le guide de contribution

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.

Piste de recherche

Commencez par examiner la dépendance #60614 et l’intégration de l’amalgamation SQLite de Node.js. Vérifiez comment les indicateurs de compilation sont fournis, puis évaluez l’activation de SQLITE_ENABLE_PERCENTILE, SQLITE_ENABLE_ORDERED_SET_AGGREGATES et SQLITE_ENABLE_CARRAY ; la tâche sera considérée comme terminée lorsque les extensions prévues seront activées et que leur prise en charge aura été vérifiée.

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

Évaluation

Stack technique
c, node.js, sqlite
Domaine
backend, databases
Type d'issue
Fonctionnalité
Difficulté
4/5
Temps estimé
3-5 jours
Activité
Calme
Clarté
Plutôt claire
Accessibilité débutants
43/100

Recevez les nouvelles issues par e-mail

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