[Upkeep] updated deps fixed build-breaks and sorted links

This commit is contained in:
Michal Budzynski 2017-11-02 20:05:43 +01:00 committed by Michał Budzyński
parent 5a77148d32
commit 38d59c3e92
10 changed files with 128 additions and 130 deletions

View file

@ -15,17 +15,17 @@ cc = "1.0.0"
chrono = "0.4"
clap = "2.26"
crossbeam = "0.3"
csv = "1.0.0-beta.4"
csv = "1.0.0-beta.5"
data-encoding = "2.0.0-rc.1"
env_logger = "0.4"
error-chain = "0.11"
flate2 = "0.2"
glob = "0.2"
image = "0.16"
image = "0.17"
lazy_static = "0.2"
log = "0.3"
log4rs = "0.7"
memmap = "0.5"
memmap = "0.6"
num = "0.1"
num_cpus = "1.5"
petgraph = "0.4"
@ -34,9 +34,9 @@ rayon = "0.8"
regex = "0.2"
reqwest = "0.8"
ring = "0.12.0"
same-file = "0.1"
same-file = "1.0"
select = "0.4"
semver = "0.8.0"
semver = "0.9"
serde = "1.0"
serde_derive = "1.0"
serde_json = "1.0"
@ -45,7 +45,7 @@ tempdir = "0.3.5"
threadpool = "1.6"
toml = "0.4"
url = "1.5"
walkdir = "1.0.7"
walkdir = "2.0"
[target.'cfg(target_os = "linux")'.dependencies]
syslog = "3.3.0"

View file

