summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2026-05-13refactor: add pkgman_config struct and move download to net.cHEADdev0x221E
Added option to change mirror, tmp, staging directoryfrom the user interface of the pkgman library. Added TRY and TRY_IFNOT macros for better code readability.
2026-05-12build: SUBSYSTEMS rule change for refactor and features0x221E
Feature and refactor commits do not require all subsystems to be used as a prefix for the git title <e.g. build:>, instead they just need to list all affected subsystems within the commit description.
2026-05-11lib: sv: add sv_concat_cstr(), sv_init() and sv_free()0x221E
Creates an default option to heap-init string view to be used by complex operation where memory needs to be fine-grained.
2026-05-10cookbook: add process return code checking for cookbook recipes0x221E
cookbook_recipe_run() now returns the return code of fork() to manage success state.
2026-05-10core: seperate integrity verification to the "crypto" subsystem.0x221E
Seperates cryptographic verification from pkgman_upstream_integrity_download to its own function for better code structure, and to create space for future cryptographic functions.
2026-05-10feature: add URL structure and refactor main logic to pkgman.c0x221E
Added url structures, cookbook, archive management to automate the installation process of packages. Refactored main logic from main.c to pkgman.c for cleaner seperation of concerns and future library integration of pkgman to other projects.
2026-05-10err: add error codes0x221E
Add more error codes to prepare for future improvements. Add FORKERR, INTEGRITYERR, URLPATHERR, URLINITERR.
2026-05-09build: add -Wall -Werror -Wpedantic CFLAGS to Makefile0x221E
Enables all warnings, treats warnings as errors and stylistic improvements are treated as warnings. This is enabled to increase code quality.
2026-04-23net: add write to file callback0x221E
Creates a write_opts argument in net_send_request() where you can specify WRITE_OPT_MEMORY or WRITE_OPT_FILE. Modifies existing calls.
2026-04-23core: rename cmd_install() parameters0x221E
First parameter renamed to argc, and second renamed to argv to fit the general C-style entry function convention.
2026-04-23core: main: add memory cleanup to install command0x221E
The install command frees all allocated memory at the cleanup section, and iterates over the linked list to cleanup struct pair's key.buf and value.buf.
2026-04-23lib: ll & parser: um: proper linked list impl and refactor um0x221E
Linked list now implements FREE, ADD, functionalities. This modification allows for easier use of linked list and less bugs. The linked list functions now also have header and implementation macros to allow for external use of linked list functions in other translation units.
2026-04-23net: remove redundant malloc from write_callback()0x221E
Removed the redundant if-else block and malloc() from write_callback() since realloc() can handle null ptr.
2026-04-23build: add install command to Makefile0x221E
To create a system-wide utility after latest changes, Makefile now has the utility to install the binary to the system.
2026-04-22core: free ll_manifest contents after install complete0x221E
Iterates over the list inside um_user_data struct to free the struct string_view buffer. This commit does not add freeing functionality to the linked list itself.
2026-04-22global: add: null-terminate all printf's0x221E
Null-terminate all printf statements so that the output is proper.
2026-04-22global: refactor: change strcmp,strncmp with sv_equal()0x221E
All equalities in the codebase now uses the string_view equality check to ensure memory-safe comparison between strings. This is the case, unless the comparison is between two null-terminated C-style string, in which case they will not be using sv_equal()
2026-04-22lib: sv: make SV() macro compile-time0x221E
SV() no longer calls sv_create, instead initializes the struct in-place.
2026-04-22lib: sv: add sv_equal() to sv.c and sv.h0x221E
Optimized and bug-prone equality operation for string_view struct. This function will replace the equality checks operations between char* + string_view, and string_view + string_view.
2026-04-22core: add error returns to subcommands0x221E
Added error returns to subcommands and searching utility in main() and error codes PKGNOTFOUND and USAGE were added to err.h. The functions will now be able to return error states to main().
2026-04-22core: install command checks existence in upstream0x221E
The install command traverses through the linked list and checks for the existence of package in the upstream server.
2026-04-22build: add build/ to .gitignore0x221E
Ignore build directory.
2026-04-22docs: add build subsystem to SUBSYSTEMS0x221E
Added both .gitignore and Makefile to build subsystem.
2026-04-22build: Add makefile and remove build.sh0x221E
Makefile is added for convenience, and debug and prod builds now exist.
2026-04-22lib: sv: add sv_copy()0x221E
Added a string view copy function to lib/sv.h. The function is created to make it easier to copy string_views, and it is user's responsibility to free the string_view's.
2026-04-22parser: um: remove userdata argument from um_init()0x221E
Remove userdata argument from um_init() temporarily.
2026-04-22docs: add subsystems file0x221E
Added subsystem file that describes each subsystem per file matching.
2026-04-22parser: set userdata field of parser in parser_init()0x221E
Field userdata in parser struct is not set inside parser_init, causing segfault on userdata access.
2026-04-22parser: um: modify umanifest for initial support0x221E
um.h and um.c is modified to accept the linked list ll_manifest inside um_user_data struct. um_on_kv() now adds to the linked list in parser->userdata.
2026-04-22lib: ll: implement a minimal node-only linked list0x221E
O(n) add linked list was created with an add function. A foreach macro is also implemented as LL_FOREACH(). This linked list is temporary, and consists only of nodes.
2026-04-21core: add error message on net_init() failure0x221E
On net_init failure, the application did not return any error message. To help with error-checking, an stderr is outputted after a bad return from net_init() on main.c
2026-04-20main: initial commit0x221E