Commit Briefs

Thomas Adam

portable: look for headers portably





Thomas Adam

move pack indexing code into new file lib/pack_index.c

Prepares for sharing code between got-index-pack and future gotd(8).


Thomas Adam

allow got_object_parse_tree to reuse entries buffer allocations for speed

ok millert@


Thomas Adam

let callers of got_pack_create() configure rate-limiting of progress reporting

Needed by future gotd(8), where progress reports will be sent to a network socket, rather than a local terminal.



Thomas Adam

portable: sort makefile source lines

For all key Makefile.am files in use, sort the files so that they're more easily identifiable -- especially when adding/removing source files.


Thomas Adam

portable: fixup portably-included headers

Remove certain headers which are included portably.


Thomas Adam

portable: fix tests


Thomas Adam

move privsep code from pack_create.c into new file pack_create_privsep.c

Needed by future gotd(8). ok op@



Thomas Adam

introduce got_path_move_file(); based on code from lib/patch.c

ok op@



Thomas Adam

check for unlink(2) errors in got_opentempfd()

ok op@


Thomas Adam

check for unlink(2) errors with the == -1 idiom, rather than != 0

ok op@


Thomas Adam

move got_opentempfd() call out of got_pack_create()

Future gotd(8) needs to run got_pack_create() in a chroot environment, so we can no longer open new temporary files inside got_pack_create(). ok op@


Thomas Adam

make got_pack_create() write to a file descriptor instead of a stdio FILE

The old code required a seekable output file. This conflicts with requirements of future gotd(8), which will write pack file data to network sockets. ok op@


Thomas Adam

simplify the way 'got patch' opens a tempfile when reading from stdin

Also add basic test coverage for reading patches from stdin, while here. ok op@



Thomas Adam

portable: handle sys/tree.h

Unfortunately, MacOS doesn't provide sys/tree.h -- so the compat check for this must happen portably.


Thomas Adam

portable: regress: order lib files

For those tests which rely on compilation files, order them alphabetically so it's easier when having to change the makefile stanzas.


Thomas Adam

portable: check for sys/tree.h more fully

When checking for sys/tree.h on non-BSD systems, either it will be in the standard include path (such as on MacOS), or it won't be found, until libbsd is overlayed. In cases where we want to find sys/tree.h via libbsd, perform a AC_CHECK_DECL for a known #define in sys/tree.h -- which will still find sys/tree.h in either location, or uses compat/tree.h in all other cases.


Thomas Adam

portable: remove sha1.h include

This is searched for portably.