Commit graph

68 commits

Author SHA1 Message Date
0b7d959663 fix(object): free placement on actions parse 2025-09-21 00:12:40 +02:00
cba5d43039 feat(cli): added proper display of modified files and the changes on the current branch for the status command 2025-09-20 16:53:20 +02:00
b1515d21c4 fix(cli): fixed diff display in the post commit message 2025-09-20 05:41:22 +02:00
730d2b84e0 fix(file): removed basefile prefix 2025-09-20 05:40:39 +02:00
a8a5408db4 fix(object): read_diff didnt read correctly 2025-09-20 05:39:28 +02:00
c1f11eceb2 refactor(common): moved common declerations to seperate files to avoid circular imports 2025-09-19 19:23:28 +02:00
4b2575ab96 refactor(object, utilities): moved diff saving and reading to the object files 2025-09-19 19:22:40 +02:00
13e3ba70b2 refactor(file, utilities): moved visualize_diff to myers.h 2025-09-19 19:21:27 +02:00
d611d2ed68 refactor(file, utilities): moved Changes struct to file.h 2025-09-19 19:16:56 +02:00
ff71a92249 refactor: split up the utilities file into smaller modules 2025-09-19 03:48:08 +02:00
abaa6e12fc fix(utilities): changed line_changed to line_original in apply_diffs delete case and sort deletions in descending order 2025-09-19 02:14:52 +02:00
3e0a0d7057 fix(basefile): made sure file_info.hash is null instead of random memory 2025-09-19 00:01:14 +02:00
8831b267e5 fix(utilities): made save diff accept a changes struct to count deletions and insertions 2025-09-18 23:59:54 +02:00
550b47d568 fix(tree): now does properly generate the snapshot with the given FileInfoBuffer instead of the debug walk through the repo 2025-09-16 15:32:32 +02:00
8cbf82a535 feat(cli): added commiting and displaying the commit log 2025-09-15 05:55:44 +02:00
cfb24bd3a2 feat(utilities): added functions to save, read and apply diffs 2025-09-15 03:25:45 +02:00
e2d026502f fix(tree): check now if the tree snapshot already exists 2025-09-15 03:24:47 +02:00
f19209ba0a feat(commit): added structs and functionality for the commit log 2025-09-15 03:23:49 +02:00
bb0ab630c0 feat(hash): added LogObject for commit hashes 2025-09-14 23:59:19 +02:00
d6f71d4b8b refactor(tree): removed unneeded function prototype 2025-09-12 23:08:40 +02:00
2773588023 feat(tree): added save_tree_diff 2025-09-11 23:52:34 +02:00
68885cb20f feat(file): added missing fee for file content 2025-09-10 23:14:01 +02:00
b28ff5f0e9 refactor(diff): changed the ordering of ActionType to accomedate the numbers that are saved in the object database 2025-09-09 23:50:31 +02:00
f27b523fbf fix(file): double free issue 2025-09-08 23:59:00 +02:00
1e3934cf20 fix(diff): myers now also strdups the line of the file on insert action when taking the diff 2025-09-07 04:22:30 +02:00
252bdc281e refactor(hash)!: added TreeDiffObject and changed the name from DiffObject to FileDiffObject 2025-09-06 19:34:51 +02:00
b4dff29a5c feat(basefiles): added utility to convert a BaseFileBuffer into a FileInfoBuffer 2025-09-05 21:15:42 +02:00
315e37b643 feat(actions): added content field to Action to copy the insert text 2025-09-04 23:12:36 +02:00
1dd9e2cbca feat(file): added utility functions to copy a file and insert/delete lines of the file 2025-09-03 23:42:50 +02:00
c8e5cd7095 fix(hash): removed LogObject because logs are mutable and not static (aka do not belong into the object database) 2025-09-02 02:01:20 +02:00
e9cf112c56 feat(hash)!: added the DiffObject case for the object id generation and renamed FileObject to BaseFileObject 2025-09-01 20:45:07 +02:00
96ebd49533 fix(diff): split myers into header and source file to mitigate import errors 2025-08-31 18:02:52 +02:00
0e07d4b63c feat(file): added saving a file snapshot to the object database 2025-08-31 04:43:11 +02:00
90ae57e1e8 refactor(tree): removed debug prints 2025-08-31 03:44:02 +02:00
8cc5c6310b feat(config,utilities): added a function to create a default config 2025-08-31 03:42:33 +02:00
0fbfe09638 feat(build): added maths to the CMakeLists file 2025-08-30 21:48:31 +02:00
a089bc43c3 feat(config): added a simple user config 2025-08-29 20:15:19 +02:00
1e4677bcda feat(config): added cktan/tomlc17 to the project 2025-08-28 23:48:39 +02:00
e3a2f43871 feat(utilities,basefiles): added remove function to List and BaseFileBuffer 2025-08-28 19:18:03 +02:00
967b79d9ba feat(cli): added some base functionality to the commit and files command 2025-08-28 17:01:41 +02:00
358db79882 feat(utilities): added the get_file_content_with_size to properly handle binary files 2025-08-28 17:00:49 +02:00
37a696bd38 feat(file): changed the mode type from uint32_t to the proper mode_t 2025-08-28 16:58:57 +02:00
1606f479db feat(basefiles): added the BaseFileBuffer with BaseFileInfo and its core functionality to track files in the repo 2025-08-28 16:15:16 +02:00
a3ee042758 refactor(tree): changes according to API changes of the FileInfoBuffer 2025-08-28 03:49:51 +02:00
52e740fab0 refactor(utilities)!: renamed PathBuffer to StringBuffer 2025-08-28 03:48:44 +02:00
983c6d4ca4 refactor(tree)!: renamed the save_tree function to snapshot_tree 2025-08-27 03:00:35 +02:00
e63fb4a0fa refactor(tree,utilities)!: moved the PathBuffer to utilities 2025-08-27 02:57:32 +02:00
326a33a3f4 refactor(tree,utilities)!: moved find_root and walk to the utilities and removed the Tree struct in favor or the FileInfoBuffer 2025-08-27 02:03:05 +02:00
8efadf051c refactor(tree)!: changed the api of the PathBuffer and generalized it to a List of char* 2025-08-27 01:23:00 +02:00
7113b53caa feat(utilities): added the List struct for a general purpose dynamic array 2025-08-27 01:22:18 +02:00