Status of the project and further estimations

23 views
Skip to first unread message

Dmitry Malinovsky

unread,
Jun 23, 2014, 12:51:17 AM6/23/14
to python...@googlegroups.com
Hi,

I was very excited when I found your project, sarge. I like your approach, to wrap a cross-platform subprocess (which allows sarge to be cross-platform too, say Hi to pexpect), but I can't find any milestones or plans.

I'd like to use it in my project, but I must be sure that sarge will develop further. Can you please provide some information about what are you doing currently, and what are your plans about the project?

Vinay Sajip

unread,
Jun 23, 2014, 7:49:50 AM6/23/14
to python...@googlegroups.com
Hi Dmitry,


On Monday, June 23, 2014 5:51:17 AM UTC+1, Dmitry Malinovsky wrote:
I'd like to use it in my project, but I must be sure that sarge will develop further. Can you please provide some information about what are you doing currently, and what are your plans about the project?

The project is maintained, but has not had any recent changes because (a) it works for my needs and (b) there are no open issues. I have been thinking about support for recent changes in Python (asyncio module - 3.4), but I guess this might have to be in a separate branch because of backward compatibility. Currently my time available is too limited to be proactive about adding features, but as you'll see from the closed issues, I'm fairly prompt in responding to reported problems. I generally stand by my software :-)

Are there any particular features you need? I do have pexpect-type features in the project, though not exactly the same (and don't support applications which write directly to terminals, as that tends to be platform-specific).

Regards,

Vinay Sajip

Dmitry Malinovsky

unread,
Jun 23, 2014, 12:24:35 PM6/23/14
to python...@googlegroups.com
Hi Vinay,

The project is maintained, but has not had any recent changes because (a) it works for my needs and (b) there are no open issues. I have been thinking about support for recent changes in Python (asyncio module - 3.4), but I guess this might have to be in a separate branch because of backward compatibility. Currently my time available is too limited to be proactive about adding features, but as you'll see from the closed issues, I'm fairly prompt in responding to reported problems. I generally stand by my software :-)

Glad to hear that!
 
Are there any particular features you need? I do have pexpect-type features in the project, though not exactly the same (and don't support applications which write directly to terminals, as that tends to be platform-specific).

I need one feature right now - a cross-platform buffered Popen, so tools like pexpect (though it is very interesting) are not for me. But I must be sure that the solution I choose is stable enough. Applications that write directly to terminals are not a problem, just because tty/pty are not a cross-platform solution, and I can't imagine how this can be achieved without using them.

As you're using semantic versioning, the major version 0 tells me that sarge is not stable yet. Is it true, or sarge is stable enough? Unfortunately, I can't find any information about projects who use sarge.

Vinay Sajip

unread,
Jun 23, 2014, 1:25:29 PM6/23/14
to python...@googlegroups.com
Hi Dmitry,


On Monday, June 23, 2014 5:24:35 PM UTC+1, Dmitry Malinovsky wrote:
As you're using semantic versioning, the major version 0 tells me that sarge is not stable yet. Is it true, or sarge is stable enough? Unfortunately, I can't find any information about projects who use sarge.

I'm very conservative with my numbering. Sarge isn't used by lots of projects, and while, in my usage of it I've encountered no problems, I'm not making any exorbitant claims because concurrency is difficult to get right, and more exposure is needed before more confidence can be shown in the library. Also, because of the low level of exposure, it's not clear whether the API could be improved, and whether that might require backwards-incompatible changes. Most of my software is in the 0.x stage because it hasn't received wide enough exposure, except perhaps Python's logging (which was at 0.4.9.x when adopted into the Python stdlib, and of course it now follows Python version numbering). My python-gnupg project is at 0.3.6, but AFAIK people are using it to do useful work. Ditto for my distlib project, which is at 0.1.9.

I rarely break backward compatibility, since I've been on the receiving end enough times, but in the early stages of a project it sometimes can't be avoided.

Of course, it's a bit of a chicken-and-egg problem: projects won't adopt a library because it hasn't had much exposure, so it doesn't get much exposure, and round and round we go :-)

Others on this list might venture their opinion about what they think about sarge's stability. BTW there is a set of unit tests which is exercised on every commit, through integration with Travis-CI.

Regards,

Vinay Sajip

Dmitry Malinovsky

unread,
Jun 24, 2014, 1:25:25 AM6/24/14
to python...@googlegroups.com
Hi Vinay,

Thanks for your answers, I think I should go and try.

Regards.

Dmitry Malinovsky.
Reply all
Reply to author
Forward
0 new messages