diff options
author | Anton Luka Šijanec <anton@sijanec.eu> | 2021-09-25 18:29:34 +0200 |
---|---|---|
committer | Anton Luka Šijanec <anton@sijanec.eu> | 2021-09-25 18:29:34 +0200 |
commit | 7877e512c2f228e0e98340d30cfee44e14c29cd6 (patch) | |
tree | b8d47722a7102c1a504f2aae827a271b23d9a1f2 /README.md | |
parent | i hope it's fixed now (magic?), though there's still a memory leak (diff) | |
download | discord.c-7877e512c2f228e0e98340d30cfee44e14c29cd6.tar discord.c-7877e512c2f228e0e98340d30cfee44e14c29cd6.tar.gz discord.c-7877e512c2f228e0e98340d30cfee44e14c29cd6.tar.bz2 discord.c-7877e512c2f228e0e98340d30cfee44e14c29cd6.tar.lz discord.c-7877e512c2f228e0e98340d30cfee44e14c29cd6.tar.xz discord.c-7877e512c2f228e0e98340d30cfee44e14c29cd6.tar.zst discord.c-7877e512c2f228e0e98340d30cfee44e14c29cd6.zip |
Diffstat (limited to 'README.md')
-rw-r--r-- | README.md | 34 |
1 files changed, 9 insertions, 25 deletions
@@ -19,7 +19,7 @@ sudo apt install discord.c you need to add [my apt repository](https://prog.sijanec.eu/). -built packages only exist for `amd64`, `arm64` and `i386`. for other architectures grab the source package: +built packages only exist for `amd64`, `arm64` and `i386` (`i686`). for other architectures grab the source package: ``` apt-get --install build discord.c @@ -79,28 +79,12 @@ completing this task would make `discord.c` the first and the only alternative c it would be useful to have an android port, and luckily this is possible with little effort due to the GTK broadway backend that interfaces with a HTML renderer, WebView for example. -<!-- +## developer notes -## working features - -* listing guilds and their channels, including private message channels -* joining and listing past messages from those existing channels -* sending messages into channels, ability to be joined into multiple channels at once -* viewing attachments as links -* joining voice channels, talking - -## missing features - -* check for permissions before join (needs roles parsing) -* tagging people, parsing tags of people/channels/emotes -* ability to join video calls and stream video -* altering profile -* parsing per-channel nicks -* creating channels and creating PMs -* invites -* refreshing channel and guild lists whilst begin turned on -* responding to SIGWINCH and reloading ncurses windows whenever terminal window is resized -* refreshing sound devices whilst being turned on -* checking for rare system failures (for example [a malloc/realloc that fails and returns NULL will probably lead to corruption and SIGSEGV](http://etalabs.net/overcommit.html)) - ---> +* use an `i386` compatible machine with `debian` `bullseye` (I use a Dell Latitude D620) +* debugging with valgrind: `make valgrind-prepare` once and `make valgrind` for profiling `./discord.c` +* generating valgrind suppressions: `make gensupp`, running `make valgrind` afterwards will ignore all +* `make cc` to compile code under `gcc`, `tcc` and `clang` +* optimization is always 0, binaries always have debug symbols +* `make -e CC=gcc` to choose a compiler instead of `cc`. +* `make -e CC="clang -fsanitize=address" && ASAN_OPTIONS=detect_leaks=1` to use `clang` leak checker |