Commit graph

83 commits

Author SHA1 Message Date
19c5515c5e fix: Plug memory leaks and fix strings that were not null terminated. 2023-03-09 22:35:03 +00:00
96d07dfb54 fix: Initialised variable to keep CI from breaking (again). 2023-03-09 22:35:03 +00:00
ea852f9102 refactor: Package extension now depends on what compression method was detected. 2023-03-09 22:35:03 +00:00
df83bf9fb3 fix: Initialise variables to keep CI from breaking. 2023-03-09 22:35:03 +00:00
e253e039c3 chore(package): ran fmt 2023-03-09 22:35:03 +00:00
46e7e093d9 refactor: separate directory for thirdparty code 2023-03-09 22:35:03 +00:00
b6d97df1bc refactor: Hashing function now streams data into hasher instead of doing it in one go. 2023-03-09 22:35:03 +00:00
4c9b429eaa refactor: Package archive parser now returns meaningful error enums in case of failure. 2023-03-09 22:35:03 +00:00
c7c4043108 fix: Using snprintf while ignoring its return value could lead to valid inputs getting truncated. 2023-03-09 22:35:03 +00:00
9211bc3351 fix: Initialise array pointers to 0 before performing check on them. 2023-03-09 22:35:03 +00:00
bcae64e023 chore: Also renamed structs to follow naming conventions. 2023-03-09 22:35:03 +00:00
03bae82569 refactor: Added free function for package struct.
While going through with the renaming, I saw that I actually forgot to implement that part.
2023-03-09 22:35:03 +00:00
76e4adae92 chore: Package module now follows the naming and structure conventions of libvieter. 2023-03-09 22:35:03 +00:00
1ccd4101af refactor: Subsituted old hash generation with a proper implementation. 2023-03-09 22:35:03 +00:00
bbdc2fbd6e fix: strcat can not be used on uninitialised strings in non-musl environments. 2023-03-09 22:35:03 +00:00
d11a9d3638 chore: fix merge marker in makefile 2023-03-09 22:35:03 +00:00
d0914adbb5 fix: Somehow, test file changed line endings to CRLF. Changed it back to LF. 2023-03-09 22:35:03 +00:00
fbbc15cf73 chore: Rebase to dev branch with binomial heap PR. 2023-03-09 22:35:03 +00:00
660e711b17 refactor: Added SHA256 to package description file. 2023-03-09 22:35:03 +00:00
7561a74793 refactor: Decided to not return char** in function that creates the package description after all, now returns char*.
The method I was trying started to irk me when I thought of creating a test unit for it. Also fixed some other issues I found in the package_to_description function (SHA256SUM section still missing).
2023-03-09 22:35:03 +00:00
01688fd546 fix: Took a very long time finding a very annyoing bug because realloc is the devil. 2023-03-09 22:35:03 +00:00
edca243331 refactor: Created function that will return the char ** (originally char *) that will be used to make the description file. Also removed free that was resulting in a crash. 2023-03-09 22:35:03 +00:00
4309ad8cc5 refactor: Modified .PKGINFO parser not to rely on gotos and continues. Parser is now optimistic and assumes .PKGINFO file is valid.
After my changes to the macros, they still feel a bit hacky, but I'm content with them. I also changed the parser to assume the .PKGINFO files are always valid because they are automatically generated. The parser also assumes the same fields will always appear in the same fixed order. I made this change after checking how makepkg generated this file.
2023-03-09 22:35:03 +00:00
c2313fe0be refactor: Add original .c package files by Jef. 2023-03-09 22:35:03 +00:00
f376aedaee Merge pull request 'Red-black tree' (#5) from Chewing_Bever/libvieter:red-black-tree into dev
Some checks are pending
ci/woodpecker/push/lint Pipeline is pending
ci/woodpecker/push/test-mem Pipeline is pending
ci/woodpecker/push/test Pipeline is pending
Reviewed-on: #5
2023-03-07 12:08:49 +01:00
38e84afd1d
fix: also lint internal header files
All checks were successful
ci/woodpecker/pr/lint Pipeline was successful
ci/woodpecker/pr/test Pipeline was successful
ci/woodpecker/pr/test-mem Pipeline was successful
2023-02-23 10:13:58 +01:00
d9402ced54 test(tree): add random insert test
All checks were successful
ci/woodpecker/pr/lint Pipeline was successful
ci/woodpecker/pr/test Pipeline was successful
ci/woodpecker/pr/test-mem Pipeline was successful
2023-02-02 15:52:59 +01:00
a6ed89d8cd
feat(tree): add tree iterator
All checks were successful
ci/woodpecker/pr/lint Pipeline was successful
ci/woodpecker/pr/test Pipeline was successful
ci/woodpecker/pr/test-mem Pipeline was successful
2023-02-02 14:10:35 +01:00
ef5037f941
chore(tree): some small cleanups
Some checks failed
ci/woodpecker/pr/test Pipeline was successful
ci/woodpecker/pr/test-mem Pipeline was successful
ci/woodpecker/pr/lint Pipeline failed
2023-02-01 23:24:22 +01:00
bee520a781
fix(tree): working balanced remove
All checks were successful
ci/woodpecker/pr/lint Pipeline was successful
ci/woodpecker/pr/test Pipeline was successful
ci/woodpecker/pr/test-mem Pipeline was successful
2023-02-01 23:04:35 +01:00
70217bee21
fix(tree): fix wrong rotation function 2023-02-01 22:12:34 +01:00
17c2e15385 feat(tree): first attempt at wikipedia pseudo code
Some checks are pending
ci/woodpecker/pr/lint Pipeline is pending
ci/woodpecker/pr/test-mem Pipeline is pending
ci/woodpecker/pr/test Pipeline is pending
2023-01-30 12:28:08 +01:00
1d458c68a4
feat(tree): start of balanced removal
Some checks are pending
ci/woodpecker/pr/lint Pipeline is pending
ci/woodpecker/pr/test-mem Pipeline is pending
ci/woodpecker/pr/test Pipeline is pending
2023-01-29 21:34:44 +01:00
b74a4e9326
refactor(tree): bit more cleanup
Some checks are pending
ci/woodpecker/pr/lint Pipeline is pending
ci/woodpecker/pr/test-mem Pipeline is pending
ci/woodpecker/pr/test Pipeline is pending
2023-01-29 21:08:17 +01:00
e5130a6383
feat(tree): bit flag so children know which child they are 2023-01-29 20:57:08 +01:00
193fc4b454
refactor(tree): store children as static array instead 2023-01-29 20:33:11 +01:00
06fca6f5ae
refactor(tree): better testing code 2023-01-29 17:32:27 +01:00
3fb027715c
test(tree): validation function to use in testing
Some checks failed
ci/woodpecker/pr/lint Pipeline was successful
ci/woodpecker/pr/test Pipeline failed
ci/woodpecker/pr/test-mem unknown status
2023-01-28 19:28:35 +01:00
89d1c9cdca chore: add license
Some checks are pending
ci/woodpecker/pr/lint Pipeline is pending
ci/woodpecker/pr/test-mem Pipeline is pending
ci/woodpecker/pr/test Pipeline is pending
2023-01-28 12:02:52 +01:00
3bf3150b4a
test: rename some stuff; separate cron part tests
All checks were successful
ci/woodpecker/pr/lint Pipeline was successful
ci/woodpecker/pr/test Pipeline was successful
ci/woodpecker/pr/test-mem Pipeline was successful
2023-01-28 09:30:35 +01:00
adfdca18da
docs(tree): add function docstrings
Some checks are pending
ci/woodpecker/pr/lint Pipeline is pending
ci/woodpecker/pr/test-mem Pipeline is pending
ci/woodpecker/pr/test Pipeline is pending
2023-01-28 09:09:17 +01:00
e4e92b3e57
refactor(tree): proper filenames
All checks were successful
ci/woodpecker/pr/lint Pipeline was successful
ci/woodpecker/pr/test Pipeline was successful
ci/woodpecker/pr/test-mem Pipeline was successful
2023-01-27 22:37:57 +01:00
1ce3b47edf
feat(tree): remove works 2023-01-27 22:37:57 +01:00
1c591ac423
feat(tree): first attempt at balanced inserts 2023-01-27 22:37:55 +01:00
41bc6516fa
feat(tree): add node bit flags support 2023-01-27 22:37:24 +01:00
910d7bc3bb
feat(tree): implement free function 2023-01-27 22:37:24 +01:00
935a610b7e
feat(tree): initially working binary tree 2023-01-27 22:37:23 +01:00
98f158e1f5
feat(tree): started standard binary tree 2023-01-27 22:35:06 +01:00
df50f96983
feat: begin binary tree implementation 2023-01-27 22:34:16 +01:00
379a05a7b6 Merge pull request 'Binomial heap' (#4) from Chewing_Bever/libvieter:min-heap into dev
Some checks are pending
ci/woodpecker/push/lint Pipeline is pending
ci/woodpecker/push/test-mem Pipeline is pending
ci/woodpecker/push/test Pipeline is pending
Reviewed-on: #4
2023-01-27 22:32:02 +01:00