Tyler
09acfce995
Merge branch 'master' of github.com:backwaterred/coreutils
2021-07-06 11:55:25 -07:00
Tyler
1ad89c5e89
Addresses issues raised in PR#2474
...
- runs rustfmt on test_dd.rs
- eliminates compiler warnings
- adds many words to spellchecker ignore list
- adds sanity test for vexing conv=nocreat issue. Still WIP.
2021-07-06 11:52:48 -07:00
backwaterred
0b981d9dc3
Update src/uu/dd/src/datastructures.rs
...
Adds project header to conversion_tables.rs
Co-authored-by: Sylvestre Ledru <sledru@mozilla.com>
2021-07-05 11:34:22 -07:00
Tyler
418ecbe61a
Makes multiplier parsing system dependant
...
- multipler is now created as u128, then returned as usize after
conversion. Errors due to overflow now depend on the system on which
the code is run.
2021-07-05 11:27:17 -07:00
Tyler
860cbc6311
Removes or ignores all compiler warnings
2021-07-02 15:30:46 -07:00
Tyler
8e862b86dd
More minor cleanup.
...
- Runs rustfmt.
- Speel check help-text
2021-07-02 14:24:01 -07:00
Tyler
7f03ecf74b
Adds failures & tests for unimplmented flags.
2021-07-02 13:17:34 -07:00
Tyler
5b030b4855
Minor cleanup
...
- Removes compiler warnings.
- Renames conv=nocreat test to be more descriptive.
2021-07-02 11:50:33 -07:00
Tyler
951d9c0822
Completes transition to clap
...
- fixes build issues in parser tests.
2021-07-02 11:31:06 -07:00
Tyler
8334d9f574
Build changes after merge with uutils main
2021-07-02 10:53:15 -07:00
Tyler
92281585a7
Merge branch 'master' of https://github.com/uutils/coreutils into uutils-master
2021-07-01 14:33:30 -07:00
Tyler
17cfba41cc
Implements project testfing from root.
...
- conv=FLAG testing. (1) WIP conv=nocreat
- iflag & oflag testing.
- conv=CONV ascii,...,ucase,...,block,...sync tests at unit-test-level
(project root is todo)
2021-06-30 14:47:48 -07:00
Tyler
47464f50a1
Begin project level testing. Minor fixes.
2021-06-21 11:17:47 -07:00
Tyler
22265814ba
Cleans up compiler warnings.
2021-06-17 14:49:08 -07:00
Tyler
d14b5843a3
Implements libc file open flags (unix only)
2021-06-17 14:33:30 -07:00
Tyler
19996c10a9
Removes 'fast read' plumbing.
...
- The dd info page mentions a special fast-read framework if no conv=FLAG is
specified (see bs=N) which I left space for. As it turns out, this is performed already
so it does not need to be implemented.
2021-06-16 12:59:43 -07:00
Tyler
06dcdc0f1f
Implements status=LEVEL parser.
2021-06-15 12:19:18 -07:00
Tyler
8141919064
Implements count=N
...
- Adds tests for count=READS and count=BYTES.
- Implements count logic for read count and bytes count limits.
2021-06-15 11:06:36 -07:00
Tyler
fc110bb656
Implements status=LEVEL
...
- Adds print fn's
- Modifies internal fn's as needed to track read/write state
- Modifies status update thread to respect status level
- Adds signal handler for SIGUSR1 (print xfer stats)
2021-06-11 17:00:25 -07:00
Tyler
a511db504b
Minor optimization in calculation of lcm for internal r/w buffer.
2021-06-08 14:33:48 -07:00
Tyler
96fd665ce1
Implements internal read/write buffer optimization
...
- Spoiler Alert: Turns out it was just the lcm.
2021-06-08 14:14:19 -07:00
Tyler
ef6c850833
Adds additional conv=sync test for short reads.
2021-06-08 12:37:03 -07:00
Tyler
841faebdac
Impl conv=sync
...
- Adds tests where ibs causes extention
- Impl conv=sync. All tests passing.
2021-06-07 16:13:46 -07:00
Tyler
f7eaf96eda
Fixes bugs. Prepares for conv=sync
...
- Splits read fn into conv=sync and standard (consecutive)
versions.
- Fixes bug in previous read/fill where short reads would copy to wrong
position in output buffer.
- Fixes bug in unit tests. Empty source would pass (since no bytes
failed to match).
2021-06-04 11:29:41 -07:00
Tyler
787b9696cb
Implements Unblock
...
- Adds unit tests
- Implements unblock
- All tests passing
2021-06-02 15:11:14 -07:00
Tyler
7bc151d561
Project structure refactor (cont'd)
...
- Move test macros to specific modules.
2021-06-01 13:02:02 -07:00
Tyler
ead3c8c8fc
Project structure refactor.
...
- Unit tests split into individual folders
- Parseargs test module renamed unit_tests to match new structure
2021-06-01 12:53:23 -07:00
Tyler
391a175dbb
Fix regression in converison logic.
2021-06-01 12:34:15 -07:00
Tyler
48374ab0a2
Imlements block. All tests passing.
2021-06-01 11:39:18 -07:00
Tyler
f2fa1e1be1
Adds additional test resources & unit tests for block.
2021-05-29 15:22:42 -07:00
Tyler
d0b4fe34c1
Refactor. Returns code to buildable
...
- Pushes file/stdout specific logic to trait objects.
- Extracts read/write helper
- Extracts conv/block/unblock helper
- Impl block
- WIP: Many failing tests!
2021-05-27 15:55:29 -07:00
Tyler
d97672dfd3
Continues impl
...
- Completes impl of skip=N, and seek=N
- Parses cbs=N
2021-04-27 12:21:35 -07:00
Tyler
4d7be2f098
Implements functionality for seeking output files
...
- Adds duplicate dd fn :-( for differentiating between File backed and
non-File outputs.
- Implements cflag=sparse,fsync,fdatasync which were previously blocked.
- Adds plumbing for IFlags & OFlags incl parsing.
- Partial impl for seek=N and skip=N which were previously blocked.
2021-04-26 15:17:48 -07:00
Tyler
3c3af72d9a
Implements noerror (ignores read errors)
2021-04-22 14:14:32 -07:00
Tyler
beb7abcff0
Implements swab. Adds odd & even tests.
2021-04-22 13:19:51 -07:00
Tyler
5aabdf854d
Adds plumbing for conv=sparse. Not impl.
...
- conv=sparse option requires knowledge of File/Stdout to change
behaviour.
- Unclear how best to impl this.
- Possible option: develop 4 versions of dd<X,Y> for each valid pair of { File, Stdin,
Stdout }.
2021-04-22 10:56:33 -07:00
Tyler
b461f102cc
Testt conv arg parsing.
2021-04-21 15:24:14 -07:00
Tyler
7f7dd2ad4e
Improves multiplier tests
2021-04-08 19:14:26 -07:00
Tyler
9e933a3860
Completes refactor & clean-up. Implements full conv flag parsing.
...
- All conv flags now parsed (full functionality is TODO)
- Changes functionality of eg. conv=ebcdic,ucase to match gnudd
2021-04-08 19:07:52 -07:00
Tyler
5c8c7efe68
Starts arg parsing. Cleans & refactors.
...
- Moves all arg parsing & tests to parseargs.rs
- Moves conversion tables to conversion_tables.rs
- Adds ebcdic_lcase and _ucase tables
- Refactors options: This **Breaks Write for Output**
2021-04-06 20:44:37 -07:00
Tyler
4996308753
Builds out arg parsing. Adds support for if, of, & multiplier strings)
...
- Adds support for calling dd fn from cl
- Adds basic cl tests from project root
- Adds support for multiplier strings (c, w, b, kB, KB, KiB, ... EB, E,
EiB.
2021-04-03 12:59:03 -07:00
Tyler
0df457596c
Implements conversions:- ascii, ebcdic, ibm, lcase, ucase- adds (simple) tests for conversions
2021-03-25 18:32:47 -07:00
ty
d6086fc649
Adds impl & tests
...
- implements basic copy & progress functionality
- rough work for conversion tables
- adds sanity tests (mt, zeros, ones, deadbeef & rand)
2021-03-18 14:38:08 -07:00
ty
28e6d0d385
Develop prototype code
...
- Move code closer to real impl
- Remove Makefile from repo
2021-03-16 19:39:22 -07:00
ty
af6bf3a224
Begins work on dd
...
- Prototype code.
- Adds project boilerplate for integration with coreutils framework.
2021-03-16 14:32:55 -07:00