Hacktoberfest 2026: los issues que los mantenedores marcaron para octubre, abiertos y aptos para principiantes. Explorar issues de Hacktoberfest

Do not generate colors phf map at compile time

Abierto
#236 3 comentarios 0 reacciones 0 asignados Ver en GitHub

Nadie ha tomado este issue todavía.

Evaluación

Dificultad
3/5
Tiempo estimado
1-2 días
Aptitud para principiantes
45/100
Tipo de issue
Refactorización
Claridad
Bastante claro
Estado de actividad
Estancado
Stack tecnológico
rust
Área
build-system

Línea de trabajo

Empieza por localizar la generación del mapa de colores en el código de cssparser-macros y compara el enfoque propuesto basado en un archivo precompilado con el archivo colors.rs vinculado de svgtypes. Comprueba el árbol de dependencias antes y después; se considera terminado cuando el mapa de colores se conserva en forma de código fuente sin requerir phf_codegen ni sus dependencias del generador en tiempo de compilación.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

enhancement help wanted

phf_codegen is a pretty big dependency and colors will not change from build to build, so maybe it's better to keep the colors map as a "prebuilt" file? Something like this.

The source of the problem:

cssparser v0.24.1 (./rust-cssparser-0.24.1)                                         
├── cssparser-macros v0.3.4 (./rust-cssparser-0.24.1/macros)
│   ├── phf_codegen v0.7.24
│   │   ├── phf_generator v0.7.24
│   │   │   ├── phf_shared v0.7.24
│   │   │   │   └── siphasher v0.2.3
│   │   │   └── rand v0.6.5
│   │   │       ├── libc v0.2.48
│   │   │       ├── rand_chacha v0.1.1
│   │   │       │   └── rand_core v0.3.1
│   │   │       │       └── rand_core v0.4.0
│   │   │       │   [build-dependencies]
│   │   │       │   └── autocfg v0.1.2
│   │   │       ├── rand_core v0.4.0 (*)
│   │   │       ├── rand_hc v0.1.0
│   │   │       │   └── rand_core v0.3.1 (*)
│   │   │       ├── rand_isaac v0.1.1
│   │   │       │   └── rand_core v0.3.1 (*)
│   │   │       ├── rand_jitter v0.1.3
│   │   │       │   └── rand_core v0.4.0 (*)
│   │   │       ├── rand_os v0.1.2
│   │   │       │   ├── libc v0.2.48 (*)
│   │   │       │   └── rand_core v0.4.0 (*)
│   │   │       ├── rand_pcg v0.1.1
│   │   │       │   └── rand_core v0.3.1 (*)
│   │   │       │   [build-dependencies]
│   │   │       │   └── rustc_version v0.2.3
│   │   │       │       └── semver v0.9.0
│   │   │       │           └── semver-parser v0.7.0
│   │   │       └── rand_xorshift v0.1.1
│   │   │           └── rand_core v0.3.1 (*)
│   │   │       [build-dependencies]
│   │   │       └── autocfg v0.1.2 (*)
│   │   └── phf_shared v0.7.24 (*)

It's like 20 dependencies just to build a phf map, that never changes.

Lenguaje dominante
Rust
Estrellas
871
Forks
152
Merge medio
1 d 1 h
PR fusionados (30 d)
6

Preparar el entorno

Este proyecto no incluye contenedor de desarrollo, Dockerfile ni guía de contribución, así que la configuración corre por tu cuenta: empieza por su README y consulta nuestra guía para la primera contribución para los pasos generales.

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de servo/rust-cssparser

Todos los issues de servo/rust-cssparser

Issues similares

Más issues de Rust

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.