Skip to content

Windows CI job is red: CRLF parsing and drive-letter paths in contract tests #29

Closed

Description

@Dimoshka

The windows-latest · codegen, analyse, format, test job fails on develop (run 38029954030) and on PR #28 (run 38034738787). Four defects, all in tests, all Windows-only:

  1. packages/alteri_one_core/test/engine/control_primitives_contract_test.dart — _publicMembers splits control.dart on '\n' and searches for a line exactly equal to '}'. The repo has no .gitattributes, so a Windows checkout is CRLF; the search never matches, the slice runs to EOF, and the member list silently becomes the union of every class in the file. Fixed on feature/engine-control-primitives (PR feat(core): task 0.14 — the engine control primitives #28) via LineSplitter.
  2. packages/alteri_one_platform/test/platform/ports_contract_test.dart — Directory(_packageRoot().uri.path + '/lib'): on Windows uri.path is /d:/a/... (leading slash before the drive), so the walk threw FileSystemException errno 123.
  3. Same file — paths.resolve('state/default').toFilePath() asserted endsWith('state/default'); toFilePath() separates with \\ on Windows.
  4. Same file, _isInsideIoDirectory — replaceAll(r'\\', '/') matches TWO backslashes, so on Windows the normalisation was a no-op and every file under lib/src/io/ was reported as outside it (surfaced only once defect 2 let the walk run). Fixed to '\\' on bugfix/windows-platform-tests.

2, 3 and 4 are fixed on bugfix/windows-platform-tests (#30).

Acceptance: the Windows job is green end to end. Note melos exec --fail-fast cancels the remaining packages after the first failure, so alteri_one_protocol and the root package tests have not actually run on Windows in these runs — further Windows-only defects may surface once the first ones are fixed.

Activity

  1. Dimoshka commented on Oct 12, 2026

    @Dimoshka
    ContributorAuthor

    Done in PR #30 (d81c2cb) and PR #28 (31b7aa1). develop is green end to end, including windows-latest.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions