lib/object.c


Log

Author Commit Date CI Message
Stefan Sperling d1451975 2018-11-11T13:52:20 add custom error code for 'no such tree entry' errors
Stefan Sperling 91a3d81f 2018-11-11T13:41:46 introduce got errors with custom messages; add one for ERR_NO_OBJ
Stefan Sperling 63da309a 2018-11-07T05:22:46 tree entries are sorted, so find_entry_by_name() can exit early
Stefan Sperling 08451938 2018-11-05T23:23:23 no need to zero path during allocation in get_packfile_path()
Stefan Sperling f054b67a 2018-11-05T22:28:03 remove object_idcache; use object_idset instead
Stefan Sperling 984e8a45 2018-11-05T21:18:58 implement object idset with a red-black tree
Stefan Sperling 29696368 2018-11-05T16:58:13 rename local variable in got_object_tree_path_changed()
Stefan Sperling 41fa1437 2018-11-05T15:30:15 back out mini-commits; no significant performance difference
Stefan Sperling 710f3f4e 2018-11-05T15:26:18 make got-read-pack pre-seed the main process mini commit cache
Stefan Sperling 05e1230b 2018-11-05T12:42:03 rename got_commit_object_mini to got_mini_commit_object
Stefan Sperling e32baab7 2018-11-05T12:39:49 add an object cache for mini commits
Stefan Sperling 7762fe12 2018-11-05T11:46:30 add a mini-commit object for use by commit graph
Stefan Sperling 77880158 2018-11-04T13:09:52 move code not used by libexec tools out of object_parse.c
Stefan Sperling 2673a8da 2018-09-19T20:01:20 whitespace
Stefan Sperling 298a4a4b 2018-09-19T20:00:36 avoid unnecessary strlen() call in find_entry_by_name()
Stefan Sperling d9e7e1f6 2018-09-19T16:08:32 match tree entries exactly, not by prefix, in find_entry_by_name()
Stefan Sperling 71eb0e7f 2018-09-16T19:24:26 eliminate redundant cache search in got_object_open_as_tree()
Stefan Sperling 434025f3 2018-09-16T19:22:12 eliminate redundant cache search in got_object_open_as_commit()
Stefan Sperling e8eb494a 2018-09-16T19:18:01 check caches first in got_object_open_as_{tree,commit}()
Stefan Sperling 59790a32 2018-09-15T21:41:21 search pack index before doing a stat for loose objects
Stefan Sperling 65a9bbe9 2018-09-15T21:23:55 avoid strdup in got_object_id_by_path() and got_object_tree_path_changed()
Stefan Sperling a31cea73 2018-09-15T20:43:39 fix leaked trees in got_object_tree_path_changed()
Stefan Sperling f970fa8a 2018-09-15T20:27:04 fix filtering for directory paths in 'got log'
Stefan Sperling 07862c20 2018-09-15T15:32:22 introduce got_object_tree_path_changed() and use it in 'got log'
Stefan Sperling 27d434c2 2018-09-15T13:52:06 replace got_object_open_by_path() with got_object_id_by_path()
Stefan Sperling 6402fb3c 2018-09-15T13:21:51 change got_object_get_id() semantics; avoids pointless allocations
Stefan Sperling 2ff12563 2018-09-15T12:39:48 fix 'make PROFILE=1' build
Stefan Sperling 3840f4c9 2018-09-13T00:06:12 fix "rpath" pledge violation in got-read-pack
Stefan Sperling 6bef87be 2018-09-11T11:23:44 move object cache out of repository.c to its own file
Stefan Sperling 55da3778 2018-09-10T18:39:31 read packed blobs with privsep
Stefan Sperling e7885405 2018-09-10T17:26:06 read packed trees with privsep
Stefan Sperling cfd633c2 2018-09-10T17:07:59 read packed commits with privsep
Stefan Sperling 876c234b 2018-09-10T12:30:47 start reading pack files with privsep; still WIP
Stefan Sperling 7e212e3d 2018-09-09T17:24:46 make got_packfile_extract_object_to_mem() accept pack instead of repo
Stefan Sperling 24140570 2018-09-09T17:19:27 make got_packfile_extract_object() accept a pack instead of a repo
Stefan Sperling 2090a03d 2018-09-09T17:00:33 make got_packfile_open_object() accept a pack instead of a repo
Stefan Sperling ad242220 2018-09-08T16:40:28 implement fork+exec (and by the way, fix the build...)
Stefan Sperling 03fa71c8 2018-09-06T17:42:46 move some more functions from object.c to object_parse.c
Stefan Sperling a440fac0 2018-09-06T17:33:13 move object parsing code into a separate file
Stefan Sperling 11cdebc1 2018-09-03T00:59:21 remove unused argument from read_commit_object_privsep()
Stefan Sperling cd31e911 2018-07-23T17:49:17 fix a leak and use recallocarray in read_object_header()
Stefan Sperling 7a132809 2018-07-23T11:41:06 fix leak in object_path()
Stefan Sperling fa2f6902 2018-07-23T11:30:26 use got_object_qid_free() consistently
Stefan Sperling ca008b32 2018-07-22T15:38:50 fix leak in got_object_open_by_path()
Stefan Sperling 062ebb78 2018-07-13T00:30:22 replace some calloc() with malloc() in object.c
Stefan Sperling dbc6a6b6 2018-07-12T19:05:28 allow going back to previously blamed commits in tog blame
Stefan Sperling 84451b3e 2018-07-10T13:17:00 implement incremental blame display for tog
Stefan Sperling 63581804 2018-07-09T22:23:00 rename zbuf to inflate
Stefan Sperling 883f0469 2018-06-23T17:57:39 make struct got_tree_object opaque
Stefan Sperling 4842267f 2018-06-22T20:51:08 remove unnecessary fdopen()
Stefan Sperling cc538cdd 2018-06-22T11:45:31 fix mem leak introduced with caching: actually close objects
Stefan Sperling 1943de01 2018-06-22T10:46:10 add a commit cache as well
Stefan Sperling f6be5c30 2018-06-22T10:33:04 add a tree object cache to struct got_repository
Stefan Sperling 7bb0daa1 2018-06-22T01:53:06 add a very simple object cache
Stefan Sperling 835e0dbd 2018-06-21T23:42:37 init output param of got_object_open_as_*
Stefan Sperling a19581a2 2018-06-21T22:04:27 implement got_object_open_as_blob()
Stefan Sperling 67606321 2018-06-21T21:40:51 fix path length accounting in got_object_open_by_path()
Stefan Sperling db37e2c0 2018-06-21T21:32:13 rename 'entry' to 'te' in got_object_open_by_path()
Stefan Sperling 00530cfb 2018-06-21T21:10:38 don't quit loop too early in got_object_open_by_path()
Stefan Sperling 197aa481 2018-06-21T21:05:01 fix bogus free() in got_object_open_by_path()
Stefan Sperling 1cbc02b6 2018-06-21T21:02:45 fix object type check in got_open_object_as_tree()
Stefan Sperling 35e9ba5d 2018-06-21T19:41:20 introduce got_object_blob_dump_to_file()
Stefan Sperling 776d4d29 2018-06-17T12:34:17 add got_object_open_as_tree() and got_object_open_by_path()
Stefan Sperling 788c352e 2018-06-16T19:18:32 store commit timestamps as 'struct tm' in UTC
Stefan Sperling be6a1b5a 2018-06-11T03:17:51 promote commit graph's open_commit() helper to public API
Stefan Sperling 79f35eb3 2018-06-11T03:09:27 rename got_parent_id to got_object_qid; better generic name
Stefan Sperling 7cd42a1a 2018-06-11T02:17:16 free timezone offset strings in got_object_commit_close()
Stefan Sperling 6c281f94 2018-06-11T02:14:44 show timezone offset in 'got log'
Stefan Sperling 4626e416 2018-06-11T01:25:06 parse commit timestamps when opening commits
Stefan Sperling 6e790f45 2018-06-11T00:50:26 move parse_commit_time() to object.c and make public API
Stefan Sperling bacc9935 2018-05-20T13:02:12 show log message above a diff between commits
Stefan Sperling 511a516b 2018-05-19T16:57:12 move got_opentmp* functions to public API; used from tog
Stefan Sperling b419fc47 2018-04-26T22:17:43 error out if child dies or does not exit with success
Stefan Sperling 8b2180d4 2018-04-26T19:47:10 store fd instead of FILE in struct got_pack to prepare privsep
Stefan Sperling be37c2e6 2018-04-24T22:21:09 don't pass redundant program name to setproctitle()
Stefan Sperling 1a6b3ab7 2018-04-24T13:34:24 fix error code in got_object_blob_open()
Stefan Sperling 2967a784 2018-04-24T13:30:34 verify size of blob received from privsep child
Stefan Sperling ff6b18f8 2018-04-24T12:50:21 read blobs through privsep
Stefan Sperling 068fd2bf 2018-04-24T12:27:59 give some privsep functions shorter names
Stefan Sperling 3aca5731 2018-04-24T12:24:57 prepare for blob privsep: use file descriptors instead of FILE
Stefan Sperling 57efb1af 2018-04-24T10:41:15 add open_loose_blob() helper
Stefan Sperling c7254d79 2018-04-24T10:32:10 simplify error handling in got_object_blob_open()
Stefan Sperling 15c8b0e6 2018-04-24T10:23:38 extract blobs to tempfiles instead of reading through zlib
Stefan Sperling e033d803 2018-04-23T18:30:26 read tree objects with privsep
Stefan Sperling e506bf32 2018-04-23T15:39:51 typo
Stefan Sperling bff6ca00 2018-04-23T15:38:35 read commit objects with privsep
Stefan Sperling e3306bd9 2018-04-23T07:20:32 simplify variable names in read_object_header_privsep_child()
Stefan Sperling 302b7dd6 2018-04-23T07:17:21 add read_object_header_privsep_child() helper
Stefan Sperling 6cd97fcc 2018-04-22T16:34:33 plug fd leak in read_object_header_privsep()
Stefan Sperling d5003b79 2018-04-22T16:33:07 make open_loose_object return a file descriptor
Stefan Sperling 15d3ea56 2018-04-22T15:54:56 close pipe in unpriv child
Stefan Sperling 2178c42e 2018-04-22T14:51:49 read object headers with privsep
Stefan Sperling e6b1056e 2018-04-22T13:21:17 initialize output parameter in object_path()
Stefan Sperling 3235492e 2018-04-01T18:17:18 add the ability to start the log at a particular commit
Stefan Sperling 0a585a0d 2018-03-17T18:13:19 remove GOT_ERR_NO_MEM, we can just use errno in those cases
Stefan Sperling 718b3ab0 2018-03-17T17:50:48 rename the library-internal headers again to a common prefix
Stefan Sperling 8bf5b3c9 2018-03-17T17:42:48 rewrite 'got log' without recursion
Stefan Sperling 56866f4a 2018-03-17T15:27:00 fix resource leaks in error paths of got_object_blob_open()
Stefan Sperling d0f3be7c 2018-03-17T15:17:14 initialize some output variables on failure
Stefan Sperling 18e99ab6 2018-03-17T03:32:28 fix fd leak in got_object_open()