Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/devprabal/small-linklist
small linked list lib in C
https://github.com/devprabal/small-linklist
c linked-list
Last synced: 3 days ago
JSON representation
small linked list lib in C
- Host: GitHub
- URL: https://github.com/devprabal/small-linklist
- Owner: devprabal
- License: mit
- Created: 2022-04-26T16:58:25.000Z (almost 3 years ago)
- Default Branch: main
- Last Pushed: 2024-03-31T11:32:05.000Z (10 months ago)
- Last Synced: 2024-04-01T11:24:40.147Z (10 months ago)
- Topics: c, linked-list
- Language: C
- Homepage:
- Size: 43 KB
- Stars: 2
- Watchers: 2
- Forks: 1
- Open Issues: 3
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
[![SonarCloud](https://sonarcloud.io/images/project_badges/sonarcloud-black.svg)](https://sonarcloud.io/summary/new_code?id=devprabal_small-linklist)
# Small linkedlist lib in C
## TODOs
- [x] nicer Makefile
- [x] Move to Scons or other build systems, if required, in future -- not required at present
- [x] libcheck unit testing -- not used anymore
- [ ] use gtest for unit testing
- [x] check memleaks, etc. with valgrind
- [x] code coverage report generation with gcov
- [ ] upload code coverage report on github pages
- [ ] doxygen documentation
- [x] upload on github with proper commit messages
- [ ] use `-g` gcc debugging option for use with `gdb`
- [ ] config file for code-formatting
- [ ] revisit codes several times, each time you will get something which can be done in a better way (performance, readability, or style)
- [ ] while revisiting the code, we can write documentation, and log lines
- [x] I don't like `OBJS` variable to be at one place, can be spread across multiple Makefiles
- [x] I don't like the `#include "module/inc/module.h"` style now, "inc" word is redundant
- [x] `struct` tags should not start with `_`, infact any identifier shouldn't start with leading `_`
- [ ] list can have a struct `ListInstance` which gives the user functions by which they can insert/delete/update/find/etc in the list
- [ ] log level lines instead of `printf()`s for debugging
- [ ] I have changed my style from `char *var` to `char* var`, also changed curly braces to start on the same line (unless it is a function defintion)
- [ ] fix github CI unit test
- [ ] cache github CI workflow/environment so that it doesn't install `valgrind` etc. on every push
- [ ] Separate debug bin build (compiled with `-g`) process and release bin build process
- [ ] Add description about project instead of tasks list on README## Dependencies
Document somehow that these are dependencies and need to be installed (or make a script that checks for and installs these dependencies)
- [ ] `valgrind`
- [ ] `check` testing framework lib
- [ ] `lcov`
- [ ] `gcovr`