licensing and packaging
create a new test suite
create a Makefile
add support for many more formats and filters
create memory_writer
support explicitely setting format and filter for reading
you have to set a format for writing
expose custom_writer and memory_writer at the top
add tests for manipulating archives in memory
create fd_reader and extract_fd
remove unused foreign function
refactor tests

Uses pytest's builtin dependency injection to provide temporary directories to the test functions.
expose fd_reader and extract_fd at the top
show errno and retcode in error messages
add tests for functions that use file descriptors
remove unnecessary method
add tests for error handling
add some pragmas