Enable the 2 new SQLite 3.51.0 amalgamation extensions.
Nadie ha tomado este issue todavía.
- Lenguaje dominante
- JavaScript
- Estrellas
- 122k
- Forks
- 37.3k
- Merge medio
- 4 d 2 h
- PR fusionados (30 d)
- 283
Descripción
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 newWITHINkeyword. 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.
Guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Línea de trabajo
Empieza revisando la dependencia #60614 y la integración de la amalgamación de SQLite de Node.js. Comprueba cómo se proporcionan las flags de compilación y, después, evalúa la activación de SQLITE_ENABLE_PERCENTILE, SQLITE_ENABLE_ORDERED_SET_AGGREGATES y SQLITE_ENABLE_CARRAY; se considerará terminado cuando las extensiones previstas estén habilitadas y se haya verificado su compatibilidad.
Escrito por el modelo de indexación a partir del texto del issue.
Evaluación
- Stack tecnológico
- c, node.js, sqlite
- Área
- backend, databases
- Tipo de issue
- Nueva funcionalidad
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Estado de actividad
- Tranquilo
- Claridad
- Bastante claro
- Aptitud para principiantes
- 43/100