profile
viewpoint
Yoshua Wuyts yoshuawuyts Berlin, Germany https://yoshuawuyts.com Software researcher. he/they

choojs/choo 6479

:steam_locomotive::train: - sturdy 4kb frontend framework

browserify/watchify 1766

watch mode for browserify builds

choojs/bankai 1059

:station: - friendly web compiler

choojs/nanohtml 633

:dragon: HTML template strings for the Browser with support for Server Side Rendering in Node.

browserify/rustify 496

Rust WebAssembly transform for Browserify

choojs/nanocomponent 348

🚃 - create performant HTML components

choojs/choo-handbook 266

🚂✋📖 - Learn the choo framework through a set of exercises

browserify/module-deps 199

walk the dependency graph to generate a stream of json output

choojs/nanobus 195

🚎 - Tiny message bus

choojs/awesome-choo 194

🌅 Awesome things related with choo framework

push eventhttp-rs/http-types

Yoshua Wuyts

commit sha 0f453a83eb35d11e0c511b5cb146d868034cd813

more multipart

view details

push time in a minute

push eventhttp-rs/http-types

Yoshua Wuyts

commit sha 45c7860dabd9bdf79c6146d197c1ec199caf1c54

Fix trailers methods

view details

Yoshua Wuyts

commit sha 0836aa527367a13aca7090b2abf0eccc345f6311

Merge pull request #176 from http-rs/patch-trailers Fix trailers methods

view details

Jeremiah Senkpiel

commit sha 6e04e91aee338d610a8dee999e1c07dccc41bfe1

Response: add Error storage, retrieval, conversion This allows for robust creation of Response-s directly from Error-s, with error capture for future reference, and retrieval via `error() -> Option<&Error>`. PR-URL: https://github.com/http-rs/http-types/pull/174 Refs: https://github.com/http-rs/http-types/pull/169 Refs: https://github.com/http-rs/tide/pull/546 Refs: https://github.com/http-rs/tide/issues/532 Refs: https://github.com/http-rs/tide/issues/452

view details

Jeremiah Senkpiel

commit sha 3b0407f4049cf14b05e1e10008b452237aeac547

Response: add set_error() This has been has somewhat controversial in the development of https://github.com/http-rs/http-types/pull/174 but was ultimately deemed as desirable due to the idea of giving preference to an existing Response rather than creating a new one in upstream libraries.

view details

Jacob Rothstein

commit sha c87c466ffdb26da998c2d612cb0c601413c7a6e8

use serde_qs for querystrings

view details

Yoshua Wuyts

commit sha 8546b9893bbf359032be573b7ddeeec0590ed0cd

v2.2.1

view details

Yoshua Wuyts

commit sha 539638273de768a24354b65999ad9317b6659204

Merge pull request #174 from Fishrock123/response-optional-error Response: add Error storage, retrieval, conversion

view details

Jeremiah Senkpiel

commit sha f8517a22c3e104b79d6878d91c03762a9a4fac9e

mime: add as_str() to ParamName and ParamValue Previously, there was no way to actually get the string values.

view details

Jeremiah Senkpiel

commit sha 9bb7539f63dad3393cd19994f0fc9fcc9df7a1c8

Body: add Sync to into_reader() return bounds Fixes: https://github.com/http-rs/http-types/issues/187

view details

Ririsoft

commit sha e89b02fda13179b196bf5f8a7a9df6cbdb9365d7

