profile
viewpoint

mbrubeck/android-completion 202

Bash completion for "adb" from the Google Android SDK

mbrubeck/by_address 7

Rust wrapper type that implements hashing and comparison by pointer address

mbrubeck/c-repl 4

a C read-eval-print loop

mbrubeck/bugwd 2

Readable, memorable URLs to replace long bug numbers

mbrubeck/2048-AI 0

A simple AI for 2048

mbrubeck/actix 0

Actor framework for Rust

mbrubeck/advisory-db 0

Security advisory database for Rust crates published through crates.io

mbrubeck/android-rs-glue 0

Glue between Rust and Android

PR opened http-rs/async-h1

Actually forbid unsafe code

The code of this crate is 100% safe Rust, but the lint setting in the README is not accurate.

+2 -2

0 comment

2 changed files

pr created time in a day

create barnchmbrubeck/async-h1

branch : unsafe

created branch time in a day

fork mbrubeck/async-h1

Asynchronous HTTP/1.1 in Rust

https://docs.rs/async-h1

fork in a day

PR opened http-rs/http-types

Remove safety section from README.

There are still some uses of unsafe in this crate.

+0 -4

0 comment

1 changed file

pr created time in a day

create barnchmbrubeck/http-types

branch : unsafe

created branch time in a day

fork mbrubeck/http-types

Common types for HTTP operations

https://docs.rs/http-types

fork in a day

pull request commentPistonDevelopers/glutin_window

Work in progress: Update to glutin 0.22

Current status: I haven't had time to work on this recently. If anyone else would like to help by improving the code or investigating the performance issues, that would be great.

mbrubeck

comment created time in 2 days

pull request commentservo/rust-smallvec

added to_smallvec extension trait to slice primitive

@bors-servo r+

Thanks!

UnicodingUnicorn

comment created time in 2 days

issue commentrust-lang/rust-clippy

lint on exported types that don't implement `Debug`

The rustc lint is allow-by-default, and that seems unlikely to change. (Unlike clippy, rustc is very reluctant to enable lints with high false positive rates.)

I feel there would be some benefit to adding this lint to clippy, possibly along with some of the other allow-by-default lints from rustc. Opt-in rustc lints have very low discoverability, and empirically very few people seem to use them in practice. Making them warn-by-default in clippy would make them useful to a larger number of authors—in particular clippy users, who are already explicitly choosing to opt in to these types of "best practice" lints.

Yes, this would mean some duplication, but maybe there's a way that clippy could share code with the rustc lint, or even work by activating the built-in lint?

oli-obk

comment created time in 15 days

PR opened PistonDevelopers/gfx_graphics

Update to image 0.23.0
+3 -3

0 comment

1 changed file

pr created time in 16 days

create barnchmbrubeck/gfx_graphics

branch : deps

created branch time in 16 days

fork mbrubeck/gfx_graphics

A Gfx 2D back-end for the Piston game engine

fork in 16 days

PR opened PistonDevelopers/gfx_texture

Update to image 0.23.0
+2 -2

0 comment

1 changed file

pr created time in 17 days

create barnchmbrubeck/gfx_texture

branch : deps

created branch time in 17 days

fork mbrubeck/gfx_texture

A Gfx texture representation that works nicely with Piston libraries

fork in 17 days

push eventmbrubeck/glutin_window

Matt Brubeck

commit sha 8912862eb237931e3e5e078f9d6a24c3375cd128

Update to glutin 0.22

view details

push time in 20 days

pull request commentunicode-rs/unicode-normalization

Bump to smallvec 1.1.0

For the record, this change was unnecessary. This crate is already compatible with any smallvec 1.x version, and cargo will pick the highest version by default when creating or updating a Cargo.lock file. smallvec 1.1.0 did not add any bug fixes or features used by this crate, so there’s no reason to require it.

clintfred

comment created time in 23 days

pull request commentPistonDevelopers/glutin_window

Work in progress: Update to glutin 0.22

@mbrubeck so, we have to wait for the next release of winit?

Yes, I wouldn't recommend releasing this while that bug is still in the latest version.

There's still somewhat higher-than-expected CPU usage during idle, at least on Mac, using winit master. I'll try to investigate that soon.

mbrubeck

comment created time in 25 days

pull request commentPistonDevelopers/glutin_window

Work in progress: Update to glutin 0.22

There's still a problem with event polling. Applications built against this branch use 100% of a CPU even when they should be idle.

This was caused by rust-windowing/winit#1372 which is fixed on the winit master branch.

mbrubeck

comment created time in a month

pull request commentPistonDevelopers/glutin_window

Work in progress: Update to glutin 0.22

There's still a problem with event polling. Applications built against this branch use 100% of a CPU even when they should be idle.

mbrubeck

comment created time in a month

push eventmbrubeck/glutin_window

Matt Brubeck

commit sha d3d3bc1f4bc3a30f8b72f0b0ef76ecc98d809e8c

Update to glutin 0.22

view details

push time in a month

Pull request review commentPistonDevelopers/glutin_window

