Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Ts install #18

Merged
merged 3 commits into from
Apr 26, 2024
Merged

Ts install #18

merged 3 commits into from
Apr 26, 2024

Conversation

T00lio
Copy link
Owner

@T00lio T00lio commented Apr 24, 2024

Migrate files and components to typescript

Trello Cards:
Trello
Trello

Agregar typescript al proyecto existente. Solo incluye instalar dependencias y configuracion del proyecto

@@ -21,11 +21,16 @@
"tailwindcss": "^3.0.7"
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

cuando hago voy a probar en mi local tu branch lo primero que hago es actualizar las dependencia (npm install) y me sale este error:

image

investigando un poco, parece que hay un conflicto en las dependencias relacionado con la version de TypeScript requerida por react-scripts.
Por lo que veo react-scripts requiere TypeScript en la versión ^3.2.1 || ^4 (es lo que observo en el arbol de dependencia de react-scripts cuando me fijo en el package-lock.json), mientras que tienes TypeScript en la versión ^5.4.5 (segun tu package.json).

Esto es un buen momento para observar la importancia del package-lock.json y la diferencia que tiene con package.json:

  • package.json: Este archivo se utiliza para definir las dependencias del proyecto y sus rangos de versiones. Es como una lista de las herramientas que necesitas para construir algo, pero no necesariamente especifica las versiones exactas. Por ejemplo, podrías decir que necesitas una biblioteca llamada "lodash" en cualquier versión mayor o igual a la 4.0.0.

  • package-lock.json: Este archivo es más detallado y específico. Se genera automáticamente cuando ejecutas npm install y registra la versión exacta de cada dependencia instalada. Incluso registra las dependencias de tus dependencias (es decir, las dependencias transitivas) y sus versiones exactas. Esto garantiza que, al instalar el proyecto en otra máquina o en un entorno de producción, obtendrás exactamente las mismas versiones de las dependencias, lo que garantiza que el proyecto sea consistente y reproducible.

En resumen, package.json especifica qué necesitas, mientras que package-lock.json detalla exactamente qué se instaló, incluidas las versiones exactas de todas las dependencias.

Como los de create-react-app ya no estan dando mas mantenimiento desde hace 2 anios, entonces es muy probable que este conflicto y muchos mas existan a medida que vayamos queriendo utilizar versiones nuevas de Typescript o de cualquiera otra libreria...

Un workaround que ellos mismos proponen es este:
facebook/create-react-app#13080 (comment)

Copy link
Owner Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

override added in package.json, pero el error no lo tengo en mi maquina.

client/tsconfig.json Outdated Show resolved Hide resolved
client/src/App.tsx Outdated Show resolved Hide resolved
client/src/components/ContactForm/ContactForm.tsx Outdated Show resolved Hide resolved
client/src/components/GoogleLogoutButton/index.ys Outdated Show resolved Hide resolved
client/src/pages/QuizPage.tsx Outdated Show resolved Hide resolved
@T00lio T00lio merged commit 7727d23 into main Apr 26, 2024
1 check passed
@T00lio T00lio deleted the tsInstall branch April 26, 2024 13:10
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants