Skip to content

History

Revisions

  • Note python.toml is gitignored; copy from committed example. Document that the Copperline config is local (gitignored via .git/info/exclude) and created by copying ports/amiga/python.toml.example. Signed-off-by: Simon Dick <simond@irrelevant.org>

    @sidick sidick committed Jun 27, 2026
    a59b5cc
  • Add amiga-copperline-runtests.sh wrapper; fix python.toml path. Document the host-side directory-run wrapper (stage volume, gen .exp, on-device runner under -X serialdebug, stop-on-summary) and correct the config location to the repo-root python.toml. Signed-off-by: Simon Dick <simond@irrelevant.org>

    @sidick sidick committed Jun 27, 2026
    0649594
  • Document Copperline testing path and -X serialdebug capture. Add a Copperline section to the testing guide: independent FPU-correct emulator used as the oracle that pinned the Amiberry NaN bug, its current FPU-instruction gap (Copperline#45), and serial->stdout capture via the port's new -X serialdebug option (RawPutChar). Note the Amiberry 68881 NaN-mangling caveat alongside the FPU variant. Mirror the summary into the design log's testing section. Signed-off-by: Simon Dick <simond@irrelevant.org>

    @sidick sidick committed Jun 27, 2026
    15bcb70
  • Upstreaming: note build-tooling consistency fixes in PR1 Port helper scripts relocated to ports/amiga/tools/ and CROSS_COMPILE made overridable; both folded into PR1 and the curated branch rebuilt.

    @sidick sidick committed Jun 21, 2026
    d578876
  • Upstreaming: history curation done (amiga-port-clean built) 260 commits curated to 8 linear commits on amiga-port-clean, byte-identical to amiga-port (gate passes), with a real PR1 (bytecode-only, zero core changes) / PR2 (native emitter) boundary. Mark item 3 done.

    @sidick sidick committed Jun 21, 2026
    33f8299
  • Correct AmiSSL #111 framing: it was CPU speed, not a bug The filed AmiSSL issue turned out to be a processor-speed limitation, not an AmiSSL defect. Drop the bug-tracker link and state the resolution plainly on both pages.

    @sidick sidick committed Jun 21, 2026
    54fbb72
  • Upstreaming: add history-curation plan (item 3) Scope finding: branch base == upstream master (zero drift), so item 3 is pure curation, not a catch-up rebase. History has 12 merges, ~52 commits for now-deleted docs, a mid-history test-path rename, and 16 fixups, so recommend squash-to-fresh-history from upstream/master with a byte-identical correctness gate. Includes proposed PR1/PR2 logical commit series.

    @sidick sidick committed Jun 21, 2026
    fb4f544
  • Upstreaming: record PR1 prototype de-risk result Prototyped PR1 (bytecode-only, no core py/ changes) on a throwaway branch: all three variants build, setjmp NLR works, 30/30 non-native smoke tests pass incl .mpy import, binary ~25 KB smaller. Also note persistentcode.h is guarded by LOAD_NATIVE=0 so PR1 needs zero core changes.

    @sidick sidick committed Jun 21, 2026
    97ef2a7
  • Upstreaming: add native-emitter split plan (item 1) Document the two-stacked-PR split: PR1 = bytecode-only port with zero core changes, PR2 = the 68k native backend + register NLR. Include the file manifests, why the split is clean, open details, and the build/test matrix. Mark item 1 in progress.

    @sidick sidick committed Jun 21, 2026
    b883ee2
  • Upstreaming: mark linter pass (item 6) done Record that ruff lint/format, codeformat.py (uncrustify+fixup_c), and codespell all pass on the port; update the status table and progress log.

    @sidick sidick committed Jun 21, 2026
    a0cd031
  • Upstreaming: mark sync_upstream removal done Item 4 (drop the fork-maintenance workflow) is complete; update the status table, note, and progress log.

    @sidick sidick committed Jun 21, 2026
    5f398c0
  • Add Upstreaming tracker page Capture the contributor-guideline (generative-AI policy) requirements, acceptance blockers/suggestions, audit findings, and progress log for getting the Amiga port into upstream. Link it from Home.

    @sidick sidick committed Jun 21, 2026
    b5c47a6
  • design log: record the asyncio execution-speed finding. Add a known-limitations entry: asyncio is enabled, but a few timing/ ordering tests (gather_notimpl, wait_for, fair) fail on the slow 68k because tasks get ph_key = ticks_ms() at create time and per-iteration overhead (~12-50ms on the emulated 68020) outlasts the tests' short sleeps, reordering output. Pass on unix; not a port bug; not timing precision (us-precise busy-wait WFE unchanged); eases on faster hardware. Signed-off-by: Simon Dick <simond@irrelevant.org>

    @sidick sidick committed Jun 21, 2026
    cdc8dc7
  • Investigate the 3 asyncio Amiberry failures: execution-speed artifact. Root-caused the 3 asyncio test failures (gather_notimpl, wait_for, fair). They pass on the unix reference port, so they're Amiga-specific, but not a port bug and not a timing-precision issue (a us-precise busy-wait WFE left them unchanged). modasyncio.c stamps a new task's ph_key = ticks_ms at create time; these tests assume the bookkeeping around their short (10-100ms) sleeps is instantaneous, which holds on a fast host but not on a 68k. The emulated 68020's per-iteration overhead is ~12-50ms (measurable: asyncio_fair expects t2 5x in 0.45s, we get 4x), so a later task's ph_key can land after an earlier task's reschedule and reorder the output. Functionality is correct; only interleaving/count shifts. Eases on faster hardware. Signed-off-by: Simon Dick <simond@irrelevant.org>

    @sidick sidick committed Jun 21, 2026
    76ac826
  • Mark vamos-can't-run tests with their Amiberry results. Ran the 46 tests that fail under vamos (asyncio/ssl/socket/select/time + ringio_async, all needing a real Amiga) on Amiberry: 43 pass. The 3 failures are timing-sensitive asyncio task-ordering tests (asyncio_gather_notimpl, asyncio_wait_for, asyncio_fair) -- the functionality works, only the cooperative interleaving / iteration count differs from the reference .exp; asyncio_fair has no .exp and is diffed against CPython's (different) scheduler. Not port bugs. Signed-off-by: Simon Dick <simond@irrelevant.org>

    @sidick sidick committed Jun 21, 2026
    919adf7
  • Refresh per-directory vamos tallies (post-MPZ + asyncio/ssl/select). Full run-tests.py re-run on 2026-06-21. MPZ moved ~60 int_big tests from self-skip to pass (basics +44, float +9, micropython +7). Fail count rose 40->59, but every new failure was checked individually and is a vamos limitation (asyncio/ssl/socket/time/select now run but need a real Amiga -- they pass on Amiberry) or a harness/path artifact (argv, import_file, sys_path); none are port regressions. Genuine platform differences (struct1, float ULP, viper boundary, bytecode_limit) unchanged. Signed-off-by: Simon Dick <simond@irrelevant.org>

    @sidick sidick committed Jun 21, 2026
    8045e11
  • intbig: switch to MPZ; int_big suite passes on vamos + Amiberry. Signed-off-by: Simon Dick <simond@irrelevant.org>

    @sidick sidick committed Jun 21, 2026
    bd48584
  • vfs_userfs.py fixed by enabling .mpy load; genuine-gaps list now empty. Signed-off-by: Simon Dick <simond@irrelevant.org>

    @sidick sidick committed Jun 21, 2026
    e955fdf
  • platform_basic.py fixed: frozen platform.py gains python_compiler/libc_ver. Signed-off-by: Simon Dick <simond@irrelevant.org>

    @sidick sidick committed Jun 21, 2026
    2ce6c52
  • Cross-connection poison fixed: clear OpenSSL error queue before SSL ops. Signed-off-by: Simon Dick <simond@irrelevant.org>

    @sidick sidick committed Jun 21, 2026
    e5cc985
  • urequests: shared SSLContext + close-on-failure; correct the framing. The TLS flakiness is a post-handshake server reset, not CDN/handshake fingerprinting -- AmiSSL handshakes fine, then the exchange resets. Signed-off-by: Simon Dick <simond@irrelevant.org>

    @sidick sidick committed Jun 21, 2026
    b640bf2
  • urequests hardened: TLS now on the single BIO transport. Signed-off-by: Simon Dick <simond@irrelevant.org>

    @sidick sidick committed Jun 21, 2026
    8efca81
  • asyncio-over-TLS works; note BIO stream path is more resilient. Signed-off-by: Simon Dick <simond@irrelevant.org>

    @sidick sidick committed Jun 21, 2026
    5fea77b
  • test-status: asyncio enabled; event loop runs over select/poll. Signed-off-by: Simon Dick <simond@irrelevant.org>

    @sidick sidick committed Jun 21, 2026
    71deee4
  • test-status: select/poll over bsdsocket now works. Signed-off-by: Simon Dick <simond@irrelevant.org>

    @sidick sidick committed Jun 21, 2026
    0108ee3
  • Phase-28 + test-status: Full extmod ssl suite passes. Signed-off-by: Simon Dick <simond@irrelevant.org>

    @sidick sidick committed Jun 21, 2026
    dd5ae9e
  • Phase-28: Note in-memory cadata support; ssl_cadata passes. Signed-off-by: Simon Dick <simond@irrelevant.org>

    @sidick sidick committed Jun 20, 2026
    b94ea32
  • Phase-28: Note stream-BIO wrap; upstream extmod ssl tests pass. Signed-off-by: Simon Dick <simond@irrelevant.org>

    @sidick sidick committed Jun 20, 2026
    1c212a9
  • Amiga docs: Add test-status scoreboard; slim the testing page. New Amiga-port-test-status page is the at-a-glance scoreboard: all 31 port-local smoke tests grouped by area with vamos/Amiberry status, the upstream-suite per-directory snapshot, and the remaining real-hardware failures split into genuine gaps / environmental / won't-fix platform differences, plus a recently-fixed table. Testing page cleanup (1048 -> 945 lines): - Consolidated the two conflicting suite snapshots into one "Suite results" section pointing at the scoreboard for the breakdown; kept the FPCR-rounding and sys.path[0] fix write-ups. - Compressed the float/basics/extmod serial narratives to their conclusions, with the forensic detail tucked into <details> blocks. - Replaced the two duplicated known-failure tables with a pointer to the scoreboard, so failure status has one home. - Added a runbook-vs-scoreboard pointer at the top. Repointed the design log's known-failures link and the now-orphaned testing-page anchors at the scoreboard. Home.md lists the new page. Signed-off-by: Simon Dick <simond@irrelevant.org>

    @sidick sidick committed Jun 20, 2026
    7354f18
  • Amiga docs: Split the design log into per-phase wiki pages. Amiga-port-design.md shrinks from 2772 to 564 lines, becoming a lean index + architecture reference (overview, linked phase-status table, CPU/ABI, toolchain, NLR, GC, port layout, investigation items, known limitations, testing pointer). All per-phase log content moved out. New pages: Phase 12 (native emitter rework), 17 (library access), 18 (ARexx), 37 (datatypes, planned), 39 (extmod opt-ins); plus two era pages grouping the small foundational phases (0-11 Foundation, 13-27 Platform integration) to avoid stub pages. The 10 existing Phase-NN-*-plan pages (28-36, 38) absorb their design- log section as a "Design and rationale" block above the step plan, with Files/Status deduplicated. Every phase page gets a consistent H1 and a back-link to the design log; Home.md lists them all. Killed stale docs/phaseNN-*.md in-tree link targets and fixed a wrong Phase 17 link; verified zero dangling internal wiki links. Signed-off-by: Simon Dick <simond@irrelevant.org>

    @sidick sidick committed Jun 20, 2026
    e03973b