profile
viewpoint
Richard Walters rhymu8354 https://www.twitch.tv/rhymu8354 I'm a software developer who also streams programming live on Twitch.TV -- come by the channel when I'm streaming and say hello!

rhymu8354/Excalibur 23

Development environment (solution) for a web server written from scratch in C++ (and soon in Rust too!)

rhymu8354/Json 6

This is a library which implements [RFC 7159](https://tools.ietf.org/html/rfc7159), "The JavaScript Object Notation (JSON) Data Interchange Format".

rhymu8354/Http 4

This is a library which implements [RFC 7230](https://tools.ietf.org/html/rfc7230), "Hypertext Transfer Protocol (HTTP/1.1): Message Syntax and Routing".

push eventrhymu8354/HttpServer

Richard Walters

commit sha 23324a9103fb5aa7e126242c33d7bebc186b20a8

Drop unused Error::AlreadyStarted

view details

push time in an hour

push eventrhymu8354/HttpServer

Richard Walters

commit sha 52db339738ac8d193027d3704afeec848e1760ce

WIP implementing HTTP server * Implement request parsing and response generation. * Fix errors in handle_connections. * Replace all unwraps with expects so that a human-readable explanation of what happened is provided with any panic. TODO: * Connection reuse (if client didn't mark it to be closed, and connection is not to be upgraded) * Connection upgrades

view details

push time in 2 hours

push eventrhymu8354/HttpServer

Richard Walters

commit sha 968684fdc66585ec51085d096e4f69c5b3f3bc98

Add and apply rustfmt configuration

view details

push time in 4 hours

push eventrhymu8354/HttpClient

Richard Walters

commit sha 17d1e705da126a805fdfac6873b71016e7decf05

Add and apply rustfmt configuration

view details

push time in 4 hours

push eventrhymu8354/Http

Richard Walters

commit sha 9000c91f9846e2a7f47cf163e6711e4b057dd54c

Add and apply rustfmt configuration

view details

push time in 4 hours

push eventrhymu8354/MessageHeaders

Richard Walters

commit sha 93069bca9ba05b5090d64d730f5793a03980485c

Add and apply rustfmt configuration

view details

push time in 4 hours

push eventrhymu8354/Uri

Richard Walters

commit sha 9d961981db81d10a7315160fbcb45b1ebaf4c119

Add and apply rustfmt configuration

view details

push time in 4 hours

push eventrhymu8354/Utf8

Richard Walters

commit sha b36f2a20adf527bf122cadcb999d9efb4307032f

Apply rustfmt rules

view details

push time in 4 hours

push eventrhymu8354/Excalibur

Richard Walters

commit sha 2023d56b5428dec0d16e9cb7e9cef83dea84aaaf

Include rustfmt config as IDE tool workaround When using the `Format Document` command in VSCode, rust-analyzer ends up looking at the workspace root for the configuration, rather than starting at the file and recursively searching outwards, like one might expect. Work around this by providing a copy of rustfmt.toml at the root level. Note that this should not have any effect on individual projects which have their own configurations, as tested on the command line with "cargo +nightly fmt" run at either the root or individual project levels.

view details

Richard Walters

commit sha d23c847ddf9e79cf2e00603d27b473a7a8cbbd63

Add HttpServer project to workspace

view details

push time in 4 hours

push eventrhymu8354/HttpClient

Richard Walters

commit sha b4828d0ffe105a43bfd28ca635236d8f48d819cd

Fix issues in Cargo.toml * The repository URL is wrong. * The exclude list is unnecessary.

view details

push time in 5 hours

push eventrhymu8354/Pantry

Richard Walters

commit sha 3ee34d04b025af0759c66b72a0e3483922f3eec1

Add .gitignore

view details

Richard Walters

commit sha 6f2b87424d43b035066352135942b6cce3e4cfa1

Add rustfmt configuration This configuration more or less matches the coding style that I prefer. I had to bend a little bit on a few things, and also I had to opt into using the nightly build of rustfmt. Therefore, please use "cargo +nightly fmt" for all your formatting needs.

view details

Richard Walters

commit sha ca8f9ae29641dfdfbfc1bee86e1239e50aef27ac

Include license information in README.md

view details

push time in 5 hours

pull request commentrhymu8354/Pantry

[.gitignore] Added default one from `cargo new --lib`; [src/lib.rs] rustfmt

I'd like a rustfmt.toml configured more to my liking. I'll look into it.

SamuelMarks

comment created time in 9 hours

pull request commentrhymu8354/Pantry

[.gitignore] Added default one from `cargo new --lib`; [src/lib.rs] rustfmt

I'm not sure I like all the rustfmt changes...

SamuelMarks

comment created time in 20 hours

push eventrhymu8354/HttpServer

Richard Walters

commit sha 66f184969b9131f8f4e5a7d7664b64d67844e73e

Work in progress adding connection processor code

view details

push time in a day

create barnchrhymu8354/HttpServer

branch : main

created branch time in a day

created repositoryrhymu8354/HttpServer

created time in a day

push eventrhymu8354/Pantry

Richard Walters

commit sha 0c38e9bd5f04a11be8b5938f3a15d2bc1076ad78

No need for Rc<> for sharing pools since it's all in the same lifetime Thanks to Serayen for point this out!

view details

push time in a day

push eventrhymu8354/HttpClient

Richard Walters

commit sha 8d0b8fb2840344f533da9201ae85690decd94a51

HttpClient::connect shouldn't be public

view details

Richard Walters

commit sha 5c959cd46dab089af9e2bcad5eff8e066d04d98f

Enable upgrading of HTTP client connections * Change the `reuse` boolean parameter of `fetch` to be `connection_use`, a `ConnectionUse` enum value, so that we can have three possibilities: (1) single-resource request (imples "Connection: close") (2) multi-resource request (implies caching the connection for later) (3) upgrade request (imples "Upgrade" header, return connection to client if status is 101. * Change successful return value of `fetch` from `Response` to `FetchResults` in order to carry both the response and the possible connection (if it's upgraded).

view details

push time in a day

push eventrhymu8354/Http

Richard Walters

commit sha a6c429e149c0051a9ce8d6da79b470b544600d31

Add handling of trailer (extra bytes after end of response)

view details

push time in a day

push eventrhymu8354/Excalibur

Richard Walters

commit sha b53581e71d97fcfeda5125885b1acb0268f3d7ee

Updates to Rust dependencies

view details

push time in 2 days

push eventrhymu8354/HttpClient

Richard Walters

commit sha a08183a4da9bb90f5d8985ba742ae962760d3cb5

Move body and text coding to Http (rhymuweb)

view details

push time in 2 days

push eventrhymu8354/Http

Richard Walters

commit sha 669bdbab77ae8d54ba808d83af3976a27aee469e

Move body decoding functions from HttpClient

view details

push time in 2 days

push eventrhymu8354/HttpClient

Richard Walters

commit sha f7f67db4d8db2fa5ca610769969b377af0858407

Add text decoding of bodies

view details

Richard Walters

commit sha 89d374e1f009207fa750ff78897a032037dfa376

Default text charset to iso-8859-1 and include text decoding in example

view details

push time in 2 days

push eventrhymu8354/HttpClient

Richard Walters

commit sha 44a4bf7c775c5bf571d7243edd6097c0a40abed4

Remove unnecessary HashMap

view details

push time in 2 days

push eventrhymu8354/Excalibur

Richard Walters

commit sha 0690ac2ed441ff0be01e723946f4f251f95b83a3

Updates to Rust dependencies

view details

push time in 2 days

push eventrhymu8354/HttpClient

Richard Walters

commit sha a3da1fa4dc9ce9957b1ee6f2d6964ba4b0a8c0cd

Add decoding of gzip and deflate encoded content

view details

push time in 2 days

push eventrhymu8354/HttpClient

Richard Walters

commit sha 81f1a35677f89e920208e21dd9872e158eb7d7c7

Switch to published versions of pantry and rhymuri

view details

push time in 2 days

push eventrhymu8354/Http

Richard Walters

commit sha 8b52a9b59459d4efb47d27696a857b013c668c4e

Switch back to published versions of rhymuri and rhymessage

view details

push time in 2 days

created tagrhymu8354/MessageHeaders

tag1.3.0

This is a library which implements [RFC 2822](https://tools.ietf.org/html/rfc2822), "Internet Message Format".

created time in 2 days

push eventrhymu8354/MessageHeaders

Richard Walters

commit sha ec014305ef9fec11d54dbc34cd4a2c552039c0af

Version 1.3.0 * Made `HeaderName` more flexible with regards to String/str.

view details

push time in 2 days

created tagrhymu8354/Uri

tag1.1.0

This is a library which implements [RFC 3986](https://tools.ietf.org/html/rfc3986), "Uniform Resource Identifier (URI): Generic Syntax".

created time in 2 days

created tagrhymu8354/Uri

tag1.0.2

This is a library which implements [RFC 3986](https://tools.ietf.org/html/rfc3986), "Uniform Resource Identifier (URI): Generic Syntax".

created time in 2 days

push eventrhymu8354/Uri

Richard Walters

commit sha 99a6971893b7d08c1d976e4eb99701e36d80afb8

Version 1.1.0 * Added functions to remove parts of a URI and return them.

view details

push time in 2 days

created tagrhymu8354/Pantry

tag1.0.0

created time in 2 days

push eventrhymu8354/Pantry

Richard Walters

commit sha 1e4803484350a4686149ce1fd2f867c1540250c6

Add unit tests and examples in documentation

view details

push time in 2 days

push eventrhymu8354/Excalibur

Richard Walters

commit sha 996e794937d9d63824f04bc09b55be56ef4d42a8

Add Pantry to workspace

view details

push time in 3 days

push eventrhymu8354/HttpClient

Richard Walters

commit sha 7c13827dee36e2c7449aeef3a756adcfc87e034b

Refactoring, use Pantry

view details

push time in 3 days

push eventrhymu8354/Pantry

Richard Walters

commit sha bba2d4bb9f5b8088ff5ec81a7623aea4609c3eff

Clean up and refactor * Add lots of comments to document the internals. * Remove requirement that value keys implement Debug. * Remove debug print statements. * Use enum for monitor future return value, for clarity.

view details

push time in 3 days

create barnchrhymu8354/Pantry

branch : main

created branch time in 3 days

created repositoryrhymu8354/Pantry

created time in 3 days

push eventrhymu8354/HttpClient

Richard Walters

commit sha 6b2e07f87cb9b3ab9bbd8b642d3adc17a95a80c1

Refactoring * Clean up uses. * Sort function order.

view details

push time in 3 days

push eventrhymu8354/HttpClient

Richard Walters

commit sha 7164a2d24caade05a1e2ca355dce5785453c4128

Have `fetch` retry any requests where reused connection breaks

view details

push time in 3 days

push eventrhymu8354/HttpClient

Richard Walters

commit sha 2e140c245b8591dd98e9c117718bdc9d6cf05af0

Refactor and annotate all unwraps with comments

view details

push time in 3 days

push eventrhymu8354/HttpClient

Richard Walters

commit sha 3fb40d46f502aa89db5bafa976b9f0f4e9a2d3f8

Finished initial cut at HTTP client implementation

view details

push time in 3 days

push eventrhymu8354/HttpClient

Richard Walters

commit sha 19f5b09c8820d8817dd6db88f40d3c16be1df747

WIP: attempting to implement complicated connection recycling system

view details

push time in 4 days

push eventrhymu8354/Excalibur

Richard Walters

commit sha 0758bd707d8f3beeb18c6c573b80014441d2b631

Now using development version of Uri

view details

push time in 7 days

push eventrhymu8354/HttpClient

Richard Walters

commit sha fded9aeaeaa7c8cf11b1d1d67dabda6b643f50a9

Work in progress developing transactions * Use development version of Uri. * Make transact use trait object rather than be generic over stream. * Have transact return the stream on success, so that we might use the stream for sending another request in the future. * Remove authority and scheme from target URI before generating the raw request. * Replace match with if let/else to unindent one level.

view details

push time in 7 days

push eventrhymu8354/Http

Richard Walters

commit sha e08c94aa1cb9e746ddd48ddcda584fbf1e7d8b87

Pick up development version of Uri

view details

push time in 7 days

push eventrhymu8354/Uri

Richard Walters

commit sha d8551fbf9514a8eea30d675f65c11b326193d164

Add functions to remove parts of a URI and return them

view details

push time in 7 days

push eventrhymu8354/HttpClient

jRimbault

commit sha 0ca48f1034a324e568f06114cc64680e50191360

Use cargo built-in support for example programs Example programs use the dev dependencies, making the overall library lighter for its consumers. Especially in the case of structopt.

view details

Richard Walters

commit sha aa8533ee8dcd7040eee02869a19a6451822a8d7a

Merge pull request #1 from jRimbault/use-cargo-example Use cargo built-in support for example programs

view details

push time in 7 days

PR merged rhymu8354/HttpClient

Use cargo built-in support for example programs

Example programs use the dev dependencies, making the overall library lighter for its consumers. Especially in the case of structopt.

cargo build --example rover
+3 -1

1 comment

2 changed files

jRimbault

pr closed time in 7 days

pull request commentrhymu8354/HttpClient

Use cargo built-in support for example programs

I didn't know that. Thanks!

jRimbault

comment created time in 7 days

push eventrhymu8354/Http

Richard Walters

commit sha 3d78773a22f5f3837fa8dafb218452a96ac29c50

Switch rhymessage to local version during development

view details

push time in 8 days

push eventrhymu8354/Excalibur

Richard Walters

commit sha 1cb3ac689d6c3443b2c3df1b8a57d1f6362dd851

Add HttpClient crate and repo

view details

push time in 8 days

create barnchrhymu8354/HttpClient

branch : main

created branch time in 8 days

created repositoryrhymu8354/HttpClient

created time in 8 days

push eventrhymu8354/MessageHeaders

Richard Walters

commit sha fc3439e106963bcfb9e234539bcbff27189482fa

Make HeaderName more flexible with regards to String/str * Narrow From implementation to From<&str>. * Implement AsRef<str>. * Implement std::fmt::Display.

view details

push time in 9 days

push eventrhymu8354/Excalibur

Richard Walters

commit sha 675b90bed042922a0646569442f9b11655753966

rhymessage bump to 1.2.0

view details

push time in 9 days

push eventrhymu8354/Http

Richard Walters

commit sha e764c2b5e9b48fe624fcf9bfdfc0a071f63b4211

Package Request/Response parse results in structures

view details

push time in 9 days

push eventrhymu8354/Http

Richard Walters

commit sha 0b81abe4a79ea4198cfd1ea92b1e898292fab18d

Drop "license-file" metadata from Cargo.toml since crate warns us

view details

push time in 9 days

push eventrhymu8354/Http

Richard Walters

commit sha 76d4040a5da3610e07f40778bce34cb2b84893e5

Refactor and add documentation * Some functions returning `Result` are in fact infallible and so we can strip the `Result`. * Remove commented-out code. * Add documentation for all public things. * Remove dead code. * Put functions in alphabetical order. * Update README.md file. * Try specifying both "license" and "license-file" in the Cargo.toml, since we have a license file and we also want crates.io to list the license as MIT and not "custom".

view details

push time in 9 days

push eventrhymu8354/Http

Richard Walters

commit sha 115d362aa5a4198e576eb73631577220accdf208

Updates to how headers are handled and find_crlf refactoring * Refactor find_crlf to use `core::slice::windows`. * Update code to use rhymessage 1.2. * Use new implementation of `std::iter::IntoIterator` for `rhymessage::MessageHeaders` to avoid cloning headers when moving them from trailer.

view details

push time in 9 days

created tagrhymu8354/MessageHeaders

tag1.2.0

This is a library which implements [RFC 2822](https://tools.ietf.org/html/rfc2822), "Internet Message Format".

created time in 9 days

push eventrhymu8354/MessageHeaders

Richard Walters

commit sha c21af07573831ec7c24c3b893a2b65aab7d4110c

Version 1.2.0 * Refactor find_crlf to use `core::slice::windows`. * Change `MessageHeader::add_header` to take a `Header` rather than separate name/value arguments. Summary of changes in other commits since last version: * Added implementations of `std::iter::IntoIterator` for both move and borrow semantics for `MessageHeaders`.

view details

push time in 9 days

push eventrhymu8354/MessageHeaders

Richard Walters

commit sha 54392ded90fcfe28ebfecb0e5b7caa60931f7e6b

Add implementations of IntoIterator (move and borrow) for MessageHeaders

view details

push time in 10 days

push eventrhymu8354/Http

Richard Walters

commit sha caa94d796bae7ff68a7c635b7e26de6d8b256064

Make parts of ChunkedBody public for use outside its module * buffer * trailer * decode * new

view details

Richard Walters

commit sha 309c05a4b1c4c147c6e1847543ea672db74bb94b

Response: decode chunked transfer encoded bodies * Integrate `ChunkedBody` with `Response` in order to do the decoding. * Redesign the state machine used by `parse` so that each state handler produces the next state and receives the payload of the current state. * Implement Default for ResponseState in order for the `state` of a `Reponse` to be taken out for processing by the `parse` state machine. * Rename `ResponseState::Body` to `ResponseState::FixedBody` and unwrapped its payload. * Added `ResponseState::ChunkedBody` to support decoding chunked body decoding.

view details

push time in 10 days

push eventrhymu8354/Http

Richard Walters

commit sha 6e493b5d91f2c306e18e4f5707984c7ca0be710b

Add chunked body decoder and various dependencies. * Implement chunked body decoder. * Add various `Error` variants that have to do with chunked body decoding. * `Error::Headers` no longer tells `thiserror` to generate a From<rhymessage::Error> implementation. Instead, it simply marks the inner error as a #source. * Now that there are two ways to get `rhymessage::Error` errors, map those that have to do with the request/response headers to `Error::Headers`, while mapping those that have to do with the trailer to `Error::Trailer`.

view details

push time in 10 days

push eventrhymu8354/Http

Richard Walters

commit sha d407e1e061ed5b590a8b42b4ef8970aadf2f8952

Work in progress implementing Request/Response * Partially implement `Response::parse` (except chunked transfer encoding). * Remove `Response::is_complete_or_error`. * Move find_crlf to crate level. * Add a few more error variants.

view details

push time in 11 days

push eventrhymu8354/Excalibur

Richard Walters

commit sha 46bf7a704085bf1ed1eba67833bdf904f04a4e58

Add Http (rhymuweb) to Rust workspace

view details

push time in 11 days

push eventrhymu8354/Http

Richard Walters

commit sha f293654fb23c02b320e9d6202a7719cf18b9462d

Fix name find_whitespace -> find_crlf

view details

push time in 11 days

push eventrhymu8354/MessageHeaders

Richard Walters

commit sha 2aef8d9dedf983e0d624537d5ebf6004ec24d51d

Fix name find_whitespace -> find_crlf

view details

push time in 11 days

push eventrhymu8354/Http

Richard Walters

commit sha af7620bbe14a291b06303b587a74a2f86dc11c75

Work in progress porting to Rust * Port Request type completely. Many tests were moved from the Server type unit tests to here. * Port Response type partially. It generates but does not parse responses, and is missing unit tests from the Client type.

view details

push time in 11 days

created tagrhymu8354/MessageHeaders

tag1.0.2

This is a library which implements [RFC 2822](https://tools.ietf.org/html/rfc2822), "Internet Message Format".

created time in 11 days

created tagrhymu8354/MessageHeaders

tag1.1.0

This is a library which implements [RFC 2822](https://tools.ietf.org/html/rfc2822), "Internet Message Format".

created time in 11 days

push eventrhymu8354/MessageHeaders

Richard Walters

commit sha d357006346e671e18f042058d7bf138de53aa1aa

Version 1.1.0 * Move number of bytes consumed out of ParseStatus and make ParseResults to hold it along with ParseStatus. * Take input as bytes instead of characters, and only convert internally to characters those lines which belong to the message header. * Generate headers as bytes instead of characters.

view details

push time in 11 days

push eventrhymu8354/MessageHeaders

Richard Walters

commit sha aae9b85347492098d3665a69dc4dbaf6c2473b37

Version 1.0.2. * Turn on warnings about missing documentation. * Add missing documentation for Error::HeaderValueContainsIllegalCharacter fields.

view details

push time in 11 days

push eventrhymu8354/Http

Richard Walters

commit sha 8afab16513cb931896e30ac9e7fb33a772566247

Fix typo in unit test

view details

push time in 12 days

push eventrhymu8354/Excalibur

Richard Walters

commit sha 355e6694cc8c8c6bc7d14711356f4768cb92011a

Rename message_headers crate to rhymessage

view details

push time in 12 days

created tagrhymu8354/MessageHeaders

tag1.0.1

This is a library which implements [RFC 2822](https://tools.ietf.org/html/rfc2822), "Internet Message Format".

created time in 12 days

push eventrhymu8354/MessageHeaders

Richard Walters

commit sha 508cd83a7710dd5d101365ebbb2a9332e78404b8

Version 1.0.1 Fix crate category list

view details

push time in 12 days

created tagrhymu8354/MessageHeaders

tag1.0.0

This is a library which implements [RFC 2822](https://tools.ietf.org/html/rfc2822), "Internet Message Format".

created time in 12 days

push eventrhymu8354/MessageHeaders

Richard Walters

commit sha 20e2b9a76a4310ff9c5bde5ddb69704eb4866cc5

Update README

view details

push time in 12 days

push eventrhymu8354/MessageHeaders

Richard Walters

commit sha 84e5ee39e426ecf7d1028ca1ead77bd2d2c11a6b

Rename Rust crate to rhymessage to fit into crates.io

view details

push time in 12 days

push eventrhymu8354/MessageHeaders

Richard Walters

commit sha 2564cfa8387acb5e74b3b19290ce03305a81c2f7

Remove Display impl for MessageHeaders Use `generate` instead to emit MessageHeaders as text.

view details

push time in 12 days

push eventrhymu8354/MessageHeaders

Richard Walters

commit sha 873787c8df25bda469ea8ee40f0ad5f60b361f4b

Refactoring: remove "get_" from public getters

view details

push time in 12 days

push eventrhymu8354/MessageHeaders

Richard Walters

commit sha 026bb5a1430e0910d14dc2662c11ef6a7f61d5d8

Remove unnecessary Display impl for HeaderName

view details

push time in 12 days

push eventrhymu8354/MessageHeaders

Richard Walters

commit sha afab131785cc390c2c55e6870fdce07c4505fc46

Refactor: positive logic

view details

push time in 12 days

push eventrhymu8354/MessageHeaders

Richard Walters

commit sha 66b1fa8a47f289199861fd88a28d48da7c13e40f

Remove redundant "valid" flag and "is_valid" function.

view details

push time in 12 days

push eventrhymu8354/MessageHeaders

Richard Walters

commit sha fd3ecc6ea2835d741a9111b1b1ca5546d810fab0

Finish first cut of doc comments

view details

push time in 14 days

push eventrhymu8354/MessageHeaders

Richard Walters

commit sha e494a9763c69c212ee80c6323f337fd7ce42ea5a

Refactoring and documentation * Turn on missing documentation warnings. * Make Error type available through the public API. * Make HeaderName into a newtype. * Add documentation for HeaderName, Header, MessageHeaders, and HeaderMultiMode. * Fix a few typos.

view details

push time in 14 days

push eventrhymu8354/Uri

Richard Walters

commit sha bc57f058e630f9f2e53867b48e0e710c72d7d8ec

Version 1.0.2 * Code in doc examples needs to be reachable through a "main" function, otherwise the tests silently fail to detect problems. * The example for `Uri::resolve` was calling `path_to_string` rather than `to_string`.

view details

push time in 14 days

push eventrhymu8354/MessageHeaders

Richard Walters

commit sha 2ed87742206255ae8d94de06ac8ae417b69b4b3c

Fix a bug in validity checking * Add missing validity check for header value first segment. * Include header name in Error::HeaderValueContainsIllegalCharacter. * Have unfold_header input/output the entire header.

view details

push time in 14 days

push eventrhymu8354/MessageHeaders

Richard Walters

commit sha 6971c59adb76e033ddb2e92019972d1705464955

Refactor another place we can use is_ascii_graphic

view details

push time in 14 days

push eventrhymu8354/MessageHeaders

Richard Walters

commit sha 4e52aeef2955fc42cde3b26b883fc5bd4eea589b

Add improvement; Thanks to chat We can use char::is_ascii_graphic rather than manually converting the character to an integer and testing if it's between 33 and 126.

view details

push time in 14 days

push eventrhymu8354/MessageHeaders

Richard Walters

commit sha e79f0f3e378ec3ec3058255327cad1b0ab75a156

Finished initial cut at Rust port * Made HeaderName, Header, and MessageHeaders clonable. * Add has_header_token function. * Fixed a bug in header unfolding calculations. * Add in ports of the remaining unit tests.

view details

push time in 14 days

push eventrhymu8354/MessageHeaders

Richard Walters

commit sha b967116154b2b249d82ffa129d004e865d8b8871

Work in progress porting to Rust * Rename generate_raw_string to generate. * Add add_header_multi_value. * Add get_header_multi_value. * Add get_header_tokens. * Add remove_header. * Add set_header_multi_value. * Add more unit tests.

view details

push time in 15 days

push eventrhymu8354/MessageHeaders

Richard Walters

commit sha bd0025047958c8ca36f51b462be76d20f18bdc89

Work in progress porting to Rust * Remove conversion from Error to std::fmt::Error. * Add conversion from std::fmt::Error to Error. * Move raw message generation from Display::fmt implementation to generate_raw_string method, since it's fallible. * Have Display::fmt implementation use generate_raw_string and only write something if it succeeds. * Implement fold_header and fix its API. * Fix bug in character '\x7F' being permitted in headers. * Add add_header method. * Refactor get_header_value to use map_or_else. * Add set_header method. * Port over more unit tests.

view details

push time in 15 days

PR opened livecoders/website

Update rhymu8354 member image and bio
+15 -0

0 comment

2 changed files

pr created time in 15 days

push eventrhymu8354/livecoders-website

Richard Walters

commit sha ba1fbc4436c6c2f08fb743c28db52d65c29fe7d7

Update rhymu8354 member image and bio

view details

push time in 15 days

fork rhymu8354/website

Website for the Live Coders Twitch Team

https://livecoders.dev

fork in 15 days

more