bcgov / bcgov/wps

Upgrade TypeScript to v6

Open
#5,294 0 comments 0 reactions 0 assignees View on GitHub
4Refinement Task
Dominant language
Python
Stars
65
Forks
11
Avg merge
21h 25m
Merged PRs (30d)
70

Description

## Overview

Upgrade TypeScript to v6 across all packages in the monorepo.

## Current State

| Package | Current Version |
|---------|----------------|
| `web/` | `^5.2.2` |
| `mobile/asa-go` | `~5.6.2` |
| `mobile/keycloak` | `~5.9.0` |

## Blocker

**Cypress does not yet support TypeScript v6.** The `web/apps/wps-web` package uses Cypress `^15.10.0`. Until Cypress publishes a release with TS v6 support, upgrading the web package is blocked.

Track Cypress support: https://github.com/cypress-io/cypress/issues/33385

## Plan

1. Monitor the Cypress repo / releases for TypeScript v6 compatibility
2. Once Cypress supports TS v6, upgrade all packages together:
- `web/` → `typescript@^6.x`
- `mobile/asa-go` → `typescript@^6.x`
- `mobile/keycloak` → `typescript@^6.x`
3. Resolve any breaking changes (e.g. stricter type checking, removed APIs)
4. Verify CI passes — pay attention to Cypress e2e tests and any type errors surfaced by stricter inference

## Notes

- TS v6 introduces stricter checks that may surface latent type errors — budget time for cleanup
- The `mobile/keycloak` package is already tracking `~5.9.0`, so it's the closest to v6 and may require the least rework

Contributor guide

Open the contributing guide

Research direction

Start with the TypeScript versions in web/, mobile/asa-go, and mobile/keycloak, then check Cypress support for TypeScript v6 using issue 33385. After Cypress compatibility is available, upgrade all three packages, resolve any surfaced type errors or breaking changes, and verify CI and Cypress e2e tests pass.

Written by the indexing model from the issue text.

Assessment

Tech stack
cypress, typescript
Domain
testing, tooling
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Clearly specified
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.