@ -449,14 +449,14 @@ fn run() -> Result<()> {
[![walkdir-badge]][walkdir] [![cat-filesystem-badge]][cat-filesystem]
Uses [`WalkDirIterator::filter_entry`] to descend recursively into entries passing the `is_not_hidden` predicate thus skipping hidden files and directories whereas [`Iterator::filter`] would be applied to each [`WalkDir::DirEntry`] even if the parent is a hidden directory.
Uses [`filter_entry`] to descend recursively into entries passing the `is_not_hidden` predicate thus skipping hidden files and directories whereas [`Iterator::filter`] would be applied to each [`WalkDir::DirEntry`] even if the parent is a hidden directory.
Root dir `"."` is yielded due to [`WalkDir::depth`] usage in `is_not_hidden` predicate.
```rust,no_run
extern crate walkdir;
use walkdir::{DirEntry, WalkDir, WalkDirIterator};
use walkdir::{DirEntry, WalkDir};
fn is_not_hidden(entry: &DirEntry) -> bool {
entry
@ -789,28 +789,28 @@ fn run() -> Result<()> {
[`Default`]: https://doc.rust-lang.org/std/default/trait.Default.html
[`Entry::unpack`]: https://docs.rs/tar/*/tar/struct.Entry.html#method.unpack
[`File`]: https://doc.rust-lang.org/std/fs/struct.File.html
[`filter_entry`]: https://docs.rs/walkdir/*/walkdir/struct.IntoIter.html#method.filter_entry
[`follow_links`]: https://docs.rs/walkdir/*/walkdir/struct.WalkDir.html#method.follow_links
[`glob_with`]: https://docs.rs/glob/*/glob/fn.glob_with.html
[`GzDecoder`]: https://docs.rs/flate2/*/flate2/read/struct.GzDecoder.html
[`GzEncoder`]: https://docs.rs/flate2/*/flate2/write/struct.GzEncoder.html
[`is_prerelease`]: https://docs.rs/semver/*/semver/struct.Version.html#method.is_prerelease
[`Iterator::filter`]: https://doc.rust-lang.org/std/iter/trait.Iterator.html#method.filter
[`MatchOptions`]: https://docs.rs/glob/*/glob/struct.MatchOptions.html
[`Path::strip_prefix`]: https://doc.rust-lang.org/std/path/struct.Path.html#method.strip_prefix
[`same_file::is_same_file`]: https://docs.rs/same-file/*/same_file/fn.is_same_file.html#method.is_same_file
[`same_file::Handle`]: https://docs.rs/same-file/*/same_file/struct.Handle.html
[`same_file::is_same_file`]: https://docs.rs/same-file/*/same_file/fn.is_same_file.html#method.is_same_file
[`semver::Version`]: https://docs.rs/semver/*/semver/struct.Version.html
[`semver::VersionReq`]: https://docs.rs/semver/*/semver/struct.VersionReq.html
[`Version::parse`]: https://docs.rs/semver/*/semver/struct.Version.html#method.parse
[`WalkDir::DirEntry`]: https://docs.rs/walkdir/*/walkdir/struct.DirEntry.html
[`WalkDir::depth`]: https://docs.rs/walkdir/*/walkdir/struct.DirEntry.html#method.depth
[`WalkDir::max_depth`]: https://docs.rs/walkdir/*/walkdir/struct.WalkDir.html#method.max_depth
[`WalkDir::min_depth`]: https://docs.rs/walkdir/*/walkdir/struct.WalkDir.html#method.min_depth
[`WalkDirIterator::filter_entry`]: https://docs.rs/walkdir/*/walkdir/trait.WalkDirIterator.html#method.filter_entry
[`follow_links`]: https://docs.rs/walkdir/*/walkdir/struct.WalkDir.html#method.follow_links
[`glob_with`]: https://docs.rs/glob/*/glob/fn.glob_with.html
[`is_prerelease`]: https://docs.rs/semver/*/semver/struct.Version.html#method.is_prerelease
[`tar::Archive`]: https://docs.rs/tar/*/tar/struct.Archive.html
[`tar::Builder`]: https://docs.rs/tar/*/tar/struct.Builder.html
[`tar::Entries`]: https://docs.rs/tar/*/tar/struct.Entries.html
[`tar::Entry`]: https://docs.rs/tar/*/tar/struct.Entry.html
[`Version::parse`]: https://docs.rs/semver/*/semver/struct.Version.html#method.parse
[`WalkDir::depth`]: https://docs.rs/walkdir/*/walkdir/struct.DirEntry.html#method.depth
[`WalkDir::DirEntry`]: https://docs.rs/walkdir/*/walkdir/struct.DirEntry.html
[`WalkDir::max_depth`]: https://docs.rs/walkdir/*/walkdir/struct.WalkDir.html#method.max_depth
[`WalkDir::min_depth`]: https://docs.rs/walkdir/*/walkdir/struct.WalkDir.html#method.min_depth
<!-- Other Reference -->

View file

@ -1086,7 +1086,7 @@ Creates a memory map of a file using [memmap] and simulates some non-sequential
reads from the file. Using a memory map means you just index into a slice rather
than dealing with [`seek`]ing around in a File.
The [`Mmap::as_slice`] function is only safe if we can guarantee that the file
The [`Mmap::map`] function is only safe if we can guarantee that the file
behind the memory map is not being modified at the same time by another process,
as this would be a [race condition][race-condition-file].
@ -1095,7 +1095,7 @@ as this would be a [race condition][race-condition-file].
# extern crate error_chain;
extern crate memmap;
use memmap::{Mmap, Protection};
use memmap::Mmap;
# use std::fs::File;
# use std::io::Write;
#
@ -1108,18 +1108,16 @@ use memmap::{Mmap, Protection};
fn run() -> Result<()> {
# write!(File::create("content.txt")?, "My hovercraft is full of eels!")?;
#
let map = Mmap::open_path("content.txt", Protection::Read)?;
let file = File::open("content.txt")?;
let map = unsafe { Mmap::map(&file)? };
let random_indexes = [0, 1, 2, 19, 22, 10, 11, 29];
// This is only safe if no other code is modifying the file at the same time
unsafe {
let map = map.as_slice();
assert_eq!(&map[3..13], b"hovercraft");
// I'm using an iterator here to change indexes to bytes
let random_bytes: Vec<u8> = random_indexes.iter()
.map(|&idx| map[idx])
.collect();
assert_eq!(&random_bytes[..], b"My loaf!");
}
assert_eq!(&map[3..13], b"hovercraft");
// I'm using an iterator here to change indexes to bytes
let random_bytes: Vec<u8> = random_indexes.iter()
.map(|&idx| map[idx])
.collect();
assert_eq!(&random_bytes[..], b"My loaf!");
Ok(())
}
#
@ -1301,29 +1299,29 @@ fn main() {
[`BufReader`]: https://doc.rust-lang.org/std/io/struct.BufReader.html
[`chain_err`]: https://docs.rs/error-chain/*/error_chain/index.html#chaining-errors
[`Command`]: https://doc.rust-lang.org/std/process/struct.Command.html
[`DateTime::format`]: https://docs.rs/chrono/*/chrono/struct.DateTime.html#method.format
[`DateTime::to_rfc2822`]: https://docs.rs/chrono/*/chrono/struct.DateTime.html#method.to_rfc2822
[`DateTime::to_rfc3339`]: https://docs.rs/chrono/*/chrono/struct.DateTime.html#method.to_rfc3339
[`digest::Context`]: https://docs.rs/ring/*/ring/digest/struct.Context.html
[`digest::Digest`]: https://docs.rs/ring/*/ring/digest/struct.Digest.html
[`ring::hmac`]: https://docs.rs/ring/*/ring/hmac/
[`hmac::Signature`]: https://docs.rs/ring/*/ring/hmac/struct.Signature.html
[`Display`]: https://doc.rust-lang.org/std/fmt/trait.Display.html
[`File::create`]: https://doc.rust-lang.org/std/fs/struct.File.html#method.create
[`File::open`]: https://doc.rust-lang.org/std/fs/struct.File.html#method.open
[`File::try_clone`]: https://doc.rust-lang.org/std/fs/struct.File.html#method.try_clone
[`File`]: https://doc.rust-lang.org/std/fs/struct.File.html
[`HashMap`]: https://doc.rust-lang.org/std/collections/struct.HashMap.html
[`hmac::Signature`]: https://docs.rs/ring/*/ring/hmac/struct.Signature.html
[`IndependentSample::ind_sample`]: https://doc.rust-lang.org/rand/rand/distributions/trait.IndependentSample.html#tymethod.ind_sample
[`Lines`]: https://doc.rust-lang.org/std/io/struct.Lines.html
[`Mmap::as_slice`]: https://docs.rs/memmap/*/memmap/struct.Mmap.html#method.as_slice
[`Mmap::map`]: https://docs.rs/memmap/*/memmap/struct.Mmap.html#method.map
[`Mutex`]: https://doc.rust-lang.org/std/sync/struct.Mutex.html
[`MutexGuard`]: https://doc.rust-lang.org/std/sync/struct.MutexGuard.html
[`Normal`]: https://doc.rust-lang.org/rand/rand/distributions/normal/struct.Normal.html
[`num_cpus::get`]: https://docs.rs/num_cpus/*/num_cpus/fn.get.html
[`time::Instant::now`]: https://doc.rust-lang.org/std/time/struct.Instant.html#method.now
[`time::Duration`]: https://doc.rust-lang.org/std/time/struct.Duration.html
[`time::Instant`]:https://doc.rust-lang.org/std/time/struct.Instant.html
[`time::Instant::elapsed`]: https://doc.rust-lang.org/std/time/struct.Instant.html#method.elapsed
[`Output`]: https://doc.rust-lang.org/std/process/struct.Output.html
[`pbkdf2::derive`]: https://docs.rs/ring/*/ring/pbkdf2/fn.derive.html
[`pbkdf2::verify`]: https://docs.rs/ring/*/ring/pbkdf2/fn.verify.html
[`process::Stdio`]: https://doc.rust-lang.org/std/process/struct.Stdio.html
[`rand::Rand`]: https://doc.rust-lang.org/rand/rand/trait.Rand.html
[`rand::Rand`]: https://doc.rust-lang.org/rand/rand/trait.Rand.html
[`rand::Rng`]: https://doc.rust-lang.org/rand/rand/trait.Rng.html
@ -1335,18 +1333,18 @@ fn main() {
[`regex::RegexSetBuilder`]: https://doc.rust-lang.org/regex/regex/struct.RegexSetBuilder.html
[`Regex::replace_all`]: https://docs.rs/regex/*/regex/struct.Regex.html#method.replace_all
[`Regex`]: https://doc.rust-lang.org/regex/regex/struct.Regex.html
[`ring::hmac`]: https://docs.rs/ring/*/ring/hmac/
[`ring::pbkdf2`]: https://docs.rs/ring/*/ring/pbkdf2/index.html
[`Rng::gen_range`]: https://doc.rust-lang.org/rand/rand/trait.Rng.html#method.gen_range
[`RwLock`]: https://doc.rust-lang.org/std/sync/struct.RwLock.html
[`SecureRandom::fill`]: https://docs.rs/ring/*/ring/rand/trait.SecureRandom.html#tymethod.fill
[`seek`]: https://doc.rust-lang.org/std/fs/struct.File.html#method.seek
[`Stdio::piped`]: https://doc.rust-lang.org/std/process/struct.Stdio.html
[`process::Stdio`]: https://doc.rust-lang.org/std/process/struct.Stdio.html
[`File::try_clone`]: https://doc.rust-lang.org/std/fs/struct.File.html#method.try_clone
[`time::Duration`]: https://doc.rust-lang.org/std/time/struct.Duration.html
[`time::Instant::elapsed`]: https://doc.rust-lang.org/std/time/struct.Instant.html#method.elapsed
[`time::Instant::now`]: https://doc.rust-lang.org/std/time/struct.Instant.html#method.now
[`time::Instant`]:https://doc.rust-lang.org/std/time/struct.Instant.html
[`Utc::now`]: https://docs.rs/chrono/*/chrono/offset/struct.Utc.html#method.now
[`DateTime::to_rfc2822`]: https://docs.rs/chrono/*/chrono/struct.DateTime.html#method.to_rfc2822
[`DateTime::to_rfc3339`]: https://docs.rs/chrono/*/chrono/struct.DateTime.html#method.to_rfc3339
[`DateTime::format`]: https://docs.rs/chrono/*/chrono/struct.DateTime.html#method.format
[rand-distributions]: https://doc.rust-lang.org/rand/rand/distributions/index.html
[replacement string syntax]: https://docs.rs/regex/*/regex/struct.Regex.html#replacement-string-syntax

View file

@ -242,13 +242,13 @@ fn main(){
<!-- Other Reference -->
[build-script-docs]: http://doc.crates.io/build-script.html
[playground]: https://play.rust-lang.org
[cc-build]: https://docs.rs/cc/*/cc/struct.Build.html
[`cc::Build::define`]: https://docs.rs/cc/*/cc/struct.Build.html#method.define
[cc-build-include]: https://docs.rs/cc/*/cc/struct.Build.html#method.include
[cc-build-flag]: https://docs.rs/cc/*/cc/struct.Build.html#method.flag
[`Option`]: https://doc.rust-lang.org/std/option/enum.Option.html
[build-script-docs]: http://doc.crates.io/build-script.html
[cargo-env]: http://doc.crates.io/environment-variables.html#environment-variables-cargo-sets-for-crates
[cc-build-compile]: https://docs.rs/cc/*/cc/struct.Build.html#method.compile
[cc-build-cpp]: https://docs.rs/cc/*/cc/struct.Build.html#method.cpp
[`Option`]: https://doc.rust-lang.org/std/option/enum.Option.html
[cargo-env]: http://doc.crates.io/environment-variables.html#environment-variables-cargo-sets-for-crates
[cc-build-flag]: https://docs.rs/cc/*/cc/struct.Build.html#method.flag
[cc-build-include]: https://docs.rs/cc/*/cc/struct.Build.html#method.include
[cc-build]: https://docs.rs/cc/*/cc/struct.Build.html
[playground]: https://play.rust-lang.org

View file

@ -525,37 +525,37 @@ fn run() -> Result<()> {
<!-- API Reference -->
[`crossbeam::scope`]: https://docs.rs/crossbeam/*/crossbeam/fn.scope.html
[`DynamicImage::resize`]: https://docs.rs/image/*/image/enum.DynamicImage.html#method.resize
[`glob::glob_with`]: https://docs.rs/glob/*/glob/fn.glob_with.html
[`ImageBuffer::new`]: https://docs.rs/image/*/image/struct.ImageBuffer.html#method.new
[`ImageBuffer::put_pixel`]: https://docs.rs/image/*/image/struct.ImageBuffer.html#method.put_pixel
[`ImageBuffer::save`]: https://docs.rs/image/*/image/struct.ImageBuffer.html#method.save
[`Receiver::recv`]: https://doc.rust-lang.org/std/sync/mpsc/struct.Receiver.html#method.recv
[`Rgb::from_channels`]: https://docs.rs/image/*/image/struct.Rgb.html#method.from_channels
[`Scope::spawn`]: https://docs.rs/crossbeam/0.*/crossbeam/struct.Scope.html#method.spawn
[`stable sorting`]: https://docs.rs/rayon/*/rayon/slice/trait.ParallelSliceMut.html#method.par_sort
[`ThreadPool::execute`]: https://docs.rs/threadpool/*/threadpool/struct.ThreadPool.html#method.execute
[`ThreadPool`]: https://docs.rs/threadpool/*/threadpool/struct.ThreadPool.html
[`crossbeam::scope`]: https://docs.rs/crossbeam/0.*/crossbeam/fn.scope.html
[`Iterator`]: https://doc.rust-lang.org/std/iter/trait.Iterator.html
[`mpsc::channel`]: https://doc.rust-lang.org/std/sync/mpsc/fn.channel.html
[`multiple options`]: https://docs.rs/rayon/*/rayon/slice/trait.ParallelSliceMut.html
[`num_cpus::get`]: https://docs.rs/num_cpus/*/num_cpus/fn.get.html
[`par_iter`]: https://docs.rs/rayon/*/rayon/iter/trait.IntoParallelRefIterator.html#tymethod.par_iter
[`par_iter_mut`]: https://docs.rs/rayon/*/rayon/iter/trait.IntoParallelRefMutIterator.html#tymethod.par_iter_mut
[`par_iter`]: https://docs.rs/rayon/*/rayon/iter/trait.IntoParallelRefIterator.html#tymethod.par_iter
[`par_sort_unstable`]: https://docs.rs/rayon/*/rayon/slice/trait.ParallelSliceMut.html#method.par_sort_unstable
[`ParallelIterator`]: https://docs.rs/rayon/*/rayon/iter/trait.ParallelIterator.html
[`rayon::all`]: https://docs.rs/rayon/*/rayon/iter/trait.ParallelIterator.html#method.all
[`rayon::any`]: https://docs.rs/rayon/*/rayon/iter/trait.ParallelIterator.html#method.any
[`rayon::filter`]: https://docs.rs/rayon/*/rayon/iter/trait.ParallelIterator.html#method.filter
[`rayon::find_any`]: https://docs.rs/rayon/*/rayon/iter/trait.ParallelIterator.html#method.find_any
[`rayon::map`]: https://docs.rs/rayon/*/rayon/iter/trait.ParallelIterator.html#method.map
[`rayon::reduce`]: https://docs.rs/rayon/*/rayon/iter/trait.ParallelIterator.html#method.reduce
[`rayon::sum`]: https://docs.rs/rayon/*/rayon/iter/trait.ParallelIterator.html#method.sum
[`std::find`]: https://doc.rust-lang.org/std/iter/trait.Iterator.html#method.find
[`Walkdir::new`]: https://docs.rs/walkdir/1.0.7/walkdir/struct.WalkDir.html#method.new
[`ParallelIterator`]: https://docs.rs/rayon/*/rayon/iter/trait.ParallelIterator.html
[`Iterator`]: https://doc.rust-lang.org/std/iter/trait.Iterator.html
[`rayon::any`]: https://docs.rs/rayon/*/rayon/iter/trait.ParallelIterator.html#method.any
[`rayon::all`]: https://docs.rs/rayon/*/rayon/iter/trait.ParallelIterator.html#method.all
[`std::any`]: https://doc.rust-lang.org/std/iter/trait.Iterator.html#method.any
[`Receiver::recv`]: https://doc.rust-lang.org/std/sync/mpsc/struct.Receiver.html#method.recv
[`Rgb::from_channels`]: https://docs.rs/image/*/image/struct.Rgb.html#method.from_channels
[`Scope::spawn`]: https://docs.rs/crossbeam/*/crossbeam/struct.Scope.html#method.spawn
[`stable sorting`]: https://docs.rs/rayon/*/rayon/slice/trait.ParallelSliceMut.html#method.par_sort
[`std::all`]: https://doc.rust-lang.org/std/iter/trait.Iterator.html#method.all
[`std::any`]: https://doc.rust-lang.org/std/iter/trait.Iterator.html#method.any
[`std::find`]: https://doc.rust-lang.org/std/iter/trait.Iterator.html#method.find
[`ThreadPool::execute`]: https://docs.rs/threadpool/*/threadpool/struct.ThreadPool.html#method.execute
[`ThreadPool`]: https://docs.rs/threadpool/*/threadpool/struct.ThreadPool.html
[`Walkdir::new`]: https://docs.rs/walkdir/*/walkdir/struct.WalkDir.html#method.new
<!-- Other Reference -->

View file

@ -698,11 +698,11 @@ fn run() -> Result<()> {
[`csv::StringRecord`]: https://docs.rs/csv/*/csv/struct.StringRecord.html
[`csv::Writer`]: https://docs.rs/csv/*/csv/struct.Writer.html
[`flush`]: https://docs.rs/csv/*/csv/struct.Writer.html#method.flush
[`form_urlencoded::byte_serialize`]: https://docs.rs/url/1.4.0/url/form_urlencoded/fn.byte_serialize.html
[`form_urlencoded::byte_serialize`]: https://docs.rs/url/*/url/form_urlencoded/fn.byte_serialize.html
[`form_urlencoded::parse`]: https://docs.rs/url/*/url/form_urlencoded/fn.parse.html
[`percent_decode`]: https://docs.rs/url/1.*/url/percent_encoding/fn.percent_decode.html
[`percent_decode`]: https://docs.rs/url/*/url/percent_encoding/fn.percent_decode.html
[`serialize`]: https://docs.rs/csv/*/csv/struct.Writer.html#method.serialize
[`utf8_percent_encode`]: https://docs.rs/url/1.*/url/percent_encoding/fn.utf8_percent_encode.html
[`utf8_percent_encode`]: https://docs.rs/url/*/url/percent_encoding/fn.utf8_percent_encode.html
[`write_record`]: https://docs.rs/csv/*/csv/struct.Writer.html#method.write_record
<!-- Other Reference -->

View file

@ -152,34 +152,34 @@ community. It needs and welcomes help. For details see
[ex-base64]: encoding.html#ex-base64
[ex-bitflags]: basics.html#ex-bitflags
[ex-byteorder-le]: basics.html#ex-byteorder-le
[ex-cc-static-bundled]: build_tools.html#ex-cc-static-bundled
[ex-cc-static-bundled-cpp]: build_tools.html#ex-cc-static-bundled-cpp
[ex-cc-custom-defines]: build_tools.html#ex-cc-custom-defines
[ex-cc-static-bundled-cpp]: build_tools.html#ex-cc-static-bundled-cpp
[ex-cc-static-bundled]: build_tools.html#ex-cc-static-bundled
[ex-check-broken-links]: net.html#ex-check-broken-links
[ex-check-cpu-cores]: basics.html#ex-check-cpu-cores
[ex-clap-basic]: app.html#ex-clap-basic
[ex-crossbeam-spawn]: concurrency.html#ex-crossbeam-spawn
[ex-csv-serde]: encoding.html#ex-csv-serde
[ex-csv-read]: encoding.html#ex-csv-read
[ex-csv-delimiter]: encoding.html#ex-csv-delimiter
[ex-format-datetime]: basics.html#ex-format-datetime
[ex-threadpool-fractal]: concurrency.html#ex-threadpool-fractal
[ex-threadpool-walk]: concurrency.html#ex-threadpool-walk
[ex-csv-filter]: encoding.html#ex-csv-filter
[ex-csv-read]: encoding.html#ex-csv-read
[ex-csv-serde]: encoding.html#ex-csv-serde
[ex-dedup-filenames]: app.html#ex-dedup-filenames
[ex-error-chain-backtrace]: basics.html#ex-error-chain-backtrace
[ex-measure-elapsed-time]: basics.html#ex-measure-elapsed-time
[ex-extract-links-webpage]: net.html#ex-extract-links-webpage
[ex-extract-hashtags]: basics.html#ex-extract-hashtags
[ex-extract-links-webpage]: net.html#ex-extract-links-webpage
[ex-extract-mediawiki-links]: net.html#ex-extract-mediawiki-links
[ex-file-post]: net.html#ex-file-post
[ex-file-predicate]: app.html#ex-file-predicate
[ex-file-skip-dot]: app.html#ex-file-skip-dot
[ex-file-sizes]: app.html#ex-file-sizes
[ex-file-skip-dot]: app.html#ex-file-skip-dot
[ex-find-file-loops]: app.html#ex-find-file-loops
[ex-global-mut-state]: basics.html#ex-global-mut-state
[ex-format-datetime]: basics.html#ex-format-datetime
[ex-glob-recursive]: app.html#ex-glob-recursive
[ex-glob-with]: app.html#ex-glob-with
[ex-global-mut-state]: basics.html#ex-global-mut-state
[ex-hex-encode-decode]: encoding.html#ex-hex-encode-decode
[ex-hmac]: basics.html#ex-hmac
[ex-invalid-csv]: encoding.html#ex-invalid-csv
[ex-json-value]: encoding.html#ex-json-value
[ex-lazy-constant]: basics.html#ex-lazy-constant
[ex-log-custom-logger]: logging.html#ex-log-custom-logger
@ -188,46 +188,49 @@ community. It needs and welcomes help. For details see
[ex-log-env-variable]: logging.html#ex-log-env-variable
[ex-log-error]: logging.html#ex-log-error
[ex-log-mod]: logging.html#ex-log-mod
[ex-log-stdout]: logging.html#ex-log-stdout
[ex-log-syslog]: logging.html#ex-log-syslog
[ex-log-timestamp]: logging.html#ex-log-timestamp
[ex-log-stdout]: logging.html#ex-log-stdout
[ex-invalid-csv]: encoding.html#ex-invalid-csv
[ex-measure-elapsed-time]: basics.html#ex-measure-elapsed-time
[ex-paginated-api]: net.html#ex-paginated-api
[ex-parse-subprocess-output]: basics.html#ex-parse-subprocess-output
[ex-parse-subprocess-input]: basics.html#ex-parse-subprocess-input
[ex-parse-subprocess-output]: basics.html#ex-parse-subprocess-output
[ex-pbkdf2]: basics.html#ex-pbkdf2
[ex-run-piped-external-commands]: basics.html#ex-run-piped-external-commands
[ex-redirect-stdout-stderr-same-file]: basics.html#ex-redirect-stdout-stderr-same-file
[ex-verify-extract-email]: basics.html#ex-verify-extract-email
[ex-percent-encode]: encoding.html#ex-percent-encode
[ex-phone]: basics.html#ex-phone
[ex-progress-with-range]: net.html#ex-progress-with-range
[ex-rand-custom]: basics.html#ex-rand-custom
[ex-rand-dist]: basics.html#ex-rand-dist
[ex-rand]: basics.html#ex-rand
[ex-rand-range]: basics.html#ex-rand-range
[ex-rand]: basics.html#ex-rand
[ex-random-file-access]: basics.html#ex-random-file-access
[ex-random-port-tcp]: net.html#ex-random-port-tcp
[ex-rayon-iter-mut]: concurrency.html#ex-rayon-iter-mut
[ex-rayon-any-all]: concurrency.html#ex-rayon-any-all
[ex-rayon-iter-mut]: concurrency.html#ex-rayon-iter-mut
[ex-rayon-map-reduce]: concurrency.html#ex-rayon-map-reduce
[ex-rayon-parallel-search]: concurrency.html#ex-rayon-parallel-search
[ex-rayon-parallel-sort]: concurrency.html#ex-rayon-parallel-sort
[ex-rayon-thumbnails]: concurrency.html#ex-rayon-thumbnails
[ex-redirect-stdout-stderr-same-file]: basics.html#ex-redirect-stdout-stderr-same-file
[ex-regex-filter-log]: basics.html#ex-regex-filter-log
[ex-regex-replace-named]: basics.html#ex-regex-replace-named
[ex-rest-custom-params]: net.html#ex-rest-custom-params
[ex-rest-get]: net.html#ex-rest-get
[ex-rest-head]: net.html#ex-rest-head
[ex-rest-post]: net.html#ex-rest-post
[ex-run-piped-external-commands]: basics.html#ex-run-piped-external-commands
[ex-semver-command]: app.html#ex-semver-command
[ex-semver-complex]: app.html#ex-semver-complex
[ex-semver-increment]: app.html#ex-semver-increment
[ex-semver-prerelease]: app.html#ex-semver-prerelease
[ex-serialize-csv]: encoding.html#ex-serialize-csv
[ex-sha-digest]: basics.html#ex-sha-digest
[ex-hmac]: basics.html#ex-hmac
[ex-std-read-lines]: basics.html#ex-std-read-lines
[ex-tar-compress]: app.html#ex-tar-compress
[ex-tar-decompress]: app.html#ex-tar-decompress
[ex-tar-strip-prefix]: app.html#ex-tar-strip-prefix
[ex-threadpool-fractal]: concurrency.html#ex-threadpool-fractal
[ex-threadpool-walk]: concurrency.html#ex-threadpool-walk
[ex-toml-config]: encoding.html#ex-toml-config
[ex-url-base]: net.html#ex-url-base
[ex-url-basic]: net.html#ex-url-basic
@ -237,7 +240,4 @@ community. It needs and welcomes help. For details see
[ex-url-parse]: net.html#ex-url-parse
[ex-url-rm-frag]: net.html#ex-url-rm-frag
[ex-urlencoded]: encoding.html#ex-urlencoded
[ex-progress-with-range]: net.html#ex-progress-with-range
[ex-random-file-access]: basics.html#ex-random-file-access
[ex-regex-replace-named]: basics.html#ex-regex-replace-named
[ex-csv-filter]: encoding.html#ex-csv-filter
[ex-verify-extract-email]: basics.html#ex-verify-extract-email

View file

@ -11,10 +11,10 @@ Keep lines sorted.
[cat-command-line]: https://crates.io/categories/command-line-interface
[cat-compression-badge]: https://badge-cache.kominick.com/badge/compression--x.svg?style=social
[cat-compression]: https://crates.io/categories/compression
[cat-config-badge]: https://badge-cache.kominick.com/badge/config--x.svg?style=social
[cat-config]: https://crates.io/categories/config
[cat-concurrency-badge]: https://badge-cache.kominick.com/badge/concurrency--x.svg?style=social
[cat-concurrency]: https://crates.io/categories/concurrency
[cat-config-badge]: https://badge-cache.kominick.com/badge/config--x.svg?style=social
[cat-config]: https://crates.io/categories/config
[cat-cryptography-badge]: https://badge-cache.kominick.com/badge/cryptography--x.svg?style=social
[cat-cryptography]: https://crates.io/categories/cryptography
[cat-date-and-time-badge]: https://badge-cache.kominick.com/badge/date_and_time--x.svg?style=social
@ -39,12 +39,12 @@ Keep lines sorted.
[cat-rendering]: https://crates.io/categories/rendering
[cat-rust-patterns-badge]: https://badge-cache.kominick.com/badge/rust_patterns--x.svg?style=social
[cat-rust-patterns]: https://crates.io/categories/rust-patterns
[cat-time-badge]: https://badge-cache.kominick.com/badge/time--x.svg?style=social
[cat-time]: https://crates.io/categories/date-and-time
[cat-science-badge]: https://badge-cache.kominick.com/badge/science--x.svg?style=social
[cat-science]: https://crates.io/categories/science
[cat-text-processing-badge]: https://badge-cache.kominick.com/badge/text_processing--x.svg?style=social
[cat-text-processing]: https://crates.io/categories/text-processing
[cat-time-badge]: https://badge-cache.kominick.com/badge/time--x.svg?style=social
[cat-time]: https://crates.io/categories/date-and-time
<!-- Crates -->

View file

@ -485,7 +485,15 @@ fn run() -> Result<()> {
[`DateTime::format`]: https://docs.rs/chrono/*/chrono/datetime/struct.DateTime.html#method.format
[`DateTime`]: https://docs.rs/chrono/*/chrono/datetime/struct.DateTime.html
[`env_logger::init`]: https://doc.rust-lang.org/log/env_logger/fn.init.html
[`Local::now`]: https://docs.rs/chrono/*/chrono/offset/local/struct.Local.html#method.now
[`log4rs::append::file::FileAppender`]: https://docs.rs/log4rs/*/log4rs/append/file/struct.FileAppender.html
[`log4rs::config::Config`]: https://docs.rs/log4rs/*/log4rs/config/struct.Config.html
[`log4rs::encode::pattern`]: https://docs.rs/log4rs/*/log4rs/encode/pattern/index.html
[`log::Log`]: https://doc.rust-lang.org/log/log/trait.Log.html
[`log::LogLevel`]: https://doc.rust-lang.org/log/log/enum.LogLevel.html
[`log::LogLevelFilter`]: https://doc.rust-lang.org/log/log/enum.LogLevelFilter.html
[`log::set_logger`]: https://doc.rust-lang.org/log/log/fn.set_logger.html
[`LogBuilder::format`]: https://doc.rust-lang.org/log/env_logger/struct.LogBuilder.html#method.format
[`LogBuilder::init`]: https://doc.rust-lang.org/log/env_logger/struct.LogBuilder.html#method.init
[`LogBuilder::parse`]: https://doc.rust-lang.org/log/env_logger/struct.LogBuilder.html#method.parse
@ -494,18 +502,10 @@ fn run() -> Result<()> {
[`LogRecord::args`]: https://doc.rust-lang.org/log/log/struct.LogRecord.html#method.args
[`LogRecord::level`]: https://doc.rust-lang.org/log/log/struct.LogRecord.html#method.level
[`RUST_LOG`]: https://doc.rust-lang.org/log/env_logger/#enabling-logging
[`Target::Stdout`]: https://doc.rust-lang.org/log/env_logger/enum.Target.html
[`env_logger::init`]: https://doc.rust-lang.org/log/env_logger/fn.init.html
[`log4rs::append::file::FileAppender`]: https://docs.rs/log4rs/*/log4rs/append/file/struct.FileAppender.html
[`log4rs::config::Config`]: https://docs.rs/log4rs/*/log4rs/config/struct.Config.html
[`log4rs::encode::pattern`]: https://docs.rs/log4rs/*/log4rs/encode/pattern/index.html
[`log::LogLevelFilter`]: https://doc.rust-lang.org/log/log/enum.LogLevelFilter.html
[`log::LogLevel`]: https://doc.rust-lang.org/log/log/enum.LogLevel.html
[`log::Log`]: https://doc.rust-lang.org/log/log/trait.Log.html
[`log::set_logger`]: https://doc.rust-lang.org/log/log/fn.set_logger.html
[`strftime::specifiers`]: https://docs.rs/chrono/*/chrono/format/strftime/index.html#specifiers
[`syslog::Facility`]: https://docs.rs/syslog/*/syslog/enum.Facility.html
[`syslog::init`]: https://docs.rs/syslog/*/syslog/fn.init.html
[`Target::Stdout`]: https://doc.rust-lang.org/log/env_logger/enum.Target.html
<!-- Other Reference -->

View file

@ -1124,6 +1124,7 @@ fn run() -> Result<()> {
<!-- API Reference -->
[`attr`]: https://docs.rs/select/*/select/node/struct.Node.html#method.attr
[`Client::delete`]: https://docs.rs/reqwest/*/reqwest/struct.Client.html#method.delete
[`Client::head`]: https://docs.rs/reqwest/*/reqwest/struct.Client.html#method.head
[`Client::post`]: https://docs.rs/reqwest/*/reqwest/struct.Client.html#method.post
@ -1131,19 +1132,39 @@ fn run() -> Result<()> {
[`Cow`]: https://doc.rust-lang.org/std/borrow/enum.Cow.html
[`Document::from_read`]: https://docs.rs/select/*/select/document/struct.Document.html#method.from_read
[`File`]: https://doc.rust-lang.org/std/fs/struct.File.html
[`filter_map`]: https://doc.rust-lang.org/core/iter/trait.Iterator.html#method.filter_map
[`find`]: https://docs.rs/select/*/select/document/struct.Document.html#method.find
[`header::Authorization`]: https://docs.rs/hyper/*/hyper/header/struct.Authorization.html
[`header::UserAgent`]: https://docs.rs/hyper/*/hyper/header/struct.UserAgent.html
[`hyper::header!`]: https://docs.rs/hyper/*/hyper/macro.header.html
[`io::copy`]: https://doc.rust-lang.org/std/io/fn.copy.html
[`Ipv4Addr`]: https://doc.rust-lang.org/std/net/struct.Ipv4Addr.html
[`join`]: https://docs.rs/url/*/url/struct.Url.html#method.join
[`Name`]: https://docs.rs/select/*/select/predicate/struct.Name.html
[`origin`]: https://docs.rs/url/*/url/struct.Url.html#method.origin
[`parse`]: https://docs.rs/url/*/url/struct.Url.html#method.parse
[`Position::BeforePath`]: https://docs.rs/url/*/url/enum.Position.html#variant.BeforePath
[`read_to_string`]: https://doc.rust-lang.org/std/io/trait.Read.html#method.read_to_string
[`Regex::captures_iter`]: https://doc.rust-lang.org/regex/regex/struct.Regex.html#method.captures_iter
[`RequestBuilder::basic_auth`]: https://docs.rs/reqwest/*/reqwest/struct.RequestBuilder.html#method.basic_auth
[`RequestBuilder::body`]: https://docs.rs/reqwest/*/reqwest/struct.RequestBuilder.html#method.body
[`RequestBuilder::header`]: https://docs.rs/reqwest/*/reqwest/struct.RequestBuilder.html#method.header
[`RequestBuilder::json`]: https://docs.rs/reqwest/*/reqwest/struct.RequestBuilder.html#method.json
[`RequestBuilder::send`]: https://docs.rs/reqwest/*/reqwest/struct.RequestBuilder.html#method.send
[`reqwest::Client::head`]: https://docs.rs/reqwest/*/reqwest/struct.Client.html#method.head
[`reqwest::Client`]: https://docs.rs/reqwest/*/reqwest/struct.Client.html
[`reqwest::get`]: https://docs.rs/reqwest/*/reqwest/fn.get.html
[`reqwest::header::ContentRange`]: https://docs.rs/reqwest/*/reqwest/header/struct.ContentRange.htm
[`reqwest::header::Range`]: https://docs.rs/reqwest/*/reqwest/header/enum.Range.html
[`reqwest::RequestBuilder`]: https://docs.rs/reqwest/*/reqwest/struct.RequestBuilder.html
[`reqwest::Response`]: https://docs.rs/reqwest/*/reqwest/struct.Response.html
[`Response::json`]: https://docs.rs/reqwest/*/reqwest/struct.Response.html#method.json
[`Response::url`]: https://docs.rs/reqwest/*/reqwest/struct.Response.html#method.url
[`Selection`]: https://docs.rs/select/*/select/selection/struct.Selection.html
[`serde::Deserialize`]: https://docs.rs/serde/*/serde/trait.Deserialize.html
[`serde_json::json!`]: https://docs.rs/serde_json/*/serde_json/macro.json.html
[`SocketAddrV4`]: https://doc.rust-lang.org/std/net/struct.SocketAddrV4.html
[`std::iter::Iterator`]: https://doc.rust-lang.org/std/iter/trait.Iterator.html
[`String`]: https://doc.rust-lang.org/std/string/struct.String.html
[`TcpListener::accept`]: https://doc.rust-lang.org/std/net/struct.TcpListener.html#method.accept
[`TcpListener::bind`]: https://doc.rust-lang.org/std/net/struct.TcpListener.html#method.bind
@ -1151,37 +1172,16 @@ fn run() -> Result<()> {
[`TcpStream`]: https://doc.rust-lang.org/std/net/struct.TcpStream.html
[`TempDir::new`]: https://docs.rs/tempdir/*/tempdir/struct.TempDir.html#method.new
[`TempDir::path`]: https://docs.rs/tempdir/*/tempdir/struct.TempDir.html#method.path
[`Url::parse_with_params`]: https://docs.rs/url/1.*/url/struct.Url.html#method.parse_with_params
[`Url`]: https://docs.rs/url/1.*/url/struct.Url.html
[`attr`]: https://docs.rs/select/*/select/node/struct.Node.html#method.attr
[`filter_map`]: https://doc.rust-lang.org/core/iter/trait.Iterator.html#method.filter_map
[`find`]: https://docs.rs/select/*/select/document/struct.Document.html#method.find
[`header::Authorization`]: https://docs.rs/hyper/*/hyper/header/struct.Authorization.html
[`header::UserAgent`]: https://docs.rs/hyper/*/hyper/header/struct.UserAgent.html
[`hyper::header!`]: https://docs.rs/hyper/*/hyper/macro.header.html
[`io::copy`]: https://doc.rust-lang.org/std/io/fn.copy.html
[`join`]: https://docs.rs/url/1.*/url/struct.Url.html#method.join
[`origin`]: https://docs.rs/url/1.*/url/struct.Url.html#method.origin
[`parse`]: https://docs.rs/url/1.*/url/struct.Url.html#method.parse
[`read_to_string`]: https://doc.rust-lang.org/std/io/trait.Read.html#method.read_to_string
[`reqwest::Client`]: https://docs.rs/reqwest/*/reqwest/struct.Client.html
[`reqwest::RequestBuilder`]: https://docs.rs/reqwest/*/reqwest/struct.RequestBuilder.html
[`reqwest::Response`]: https://docs.rs/reqwest/*/reqwest/struct.Response.html
[`reqwest::get`]: https://docs.rs/reqwest/*/reqwest/fn.get.html
[`reqwest::Client::head`]: https://docs.rs/reqwest/*/reqwest/struct.Client.html#method.head
[`reqwest::header::Range`]: https://docs.rs/reqwest/*/reqwest/header/enum.Range.html
[`reqwest::header::ContentRange`]: https://docs.rs/reqwest/*/reqwest/header/struct.ContentRange.htm
[`serde::Deserialize`]: https://docs.rs/serde/*/serde/trait.Deserialize.html
[`serde_json::json!`]: https://docs.rs/serde_json/*/serde_json/macro.json.html
[`std::iter::Iterator`]: https://doc.rust-lang.org/std/iter/trait.Iterator.html
[`url::Position`]: https://docs.rs/url/*/url/enum.Position.html
[`Url::parse_with_params`]: https://docs.rs/url/*/url/struct.Url.html#method.parse_with_params
[`url::Parse`]: https://docs.rs/url/*/url/struct.Url.html#method.parse
[`url::ParseOptions`]: https://docs.rs/url/*/url/struct.ParseOptions.html
[`url::Position`]: https://docs.rs/url/*/url/enum.Position.html
[`Url`]: https://docs.rs/url/*/url/struct.Url.html
<!-- Other Reference -->
[GitHub API]: https://developer.github.com/v3/auth/
[HTTP Basic Auth]: https://tools.ietf.org/html/rfc2617
[HTTP Range RFC7233]: https://tools.ietf.org/html/rfc7233#section-3.1
[MediaWiki link syntax]: https://www.mediawiki.org/wiki/Help:Links
[OAuth]: https://oauth.net/getting-started/
[HTTP Range RFC7233]: https://tools.ietf.org/html/rfc7233#section-3.1