Mostly. The lock file format is certainly consistent between platforms, and I've been able to install applications on windows, mac and linux.
But it doesn't handle platform-specific dependencies correctly.
For instance, `doit` has a watch feature, and it will depend on pyinotify on linux and macfsevents on Mac.
If I run pipenv lock on the Mac, it correctly generates this:
"macfsevents": {
"hashes": [
"sha256:hexhexhex..."
],
"markers": "sys_platform == 'darwin'",
"version": "==0.8.1"
},
But it won't lock the linux version. Similarly, if you lock on Linux, it throws out macfsevents. And `doit` is not doing anything strange[1] to report these extra dependencies.
[1]: https://github.com/pydoit/doit/blob/660d3a2e75dc9d861e5a8916...