lib/repository.c


Log

Author Commit Date CI Message
Stefan Sperling 79c99a64 2019-05-23T22:24:13 don't leak objects which can't be cached
Stefan Sperling ff563a3d 2019-05-23T21:04:23 replace got_pack_get_packfile_size() with simple fstat()
Stefan Sperling 638f9024 2019-05-13T12:40:57 rename got_error_prefix_errno() to got_error_from_errno()
Stefan Sperling 2f17228e 2019-05-11T21:18:39 lock branch reference file during 'got commit' to prevent a race
Stefan Sperling 1dd54920 2019-05-11T18:50:57 open the file index just once when adding multiple files
joshua stein 230a42bd 2019-05-11T13:04:38 got_error_from_errno -> got_error_prefix_errno also add got_error_prefix_errno2 and got_error_prefix_errno3 which should hopefully all be merged into a single function with variadic args (but can't alloc mem)
Stefan Sperling 324d37e7 2019-05-11T09:14:30 make got path APIs available to library consumers
Stefan Sperling a5b57ccf 2019-04-11T13:37:50 omit unused mode argument to open(2)
Stefan Sperling b70703ad 2019-03-18T17:16:10 fix bugs in got_repo_map_path() and add more related tests
Stefan Sperling c442a90d 2019-03-10T15:55:28 read UUID back from work tree meta data
Stefan Sperling 3a11398b 2019-02-21T14:15:33 more specific mmap(2) failure checks
Stefan Sperling 3a6ce05a 2019-02-11T12:32:53 check for errors from close(2)
Stefan Sperling ee645855 2019-02-05T16:33:30 stop checking for a worktree in open_repo()
Stefan Sperling fb79db15 2019-02-01T21:01:58 add read support for packed refs
Stefan Sperling 5d56da81 2019-01-13T17:15:53 happy new copyright year
Stefan Sperling 6e9da951 2019-01-06T10:46:46 make got_repo_get_path_git_dir() return const char *
Stefan Sperling 7839bc15 2019-01-06T10:42:56 make got_repo_get_path() return const char *
Stefan Sperling f4a881ce 2018-11-17T16:04:05 more support for tag objects; new code is not yet reachable
Stefan Sperling 91a3d81f 2018-11-11T13:41:46 introduce got errors with custom messages; add one for ERR_NO_OBJ
Stefan Sperling 15fe583f 2018-11-05T17:57:30 search most recently opened pack index first, not last
Stefan Sperling 41fa1437 2018-11-05T15:30:15 back out mini-commits; no significant performance difference
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 23721109 2018-10-22T23:47:25 fix logging /sys in tog while /sys symlink exists on disk
Stefan Sperling 5c2f5761 2018-09-19T15:53:10 fix git repository detection segv bug
Stefan Sperling 90636195 2018-09-11T18:28:37 initialize privsep child pointer in got_repo_cache_pack()
Stefan Sperling c59b3346 2018-09-11T12:29:46 stop sending deltas in imsg; cache deltas 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 876c234b 2018-09-10T12:30:47 start reading pack files with privsep; still WIP
Stefan Sperling 1510f469 2018-09-09T16:33:32 move pack caching code from pack.c to repository.c
Stefan Sperling 3516b818 2018-09-08T17:42:23 init ibuf only once for the lifetime of a privsep child
Stefan Sperling ad242220 2018-09-08T16:40:28 implement fork+exec (and by the way, fix the build...)
Stefan Sperling 04ca23f4 2018-07-16T13:05:23 allow filtering history by paths in 'got log'
Stefan Sperling 85f51bba 2018-07-16T07:49:08 scan upwards for git repositories
Stefan Sperling ccfe88e6 2018-07-13T00:39:26 provide a compile-time toggle for object caching
Stefan Sperling 63581804 2018-07-09T22:23:00 rename zbuf to inflate
Stefan Sperling eb77ee11 2018-07-08T18:06:36 add an object id cache which backs the object cache
Stefan Sperling 60f2eee1 2018-07-08T17:18:45 undo previous; too much mixup in one data structure
Stefan Sperling d54f52f4 2018-07-07T16:50:10 store recently accessed objects at front of cache lists
Stefan Sperling cd717821 2018-06-22T11:35:41 add some disabled refcount debug code
Stefan Sperling 4307e577 2018-06-22T11:04:15 size object caches independently of each other
Stefan Sperling 1943de01 2018-06-22T10:46:10 add a commit cache as well
Stefan Sperling a9bf0c2c 2018-06-22T10:35:09 no need to manually count elements of a set
Stefan Sperling f6be5c30 2018-06-22T10:33:04 add a tree object cache to struct got_repository
Stefan Sperling 54f20211 2018-06-22T10:00:23 introduce struct got_object_cache
Stefan Sperling 50bc349d 2018-06-22T09:54:10 implement repository object cache via object_idset
Stefan Sperling 2d5e8ac7 2018-06-22T01:53:54 remove debug output
Stefan Sperling 7bb0daa1 2018-06-22T01:53:06 add a very simple object cache
Stefan Sperling 442a3ddc 2018-04-23T09:38:37 try to infer repository path from work tree
Stefan Sperling 5261c201 2018-04-01T23:37:09 rename 'refs' to 'reference'
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 f7e127f3 2018-03-17T02:02:32 move delta cache into struct got_pack
Stefan Sperling 7e656b93 2018-03-17T01:37:48 add struct got_pack; some preparation for mmap, which isn't used yet
Stefan Sperling 65cf1e80 2018-03-16T22:33:22 revert the pack file handle cache again; needs more thought
Stefan Sperling 87c99799 2018-03-16T21:26:06 start caching file handles to packfiles
Stefan Sperling bd1223b9 2018-03-14T01:21:09 add a delta cache; saves us from reading + decompressing some deltas
Stefan Sperling 4847cca1 2018-03-12T20:56:31 make is_git_repo() check for a usable HEAD reference
Stefan Sperling 4986b9d5 2018-03-12T20:51:37 add support for opening bare repositories
Stefan Sperling deeca238 2018-03-12T20:41:51 in is_git_repo(), actually verify presence of git repository dirs and files
Stefan Sperling 32cb896c 2018-03-11T14:10:56 rename library-private headers from *_priv.h to *_lib.h
Stefan Sperling 5677e194 2018-03-11T13:20:25 rename got_zb_priv.h to got_zbuf_priv.h
Stefan Sperling 86c3caaf 2018-03-10T00:22:23 add worktree skeleton code; implement got_worktree_init()
Stefan Sperling 79b11c62 2018-03-09T17:01:49 add a pack index cache; speeds tree listing up quite a lot
Stefan Sperling 2393f13b 2018-03-09T15:36:55 support an absolute repos path argument in got_repo_open()
Stefan Sperling 1411938b 2018-02-12T23:25:38 rename private header filenames so they are in got_ namespace
Stefan Sperling 3b339b2f 2018-02-12T22:56:07 make struct got_repository opaque
Stefan Sperling a1fd68d8 2018-01-12T20:59:51 Extract non-deltified objects from pack files.
Stefan Sperling cb672fbd 2018-01-10T22:14:47 remove unncessary #include
Stefan Sperling a0448d60 2017-11-12T16:10:06 remove an unused function
Stefan Sperling 11995603 2017-11-05T17:26:31 resolve symbolic refs
Stefan Sperling c3f94f68 2017-11-05T14:20:01 remove got_path functions from public api
Stefan Sperling 92af5469 2017-11-05T14:15:47 do not require that got applications normalize paths
Stefan Sperling 4df642d9 2017-11-05T13:54:45 add more special refs which live directly in .git
Stefan Sperling 7b19e0f1 2017-11-05T13:35:01 add copyright
Stefan Sperling 4027f31a 2017-11-04T19:41:54 initial import; current implementation only parses the .git/HEAD ref