fix clippy errors and warnings This fixes a few clippy errors and warnings with some noticable exceptions: * new_without_default has been deactivated at crate level since it does not seem to be considered mandatory (see 92#pullrequestreview-391768723) * module_inception is allowed for private module headers::headers since it would lead to too much refactoring. This is left as a TODO for the future.

view details

Ririsoft

commit sha 53fd6a6f6491b64a7d8d60e5e8021c40a617e49e

ci: enable clippy

view details

Ririsoft

commit sha dae51d7cf462ada802bd21cf4bc8c97dbacd7b97

Replace unneeded clone with borrow

view details

Jeremiah Senkpiel

commit sha 68c1866576bc21b37a61e6ffe8029c15d3943205

Mime: add From<&str> Refs: https://github.com/http-rs/tide/issues/575

view details

Yoshua Wuyts

commit sha a749a59b8f7f3570e35ab57b9739ef1316988a5c

Merge pull request #188 from Fishrock123/mime-param-as_str mime: add as_str() to ParamName and ParamValue

view details

Jeremiah Senkpiel

commit sha e5a726f313e58d40d10a49c02b40f09eaa40819f

Revert "Response: add set_error()" This reverts commit 3b0407f4049cf14b05e1e10008b452237aeac547.

view details

Jeremiah Senkpiel

commit sha 7d788b2310efaec59a0300c038f6663c5e5a43b2

Revert "Response: add Error storage, retrieval, conversion" This reverts commit 6e04e91aee338d610a8dee999e1c07dccc41bfe1.

view details

Yoshua Wuyts

commit sha 55689e1b6e0f61562a2866b0d04c9aa135b68c9f

Merge pull request #191 from Fishrock123/revert-174 Revert 174

view details

Emmanuel Antony

commit sha 07c39ee5fb010719a1593d8494a3c46d8012dcec

Introduced StatusCode Multi-Status 207.

view details

Yoshua Wuyts

commit sha cbfa172e0db09bdd645289255b6951a92cb4e45a

Update src/status_code.rs

view details

Yoshua Wuyts

commit sha ff7f5b41e4e75edef4e18b69c02365f0ad1d6ccc

Merge pull request #194 from emmanuelantony2000/master Introduced StatusCode Multi-Status 207.

view details

push time in an hour

push eventhttp-rs/tide

Mendelt Siebenga

commit sha a138f2004df6d5050a25f99a7469ee5c255435e7

fix: route prefix is always reset to false after nesting a server

view details

Yoshua Wuyts

commit sha 563091ee55c1122103ca95579b6cb8d72b6ea0ef

Merge pull request #702 from mendelt/fix_route_prefix_after_nest Bugfix, route prefix was always set to false after calling nest

view details

push time in an hour

PR merged http-rs/tide

Bugfix, route prefix was always set to false after calling nest

Description

I found this method in route.rs:

    pub fn nest<InnerState>(&mut self, service: crate::Server<InnerState>) -> &mut Self
    where
        State: Clone + Send + Sync + 'static,
        InnerState: Clone + Send + Sync + 'static,
    {
        self.prefix = true;
        self.all(service);
        self.prefix = false;
        self
    }

I'm not sure if this is expected behavior but I assume that if self.prefix was set to true before calling nest it should stay true.

How Has This Been Tested?

This is a trivial code change, all tests still pass, however I could try to add a regression test for this. Let me know if this is required

Types of changes

  • [X] Bug fix (non-breaking change which fixes an issue)
  • [ ] New feature (non-breaking change which adds functionality)
  • [X] Breaking change (fix or feature that would cause existing functionality to change)

This does introduce a small change in behavior but it only impacts code that uses the unstable strip-prefix method

Checklist:

  • [ ] My change requires a change to the documentation.
  • [ ] I have updated the documentation accordingly.
  • [X] I have read the CONTRIBUTING document.
  • [ ] I have added tests to cover my changes.
  • [X] All new and existing tests passed.
+4 -1

3 comments

1 changed file

mendelt

pr closed time in an hour

PullRequestReviewEvent

push eventhttp-rs/tide

Yoshua Wuyts

commit sha 18c79206e1621f072215c8402881be5ce525248a

restore router bench

view details

push time in an hour

push eventhttp-rs/tide

Yoshua Wuyts

commit sha 35d67eb9b1ee6686b2b23cb237fba303eee4a55b

restore router bench

view details

push time in an hour

pull request commenthttp-rs/tide

Lints

And I've restored the router bench. All Server::respond does is clone various things and then call the router. This should be close enough to the original bench.

yoshuawuyts

comment created time in an hour

push eventhttp-rs/tide

Yoshua Wuyts

commit sha 2febd6fd0ffc634c803883276fb9ec0c23011027

restore router bench

view details

push time in an hour

push eventhttp-rs/tide

Yoshua Wuyts

commit sha 4ff4b1098e49c1e7f9b8edc11f9582d16cf40eb2

restore router bench

view details

push time in an hour

startedyoshuawuyts/github-changelist

started time in 6 hours

created taghttp-rs/http-types

tagv2.5.0

Common types for HTTP operations

created time in 6 hours

release http-rs/http-types

v2.5.0

released time in 6 hours

push eventhttp-rs/http-types

Yoshua Wuyts

commit sha 82e3d5e6467a8d9a35a3e60728203da4f6501a8a

v2.5.0

view details

push time in 6 hours

create barnchyoshuawuyts/github-changelist

branch : master

created branch time in 7 hours

created repositoryyoshuawuyts/github-changelist

Generate a list of merged PRs since the last release

created time in 7 hours

push eventyoshuawuyts/github_auth

Yoshua Wuyts

commit sha 73aee717d08eef930d334b2c6039b7b634508ab0

update to latest

view details

push time in 7 hours

push eventyoshuawuyts/github_auth

Yoshua Wuyts

commit sha bb233cbe7588726ad4f2bcc09dfeff4aff31341c

Display for token

view details

push time in 7 hours

push eventyoshuawuyts/github_auth

Yoshua Wuyts

commit sha d5a7d0063ba8552b4127b1d7c7fcc8989157171d

use surf

view details

Yoshua Wuyts

commit sha 29995747f54bccdaef30b01c8e4968ab8815abfa

remove failure

view details

push time in 8 hours

push eventyoshuawuyts/github_auth

Yoshua Wuyts

commit sha b1e0df6c12fa64aa37b5c436a03114a1c4193f09

set edition

view details

Yoshua Wuyts

commit sha 61eb1faefb5bb87b765adccfbaddd60f1b0888f5

update deps

view details

Yoshua Wuyts

commit sha 15bd5b8a1ea4551621e996287a23d1c2f4f82787

rust 2018

view details

Yoshua Wuyts

commit sha acc0ffef3f54672c3a1e1e9c5b462052e0db4a8e

remove extern crate

view details

push time in 8 hours

push eventyoshuawuyts/github_auth

Yoshua Wuyts

commit sha 03548a51a820c4f4e4b1d271e1d217e04ee47e22

update

view details

push time in 8 hours

push eventhttp-rs/tide

Yoshua Wuyts

commit sha 68c04b61e96b8a43d8c853be2fa025810ac88894

rework landing docs

view details

push time in 11 hours

push eventhttp-rs/tide

Yoshua Wuyts

commit sha 2343ac060b7ee074cea18ebc478ba64ad3acc06a

rework landing docs

view details

push time in 11 hours

push eventhttp-rs/http-types

Yoshua Wuyts

commit sha c8d4b9d762e5fcf8bec5f08e69e9935898e43305

Allow `Error::set_status` to take `TryInto<StatusCode>`

view details

Yoshua Wuyts

commit sha bbbca574361fa616754592bdf0d31f3e4edec0e1

Merge pull request #249 from http-rs/set-status Allow `Error::set_status` to take `TryInto<StatusCode>`

view details

push time in 11 hours

PR merged http-rs/http-types

Allow `Error::set_status` to take `TryInto<StatusCode>`

This is a minor annoyance when working with status codes. This brings it in line with the rest of our methods. Thanks!

+8 -2

2 comments

1 changed file

yoshuawuyts

pr closed time in 11 hours

pull request commenthttp-rs/http-types

Allow `Error::set_status` to take `TryInto<StatusCode>`

Oki, merging. The new release contains many similar APIs and this was mostly left behind on accident it seems.

yoshuawuyts

comment created time in 11 hours

PR opened http-rs/tide

Remove parsing from `Request::param`

This PR removes the parse portion of Request::param, making that an explicit step that needs to be called by end-users. This was inspired by my analysis in https://github.com/rust-lang/rust/pull/75435#issuecomment-695805123 on similar ergonomics issues for a stdlib API. As a result many of our tests that want to extract a &str or String from the params are more intuitive.

+52 -96

0 comment

7 changed files

pr created time in 11 hours

push eventhttp-rs/tide

Yoshua Wuyts

commit sha a125628bee0107aa54bb1ddf5350eff3d5407a64

Remove parsing from `Request::param`

view details

push time in 11 hours

push eventhttp-rs/tide

Yoshua Wuyts

commit sha 9074585c2dd4cff3a873fb7606d337696635bb09

Remove parsing from `Request::param`

view details

push time in 12 hours

push eventhttp-rs/tide

Yoshua Wuyts

commit sha f16861629e6967ca0cebe80d3ebb80886e57e79a

Remove parsing from `Request::param`

view details

push time in 12 hours

push eventhttp-rs/http-types

Yoshua Wuyts

commit sha 3790715c366fc24d69328297dfe09f7df224648f

Fix clippy warning

view details

Yoshua Wuyts

commit sha e708c7d1f6780bd3c46e241dc4a6b33cb4cef09a

Merge pull request #250 from http-rs/fix-clippy Fix clippy warning

view details

Yoshua Wuyts

commit sha c8d4b9d762e5fcf8bec5f08e69e9935898e43305

Allow `Error::set_status` to take `TryInto<StatusCode>`

view details

push time in 12 hours

push eventhttp-rs/http-types

Yoshua Wuyts

commit sha 3790715c366fc24d69328297dfe09f7df224648f

Fix clippy warning

view details

Yoshua Wuyts

commit sha e708c7d1f6780bd3c46e241dc4a6b33cb4cef09a

Merge pull request #250 from http-rs/fix-clippy Fix clippy warning

view details

push time in 12 hours

PR merged http-rs/http-types

Fix clippy warning

Fixes the clippy warning that caused https://github.com/http-rs/http-types/pull/249/checks?check_run_id=1172403843 to fail. Thanks!

+3 -4

0 comment

1 changed file

yoshuawuyts

pr closed time in 12 hours

pull request commenthttp-rs/http-types

Allow `Error::set_status` to take `TryInto<StatusCode>`

Fix for clippy in https://github.com/http-rs/http-types/pull/250. Waiting for PR to pass so we can rebase.

yoshuawuyts

comment created time in 12 hours

PR opened http-rs/http-types

Fix clippy warning

Fixes the clippy warning that caused https://github.com/http-rs/http-types/pull/249/checks?check_run_id=1172403843 to fail. Thanks!

+3 -4

0 comment

1 changed file

pr created time in 12 hours

create barnchhttp-rs/http-types

branch : fix-clippy

created branch time in 12 hours

PR opened http-rs/http-types

Allow `Error::set_status` to take `TryInto<StatusCode>`

This is a minor annoyance when working with status codes. This brings it in line with the rest of our methods. Thanks!

+8 -2

0 comment

1 changed file

pr created time in 12 hours

create barnchhttp-rs/http-types

branch : set-status

created branch time in 12 hours

create barnchhttp-rs/tide

branch : param-error

created branch time in 12 hours

PR opened http-rs/tide

Reviewers
rework landing docs

The current docs are a bit much. This is an attempt to be more to the point. More showing, less telling. Thanks!

+30 -171

0 comment

1 changed file

pr created time in 21 hours

create barnchhttp-rs/tide

branch : readme

created branch time in 21 hours

pull request commenthttp-rs/tide

Bugfix, route prefix was always set to false after calling nest

A regression test would be great. Also if we could split https://github.com/http-rs/tide/pull/702/commits/3d41fb90679017fe8940cd57ddd395cf95c710d4 from https://github.com/http-rs/tide/pull/702/commits/2ad051a4ea718b77e0954a01b8ea53ccc17ff4ae into separate patches that'd be greatly appreciated. Also we've fixed the tests on main, which means https://github.com/http-rs/tide/pull/702/commits/3a25c8535d2d5399340ccbfeb9f45ab716f0dda9 is no longer needed.

Thanks heaps!

mendelt

comment created time in a day

pull request commenthttp-rs/tide

Lints

I've disabled the router bench temporarily; we don't really use it much anymore, but can always spin it back up if we want to.

yoshuawuyts

comment created time in a day

issue closedprisma/prisma-engines

Reference to barrel.git breaks build

My arm64 build pipeline started failing, and I identified it as caused by this commit: https://github.com/prisma/prisma-engines/commit/a25d3c320c457986fe1b343b25c7f9182d8072f7

By dropping the .git suffix from the new reference to barrel so it reads barrel = {git = "https://github.com/prisma/barrel"..., it resolves the build issue. I'm not a Rust expert, but I had to delete Cargo.lock and attempt rebuild before it started working again.

closed time in a day

radicand

issue commentprisma/prisma-engines

Reference to barrel.git breaks build

@radicand Thanks for opening this issue! We're aware of the dependency issues with barrel; a few days ago something indeed went wrong during a merge, and we ended up having to force push a fix to master. As a result of that some branches would no longer build; probably because as you shared the Cargo.lock needed to be updated. In the case of my branches, I managed to fix my build issues by rebasing on master -- but I'm guessing rebuilding the Cargo.lock file like you did also would've done the trick.

I'm glad you managed to resolve this though; and we appreciate you taking your time to share this with the team!

radicand

comment created time in a day

push eventhttp-rs/tide

Yoshua Wuyts

commit sha 739736ea6c7c58f0faac75cdfaef20f12f73c4a4

Fix .github Removes outdated parts of our .github dir that were accidentally added back a few months ago. This removes: - DCO notices - issue templates - PR templates

view details

Yoshua Wuyts

commit sha 7a5ac3e94fd179fb9cc383b5585b17c31648010b

Merge pull request #705 from http-rs/fix-template Fix .github

view details

push time in a day

PR merged http-rs/tide

Fix .github

Removes outdated parts of our .github dir that were accidentally added back a few months ago as part of https://github.com/http-rs/tide/pull/616. This removes:

  • DCO notices
  • issue templates
  • PR templates

This supersedes https://github.com/http-rs/tide/pull/698 and https://github.com/http-rs/tide/pull/648. Thanks!

+0 -113

0 comment

6 changed files

yoshuawuyts

pr closed time in a day

push eventhttp-rs/tide

Yoshua Wuyts

commit sha 798a247bb4bdba9cb4e962769b54002415bfb765

temp disable bench code

view details

push time in a day

issue commenttaiki-e/pin-project

Generated `#[deny(safe_packed_borrows)]` is not compatible with `#![forbid(future_incompatible)]`

They will constant improvement/change, and code that was not warned at the release time may become unavailable.

I hadn't given this enough thought, and you're absolutely right. I'll have to revise this. Thank you!

yoshuawuyts

comment created time in a day

pull request commentrust-lang/rust-clippy

Add `rc_buffer` lint for checking Rc<String> and friends

We've hit this lint in Surf and are moving to disable it: https://github.com/http-rs/surf/pull/242. We use a similar structure for middleware in Tide as well. This may be an interesting case study for how legitimate use cases that are disallowed by this lint.

rschoon

comment created time in a day

push eventhttp-rs/tide

Yoshua Wuyts

commit sha 5065aa949d7fc3a7ff3579b591c11efa678162db

temp disable bench code

view details

push time in a day

push eventhttp-rs/tide

Yoshua Wuyts

commit sha 1871e60fddc6e22784bd575a72063c57d5fd8893

Update to latest Surf alpha in tests

view details

Yoshua Wuyts

commit sha c33582ce4d8e1c519fb72b0532137f581b9e999c

Merge pull request #706 from http-rs/update-surf Update to latest Surf alpha in tests

view details

Yoshua Wuyts

commit sha ce8baac413526a4b3f5fe3b093162883193e6842

enable lints

view details

Yoshua Wuyts

commit sha c080d97cdebd2c47b58978026d0d76fd65e05911

Fix lints

view details

push time in a day

push eventhttp-rs/tide

Yoshua Wuyts

commit sha 1871e60fddc6e22784bd575a72063c57d5fd8893

Update to latest Surf alpha in tests

view details

Yoshua Wuyts

commit sha c33582ce4d8e1c519fb72b0532137f581b9e999c

Merge pull request #706 from http-rs/update-surf Update to latest Surf alpha in tests

view details

Yoshua Wuyts

commit sha 739736ea6c7c58f0faac75cdfaef20f12f73c4a4

Fix .github Removes outdated parts of our .github dir that were accidentally added back a few months ago. This removes: - DCO notices - issue templates - PR templates

view details

push time in a day

push eventhttp-rs/tide

Yoshua Wuyts

commit sha 1871e60fddc6e22784bd575a72063c57d5fd8893

Update to latest Surf alpha in tests

view details

Yoshua Wuyts

commit sha c33582ce4d8e1c519fb72b0532137f581b9e999c

Merge pull request #706 from http-rs/update-surf Update to latest Surf alpha in tests

view details

push time in a day

PR merged http-rs/tide

Update to latest Surf alpha in tests

Updates to the latest surf alpha. Unblocks https://github.com/http-rs/tide/pull/704 https://github.com/http-rs/tide/pull/705. Thanks!

+3 -3

0 comment

1 changed file

yoshuawuyts

pr closed time in a day

issue closedhttp-rs/http-types

EOF while parsing a value at line 1 column 0

_req.take_body().into_json().await?

on using above syntax while parsing body gives "EOF while parsing a value at line 1 column 0 error". Please look into it and fix the error.

closed time in a day

sankar-boro

Pull request review commenthttp-rs/http-types

Make async-std optional

-use async_std::sync;- use crate::upgrade::Connection;  /// The sending half of a channel to send an upgraded connection. ///-/// Unlike `async_std::sync::channel` the `send` method on this type can only be+/// Unlike `async_channel::Sender` the `send` method on this type can only be /// called once, and cannot be cloned. That's because only a single instance of /// `Connection` should be created. #[derive(Debug)] pub struct Sender {-    sender: sync::Sender<Connection>,+    sender: async_channel::Sender<Connection>, }  impl Sender {     /// Create a new instance of `Sender`.     #[doc(hidden)]-    pub fn new(sender: sync::Sender<Connection>) -> Self {+    pub fn new(sender: async_channel::Sender<Connection>) -> Self {

both trailers::Sender::new and upgrade::Sender::new are non-public methods; neither of these affects our stability

akhilles

comment created time in a day

PullRequestReviewEvent

PR opened http-rs/tide

Update to latest Surf alpha in tests

Updates to the latest surf alpha. Unblocks https://github.com/http-rs/tide/pull/704 https://github.com/http-rs/tide/pull/705. Thanks!

+3 -3

0 comment

1 changed file

pr created time in a day

create barnchhttp-rs/tide

branch : update-surf

created branch time in a day

PR opened http-rs/surf

remove url crate re-export

The url crate is part of http-types; there is no need to re-export the full submodule from here. This cleans up the module index slightly. Thanks!

+1 -4

0 comment

2 changed files

pr created time in a day

push eventhttp-rs/surf

Yoshua Wuyts

commit sha 9354422184ed91b6d98086e33cad6a45e6b5f4a2

remove url crate re-export the url crate is part of http-types; there is no need to re-export the full submodule from here

view details

push time in a day

push eventhttp-rs/surf

Yoshua Wuyts

commit sha 756cfa864db48dac256382febd2cf018e2f9102c

remove url crate re-export the url crate is part of http-types; there is no need to re-export the full submodule from here

view details

push time in a day

create barnchhttp-rs/surf

branch : no-url-re-export

created branch time in a day

PR opened http-rs/tide

Fix .github

Removes outdated parts of our .github dir that were accidentally added back a few months ago as part of https://github.com/http-rs/tide/pull/616. This removes:

  • DCO notices
  • issue templates
  • PR templates

This supersedes https://github.com/http-rs/tide/pull/698 and https://github.com/http-rs/tide/pull/648. Thanks!

+0 -113

0 comment

6 changed files

pr created time in a day

create barnchhttp-rs/tide

branch : fix-template

created branch time in a day

PR closed http-rs/tide

meta: fix the DCO by adding the text of DCO-1.1

The text was missing before. The DCO helps overcome some legal controversy regarding contribution authority for MIT in particular and perhaps also Apache-2.0. The Node.js Foundation (at the time) determined it was best to just stick the whole thing in the contributing document, which is what I am replicating here.

+25 -5

1 comment

1 changed file

Fishrock123

pr closed time in a day

PR opened http-rs/tide

Lints

Adds various lints and fixes our implementations. This ensures items are always documented and we don't miss any in CI. Thanks!

+24 -22

0 comment

8 changed files

pr created time in a day

create barnchhttp-rs/tide

branch : lints

created branch time in a day

issue openedtaiki-e/pin-project

`#![deny(future_incompatible)]` lint yields error

The compiler's built-in #[deny(future_incompatible)] seems to be incompatible with pin-project-internal. It seems #[deny(safe_packed_borrows)] will be disallowed in the future, but pin-project generates code that uses that lint under certain circumstances. Given the Rust 2021 edition may turn all 2018 warnings into errors, this may become a problem.

I'm not exactly sure what triggers this, but adding the lint to the current main of tide surfaces the error. Though I feel I've seen this happen before when working on other crates. I'm not sure what the right outcome here is, but thought it might be important enough to raise. Thanks!

https://github.com/taiki-e/pin-project/pull/34 seems related.

Screenshot

Screenshot 2020-09-26 19 20 16

created time in a day

Pull request review commentrust-lang/rust

core::global_allocator docs link to std::alloc::GlobalAlloc

 pub(crate) mod builtin {         /* compiler built-in */     } -    /// Attribute macro applied to a static to register it as a global allocator.+    /// Attribute macro applied to a static to register it as a global allocator. See also [`std::alloc::GlobalAlloc`](../std/alloc/trait.GlobalAlloc.html).

In order for only the first line to show up in the rustdoc summary, an extra newline between lines 1367 and 1368 is required too I believe. Otherwise the second string will be concatenated to the first in the summary.

Screenshot

This is the summary view I'm talking about (src).

Screenshot_2020-09-26 core - Rust

mightyiam

comment created time in a day

PullRequestReviewEvent

issue commentasync-rs/async-std

API: channel::send_all?

It would require Clone for the generic type T as well as either storing a secondary data structure to store the sends to all channels or block the sender/other receivers on reading the event?

Clone would only be required for messages that are broadcast, not for the other methods. And adding broadcast functionality does not require an extra data structure; send / try_send can be implemented in terms of broadcast.

Is it intended that this would block the sender on a full channel buffer (blocked by the slowest receiver) or this behaviour?

Absolutely; if you don't want to be blocked on the slowest reader, using try_broadcast + unbounded semantics should provide enough flexibility. Though unbounded doesn't exist in async-std today, it does in async-channel which is the impl we want to adopt for async-std's channel stabilization. Also if slow reads are a problem, attaching a per-receiver timeout is an option available to end-users as well.

yoshuawuyts

comment created time in a day

pull request commentrust-lang/rust

Rename `core::future::poll_fn` to `core::future::from_fn`

I'm noticing I'm low on energy and don't have the energy to engage in the dialog needed to see this change through to completion. If someone else wants to see this through, by all means feel free to pick this up.

yoshuawuyts

comment created time in 2 days

delete branch yoshuawuyts/rust

delete branch : future_from_fn

delete time in 2 days

PR closed rust-lang/rust

Rename `core::future::poll_fn` to `core::future::from_fn` S-waiting-on-review

Tracking issue: https://github.com/rust-lang/rust/issues/72302.

This patch renames core::future::poll_fn to core::future::from_fn as suggested by @Koxiaet in https://github.com/rust-lang/rust/pull/72303#issuecomment-632671212. This makes the API more consistent with similar functions already in the stdlib, for example std::iter::from_fn, and removes some awkwardness from the naming (I remember being confused by what poll_fn meant when I first encountered it).

Drawbacks

The main rationale not to name this core::future::from_fn is that the futures crate also exposes futures::future::lazy which also takes a closure. That would mean we'd have two functions that take a closure at top level. However the stdlib exposes std::iter::once, which exists next to std::iter::from_fn with both functions creating an iterator from a function; meaning there would be precedent for having both functions in the same hierarchy.

However I don't think futures::future::lazy is a good fit for the stdlib, and I'd be surprised if we saw it stabilized. It was designed before we had async/.await in the language, as a convenience function to create "lazy values" . But most of its uses have been replaced by async blocks since:

// lazy
use std::future::lazy;
let fut = lazy(|_| "world");
println!("hello {}", fut.await);

// async blocks
let fut = async { "world" };
println!("hello {}", fut.await);

With the expected addition of async closures to the language, it's likely the uses for futures::future::lazy will only decrease further. Async closures are expected to be able to take closures, take borrows as arguments, and support .await inside of the closure body. Which makes it seem quite likely we'll only ever expose a single "create a future from a closure" method in the core::future hierarchy.


cc/ @rust-lang/wg-async-foundations

+26 -22

14 comments

4 changed files

yoshuawuyts

pr closed time in 2 days

issue commenthttp-rs/surf

Rework Client constructors

Link to Hyper's builder: https://docs.rs/hyper/0.13.8/hyper/client/struct.Builder.html#method.set_host

yoshuawuyts

comment created time in 2 days

startedssb-neon/ssb-neon

started time in 2 days

Pull request review commenthttp-rs/http-client

No Clone for HttpClient-s

 use std::task::{Context, Poll};  /// WebAssembly HTTP Client. #[derive(Debug)]-pub struct WasmClient {-    _priv: (),-}

We need to keep this to ensure people can't create clients by doing:

let client = WasmClient {};

It's a way of forcing people to use ::new, giving us the option to always change the internal fields later

Fishrock123

comment created time in 2 days

Pull request review commenthttp-rs/http-client

No Clone for HttpClient-s

 impl H1Client {     } } -impl Clone for H1Client {-    fn clone(&self) -> Self {-        Self {}

H1Client probably also requires an internal _priv: () field.

Fishrock123

comment created time in 2 days

PullRequestReviewEvent
PullRequestReviewEvent
PullRequestReviewEvent

pull request commentrust-lang/rust

Rename `core::future::poll_fn` to `core::future::from_fn`

from_poll_fn returns a Future given a poll function.

@tmandry I think that's a reasonable suggestion; it clears up what kind of function we're expecting, and feels consistent enough with what we have. As @skade correctly points out the most pressing concern is that poll_fn breaks with the established stdlib convention of using from and into for conversions.


Also I'd like to point out that the only use of poll* in async-std outside of the standard traits is in poll_fn. We copied it from futures and didn't give the naming any thought at the time. But it stands out now because it's also the only function with the word poll in it that we expect may be called by end-users. While it have relevance to the Poll type; it does not share the typical poll_* signature of (self: Pin<&mut Self>, cx: &mut Context<'_>, ...) -> Poll<T>. Which is why it feels inconsistent and renaming it seems better.

yoshuawuyts

comment created time in 3 days

issue commentrust-lang/rust

[docs] `core::global_allocator` should link to `std::alloc::GlobalAlloc`

@mightyiam please do!

yoshuawuyts

comment created time in 3 days

PR closed prisma/docs

Update Supported Databases to include Yugabyte

Yugabyte YSQL is wire-compatible with Postgres. There is no additional setup required to integrate with Prisma (other than changing the .env file to reflect the appropriate database connection URL - which is necessary for Postgres in the first place). For an example app using Yugabyte & Prisma, view https://github.com/vvkgopalan/yugabyte-prisma2-examples/

+1 -0

3 comments

1 changed file

vvkgopalan

pr closed time in 3 days

pull request commentprisma/docs

Update Supported Databases to include Yugabyte

We have run the tests for both Yugabyte (https://github.com/prisma/prisma-engines/pull/1139) and Cockroach (https://github.com/prisma/prisma-engines/pull/1024) and unfortunately neither appear to work as-is with our Postgres connector. Even though they share a common network protocol with Postgres, the databases themselves differ in how they store and expose the data.

In order for Prisma to be compatible with Yugabyte and Cockroach we'll need to create dedicated connectors to support them. So unfortunately we can't claim we support either database quite yet. We may in the future though, but that's something that will need to be decided to be part of the roadmap.

vvkgopalan

comment created time in 3 days

issue closedprisma/prisma-engines

Add tests using Yugabyte DB

Yugabyte DB indicates it is wire protocol compatible with PostgreSQL: https://docs.yugabyte.com/latest/api/ysql/

As some users see this as an indicator it can also be used with Prisma, we should test this and document our result in the documentation.

This would include adding a dockerized version of this database to our test matrix.

closed time in 3 days

janpio

issue commentprisma/prisma-engines

Add tests using Yugabyte DB

This has been completed in: https://github.com/prisma/prisma-engines/pull/1139 -- unfortunately Yugabyte isn't compatible with our Postgres adapter.

janpio

comment created time in 3 days

delete branch prisma/prisma-engines

delete branch : yugabyte

delete time in 3 days

startedstjepang/async-task

started time in 3 days

PR closed prisma/prisma-engines

Add Yugabyte to CI

Depends on https://github.com/prisma/engineer/pull/24 to be merged first. Tests support for YugabyteDB in CI. Thanks!

+19 -1

2 comments

3 changed files

yoshuawuyts

pr closed time in 3 days

pull request commentprisma/prisma-engines

Add Yugabyte to CI

Unfortunately it appears Yugabyte is also not entirely compatible with Postgres. Our integration tests are failing to pass on CI, failing pretty early on at the introspection stage -- this is even before we run migrations. This means that supporting Yugabyte requires a custom connector and isn't quite "plug and play" the way we hoped it might be.

yoshuawuyts

comment created time in 3 days

push eventprisma/prisma-engines

Dominic Petrick

commit sha 62fcc29194c5c1ed16d16c65c21b944d60acfd81

Remove TypeHint (#1135)

view details

Tom Houlé

commit sha 4ee5973b20e773725e07ea7bcd6e7980bc38be56

Simplify SqlSchemaDescriber structs We were forcing re-boxing with the Arc-ed trait object, and making things more complicated for no reason.

view details

Tom Houlé

commit sha b1337d9b11ec0842910bda00cf41c3c47bb920ba

Remove lines logging SQL strings in sql-schema-describer These are already in the quaint logs.

view details

Tom Houlé

commit sha 9b958b23288b9108f357c08d16ab5a054e9456b8

Merge pull request #1141 from prisma/sql-schema-describer/de-arcing Drop superfluous arc-ing in sql-schema-describer

view details

Julius de Bruijn

commit sha 05079b1f43428d0339055b43fa64c775d32ab8aa

Update barrel force push

view details

Julius de Bruijn

commit sha e7b0471ca2c94975ee77b21568f4d39f9dd612a1

Barrel should use INT as identity for MSSQL

view details

Julius de Bruijn

commit sha 5ed0deef17ce35faf058462e43ccc86fed761dfe

And stop being an idiot

view details

carmenberndt

commit sha fc6db18a9ab2e659cbf600340f5d4f4abb0b1974

Fix: order of directives bug (#1142) * add more test cases for field and block attribute ordering * fix order of directives bug * remove return keyword

view details

Dominic Petrick

commit sha b4f02101be4ce585e1533bef51b254d66435e020

Bump engineer

view details

Dominic Petrick

commit sha 4a88935fd579c4284cec066046b3fcfe32f0c0fa

Patch engineer.

view details

Yoshua Wuyts

commit sha 230396a78ab396585438989f9d079f36a07951e3

Add Yugabyte to CI

view details

Yoshua Wuyts

commit sha 0eb68cc1929c38e76449cba99dd0e2091a572714

update `engineer` download link in CI

view details

push time in 3 days

PullRequestReviewEvent

pull request commentprisma/tiberius

Add rustls

As a quick note: we've been talking about merging async-native-tls into async-tls and allowing people to choose which TLS provider through there. We'd likely adopt the async-native-tls API for that. That might be a project that needs a bit more work than what's presented here, but that might be a different way to abstract over the two.

esheppa

comment created time in 4 days

startedmongodb-js/boxednode

started time in 4 days

push eventasync-rs/async-std

Yoshua Wuyts

commit sha 3a6e75cc1dc462aa6c1a738966b26878e934def9

fix pending stabilization

view details

push time in 4 days

PR opened async-rs/async-std

Stabilize stream interval, pending, merge

Changelog

## Changed

- Stabilized `stream::interval`
- Stabilized `stream::pending`
- Stabilized `stream::Stream::merge`
+4 -11

0 comment

3 changed files

pr created time in 4 days

create barnchasync-rs/async-std

branch : stabilize-stream-interval

created branch time in 4 days

more