summaryrefslogtreecommitdiff
path: root/CONTRIBUTING.md
diff options
context:
space:
mode:
authorBerke Güzel <wenekar1@gmail.com>2026-10-13 13:44:13 +0300
committerBerke Güzel <wenekar1@gmail.com>2026-10-13 13:44:13 +0300
commitc059e3aa7f93da470f052a5cd8ee0d8dc969e679 (patch)
tree63ffa378287ed2c606eda2e940501b9edc3d2b8b /CONTRIBUTING.md
parent87d0bc50d53dc216efb2b04495f090616318bc5c (diff)
rename and simplification
Diffstat (limited to 'CONTRIBUTING.md')
-rw-r--r--CONTRIBUTING.md15
1 files changed, 15 insertions, 0 deletions
diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md
index 88674ca..939f4e4 100644
--- a/CONTRIBUTING.md
+++ b/CONTRIBUTING.md
@@ -5,6 +5,21 @@ Read the [API policy](docs/api-policy.md) and [application guide](docs/guide.md)
before changing public behavior. Keep backend details in native extensions and
make common operations usable through the portable headers.
+Shared API behavior and backend interfaces live in `src/common/`. Native
+windowing implementations, key mappings, and typed native accessors live in
+`src/platform/<backend>/`; keep their generated protocols with the backend.
+OS support shared by multiple backends lives separately in `src/platform/posix/`
+and is selected by `src/platform/meson.build`. It currently supplies the event
+loop and the private mutex implementation used through `platform/sync.h`.
+Common code should depend on these internal interfaces rather than native OS
+headers. Keep public headers in `include/yasl/` and tests in `tests/<backend>/`.
+
+For a future Win32 backend, add `src/platform/win32/`, select its event loop and
+`yasl_platform_sync.h` in the platform build, and register its backend through
+the common dispatch interface. Windows still needs build/dependency selection,
+public API/export support, and ports of POSIX-based examples and test harnesses;
+the directory structure alone does not provide Windows support.
+
For a bug report, include the revision, operating system, selected backend from
`yasl_display_backend()`, capability mask, compiler, build options, reproduction
steps, and a small example if possible. For input issues include the relevant