|
e3f86256
|
2022-02-18T20:23:32
|
|
explicitly include <endian.h> for be32toh()
|
|
8934ea8b
|
2022-02-14T13:14:36
|
|
factorize imsg_clear calls after imsg_flush failures
imsg_clear frees and closes resources allocated as part of enqueueing
imsgs so it's a no-op after reads.
discussed with and ok stsp@
|
|
688fe08b
|
2022-02-14T13:14:36
|
|
fix fd leak in got_fetch_pack, ok stsp@
|
|
28526235
|
2022-02-13T00:12:04
|
|
fix pack.sh test failure from reuse-deltas patch by tweaking progress output
|
|
67fd6849
|
2022-02-13T00:10:25
|
|
reuse existing deltas when creating pack files
tested by thomas, naddy, and myself
|
|
f6027426
|
2022-02-12T21:48:46
|
|
consistently match size of hash variables to that returned by murmurhash
ok millert stsp
|
|
2b474c25
|
2022-02-11T22:45:00
|
|
use murmurhash instead of sha1 for deltification blocks; suggested by ori
|
|
1ac8bad9
|
2022-02-11T22:44:35
|
|
reduce minimum deltification chunk size to 32; suggested by ori
|
|
916237f3
|
2022-02-11T22:42:50
|
|
fix 'got diff' on files which match an ignore pattern; found by Omar Polo
|
|
d75b4088
|
2022-02-08T10:52:17
|
|
set zlib output buffer length properly after resizing the output buffer
ok millert naddy
|
|
a9bd296d
|
2022-02-08T10:48:04
|
|
fix infinite loop in got-index-pack for pack files >= 4GB in size
Because of a missing range check our zlib wrapper would end up
calling zlib over and over with zero bytes of input.
Problem reported by semarie and naddy.
Fixed with help from millert@.
ok millert naddy
|
|
9b4603c0
|
2022-01-31T16:27:14
|
|
improve 'got add' error message if file does not exist; reported by Timo Myyrä
ok tracey
|
|
c7b17232
|
2022-01-28T18:07:47
|
|
fix loose object file header parser for zero-length headers
ok millert tracey
|
|
a47330a2
|
2022-01-27T22:32:09
|
|
fix 'got status' reporting all directories on NFS mounts as unversioned
Problem found and fix tested by Ted Bullock.
ok millert, naddy
|
|
8264d9ee
|
2022-01-27T12:05:24
|
|
fix wrong imsg name in errors raised by got_privsep_send_tree_req()
|
|
9296b03b
|
2022-01-26T10:33:52
|
|
remove unnecessary local variable from got_privsep_get_imsg_obj()
|
|
d1b988e3
|
2022-01-26T10:33:52
|
|
add missing initialization of delta list in got_privsep_get_imsg_obj()
|
|
0ee7a4dc
|
2022-01-26T10:33:21
|
|
fix double-free and double-close issues in error paths of got_packidx_open()
|
|
4e12cd97
|
2022-01-25T22:48:26
|
|
make 'got rm' behave like rm(1) for paths found missing on disk
ok millert@
|
|
692bdcc4
|
2022-01-25T22:48:26
|
|
make 'got rm' report an "unexpected status" error for unversioned files
ok millert@
|
|
969ea98d
|
2022-01-24T08:04:11
|
|
remove non-reachable 'return NULL' statement from report_single_file_status()
|
|
72840534
|
2022-01-19T12:04:58
|
|
compress delta data from delta_cache directly into pack file
|
|
30ee8dc8
|
2022-01-18T20:51:19
|
|
add missing error check in got_inflate_to_mem_mmap()
|
|
3bfc2334
|
2022-01-11T15:37:06
|
|
fix file corruption regression in 'got checkout' caused by commit db696021
got-read-pack must rewind its files temporary files before reusing them.
Problem reported by naddy
ok tracey naddy
|
|
3976db15
|
2022-01-10T14:46:30
|
|
add missing checks for reads beyond the mapped memory area of a pack file
|
|
402a5ec1
|
2022-01-10T13:13:16
|
|
set a cap on the amount of memory we use to store encoded deltas
|
|
5060d5a1
|
2022-01-10T11:09:25
|
|
encode short deltas in memory instead of writing them to a temporary file
|
|
64a8571e
|
2022-01-07T23:32:27
|
|
map raw object files into memory while packing if possible
|
|
59b21794
|
2022-01-07T14:33:52
|
|
only open raw objects if necessary while writing out pack file data
significantly speeds up the "writing pack: " step of gotadmin pack
|
|
0f71f619
|
2022-01-06T22:30:35
|
|
fix wrong path in a comment
|
|
2471f5c4
|
2022-01-06T19:20:52
|
|
sync files from diff.git b72f51ffc39028023059fc994542565691b669fa
This fixes a scrolling problem in tog's diff view for diffs which
contain lines of the form "Binary files %s and %s differ".
|
|
dbe266a4
|
2022-01-05T20:24:13
|
|
print status output even if 'gotadmin cleanup' finds no objects to remove
|
|
9cd5f067
|
2022-01-05T20:14:59
|
|
fix amount of purged objects shown in gotadmin cleanup's final progress report
|
|
211cfef0
|
2022-01-05T19:57:10
|
|
use time-based rate-limiting for gotadmin progress output
Suggested by naddy some time ago.
ok tracey
|
|
db696021
|
2022-01-04T16:11:52
|
|
avoid the creation of new temporary files whenever a packed object is read
This speeds up the creation of pack files by about 30%.
|
|
404bde06
|
2022-01-03T21:51:02
|
|
fix bogus "object not found" errors when object ID begins with 00
ok thomas_adam
|
|
c0df5966
|
2021-12-31T09:33:01
|
|
wrap overlong lines
|
|
e7ae0baf
|
2021-12-31T09:11:22
|
|
add O_CLOEXEC (close-on-exec) to openat(2) calls
suggested by millert
ok thomas_adam
|
|
8bd0cdad
|
2021-12-31T09:11:21
|
|
add O_CLOEXEC (close-on-exec) flag to open(2) calls
suggested by millert
ok thomas_adam
|
|
00fe21f2
|
2021-12-31T09:11:21
|
|
add "e" (close-on-exec) flag to fopen(3) calls
suggested by millert
ok thomas_adam
|
|
ed7cc4a8
|
2021-12-29T12:03:33
|
|
remove outdated comment
|
|
197088a4
|
2021-12-27T05:20:04
|
|
whitespace
|
|
46ea77db
|
2021-12-20T16:18:41
|
|
sort paths in got log -Pp and tog's diff view the same way as in the diff
reported by and fix confirmed by naddy
|
|
4a55b231
|
2021-12-09T16:10:25
|
|
ignore the return value of closefrom(2); patch by Anna a.k.a. CyberTailor
millert@ suggests that this check is not needed, and that ideally we
should be using close-on-exec instead. I will look into this, but in the
meantime this change will help -portable: https://bugs.gentoo.org/828003
|
|
f6f4c787
|
2021-11-23T19:12:49
|
|
sync files from diff.git f1dbec24f9a9553e22659f6c592c91e96221f6b9
|
|
42864987
|
2021-11-20T11:14:44
|
|
fall back to comparison by name when refs have the same timestamp
This fixes an issue where some references were missing from lists of
references sorted by timestamp.
|
|
2d497592
|
2021-11-20T10:40:33
|
|
implement got_reflist_sort() which sorts a ref list in-place
|
|
0309152a
|
2021-11-20T10:39:04
|
|
fix uninitialized error from got_ref_cmp_by_commit_timestamp_descending()
|
|
7f66531d
|
2021-11-16T14:33:26
|
|
allow sorting references by timestamp in tog
|
|
0e039681
|
2021-11-15T17:00:36
|
|
preverse binary files during updates and merges
|
|
7d69d862
|
2021-11-15T15:18:40
|
|
let gotadmin find the repository automatically if invoked in a work tree
Move a small amount of code from worktree.c to a new file worktree_open.c,
which contains everything required to open and close a work tree and inspect
some of its basic parameters. This can be used by gotadmin.
ok tracey
|
|
47a90748
|
2021-10-27T15:23:59
|
|
remove unused variables to fix LLVM 13 warnings; ok stsp
|
|
22edbce7
|
2021-10-24T09:41:04
|
|
use up to 128 delta chain elements again; creates smaller packs at same speed
|
|
4f4d853e
|
2021-10-24T09:41:04
|
|
try only 3 delta base candidates instead of 10 to speed up packing
Tests by kn, thomas_adam and myself made on various repositories
indicate that 3 is a good choice. Tyring 10 deltas is much slower
and does not result in significantly smaller pack files.
|
|
15a5c949
|
2021-10-17T14:12:46
|
|
set oldo.to in diff3.c's duplicate() even if the file contains no newlines
|
|
8383a50b
|
2021-10-17T14:11:32
|
|
always initialize output parameter "n" of get_line() in diff3.c
|
|
4f18c400
|
2021-10-16T15:01:42
|
|
fix another segfault in edscript()
Same problem as fixed in 90de04bc7f1b85b9c491bcd124f6178fad005de1.
ok stsp
|
|
92410079
|
2021-10-16T14:50:03
|
|
fix regression where 'got send -T' failed if same tag already exists on server
Problem reported and fix tested by Omar Polo.
|
|
a319ca8c
|
2021-10-15T10:36:12
|
|
move encode_delta() in pack_create.c to eliminate a forward declaration
|
|
74881701
|
2021-10-15T10:34:44
|
|
while packing, store encoded deltas in a temporary file instead of in memory
|
|
dc20764a
|
2021-10-15T09:30:29
|
|
limit delta chain length in newly created pack files to 32 deltas
Our former limit was 128 which is fairly high. Git uses 50 by default.
A smaller limit results in slightly larger pack files but makes both
packing and unpacking faster.
|
|
94dac27c
|
2021-10-15T09:24:56
|
|
raw object blocksize and read buffer were unused; remove them
|
|
284e7663
|
2021-10-15T09:21:46
|
|
remove unused internal raw object API functions
|
|
d3c116bf
|
2021-10-15T09:10:14
|
|
cache raw objects in order to speed up gotadmin pack
|
|
cc7a354a
|
2021-10-15T07:15:00
|
|
reuse temporary files which were not used by got_object_raw_open()
|
|
e65c7410
|
2021-10-14T20:50:01
|
|
add missing error checks in got_object_raw_open()
|
|
600b755e
|
2021-10-14T20:30:26
|
|
avoid opening delta base objects in genpack() just to find their size
|
|
08347b73
|
2021-10-14T17:27:26
|
|
encode deltas in temporary files to avoid high memory usage
|
|
5df018ff
|
2021-10-14T16:03:22
|
|
rework murmurhash2() to avoid potential unaligned memory access
pointed out by naddy@
ok millert@
|
|
1d19226a
|
2021-10-13T18:48:15
|
|
fix two more error strings in pack_create.c using the wrong function name
|
|
2d467c6d
|
2021-10-13T18:07:29
|
|
fix wrong function in error string of emitdelta()
|
|
f8b19efd
|
2021-10-13T11:09:15
|
|
use RB_TREE instead of STAILQ to manage packindex bloom filters; much faster
|
|
8f2ca62d
|
2021-10-13T10:34:06
|
|
do not skip ignored directories in 'got status' if they contain tracked files
Fixes regression introduced by commit 41f061b2f459318f3738f59d7676efccc4beb344
where tracked files inside an ignored directory were reported as missing.
|
|
b343c297
|
2021-10-11T18:54:11
|
|
use a bloom filter to avoid pointless pack index searches
|
|
7a0b1068
|
2021-10-11T18:54:08
|
|
fix pack index cache element rotation; keep often used entries near the front
|
|
90de04bc
|
2021-10-11T18:32:16
|
|
fix a segfault in edscript() introduced by my previous commit
Found by our cherrypick regression tests.
|
|
f10244c0
|
2021-10-11T18:25:11
|
|
fix merging of files which contain a dot on a line by itself
Annoying bug which we inherited from OpenRCS which inherited
it from OpenBSD's diff3 program.
ok tracey millert
|
|
2c9e323b
|
2021-10-10T19:26:26
|
|
speed up 'got histedit -l' and 'got rebase -l'
Cache commit timestamps in struct got_reference in case we are sorting
references by commit timestamp. This avoids opening and closing commits
every time we compare two references with each other.
ok thomas.adam
|
|
67b631c9
|
2021-10-10T15:22:14
|
|
implement 'got diff -c' for diffing commits with optional filtering by path
Need for filtering by path sugggested by kn@
ok naddy@
|
|
138e4f47
|
2021-10-09T19:47:15
|
|
display the requested object type when an object could not be found
ok millert@
|
|
237cfda1
|
2021-10-08T22:34:25
|
|
make got_repo_match_object_id() filter tags by the requested object type
Potentially this function could return objects of a type that was not
requested. Problem found by code inspection.
This change does not affect any of our existing tests.
|
|
aaef19b4
|
2021-10-08T08:33:30
|
|
sync files from diff.git 346d4986568ffbcfdc53cce45dd8a468535a68f2
|
|
f736d93a
|
2021-10-07T19:12:36
|
|
link to the FastCDC paper from deltify.c; suggested by Ori some time ago
|
|
6eab69f7
|
2021-10-07T19:08:52
|
|
make the number of elements in deltify's geartab explicit
|
|
fbceed27
|
2021-10-07T15:38:38
|
|
Provide lib/Makefile to enable tags file generation
The root Makefile does not hook into lib/ via <bsd.subdir.mk> since it
is not a program itself and thus gets included by all others.
This means `make tags` skips lib/ and `make -C lib/ tags` does not know
what to do; provide a minimal <bsd.lib.mk> stub and hook it up just
for the "tags" such that *all* source is browsable via tags.
See /usr/share/mk/bsd.README for details.
Feedback stsp tb
OK tb
|
|
e99d9267
|
2021-10-07T15:29:27
|
|
plug memory leaks in got-fetch-pack and got-send-pack
ok naddy
|
|
dd088d95
|
2021-10-06T19:49:06
|
|
let 'got fetch' send all references to the server to avoid redundant downloads
Problem reported by naddy.
ok naddy
|
|
62da3196
|
2021-10-01T13:58:31
|
|
skip ignored directories during 'got status' disk crawl
|
|
965803d3
|
2021-09-28T20:55:16
|
|
fix 'got fetch' downloading too many objects in some cases
Always announce all local references to the server when fetching changes.
We used to do this only in mirror mode. In regular mode only refs/tags
and refs/remotes/origin were announced, which could result in unnecessary
downloads if relevant objects exist in refs/heads or elsewhere.
|
|
9dd14b99
|
2021-09-28T19:21:34
|
|
got_sha1_digest_to_str() writes to char *
ok stsp
|
|
31e61ec1
|
2021-09-28T19:21:33
|
|
match the unsigned char type used by the zlib interface
ok stsp
|
|
0ff8d236
|
2021-09-28T06:59:08
|
|
show commit progress output when 'got merge -c' is used
Otherwise no progress output is shown at all with this command.
Commit progress output will also display any additional changes
which resulted from conflict resolution.
ok millert@
|
|
4e91ef15
|
2021-09-26T17:51:35
|
|
make it possible to merge vendor branches with 'got merge'
|
|
5c02d2a5
|
2021-09-26T17:40:10
|
|
for portability, handle errno variations upon open(2) failure with O_NOFOLLOW
Problem pointed out by naddy for FreeBSD -portable.
Discussed with millert, thomas adam, and naddy.
|
|
5267b9e4
|
2021-09-26T11:41:40
|
|
allow bad symlinks to survive a merge
Commands which perform merges will now install bad symlinks as symlinks
in the work tree, instead of creating them as regular files. This means
bad symlinks committed with 'got commit -S' (or Git) will be preserved.
The decision to introduce a bad symlink is done at commit-time and
merges should not forcefully reverse this decision.
The cherrypick and backout commands require a manual commit step, and
a merge result with bad symlinks will require use of 'got commit -S'.
Additional testing by thomas adam
|
|
fda3525e
|
2021-09-25T10:23:12
|
|
mark some function parameters as 'const', as they should be; patch by Omar Polo
|
|
f6764181
|
2021-09-24T21:52:59
|
|
fix 'got update' of an added + obstructed file
When 'got update' tried to add a new file to the work tree and this
file was obstructed by, say, a directory on disk, the update failed:
$ got update
? new
got: new: Is a directory
$
And the work tree was not updated.
With this commit this situation is properly detected as an obstruction
and the update succeeds:
$ got update
~ new
Updated to refs/heads/master: c1f85b4938dc4c668a88f13df2b98a520fc077cc
File paths obstructed by a non-regular file: 1
$
Extend a corresponding test case to cover this issue.
ok tracey
|
|
793fcac3
|
2021-09-24T20:14:09
|
|
plug memory leak in got_worktree_merge_in_progress(); spotted by tracey
|
|
f259c4c1
|
2021-09-24T19:55:02
|
|
add a 'got merge' command for creating merge commits
Additional testing by Thomas Adam.
ok tracey
|
|
3af9de88
|
2021-09-22T13:32:37
|
|
fix 'got send' with tree objects which contain symlinks; reported by Omar
|