Document and align the units of sizes and durations
Los mantenedores suelen responder en 1 día
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Aptitud para principiantes
- 55/100
- Tipo de issue
- Documentación
- Claridad
- Bastante claro
- Estado de actividad
- Activo
- Stack tecnológico
- docker, node.js, typescript
Línea de trabajo
Start with the listed files: packages/testcontainers/src/types.ts, test-container.ts, generic-container/generic-container.ts, and wait-strategies/composite-wait-strategy.ts. Document each numeric option's unit in JSDoc and add Date support for logs({ since }); the issue leaves the shared size unit decision open, and any unit change needs a major release. Done means the units are documented and Date is accepted, with the size decision resolved.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
What happens
Numeric options use different units, and most of them say so only in the docs, or nowhere:
| Option | Unit | Stated in the type or JSDoc |
|---|---|---|
withResourcesQuota({ memory }) |
gigabytes | inline comment |
withResourcesQuota({ cpu }) |
CPUs | inline comment |
withSharedMemorySize(bytes) |
bytes | parameter name |
withStartupTimeout(startupTimeoutMs) |
milliseconds | parameter name |
HealthCheck.interval, timeout, startPeriod |
milliseconds | no |
stop({ timeout }), restart({ timeout }) |
milliseconds | no |
Compose down({ timeout }) |
milliseconds | no |
HttpWaitStrategy.withReadTimeout |
milliseconds | parameter name |
CompositeWaitStrategy.withDeadline(deadline) |
milliseconds | no |
logs({ since }) |
Unix timestamp in seconds | no |
Two stand out:
- Memory is in gigabytes while shared memory is in bytes, so the same container can be configured with
withResourcesQuota({ memory: 0.5 })andwithSharedMemorySize(512 * 1024 * 1024). logs({ since })is the only time value in seconds. It is passed straight to Docker, so a millisecond timestamp such asDate.now()is read as a time far in the future.
Expected
- Every numeric option documents its unit in JSDoc, so it shows in the editor.
logs({ since })also accepts aDate.- Decide whether sizes should share one unit.
Where
packages/testcontainers/src/types.tspackages/testcontainers/src/test-container.tspackages/testcontainers/src/generic-container/generic-container.tspackages/testcontainers/src/wait-strategies/composite-wait-strategy.ts
Notes
- Semver: JSDoc and accepting a
Dateare additive, henceminor. Changing the unit of an existing option would bemajor. - Related: #734 (memory quota units).
Dependencies
- Nothing blocks this. It can start now.
- Lenguaje dominante
- TypeScript
- Estrellas
- 2.6k
- Forks
- 274
- Merge medio
- 1 d 14 h
- PR fusionados (30 d)
- 44
Preparar el entorno
Inicia el contenedor de desarrollo del proyecto en tu navegador, con tu propia cuenta de GitHub.
- Incluye un Dockerfile o un archivo de Docker Compose
- Sin plantilla de pull request
- Leer la 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 testcontainers/testcontainers-node
-
enhancement minor
Dificultad 2/5 1-3 horas Aptitud para principiantes 74/100
testcontainers/testcontainers-node#1539 ·
Los mantenedores suelen responder en 1 día
-
enhancement minor
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
testcontainers/testcontainers-node#1533 ·
Los mantenedores suelen responder en 1 día
-
enhancement minor
Dificultad 2/5 1-3 horas Aptitud para principiantes 77/100
testcontainers/testcontainers-node#1531 ·
Los mantenedores suelen responder en 1 día
-
enhancement minor
Dificultad 2/5 1-3 horas Aptitud para principiantes 76/100
testcontainers/testcontainers-node#1529 ·
Los mantenedores suelen responder en 1 día
-
enhancement minor
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
testcontainers/testcontainers-node#1528 ·
Los mantenedores suelen responder en 1 día
Todos los issues de testcontainers/testcontainers-node
Issues similares
-
priority:high
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 65/100
immich-app/immich#32426 ·
Los mantenedores suelen responder en 1 día
-
documentation good first issue hacktoberfest help wanted
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
libredb/libredb-studio#1756 ·
Los mantenedores suelen responder en 1 día
-
state:triage-needed
Dificultad 2/5 1-3 horas Aptitud para principiantes 62/100
Los mantenedores suelen responder en 1 día