Commit graph

50 commits

Author SHA1 Message Date
293ee6e1cc
Get interactive mode from correct argument
All checks were successful
continuous-integration/drone/push Build is passing
2024-02-27 22:44:00 +01:00
5d9856c658
Control log level via -v option
Some checks failed
continuous-integration/drone/push Build is failing
continuous-integration/drone Build is running
Allow the user to control the log level via the conventional `-v`
command line option. Multiplying this option-as per convention-increases
the verbosity.

This is an additional way to set the log level, in addition to the
existing:
- environment variable
- build type (debug vs release)

Given it is the most intentional and direct way to set the log level it
has precedence over all other options.
2024-02-27 21:48:07 +01:00
65053bbcb9
Cleanup some unused includes 2024-02-27 21:47:34 +01:00
c1506c4547
Add more editors/environments to .gitignore 2024-02-27 21:46:11 +01:00
c6e0e92db2
Add more formats, delete leftovers
Some checks failed
continuous-integration/drone/push Build is failing
continuous-integration/drone/tag Build is passing
continuous-integration/drone Build is passing
2022-06-25 21:36:08 +02:00
e6a6e9268e
Refactor to new structure
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/tag Build is passing
2022-06-25 19:57:19 +02:00
7141e67e14
Install gtest in drone
Some checks failed
continuous-integration/drone/push Build is failing
2022-04-09 18:36:02 +02:00
70ae623a1d
Restructure to util add split Intent and Options
Some checks failed
continuous-integration/drone/push Build is failing
2022-04-09 18:23:18 +02:00
89dd5186f5
Move Install section up
All checks were successful
continuous-integration/drone/push Build is passing
2021-02-25 21:26:59 +01:00
a7737533c2
Update README
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/tag Build is passing
2021-02-25 21:10:31 +01:00
df9c9d48cc
Publish build artifacts to dirl
All checks were successful
continuous-integration/drone/push Build is passing
Publish build artifacts to
https://dirlist.friedl.net/cicd/xwim
2021-02-25 19:51:30 +01:00
f80dc1decd
Strip release
All checks were successful
continuous-integration/drone/push Build is passing
2021-02-24 22:23:14 +01:00
8873e7930b
Static release build, cleanup
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/tag Build is passing
2021-02-24 22:20:28 +01:00
a6fb93a484
Static build, disable test and coverage
All checks were successful
continuous-integration/drone/push Build is passing
2021-02-24 22:10:52 +01:00
fe4a5f4460
Use default_library for static build toggle
Some checks failed
continuous-integration/drone/push Build is failing
2021-02-24 21:25:17 +01:00
c3d9dd6360
Fix multiple folder compression
Some checks failed
continuous-integration/drone/push Build is failing
2021-02-21 12:07:19 +01:00
24f1407ed9
Fix folder compression
Some checks failed
continuous-integration/drone/push Build is failing
2021-02-21 12:02:01 +01:00
12afa628d0
Empty trailing path, bump version
Some checks failed
continuous-integration/drone/push Build is failing
2021-02-21 11:17:42 +01:00
6a7e98dbf6
Move extraction output according to plan
Some checks failed
continuous-integration/drone/push Build is failing
2021-02-20 07:26:07 +01:00
4c1c5bf00f
Compression
Some checks failed
continuous-integration/drone/push Build is failing
2021-02-19 06:07:32 +01:00
189be660f5
Refactoring and extraction
Some checks failed
continuous-integration/drone/push Build is failing
2021-02-19 05:28:06 +01:00
f5cddbc0f3
Cleanup 2021-02-14 11:46:03 +01:00
4945bbd45c
Add Makefile
All checks were successful
continuous-integration/drone/push Build is passing
2021-02-07 19:59:05 +01:00
645e93a03c
xkcd attribution
All checks were successful
continuous-integration/drone/push Build is passing
2021-02-07 18:16:53 +01:00
6c8f0cb6bb
Don't return void
All checks were successful
continuous-integration/drone/push Build is passing
2021-01-31 22:26:53 +01:00
6525de9303
Update README
All checks were successful
continuous-integration/drone/push Build is passing
2020-08-03 22:02:35 +02:00
221a6afe2a
Don't set b_coverage by default
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/tag Build is passing
The coverage tracker tinkers with the binary leaving traces behind even in
release builds.
2020-08-03 06:40:34 +02:00
d9cbf47036
Relative root path in archive, clang-format, refactoring
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/tag Build is passing
Compressed archives now contain a single root which consists of the file or
folder being compressed. Before, the archive root contained the full relative
path form the current working directory to the compressed file or folder. This
is unintuitive in most cases and not dwim.
2020-08-03 01:26:52 +02:00
cdb3775eb6
Compression of single folders/files
All checks were successful
continuous-integration/drone/push Build is passing
Platform specific compression (Windows: zip, Unix: tar.gz) for single files or
folders
2020-08-02 12:58:22 +02:00
9230a606ae
Prepare compression implementation
All checks were successful
continuous-integration/drone/push Build is passing
Remove bailout on non-archive argument. Extract extraction and compression into
two conditionally called methods.
2020-08-01 21:12:44 +02:00
7058c326c6
Add argument parser
All checks were successful
continuous-integration/drone/push Build is passing
- Provides better handling of invalid invocation
- Provides usage output
- More flexible for future extension (e.g. compression)
2020-08-01 20:20:27 +02:00
45a5d3372d
Add configuration section to README
All checks were successful
continuous-integration/drone/push Build is passing
2020-08-01 12:09:45 +02:00
53a15e5a7f
Determine log level dynamically
All checks were successful
continuous-integration/drone/push Build is passing
The log level can now be set by environment variable `XWIM_LOGLEVEL`.
Alternatively a default log level per build type (determined by NDEBUG flag) is
used.
2020-08-01 11:41:49 +02:00
c842c02c6f
Update README fix meson build
All checks were successful
continuous-integration/drone/push Build is passing
Project cannot be built until
https://github.com/mesonbuild/meson/pull/7458 lands.
2020-08-01 00:35:34 +02:00
bde99e3ede
Fix archive_entry double free
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/tag Build is passing
continuous-integration/drone/push Build is passing
archive_read_free also frees archive_entries. Avoid
double-free by removing manual free'ing of entry.
2020-03-21 23:56:30 +01:00
e7a0b1b6bd
Update readme
All checks were successful
continuous-integration/drone/push Build is passing
2020-03-05 23:14:05 +01:00
9cb65ce856
Add tests
All checks were successful
continuous-integration/drone/push Build is passing
2020-02-25 23:01:41 +01:00
6a2aa756ca
Switch to glibc build
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/tag Build is passing
2020-02-23 21:48:48 +01:00
06532ba81f
Add zip to release 2020-02-23 20:58:22 +01:00
e59968444e
[feat] Add known fileformats
All checks were successful
continuous-integration/drone/push Build is passing
Reliably stripping (multiple) archive extensions (e.g. .tar.gz) is not supported
by std::filesystem::path. Dots in the regular root folder name can cause issues.

