Commit Graph

  • 491867fbbb
    sync::oneshot::{Try,}{Send,Recv}Error{<T>,}: Added send + recv + generic error (with consuming variants for re-triable operations.) refactor Avril 2024-04-11 16:08:26 +0100
  • bea2631fb7
    sync: Started sync `oneshot` channel impl Avril 2024-04-09 13:03:51 +0100
  • bcaa9e0703
    buffer: Added `ThreadPool<"scope = "static>` skeleton. Old design removed, redesign using `mpsc` (`crossbeam::channel`) instead of bare-bones channel impl we were using with `Arc<(Condvar, Mutex<...>)>` (See comment in `buffer::thread_pool` about previous impl"s shortcomings and needless complexity.) Avril 2024-04-06 23:58:00 +0100
  • 13be69c884
    buffer: Added `ThreadPool<"scope = "static>` skeleton. TODO: Re-design using normal `mpsc` channel instead of implementing my own fucking channel with the `Arc<(Condvar, Mutex)>` stuff... refactor-thread-pool-no-channel-cmpext Avril 2024-04-06 23:51:34 +0100
  • 0ce496cafd
    Added `CachelineBuffer` and `AlignedCachelineBuffer`: Byte buffers that are the size of one cacheline (2nd: and aligned to cacheline boundary.) Avril 2024-04-03 23:40:45 +0100
  • 03a3a1bfd0
    part: Reworked capacity calculation (static & dynamic,) growth, and bounding to be globally compile-time configurable. Avril 2024-04-03 22:49:15 +0100
  • 49e0dd6073
    part: Removed unneeded 2nd thread spawn in `SearchPar`"s `search_combined()`: Backwards searching is done on main thread, forward searching is done on background thread. refactor-search-capext Avril 2024-04-03 00:12:01 +0100
  • 9d2ae29e8b
    part: `SearchSeq` now uses capacity-extended-switching between forward and backward searching (like `SearchPar` does.) Avril 2024-04-02 18:52:01 +0100
  • f9068beca1
    part: started `partition_one_with()`: Perform one nearest-needle-to-half partition on a buffer. The behaviour of this partition can be controlled with its `method` parameter. There are currently two: `SearchSeq` - search forward then backward in sequence. `SearchPar` - search forward and backward in parallel (NOTE: `SearchPar` is heavy and not well optimised, it will *always* spawn at least one thread.) Avril 2024-04-02 18:16:32 +0100
  • ff898fc9b3
    Added feature `mapped-file`: Attempt to `mmap()` input where possible to avoid reads. (NOTE: This should be replaced with a cfg-target-unix check, for now it is a default feature that can be disabled.) Avril 2024-04-01 15:24:16 +0100
  • 5144539191
    Re-worked cargo features & dependencies: Removed previous config features. Added `threads` parallelisation (+ auto `threads-async` internal io_uring support) feature and `unstable` feature for unstable-api using deps. Avril 2024-04-01 15:22:32 +0100
  • ecbcc6ccfb
    Removed useless TODO master simple Avril 2022-04-08 00:39:36 +0100
  • bd3af1b167
    Removed `byte-strings` as a default feature: It causes a slight slowdown, and most people won"t need it"s functionality. `ignore-invalid-arguments` is thus prefered as default. Avril 2022-04-06 17:54:42 +0100
  • 67aee7c96e
    Added feature (default) `byte-strings`: Operate on raw byte strings instead of UTF8 strings. Avril 2022-04-06 17:26:50 +0100
  • 7c85310ca5
    Start feature `byte-strings`: Operate on raw byte strings instead of UTF8 strings. Avril 2022-04-05 23:28:30 +0100
  • a705723837
    Added README.md Avril 2022-04-05 02:59:27 +0100
  • 5f8d472483
    Added ignore-invalid-args: (default feature flag) Invalid utf8 arguments are ignored from the input arguments (as they are from the stdin lines.) If disabled, the invalid arg is kept and invalid utf8 characters are replaced with the unicode "invalid character" character instead. Avril 2022-04-05 02:33:19 +0100
  • 0a78bcfd55
    TODO: collect_input(): Use non-panicking functions for getting args/lines (so in release builds, no panic handler is generated) Avril 2022-04-04 22:00:19 +0100
  • ed75b8b766
    Added default features: buffer-output, ignore-output-errors Avril 2022-04-04 21:46:48 +0100
  • 5a9edf3f5c
    Added testing features for buffering output, and ignoring output errors. Avril 2022-04-04 21:25:32 +0100
  • 47df7a1e91
    Changed print output to line-by-line (can be re-set to debug print output with feature flag.) Avril 2022-04-04 18:51:41 +0100