loopbackio / loopbackio/loopback-next

lb4 repository tool error if datasource is using injection

Abierto
#8,015 2 comentarios 0 reacciones 0 asignados Ver en GitHub

Nadie ha tomado este issue todavía.

bug CLI
Lenguaje dominante
TypeScript
Estrellas
5.1k
Forks
1.1k
Merge medio
2 d 21 h
PR fusionados (30 d)
27

Descripción

I have a simple data source, whos config is loaded via injection:

```
export class MainDataSource extends juggler.DataSource
implements LifeCycleObserver {
static dataSourceName = 'Main';

constructor(
@config()
dsConfig: object,
) {
super(dsConfig);
}
}
```

Application.ts:
`this.configure('datasources.Main').to(options.datasources?.Main || {});`

When running the repository scaffolding tool the following error occurs:
`(node:24064) UnhandledPromiseRejectionWarning: Error: Cannot load C:\lb4\src\datasources\main.datasource.config.json: ENOENT: no such file or directory, open 'C:\lb4\src\datasources\main.datasource.config.json'
`

I am temporarily suppressing the error by adding a `main.datasource.config.json` file in the source directory.

However, this scaffolding tool should not require a fully configured data source to generate simple repositories. If the configuration cannot be found, it should just emit a warning, but still allow the tool to run and generate a non-customized class using the basic boilerplate.

Guía de contribución

Abrir la guía de contribución

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.

Línea de trabajo

Comienza con la configuración de la datasource inyectada en Application.ts y reproduce el comando de scaffolding del repositorio usando la ruta faltante src/datasources/main.datasource.config.json. Traza cómo la herramienta gestiona la configuración faltante y verifica después que muestra una advertencia y aun así genera la clase básica del repositorio sin requerir el archivo.

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

Evaluación

Stack tecnológico
node.js, typescript
Área
cli, tooling
Tipo de issue
Error
Dificultad
3/5
Tiempo estimado
1-2 días
Estado de actividad
Estancado
Claridad
Bastante claro
Aptitud para principiantes
35/100

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.