Skip to content

Rust 1.17 regression, rotor-stream 0.6.2, private struct constructors #41802

Closed
@brson

Description

@brson
brian@ip-10-145-43-250:~/dev/rotor-stream⟫ cargo +stable test
   Compiling winapi v0.2.8
   Compiling bitflags v0.3.3
   Compiling httparse v1.2.2
   Compiling void v1.0.2
   Compiling bytes v0.3.0
   Compiling slab v0.1.3
   Compiling netbuf v0.3.8
   Compiling winapi-build v0.1.1
   Compiling bitflags v0.4.0
   Compiling argparse v0.2.1
   Compiling ws2_32-sys v0.2.1
   Compiling log v0.3.7
   Compiling regex-syntax v0.3.9
   Compiling utf8-ranges v0.1.3
   Compiling quick-error v0.2.2
   Compiling cfg-if v0.1.0
   Compiling libc v0.1.12
   Compiling libc v0.2.22
   Compiling nix v0.4.3
   Compiling kernel32-sys v0.2.2
   Compiling net2 v0.2.29
   Compiling memchr v0.1.11
   Compiling nix v0.5.1
   Compiling miow v0.1.5
   Compiling thread-id v2.0.0
   Compiling time v0.1.37
   Compiling aho-corasick v0.5.3
   Compiling thread_local v0.2.7
   Compiling regex v0.1.80
   Compiling mio v0.5.1
   Compiling rotor v0.6.3
   Compiling rotor-tools v0.3.2
   Compiling rotor-stream v0.6.2 (file:///mnt2/dev/rotor-stream)
warning: unused import: `std::error::Error`
 --> src/persistent.rs:2:5
  |
2 | use std::error::Error;
  |     ^^^^^^^^^^^^^^^^^
  |
  = note: #[warn(unused_imports)] on by default

error: private struct constructors are not usable through reexports in outer modules
   --> src/persistent.rs:242:13
    |
242 |             Persistent(self.0.clone(), self.1.clone(), Fsm::Idle)
    |             ^^^^^^^^^^
    |
    = note: #[deny(legacy_constructor_visibility)] on by default
    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
    = note: for more information, see issue #39207 <https://github.com/rust-lang/rust/issues/39207>

error: aborting due to previous error

error: Could not compile `rotor-stream`.
Build failed, waiting for other jobs to finish...
error: build failed

Presumably this is expected breakage. cc @tailhook

Metadata

Metadata

Assignees

No one assigned

    Labels

    regression-from-stable-to-stablePerformance or correctness regression from one stable version to another.

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions