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

Strict null checks loosely #7011

Merged
merged 4 commits into from
Jan 23, 2025
Merged

Strict null checks loosely #7011

merged 4 commits into from
Jan 23, 2025

Conversation

josstn
Copy link
Collaborator

@josstn josstn commented Jan 23, 2025

Bakgrunn

Det vart oppdaga at react-hook-form og yup ikkje fungerte korrekt når strictNullChecks var false. Dette førte til at kompilering med "legacy" tsconfig.json der strictNullChecks er false feila for kode i v2/ som brukte react-hook-form og yup validering, sjølv om tsconfig.json for v2/ har strictNullChecks true.

Løysing

Oppdaga verktøyet loose-ts-check som gjere det mulig å aktivere strengare innstillinger i legacy tsconfig.json for så å ignorere dei eksisterande feil som då dukker opp i legacy kodebasen.

På denne måten kan vi aktivere strictNullChecks (og evt andre innstillinger) på legacy, og gradvis fikse problema som blir oppdaga istadenfor å måtte fikse alt på ein gang.

Evt feil som blir ignorert vil og vise som feil i IDE, så ein får ein påminnelse om å fikse gamle problem når ein endre på gammal kode.

…ode.

Denne commit legger til verktøyet loose-ts-checks som gjere det mulig å ignorere enkelte ts error koder i eit spesifikt sett kodefiler.

Dette gjere det mulig å aktivere strengare tsconfig.json på gammal kode uten å måtte fikse alle problem på ein gang.

Aktiverer samtidig strictNullChecks på gammal tsconfig.json fil og ignorerer alle eksisterande feil.

Aktivering av strictNullChecks er nødvendig for at react-hook-form + yup validation skal fungere skikkeleg mtp undefined/null verdi validering.

v2/ tsconfig oppsett er ikkje påvirka av denne endring.

Sjå https://github.com/Gelio/loose-ts-check for meir info om bruken av dette verktøy.
ts-check:update-ignore Oppdaterer filene som lagrer kva ts feil loose-ts-check ignorerer og kva filer som har ignorerte feil i seg. Den skal køyrast når ein har fiksa ein ignorert feil, slik at det ikkje er mulig å reintrodusere den seinare utan å få feil.

ts-check:v2 køyrer ts-check berre på v2/, med tilhøyrande tsconfig.json. Kan brukast for å få raskare typesjekking lokalt når ein utvikler kode i v2/.
@josstn josstn marked this pull request as ready for review January 23, 2025 19:18
@josstn josstn requested a review from a team as a code owner January 23, 2025 19:18
Copy link
Collaborator

@hallvardastark hallvardastark left a comment

Choose a reason for hiding this comment

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

🔥

@josstn josstn merged commit bd8281f into master Jan 23, 2025
5 checks passed
@josstn josstn deleted the strictNullChecks-loosely branch January 23, 2025 20:24
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.

2 participants