| Name | Modified | Size | Downloads / Week |
|---|---|---|---|
| Parent folder | |||
| MeowChan 0.8.0 -- stabilization preview (released as oChan) source code.tar.gz | 2026-10-10 | 414.8 kB | |
| MeowChan 0.8.0 -- stabilization preview (released as oChan) source code.zip | 2026-10-10 | 522.2 kB | |
| README.md | 2026-10-10 | 5.7 kB | |
| SHA256SUMS | 2026-10-10 | 557 Bytes | |
| libochan.0.8.0.nupkg | 2026-10-10 | 113.2 kB | |
| oChan-0.8.0-linux-arm64.tar.gz | 2026-10-10 | 39.6 MB | |
| oChan-0.8.0-linux-x64.tar.gz | 2026-10-10 | 41.9 MB | |
| oChan-0.8.0-osx-arm64.tar.gz | 2026-10-10 | 43.7 MB | |
| oChan-0.8.0-osx-x64.tar.gz | 2026-10-10 | 45.5 MB | |
| oChan-0.8.0-win-x64.zip | 2026-10-10 | 43.9 MB | |
| Totals: 10 Items | 215.6 MB | 0 | |
MeowChan 0.8.0
This version was released as oChan. Its original source and release files retain that name.
Preview release focused on downloader reliability and independent library use.
This update rebuilds download and session handling for 4chan and 8kun and makes libochan usable independently of the desktop app.
What's new
- More reliable source checks. Updated 8kun media URLs, canonical URL handling and conditional thread requests reduce broken or duplicate work. Archived or missing sources remain distinguishable from unfinished media downloads.
- Controlled HTTP requests. Shared request pacing, bounded retries, server cooldowns and request/body deadlines handle rate limits and temporary failures. Stopping a watch cancels its requests and waits for cleanup.
- Verified downloads. Size and checksum checks, atomic file publication and manifests prevent partial files from appearing complete. Existing unrelated files are preserved. Rechecks retry failed media and repair missing or changed files even when the thread response is unchanged; cached verification reduces repeated disk reads.
- One shared download queue. Parallel-download and bandwidth limits apply across all watched threads. Duplicate jobs are suppressed, and removal waits for the affected downloads to stop. Removing a board leaves its admitted threads running; removing a thread prevents automatic rediscovery until it is explicitly added again.
- Durable sessions and settings. With session restore enabled, watch changes are saved as they happen. Saved sessions retain removed-thread suppression and assigned download roots. Settings are validated before use, save failures are visible, and recovery preserves damaged files. Changing the output root keeps existing watches in their assigned directories.
- Desktop fixes. Thread rows show source state, media progress and queued/active counts. Sorting handles numeric values correctly, context actions target the clicked row, and folder actions open the assigned destination. Clipboard import, settings dialogs and tray fallback are more reliable; Exit remains accessible without a working tray.
- Standalone library.
libochanis a separate library project with local NuGet packaging, without Avalonia or desktop configuration. It provides explicit provider registration, asynchronous session control, typed snapshots and isolated state notifications. Logging is optional and silent by default. A package consumer sample verifies download and reuse through public APIs.
Upgrade notes
- .NET 10 replaces .NET 8. Source builds use the SDK pinned in
global.json; library consumers require .NET 10. Self-contained desktop packages include the runtime. - Download paths now separate providers:
<root>/<source>/<board>/<thread>/<media ID>.<extension>. The default root is nowDownloads/oChanunder the user home directory; existing settings retain their configured root. Legacy files discovered through current provider metadata are imported only when size and MD5 match, leaving the originals untouched. Old completion markers alone are not trusted; interrupted transfers restart from the beginning. - Profiles keep their existing locations:
%APPDATA%/.oChanon Windows and$HOME/.oChanon macOS/Linux. Older saved URL lists are accepted when session restore is enabled. Only one application instance may own a profile; use an absoluteOCHAN_PROFILEdirectory for a separate instance. - Library integration changes are breaking. Source integrations must adopt explicit dependencies, asynchronous session operations and snapshot notifications. Desktop configuration is no longer part of the library. See the session API and package consumer sample.
Packages and validation
Packaging targets Windows x64, Linux x64/Arm64 and macOS Intel/Apple Silicon. Release builds use a pinned SDK and reviewed dependency locks, with expanded offline tests, graphical checks and package validation. Extract the complete archive, including its native libraries and notices.
Final native acceptance of the extracted packages is still outstanding across the target matrix. macOS bundles are unsigned and not notarized; native launch and Gatekeeper validation remain open. Linux requires glibc and an X11 or XWayland desktop. The platform validation record lists prerequisites and the evidence available for each target.
Build provenance
The attached desktop archives and libochan.0.8.0.nupkg are built from commit e0d18b0. Verify the downloaded files against SHA256SUMS. This is a self-contained desktop distribution; extract the complete archive before launching it.
Validation record
Cross-platform CI passed all nine jobs: 406 .NET tests, 22 packaging fixtures and four graphical modes on each of Windows Server 2022 x64, Ubuntu 24.04 x64 and macOS 15 Arm64, plus the library consumer and five archive jobs. That run tested the production source at 49d994c; the release commit adds only documentation updates. The attached Linux x64 archive also passed actual extracted-app startup and normal exit on Manjaro x64, with its profile lock released afterward. Full native package workflows across the intended matrix remain open.