Request fails in python subprocess

## Summary

The request library stalls in a python subprocess and does not fulfill the request.

## Expected Result

The line "after call" should be printed and the response to the GET request should also be printed.

## Actual Result

The subprocess stalls at "before call" and does not print "after call" and the response to the GET request.

## Reproduction Steps

```python
import requests
from multiprocessing import Process

def call_locahost():
    print("before call")
    response = requests.request("GET", "https://www.google.com/")
    print("after call")
    print(response)
    return response

p = Process(target=call_locahost)
p.start()
p.join()
```

## System Information

```
(botlite) VIJAYRK-M-L1E5:botlite vijay$  python -m requests.help
{
  "chardet": {
    "version": "3.0.4"
  },
  "cryptography": {
    "version": ""
  },
  "idna": {
    "version": "2.9"
  },
  "implementation": {
    "name": "CPython",
    "version": "3.6.5"
  },
  "platform": {
    "release": "17.7.0",
    "system": "Darwin"
  },
  "pyOpenSSL": {
    "openssl_version": "",
    "version": null
  },
  "requests": {
    "version": "2.23.0"
  },
  "system_ssl": {
    "version": "1010107f"
  },
  "urllib3": {
    "version": "1.25.9"
  },
  "using_pyopenssl": false
}
```



Where does `Process` come frome?

I ask because with a slight modification (using `multiprocessing`) I see no issues:

```
from multiprocessing import Process

import requests


def make_request():
    print("before call")
    response = requests.request("GET", "https://www.google.com/")
    print("after call")
    print(response)
    return response


p = Process(target=make_request)
p.start()
p.join()
```

```
before call
after call
<Response [200]>
```

Updated the original code. Yes I am using `from multiprocessing import Process`. 

And given that this gives me no trouble, what does that tell you?

Probably that your environment is different from mine? I don't see this error in Linux OS, just in Darwin 17.7.0 right now.

I'm on MacOS too. I don't see this across any macOS environment or Linux environment. I'd check your DNS settings and find evidence that this is actually a problem with this project - of which there is currently none

Yeah you are correct. The above code doesnt repro the issue. It seems to be an issue with an internal (opensource) package I imported that causes the issue:

`pip install mindmeld`


```python
from multiprocessing import Process
import requests
import mindmeld


def call_google():
    print("before done")
    response = requests.request("GET", "https://www.google.com/")
    print("after done")
    return response


p = Process(target=call_google)
p.start()
p.join()
```

Apologies for the misleading repro instructions. Any idea why an unused import lib can cause issues in a subprocess even if its not being used?



> Any idea why an unused import lib can cause issues in a subprocess even if its not being used?

Requests tries its hardest to work. We've found, however, that some libraries do really naive things when they try to do Python 2/3 compatibility. There was one library that was a dependency for AWS' library a few years back that monkey patched the standard library and messed with import resolution so you could import any name and it _might_ just work. That led to very confusing behaviour but I can't tell you what mindmeld might be doing or what libraries it might be using that are causing this.

Got it, thanks for the insight.