-
Notifications
You must be signed in to change notification settings - Fork 13.3k
move concurrent stuff from libextra to libsync #11939
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
use extra::arc::Arc; | ||
use extra::json::ToJson; | ||
use sync::arc::Arc; | ||
use sync::json::ToJson; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
You probably still want extra::json
This looks great, thanks! I'm curious what others think about |
I'm okay with you to make the inner modules private. Should i do this? |
Sure, let's try that out and see how it goes. |
Could you also squash the commits together? Otherwise this looks good to me! |
@alexcrichton I think we should do the pub reexports of private items, and we should keep looking for places to apply this pattern. Might want to talk about it in the style guide. |
@alexcrichton i have not see this before but one test failed, i have made the change. |
Needs another rebase (sorry!) |
No problem! it's okay. |
@alexcrichton some test failed on compile-fail, i've updated this test. I have a question, i run |
I'm actually not entirely sure what subset of the tests |
oh, when i used But with I have ignored the tests in |
Hm, I'd rather not throw the tasks guide under the bus just yet. I thought that it was still at least somewhat useful. I think that references to For the tests, the test runner injects
|
It's updated to test the examples. |
[`sync::comm`]: sync/index.html | ||
[`sync::sync`]: sync/index.html | ||
[`sync::Arc`]: sync/index.html | ||
[`sync::Future`]: sync/index.html |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Could this link to sync/struct.Future.html
(for the specific pages)?
Thanks for keeping the code examples up to date! It's definitely much appreciated. |
Should i specify for all reexported structs? or only Future? |
I was thinking for all of the specifically linked-to structs. |
@alexcrichton i've update the reference in guid-task.md, and updated lib sync with your changes to extra::sync. it finally should be okay i think ! |
@alexcrichton oh sorry for the merge error in the gitignore ! It should be good now ! |
The merge of libuuid make conflit, so i've update the pull request. |
alas, there appears to be another conflict! |
It should be okay ! |
Ah, it looks like this will also need to update |
ah! i ask for this in irc yesterday, but without answer i was thinking bors have a special directive to ignore this kind of error. |
@alexcrichton ahah the add of CowArc have break the tests again, i've just update it. |
This time everything should be okay, No break due to a failed merge or rebase... Sorry for the abuse of pull request. So this move extra::sync, extra::arc, extra::future, extra::comm and extra::task_pool to libsync.
…hearth don't visit nested bodies in `is_const_evaluatable` Fixes rust-lang#11939 This ICE happened in `if_let_some_else_none`, but the root problem is in one of the utils that it uses. It is (was) possible for `is_const_evalutable` to visit nested bodies which would lead to it trying to get the type of one of the expressions with the wrong typeck table, which won't have the type stored. Notably, for the expression `Bytes::from_static(&[0; 256 * 1024]);` in the linked issue, the array length is an anonymous const in which type checking happens on its own, so we can't use the typeck table of the enclosing function in there. Visiting nested bodies is also not needed for checking whether an expression can be const, so I think it's safe to ignore just ignore them altogether. changelog: Fix ICE when checking for constness in nested bodies
This time everything should be okay, No break due to a failed merge or rebase...
Sorry for the abuse of pull request.
So this move extra::sync, extra::arc, extra::future, extra::comm and extra::task_pool to libsync.