From aba45d6b5f021b9a4ceb303ff01e5dcfe4fb8556 Mon Sep 17 00:00:00 2001 From: Gwyn Ciesla Date: Sun, 14 Jan 2018 19:15:41 +0000 Subject: [PATCH 01/19] Added the README --- README.md | 3 +++ 1 file changed, 3 insertions(+) create mode 100644 README.md diff --git a/README.md b/README.md new file mode 100644 index 0000000..7039702 --- /dev/null +++ b/README.md @@ -0,0 +1,3 @@ +# rust-mio + +The rust-mio package \ No newline at end of file From be5ab04cb6d93a3581eb3e3bf9e87cbc441e564e Mon Sep 17 00:00:00 2001 From: Igor Gnatenko Date: Sun, 14 Jan 2018 22:33:15 +0100 Subject: [PATCH 02/19] initial import Signed-off-by: Igor Gnatenko --- .gitignore | 1 + 0001-deps-update-slab-to-0.4.patch | 427 +++++++++++++++++++++++++++++ mio-0.6.12-fix-metadata.diff | 30 ++ rust-mio.spec | 83 ++++++ sources | 1 + 5 files changed, 542 insertions(+) create mode 100644 .gitignore create mode 100644 0001-deps-update-slab-to-0.4.patch create mode 100644 mio-0.6.12-fix-metadata.diff create mode 100644 rust-mio.spec create mode 100644 sources diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..4ee5f10 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +/mio-0.6.12.crate diff --git a/0001-deps-update-slab-to-0.4.patch b/0001-deps-update-slab-to-0.4.patch new file mode 100644 index 0000000..cf9c2fa --- /dev/null +++ b/0001-deps-update-slab-to-0.4.patch @@ -0,0 +1,427 @@ +From e327ff6cbdabcd4953bc551590c6e70384b1caf8 Mon Sep 17 00:00:00 2001 +From: Igor Gnatenko +Date: Wed, 10 Jan 2018 13:20:09 +0100 +Subject: [PATCH] deps: update slab to 0.4 + +Signed-off-by: Igor Gnatenko +--- + src/lib.rs | 1 + + src/timer.rs | 74 ++++++++----------------------------------- + test/test_battery.rs | 13 +++----- + test/test_echo_server.rs | 13 +++----- + test/test_uds_shutdown.rs | 13 +++----- + test/test_unix_echo_server.rs | 13 +++----- + test/test_unix_pass_fd.rs | 13 +++----- + 7 files changed, 39 insertions(+), 101 deletions(-) + +diff --git a/src/lib.rs b/src/lib.rs +index a0ce92a..3d04516 100644 +--- a/src/lib.rs ++++ b/src/lib.rs +@@ -83,6 +83,7 @@ + extern crate lazycell; + extern crate net2; + extern crate iovec; ++extern crate slab; + + #[cfg(target_os = "fuchsia")] + extern crate fuchsia_zircon as zircon; +diff --git a/src/timer.rs b/src/timer.rs +index 3d9a4f6..c77e37f 100644 +--- a/src/timer.rs ++++ b/src/timer.rs +@@ -2,18 +2,15 @@ + + #![allow(deprecated, missing_debug_implementations)] + +-extern crate slab; +- + use {convert, io, Ready, Poll, PollOpt, Registration, SetReadiness, Token}; + use event::Evented; + use lazycell::LazyCell; +-use std::{cmp, error, fmt, u64, usize, iter, thread}; ++use slab::Slab; ++use std::{cmp, fmt, u64, usize, iter, thread}; + use std::sync::Arc; + use std::sync::atomic::{AtomicUsize, Ordering}; + use std::time::{Duration, Instant}; + +-use self::TimerErrorKind::TimerOverflow; +- + pub struct Timer { + // Size of each tick in milliseconds + tick_ms: u64, +@@ -94,24 +91,9 @@ const TICK_MAX: Tick = u64::MAX; + // Manages communication with wakeup thread + type WakeupState = Arc; + +-type Slab = slab::Slab; +- +-pub type Result = ::std::result::Result; ++pub type Result = ::std::result::Result; + // TODO: remove + pub type TimerResult = Result; +- +- +-#[derive(Debug)] +-pub struct TimerError { +- kind: TimerErrorKind, +- desc: &'static str, +-} +- +-#[derive(Debug)] +-pub enum TimerErrorKind { +- TimerOverflow, +-} +- + // TODO: Remove + pub type OldTimerResult = Result; + +@@ -192,13 +174,13 @@ impl Timer { + let curr = self.wheel[slot]; + + // Insert the new entry +- let token = self.entries.insert(Entry::new(state, tick, curr.head)) +- .map_err(|_| TimerError::overflow())?; ++ let entry = Entry::new(state, tick, curr.head); ++ let token = Token(self.entries.insert(entry)); + + if curr.head != EMPTY { + // If there was a previous entry, set its prev pointer to the new + // entry +- self.entries[curr.head].links.prev = token; ++ self.entries[curr.head.into()].links.prev = token; + } + + // Update the head slot +@@ -219,7 +201,7 @@ impl Timer { + } + + pub fn cancel_timeout(&mut self, timeout: &Timeout) -> Option { +- let links = match self.entries.get(timeout.token) { ++ let links = match self.entries.get(timeout.token.into()) { + Some(e) => e.links, + None => return None + }; +@@ -230,7 +212,7 @@ impl Timer { + } + + self.unlink(&links, timeout.token); +- self.entries.remove(timeout.token).map(|e| e.state) ++ Some(self.entries.remove(timeout.token.into()).state) + } + + pub fn poll(&mut self) -> Option { +@@ -271,7 +253,7 @@ impl Timer { + self.wheel[slot].next_tick = TICK_MAX; + } + +- let links = self.entries[curr].links; ++ let links = self.entries[curr.into()].links; + + if links.tick <= self.tick { + trace!("triggering; token={:?}", curr); +@@ -280,8 +262,7 @@ impl Timer { + self.unlink(&links, curr); + + // Remove and return the token +- return self.entries.remove(curr) +- .map(|e| e.state); ++ return Some(self.entries.remove(curr.into()).state); + } else { + let next_tick = self.wheel[slot].next_tick; + self.wheel[slot].next_tick = cmp::min(next_tick, links.tick); +@@ -311,11 +292,11 @@ impl Timer { + let slot = self.slot_for(links.tick); + self.wheel[slot].head = links.next; + } else { +- self.entries[links.prev].links.next = links.next; ++ self.entries[links.prev.into()].links.next = links.next; + } + + if links.next != EMPTY { +- self.entries[links.next].links.prev = links.prev; ++ self.entries[links.next.into()].links.prev = links.prev; + + if token == self.next { + self.next = links.next; +@@ -356,7 +337,7 @@ impl Timer { + // Next tick containing a timeout + fn next_tick(&self) -> Option { + if self.next != EMPTY { +- let slot = self.slot_for(self.entries[self.next].links.tick); ++ let slot = self.slot_for(self.entries[self.next.into()].links.tick); + + if self.wheel[slot].next_tick == self.tick { + // There is data ready right now +@@ -497,32 +478,3 @@ impl Entry { + } + } + } +- +-impl fmt::Display for TimerError { +- fn fmt(&self, fmt: &mut fmt::Formatter) -> fmt::Result { +- write!(fmt, "{}: {}", self.kind, self.desc) +- } +-} +- +-impl TimerError { +- fn overflow() -> TimerError { +- TimerError { +- kind: TimerOverflow, +- desc: "too many timer entries" +- } +- } +-} +- +-impl error::Error for TimerError { +- fn description(&self) -> &str { +- self.desc +- } +-} +- +-impl fmt::Display for TimerErrorKind { +- fn fmt(&self, fmt: &mut fmt::Formatter) -> fmt::Result { +- match *self { +- TimerOverflow => write!(fmt, "TimerOverflow"), +- } +- } +-} +diff --git a/test/test_battery.rs b/test/test_battery.rs +index 3976071..d918196 100644 +--- a/test/test_battery.rs ++++ b/test/test_battery.rs +@@ -3,7 +3,7 @@ use mio::*; + use mio::deprecated::{EventLoop, EventLoopBuilder, Handler}; + use mio::net::{TcpListener, TcpStream}; + use std::collections::LinkedList; +-use slab; ++use slab::Slab; + use std::{io, thread}; + use std::time::Duration; + +@@ -23,8 +23,6 @@ struct EchoConn { + buf: Vec + } + +-type Slab = slab::Slab; +- + impl EchoConn { + fn new(sock: TcpStream) -> EchoConn { + let mut ec = +@@ -81,12 +79,11 @@ impl EchoServer { + + let sock = self.sock.accept().unwrap().0; + let conn = EchoConn::new(sock,); +- let tok = self.conns.insert(conn) +- .ok().expect("could not add connection to slab"); ++ let tok = self.conns.insert(conn); + + // Register the connection +- self.conns[tok].token = Some(tok); +- event_loop.register(&self.conns[tok].sock, tok, Ready::readable(), ++ self.conns[tok].token = Some(Token(tok)); ++ event_loop.register(&self.conns[tok].sock, Token(tok), Ready::readable(), + PollOpt::edge() | PollOpt::oneshot()) + .ok().expect("could not register socket with event loop"); + +@@ -106,7 +103,7 @@ impl EchoServer { + } + + fn conn<'a>(&'a mut self, tok: Token) -> &'a mut EchoConn { +- &mut self.conns[tok] ++ &mut self.conns[tok.into()] + } + } + +diff --git a/test/test_echo_server.rs b/test/test_echo_server.rs +index 6d2a84b..c0eda94 100644 +--- a/test/test_echo_server.rs ++++ b/test/test_echo_server.rs +@@ -2,7 +2,7 @@ use {localhost, TryRead, TryWrite}; + use mio::{Events, Poll, PollOpt, Ready, Token}; + use mio::net::{TcpListener, TcpStream}; + use bytes::{Buf, ByteBuf, MutByteBuf, SliceBuf}; +-use slab; ++use slab::Slab; + use std::io; + + const SERVER: Token = Token(10_000_000); +@@ -16,8 +16,6 @@ struct EchoConn { + interest: Ready + } + +-type Slab = slab::Slab; +- + impl EchoConn { + fn new(sock: TcpStream) -> EchoConn { + EchoConn { +@@ -96,12 +94,11 @@ impl EchoServer { + + let sock = self.sock.accept().unwrap().0; + let conn = EchoConn::new(sock,); +- let tok = self.conns.insert(conn) +- .ok().expect("could not add connection to slab"); ++ let tok = self.conns.insert(conn); + + // Register the connection +- self.conns[tok].token = Some(tok); +- poll.register(&self.conns[tok].sock, tok, Ready::readable(), ++ self.conns[tok].token = Some(Token(tok)); ++ poll.register(&self.conns[tok].sock, Token(tok), Ready::readable(), + PollOpt::edge() | PollOpt::oneshot()) + .ok().expect("could not register socket with event loop"); + +@@ -121,7 +118,7 @@ impl EchoServer { + } + + fn conn<'a>(&'a mut self, tok: Token) -> &'a mut EchoConn { +- &mut self.conns[tok] ++ &mut self.conns[tok.into()] + } + } + +diff --git a/test/test_uds_shutdown.rs b/test/test_uds_shutdown.rs +index 0339c71..58d2431 100644 +--- a/test/test_uds_shutdown.rs ++++ b/test/test_uds_shutdown.rs +@@ -3,7 +3,7 @@ use mio::*; + use mio::deprecated::{EventLoop, Handler}; + use mio::deprecated::unix::*; + use bytes::{Buf, ByteBuf, MutByteBuf, SliceBuf}; +-use slab; ++use slab::Slab; + use std::io; + use std::path::PathBuf; + use tempdir::TempDir; +@@ -19,8 +19,6 @@ struct EchoConn { + interest: Ready + } + +-type Slab = slab::Slab; +- + impl EchoConn { + fn new(sock: UnixStream) -> EchoConn { + EchoConn { +@@ -101,12 +99,11 @@ impl EchoServer { + + let sock = self.sock.accept().unwrap(); + let conn = EchoConn::new(sock,); +- let tok = self.conns.insert(conn) +- .ok().expect("could not add connection to slab"); ++ let tok = self.conns.insert(conn); + + // Register the connection +- self.conns[tok].token = Some(tok); +- event_loop.register(&self.conns[tok].sock, tok, Ready::readable(), ++ self.conns[tok].token = Some(Token(tok)); ++ event_loop.register(&self.conns[tok].sock, Token(tok), Ready::readable(), + PollOpt::edge() | PollOpt::oneshot()) + .ok().expect("could not register socket with event loop"); + +@@ -126,7 +123,7 @@ impl EchoServer { + } + + fn conn<'a>(&'a mut self, tok: Token) -> &'a mut EchoConn { +- &mut self.conns[tok] ++ &mut self.conns[tok.into()] + } + } + +diff --git a/test/test_unix_echo_server.rs b/test/test_unix_echo_server.rs +index ea64815..6f3dd4b 100644 +--- a/test/test_unix_echo_server.rs ++++ b/test/test_unix_echo_server.rs +@@ -3,7 +3,7 @@ use mio::*; + use mio::deprecated::{EventLoop, Handler}; + use mio::deprecated::unix::*; + use bytes::{Buf, ByteBuf, MutByteBuf, SliceBuf}; +-use slab; ++use slab::Slab; + use std::path::PathBuf; + use std::io; + use tempdir::TempDir; +@@ -19,8 +19,6 @@ struct EchoConn { + interest: Ready, + } + +-type Slab = slab::Slab; +- + impl EchoConn { + fn new(sock: UnixStream) -> EchoConn { + EchoConn { +@@ -96,12 +94,11 @@ impl EchoServer { + + let sock = self.sock.accept().unwrap(); + let conn = EchoConn::new(sock); +- let tok = self.conns.insert(conn) +- .ok().expect("could not add connection to slab"); ++ let tok = self.conns.insert(conn); + + // Register the connection +- self.conns[tok].token = Some(tok); +- event_loop.register(&self.conns[tok].sock, tok, Ready::readable(), PollOpt::edge() | PollOpt::oneshot()) ++ self.conns[tok].token = Some(Token(tok)); ++ event_loop.register(&self.conns[tok].sock, Token(tok), Ready::readable(), PollOpt::edge() | PollOpt::oneshot()) + .ok().expect("could not register socket with event loop"); + + Ok(()) +@@ -118,7 +115,7 @@ impl EchoServer { + } + + fn conn<'a>(&'a mut self, tok: Token) -> &'a mut EchoConn { +- &mut self.conns[tok] ++ &mut self.conns[tok.into()] + } + } + +diff --git a/test/test_unix_pass_fd.rs b/test/test_unix_pass_fd.rs +index b62f56e..f43ec22 100644 +--- a/test/test_unix_pass_fd.rs ++++ b/test/test_unix_pass_fd.rs +@@ -3,7 +3,7 @@ use mio::*; + use mio::deprecated::{EventLoop, Handler}; + use mio::deprecated::unix::*; + use bytes::{Buf, ByteBuf, SliceBuf}; +-use slab; ++use slab::Slab; + use std::path::PathBuf; + use std::io::{self, Read}; + use std::os::unix::io::{AsRawFd, FromRawFd}; +@@ -19,8 +19,6 @@ struct EchoConn { + interest: Ready, + } + +-type Slab = slab::Slab; +- + impl EchoConn { + fn new(sock: UnixStream) -> EchoConn { + EchoConn { +@@ -107,12 +105,11 @@ impl EchoServer { + + let sock = self.sock.accept().unwrap(); + let conn = EchoConn::new(sock); +- let tok = self.conns.insert(conn) +- .ok().expect("could not add connection to slab"); ++ let tok = self.conns.insert(conn); + + // Register the connection +- self.conns[tok].token = Some(tok); +- event_loop.register(&self.conns[tok].sock, tok, Ready::readable(), PollOpt::edge() | PollOpt::oneshot()) ++ self.conns[tok].token = Some(Token(tok)); ++ event_loop.register(&self.conns[tok].sock, Token(tok), Ready::readable(), PollOpt::edge() | PollOpt::oneshot()) + .ok().expect("could not register socket with event loop"); + + Ok(()) +@@ -129,7 +126,7 @@ impl EchoServer { + } + + fn conn<'a>(&'a mut self, tok: Token) -> &'a mut EchoConn { +- &mut self.conns[tok] ++ &mut self.conns[tok.into()] + } + } + +-- +2.15.1 + diff --git a/mio-0.6.12-fix-metadata.diff b/mio-0.6.12-fix-metadata.diff new file mode 100644 index 0000000..0b249b0 --- /dev/null +++ b/mio-0.6.12-fix-metadata.diff @@ -0,0 +1,30 @@ +--- mio-0.6.12/Cargo.toml 1970-01-01T01:00:00+01:00 ++++ mio-0.6.12/Cargo.toml 2018-01-12T23:42:45.103287+01:00 +@@ -40,7 +40,7 @@ + version = "0.2.29" + + [dependencies.slab] +-version = "0.3.0" ++version = "0.4.0" + [dev-dependencies.bytes] + version = "0.3.0" + +@@ -54,18 +54,5 @@ + [features] + default = ["with-deprecated"] + with-deprecated = [] +-[target."cfg(target_os = \"fuchsia\")".dependencies.fuchsia-zircon] +-version = "0.3.2" +- +-[target."cfg(target_os = \"fuchsia\")".dependencies.fuchsia-zircon-sys] +-version = "0.3.2" + [target."cfg(unix)".dependencies.libc] + version = "0.2.19" +-[target."cfg(windows)".dependencies.kernel32-sys] +-version = "0.2" +- +-[target."cfg(windows)".dependencies.miow] +-version = "0.2.1" +- +-[target."cfg(windows)".dependencies.winapi] +-version = "0.2.1" diff --git a/rust-mio.spec b/rust-mio.spec new file mode 100644 index 0000000..4272fe4 --- /dev/null +++ b/rust-mio.spec @@ -0,0 +1,83 @@ +# Generated by rust2rpm +# Doctests require networking +%bcond_without check +%global debug_package %{nil} + +%global crate mio + +Name: rust-%{crate} +Version: 0.6.12 +Release: 1%{?dist} +Summary: Lightweight non-blocking IO + +License: MIT +URL: https://crates.io/crates/mio +Source0: https://crates.io/api/v1/crates/%{crate}/%{version}/download#/%{crate}-%{version}.crate +# Initial patched metadata +# * No windows +# * No weird OS +# * Bump slab to 0.4, https://github.com/carllerche/mio/pull/768 +Patch0: mio-0.6.12-fix-metadata.diff +# Make it work with slab v0.4 +Patch1: 0001-deps-update-slab-to-0.4.patch + +ExclusiveArch: %{rust_arches} + +BuildRequires: rust-packaging +# [dependencies] +BuildRequires: (crate(iovec) >= 0.1.1 with crate(iovec) < 0.2.0) +BuildRequires: (crate(lazycell) >= 0.6.0 with crate(lazycell) < 0.7.0) +BuildRequires: (crate(libc) >= 0.2.19 with crate(libc) < 0.3.0) +BuildRequires: (crate(log) >= 0.3.1 with crate(log) < 0.4.0) +BuildRequires: (crate(net2) >= 0.2.29 with crate(net2) < 0.3.0) +BuildRequires: (crate(slab) >= 0.4.0 with crate(slab) < 0.5.0) +%if %{with check} +# [dev-dependencies] +BuildRequires: (crate(bytes) >= 0.3.0 with crate(bytes) < 0.4.0) +BuildRequires: (crate(env_logger) >= 0.4.0 with crate(env_logger) < 0.5.0) +BuildRequires: (crate(tempdir) >= 0.3.4 with crate(tempdir) < 0.4.0) +%endif + +%description +%{summary}. + +%package devel +Summary: %{summary} +BuildArch: noarch + +%description devel +Lightweight non-blocking IO. + +This package contains library source intended for building other packages +which use %{crate} from crates.io. + +%prep +%autosetup -n %{crate}-%{version} -p1 +%cargo_prep + +%build +%cargo_build + +%install +%cargo_install + +%if %{with check} +%check +%cargo_test +%endif + +%files devel +%license LICENSE +%doc README.md CHANGELOG.md +%{cargo_registry}/%{crate}-%{version}/ +%exclude %{cargo_registry}/%{crate}-%{version}/{appveyor.yml,ci} + +%changelog +* Wed Jan 10 2018 Igor Gnatenko - 0.6.12-1 +- Update to 0.6.12 + +* Fri Dec 01 2017 Igor Gnatenko - 0.6.11-1 +- Update to 0.6.11 + +* Fri Jun 16 2017 Igor Gnatenko - 0.6.9-1 +- Initial package diff --git a/sources b/sources new file mode 100644 index 0000000..1d8e57c --- /dev/null +++ b/sources @@ -0,0 +1 @@ +SHA512 (mio-0.6.12.crate) = e2a9dd4a731596d2203a152ea2e0597d93f66139bf0b8eef1b1bd8fb36b0fc2dcfd1aba156af95e136a87173b6e4d25852c2175682b342525aa979b99189b7c1 From cf763eb84bdbc0c806b245dc72b7c83031f6065a Mon Sep 17 00:00:00 2001 From: Josh Stone Date: Tue, 6 Feb 2018 22:43:22 -0800 Subject: [PATCH 03/19] Update to 0.6.13 --- .gitignore | 1 + rust-mio.spec | 5 ++++- sources | 2 +- 3 files changed, 6 insertions(+), 2 deletions(-) diff --git a/.gitignore b/.gitignore index 4ee5f10..fdcf6c9 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1,2 @@ /mio-0.6.12.crate +/mio-0.6.13.crate diff --git a/rust-mio.spec b/rust-mio.spec index 4272fe4..918bfd7 100644 --- a/rust-mio.spec +++ b/rust-mio.spec @@ -6,7 +6,7 @@ %global crate mio Name: rust-%{crate} -Version: 0.6.12 +Version: 0.6.13 Release: 1%{?dist} Summary: Lightweight non-blocking IO @@ -73,6 +73,9 @@ which use %{crate} from crates.io. %exclude %{cargo_registry}/%{crate}-%{version}/{appveyor.yml,ci} %changelog +* Wed Feb 07 2018 Josh Stone - 0.6.13-1 +- Update to 0.6.13 + * Wed Jan 10 2018 Igor Gnatenko - 0.6.12-1 - Update to 0.6.12 diff --git a/sources b/sources index 1d8e57c..d90cff2 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (mio-0.6.12.crate) = e2a9dd4a731596d2203a152ea2e0597d93f66139bf0b8eef1b1bd8fb36b0fc2dcfd1aba156af95e136a87173b6e4d25852c2175682b342525aa979b99189b7c1 +SHA512 (mio-0.6.13.crate) = 6b3ef5964fcf1d7b0a202a9767975746656a517f3c39e1f80bd783058d2786911fac4d99d33ed85d2fee5155bda640fd9cb5f2fe09fee85391f715c4c3eb9729 From ae1cc9b42faaa2f65da1bac7e92c8a60f2f96399 Mon Sep 17 00:00:00 2001 From: Josh Stone Date: Thu, 8 Mar 2018 21:21:48 -0800 Subject: [PATCH 04/19] Update to 0.6.14 --- .gitignore | 1 + 0001-deps-update-slab-to-0.4.patch | 427 ------------------ ...adata.diff => mio-0.6.14-fix-metadata.diff | 17 +- rust-mio.spec | 15 +- sources | 2 +- 5 files changed, 13 insertions(+), 449 deletions(-) delete mode 100644 0001-deps-update-slab-to-0.4.patch rename mio-0.6.12-fix-metadata.diff => mio-0.6.14-fix-metadata.diff (64%) diff --git a/.gitignore b/.gitignore index fdcf6c9..90ce968 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,3 @@ /mio-0.6.12.crate /mio-0.6.13.crate +/mio-0.6.14.crate diff --git a/0001-deps-update-slab-to-0.4.patch b/0001-deps-update-slab-to-0.4.patch deleted file mode 100644 index cf9c2fa..0000000 --- a/0001-deps-update-slab-to-0.4.patch +++ /dev/null @@ -1,427 +0,0 @@ -From e327ff6cbdabcd4953bc551590c6e70384b1caf8 Mon Sep 17 00:00:00 2001 -From: Igor Gnatenko -Date: Wed, 10 Jan 2018 13:20:09 +0100 -Subject: [PATCH] deps: update slab to 0.4 - -Signed-off-by: Igor Gnatenko ---- - src/lib.rs | 1 + - src/timer.rs | 74 ++++++++----------------------------------- - test/test_battery.rs | 13 +++----- - test/test_echo_server.rs | 13 +++----- - test/test_uds_shutdown.rs | 13 +++----- - test/test_unix_echo_server.rs | 13 +++----- - test/test_unix_pass_fd.rs | 13 +++----- - 7 files changed, 39 insertions(+), 101 deletions(-) - -diff --git a/src/lib.rs b/src/lib.rs -index a0ce92a..3d04516 100644 ---- a/src/lib.rs -+++ b/src/lib.rs -@@ -83,6 +83,7 @@ - extern crate lazycell; - extern crate net2; - extern crate iovec; -+extern crate slab; - - #[cfg(target_os = "fuchsia")] - extern crate fuchsia_zircon as zircon; -diff --git a/src/timer.rs b/src/timer.rs -index 3d9a4f6..c77e37f 100644 ---- a/src/timer.rs -+++ b/src/timer.rs -@@ -2,18 +2,15 @@ - - #![allow(deprecated, missing_debug_implementations)] - --extern crate slab; -- - use {convert, io, Ready, Poll, PollOpt, Registration, SetReadiness, Token}; - use event::Evented; - use lazycell::LazyCell; --use std::{cmp, error, fmt, u64, usize, iter, thread}; -+use slab::Slab; -+use std::{cmp, fmt, u64, usize, iter, thread}; - use std::sync::Arc; - use std::sync::atomic::{AtomicUsize, Ordering}; - use std::time::{Duration, Instant}; - --use self::TimerErrorKind::TimerOverflow; -- - pub struct Timer { - // Size of each tick in milliseconds - tick_ms: u64, -@@ -94,24 +91,9 @@ const TICK_MAX: Tick = u64::MAX; - // Manages communication with wakeup thread - type WakeupState = Arc; - --type Slab = slab::Slab; -- --pub type Result = ::std::result::Result; -+pub type Result = ::std::result::Result; - // TODO: remove - pub type TimerResult = Result; -- -- --#[derive(Debug)] --pub struct TimerError { -- kind: TimerErrorKind, -- desc: &'static str, --} -- --#[derive(Debug)] --pub enum TimerErrorKind { -- TimerOverflow, --} -- - // TODO: Remove - pub type OldTimerResult = Result; - -@@ -192,13 +174,13 @@ impl Timer { - let curr = self.wheel[slot]; - - // Insert the new entry -- let token = self.entries.insert(Entry::new(state, tick, curr.head)) -- .map_err(|_| TimerError::overflow())?; -+ let entry = Entry::new(state, tick, curr.head); -+ let token = Token(self.entries.insert(entry)); - - if curr.head != EMPTY { - // If there was a previous entry, set its prev pointer to the new - // entry -- self.entries[curr.head].links.prev = token; -+ self.entries[curr.head.into()].links.prev = token; - } - - // Update the head slot -@@ -219,7 +201,7 @@ impl Timer { - } - - pub fn cancel_timeout(&mut self, timeout: &Timeout) -> Option { -- let links = match self.entries.get(timeout.token) { -+ let links = match self.entries.get(timeout.token.into()) { - Some(e) => e.links, - None => return None - }; -@@ -230,7 +212,7 @@ impl Timer { - } - - self.unlink(&links, timeout.token); -- self.entries.remove(timeout.token).map(|e| e.state) -+ Some(self.entries.remove(timeout.token.into()).state) - } - - pub fn poll(&mut self) -> Option { -@@ -271,7 +253,7 @@ impl Timer { - self.wheel[slot].next_tick = TICK_MAX; - } - -- let links = self.entries[curr].links; -+ let links = self.entries[curr.into()].links; - - if links.tick <= self.tick { - trace!("triggering; token={:?}", curr); -@@ -280,8 +262,7 @@ impl Timer { - self.unlink(&links, curr); - - // Remove and return the token -- return self.entries.remove(curr) -- .map(|e| e.state); -+ return Some(self.entries.remove(curr.into()).state); - } else { - let next_tick = self.wheel[slot].next_tick; - self.wheel[slot].next_tick = cmp::min(next_tick, links.tick); -@@ -311,11 +292,11 @@ impl Timer { - let slot = self.slot_for(links.tick); - self.wheel[slot].head = links.next; - } else { -- self.entries[links.prev].links.next = links.next; -+ self.entries[links.prev.into()].links.next = links.next; - } - - if links.next != EMPTY { -- self.entries[links.next].links.prev = links.prev; -+ self.entries[links.next.into()].links.prev = links.prev; - - if token == self.next { - self.next = links.next; -@@ -356,7 +337,7 @@ impl Timer { - // Next tick containing a timeout - fn next_tick(&self) -> Option { - if self.next != EMPTY { -- let slot = self.slot_for(self.entries[self.next].links.tick); -+ let slot = self.slot_for(self.entries[self.next.into()].links.tick); - - if self.wheel[slot].next_tick == self.tick { - // There is data ready right now -@@ -497,32 +478,3 @@ impl Entry { - } - } - } -- --impl fmt::Display for TimerError { -- fn fmt(&self, fmt: &mut fmt::Formatter) -> fmt::Result { -- write!(fmt, "{}: {}", self.kind, self.desc) -- } --} -- --impl TimerError { -- fn overflow() -> TimerError { -- TimerError { -- kind: TimerOverflow, -- desc: "too many timer entries" -- } -- } --} -- --impl error::Error for TimerError { -- fn description(&self) -> &str { -- self.desc -- } --} -- --impl fmt::Display for TimerErrorKind { -- fn fmt(&self, fmt: &mut fmt::Formatter) -> fmt::Result { -- match *self { -- TimerOverflow => write!(fmt, "TimerOverflow"), -- } -- } --} -diff --git a/test/test_battery.rs b/test/test_battery.rs -index 3976071..d918196 100644 ---- a/test/test_battery.rs -+++ b/test/test_battery.rs -@@ -3,7 +3,7 @@ use mio::*; - use mio::deprecated::{EventLoop, EventLoopBuilder, Handler}; - use mio::net::{TcpListener, TcpStream}; - use std::collections::LinkedList; --use slab; -+use slab::Slab; - use std::{io, thread}; - use std::time::Duration; - -@@ -23,8 +23,6 @@ struct EchoConn { - buf: Vec - } - --type Slab = slab::Slab; -- - impl EchoConn { - fn new(sock: TcpStream) -> EchoConn { - let mut ec = -@@ -81,12 +79,11 @@ impl EchoServer { - - let sock = self.sock.accept().unwrap().0; - let conn = EchoConn::new(sock,); -- let tok = self.conns.insert(conn) -- .ok().expect("could not add connection to slab"); -+ let tok = self.conns.insert(conn); - - // Register the connection -- self.conns[tok].token = Some(tok); -- event_loop.register(&self.conns[tok].sock, tok, Ready::readable(), -+ self.conns[tok].token = Some(Token(tok)); -+ event_loop.register(&self.conns[tok].sock, Token(tok), Ready::readable(), - PollOpt::edge() | PollOpt::oneshot()) - .ok().expect("could not register socket with event loop"); - -@@ -106,7 +103,7 @@ impl EchoServer { - } - - fn conn<'a>(&'a mut self, tok: Token) -> &'a mut EchoConn { -- &mut self.conns[tok] -+ &mut self.conns[tok.into()] - } - } - -diff --git a/test/test_echo_server.rs b/test/test_echo_server.rs -index 6d2a84b..c0eda94 100644 ---- a/test/test_echo_server.rs -+++ b/test/test_echo_server.rs -@@ -2,7 +2,7 @@ use {localhost, TryRead, TryWrite}; - use mio::{Events, Poll, PollOpt, Ready, Token}; - use mio::net::{TcpListener, TcpStream}; - use bytes::{Buf, ByteBuf, MutByteBuf, SliceBuf}; --use slab; -+use slab::Slab; - use std::io; - - const SERVER: Token = Token(10_000_000); -@@ -16,8 +16,6 @@ struct EchoConn { - interest: Ready - } - --type Slab = slab::Slab; -- - impl EchoConn { - fn new(sock: TcpStream) -> EchoConn { - EchoConn { -@@ -96,12 +94,11 @@ impl EchoServer { - - let sock = self.sock.accept().unwrap().0; - let conn = EchoConn::new(sock,); -- let tok = self.conns.insert(conn) -- .ok().expect("could not add connection to slab"); -+ let tok = self.conns.insert(conn); - - // Register the connection -- self.conns[tok].token = Some(tok); -- poll.register(&self.conns[tok].sock, tok, Ready::readable(), -+ self.conns[tok].token = Some(Token(tok)); -+ poll.register(&self.conns[tok].sock, Token(tok), Ready::readable(), - PollOpt::edge() | PollOpt::oneshot()) - .ok().expect("could not register socket with event loop"); - -@@ -121,7 +118,7 @@ impl EchoServer { - } - - fn conn<'a>(&'a mut self, tok: Token) -> &'a mut EchoConn { -- &mut self.conns[tok] -+ &mut self.conns[tok.into()] - } - } - -diff --git a/test/test_uds_shutdown.rs b/test/test_uds_shutdown.rs -index 0339c71..58d2431 100644 ---- a/test/test_uds_shutdown.rs -+++ b/test/test_uds_shutdown.rs -@@ -3,7 +3,7 @@ use mio::*; - use mio::deprecated::{EventLoop, Handler}; - use mio::deprecated::unix::*; - use bytes::{Buf, ByteBuf, MutByteBuf, SliceBuf}; --use slab; -+use slab::Slab; - use std::io; - use std::path::PathBuf; - use tempdir::TempDir; -@@ -19,8 +19,6 @@ struct EchoConn { - interest: Ready - } - --type Slab = slab::Slab; -- - impl EchoConn { - fn new(sock: UnixStream) -> EchoConn { - EchoConn { -@@ -101,12 +99,11 @@ impl EchoServer { - - let sock = self.sock.accept().unwrap(); - let conn = EchoConn::new(sock,); -- let tok = self.conns.insert(conn) -- .ok().expect("could not add connection to slab"); -+ let tok = self.conns.insert(conn); - - // Register the connection -- self.conns[tok].token = Some(tok); -- event_loop.register(&self.conns[tok].sock, tok, Ready::readable(), -+ self.conns[tok].token = Some(Token(tok)); -+ event_loop.register(&self.conns[tok].sock, Token(tok), Ready::readable(), - PollOpt::edge() | PollOpt::oneshot()) - .ok().expect("could not register socket with event loop"); - -@@ -126,7 +123,7 @@ impl EchoServer { - } - - fn conn<'a>(&'a mut self, tok: Token) -> &'a mut EchoConn { -- &mut self.conns[tok] -+ &mut self.conns[tok.into()] - } - } - -diff --git a/test/test_unix_echo_server.rs b/test/test_unix_echo_server.rs -index ea64815..6f3dd4b 100644 ---- a/test/test_unix_echo_server.rs -+++ b/test/test_unix_echo_server.rs -@@ -3,7 +3,7 @@ use mio::*; - use mio::deprecated::{EventLoop, Handler}; - use mio::deprecated::unix::*; - use bytes::{Buf, ByteBuf, MutByteBuf, SliceBuf}; --use slab; -+use slab::Slab; - use std::path::PathBuf; - use std::io; - use tempdir::TempDir; -@@ -19,8 +19,6 @@ struct EchoConn { - interest: Ready, - } - --type Slab = slab::Slab; -- - impl EchoConn { - fn new(sock: UnixStream) -> EchoConn { - EchoConn { -@@ -96,12 +94,11 @@ impl EchoServer { - - let sock = self.sock.accept().unwrap(); - let conn = EchoConn::new(sock); -- let tok = self.conns.insert(conn) -- .ok().expect("could not add connection to slab"); -+ let tok = self.conns.insert(conn); - - // Register the connection -- self.conns[tok].token = Some(tok); -- event_loop.register(&self.conns[tok].sock, tok, Ready::readable(), PollOpt::edge() | PollOpt::oneshot()) -+ self.conns[tok].token = Some(Token(tok)); -+ event_loop.register(&self.conns[tok].sock, Token(tok), Ready::readable(), PollOpt::edge() | PollOpt::oneshot()) - .ok().expect("could not register socket with event loop"); - - Ok(()) -@@ -118,7 +115,7 @@ impl EchoServer { - } - - fn conn<'a>(&'a mut self, tok: Token) -> &'a mut EchoConn { -- &mut self.conns[tok] -+ &mut self.conns[tok.into()] - } - } - -diff --git a/test/test_unix_pass_fd.rs b/test/test_unix_pass_fd.rs -index b62f56e..f43ec22 100644 ---- a/test/test_unix_pass_fd.rs -+++ b/test/test_unix_pass_fd.rs -@@ -3,7 +3,7 @@ use mio::*; - use mio::deprecated::{EventLoop, Handler}; - use mio::deprecated::unix::*; - use bytes::{Buf, ByteBuf, SliceBuf}; --use slab; -+use slab::Slab; - use std::path::PathBuf; - use std::io::{self, Read}; - use std::os::unix::io::{AsRawFd, FromRawFd}; -@@ -19,8 +19,6 @@ struct EchoConn { - interest: Ready, - } - --type Slab = slab::Slab; -- - impl EchoConn { - fn new(sock: UnixStream) -> EchoConn { - EchoConn { -@@ -107,12 +105,11 @@ impl EchoServer { - - let sock = self.sock.accept().unwrap(); - let conn = EchoConn::new(sock); -- let tok = self.conns.insert(conn) -- .ok().expect("could not add connection to slab"); -+ let tok = self.conns.insert(conn); - - // Register the connection -- self.conns[tok].token = Some(tok); -- event_loop.register(&self.conns[tok].sock, tok, Ready::readable(), PollOpt::edge() | PollOpt::oneshot()) -+ self.conns[tok].token = Some(Token(tok)); -+ event_loop.register(&self.conns[tok].sock, Token(tok), Ready::readable(), PollOpt::edge() | PollOpt::oneshot()) - .ok().expect("could not register socket with event loop"); - - Ok(()) -@@ -129,7 +126,7 @@ impl EchoServer { - } - - fn conn<'a>(&'a mut self, tok: Token) -> &'a mut EchoConn { -- &mut self.conns[tok] -+ &mut self.conns[tok.into()] - } - } - --- -2.15.1 - diff --git a/mio-0.6.12-fix-metadata.diff b/mio-0.6.14-fix-metadata.diff similarity index 64% rename from mio-0.6.12-fix-metadata.diff rename to mio-0.6.14-fix-metadata.diff index 0b249b0..11a8860 100644 --- a/mio-0.6.12-fix-metadata.diff +++ b/mio-0.6.14-fix-metadata.diff @@ -1,21 +1,12 @@ ---- mio-0.6.12/Cargo.toml 1970-01-01T01:00:00+01:00 -+++ mio-0.6.12/Cargo.toml 2018-01-12T23:42:45.103287+01:00 -@@ -40,7 +40,7 @@ - version = "0.2.29" - - [dependencies.slab] --version = "0.3.0" -+version = "0.4.0" - [dev-dependencies.bytes] - version = "0.3.0" - -@@ -54,18 +54,5 @@ +--- mio-0.6.14/Cargo.toml 1969-12-31T16:00:00-08:00 ++++ mio-0.6.14/Cargo.toml 2018-03-08T21:17:29.785886-08:00 +@@ -54,18 +54,6 @@ [features] default = ["with-deprecated"] with-deprecated = [] -[target."cfg(target_os = \"fuchsia\")".dependencies.fuchsia-zircon] -version = "0.3.2" -- + -[target."cfg(target_os = \"fuchsia\")".dependencies.fuchsia-zircon-sys] -version = "0.3.2" [target."cfg(unix)".dependencies.libc] diff --git a/rust-mio.spec b/rust-mio.spec index 918bfd7..6f8a8fd 100644 --- a/rust-mio.spec +++ b/rust-mio.spec @@ -6,7 +6,7 @@ %global crate mio Name: rust-%{crate} -Version: 0.6.13 +Version: 0.6.14 Release: 1%{?dist} Summary: Lightweight non-blocking IO @@ -14,12 +14,8 @@ License: MIT URL: https://crates.io/crates/mio Source0: https://crates.io/api/v1/crates/%{crate}/%{version}/download#/%{crate}-%{version}.crate # Initial patched metadata -# * No windows -# * No weird OS -# * Bump slab to 0.4, https://github.com/carllerche/mio/pull/768 -Patch0: mio-0.6.12-fix-metadata.diff -# Make it work with slab v0.4 -Patch1: 0001-deps-update-slab-to-0.4.patch +# * No windows or fuchsia +Patch0: mio-0.6.14-fix-metadata.diff ExclusiveArch: %{rust_arches} @@ -28,7 +24,7 @@ BuildRequires: rust-packaging BuildRequires: (crate(iovec) >= 0.1.1 with crate(iovec) < 0.2.0) BuildRequires: (crate(lazycell) >= 0.6.0 with crate(lazycell) < 0.7.0) BuildRequires: (crate(libc) >= 0.2.19 with crate(libc) < 0.3.0) -BuildRequires: (crate(log) >= 0.3.1 with crate(log) < 0.4.0) +BuildRequires: (crate(log) >= 0.4.0 with crate(log) < 0.5.0) BuildRequires: (crate(net2) >= 0.2.29 with crate(net2) < 0.3.0) BuildRequires: (crate(slab) >= 0.4.0 with crate(slab) < 0.5.0) %if %{with check} @@ -73,6 +69,9 @@ which use %{crate} from crates.io. %exclude %{cargo_registry}/%{crate}-%{version}/{appveyor.yml,ci} %changelog +* Fri Mar 09 2018 Josh Stone - 0.6.14-1 +- Update to 0.6.14 + * Wed Feb 07 2018 Josh Stone - 0.6.13-1 - Update to 0.6.13 diff --git a/sources b/sources index d90cff2..0ea7490 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (mio-0.6.13.crate) = 6b3ef5964fcf1d7b0a202a9767975746656a517f3c39e1f80bd783058d2786911fac4d99d33ed85d2fee5155bda640fd9cb5f2fe09fee85391f715c4c3eb9729 +SHA512 (mio-0.6.14.crate) = 37b45856d74cd03cdaeb015dfca85065a04175568cda985e59bb0e4b2ca85523d52789d8e9cc2f5336e6a346d2ed50c2bdfe078ed4953613e95ca8d52dd90bb1 From efb9f07d80f660767b0b1b6c7e953d90e63fbfb5 Mon Sep 17 00:00:00 2001 From: Igor Gnatenko Date: Fri, 15 Jun 2018 14:11:04 +0200 Subject: [PATCH 05/19] Bump lazycell to 1 Signed-off-by: Igor Gnatenko --- mio-0.6.14-fix-metadata.diff | 17 +++++++++++++---- rust-mio.spec | 8 ++++++-- 2 files changed, 19 insertions(+), 6 deletions(-) diff --git a/mio-0.6.14-fix-metadata.diff b/mio-0.6.14-fix-metadata.diff index 11a8860..b6b9a6c 100644 --- a/mio-0.6.14-fix-metadata.diff +++ b/mio-0.6.14-fix-metadata.diff @@ -1,12 +1,21 @@ ---- mio-0.6.14/Cargo.toml 1969-12-31T16:00:00-08:00 -+++ mio-0.6.14/Cargo.toml 2018-03-08T21:17:29.785886-08:00 -@@ -54,18 +54,6 @@ +--- mio-0.6.14/Cargo.toml 1970-01-01T01:00:00+01:00 ++++ mio-0.6.14/Cargo.toml 2018-06-15T14:11:29.841047+02:00 +@@ -31,7 +31,7 @@ + version = "0.1.1" + + [dependencies.lazycell] +-version = "0.6.0" ++version = "1" + + [dependencies.log] + version = "0.4" +@@ -54,18 +54,5 @@ [features] default = ["with-deprecated"] with-deprecated = [] -[target."cfg(target_os = \"fuchsia\")".dependencies.fuchsia-zircon] -version = "0.3.2" - +- -[target."cfg(target_os = \"fuchsia\")".dependencies.fuchsia-zircon-sys] -version = "0.3.2" [target."cfg(unix)".dependencies.libc] diff --git a/rust-mio.spec b/rust-mio.spec index 6f8a8fd..c585130 100644 --- a/rust-mio.spec +++ b/rust-mio.spec @@ -7,7 +7,7 @@ Name: rust-%{crate} Version: 0.6.14 -Release: 1%{?dist} +Release: 2%{?dist} Summary: Lightweight non-blocking IO License: MIT @@ -15,6 +15,7 @@ URL: https://crates.io/crates/mio Source0: https://crates.io/api/v1/crates/%{crate}/%{version}/download#/%{crate}-%{version}.crate # Initial patched metadata # * No windows or fuchsia +# * Bump lazycell to 1, https://github.com/carllerche/mio/pull/847 Patch0: mio-0.6.14-fix-metadata.diff ExclusiveArch: %{rust_arches} @@ -22,7 +23,7 @@ ExclusiveArch: %{rust_arches} BuildRequires: rust-packaging # [dependencies] BuildRequires: (crate(iovec) >= 0.1.1 with crate(iovec) < 0.2.0) -BuildRequires: (crate(lazycell) >= 0.6.0 with crate(lazycell) < 0.7.0) +BuildRequires: (crate(lazycell) >= 1.0.0 with crate(lazycell) < 2.0.0) BuildRequires: (crate(libc) >= 0.2.19 with crate(libc) < 0.3.0) BuildRequires: (crate(log) >= 0.4.0 with crate(log) < 0.5.0) BuildRequires: (crate(net2) >= 0.2.29 with crate(net2) < 0.3.0) @@ -69,6 +70,9 @@ which use %{crate} from crates.io. %exclude %{cargo_registry}/%{crate}-%{version}/{appveyor.yml,ci} %changelog +* Fri Jun 15 2018 Igor Gnatenko - 0.6.14-2 +- Bump lazycell to 1 + * Fri Mar 09 2018 Josh Stone - 0.6.14-1 - Update to 0.6.14 From 34848fb1f53929f894627370fa826d124be8fe44 Mon Sep 17 00:00:00 2001 From: Josh Stone Date: Tue, 10 Jul 2018 21:32:13 -0700 Subject: [PATCH 06/19] Update to 0.6.15 --- .gitignore | 1 + ...-fix-metadata.diff => mio-0.6.15-fix-metadata.diff | 8 ++++---- rust-mio.spec | 11 +++++++---- sources | 2 +- 4 files changed, 13 insertions(+), 9 deletions(-) rename mio-0.6.14-fix-metadata.diff => mio-0.6.15-fix-metadata.diff (80%) diff --git a/.gitignore b/.gitignore index 90ce968..15bbba8 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,4 @@ /mio-0.6.12.crate /mio-0.6.13.crate /mio-0.6.14.crate +/mio-0.6.15.crate diff --git a/mio-0.6.14-fix-metadata.diff b/mio-0.6.15-fix-metadata.diff similarity index 80% rename from mio-0.6.14-fix-metadata.diff rename to mio-0.6.15-fix-metadata.diff index b6b9a6c..c207025 100644 --- a/mio-0.6.14-fix-metadata.diff +++ b/mio-0.6.15-fix-metadata.diff @@ -1,5 +1,5 @@ ---- mio-0.6.14/Cargo.toml 1970-01-01T01:00:00+01:00 -+++ mio-0.6.14/Cargo.toml 2018-06-15T14:11:29.841047+02:00 +--- mio-0.6.15/Cargo.toml 1969-12-31T16:00:00-08:00 ++++ mio-0.6.15/Cargo.toml 2018-07-10T21:27:46.009651-07:00 @@ -31,7 +31,7 @@ version = "0.1.1" @@ -19,7 +19,7 @@ -[target."cfg(target_os = \"fuchsia\")".dependencies.fuchsia-zircon-sys] -version = "0.3.2" [target."cfg(unix)".dependencies.libc] - version = "0.2.19" + version = "0.2.42" -[target."cfg(windows)".dependencies.kernel32-sys] -version = "0.2" - @@ -27,4 +27,4 @@ -version = "0.2.1" - -[target."cfg(windows)".dependencies.winapi] --version = "0.2.1" +-version = "0.2.6" diff --git a/rust-mio.spec b/rust-mio.spec index c585130..ca8c17a 100644 --- a/rust-mio.spec +++ b/rust-mio.spec @@ -6,8 +6,8 @@ %global crate mio Name: rust-%{crate} -Version: 0.6.14 -Release: 2%{?dist} +Version: 0.6.15 +Release: 1%{?dist} Summary: Lightweight non-blocking IO License: MIT @@ -16,7 +16,7 @@ Source0: https://crates.io/api/v1/crates/%{crate}/%{version}/download#/%{ # Initial patched metadata # * No windows or fuchsia # * Bump lazycell to 1, https://github.com/carllerche/mio/pull/847 -Patch0: mio-0.6.14-fix-metadata.diff +Patch0: mio-0.6.15-fix-metadata.diff ExclusiveArch: %{rust_arches} @@ -24,7 +24,7 @@ BuildRequires: rust-packaging # [dependencies] BuildRequires: (crate(iovec) >= 0.1.1 with crate(iovec) < 0.2.0) BuildRequires: (crate(lazycell) >= 1.0.0 with crate(lazycell) < 2.0.0) -BuildRequires: (crate(libc) >= 0.2.19 with crate(libc) < 0.3.0) +BuildRequires: (crate(libc) >= 0.2.42 with crate(libc) < 0.3.0) BuildRequires: (crate(log) >= 0.4.0 with crate(log) < 0.5.0) BuildRequires: (crate(net2) >= 0.2.29 with crate(net2) < 0.3.0) BuildRequires: (crate(slab) >= 0.4.0 with crate(slab) < 0.5.0) @@ -70,6 +70,9 @@ which use %{crate} from crates.io. %exclude %{cargo_registry}/%{crate}-%{version}/{appveyor.yml,ci} %changelog +* Wed Jul 11 2018 Josh Stone - 0.6.15-1 +- Update to 0.6.15 + * Fri Jun 15 2018 Igor Gnatenko - 0.6.14-2 - Bump lazycell to 1 diff --git a/sources b/sources index 0ea7490..5b1256f 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (mio-0.6.14.crate) = 37b45856d74cd03cdaeb015dfca85065a04175568cda985e59bb0e4b2ca85523d52789d8e9cc2f5336e6a346d2ed50c2bdfe078ed4953613e95ca8d52dd90bb1 +SHA512 (mio-0.6.15.crate) = 77847416c39dc487c42a84acab28e9f9082e1459bea636fe14a8fb2292bd6e86fcdab66b46e2ac4167f565c7ae2c63712af7b4b6f75eb73a64a1bc56d5035a2c From e424a913a403c87760b3704885a7146a2dfbd0d9 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Sat, 14 Jul 2018 05:17:40 +0000 Subject: [PATCH 07/19] - Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- rust-mio.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/rust-mio.spec b/rust-mio.spec index ca8c17a..d5fac2f 100644 --- a/rust-mio.spec +++ b/rust-mio.spec @@ -7,7 +7,7 @@ Name: rust-%{crate} Version: 0.6.15 -Release: 1%{?dist} +Release: 2%{?dist} Summary: Lightweight non-blocking IO License: MIT @@ -70,6 +70,9 @@ which use %{crate} from crates.io. %exclude %{cargo_registry}/%{crate}-%{version}/{appveyor.yml,ci} %changelog +* Sat Jul 14 2018 Fedora Release Engineering - 0.6.15-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild + * Wed Jul 11 2018 Josh Stone - 0.6.15-1 - Update to 0.6.15 From f180f88d0d8279b62ddfe10826533149cb26ebd4 Mon Sep 17 00:00:00 2001 From: Josh Stone Date: Fri, 7 Sep 2018 17:35:45 -0700 Subject: [PATCH 08/19] Update to 0.6.16 --- .gitignore | 1 + ....6.15-fix-metadata.diff => mio-fix-metadata.diff | 13 ++----------- rust-mio.spec | 10 ++++++---- sources | 2 +- 4 files changed, 10 insertions(+), 16 deletions(-) rename mio-0.6.15-fix-metadata.diff => mio-fix-metadata.diff (67%) diff --git a/.gitignore b/.gitignore index 15bbba8..6fe1ee9 100644 --- a/.gitignore +++ b/.gitignore @@ -2,3 +2,4 @@ /mio-0.6.13.crate /mio-0.6.14.crate /mio-0.6.15.crate +/mio-0.6.16.crate diff --git a/mio-0.6.15-fix-metadata.diff b/mio-fix-metadata.diff similarity index 67% rename from mio-0.6.15-fix-metadata.diff rename to mio-fix-metadata.diff index c207025..79c9fe2 100644 --- a/mio-0.6.15-fix-metadata.diff +++ b/mio-fix-metadata.diff @@ -1,14 +1,5 @@ ---- mio-0.6.15/Cargo.toml 1969-12-31T16:00:00-08:00 -+++ mio-0.6.15/Cargo.toml 2018-07-10T21:27:46.009651-07:00 -@@ -31,7 +31,7 @@ - version = "0.1.1" - - [dependencies.lazycell] --version = "0.6.0" -+version = "1" - - [dependencies.log] - version = "0.4" +--- mio-0.6.16/Cargo.toml 1969-12-31T16:00:00-08:00 ++++ mio-0.6.16/Cargo.toml 2018-09-07T17:33:40.272371-07:00 @@ -54,18 +54,5 @@ [features] default = ["with-deprecated"] diff --git a/rust-mio.spec b/rust-mio.spec index d5fac2f..a32c5e7 100644 --- a/rust-mio.spec +++ b/rust-mio.spec @@ -6,8 +6,8 @@ %global crate mio Name: rust-%{crate} -Version: 0.6.15 -Release: 2%{?dist} +Version: 0.6.16 +Release: 1%{?dist} Summary: Lightweight non-blocking IO License: MIT @@ -15,8 +15,7 @@ URL: https://crates.io/crates/mio Source0: https://crates.io/api/v1/crates/%{crate}/%{version}/download#/%{crate}-%{version}.crate # Initial patched metadata # * No windows or fuchsia -# * Bump lazycell to 1, https://github.com/carllerche/mio/pull/847 -Patch0: mio-0.6.15-fix-metadata.diff +Patch0: mio-fix-metadata.diff ExclusiveArch: %{rust_arches} @@ -70,6 +69,9 @@ which use %{crate} from crates.io. %exclude %{cargo_registry}/%{crate}-%{version}/{appveyor.yml,ci} %changelog +* Sat Sep 08 2018 Josh Stone - 0.6.16-1 +- Update to 0.6.16 + * Sat Jul 14 2018 Fedora Release Engineering - 0.6.15-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild diff --git a/sources b/sources index 5b1256f..5507ded 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (mio-0.6.15.crate) = 77847416c39dc487c42a84acab28e9f9082e1459bea636fe14a8fb2292bd6e86fcdab66b46e2ac4167f565c7ae2c63712af7b4b6f75eb73a64a1bc56d5035a2c +SHA512 (mio-0.6.16.crate) = ca9290edfdbd4659c686a9f47d7bcd2177001fbfe02ce1fcf6e8aaff4c6e4ba52abb0d698b103337e4587789e7e31945886a90f5e334651d27ac7b109f560c95 From 95917bd6594931ebc22a187095d1243a8fc1de31 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Sat, 2 Feb 2019 13:59:54 +0000 Subject: [PATCH 09/19] - Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- rust-mio.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/rust-mio.spec b/rust-mio.spec index a32c5e7..daa9657 100644 --- a/rust-mio.spec +++ b/rust-mio.spec @@ -7,7 +7,7 @@ Name: rust-%{crate} Version: 0.6.16 -Release: 1%{?dist} +Release: 2%{?dist} Summary: Lightweight non-blocking IO License: MIT @@ -69,6 +69,9 @@ which use %{crate} from crates.io. %exclude %{cargo_registry}/%{crate}-%{version}/{appveyor.yml,ci} %changelog +* Sat Feb 02 2019 Fedora Release Engineering - 0.6.16-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild + * Sat Sep 08 2018 Josh Stone - 0.6.16-1 - Update to 0.6.16 From c293ce331e5b9b28f2ec2cc645317fb5ada40f29 Mon Sep 17 00:00:00 2001 From: Igor Gnatenko Date: Sun, 10 Feb 2019 09:19:28 +0100 Subject: [PATCH 10/19] Adapt to new packaging Signed-off-by: Igor Gnatenko --- mio-fix-metadata.diff | 4 +-- rust-mio.spec | 77 ++++++++++++++++++++++++++++--------------- tests/.fmf/version | 1 + tests/provision.fmf | 5 +++ tests/tests.yml | 13 ++++++++ 5 files changed, 72 insertions(+), 28 deletions(-) create mode 100644 tests/.fmf/version create mode 100644 tests/provision.fmf create mode 100644 tests/tests.yml diff --git a/mio-fix-metadata.diff b/mio-fix-metadata.diff index 79c9fe2..b3acd64 100644 --- a/mio-fix-metadata.diff +++ b/mio-fix-metadata.diff @@ -1,5 +1,5 @@ ---- mio-0.6.16/Cargo.toml 1969-12-31T16:00:00-08:00 -+++ mio-0.6.16/Cargo.toml 2018-09-07T17:33:40.272371-07:00 +--- mio-0.6.16/Cargo.toml 1970-01-01T01:00:00+01:00 ++++ mio-0.6.16/Cargo.toml 2019-02-10T09:18:06.012625+01:00 @@ -54,18 +54,5 @@ [features] default = ["with-deprecated"] diff --git a/rust-mio.spec b/rust-mio.spec index daa9657..f4454fb 100644 --- a/rust-mio.spec +++ b/rust-mio.spec @@ -1,18 +1,17 @@ # Generated by rust2rpm -# Doctests require networking -%bcond_without check +%bcond_with check %global debug_package %{nil} %global crate mio Name: rust-%{crate} Version: 0.6.16 -Release: 2%{?dist} +Release: 3%{?dist} Summary: Lightweight non-blocking IO License: MIT URL: https://crates.io/crates/mio -Source0: https://crates.io/api/v1/crates/%{crate}/%{version}/download#/%{crate}-%{version}.crate +Source: %{crates_source} # Initial patched metadata # * No windows or fuchsia Patch0: mio-fix-metadata.diff @@ -20,35 +19,64 @@ Patch0: mio-fix-metadata.diff ExclusiveArch: %{rust_arches} BuildRequires: rust-packaging -# [dependencies] -BuildRequires: (crate(iovec) >= 0.1.1 with crate(iovec) < 0.2.0) -BuildRequires: (crate(lazycell) >= 1.0.0 with crate(lazycell) < 2.0.0) -BuildRequires: (crate(libc) >= 0.2.42 with crate(libc) < 0.3.0) -BuildRequires: (crate(log) >= 0.4.0 with crate(log) < 0.5.0) -BuildRequires: (crate(net2) >= 0.2.29 with crate(net2) < 0.3.0) -BuildRequires: (crate(slab) >= 0.4.0 with crate(slab) < 0.5.0) +BuildRequires: (crate(iovec/default) >= 0.1.1 with crate(iovec/default) < 0.2.0) +BuildRequires: (crate(lazycell/default) >= 1.0.0 with crate(lazycell/default) < 2.0.0) +BuildRequires: (crate(libc/default) >= 0.2.42 with crate(libc/default) < 0.3.0) +BuildRequires: (crate(log/default) >= 0.4.0 with crate(log/default) < 0.5.0) +BuildRequires: (crate(net2/default) >= 0.2.29 with crate(net2/default) < 0.3.0) +BuildRequires: (crate(slab/default) >= 0.4.0 with crate(slab/default) < 0.5.0) %if %{with check} -# [dev-dependencies] -BuildRequires: (crate(bytes) >= 0.3.0 with crate(bytes) < 0.4.0) +BuildRequires: (crate(bytes/default) >= 0.3.0 with crate(bytes/default) < 0.4.0) BuildRequires: (crate(env_logger) >= 0.4.0 with crate(env_logger) < 0.5.0) -BuildRequires: (crate(tempdir) >= 0.3.4 with crate(tempdir) < 0.4.0) +BuildRequires: (crate(tempdir/default) >= 0.3.4 with crate(tempdir/default) < 0.4.0) %endif -%description -%{summary}. +%global _description \ +Lightweight non-blocking IO. + +%description %{_description} %package devel Summary: %{summary} BuildArch: noarch -%description devel -Lightweight non-blocking IO. +%description devel %{_description} + +This package contains library source intended for building other packages +which use "%{crate}" crate. + +%files devel +%license LICENSE +%doc README.md CHANGELOG.md +%{cargo_registry}/%{crate}-%{version}/ +%exclude %{cargo_registry}/%{crate}-%{version}/{appveyor.yml,ci} + +%package -n %{name}+default-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+default-devel %{_description} This package contains library source intended for building other packages -which use %{crate} from crates.io. +which use "default" feature of "%{crate}" crate. + +%files -n %{name}+default-devel +%ghost %{cargo_registry}/%{crate}-%{version}/Cargo.toml + +%package -n %{name}+with-deprecated-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+with-deprecated-devel %{_description} + +This package contains library source intended for building other packages +which use "with-deprecated" feature of "%{crate}" crate. + +%files -n %{name}+with-deprecated-devel +%ghost %{cargo_registry}/%{crate}-%{version}/Cargo.toml %prep -%autosetup -n %{crate}-%{version} -p1 +%autosetup -n %{crate}-%{version_no_tilde} -p1 %cargo_prep %build @@ -62,13 +90,10 @@ which use %{crate} from crates.io. %cargo_test %endif -%files devel -%license LICENSE -%doc README.md CHANGELOG.md -%{cargo_registry}/%{crate}-%{version}/ -%exclude %{cargo_registry}/%{crate}-%{version}/{appveyor.yml,ci} - %changelog +* Sun Feb 10 2019 Igor Gnatenko - 0.6.16-3 +- Adapt to new packaging + * Sat Feb 02 2019 Fedora Release Engineering - 0.6.16-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild diff --git a/tests/.fmf/version b/tests/.fmf/version new file mode 100644 index 0000000..d00491f --- /dev/null +++ b/tests/.fmf/version @@ -0,0 +1 @@ +1 diff --git a/tests/provision.fmf b/tests/provision.fmf new file mode 100644 index 0000000..503a97c --- /dev/null +++ b/tests/provision.fmf @@ -0,0 +1,5 @@ +--- +standard-inventory-qcow2: + qemu: + # `cargo test` usually eats more than 1G. + m: 4G diff --git a/tests/tests.yml b/tests/tests.yml new file mode 100644 index 0000000..52b72d9 --- /dev/null +++ b/tests/tests.yml @@ -0,0 +1,13 @@ +--- +- hosts: localhost + roles: + - role: standard-test-basic + tags: + - classic + repositories: + - repo: "https://src.fedoraproject.org/tests/rust.git" + dest: rust + tests: + - rust/cargo-test + environment: + pkg: rust-mio From ff4439c186415cc9cdc61095d06fd488b672237a Mon Sep 17 00:00:00 2001 From: Josh Stone Date: Fri, 31 May 2019 17:15:49 -0700 Subject: [PATCH 11/19] Update to 0.6.19 --- .gitignore | 1 + rust-mio.spec | 12 +++++++----- sources | 2 +- 3 files changed, 9 insertions(+), 6 deletions(-) diff --git a/.gitignore b/.gitignore index 6fe1ee9..d6b45a1 100644 --- a/.gitignore +++ b/.gitignore @@ -3,3 +3,4 @@ /mio-0.6.14.crate /mio-0.6.15.crate /mio-0.6.16.crate +/mio-0.6.19.crate diff --git a/rust-mio.spec b/rust-mio.spec index f4454fb..dce6c0e 100644 --- a/rust-mio.spec +++ b/rust-mio.spec @@ -1,12 +1,12 @@ -# Generated by rust2rpm +# Generated by rust2rpm-9-1.fc30 %bcond_with check %global debug_package %{nil} %global crate mio Name: rust-%{crate} -Version: 0.6.16 -Release: 3%{?dist} +Version: 0.6.19 +Release: 1%{?dist} Summary: Lightweight non-blocking IO License: MIT @@ -20,7 +20,6 @@ ExclusiveArch: %{rust_arches} BuildRequires: rust-packaging BuildRequires: (crate(iovec/default) >= 0.1.1 with crate(iovec/default) < 0.2.0) -BuildRequires: (crate(lazycell/default) >= 1.0.0 with crate(lazycell/default) < 2.0.0) BuildRequires: (crate(libc/default) >= 0.2.42 with crate(libc/default) < 0.3.0) BuildRequires: (crate(log/default) >= 0.4.0 with crate(log/default) < 0.5.0) BuildRequires: (crate(net2/default) >= 0.2.29 with crate(net2/default) < 0.3.0) @@ -49,7 +48,7 @@ which use "%{crate}" crate. %license LICENSE %doc README.md CHANGELOG.md %{cargo_registry}/%{crate}-%{version}/ -%exclude %{cargo_registry}/%{crate}-%{version}/{appveyor.yml,ci} +%exclude %{cargo_registry}/%{crate}-%{version}/{azure-pipelines.yml,.cirrus.yml,ci} %package -n %{name}+default-devel Summary: %{summary} @@ -91,6 +90,9 @@ which use "with-deprecated" feature of "%{crate}" crate. %endif %changelog +* Sat Jun 01 2019 Josh Stone - 0.6.19-1 +- Update to 0.6.19 + * Sun Feb 10 2019 Igor Gnatenko - 0.6.16-3 - Adapt to new packaging diff --git a/sources b/sources index 5507ded..1056b46 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (mio-0.6.16.crate) = ca9290edfdbd4659c686a9f47d7bcd2177001fbfe02ce1fcf6e8aaff4c6e4ba52abb0d698b103337e4587789e7e31945886a90f5e334651d27ac7b109f560c95 +SHA512 (mio-0.6.19.crate) = a6eeb93a34a4a4d486a821763cf660d6c5d3dcb08a7f1cd32a04d918d5196cd50cc29b30c5a97eeca68ab1cda50bf36a50c2c787e08ae3d2a2b9134350acd097 From 0e2fadb5f729e4021df66c40eb29ba112a2984cf Mon Sep 17 00:00:00 2001 From: Igor Gnatenko Date: Fri, 21 Jun 2019 21:27:40 +0200 Subject: [PATCH 12/19] Regenerate Signed-off-by: Igor Gnatenko --- mio-fix-metadata.diff | 6 +++--- rust-mio.spec | 30 +++++++++++++++--------------- 2 files changed, 18 insertions(+), 18 deletions(-) diff --git a/mio-fix-metadata.diff b/mio-fix-metadata.diff index b3acd64..f453c8d 100644 --- a/mio-fix-metadata.diff +++ b/mio-fix-metadata.diff @@ -1,6 +1,6 @@ ---- mio-0.6.16/Cargo.toml 1970-01-01T01:00:00+01:00 -+++ mio-0.6.16/Cargo.toml 2019-02-10T09:18:06.012625+01:00 -@@ -54,18 +54,5 @@ +--- mio-0.6.19/Cargo.toml 1970-01-01T00:00:00+00:00 ++++ mio-0.6.19/Cargo.toml 2019-06-21T19:27:15.727108+00:00 +@@ -51,18 +51,5 @@ [features] default = ["with-deprecated"] with-deprecated = [] diff --git a/rust-mio.spec b/rust-mio.spec index dce6c0e..12a7d61 100644 --- a/rust-mio.spec +++ b/rust-mio.spec @@ -1,14 +1,15 @@ -# Generated by rust2rpm-9-1.fc30 -%bcond_with check +# Generated by rust2rpm 10 +%bcond_without check %global debug_package %{nil} %global crate mio Name: rust-%{crate} Version: 0.6.19 -Release: 1%{?dist} +Release: 2%{?dist} Summary: Lightweight non-blocking IO +# Upstream license specification: MIT License: MIT URL: https://crates.io/crates/mio Source: %{crates_source} @@ -17,21 +18,14 @@ Source: %{crates_source} Patch0: mio-fix-metadata.diff ExclusiveArch: %{rust_arches} +%if %{__cargo_skip_build} +BuildArch: noarch +%endif BuildRequires: rust-packaging -BuildRequires: (crate(iovec/default) >= 0.1.1 with crate(iovec/default) < 0.2.0) -BuildRequires: (crate(libc/default) >= 0.2.42 with crate(libc/default) < 0.3.0) -BuildRequires: (crate(log/default) >= 0.4.0 with crate(log/default) < 0.5.0) -BuildRequires: (crate(net2/default) >= 0.2.29 with crate(net2/default) < 0.3.0) -BuildRequires: (crate(slab/default) >= 0.4.0 with crate(slab/default) < 0.5.0) -%if %{with check} -BuildRequires: (crate(bytes/default) >= 0.3.0 with crate(bytes/default) < 0.4.0) -BuildRequires: (crate(env_logger) >= 0.4.0 with crate(env_logger) < 0.5.0) -BuildRequires: (crate(tempdir/default) >= 0.3.4 with crate(tempdir/default) < 0.4.0) -%endif -%global _description \ -Lightweight non-blocking IO. +%global _description %{expand: +Lightweight non-blocking IO.} %description %{_description} @@ -78,6 +72,9 @@ which use "with-deprecated" feature of "%{crate}" crate. %autosetup -n %{crate}-%{version_no_tilde} -p1 %cargo_prep +%generate_buildrequires +%cargo_generate_buildrequires + %build %cargo_build @@ -90,6 +87,9 @@ which use "with-deprecated" feature of "%{crate}" crate. %endif %changelog +* Fri Jun 21 21:27:15 CEST 2019 Igor Gnatenko - 0.6.19-2 +- Regenerate + * Sat Jun 01 2019 Josh Stone - 0.6.19-1 - Update to 0.6.19 From d63e74ccee20593df49db2df311be006c00c0243 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 26 Jul 2019 21:31:30 +0000 Subject: [PATCH 13/19] - Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- rust-mio.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/rust-mio.spec b/rust-mio.spec index 12a7d61..28122ec 100644 --- a/rust-mio.spec +++ b/rust-mio.spec @@ -6,7 +6,7 @@ Name: rust-%{crate} Version: 0.6.19 -Release: 2%{?dist} +Release: 3%{?dist} Summary: Lightweight non-blocking IO # Upstream license specification: MIT @@ -87,6 +87,9 @@ which use "with-deprecated" feature of "%{crate}" crate. %endif %changelog +* Fri Jul 26 2019 Fedora Release Engineering - 0.6.19-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild + * Fri Jun 21 21:27:15 CEST 2019 Igor Gnatenko - 0.6.19-2 - Regenerate From b6c2fa3a7bf35671d9bc3a0bc42adcfd649075e1 Mon Sep 17 00:00:00 2001 From: Josh Stone Date: Fri, 22 Nov 2019 11:36:41 -0800 Subject: [PATCH 14/19] Update to 0.6.20 --- .gitignore | 1 + mio-fix-metadata.diff | 15 ++++++++++++--- rust-mio.spec | 8 ++++++-- sources | 2 +- 4 files changed, 20 insertions(+), 6 deletions(-) diff --git a/.gitignore b/.gitignore index d6b45a1..6989591 100644 --- a/.gitignore +++ b/.gitignore @@ -4,3 +4,4 @@ /mio-0.6.15.crate /mio-0.6.16.crate /mio-0.6.19.crate +/mio-0.6.20.crate diff --git a/mio-fix-metadata.diff b/mio-fix-metadata.diff index f453c8d..e105d54 100644 --- a/mio-fix-metadata.diff +++ b/mio-fix-metadata.diff @@ -1,6 +1,15 @@ ---- mio-0.6.19/Cargo.toml 1970-01-01T00:00:00+00:00 -+++ mio-0.6.19/Cargo.toml 2019-06-21T19:27:15.727108+00:00 -@@ -51,18 +51,5 @@ +--- mio-0.6.20/Cargo.toml 1970-01-01T00:00:00+00:00 ++++ mio-0.6.20/Cargo.toml 2019-11-22T19:34:26.604578+00:00 +@@ -28,7 +28,7 @@ + name = "test" + path = "test/mod.rs" + [dependencies.cfg-if] +-version = "=0.1.9" ++version = "0.1.9" + + [dependencies.iovec] + version = "0.1.1" +@@ -54,18 +54,5 @@ [features] default = ["with-deprecated"] with-deprecated = [] diff --git a/rust-mio.spec b/rust-mio.spec index 28122ec..371f795 100644 --- a/rust-mio.spec +++ b/rust-mio.spec @@ -5,8 +5,8 @@ %global crate mio Name: rust-%{crate} -Version: 0.6.19 -Release: 3%{?dist} +Version: 0.6.20 +Release: 1%{?dist} Summary: Lightweight non-blocking IO # Upstream license specification: MIT @@ -15,6 +15,7 @@ URL: https://crates.io/crates/mio Source: %{crates_source} # Initial patched metadata # * No windows or fuchsia +# * Loosen cfg-if dependency: https://github.com/tokio-rs/mio/pull/1099#issuecomment-557664365 Patch0: mio-fix-metadata.diff ExclusiveArch: %{rust_arches} @@ -87,6 +88,9 @@ which use "with-deprecated" feature of "%{crate}" crate. %endif %changelog +* Fri Nov 22 2019 Josh Stone - 0.6.20-1 +- Update to 0.6.20 + * Fri Jul 26 2019 Fedora Release Engineering - 0.6.19-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild diff --git a/sources b/sources index 1056b46..aca13e4 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (mio-0.6.19.crate) = a6eeb93a34a4a4d486a821763cf660d6c5d3dcb08a7f1cd32a04d918d5196cd50cc29b30c5a97eeca68ab1cda50bf36a50c2c787e08ae3d2a2b9134350acd097 +SHA512 (mio-0.6.20.crate) = a1ef5732b61b1cac4514b71740cf51c6d256719d4443388f7914826eb7715f674fbf45c39c4f790b765118e7dfe72a5de6b3568d581832a05bc586bbbbdf0a09 From acc0c4b83d6a71b094bbe1c5182e851fcbcaa3a9 Mon Sep 17 00:00:00 2001 From: Josh Stone Date: Tue, 10 Dec 2019 15:10:32 -0800 Subject: [PATCH 15/19] Update to 0.6.21 --- .gitignore | 1 + mio-fix-metadata.diff | 9 --------- rust-mio.spec | 8 +++++--- sources | 2 +- 4 files changed, 7 insertions(+), 13 deletions(-) diff --git a/.gitignore b/.gitignore index 6989591..a0fe99e 100644 --- a/.gitignore +++ b/.gitignore @@ -5,3 +5,4 @@ /mio-0.6.16.crate /mio-0.6.19.crate /mio-0.6.20.crate +/mio-0.6.21.crate diff --git a/mio-fix-metadata.diff b/mio-fix-metadata.diff index e105d54..9303284 100644 --- a/mio-fix-metadata.diff +++ b/mio-fix-metadata.diff @@ -1,14 +1,5 @@ --- mio-0.6.20/Cargo.toml 1970-01-01T00:00:00+00:00 +++ mio-0.6.20/Cargo.toml 2019-11-22T19:34:26.604578+00:00 -@@ -28,7 +28,7 @@ - name = "test" - path = "test/mod.rs" - [dependencies.cfg-if] --version = "=0.1.9" -+version = "0.1.9" - - [dependencies.iovec] - version = "0.1.1" @@ -54,18 +54,5 @@ [features] default = ["with-deprecated"] diff --git a/rust-mio.spec b/rust-mio.spec index 371f795..c4edf80 100644 --- a/rust-mio.spec +++ b/rust-mio.spec @@ -1,11 +1,11 @@ -# Generated by rust2rpm 10 +# Generated by rust2rpm 11 %bcond_without check %global debug_package %{nil} %global crate mio Name: rust-%{crate} -Version: 0.6.20 +Version: 0.6.21 Release: 1%{?dist} Summary: Lightweight non-blocking IO @@ -15,7 +15,6 @@ URL: https://crates.io/crates/mio Source: %{crates_source} # Initial patched metadata # * No windows or fuchsia -# * Loosen cfg-if dependency: https://github.com/tokio-rs/mio/pull/1099#issuecomment-557664365 Patch0: mio-fix-metadata.diff ExclusiveArch: %{rust_arches} @@ -88,6 +87,9 @@ which use "with-deprecated" feature of "%{crate}" crate. %endif %changelog +* Tue Dec 10 2019 Josh Stone - 0.6.21-1 +- Update to 0.6.21 + * Fri Nov 22 2019 Josh Stone - 0.6.20-1 - Update to 0.6.20 diff --git a/sources b/sources index aca13e4..f2d24b3 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (mio-0.6.20.crate) = a1ef5732b61b1cac4514b71740cf51c6d256719d4443388f7914826eb7715f674fbf45c39c4f790b765118e7dfe72a5de6b3568d581832a05bc586bbbbdf0a09 +SHA512 (mio-0.6.21.crate) = 2bc68f6ff424d3ae2ef67a6a1a708b4c42b05f616cad1b0061dce3157c6a46d0666173e65c6f8b7960051e21b526ab5acbdc835833b5496fda280719ad139c77 From 4922f67691d9e58746cb588663d56646d8415865 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 30 Jan 2020 21:14:48 +0000 Subject: [PATCH 16/19] - Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- rust-mio.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/rust-mio.spec b/rust-mio.spec index c4edf80..a77b21f 100644 --- a/rust-mio.spec +++ b/rust-mio.spec @@ -6,7 +6,7 @@ Name: rust-%{crate} Version: 0.6.21 -Release: 1%{?dist} +Release: 2%{?dist} Summary: Lightweight non-blocking IO # Upstream license specification: MIT @@ -87,6 +87,9 @@ which use "with-deprecated" feature of "%{crate}" crate. %endif %changelog +* Thu Jan 30 2020 Fedora Release Engineering - 0.6.21-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild + * Tue Dec 10 2019 Josh Stone - 0.6.21-1 - Update to 0.6.21 From 195c841b4f07202ecacd3fc33f92142829914779 Mon Sep 17 00:00:00 2001 From: Igor Raits Date: Wed, 12 Feb 2020 11:37:43 +0100 Subject: [PATCH 17/19] Drop tests They do not work for quite long time. Signed-off-by: Igor Raits --- tests/.fmf/version | 1 - tests/provision.fmf | 5 ----- tests/tests.yml | 13 ------------- 3 files changed, 19 deletions(-) delete mode 100644 tests/.fmf/version delete mode 100644 tests/provision.fmf delete mode 100644 tests/tests.yml diff --git a/tests/.fmf/version b/tests/.fmf/version deleted file mode 100644 index d00491f..0000000 --- a/tests/.fmf/version +++ /dev/null @@ -1 +0,0 @@ -1 diff --git a/tests/provision.fmf b/tests/provision.fmf deleted file mode 100644 index 503a97c..0000000 --- a/tests/provision.fmf +++ /dev/null @@ -1,5 +0,0 @@ ---- -standard-inventory-qcow2: - qemu: - # `cargo test` usually eats more than 1G. - m: 4G diff --git a/tests/tests.yml b/tests/tests.yml deleted file mode 100644 index 52b72d9..0000000 --- a/tests/tests.yml +++ /dev/null @@ -1,13 +0,0 @@ ---- -- hosts: localhost - roles: - - role: standard-test-basic - tags: - - classic - repositories: - - repo: "https://src.fedoraproject.org/tests/rust.git" - dest: rust - tests: - - rust/cargo-test - environment: - pkg: rust-mio From 68f43758ac31e816d207bc89cabdcb65b49899f9 Mon Sep 17 00:00:00 2001 From: Igor Raits Date: Wed, 19 Feb 2020 09:14:51 +0100 Subject: [PATCH 18/19] Fix FTBFS Signed-off-by: Igor Raits --- rust-mio.spec | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/rust-mio.spec b/rust-mio.spec index a77b21f..699bb93 100644 --- a/rust-mio.spec +++ b/rust-mio.spec @@ -6,7 +6,7 @@ Name: rust-%{crate} Version: 0.6.21 -Release: 2%{?dist} +Release: 3%{?dist} Summary: Lightweight non-blocking IO # Upstream license specification: MIT @@ -83,10 +83,14 @@ which use "with-deprecated" feature of "%{crate}" crate. %if %{with check} %check -%cargo_test +# Tests below depend on having networking present +%cargo_test -- -- --skip poll::Poll --skip poll::Poll::deregister --skip poll::Poll::register --skip poll::Poll::reregister --skip sys::unix::ready::UnixReady %endif %changelog +* Wed Feb 19 2020 Igor Raits - 0.6.21-3 +- Fix FTBFS + * Thu Jan 30 2020 Fedora Release Engineering - 0.6.21-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild From 7b9dbe035a1e1bccb0ad3896ca9328d604b98569 Mon Sep 17 00:00:00 2001 From: Igor Raits Date: Wed, 19 Feb 2020 11:55:22 +0100 Subject: [PATCH 19/19] Skip one more tests which depends on networking Signed-off-by: Igor Raits --- rust-mio.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/rust-mio.spec b/rust-mio.spec index 699bb93..c8bd7c2 100644 --- a/rust-mio.spec +++ b/rust-mio.spec @@ -84,7 +84,7 @@ which use "with-deprecated" feature of "%{crate}" crate. %if %{with check} %check # Tests below depend on having networking present -%cargo_test -- -- --skip poll::Poll --skip poll::Poll::deregister --skip poll::Poll::register --skip poll::Poll::reregister --skip sys::unix::ready::UnixReady +%cargo_test -- -- --skip poll::Poll --skip poll::Poll::deregister --skip poll::Poll::register --skip poll::Poll::reregister --skip sys::unix::ready::UnixReady --skip test_multicast::test_multicast %endif %changelog