* Update hmac example for ring v. ^0.16.9
* Update hmac example for ring v. ^0.16.9
* Update hmac example for ring v. ^0.16.9
* Update to ring 0.16.11 in Cargo.toml
* Update to SHA256 - sect. 4.1 explicit threads
* Update all to SHA256, including comments
* Fix sqlite example formatting and add syntax highlighting
* Format sqlite insert_select example using rustfmt
* Improve sqlite example code readability while adhering to rustfmt
* Exclude percent encoding from skeptic
* Exclude tests that are affected by skeptic #111
* More failing tests exlcuded from Skeptic
* add ignore to infostring
Try `cargo run --verbose` after copying the code into a separate project. This example snippet does not compile and requires `serde` create to be present in the main.rs. So include the serde crate will fix the compilation error.
* Rmove error-chain from examples having only one error variant
Remove error_chain from csv example 'Serde deserializes data into ...'
Remove error_chain from toml example 'Parse TOML into your ...'
* remove linebreak after main
* remove line break
Fix docs directing developer to incorrect pathname for spellcheck.sh
Add note on the normal behavior of spellcheck.sh for clarity
Fix instances of inclusive range syntax to use '..=' style
Depend directly on percent-encoding instead of expecting re-exports
This commit compiles and tests correctly on rustc v1.37.0
link-checker found 452 failures before this commit
link-checker found 452 failures after this commit
no new errors were added by this commit
* removed error-chain from 'Calculate SHA1 sum of iso files concurrently'
* removed error chain from 'Salt and hash a password with PBKDF2'
* removed error-chain from 'Parse string into DateTime struct'
* removed error-chain from 'Log messages with a custom logger'
* fixed compiler errors
* removed unnecessary feature flag
* removed error-chain from 'Log to the Unix syslog'
* removed error-chain from 'Parse and increment a version string.'
* removed error-chain from 'Parse a complex version string.'
* removed error-chain from 'Check if given version is pre-release.'
* removed error-chain from 'Percent-encode a string'
* removed error-chain from 'Encode and decode hex'
* removed error-chain from 'Read CSV records'
* removed error-chain from 'Read CSV records with different delimiter'
* removed error-chain from 'Handle invalid CSV data with Serde'
* removed error-chain from 'Serialize and deserialize unstructured JSON'
* removed error-chain from 'Deserialize a TOML configuration file'
* removed error-chain from 'Read and write integers in little-endian byte order'
* removed error-chain from 'Read lines of strings from a file'
* removed error-chain from 'Avoid writing and reading from a same file'
* removed error-chain from 'Access a file randomly using a memory map'
* removed error-chain from 'Listen on unused port TCP/IP'
* removed error-chain from 'Redirect both stdout and stderr of child process to the same file'
* removed error-chain from 'Continuously process child process' outputs'
* removed error-chain from 'Parse a URL from a string to a `Url` type'
* removed error-chain from 'Create new URLs from a base URL'
* removed error-chain from 'Extract the URL origin (scheme / host / port)'
* removed error-chain from 'Remove fragment identifiers and query pairs from a URL'
* removed error-chain from 'Query the GitHub API'
* removed error-chain from 'Check if an API resource exists'
* removed error-chain from 'Consume a paginated RESTful API'
* addressed Travis CI failure
* addressed Travis CI failure
* addressed Travis CI issue
* Old Code Would Not Compile
I researched the Chrono library and made sure the code would compile with the latest Rust 2018 setup.
* Remove the DateTime part for the chrono piece
* Removed Chrono to simplify example
* added invert-matrix to /science/mathematics/linear_algebra
* added nalgebra as dependency
* added nalgebra to dictionary
* fixed link to nalgebra
* Remove statistics file only includes the header
* sqlite transactions recipe
* Reordered/cleaned-up references
* Removed package version from links
* Updates after review
* Removed comment
* Taking out a pronoun
* added Text Processing > String Parsing > Implement the FromStr trait for a custom struct
* Implement the FromStr trait for a custom struct
* fixed formatting
* fixed formatting
* Update crossbeam-spawn.md
In the latest version od Crossbeam ([docs](https://docs.rs/crossbeam/0.5.0/crossbeam/)) we have two changes:
1. Spawned closures take an argument of type `&Scope` which can be used for nested spawns.
2. The `scope` function returns a `Result` indicating whether spawned threads have been joined with success or not.
Updating the example accordingly.
* Return option from find_max
* Use split_at
* Add Statistics Section With Examples
Add a statistics section to the cookbook!
Add an example showing how to calculate mean, median, and mode using the
Rust standard library.
Add a second example showing how to compute the standard deviation and zscore
of a set of data.
* Seek Brevity, Improve Median Example
Shorten some of the example descriptions, preferring to let the code and
Rust documentation speak for itself.
Calculate the median using an adaptation of the quickselect algorithm,
which does not mutate the original data set and should (in theory) be
slightly more performant.
Remove the unneeded statistics summary file
The CSV encoding tab delimiter example has a struct to deserialize into.
However it wasn't used.
I've changed it to use the provided struct.
It may make more sense to remove it instead, as it isn't the point of
this example. If it turns out to be the preferred method in the pull
request process, I'll do so.
Two link targets for web client download examples have been swapped, revert them. And also remove a dot at the end of a heading in one of the examples.
The original version was incorrect about `ndarray`'s treatment of 1-D
arrays as vectors, and it incorrectly indicated that `*` performed
matrix multiplication.
`ndarray` decides whether a 1-D array is a row vector or column vector
in matrix multiplication by whether it is on the left-hand side or
right-hand side. (The behavior matches NumPy. If it's on the left-hand
side, it's a row vector, while if it's on the right-hand side, it's a
column vector.) The original version incorrectly indicated that
calling `.reversed_axes()` on a 1-D array would make it into a column
vector. In fact, calling `.reversed_axes()` on a 1-D array has no
effect since a 1-D array has only 1 axis.
Matrix multiplication is performed with `.dot()`, not `*`. The `*`
operator performs element-wise multiplication.
This removes an unnecessary allocation caused by `.mapv()` in the
original version, replaces `&Array1<f64>` argument types with
`ArrayView1<f64>` (see the new text for reasoning), and takes
advantage of the `array!` macro to make the array creation more
concise.