nickel-org / nickel.rs

An expressjs inspired web framework for Rust

Home Page:http://nickel-org.github.io/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Upgrade to Hyper 0.10

Joxit opened this issue · comments

Need an upgrade of hyper.

+1. It appears to be a backwards-compatible upgrade as well, I recommend updating the version range to hyper = ">= 0.9, < 0.11". This is blocking multipart from upgrading.

I have testing a naive upgrading to 0.10.x. It was necessary to remove the line

ssl = ["hyper/ssl"]

since that feature is no longer available in hyper 0.10.x. Running cargo test resulted in the same tests failing that fail with 0.9:

test extensions::response::Redirect::redirect_0 ... FAILED
test extensions::request::Request<'mw, 'server, D>::referer_0 ... FAILED
test body_parser::FormBody::form_body_0 ... FAILED
test query_string::QueryString::query_0 ... FAILED

So far the upgrade does not cause any issues. I can't easily test much further than this, since the hyper 0.10.x upgrade will require changes to my application.

The two questions I see are:

  • How does hyper removing the ssl feature impact nickel.rs?
  • How do we move forward? Would creating a branch make sense?

Any thoughts about this?

In addition to hyper, the following crates are out dated:

  • regex 0.1 -> 0.2
  • mustache 0.6 -> 0.8
  • lazy_static 0.1 -> 0.2
  • compiletest_rs 0.1 -> 0.2

All but regex update without breaking the build, or any tests (that aren't already failing). Regex has an api change which will require more changes.

These outdated packages are starting to cause problems for my project. If I can get a response from someone who can approve pull requests, I will do the necessary work to fix regex and the currently failing tests. The easy fixes I can do right away, and I expect the rest can happen early next week.

The test failures appear to be the same as #399, so those can be dealt there.

I have hyper upgrade and other upgrades mentioned above, including the necessary fixes for regex, in my fork at https://github.com/jolhoeft/nickel.rs/tree/upgrade. However, I have not yet been able to test this in my application because I have upgrade breakage there to resolve. Once I have that done, I can create a pull request.

My testing is complete, and everything is working so far. I've created pull request #400 for discussion.

Nice job, I will test this.

I've just merge pull request #401, which resolves this. I'll push to crates.io momentarily.