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

Converge connection getter and command helper names across modules

Abierto
#1,538 0 comentarios 0 reacciones 0 asignados Ver en GitHub

Los mantenedores suelen responder en 1 día

Nadie ha tomado este issue todavía.

Evaluación

Dificultad
5/5
Tiempo estimado
Más de una semana
Aptitud para principiantes
48/100
Tipo de issue
Refactorización
Claridad
Bastante claro
Estado de actividad
Activo
Stack tecnológico
typescript
Área
api

Línea de trabajo

Start by comparing the named getters, credential setters, and command helpers in packages/modules/*/src/*-*.ts, then read the add-module skill and coordinate the old-name handling with #1518. Decide and document shared naming patterns, including protocol-specific URLs and command helpers; done means the affected modules follow those patterns, old names remain deprecated aliases, and the skill records the convention.

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

Descripción

enhancement minor

What happens

Modules name the same concept differently, so moving from one module to another means checking the docs each time.

Connection string getters:

Method Modules
getConnectionUri() azurecosmosdb, cockroachdb, localstack, mariadb, mssqlserver, mysql, postgresql
getConnectionString() azureservicebus, azurite, hivemq, mongodb, mosquitto
getConnectionUrl() clickhouse, minio, redis, valkey
getUrl() couchdb, influxdb, oraclefree
getHttpUrl() arangodb, chromadb, clickhouse, elasticsearch, opensearch
getHttpUri(), getBoltUri() neo4j

Other address getters use get*Endpoint (azurecosmosdb, azurite, etcd, gcloud, ollama) and get*Address (qdrant, redpanda, vault, weaviate).

Credential setters: most modules use withUsername and withPassword. mysql and mariadb use withUserPassword and withRootPassword.

Command helpers on started containers:

  • executeCliCmd(cmd, additionalFlags) in redis and valkey
  • executeQuery(query, additionalFlags, isRoot) in mysql
  • execVaultCommands(commands) in vault

Expected

  • One name for "the string a client library connects with", used by every module that has one.
  • One naming pattern for protocol-specific URLs and for command helpers.
  • The old names stay as deprecated aliases.
  • The convention is written into the add-module skill so new modules follow it.

Where

packages/modules/*/src/*-container.ts.

Notes

  • .NET puts GetConnectionString() on a shared IDatabaseContainer interface that every database module implements. A shared interface here would also let helpers accept "any database container".
  • Adding aliases is minor. Removing the old names would be major.

Dependencies

  • Nothing blocks this. It can start now.
  • Coordinate with #1518: for the old names.
Lenguaje dominante
TypeScript
Estrellas
2.6k
Forks
274
Merge medio
1 d 14 h
PR fusionados (30 d)
44

Preparar el entorno

Abrir en Codespaces

Inicia el contenedor de desarrollo del proyecto en tu navegador, con tu propia cuenta de GitHub.

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 testcontainers/testcontainers-node

Todos los issues de testcontainers/testcontainers-node

Issues similares

Más issues de TypeScript

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.