Skip to content

Enable TypeScript compiler strict null checks [WPB-22420]#21203

Merged
screendriver merged 2 commits into
devfrom
strictNullChecks
May 4, 2026
Merged

Enable TypeScript compiler strict null checks [WPB-22420]#21203
screendriver merged 2 commits into
devfrom
strictNullChecks

Conversation

@screendriver
Copy link
Copy Markdown
Member

@screendriver screendriver commented May 4, 2026

TaskWPB-22420 [Web] General maintenance ticket for PR merges

  • guarantee that enabling strict null checks does not change message, calling, invitation, or notification behavior
  • keep nullability explicit and readable so invariants remain obvious at call sites
  • maintain repository-wide confidence by keeping both test behavior and type contracts aligned

@screendriver screendriver changed the title Enable TypeScript compiler strict null checks Enable TypeScript compiler strict null checks [WPB-22420] May 4, 2026
@screendriver screendriver force-pushed the strictNullChecks branch 2 times, most recently from 0a8faf6 to eb2918a Compare May 4, 2026 08:02
@screendriver screendriver enabled auto-merge May 4, 2026 08:02
…errors

- guarantee that enabling strict null checks does not change message, calling, invitation, or notification behavior
- keep nullability explicit and readable so invariants remain obvious at call sites
- maintain repository-wide confidence by keeping both test behavior and type contracts aligned
@sonarqubecloud
Copy link
Copy Markdown

sonarqubecloud Bot commented May 4, 2026

Quality Gate Failed Quality Gate failed

Failed conditions
1 Security Hotspot

See analysis details on SonarQube Cloud

@codecov
Copy link
Copy Markdown

codecov Bot commented May 4, 2026

Codecov Report

❌ Patch coverage is 31.55792% with 514 lines in your changes missing coverage. Please review.
✅ Project coverage is 44.89%. Comparing base (fcb5443) to head (b83a7fb).
⚠️ Report is 3 commits behind head on dev.

Files with missing lines Patch % Lines
...epositories/conversation/ConversationRepository.ts 19.23% 105 Missing and 21 partials ⚠️
...itories/conversation/ConversationRoleRepository.ts 41.02% 19 Missing and 4 partials ⚠️
...rc/script/repositories/conversation/EventMapper.ts 37.83% 8 Missing and 15 partials ⚠️
...pt/repositories/cryptography/CryptographyMapper.ts 25.80% 13 Missing and 10 partials ⚠️
...src/script/repositories/client/ClientRepository.ts 5.26% 18 Missing ⚠️
...ipt/repositories/conversation/MessageRepository.ts 0.00% 17 Missing ⚠️
apps/webapp/src/script/util/debugUtil.ts 0.00% 17 Missing ⚠️
...app/src/script/repositories/entity/Conversation.ts 65.11% 13 Missing and 2 partials ⚠️
...repositories/conversation/ConversationCellState.ts 12.50% 12 Missing and 2 partials ⚠️
...ositories/conversation/ConversationStateHandler.ts 0.00% 14 Missing ⚠️
... and 66 more
Additional details and impacted files
@@            Coverage Diff             @@
##              dev   #21203      +/-   ##
==========================================
- Coverage   45.01%   44.89%   -0.13%     
==========================================
  Files        1701     1701              
  Lines       44219    44562     +343     
  Branches     9113     9320     +207     
==========================================
+ Hits        19905    20005     +100     
- Misses      22095    22266     +171     
- Partials     2219     2291      +72     
Flag Coverage Δ
app_webapp 43.09% <31.09%> (-0.13%) ⬇️
lib_api_client 51.34% <ø> (ø)
lib_core 58.53% <100.00%> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

Files with missing lines Coverage Δ
...bapp/src/script/auth/module/action/ClientAction.ts 44.68% <ø> (ø)
...s/webapp/src/script/auth/page/SingleSignOnForm.tsx 61.58% <100.00%> (ø)
apps/webapp/src/script/auth/util/urlUtil.ts 36.36% <ø> (ø)
...cript/page/MainContent/panels/Collection/utils.tsx 81.81% <100.00%> (+6.81%) ⬆️
...rc/script/repositories/calling/videoGridHandler.ts 90.00% <100.00%> (+12.72%) ⬆️
...app/src/script/repositories/client/ClientMapper.ts 93.54% <100.00%> (+0.69%) ⬆️
...script/repositories/connection/connectionEntity.ts 100.00% <100.00%> (ø)
...script/repositories/connection/connectionMapper.ts 100.00% <100.00%> (ø)
...pp/src/script/repositories/entity/message/Asset.ts 68.42% <100.00%> (+1.75%) ⬆️
.../script/repositories/entity/message/CallMessage.ts 90.90% <ø> (ø)
... and 99 more

... and 12 files with indirect coverage changes

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@github-actions
Copy link
Copy Markdown
Contributor

github-actions Bot commented May 4, 2026

🔗 Download Full Report Artifact

🧪 Playwright Test Summary

  • Passed: 14
  • Failed: 0
  • Skipped: 0
  • 🔁 Flaky: 1
  • 📊 Total: 15
  • Total Runtime: 162.6s (~ 2 min 43 sec)
specs/CriticalFlow/channelsCall-TC-8755.spec.ts (❌ 0 failed, ⚠️ 1 flaky)
  • ⚠️ Calls in channels with device switch and screenshare (tags: TC-8755, crit-flow-web)

@screendriver screendriver added this pull request to the merge queue May 4, 2026
@screendriver screendriver removed this pull request from the merge queue due to a manual request May 4, 2026
@screendriver screendriver merged commit 96cbbb0 into dev May 4, 2026
34 of 35 checks passed
@screendriver screendriver deleted the strictNullChecks branch May 4, 2026 09:00
screendriver pushed a commit that referenced this pull request May 15, 2026
…s [WPB-22420] (#21233)

This reverts a [change](https://github.com/wireapp/wire-webapp/pull/21203/changes#diff-6a7d2709a05a0aa3f0e20d913b37f6edd3449395be5bbb13e1673c585de4bda6R3100) made in #21203 which changed the behavior of this message type by passing `0` as empty value instead of `null` causing the wrong system message to be printed. This fixes the regression test TC-3720 for self deleting messages.
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