Port `arraybuffer` to ruby
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Aptitud para principiantes
- 38/100
- Tipo de issue
- Nueva funcionalidad
- Claridad
- Bastante claro
- Estado de actividad
- Estancado
- Stack tecnológico
- javascript, ruby, wasm
- Área
- web-dev
Línea de trabajo
Empieza rastreando la interoperabilidad de Ruby WebAssembly con JavaScript utilizada por JS.global.fetch y response.arrayBuffer, y después compárala con la conversión a Uint8Array mostrada en el issue. Se considera terminado cuando los datos de ArrayBuffer de response.arrayBuffer se pueden pasar a Marshal.load sin convertir cada byte mediante objetos de JavaScript.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
require "js"
response = JS.global.fetch("<dumped buffer's url>").await
puts response[:status]
arraybuffer = response.arrayBuffer.await
# Expected goal:
# Marshal.load(arraybuffer)
some byte arrays need to port ruby (typically generated by Marshal.dump), but no fast way
# Correct but too slow way:
uint8array = JS.global[:Uint8Array].new(arraybuffer)
Marshal.load(uint8array.to_a.map(&:to_i).pack("C*")) # Especially the slow JS::Object#to_i on each byte.
- Lenguaje dominante
- Ruby
- Estrellas
- 875
- Forks
- 68
- Merge medio
- 9 d 5 h
- PR fusionados (30 d)
- 1
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.
Más de ruby/ruby.wasm
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
-
Dificultad 5/5 Más de una semana Aptitud para principiantes 35/100
-
Using gems with Node WASI Abierto
Dificultad 4/5 3-5 días Aptitud para principiantes 35/100
-
Dificultad 5/5 Más de una semana Aptitud para principiantes 25/100
-
Dificultad 5/5 Más de una semana Aptitud para principiantes 25/100