fileformats.hpp adds well-known format extensions which are used for stripping
the extension.

Note that this is not used by libarchive or xwim to determine the
filters/formats for extraction. This is done by libarchive's `bidding`.
2020-02-23 15:28:16 +01:00
064c936f11
[fix] Extractor falls out of scope
All checks were successful
continuous-integration/drone/push Build is passing
Extractor was created and destroyed within the if scope, leading to
a dereference error when trying to call the virtual writer methods.
2020-02-23 09:56:33 +01:00
86ab4a5050
Clean up reader and writer
All checks were successful
continuous-integration/drone/push Build is passing
2020-02-23 01:27:43 +01:00
a04a654055
Add release build for tagged versions
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/tag Build is passing
2020-02-22 20:39:13 +01:00
8249a2f017
archive_sys refactoring: ArchiveEntryView
All checks were successful
continuous-integration/drone/push Build is passing
Entries in libarchive archives are forward iterate only. Entries are owned by
the current archive. Reading the next header can hence invalidate the current
entry.

ArchiveEntrySys was replaced by ArchiveEntryView. ArchiveEntryView now only
guarantees a temporary view of the currently active archive entry.
2020-02-22 20:13:32 +01:00
351849e03f
Add documentation, archive_sys FFI
All checks were successful
continuous-integration/drone/push Build is passing
* Add doxygen documentation generator into build
* Create archive_sys low-level abstraction over libarchive
2020-02-22 13:49:27 +01:00
2b5e6a2659 Create ExtractSpec
All checks were successful
continuous-integration/drone/push Build is passing
2020-02-20 21:09:47 +01:00
008973a7e8 Determine extract spec
All checks were successful
continuous-integration/drone/push Build is passing
2020-02-18 23:42:19 +01:00
d33d0ba544 Read archive spec
All checks were successful
continuous-integration/drone/push Build is passing
2020-02-18 04:48:09 +01:00
40fb299350 Add readme
All checks were successful
continuous-integration/drone/push Build is passing
2020-02-16 03:22:58 +01:00
da51040bde Init 2020-02-16 03:20:12 +01:00