request/request — pull request #1297 by Raynos (2014-12-02 03:31:07+00:00)
Title: Cast timeout to a number.

This creates consistency in the timeout feature.

The `setTimeout` implementation in node will correctly cast any strings passed in to a number using `*= 1`

This means that

```js
request({
uri: '/foo',
timeout: '5000'
}, cb);
```

will work as expected.

**HOWEVER** the `req.setTimeout` method does not cast strings to number. It instead defaults to no timeout when passed a string.

To guard against this bug in node core we manually cast the string to a number in `request/request` itself so that it is consistent.