No reviewers
Labels
No labels
bug
duplicate
enhancement
help wanted
high priority
invalid
L
low priority
M
medium priority
needs refinement
optional
question
S
technical improvement
UX Improvement
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference: local-it/mitgliederverwaltung#516
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "issue/mitgliederverwaltung-514"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Description of the implemented changes [0/1935]
The changes were:
Resolve all Dialyzer findings so the
just typecheckCI stage runs clean. Dialyzer was added to CI in a prior change and reported ~107 findings; this branch drives that count to zero by reconciling@specs with their success typings, binding intentionally discarded results, removing provably-unreachable clauses, and fixing several latent bugs the type analysis surfaced, all while preserving existing behavior (full test suite stays green).What has been changed?
Definition of Done
Code Quality
Accessibility
Testing
Additional Notes
feat(dialyzer): add typecheck stage to full CI pipelines(263857e) andci(drone): run full test suite on main, tags and promote(ce57d04). The Dialyzer cleanup in this branch is what makes that new typecheck stage pass..dialyzer_ignore.exsentries were added and nomix.exsDialyzer flags were changed.consume_and_read_csv/2 and MemberCSV.prepare/2 only ever return {:error, binary()}, so the non-binary error branch and the format_error_message/* helpers it called were unreachable. Removed them and bound the remaining discarded locale/dispatch results.DateTime.from_iso8601/1 returns {:ok, datetime, offset}, so the two-tuple clauses never matched and datetime cells fell through to the naive-parse fallback. Matching the real shape routes them through the intended DateTime path; UTC values render identically.Date.from_iso8601/1 returns {:error, reason}, so the with else clause matching a bare :error never fired and an invalid date raised a WithClauseError. Match the real date/calendar error reasons so the user sees the validation message.