mirror of
https://github.com/logos-messaging/pm.git
synced 2026-01-04 15:13:11 +00:00
clean furps
This commit is contained in:
parent
f0010c9abc
commit
3a91c1852d
25
FURPS/application/nim_ffi.md
Normal file
25
FURPS/application/nim_ffi.md
Normal file
@ -0,0 +1,25 @@
|
|||||||
|
# {Feature Name} FURPS
|
||||||
|
|
||||||
|
## Functionality
|
||||||
|
|
||||||
|
1. Provides the core logic needed to expose any synchronous or asynchronous Nim library to FFI.
|
||||||
|
|
||||||
|
## Usability
|
||||||
|
|
||||||
|
1. Introduce new pragma definitions, such as `{.ffi.}`, to appropriately annotate types and procedures.
|
||||||
|
|
||||||
|
## Reliability
|
||||||
|
|
||||||
|
1. ...
|
||||||
|
|
||||||
|
## Performance
|
||||||
|
|
||||||
|
1. ...
|
||||||
|
|
||||||
|
## Supportability
|
||||||
|
|
||||||
|
1. Can be installed using Nimble.
|
||||||
|
|
||||||
|
## + (Privacy, Anonymity, Deployments)
|
||||||
|
|
||||||
|
1. `nwaku` repository uses `nim-ffi` to expose the existing `libwaku` functionality.
|
||||||
@ -76,23 +76,25 @@ Note: maybe taken over by Vac-Nim
|
|||||||
- [ ] Docs: links to README.md or docs.waku.org (TBD)
|
- [ ] Docs: links to README.md or docs.waku.org (TBD)
|
||||||
|
|
||||||
|
|
||||||
### Create new nim-ffi repository that will allow exposing any Nim library in an easy way
|
### Create nim-ffi, a library to easily expose c-bindings from Nim
|
||||||
|
|
||||||
**Owner**: nwaku
|
**Owner**: nwaku
|
||||||
|
|
||||||
**Feature**:
|
**Feature**:
|
||||||
- [Waku SDK](/FURPS/core/waku_sdk.md)
|
- [Nim FFI](/FURPS/application/nim_ffi.md)
|
||||||
- [RLN SDK](/FURPS/core/rln_sdk.md)
|
|
||||||
- [Chat SDK](/FURPS/application/chat_sdk.md)
|
|
||||||
- [SDS](/FURPS/application/sds.md)
|
|
||||||
|
|
||||||
**No FURPS**:
|
**FURPS**:
|
||||||
|
|
||||||
**Output**:
|
- F1. Provides the core logic needed to expose any synchronous or asynchronous Nim library to FFI.
|
||||||
- [ ] The `nim-ffi` repository provides the core logic needed to expose any synchronous or asynchronous Nim library. This involves meta-programming and the introduction of new pragma definitions, such as `{.ffi.}`, to appropriately annotate types and procedures.
|
|
||||||
|
|
||||||
- [ ] `nim-ffi` can be installed using Nimble.
|
- U1. Introduce new pragma definitions, such as `{.ffi.}`, to appropriately annotate types and procedures.
|
||||||
|
|
||||||
- [ ] The `nwaku` repository uses `nim-ffi` to expose the existing `libwaku` functionality.
|
- S1. Can be installed using Nimble.
|
||||||
|
|
||||||
- [ ] All Nim libraries should expose their APIs (functions, types, etc.) through `nim-ffi`.
|
_ +1. `nwaku` repository uses `nim-ffi` to expose the existing `libwaku` functionality.
|
||||||
|
|
||||||
|
**Checklist**:
|
||||||
|
- [ ] Specs: link to specs and/or API definition
|
||||||
|
- [ ] Code: link to GitHub issues/PRs/Epic
|
||||||
|
- [ ] Dogfood: link to dogfooding session/artefact
|
||||||
|
- [ ] Docs: links to README.md or docs.waku.org (TBD)
|
||||||
Loading…
x
Reference in New Issue
Block a user