-
Notifications
You must be signed in to change notification settings - Fork 384
Isolate platform-specific code and add Windows versions #119
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
|
This looks good overall, random thoughts (feel free to rebuke; do not want to bikeshed this too hard, just raise some stuff so it's on record):
|
|
I'm away for a couple of days, so I'll think on this and get back to you. If nothing else, I've bombarded you with a lot of stuff, so you'll probably be glad of me giving you some peace for a bit! |
|
Think on it all you want, and just make sure you have dstufft bug me if I miss any comments (I have...a very large unread count on Github right now 😢). Thanks again! |
|
After some thought, the idea of having both the posix and windows functions available doesn't seem worth it - the windows version will fail on posix because it uses windows APIs, and the posix function will fail on windows because termios is not available there. The only corner case I can see is cygwin, and that detects as "not windows" - so it'll get the posix version (as at present) but could use the windows one. I'd rather assume that's not needed until someone using cygwin comes up with a use case. As regards importing plat in util, that's probably worth it as it reduces churn in the calling module (only cli, admittedly). I'll update the patch for that. |
|
OK, I've pushed a rework of this patch as noted above, plus a minor fix that I swear I tested originally but works now... |
|
@bitprophet the travis build failed here, but it's failing in code I didn't touch. Looks like a Python 2/3 compatibility issue introduced by commit a9c426f |
|
Ping... |
|
Pong! Sorry, been consumed with paramiko work and then personal/life issues. Will keep this open in a tab and try to reply over the weekend or early next week. Thanks!! |
|
Any chance you can look at this? Pip is using invoke for some admin tools, and without this patch they don't work on Windows :-( |
|
+1 would really really like Windows support. |
|
Looks like this has now suffered from bit rot, as it no longer merges cleanly. Is there any point in me updating the PR? If it's just going to languish again, I'd rather not bother (at the moment I'm not a user of invoke, as it doesn't work on Windows, and from the progress of this patch, it looks like Windows support isn't really a priority...) |
|
+1 for Windows support :) |
|
OK, one last try. I've created PR #162 which does nothing but make 3 imports that don't work on Windows optional. With that patch, invoke on Windows won't fail immediately. @bitprophet, please can you review #162 and assuming there's no major issue, apply it? Then this patch can be closed as no longer worth the effort. |
|
Arglbargl. Really sorry this keeps getting dropped. (Windows isn't a priority, but that wasn't why - overall project was just not getting love for a while.) Suspect it won't be hard to update this for latest master, I'll give it a look-see now and make a final call on whether it's worthwhile (and make the changes, if it is.) I did just merge #162 (thanks for it!) and that will be out on PyPI within the afternoon. |
|
Quickly re-reviewing this, it seems to solve a handful of things:
|
|
I've uploaded a copy of this material with my own adjustments/reorganizations to a new branch, https://github.com/pyinvoke/invoke/compare/119-int. If somebody can confirm it works as intended on Windows, I'll merge it for the next bugfix release. I know I've been super bad about revisiting this/similar tickets, but I'm currently on an "OSS leave" at my dayjob, so I actually have the time to commit. I'll be AFK on a trip from Weds->Tues but otherwise I should notice replies within a day or so. Thanks! |
|
Windows 8, Anaconda Python 2.7.7, 119-int branch checked out |
|
Confirmed, same results as @Ivoz on Windows 7 64-bit, Python 3.4. |
|
Looks like it's working then, awesome :) I'll merge to master now, and put a release out today, though as above I may not be able to respond quickly to bug reports until next week. EDIT: it's in master as of now. Will put out an 0.9.0 release in a little while today. |
No description provided.