Work in progress: Update to glutin 0.22

 impl GlutinWindow {         }     } +    fn poll_events(&mut self) {

This is fixed now.

mbrubeck

comment created time in a month

push eventmbrubeck/glutin_window

Matt Brubeck

commit sha 3340a3848f57b4c5db897f93a36b589dcefe7bfb

Update to glutin 0.22

view details

push time in a month

Pull request review commentPistonDevelopers/glutin_window

Work in progress: Update to glutin 0.22

 impl GlutinWindow {         }     } +    fn poll_events(&mut self) {

This function doesn't seem to be working as intended; my application loops forever here.

mbrubeck

comment created time in a month

PR opened PistonDevelopers/glutin_window

Work in progress: Update to glutin 0.22

Do not merge! This branch is a work in progress. It compiles but is not yet tested.

I started updating this crate to work with glutin 0.22. This is a snapshot of my work. I'm not sure if I have the time or expertise to finish it, but I will try. If anyone else is interested in this work and would like to contribute code or feedback, please do!

+138 -67

0 comment

2 changed files

pr created time in a month

push eventmbrubeck/glutin_window

Matt Brubeck

commit sha 4bf868603c171eedacbf7d3d75cf0cdc98adfa35

Update to glutin 0.22

view details

push time in a month

push eventmbrubeck/glutin_window

Matt Brubeck

commit sha 951e6205d09cc34b6c8cf708f1f3d186416ff15e

WIP: Update to glutin 0.22

view details

push time in a month

push eventmbrubeck/glutin_window

Matt Brubeck

commit sha 09381d0e2a4e1c6a5bdc15348343d9c214b46798

WIP: Update to glutin 0.22

view details

push time in a month

push eventmbrubeck/glutin_window

Matt Brubeck

commit sha 63814ab81f67d7dfba4396cfb04772c141868003

WIP: Update to glutin 0.22

view details

push time in a month

create barnchmbrubeck/glutin_window

branch : glutin22

created branch time in a month

fork mbrubeck/glutin_window

A Piston window back-end using the Glutin library

fork in a month

issue commentservo/rust-smallvec

smallvec macro in no_std code

Version 1.2.0 has been released with the fix included.

debris

comment created time in a month

release servo/rust-smallvec

v1.2.0

released time in a month

created tagservo/rust-smallvec

tagv1.2.0

"Small vector" optimization for Rust: store up to a small number of items on the stack

created time in a month

push eventmbrubeck/linuxcnc-hal-rs

Matt Brubeck

commit sha a905c0dbd136e2ec636635591c0dbba5214a58a1

Fix size passed to hal_malloc in example code We need to allocate space for a pointer, not a double. On 32-bit platforms, the old code would request more space than needed. (This might be harmless in practice, but it made the code a little confusing.)

view details

push time in a month

PR opened jamwaffles/linuxcnc-hal-rs

Fix size passed to hal_malloc in example code

We need to allocate space for a pointer, not a double. On 32-bit platforms, the old code would request more space than needed. (This might be harmless in practice, but it made the code a little confusing.)

+2 -2

0 comment

2 changed files

pr created time in a month

create barnchmbrubeck/linuxcnc-hal-rs

branch : docs

created branch time in a month

fork mbrubeck/linuxcnc-hal-rs

Safe and unsafe Rust bindings to the LinuxCNC HAL submodule

fork in a month

Pull request review commentservo/rust-smallvec

Version 1.2.0

 [package] name = "smallvec"-version = "1.1.0"+version = "1.2.0"

In semver, for stable releases (version >= 1.0.0), the first number (MAJOR) is incremented for breaking changes. The second number (MINOR) is incremented for additional features added without breaking backward compatibility. The third number (PATCH) is incremented for bug fixes that do not add new API or break existing API.

Cargo treats two versions as "compatible" if the first non-zero component is the same. So 0.1.0 to 0.2.0 is a breaking change, but 1.1.0 to 1.2.0 is not.

mbrubeck

comment created time in a month

PR opened servo/rust-smallvec

Version 1.2.0

Changes in this release:

  • IntoIter now implments Debug (#196).
  • smallvec! macro is now easier to use in no_std contexts where the vec! macro isn't automatically imported (#198).
+1 -1

0 comment

1 changed file

pr created time in a month

push eventmbrubeck/rust-smallvec

bors-servo

commit sha 34d7b8d8e2e8fdd9349868795b762ed6b71c7def

Auto merge of #193 - mbrubeck:bump, r=emilio Version 1.1.0 Changes in this release: * Added new method `SmallVec::into_boxed_slice` (#190). * Added new methods `IntoIter::as_slice` and `as_mut_slice` (#182). * `IntoIter` now implements `Clone` (#192). * Improved documentation and testing (#186, #189). * Minor code cleanups (#176). Also added a simple example to the README.

view details

Wim Looman

commit sha a4ed1b854fd23f275377e5fbc0803c2a41df1272

impl Debug for IntoIter

view details

bors-servo

commit sha 6e61239a2a910a7ee3a58a5b567342d0e9698b77

Auto merge of #196 - Nemo157:intoiter-debug, r=mbrubeck impl Debug for IntoIter This has long been provided by `std::vec::IntoIter`, so is useful in cases where it is being directly replaced.

view details

Matt Brubeck

commit sha 74e9319b4737e07619ce7363dc5c07f78404ebba

Use full path to vec! in smallvec! macro Fixes #197

view details

bors-servo

commit sha ea0dbc89c5c07585445b90c1a6a24bff44876ca5

Auto merge of #198 - mbrubeck:macro, r=jdm Use full path to vec! in smallvec! macro Fixes #197

view details

Matt Brubeck

commit sha 04d54bd9ca605f90e643ca82e7daa78ea0a6e750

Version 1.2.0 Changes in this release: * `IntoIter` now implments `Debug` (#196). * `smallvec!` macro is now easier to use in `no_std` contexts where the `vec!` macro isn't automatically imported (#198).

view details

push time in a month

issue openedhyperium/http

HeaderMap: Store "link" indices as u16

Indices into the vectors in HeaderMap are guaranteed to fit within u16 (see #386), but the header::map::{Link, Links} types store them as usize.

Changing these fields from usize to u16 would reduce memory footprint and might improve cache-friendliness of HeaderMap.

created time in a month

push eventmbrubeck/rust-smallvec

Matt Brubeck

commit sha 74e9319b4737e07619ce7363dc5c07f78404ebba

Use full path to vec! in smallvec! macro Fixes #197

view details

push time in a month

pull request commentservo/rust-smallvec

impl Debug for IntoIter

@bors-servo r+

Thanks!

Nemo157

comment created time in a month

issue commentservo/rust-smallvec

smallvec macro in no_std code

Submitted a fix in #198.

debris

comment created time in a month

PR opened servo/rust-smallvec

Use full path to vec! in smallvec! macro

Fixes #197

+4 -4

0 comment

1 changed file

pr created time in a month

create barnchmbrubeck/rust-smallvec

branch : macro

created branch time in a month

issue commentdjc/template-benchmarks-rs

Erroneous results

Apparently the divergence is because the results were last updated before PR #21 was merged. Re-running the benchmarks on current master should fix this.

botika

comment created time in a month

pull request commenthyperium/http

HeaderMap: Store pos and hash as u16

Note that the Link and Links types still store indices as usize. Changing these to u16 would probably be beneficial for some use cases, though they are not as important as Size and HashValue which together make up the entire HeaderMap::indices vector.

I didn't change Link and Links because it would touch a lot more code and add a lot more u16/usize conversions. This could be error-prone if not done carefully. However, it might be a good follow-up task.

mbrubeck

comment created time in a month

push eventmbrubeck/http

Sean McArthur

commit sha c175fea0bcbe528512c3bd7f3e6e66f48c940d68

Remove deprecated Error::description usage (#387)

view details

Matt Brubeck

commit sha a66b6e5b7a3e2e003e3d154260f195f03bab7459

HeaderMap: Store pos and hash as u16 HeaderMap currently truncates all hashes to 16 bits, and limits its capacity to 32768 elements. The comments say this is done in order to store positions and hashes as u16, to improve cache locality. However, they are currently stored as usize. This patch changes the code to match the comments. This does not appear to cause any measurable improvement or regression in speed in the HeaderMap benchmarks. However, it should at least reduce the memory footprint of every Headermap.

view details

Matt Brubeck

commit sha 5197f93d6755c92e6c9831e9e7eae6d74111f53c

Fix overflow check for raw capacity. The actual maximum capacity is 24578 (i.e. `32768 * 3/4`). A higher number would cause the raw capacity (i.e. `capacity + capacity/3` rounded to the next power of 2) to overflow `u16`.

view details

push time in a month

push eventmbrubeck/http

Matt Brubeck

commit sha a62ba28a6c2c708ec481464e6aec42e1663f1b29

Fix overflow check for raw capacity. The actual maximum capacity is 24578 (i.e. `32768 * 3/4`). A higher number would cause the raw capacity (i.e. `capacity + capacity/3` rounded to the next power of 2) to overflow `u16`.

view details

push time in a month

PR opened hyperium/http

HeaderMap: Store pos and hash as u16

HeaderMap currently truncates all hashes to 16 bits, and limits its capacity to 32768 elements. The comments say this is done in order to store positions and hashes as u16, to improve cache locality. However, they are currently stored as usize. This branch changes the code to match the comments.

This does not appear to cause any measurable improvement or regression in speed in the HeaderMap benchmarks on my workstation. However, it should at least reduce the memory footprint of every Headermap.

+22 -9

0 comment

2 changed files

pr created time in a month

create barnchmbrubeck/http

branch : u16

created branch time in a month

fork mbrubeck/http

Rust HTTP types

fork in a month

issue commentLokathor/tinyvec

Benchmarks

In general for vectors that fit on the stack, TinyVec is faster than Vec but slower than SmallVec, which I think is a reasonable expectation. Two cases where it's slower than either are insert and remove, which is again reasonable, but might be worth warning about in documentation.

Lokathor

comment created time in a month

push eventmbrubeck/rust-smallvec

Matt Brubeck

commit sha 5e582bd42f7897eeb4a345baebcc9b3eab71a8d6

Add tinyvec benchmarks for comparison

view details

push time in a month

issue commentLokathor/tinyvec

Benchmarks

I took the smallvec benchmarks and added comparisons to tinyvec on this branch: https://github.com/mbrubeck/rust-smallvec/tree/bench-tinyvec

These benchmarks compare SmallVec<[u64; 16]> to TinyVec<[u64; 16]> and Vec<u64>. Most benchmarks have one variant that uses 100 elements and a "small" variant with 16 elements. Results from my laptop are below.

<details>

test bench_extend_from_slice            ... bench:          74 ns/iter (+/- 18)
test bench_extend_from_slice_small      ... bench:          10 ns/iter (+/- 0)
test bench_extend_from_slice_tiny       ... bench:         622 ns/iter (+/- 17)
test bench_extend_from_slice_tiny_small ... bench:          28 ns/iter (+/- 1)
test bench_extend_from_slice_vec        ... bench:         196 ns/iter (+/- 21)
test bench_extend_from_slice_vec_small  ... bench:          59 ns/iter (+/- 1)
test bench_extend                       ... bench:         100 ns/iter (+/- 5)
test bench_extend_small                 ... bench:          11 ns/iter (+/- 0)
test bench_extend_tiny                  ... bench:         525 ns/iter (+/- 17)
test bench_extend_tiny_small            ... bench:          36 ns/iter (+/- 2)
test bench_extend_vec                   ... bench:         157 ns/iter (+/- 4)
test bench_extend_vec_small             ... bench:          58 ns/iter (+/- 0)
test bench_from_iter                    ... bench:         101 ns/iter (+/- 1)
test bench_from_iter_small              ... bench:          11 ns/iter (+/- 0)
test bench_from_iter_tiny               ... bench:         566 ns/iter (+/- 6)
test bench_from_iter_tiny_small         ... bench:          37 ns/iter (+/- 3)
test bench_from_iter_vec                ... bench:         111 ns/iter (+/- 5)
test bench_from_iter_vec_small          ... bench:          59 ns/iter (+/- 6)
test bench_from_slice                   ... bench:         117 ns/iter (+/- 0)
test bench_from_slice_small             ... bench:          21 ns/iter (+/- 0)
test bench_from_slice_tiny              ... bench:         553 ns/iter (+/- 12)
test bench_from_slice_tiny_small        ... bench:          44 ns/iter (+/- 9)
test bench_from_slice_vec               ... bench:         107 ns/iter (+/- 0)
test bench_from_slice_vec_small         ... bench:          59 ns/iter (+/- 7)
test bench_insert                       ... bench:         762 ns/iter (+/- 342)
test bench_insert_small                 ... bench:         188 ns/iter (+/- 13)
test bench_insert_tiny                  ... bench:       1,014 ns/iter (+/- 85)
test bench_insert_tiny_small            ... bench:         385 ns/iter (+/- 16)
test bench_insert_vec                   ... bench:         788 ns/iter (+/- 9)
test bench_insert_vec_small             ... bench:         234 ns/iter (+/- 15)
test bench_macro_from_elem              ... bench:         124 ns/iter (+/- 8)
test bench_macro_from_elem_small        ... bench:          21 ns/iter (+/- 1)
test bench_macro_from_elem_tiny         ... bench:         671 ns/iter (+/- 55)
test bench_macro_from_elem_tiny_small   ... bench:         115 ns/iter (+/- 33)
test bench_macro_from_elem_vec          ... bench:         114 ns/iter (+/- 8)
test bench_macro_from_elem_vec_small    ... bench:          60 ns/iter (+/- 1)
test bench_macro_from_list              ... bench:         110 ns/iter (+/- 13)
test bench_macro_from_list_tiny         ... bench:         391 ns/iter (+/- 2)
test bench_macro_from_list_vec          ... bench:          99 ns/iter (+/- 0)
test bench_push                         ... bench:         512 ns/iter (+/- 14)
test bench_push_small                   ... bench:          41 ns/iter (+/- 3)
test bench_push_tiny                    ... bench:         802 ns/iter (+/- 57)
test bench_push_tiny_small              ... bench:          53 ns/iter (+/- 0)
test bench_push_vec                     ... bench:         600 ns/iter (+/- 34)
test bench_push_vec_small               ... bench:          86 ns/iter (+/- 12)
test bench_pushpop                      ... bench:         394 ns/iter (+/- 17)
test bench_pushpop_tiny                 ... bench:         426 ns/iter (+/- 40)
test bench_pushpop_vec                  ... bench:         304 ns/iter (+/- 20)
test bench_remove                       ... bench:         495 ns/iter (+/- 0)
test bench_remove_small                 ... bench:          77 ns/iter (+/- 4)
test bench_remove_tiny                  ... bench:       1,192 ns/iter (+/- 85)
test bench_remove_tiny_small            ... bench:         175 ns/iter (+/- 15)
test bench_remove_vec                   ... bench:         506 ns/iter (+/- 39)
test bench_remove_vec_small             ... bench:         124 ns/iter (+/- 7)

</details>

Lokathor

comment created time in a month

create barnchmbrubeck/rust-smallvec

branch : bench-tinyvec

created branch time in a month

PR opened rust-windowing/glutin

Update to parking_lot 0.10

This matches the version used in winit 0.20.0. No user-facing changes.

  • [x] Tested on all platforms changed
  • [x] Compilation warnings were addressed
  • [x] cargo fmt has been run on this branch
  • [x] cargo doc builds successfully
  • [x] Added an entry to CHANGELOG.md if knowledge of this change could be valuable to users
  • [x] Updated documentation to reflect any user-facing changes, including notes of platform-specific behavior
  • [x] Created or updated an example program if it would help users understand this functionality
+3 -3

0 comment

1 changed file

pr created time in a month

push eventmbrubeck/glutin

Matt Brubeck

commit sha 407eada2a8aa7bbb050f74e49e36e95b34a4f10c

Update to parking_lot 0.10

view details

push time in a month

push eventmbrubeck/glutin

Pierre Krieger

commit sha ea17038ac2a25982ffc8e9308eec312864938d20

Detach wgl and win32

view details

tomaka

commit sha e606281862dfd016051e2ee66e67eddb71c6d0ac

Merge pull request #458 from tomaka/detach-wgl Detach wgl and win32

view details

Pierre Krieger

commit sha 01ecd24fe2dff3c81bfa57e76ebab9a05048e246

Allow creating EGL contexts on win32 with the AMD DLLs

view details

tomaka

commit sha 4824333453bfe6f91cdb6eefdd58ef112ef965ab

Merge pull request #459 from tomaka/win32-egl-2 Allow creating EGL contexts on win32 with the AMD DLLs

view details

tomaka

commit sha a05ae6ba97ed4dcae9dbce48a72787528d6c62e9

Publish 0.1.5

view details

tomaka

commit sha f78737c0cf770da39f75dbec1defd2d796f14a28

Test on stable Rust instead of beta

view details

tomaka

commit sha 0a1fe4b8aadd25a91b73c1d06a8854a2c21160a1

Fix docs publication not working

view details

Pierre Krieger

commit sha 9c218992491beb4929ca3369779956415f916ce1

Fix the compilation on 32bits linux

view details

tomaka

commit sha e5f888e19a0396b62c2e2a776ddc86652792defb

Merge pull request #460 from tomaka/fix-compilation-32bits Fix the compilation on 32bits linux

view details

Pierre Krieger

commit sha ead31e3ef85234b4e2a7b46ae12fc61b813ab0ec

Several WGL cleanups

view details

tomaka

commit sha c2acd0360ccec809725810b70bb48c1dea461807

Merge pull request #464 from tomaka/wgl-adjustements Several WGL cleanups

view details

Felix Kaaman

commit sha e1ab181cdb4a4249b158977d67ff0cbb0368e4a0

Fix vsync not being disabled by default in cocoa

view details

tomaka

commit sha 1377f276b7b64a1e75aa43da7efdea9a81155397

Merge pull request #469 from fkaa/cocoa-vsync Fix vsync not being disabled by default in cocoa

view details

Pierre Krieger

commit sha 81314f91d82dff07f6da3409dd1280a68d4dcd60

Add API for transparency and decorations and add support for win32

view details

Pierre Krieger

commit sha 9117bcf3d3f441c86c85b04ce54e135d28fcb2e1

Switch to dwmapi

view details

tomaka

commit sha d089ea867459bfd7e875a2cd44ae46bac705ae18

Merge pull request #453 from tomaka/transparency Add API for transparency and decorations and add support for win32

view details

Felix Kaaman

commit sha f74f0b52a307dcdd3d6eb2432be6e5a7962668ad

Add OS version detection on cocoa for selecting latest gl version. Fixes #470

view details

Eduard Bopp

commit sha 267b2c027a3cbe4fb3188a9afbee3c5008b44b58

Fix set_cursor_state on X11 When the state is not changed, no code must be executed. Such no-ops previously hit the unimplemented cursor hiding.

view details

tomaka

commit sha a2507b687660ef4179217e063bb5ffce91c32483

Merge pull request #476 from aepsil0n/x11-cursor-grab-fix Fix set_cursor_state on X11

view details

tomaka

commit sha 70c88cf18f1db5aa7e2a49eb2cd7f4cb449da5d4

Merge pull request #475 from fkaa/cocoa-glcap Add OS version detection on cocoa for selecting latest gl version. Fixes #470

view details

push time in a month

push eventmbrubeck/glutin

tomaka

commit sha 93c88ee54d365ce6804c1cab56ecc600e792263f

Merge pull request #770 from mbrubeck/deps Update some dependencies

view details

Andrey Lesnikov

commit sha 18f846403b7f1893510744a58d9b347122658411

Updated to android_glue 0.2

view details

Ivan Ukhov

commit sha 54f442ea06e26654438c4f3acdbacca1b2b1cefe

Generalize WindowBuilder::with_title

view details

tomaka

commit sha 547161af276349405fac1437a47ad6eb213338d2

Merge pull request #773 from IvanUkhov/title Generalize WindowBuilder::with_title

view details

tomaka

commit sha cf02e7f1f44eebaaee939b8267b9457094d9bc6b

Publish 0.5.2

view details

Jan Segre

commit sha e0f36b80c9bf29bbf3306a617614f6913b705a10

Make `WindowBuilder` and `HeadlessRendererBuilder` derive `Clone`.

view details

tomaka

commit sha e796a2e01841dcd55e1633bf4d13e993eb547876

Merge pull request #780 from jansegre/impl-clone-builders Make `WindowBuilder` and `HeadlessRendererBuilder` derive `Clone`.

view details

tomaka

commit sha 11faacefd749d6248abaf776fc8c2fbda827e1b3

Merge pull request #772 from ozkriff/master Update to android_glue 0.2

view details

tomaka

commit sha 3958cd719200c3904b7166033abeafa1a9481953

Publish 0.6.0

view details

tomaka

commit sha 0f385e9dea33cf7e66582bdc5d503d7c1fc557db

Merge pull request #786 from tomaka/tomaka-patch-1 Publish 0.6.0

view details

Andrey Lesnikov

commit sha 7a8429e49913147a3b5e28b7e35478ac3ddd0dff

android: Fixed Window::get_pixel_format

view details

tomaka

commit sha fa96db1350962f66760f6593c20cdf11fb486743

Merge pull request #788 from ozkriff/android_fix_get_pixel_format android: Fix Window::get_pixel_format

view details

tomaka

commit sha 50b2b4d351ef9df131c332099c5b36a9f7865dc5

Publish 0.6.1

view details

tomaka

commit sha e18ff88d21d47c145259bb8cbf05ae808342b6c6

Merge pull request #789 from tomaka/tomaka-patch-1 Publish 0.6.1

view details

mitchmindtree

commit sha 561349669a94809bf0b359ba9f80c9a566bcbc08

Addresses several warnings emitted on OS X by removing unused imports and allowing non_upper_case_globals in cocoa event conversion function.

view details

mitchmindtree

commit sha c2537d81e81b72750113a5ba426315ceb6785095

Remove unused private fields from cocoa HeadlessContext struct.

view details

mitchmindtree

commit sha 9a6b6b3f35dd1e41e7ff55e48916520cfa0d82a8

Remove imports of enum variants in favour of using the type name paths.

view details

tomaka

commit sha 87a9cc639a89ea5d53d2d54291e9511657c899c4

Merge pull request #793 from mitchmindtree/remove_variant_imports Remove imports of `Event` and `ElementState` variants in favour of using the full type path.

view details

tomaka

commit sha 572af951e95eff94c7b7969d6518b7fb0cea1891

Merge pull request #791 from mitchmindtree/remove_unused_private_fields Remove unused private fields from cocoa HeadlessContext struct.

view details

tomaka

commit sha 0c4cf714a103bf2fa67c77f8f55111ae78bc0e6d

Merge pull request #790 from mitchmindtree/remove_unused_imports Addresses unused import and `non_upper_case_globals` warnings emitted on OS X

view details

push time in a month

issue closedservo/unicode-script

Replace with unicode-rs/unicode-script?

I recently wrote https://github.com/unicode-rs/unicode-script , which does everything this crate does as well as supporting the Script_Extension property (and some operations on it), which Rust needs for https://github.com/rust-lang/rust/issues/55467

Would people mind if I archived this repository and continued development in unicode-rs? The new crate is somewhat of a breaking change, but not much, and there are very few consumers so I can just make pull requests and do a major version bump.

cc @SimonSapin @mbrubeck

closed time in 2 months

Manishearth

issue commentrust-lang/rust-clippy

clippy::drop_ref will trigger on `&mut T` as well as `&T`

I think keeping this lint enabled by default for &mut T is a good idea. The cases I discussed above where drop(reference) is useful as a compile-time assertion are fairly rare, and only appear in unsafe code where it's worth explicitly opting out of the lint and explaining why. In most Rust code, dropping a reference is not likely to do anything useful.

For example, I talked with @luser about the case he mentioned above, and it turned out that the lint was correct: the drop call had no effect and should be removed.

Lokathor

comment created time in 2 months

issue commentrust-lang/rust-clippy

clippy::drop_ref will trigger on `&mut T` as well as `&T`

In one sense, dropping an &mut T does not have an effect: It doesn't do anything at runtime, and removing the drop(mut_ref) call does not change the semantics of any program that compiles.

On the other hand, drop(mut_ref) can be a useful sort of static assertion, since it can prevent you from accidentally adding code in the future that uses the reference after it should no longer be used. In safe Rust the compiler already prevents this, but it could be useful in unsafe code that uses a mixture of raw pointers and references.

Lokathor

comment created time in 2 months

pull request commentrust-lang/rust

Stabilize Condvar::wait_while and wait_timeout_while (previously wait_until, wait_timeout_until)

Why hasn't this entered final comment period yet? Does the concern need to be marked resolved?

mbrubeck

comment created time in 2 months

PR closed servo/unicode-script

Update to Unicode 11.0 [breaking change].

This is a breaking change because the variants of the public Script enum have changed. Code that matches this enum exhaustively must be updated.

Depends on servo/rust-harfbuzz#78.

+335 -270

8 comments

5 changed files

mbrubeck

pr closed time in 2 months

pull request commentservo/unicode-script

Deprecate repo

@bors-servo r+

Manishearth

comment created time in 2 months

push eventmbrubeck/benchmarksgame-rs

Matt Brubeck

commit sha ac8f044cff805ba9693898fb98f25cf6fffb073a

Use std::fs::read

view details

Matt Brubeck

commit sha 01f2cf419fbed9719613f2c43963bb1640e8243d

revcomp: Don't read input into one big buffer. Programs are no longer allowed to allocate a buffer up front based on the input file size. Instead, this program now reads each sequence into a separate buffer, and processes each sequence in parallel with reading the next one.

view details

Matt Brubeck

commit sha d10bc8c1aa9fc44bfd525caaf55c7a789fdfd691

Use std::collections::HashMap

view details

push time in 2 months

issue commentservo/unicode-script

Replace with unicode-rs/unicode-script?

Sounds fine to me.

Manishearth

comment created time in 2 months

PR opened TeXitoi/benchmarksgame-rs

revcomp: Don't read input into one big buffer.

Programs are no longer allowed to allocate a buffer up front based on the input file size. Instead, this program now reads each sequence into a separate buffer, and processes each sequence in parallel with reading the next one.

Submitted and accepted as:

https://benchmarksgame-team.pages.debian.net/benchmarksgame/program/revcomp-rust-2.html

Updated version of #82 with more extensive refactoring to maintain performance without needing the big buffer.

+76 -83

0 comment

1 changed file

pr created time in 2 months

pull request commentTeXitoi/benchmarksgame-rs

reverse_complement: Don't pre-allocate input buffer

https://salsa.debian.org/benchmarksgame-team/benchmarksgame/issues/247

mbrubeck

comment created time in 2 months

push eventmbrubeck/benchmarksgame-rs

Matt Brubeck

commit sha 01f2cf419fbed9719613f2c43963bb1640e8243d

revcomp: Don't read input into one big buffer. Programs are no longer allowed to allocate a buffer up front based on the input file size. Instead, this program now reads each sequence into a separate buffer, and processes each sequence in parallel with reading the next one.

view details

push time in 2 months

push eventmbrubeck/benchmarksgame-rs

Matt Brubeck

commit sha e831c19d9d53354f94b2730581dc5ab5423471f8

deopt

view details

Matt Brubeck

commit sha 242b13ce55a23fbde8d3b3810ffe350d16a3b6e7

start of refactor

view details

Matt Brubeck

commit sha 83be15919f50f7f22bd2455b10ffdd4268eaea82

Finish refactor?

view details

push time in 2 months

create barnchmbrubeck/benchmarksgame-rs

branch : r3

created branch time in 2 months

create barnchmbrubeck/benchmarksgame-rs

branch : r1

created branch time in 2 months

create barnchmbrubeck/benchmarksgame-rs

branch : r2

created branch time in 2 months

issue commentmbrubeck/rust-debug-unreachable

Tests fail when environment sets -Copt-level > 0

Fixed by disabling this test in optimized builds.

kentfredric

comment created time in 2 months

created tagmbrubeck/rust-debug-unreachable

tagv1.0.4

unreachable!() in debug, std::intrinsics::unreachable() in release

created time in 2 months

push eventmbrubeck/rust-debug-unreachable

Matt Brubeck

commit sha 88691aebfb035bc7f2cf4ee43319d00ee0bd25cd

Don't run should_panic test in optimized builds Fixes #1

view details

Matt Brubeck

commit sha d82486c6d9a87b245ab04555d210626fafcc4758

Version 1.0.4 Update documentation and example code.

view details

push time in 2 months

issue closedmbrubeck/rust-debug-unreachable

Tests fail when environment sets -Copt-level > 0

My understanding is that this is somewhat intended behaviour, and my imagination is a bit limited as to how you might handle this so it does the right thing regardless of the -Copt-level settings.

Ideally, tests should pass when built with optimizations, and I have a suspicion this also lends itself to interesting problems if consuming crates also have tests for this path panic()'ing.

For now, I've put in place a workaround for this crate in our vendor toolchain to override our normal value ( -Copt-level=3 -Cdebuginfo=2 ) with RUSTFLAGS="${RUSTFLAGS} -Copt-level=0", but it would be better overall if this wasn't necessary.

Reproduction

 RUSTFLAGS="-Copt-level=1" cargo test
   Compiling new_debug_unreachable v1.0.3 (<prefix>/new_debug_unreachable-1.0.3)
    Finished test [unoptimized + debuginfo] target(s) in 14.24s
     Running target/debug/deps/debug_unreachable-faa1ef4627bb2a7a

running 0 tests

test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out

     Running target/debug/deps/check-74a7bcf49a536e5d

running 1 test
error: test failed, to rerun pass '--test check'

Caused by:
  process didn't exit successfully: `<prefix>/new_debug_unreachable-1.0.3/target/debug/deps/check-74a7bcf49a536e5d` (signal: 4, SIGILL: illegal instruction)

Stack Traces

<details> <summary>GDB</summary>

Thread 2 "explodes_in_deb" received signal SIGILL, Illegal instruction.
[Switching to Thread 0x7ffff7c17700 (LWP 16217)]
0x0000555555563250 in core::ops::function::FnOnce::call_once ()
(gdb) bt
#0  0x0000555555563250 in core::ops::function::FnOnce::call_once ()
#1  0x000055555556f07f in <alloc::boxed::Box<F> as core::ops::function::FnOnce<A>>::call_once ()
    at /rustc/0de96d37fbcc54978458c18f5067cd9817669bc8/src/liballoc/boxed.rs:1022
#2  0x00005555555b821a in __rust_maybe_catch_panic () at src/libpanic_unwind/lib.rs:78
#3  0x000055555558a337 in std::panicking::try ()
    at /rustc/0de96d37fbcc54978458c18f5067cd9817669bc8/src/libstd/panicking.rs:270
#4  std::panic::catch_unwind () at /rustc/0de96d37fbcc54978458c18f5067cd9817669bc8/src/libstd/panic.rs:394
#5  test::run_test_in_process () at src/libtest/lib.rs:567
#6  test::run_test::run_test_inner::{{closure}} () at src/libtest/lib.rs:474
#7  0x0000555555563826 in std::sys_common::backtrace::__rust_begin_short_backtrace ()
    at /rustc/0de96d37fbcc54978458c18f5067cd9817669bc8/src/libstd/sys_common/backtrace.rs:136
#8  0x0000555555567ba6 in std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}} ()
    at /rustc/0de96d37fbcc54978458c18f5067cd9817669bc8/src/libstd/thread/mod.rs:469
#9  <std::panic::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once ()
    at /rustc/0de96d37fbcc54978458c18f5067cd9817669bc8/src/libstd/panic.rs:318
#10 std::panicking::try::do_call () at /rustc/0de96d37fbcc54978458c18f5067cd9817669bc8/src/libstd/panicking.rs:292
#11 0x00005555555b821a in __rust_maybe_catch_panic () at src/libpanic_unwind/lib.rs:78
#12 0x0000555555568626 in std::panicking::try ()
    at /rustc/0de96d37fbcc54978458c18f5067cd9817669bc8/src/libstd/panicking.rs:270
#13 std::panic::catch_unwind () at /rustc/0de96d37fbcc54978458c18f5067cd9817669bc8/src/libstd/panic.rs:394
#14 std::thread::Builder::spawn_unchecked::{{closure}} ()
    at /rustc/0de96d37fbcc54978458c18f5067cd9817669bc8/src/libstd/thread/mod.rs:468
#15 core::ops::function::FnOnce::call_once{{vtable-shim}} ()
    at /rustc/0de96d37fbcc54978458c18f5067cd9817669bc8/src/libcore/ops/function.rs:232
#16 0x00005555555a5e1f in <alloc::boxed::Box<F> as core::ops::function::FnOnce<A>>::call_once ()
    at /rustc/0de96d37fbcc54978458c18f5067cd9817669bc8/src/liballoc/boxed.rs:1022
#17 0x00005555555b76f0 in <alloc::boxed::Box<F> as core::ops::function::FnOnce<A>>::call_once ()
    at /rustc/0de96d37fbcc54978458c18f5067cd9817669bc8/src/liballoc/boxed.rs:1022
#18 std::sys_common::thread::start_thread () at src/libstd/sys_common/thread.rs:13
#19 std::sys::unix::thread::Thread::new::thread_start () at src/libstd/sys/unix/thread.rs:80
#20 0x00007ffff7f512d7 in start_thread (arg=<optimized out>) at pthread_create.c:479
#21 0x00007ffff7e656df in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

</details> <details> <summary>lldb</summary>

Process 16262 stopped
* thread #2, name = 'explodes_in_deb', stop reason = signal SIGILL: illegal instruction operand
    frame #0: 0x0000555555563250 check-74a7bcf49a536e5d`core::ops::function::FnOnce::call_once::h41c6efecde8bd3e6
check-74a7bcf49a536e5d`core::ops::function::FnOnce::call_once::h41c6efecde8bd3e6:
->  0x555555563250 <+0>: ud2    
    0x555555563252:      nopw   %cs:(%rax,%rax)
    0x55555556325c:      nopl   (%rax)
check-74a7bcf49a536e5d`check::main::hf93736f22994602c:
    0x555555563260 <+0>: leaq   0x92291(%rip), %rdi
(lldb) bt   
* thread #2, name = 'explodes_in_deb', stop reason = signal SIGILL: illegal instruction operand
  * frame #0: 0x0000555555563250 check-74a7bcf49a536e5d`core::ops::function::FnOnce::call_once::h41c6efecde8bd3e6
    frame #1: 0x000055555556f07f check-74a7bcf49a536e5d`_$LT$alloc..boxed..Box$LT$F$GT$$u20$as$u20$core..ops..function..FnOnce$LT$A$GT$$GT$::call_once::hac6c943802a69b63 at boxed.rs:1022:8
    frame #2: 0x00005555555b821a check-74a7bcf49a536e5d`__rust_maybe_catch_panic at lib.rs:78:7
    frame #3: 0x000055555558a337 check-74a7bcf49a536e5d`test::run_test::run_test_inner::_$u7b$$u7b$closure$u7d$$u7d$::h124724482e4d2ce7 [inlined] std::panicking::try::he87184946bc6dd10 at panicking.rs:270:12
    frame #4: 0x000055555558a2ea check-74a7bcf49a536e5d`test::run_test::run_test_inner::_$u7b$$u7b$closure$u7d$$u7d$::h124724482e4d2ce7 [inlined] std::panic::catch_unwind::hf7ba6a4b1c41a214 at panic.rs:394
    frame #5: 0x000055555558a2ea check-74a7bcf49a536e5d`test::run_test::run_test_inner::_$u7b$$u7b$closure$u7d$$u7d$::h124724482e4d2ce7 [inlined] test::run_test_in_process::h2b9b8139b389f254 at lib.rs:567
    frame #6: 0x000055555558a2cf check-74a7bcf49a536e5d`test::run_test::run_test_inner::_$u7b$$u7b$closure$u7d$$u7d$::h124724482e4d2ce7 at lib.rs:474
    frame #7: 0x0000555555563826 check-74a7bcf49a536e5d`std::sys_common::backtrace::__rust_begin_short_backtrace::h7bbe1dcc3508cbda at backtrace.rs:136:4
    frame #8: 0x0000555555567ba6 check-74a7bcf49a536e5d`std::panicking::try::do_call::h323fa928e0264a15 [inlined] std::thread::Builder::spawn_unchecked::_$u7b$$u7b$closure$u7d$$u7d$::_$u7b$$u7b$closure$u7d$$u7d$::hf74b48dbc6ccd6dc at mod.rs:469:16
    frame #9: 0x0000555555567b90 check-74a7bcf49a536e5d`std::panicking::try::do_call::h323fa928e0264a15 [inlined] _$LT$std..panic..AssertUnwindSafe$LT$F$GT$$u20$as$u20$core..ops..function..FnOnce$LT$$LP$$RP$$GT$$GT$::call_once::h3bf7ff98f40bd74d at panic.rs:318
    frame #10: 0x0000555555567b90 check-74a7bcf49a536e5d`std::panicking::try::do_call::h323fa928e0264a15 at panicking.rs:292
    frame #11: 0x00005555555b821a check-74a7bcf49a536e5d`__rust_maybe_catch_panic at lib.rs:78:7
    frame #12: 0x0000555555568626 check-74a7bcf49a536e5d`core::ops::function::FnOnce::call_once$u7b$$u7b$vtable.shim$u7d$$u7d$::h40fa05e88c801467 [inlined] std::panicking::try::hd118dcf5026fdb8f at panicking.rs:270:12
    frame #13: 0x00005555555685e7 check-74a7bcf49a536e5d`core::ops::function::FnOnce::call_once$u7b$$u7b$vtable.shim$u7d$$u7d$::h40fa05e88c801467 [inlined] std::panic::catch_unwind::h9234fc4bb54734e4 at panic.rs:394
    frame #14: 0x00005555555685e7 check-74a7bcf49a536e5d`core::ops::function::FnOnce::call_once$u7b$$u7b$vtable.shim$u7d$$u7d$::h40fa05e88c801467 [inlined] std::thread::Builder::spawn_unchecked::_$u7b$$u7b$closure$u7d$$u7d$::hdb131e70b78bce7b at mod.rs:468
    frame #15: 0x00005555555685b3 check-74a7bcf49a536e5d`core::ops::function::FnOnce::call_once$u7b$$u7b$vtable.shim$u7d$$u7d$::h40fa05e88c801467 at function.rs:232
    frame #16: 0x00005555555a5e1f check-74a7bcf49a536e5d`_$LT$alloc..boxed..Box$LT$F$GT$$u20$as$u20$core..ops..function..FnOnce$LT$A$GT$$GT$::call_once::hbabfae4f70ab9609 at boxed.rs:1022:8
    frame #17: 0x00005555555b76f0 check-74a7bcf49a536e5d`std::sys::unix::thread::Thread::new::thread_start::h3f42d1616b825de5 [inlined] _$LT$alloc..boxed..Box$LT$F$GT$$u20$as$u20$core..ops..function..FnOnce$LT$A$GT$$GT$::call_once::h8471b989095c2da7 at boxed.rs:1022:8
    frame #18: 0x00005555555b76e4 check-74a7bcf49a536e5d`std::sys::unix::thread::Thread::new::thread_start::h3f42d1616b825de5 [inlined] std::sys_common::thread::start_thread::h0647e91c8800cb8c at thread.rs:13
    frame #19: 0x00005555555b766a check-74a7bcf49a536e5d`std::sys::unix::thread::Thread::new::thread_start::h3f42d1616b825de5 at thread.rs:80
    frame #20: 0x00007ffff7f512d7 libpthread.so.0`start_thread(arg=<unavailable>) at pthread_create.c:479:8
    frame #21: 0x00007ffff7e656df libc.so.6`__GI___clone at clone.S:95

</details>

Binary

check-74a7bcf49a536e5d.gz

closed time in 2 months

kentfredric

push eventmbrubeck/rust

David Tolnay

commit sha 5dfc264055d2eb59d08cdfdbc81fc8856f51327f

Update rls submodule

view details

Oliver Scherer

commit sha 9ee16e14c51668309f446636e8960b7fbbac066d

Require const stability attributes on intrinsics to be able to use them in constant contexts

view details

Oliver Scherer

commit sha 032d810e24a39aad311c15d05dfef4dc4d6829c4

Add a big notice about const intrinsics

view details

Luro02

commit sha 89986a39a8236a3e4bfbb74b4d3a0a03667e8b56

add partialeq and eq to cursor

view details

Guillaume Gomez

commit sha 4ce2384501833127fa3c9e995240d78b07f0ab2f

Improve JS code a bit by avoid erasing all event handlers

view details

Guillaume Gomez

commit sha b67701347abd3469a92577cfe748206ecfc25694

Improve code readability

view details

Guillaume Gomez

commit sha 71ff18fb8965712cc0a35a9d968cdc41c6561386

Fix invalid results showing back

view details

Guillaume Gomez

commit sha 4ee18c94d4969a49b81b726260a093f3fd201070

Clean up E0124 explanation

view details

Guillaume Gomez

commit sha 1474d2a41a32f7f969c7d924ea917a1390ebe1c6

Clean up E0128 explanation

view details

Yuki Okushi

commit sha 101dd7bad9432730fa2f625ae43afcc2929457d4

Use `is_none` instead of `if let`

view details

Yuki Okushi

commit sha 7c485ccfad968ba6fe226a59f9337adbc158dd6b

Add test for issue-61747

view details

Yuki Okushi

commit sha 96253c2d15d5f9ed1e6e63a97ac5f705c8fc4421

Add test for issue-66205

view details

Yuki Okushi

commit sha 6ec3a63bb287d11849b2fc3546793437bbbbd865

Add test for issue-66270

view details

Oliver Scherer

commit sha 056dff5748270249d81a03b355bc7ddd8da7f900

Fix ICE in mir interpretation

view details

Mark Rousskov

commit sha c205f6a06a8360367a7f6242f0d2615e94824024

Remove mem::uninitalized from tests This purges uses of uninitialized where possible from test cases. Some are merely moved over to the equally bad pattern of MaybeUninit::uninit().assume_init() but with an annotation that this is "the best we can do".

view details

Mark Mansi

commit sha 05e3d200801a6236ddbb5b467b3b12a1b4ff15b2

Refactor region error handling to be done by mirborrowckctx

view details

Dylan DPC

commit sha 256eec4ae0653e35cdd39261a2b59d69c91b1a71

Update E0124.md

view details

Oliver Scherer

commit sha 5b8df34203d1d6f308da7413c9f27b0b0887b438

Update src/librustc_mir/interpret/place.rs Co-Authored-By: Ralf Jung <post@ralfj.de>

view details

Mazdak Farrokhzad

commit sha 45acee30903f6a84d22a5afa29df965265ca486b

Move `{hir::lowering -> hir}::is_range_literal`. The function is never used inside lowering, but only ever in external crates. By moving it, we faciliate lowering as its own crate.

view details

varkor

commit sha a5991c57cf4430d1f67886637c65f2178ff1b372

Add the full issue reference to equality constraints in `where` clauses

view details

push time in 2 months

push eventmbrubeck/rust

Stephane Raux

commit sha 318c5d6c963d0e5d8ece89e804b4e696c6011955

Clarify `Box<T>` representation and its use in FFI This officializes what was only shown as a code example in [the unsafe code guidelines](https://rust-lang.github.io/unsafe-code-guidelines/layout/function-pointers.html?highlight=box#use) and follows [the discussion](https://github.com/rust-lang/unsafe-code-guidelines/issues/157) in the corresponding repository. It is also related to [the issue](https://github.com/rust-lang/rust/issues/52976) regarding marking `Box<T>` `#[repr(transparent)]`.

view details

Stephane Raux

commit sha aea94230c476fea2ee073a1bc672125e4586d4b5

Update Box representation comment based on reviews

view details

Stephane Raux

commit sha 812ec6a3bf775c1564ed3b12374c4ee81bfa94b8

Update FFI example - Use meaningful names - Clarify comments - Fix C function declaration

view details

Peter

commit sha 7bf66d97b63d90debd914d1aab1b71940edcfb0e

From<NonZero*> impls for wider NonZero types issue: https://github.com/rust-lang/rust/issues/66196

view details

Peter

commit sha ae2b192fddb8e5ecc2a7ef40dbffa6bb4b8640d5

remove irrelevant Safety section

view details

Peter

commit sha 9f88273f3d9038d3de1c394961bafa161205554d

add NonZeroU16 -> NonZeroUsize and NonZeroI16 -> NonZeroIsize

view details

Peter

commit sha 947772fc31b96ce90f57720f74571f14e35df66b

update version metadata

view details

Charles Gleason

commit sha 164d1a205d21e0bc54b60cb4e9badf27b3883ffd

Match VecDeque::extend to Vec::extend

view details

Bart Massey

commit sha ed56f867818f7f3fb29dac3cfc0faf316909fd23

Cleaned up unused labels Deleted unused labels from compiler and fixed or allowed unused labels in tests. This patch removes some gratuitous unused labels and turns off the warning for unused labels that are a necessary part of tests. This will permit setting the `unused_labels` lint to `warn`.

view details

Bart Massey

commit sha 34a45a5309dad66025df506a388fbdf1da9afa40

Changed unused_labels lint default from allow to warn Closes #66324.

view details

Bryan Donlan

commit sha 91ee3d1c31e5d1684e0d2ec5036dc69993b6f992

Stabilize `std::{rc,sync}::Weak::{weak_count, strong_count}` Closes: #57977

view details

Bryan Donlan

commit sha 0d0b283c2c5a4df891ca47b27f0851ef2549ac3b

Make Weak::weak_count() return zero when no strong refs remain

view details

BaoshanPang

commit sha e20f630f1caf7e95a725ed524109fc168a9e1345

pass the captured environment variables to rtpSpawn

view details

BaoshanPang

commit sha de362b41468f71ab7b1843007f97d4c1ca93638c

ensure that access to the environment is synchronized

view details

Stefan Lankes

commit sha c874789613302d87b7b2667dead94c6e9540a877

remove dependency from libhermit The build process of the unikernel HermitCore is redesigned and doesn't longer depend on libhermit.

view details

SOFe

commit sha 9badc33cda41acadc395f1597947b185f5a9b2a3

Add str::strip_prefix and str::strip_suffix

view details

Simon Sapin

commit sha 6ddcf5044b64a03fc8fc422cdfa9946abd42c8f0

Fix unstable attribute accidentally applying to the entire impl Note `#![unstable]` v.s. `#[unstable]`

view details

SOFe

commit sha 2e2e0dfc1acfb69be9575d320418d04f3caf64a7

Improved comments to clarify sasumptions in str::strip_prefix

view details

Simon Sapin

commit sha 392e5a7150d0a7c0098631d92791a26013ba28cd

Fix the tracking issue number for `PanicInfo::message` #44489 was closed when the `#[panic_handler]` attribute was stabilized.

view details

Simon Sapin

commit sha eab1dc9b562c4ff128575d6af7afe819e34f9340

Stabilize the `core::panic` module `std::panic` is already stable. `core::panic::PanicInfo` and `core::panic::Location` are stable and can be used through that path because of a bug in stability checking: https://github.com/rust-lang/rust/issues/15702

view details

push time in 2 months

push eventmbrubeck/blog.rust-lang.org

Matt Brubeck

commit sha 449f3c069c93e84a6c81d1a6db693109c6b64180

Fix quotation mark in git command

view details

push time in 2 months

fork mbrubeck/xorfilter

Rust library implementing xor-filters

fork in 2 months

issue closedservo/rust-smallvec

Smallvec good option for array language?

Months ago I asked about a better way to represent values that idiomatically are:

pub enum Array<T> {
    Zero([T; 0]),
    Scalar([T; 1]),
    Vec(Vec<T>),
}
pub enum Scalar {
  I32(Array<i32>),
  I64(Array<i64>),
}

This is for a array/relational language where scalar and multiples values are the same:

for i in [] do...
for i in 1 do... //same as [1]
for i in [1, 2, 3 ] do...

There was suggested this crate. Currently I put a Vec<T> for each scalar, but wonder if this crate allow to operate in an efficient way with 0 (I imagine alike vec, SmallVec not allocate for zero values?), 1 and N values. The main use case is to stream rows:

for row in [1,2,3;
                   4,5,6]

Where the values of rows are typically just [T; 1].

closed time in 2 months

mamcx

issue commentservo/rust-smallvec

Smallvec good option for array language?

Yes, SmallVec<[T; 1]> would be an efficient representation for this use case. It would only require allocation when the value contains multiple T. Internally it is somewhat similar to your idiomatic enum.

mamcx

comment created time in 2 months

PR closed TeXitoi/benchmarksgame-rs

reverse_complement: Don't pre-allocate input buffer

This program was disqualified for reading the size of the input file up front.

+5 -7

1 comment

1 changed file

mbrubeck

pr closed time in 2 months

pull request commentTeXitoi/benchmarksgame-rs

reverse_complement: Don't pre-allocate input buffer

StdinLock points to a BufReader already.

However, I'm closing this for now because I remembered that several C and C++ (and other) entries also use this technique, so I've asked for Rust to be allowed to use it too.

mbrubeck

comment created time in 2 months

push eventmbrubeck/benchmarksgame-rs

Matt Brubeck

commit sha de00f6cb951fde998593a5a23bf85e76407c80ea

reverse_complement: Don't pre-allocate input buffer This program was disqualified for reading the size of the input file up front.

view details

push time in 2 months

PR opened TeXitoi/benchmarksgame-rs

reverse_complement: Don't pre-allocate input buffer

This program was disqualified for reading the size of the input file up front.

+4 -6

0 comment

1 changed file

pr created time in 2 months

create barnchmbrubeck/benchmarksgame-rs

branch : revcomp

created branch time in 2 months

startedTeXitoi/benchmarksgame-rs

started time in 2 months

release servo/rust-smallvec

v1.1.0

released time in 2 months

created tagservo/rust-smallvec

tagv1.1.0

"Small vector" optimization for Rust: store up to a small number of items on the stack

created time in 2 months

PR opened servo/rust-smallvec

Version 1.1.0

Changes in this release:

  • Added new method SmallVec::into_boxed_slice (#190).
  • Added new method IntoIter::as_slice (#182).
  • IntoIter now implements Clone (#192).
  • Improved documentation and testing (#186, #189).
  • Minor code cleanups (#176).

Also added a simple example to the README.

+19 -1

0 comment

2 changed files

pr created time in 2 months

push eventmbrubeck/rust-smallvec

bors-servo

commit sha a775b5f74cce0d3c7218608fd9f6fd721bb0f461

Auto merge of #138 - mbrubeck:bump, r=emilio Version 0.6.8 Change log: * Don't leak memory if an iterator panics during `extend` (#137) * Update the unstable `union` feature for better forward compatibility (#135) <!-- Reviewable:start --> --- This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/rust-smallvec/138) <!-- Reviewable:end -->

view details

Matt Brubeck

commit sha 2511b81e9307c98bd1ed2ed1b29ebf766aca290b

Remove dependency on unmaintained 'unreachable' Fixes #128 by inlining the tiny amount of code we use from `unreachable` and its dependency `void`. Eventually this can be replaced with `std::hint::unrechable_unchecked` but this will require bumping our minumum supported Rust version. This will prevent build breakage from users building with broken versions of the `void` crate, as in crossbeam-rs/crossbeam#312.

view details

Matt Brubeck

commit sha 6510c426157ed8739a7757fa1cc16401a28d66a2

Version 0.6.9

view details

bors-servo

commit sha dfd78d18b790c18bd103c3e7b4930bb54cb6b8f0

Auto merge of #140 - mbrubeck:unreachable, r=emilio Remove dependency on unmaintained 'unreachable' crate Fixes #128 by inlining the tiny amount of code we use from `unreachable` and its dependency `void`. Eventually this can be replaced with `std::hint::unrechable_unchecked` but this will require bumping our minumum supported Rust version. This will prevent build breakage from users building with broken versions of the `void` crate, as in crossbeam-rs/crossbeam#312. <!-- Reviewable:start --> --- This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/rust-smallvec/140) <!-- Reviewable:end -->

view details

lcnr/Bastian Kauschke

commit sha f4da2e0b6e2825ea25324ed5954e521c606bf575

typo

view details

bors-servo

commit sha 19de50108d403efaa7cd979eac3bb97a4432fd4b

Auto merge of #144 - lcnr:typo_fix, r=mbrubeck fix typo typo <!-- Reviewable:start --> --- This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/rust-smallvec/144) <!-- Reviewable:end -->

view details

Eric Huss

commit sha 50a50ed90d6ad78d812a40680257d8338843869a

Fix using `grow` to shrink to inline.

view details

bors-servo

commit sha f96322b9243405cc82701cc73f1b19313b413ab4

Auto merge of #152 - ehuss:grow-to-shrink, r=emilio Fix using `grow` to shrink to inline. Using `grow` on a spilled SmallVec to shrink to an unspilled SmallVec would result in a corrupted structure, as `capacity` was not updated. Fixes #149 <!-- Reviewable:start --> --- This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/rust-smallvec/152) <!-- Reviewable:end -->

view details

Eric Huss

commit sha 1fbaf10483259b3eda1bb084ff8f7b47b9da9b01

Fix `extend` from assuming a fused iterator.

view details

bors-servo

commit sha 88b62b65fae5bc144d9e9cacf0778c8ed1ed509b

Auto merge of #150 - ehuss:extend-resume, r=emilio Fix `extend` from assuming a fused iterator. Iterators may resume after returning None. I think it is generally expected that `extend` should stop on the first None. Fixes #147. Specifically, in rustc, there are some situations where an iterator of Results are collected into a `Result<SmallVec, _>` (such as [here](https://github.com/rust-lang/rust/blob/c1c60d292e2dd2deff7084208274f9a02f750d43/src/librustc/ty/relate.rs#L139-L142) which ends up in [this call to `collect`](https://github.com/rust-lang/rust/blob/c1c60d292e2dd2deff7084208274f9a02f750d43/src/librustc/ty/context.rs#L3002)). The [Result adapter](https://github.com/rust-lang/rust/blob/c1c60d292e2dd2deff7084208274f9a02f750d43/src/libcore/result.rs#L1245-L1258) returns None for the first `Err` in the sequence. However, it is possible for an iterator to have additional elements after the first Err. With this bug, SmallVec was falling through to the slow-path `for` loop, and resuming the iterator grabbing too many elements. I believe this was having some bad interactions with the type interner where the additional elements after the `Err` were getting processed (via a `map()`) and interned when they shouldn't be (or otherwise having some side effects from the `map`). <!-- Reviewable:start --> --- This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/rust-smallvec/150) <!-- Reviewable:end -->

view details

Eric Huss

commit sha 4ba0d0f689440963e38b8adbe7fc2cabc6e573d5

Fix using `grow` to the same size.

view details

bors-servo

commit sha c20cfa8584e649f00dc0767ab6fad63a3f59a296

Auto merge of #151 - ehuss:grow-same-size, r=jdm Fix using `grow` to the same size. Using `grow` on a spilled SmallVec to the current capacity would free the backing storage when it shouldn't. Fixes #148 <!-- Reviewable:start --> --- This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/rust-smallvec/151) <!-- Reviewable:end -->

view details

Josh Matthews

commit sha eea8cc489f1018ffa0c725c05e2e0ee153417b31

Publish 0.6.10.

view details

bors-servo

commit sha 830d32bbdb7dc858d1f81d662fe6dd06219f0647

Auto merge of #153 - servo:jdm-patch-1, r=Manishearth Publish 0.6.10. This incorporates #144, #152, #150, and #151, which should all be minor version updates according to semver. <!-- Reviewable:start --> --- This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/rust-smallvec/153) <!-- Reviewable:end -->

view details

Christopher Serr

commit sha 0e73d06843aca2515acc09bde28294a0f655b285

alloc is now stable

view details

bors-servo

commit sha c83bb71afe7bdfd824da9c24cccc78753abb059e

Auto merge of #159 - CryZe:no-std, r=emilio alloc is now stable The alloc crate is now stable with 1.36. That means smallvec is now no_std compatible on stable Rust. <!-- Reviewable:start --> --- This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/rust-smallvec/159) <!-- Reviewable:end -->

view details

Mazdak Farrokhzad

commit sha 92122e2d642f3610925679f8f1e6c3d259a7db09

Move use of 'default fn' to its own module.

view details

bors-servo

commit sha 3ee6d1e3e5a8b5a6eafa5f396c397d5038a9c97e

Auto merge of #161 - Centril:master, r=emilio Move use of 'default fn' to its own module This is the proper way to do `cfg(...)` gating when dealing with an unstable feature that introduces syntax. <!-- Reviewable:start --> --- This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/rust-smallvec/161) <!-- Reviewable:end -->

view details

Atul Bhosale

commit sha a4f42041cbf3563f1047649cfcc9a09f2f51b1ee

Format code using 'cargo fmt'

view details

bors-servo

commit sha ae79432ad505d13974d56eec12f529f0234a6264

Auto merge of #167 - Atul9:cargo-fmt, r=jdm Format code using 'cargo fmt'

view details

push time in 2 months

push eventmbrubeck/rust

Matt Brubeck

commit sha 2e735f4b5dd4493886501cb1c15b89b662675a95

Stabilize Condvar::wait_until and wait_timeout_until

view details

Matt Brubeck

commit sha 4a64be2d3e27fc419d37024003f0b2e638b7eb52

Rename wait_until/wait_timeout_until to wait_while/white_timeout_while

view details

push time in 2 months

Pull request review commentgoogle/flatbuffers

Make Rust constants public

 mod generated_constants {     fn monster_file_extension() {         assert_eq!("mon", my_game::example::MONSTER_EXTENSION);     }++    #[test]+    fn enum_constants() {+        assert_eq!(my_game::example::ENUM_MIN_COLOR, 1);+        assert_eq!(my_game::example::ENUM_MAX_COLOR, 8);+        assert_eq!(my_game::example::ENUM_VALUES_COLOR, [+            my_game::example::Color::Red,+            my_game::example::Color::Green,+            my_game::example::Color::Blue,+        ]);

Done.

mbrubeck

comment created time in 2 months

more