Re: [Cython] some pull requests for 0.16?
Robert Bradshaw, 21.03.2012 21:24: > On Wed, Mar 21, 2012 at 6:47 AM, mark florisson wrote: >> On 20 March 2012 18:51, Stefan Behnel wrote: >>> mark florisson, 20.03.2012 17:40: On 18 March 2012 11:58, Stefan Behnel wrote: > I put up two new pull requests on github: > > Implementation of PEP 380 (yield from): > https://github.com/cython/cython/pull/96 > > Rewrite of dict iteration: > https://github.com/cython/cython/pull/95 > > Given that the release of 0.16 has currently slowed down a bit, and given > that these are really nice features, could someone (and especially Mark, > as > the responsible release manager) take a look at them and give an opinion > regarding their suitability for 0.16? Sorry about the slowdown, my BT internet connection at home got closed off, so working on a release is rather hard, hopefully that will be fixed within the next few days. > > Thanks for the status update. Is there a separate release branch, or > are you working off the github master? Not currently. I also agree that we should try to get out the release soon. What about this: I merge my pending pull requests, we test everything in Sage (it's been normally tested in my dev branch already), and if that doesn't break anything, we release another beta? If it does break anything, it's either easy enough to fix, or we can create a release branch at that point with the status before the merges. sage.math seems to be back up, although the /levi drive isn't. If there are no objections, I'll make sure Jenkins gets back up and then do the above. > Is there a list of issues/blockers somewhere? Don't know. Finally, there is a serious bug in the reversed(range()) optimization that Mike Graham discovered when working on the range() optimization with a runtime step, which is basically wrong for any step that is not 1 or -1 (it simply swaps the bounds with an offset by 1, but it actually has to figure out what the actual last value was in the range and use that as the start instead). I personally consider this a blocker, so I'll try contacting Mike and see if he is still (interested in) working on that. >>> >>> Interesting. Yes, I can well imagine that being wrong. These things are >>> exceedingly tricky. >>> >>> However, it's easy to disable the optimisation for a specific case - likely >>> easier than fixing it. >>> >>> Also, I don't consider this a blocker. It's not like it works in the >>> current release, so it's not a regression compared to that. >> >> Yes, it's not a regression, but I find it hard to release something >> that is so broken, and I feel it kind of represents a lack of care >> which may make people believe Cython can't be taken seriously. > > I'm usually in the "not a regression" camp as well, but this is pretty > fundamental. Sounds like an easy fix, or at least an easy-to-disable > optimization. I'll take a look - maybe not before the weekend though. Stefan ___ cython-devel mailing list cython-devel@python.org http://mail.python.org/mailman/listinfo/cython-devel
Re: [Cython] [cython-users] GSoC 2012
Robert Bradshaw, 21.03.2012 21:56: > On Sat, Mar 10, 2012 at 10:44 PM, mark florisson wrote: > 2. >> - profile guided optimizations (using python's profilers and/or a >> custom profiler that collects data such as types etc, which can be >> used to specialize variables inside loops (or entire functions) with a >> fallback to normal mode in case the type changes) > 4. >> - better type inference, that would be enabled by default and again >> handle thing like reassignments of variables and fallbacks to the >> default object type. With entry caching Cython could build a database >> of types ((extension) classes, functions, variables) used in the >> modules and functions that are compiled (also def functions), and >> infer the types used and specialize on those. Maybe a switch should be >> added to cython to handle circular dependencies, or maybe with the >> distutils preprocessing it can run all the type inference first and >> keep track of unresolved entries, and try to fill those in after >> building the database. For bonus points the user can be allowed to >> write plugins to aid the process. > > > What I would most like to see is the common component in 2 and 4, i.e. > the ability to generate optimized code for imperfectly-inferred types, > with transparent fallback to generic code if conditions are not met at > runtime (during as well as at entering the optimized code path). Absolutely. The dict iteration change is pointing exactly in that direction, but there are so many other places where the same thing applies. Basically, it has separate C implementations for different cases all folded into an inlined helper function with flag parameters, and then sets some of the flags to 1/0 constants at compile time and determines others at runtime. The C compiler can then just drop any inaccessible code and use the inlined remainings of the function to infer a good way of streamlining the rest of the surrounding code. This also turned out to be a perfect way to enable or disable certain optimisations and/or implementation details for different backends (PyPy and CPython currently). Much better than actually generating different C code for them. Stefan ___ cython-devel mailing list cython-devel@python.org http://mail.python.org/mailman/listinfo/cython-devel
Re: [Cython] some pull requests for 0.16?
On 22 March 2012 07:18, Stefan Behnel wrote: > Robert Bradshaw, 21.03.2012 21:24: >> On Wed, Mar 21, 2012 at 6:47 AM, mark florisson wrote: >>> On 20 March 2012 18:51, Stefan Behnel wrote: mark florisson, 20.03.2012 17:40: > On 18 March 2012 11:58, Stefan Behnel wrote: >> I put up two new pull requests on github: >> >> Implementation of PEP 380 (yield from): >> https://github.com/cython/cython/pull/96 >> >> Rewrite of dict iteration: >> https://github.com/cython/cython/pull/95 >> >> Given that the release of 0.16 has currently slowed down a bit, and given >> that these are really nice features, could someone (and especially Mark, >> as >> the responsible release manager) take a look at them and give an opinion >> regarding their suitability for 0.16? > > Sorry about the slowdown, my BT internet connection at home got closed > off, so working on a release is rather hard, hopefully that will be > fixed within the next few days. >> >> Thanks for the status update. Is there a separate release branch, or >> are you working off the github master? > > Not currently. I also agree that we should try to get out the release soon. > What about this: I merge my pending pull requests, we test everything in > Sage (it's been normally tested in my dev branch already), and if that > doesn't break anything, we release another beta? If it does break anything, > it's either easy enough to fix, or we can create a release branch at that > point with the status before the merges. > > sage.math seems to be back up, although the /levi drive isn't. If there are > no objections, I'll make sure Jenkins gets back up and then do the above. > > >> Is there a list of issues/blockers somewhere? > > Don't know. > Mostly the pull requests and this reversed bug (http://trac.cython.org/cython_trac/ticket/763), which I marked as a blocker. As much as I would like to push stuff out early, I really find it more important to push something that is as stable and useful as possible, even if it delays a release by a couple of weeks. I'll make a release branch, a clone of the current master, but I want several other things in there as well: 1) Dag's pull request for the portable attribute access of np.ndarray (I think this is important as np.ndarray is commonly used and in future numpy versions the attributes might be removed altogether) 2) Runtime dispatch for buffers for fused types. This would make fused types much more useable and useful for many people. It's nearly finished, I just need to add a few more tests and test on Jenkins Basically until Jenkins is up and everything is tested there, we shouldn't push anything into the release branch. > Finally, there is a serious bug in the reversed(range()) optimization > that Mike Graham discovered when working on the range() optimization > with a runtime step, which is basically wrong for any step that is not > 1 or -1 (it simply swaps the bounds with an offset by 1, but it > actually has to figure out what the actual last value was in the range > and use that as the start instead). I personally consider this a > blocker, so I'll try contacting Mike and see if he is still > (interested in) working on that. Interesting. Yes, I can well imagine that being wrong. These things are exceedingly tricky. However, it's easy to disable the optimisation for a specific case - likely easier than fixing it. Also, I don't consider this a blocker. It's not like it works in the current release, so it's not a regression compared to that. >>> >>> Yes, it's not a regression, but I find it hard to release something >>> that is so broken, and I feel it kind of represents a lack of care >>> which may make people believe Cython can't be taken seriously. >> >> I'm usually in the "not a regression" camp as well, but this is pretty >> fundamental. Sounds like an easy fix, or at least an easy-to-disable >> optimization. > > I'll take a look - maybe not before the weekend though. It would be easy to disable. Personally I'd like to give the people at PyCon who where interested in sprinting with us the chance to finish what they were working on, in this case Mike Graham, who indicated that he means to finish his work on the bug (and add proper tests for them). I think we shouldn't pull work out of people's hands, but instead encourage them to work on Cython and possibly contribute in the future. > Stefan > ___ > cython-devel mailing list > cython-devel@python.org > http://mail.python.org/mailman/listinfo/cython-devel ___ cython-devel mailing list cython-devel@python.org http://mail.python.org/mailman/listinfo/cython-devel
Re: [Cython] Jenkins down
On 21 March 2012 13:58, Stefan Behnel wrote: > Hi, > > it seems like the sage.math server is broken again, at least it's lacking > mounts when I try to log in. I'll restart Jenkins as soon as it's back > working. > > Stefan > ___ > cython-devel mailing list > cython-devel@python.org > http://mail.python.org/mailman/listinfo/cython-devel Logging in through ssh seems to work, should I run any of the scripts from your home directory Stefan? e.g. restart_dead_hudson.sh or starthudson.sh? ___ cython-devel mailing list cython-devel@python.org http://mail.python.org/mailman/listinfo/cython-devel
Re: [Cython] sage.math problems?
On Thu, Mar 22, 2012 at 9:04 AM, David Kirkby wrote: > On 22 March 2012 12:33, William Stein wrote: >> The usb device (for /levi) never appeared after I remotely rebooted >> sage.math. >> Physical access is thus probably required. I've emailed some people who are >> in >> Seattle, and we'll see. (I'm thousands of miles away now, and will >> only get further away >> -- to Europe -- until Apr 2, when I'll be back in Seattle.) > > I believe any decent IT professional will tell you that you should not > be using USB drives on servers. Well I'm definitely currently not using USB drives on this server. :-( If possible, can the stuff that was being done on /levi (jenkins for Cython) be moved to /scratch, which is a reasonably fast NFS filesystem. -- William ___ cython-devel mailing list cython-devel@python.org http://mail.python.org/mailman/listinfo/cython-devel
Re: [Cython] some pull requests for 0.16?
On 21 March 2012 20:24, Robert Bradshaw wrote: > On Wed, Mar 21, 2012 at 6:47 AM, mark florisson > wrote: >> On 20 March 2012 18:51, Stefan Behnel wrote: >>> mark florisson, 20.03.2012 17:40: On 18 March 2012 11:58, Stefan Behnel wrote: > I put up two new pull requests on github: > > Implementation of PEP 380 (yield from): > https://github.com/cython/cython/pull/96 > > Rewrite of dict iteration: > https://github.com/cython/cython/pull/95 > > Given that the release of 0.16 has currently slowed down a bit, and given > that these are really nice features, could someone (and especially Mark, > as > the responsible release manager) take a look at them and give an opinion > regarding their suitability for 0.16? Sorry about the slowdown, my BT internet connection at home got closed off, so working on a release is rather hard, hopefully that will be fixed within the next few days. > > Thanks for the status update. Is there a separate release branch, or > are you working off the github master? Is there a list of > issues/blockers somewhere? I created a release branch called release0.16 (there was a previous release branch for 0.15.1 which I could have pruned as well). Anyway, during the sprints Dag worked on the numpy attributes accesses to generate non-deprecated numpy code, I'm not sure how far along that is and if we can get that in as well, or have it wait until 0.16.1. >>> >>> I wouldn't mind if my changes waited for 0.16.1 as well, as long as that's >>> not too long from now. There will certainly be things to fix after the >>> release anyway. >>> >>> I worked on enhancing fused types runtime dispatching (e.g. select the right specialization at runtime from the argument types), especially on matching buffers. It's also a bit of a rewrite as the complexity grew quite a bit and ndarray and fused types were broken in subtle ways (I would do the pull request now if I hadn't left the code at home :). >>> >>> I took a tiny look at that when I wrote a test case and was surprised to >>> see that it imports "sys" inside of the generated function. Looks like >>> there's a bit left to optimise. >>> >>> I faintly remember a blog post (or more than one) by PJ Eby when he wrote a >>> "generic functions" module. It uses type dispatching as well, and he wrote >>> about the ways he found to tune that. Might be an interesting read. >>> >> >> Thanks, I'll look into that. Maybe the modules could be bound as >> locals through default arguments. >> Finally, there is a serious bug in the reversed(range()) optimization that Mike Graham discovered when working on the range() optimization with a runtime step, which is basically wrong for any step that is not 1 or -1 (it simply swaps the bounds with an offset by 1, but it actually has to figure out what the actual last value was in the range and use that as the start instead). I personally consider this a blocker, so I'll try contacting Mike and see if he is still (interested in) working on that. >>> >>> Interesting. Yes, I can well imagine that being wrong. These things are >>> exceedingly tricky. >>> >>> However, it's easy to disable the optimisation for a specific case - likely >>> easier than fixing it. >>> >>> Also, I don't consider this a blocker. It's not like it works in the >>> current release, so it's not a regression compared to that. >>> >> >> Yes, it's not a regression, but I find it hard to release something >> that is so broken, and I feel it kind of represents a lack of care >> which may make people believe Cython can't be taken seriously. > > I'm usually in the "not a regression" camp as well, but this is pretty > fundamental. Sounds like an easy fix, or at least an easy-to-disable > optimization. > As for the two pull requests, both are quite large, but the dict iteration rewrite is more like an enhancement whereas the 'yield from' is really a new (somewhat big) feature. I would personally prefer to merge only enhancements and bug fixes, but not new features. >>> >>> Funny. I would have proposed the opposite, because I consider the "yield >>> from" implementation (as a new language feature) safer than the dict >>> iteration (which impacts existing code). As I said, I wouldn't mind >>> postponing both to 0.16.1, but I think it would be better to get them out >>> and have people use them, so that we can also fix the bugs earlier. >>> >> >> A good point. My reasoning was that we want less new functionality per >> release, and keeping 'yield from' out of 0.16 makes us push out the >> next release earlier as we will have pending functionality we want to >> get out there. If the dict iteration is tested well enough (and it >> looked to me like that), then hopefully code in sage or lxml will >> break if there are leftover bugs, or our next beta might catch them >> (or some). If you do w
Re: [Cython] Jenkins down
Thanks for the offer. One problem I see is that /levi/scratch (a local disk) has been dismounted (or reconfigured). To save ourselves random permissions issues, it's probably best to run this script/job as scoder (I've got sudo). I'll see what I can do to get it running, assuming the sage.math issues have been resolved. - Robert On Thu, Mar 22, 2012 at 5:46 AM, mark florisson wrote: > On 21 March 2012 13:58, Stefan Behnel wrote: >> Hi, >> >> it seems like the sage.math server is broken again, at least it's lacking >> mounts when I try to log in. I'll restart Jenkins as soon as it's back >> working. >> >> Stefan >> ___ >> cython-devel mailing list >> cython-devel@python.org >> http://mail.python.org/mailman/listinfo/cython-devel > > Logging in through ssh seems to work, should I run any of the scripts > from your home directory Stefan? e.g. restart_dead_hudson.sh or > starthudson.sh? > ___ > cython-devel mailing list > cython-devel@python.org > http://mail.python.org/mailman/listinfo/cython-devel ___ cython-devel mailing list cython-devel@python.org http://mail.python.org/mailman/listinfo/cython-devel
Re: [Cython] sage.math problems?
William Stein, 22.03.2012 14:11: > On Thu, Mar 22, 2012 at 9:04 AM, David Kirkby wrote: >> On 22 March 2012 12:33, William Stein wrote: >>> The usb device (for /levi) never appeared after I remotely rebooted >>> sage.math. >>> Physical access is thus probably required. I've emailed some people who >>> are in >>> Seattle, and we'll see. (I'm thousands of miles away now, and will >>> only get further away >>> -- to Europe -- until Apr 2, when I'll be back in Seattle.) >> >> I believe any decent IT professional will tell you that you should not >> be using USB drives on servers. > > Well I'm definitely currently not using USB drives on this server. :-( > > If possible, can the stuff that was being done on /levi (jenkins for > Cython) be moved to /scratch, which is a reasonably fast NFS > filesystem. The whole Jenkins installation was on /levi (maybe not our best idea ever...). I have backups of the complete configuration, but we'd still loose the installed plugins and the build history. We'd literally start from scratch and it would take some time to set it all up again. If it turns out to be a matter of replugging the USB drive (or something similarly simple), I would prefer copying the original installation over (including the build history), rather than rebuilding it. Also, the sage build directory was on levi and I don't know how that was set up - Robert would know. Stefan ___ cython-devel mailing list cython-devel@python.org http://mail.python.org/mailman/listinfo/cython-devel
Re: [Cython] sage.math problems?
On Thu, Mar 22, 2012 at 6:11 AM, William Stein wrote: > On Thu, Mar 22, 2012 at 9:04 AM, David Kirkby wrote: >> On 22 March 2012 12:33, William Stein wrote: >>> The usb device (for /levi) never appeared after I remotely rebooted >>> sage.math. >>> Physical access is thus probably required. I've emailed some people who >>> are in >>> Seattle, and we'll see. (I'm thousands of miles away now, and will >>> only get further away >>> -- to Europe -- until Apr 2, when I'll be back in Seattle.) >> >> I believe any decent IT professional will tell you that you should not >> be using USB drives on servers. > > Well I'm definitely currently not using USB drives on this server. :-( > > If possible, can the stuff that was being done on /levi (jenkins for > Cython) be moved to /scratch, which is a reasonably fast NFS > filesystem. The Cython tests do a lot of disk IO (checking out the Cython repository, writing .c files, writing .o and .so files, starting Python, ..). This could be an nsf mount, but is there somewhere better? I think we'd like to store our configuration information in a more persistant location. - Robert ___ cython-devel mailing list cython-devel@python.org http://mail.python.org/mailman/listinfo/cython-devel
Re: [Cython] sage.math problems?
On Thu, Mar 22, 2012 at 9:03 AM, Stefan Behnel wrote: > William Stein, 22.03.2012 14:11: >> On Thu, Mar 22, 2012 at 9:04 AM, David Kirkby wrote: >>> On 22 March 2012 12:33, William Stein wrote: The usb device (for /levi) never appeared after I remotely rebooted sage.math. Physical access is thus probably required. I've emailed some people who are in Seattle, and we'll see. (I'm thousands of miles away now, and will only get further away -- to Europe -- until Apr 2, when I'll be back in Seattle.) >>> >>> I believe any decent IT professional will tell you that you should not >>> be using USB drives on servers. >> >> Well I'm definitely currently not using USB drives on this server. :-( >> >> If possible, can the stuff that was being done on /levi (jenkins for >> Cython) be moved to /scratch, which is a reasonably fast NFS >> filesystem. > > The whole Jenkins installation was on /levi (maybe not our best idea > ever...). I have backups of the complete configuration, but we'd still > loose the installed plugins and the build history. We'd literally start > from scratch and it would take some time to set it all up again. If it > turns out to be a matter of replugging the USB drive (or something > similarly simple), I would prefer copying the original installation over > (including the build history), rather than rebuilding it. > > Also, the sage build directory was on levi and I don't know how that was > set up - Robert would know. It was just a vanilla copy of Sage + some patches. (I don't know if the patches were saved elsewhere :(...) - Robert ___ cython-devel mailing list cython-devel@python.org http://mail.python.org/mailman/listinfo/cython-devel
Re: [Cython] sage.math problems?
2012/3/22 Stefan Behnel : > William Stein, 22.03.2012 14:11: >> On Thu, Mar 22, 2012 at 9:04 AM, David Kirkby wrote: >>> On 22 March 2012 12:33, William Stein wrote: The usb device (for /levi) never appeared after I remotely rebooted sage.math. Physical access is thus probably required. I've emailed some people who are in Seattle, and we'll see. (I'm thousands of miles away now, and will only get further away -- to Europe -- until Apr 2, when I'll be back in Seattle.) >>> >>> I believe any decent IT professional will tell you that you should not >>> be using USB drives on servers. >> >> Well I'm definitely currently not using USB drives on this server. :-( >> >> If possible, can the stuff that was being done on /levi (jenkins for >> Cython) be moved to /scratch, which is a reasonably fast NFS >> filesystem. > > The whole Jenkins installation was on /levi (maybe not our best idea > ever...). I have backups of the complete configuration, but we'd still > loose the installed plugins and the build history. We'd literally start > from scratch and it would take some time to set it all up again. If it > turns out to be a matter of replugging the USB drive (or something > similarly simple), I would prefer copying the original installation over > (including the build history), rather than rebuilding it. > Do you have sudo on that machine? Does the disk show up when you run lsusb? If it doesn't reboot may help. Anyway, can you send me dmesg output? > Also, the sage build directory was on levi and I don't know how that was > set up - Robert would know. > > Stefan > ___ > cython-devel mailing list > cython-devel@python.org > http://mail.python.org/mailman/listinfo/cython-devel -- vitja. ___ cython-devel mailing list cython-devel@python.org http://mail.python.org/mailman/listinfo/cython-devel
Re: [Cython] sage.math problems?
Vitja Makarov, 22.03.2012 17:12: > Does the disk show up when you run lsusb? No. > If it doesn't reboot may help. Anyway, can you send me dmesg output? It's not in dmesg either. Maybe it just switched itself off after the power failure? Stefan ___ cython-devel mailing list cython-devel@python.org http://mail.python.org/mailman/listinfo/cython-devel
Re: [Cython] sage.math problems?
On 03/22/2012 09:03 AM, Stefan Behnel wrote: William Stein, 22.03.2012 14:11: On Thu, Mar 22, 2012 at 9:04 AM, David Kirkby wrote: On 22 March 2012 12:33, William Stein wrote: The usb device (for /levi) never appeared after I remotely rebooted sage.math. Physical access is thus probably required. I've emailed some people who are in Seattle, and we'll see. (I'm thousands of miles away now, and will only get further away -- to Europe -- until Apr 2, when I'll be back in Seattle.) I believe any decent IT professional will tell you that you should not be using USB drives on servers. Well I'm definitely currently not using USB drives on this server. :-( If possible, can the stuff that was being done on /levi (jenkins for Cython) be moved to /scratch, which is a reasonably fast NFS filesystem. The whole Jenkins installation was on /levi (maybe not our best idea ever...). I have backups of the complete configuration, but we'd still loose the installed plugins and the build history. We'd literally start from scratch and it would take some time to set it all up again. If it turns out to be a matter of replugging the USB drive (or something similarly simple), I would prefer copying the original installation over (including the build history), rather than rebuilding it. I hope it doesn't come to this, but if it does, I think we should really look hard at ShiningPanda instead. Honestly, my feeling is that if we can't rally up $240/month in funding among Cython users then we might as well give up. (And specifically, we could ask NumFOCUS first, and possibly share the queue with other open source projects on their lists, and possibly ask ShiningPanda for an OSS project rebate). I'm not primarily concerned with uptime, but with the time spent in maintaining the systems. The more that can be moved into the cloud the better for open source projects, if it means less maintenance, which is usually the case; see our move to GitHub. ShiningPanda also offers features like testing on Windows. Dag ___ cython-devel mailing list cython-devel@python.org http://mail.python.org/mailman/listinfo/cython-devel
[Cython] funding (Re: sage.math problems?)
Dag Sverre Seljebotn, 22.03.2012 17:58: > On 03/22/2012 09:03 AM, Stefan Behnel wrote: >> I would prefer copying the original installation over >> (including the build history), rather than rebuilding it. > > I hope it doesn't come to this, but if it does, I think we should really > look hard at ShiningPanda instead. We could set up an OSS test account to see what we'd get for our money, i.e. how much of our build/test cycle we can put into one hour in their environment. > Honestly, my feeling is that if we can't rally up $240/month in funding > among Cython users then we might as well give up. As long as we have sage.math, I can think of better things to do with 240$ per month. Didn't we want to organise another workshop at some point? Regarding funding in general, maybe we should just start putting up one or two of those sexy funding bars on our web site, like the PyPy devs do for their funded projects. Assuming that goes well, it would also allow us to put money on dedicated projects by paying basically ourselves for doing tasks that we won't normally spend our precious spare time on (e.g. because they appear too large for a weekend), but that we and our users deem necessary for some reason. Basically, any "real" CEP that we consider doable and that we'd have a developer for could get a funding account where users could "vote" for it by donating money. (and that's where the legal issues start ...) > (And specifically, we > could ask NumFOCUS first, and possibly share the queue with other open > source projects on their lists, and possibly ask ShiningPanda for an OSS > project rebate). Sure. > I'm not primarily concerned with uptime, but with the time spent in > maintaining the systems. The more that can be moved into the cloud the > better for open source projects, if it means less maintenance, which is > usually the case; see our move to GitHub. I don't know how much time the maintenance takes on UW side, but they're using the machines for many other things, so I guess they'd have to invest the time anyway. So they won't win much by us moving out. Speaking for myself, I don't consider the time wasted that I invested into the Jenkins setup so far, and I'm also not sure there'd be all that much to gain by no longer administrating the server installation itself by ourselves. The bulk of the work is about configuring jobs and writing build/test/whatever scripts, which still applies to a cloud installation (with, I assume, the added disadvantage of no longer being able to ssh directly into the machine). > ShiningPanda also offers features like testing on Windows. That *is* a feature, but it also takes up additional (paid) time. We wouldn't have to run continuous tests on it, though, just trigger tests manually when we want them. Stefan ___ cython-devel mailing list cython-devel@python.org http://mail.python.org/mailman/listinfo/cython-devel
Re: [Cython] sage.math problems?
On Thu, Mar 22, 2012 at 12:03 PM, Stefan Behnel wrote: > William Stein, 22.03.2012 14:11: >> On Thu, Mar 22, 2012 at 9:04 AM, David Kirkby wrote: >>> On 22 March 2012 12:33, William Stein wrote: The usb device (for /levi) never appeared after I remotely rebooted sage.math. Physical access is thus probably required. I've emailed some people who are in Seattle, and we'll see. (I'm thousands of miles away now, and will only get further away -- to Europe -- until Apr 2, when I'll be back in Seattle.) >>> >>> I believe any decent IT professional will tell you that you should not >>> be using USB drives on servers. >> >> Well I'm definitely currently not using USB drives on this server. :-( >> >> If possible, can the stuff that was being done on /levi (jenkins for >> Cython) be moved to /scratch, which is a reasonably fast NFS >> filesystem. > > The whole Jenkins installation was on /levi (maybe not our best idea > ever...). I have backups of the complete configuration, but we'd still > loose the installed plugins and the build history. We'd literally start > from scratch and it would take some time to set it all up again. If it > turns out to be a matter of replugging the USB drive (or something > similarly simple), I would prefer copying the original installation over > (including the build history), rather than rebuilding it. OK. I'm sure it is just a matter of replugging the USB drive. > > Also, the sage build directory was on levi and I don't know how that was > set up - Robert would know. > > Stefan > ___ > cython-devel mailing list > cython-devel@python.org > http://mail.python.org/mailman/listinfo/cython-devel -- William Stein Professor of Mathematics University of Washington http://wstein.org ___ cython-devel mailing list cython-devel@python.org http://mail.python.org/mailman/listinfo/cython-devel
Re: [Cython] some pull requests for 0.16?
Stefan Behnel, 20.03.2012 18:51: > mark florisson, 20.03.2012 17:40: >> As for the two pull requests, both are quite large, but the dict >> iteration rewrite is more like an enhancement whereas the 'yield from' >> is really a new (somewhat big) feature. I would personally prefer to >> merge only enhancements and bug fixes, but not new features. > > Funny. I would have proposed the opposite, because I consider the "yield > from" implementation (as a new language feature) safer than the dict > iteration (which impacts existing code). As I said, I wouldn't mind > postponing both to 0.16.1, but I think it would be better to get them out > and have people use them, so that we can also fix the bugs earlier. Coming back to this, I think the main question is: what does our versioning scheme mean? Personally, I would expect a 0.16 release to come with new features compared to 0.15.x, and a 0.16.1 release to fix the bugs that these features (and other changes) have introduced, without changing too much of what makes up the 0.16 release series. I know that we've rarely followed that distinction (we sometimes didn't even have point releases), so it doesn't really matter what we add in 0.16.1, I guess. I just thought I'd bring up the question what would make a 0.17 release different from a 0.16.1 release. So far, it appears to have been more of an issue of how much time has passed since the last release, which usually goes hand in hand with a substantial set of changes. Stefan ___ cython-devel mailing list cython-devel@python.org http://mail.python.org/mailman/listinfo/cython-devel
Re: [Cython] Jenkins down
On Thu, Mar 22, 2012 at 11:59 AM, Robert Bradshaw wrote: > Thanks for the offer. One problem I see is that /levi/scratch (a local > disk) has been dismounted (or reconfigured). To save ourselves random > permissions issues, it's probably best to run this script/job as > scoder (I've got sudo). > > I'll see what I can do to get it running, assuming the sage.math > issues have been resolved. David Roe is going to unplug/replug the disk. -- William > > - Robert > > On Thu, Mar 22, 2012 at 5:46 AM, mark florisson > wrote: >> On 21 March 2012 13:58, Stefan Behnel wrote: >>> Hi, >>> >>> it seems like the sage.math server is broken again, at least it's lacking >>> mounts when I try to log in. I'll restart Jenkins as soon as it's back >>> working. >>> >>> Stefan >>> ___ >>> cython-devel mailing list >>> cython-devel@python.org >>> http://mail.python.org/mailman/listinfo/cython-devel >> >> Logging in through ssh seems to work, should I run any of the scripts >> from your home directory Stefan? e.g. restart_dead_hudson.sh or >> starthudson.sh? >> ___ >> cython-devel mailing list >> cython-devel@python.org >> http://mail.python.org/mailman/listinfo/cython-devel -- William Stein Professor of Mathematics University of Washington http://wstein.org ___ cython-devel mailing list cython-devel@python.org http://mail.python.org/mailman/listinfo/cython-devel
Re: [Cython] funding (Re: sage.math problems?)
On 03/22/2012 10:52 AM, Stefan Behnel wrote: Dag Sverre Seljebotn, 22.03.2012 17:58: On 03/22/2012 09:03 AM, Stefan Behnel wrote: I would prefer copying the original installation over (including the build history), rather than rebuilding it. I hope it doesn't come to this, but if it does, I think we should really look hard at ShiningPanda instead. We could set up an OSS test account to see what we'd get for our money, i.e. how much of our build/test cycle we can put into one hour in their environment. Honestly, my feeling is that if we can't rally up $240/month in funding among Cython users then we might as well give up. As long as we have sage.math, I can think of better things to do with 240$ per month. Didn't we want to organise another workshop at some point? I honestly don't think there's a lack of money for things like this once we go around asking; the most expensive part of any workshop is the time of the participants. Workshops in particular may be fundable through William's grant. The main problem is when people are available. Robert will not be available for some time, and neither will I (though I'm much less important these days), but if the rest would like to meet up I'm sure it is fundable one way or the other. Regarding funding in general, maybe we should just start putting up one or two of those sexy funding bars on our web site, like the PyPy devs do for their funded projects. Assuming that goes well, it would also allow us to put money on dedicated projects by paying basically ourselves for doing tasks that we won't normally spend our precious spare time on (e.g. because they appear too large for a weekend), but that we and our users deem necessary for some reason. Well, outright funding for projects is of a totally different order of magnitude. The $240 doesn't pay for more than between 1 and 4 hours of "grown-up" developer time (at least in Western Europe and US); for serious feature-funding you're starting to need thousands or tens-of-thousands of dollars rather than hundreds. Smaller constant-amount bounties (like GSoC) for fun stuff one would have motivation to do otherwise is a different matter. My impression is that a) core devs have no more time for Cython than they spend already, b) Cython development is a bit too difficult to enter for random "bounty-hunters". Those are just a couple of minor concerns -- I'm not saying we shouldn't do it! Slightly related: I believe the best thing we can do to attract more developers is to seriously clean up the codebase. My new year's resolution is that if I get some days for working on Cython this year (I hope to), I'll spend it only on cleaning up the codebase, not on (even simple) features. Basically, any "real" CEP that we consider doable and that we'd have a developer for could get a funding account where users could "vote" for it by donating money. (and that's where the legal issues start ...) Well, I seem to remember from a talk that NumFOCUS will have a full-time (or part-time?) position to deal with such administration. And they'll be set up as a non-profit (so tax-exempt for US-based donations). So I think that's a better route than PayPal. Should we solicit donations on our webpage with a link to NumFOCUS? (I can ask NumFOCUS whether they're cool with that.) Speaking for myself, I don't consider the time wasted that I invested into the Jenkins setup so far, and I'm also not sure there'd be all that much to gain by no longer administrating the server installation itself by ourselves. The bulk of the work is about configuring jobs and writing build/test/whatever scripts, which still applies to a cloud installation (with, I assume, the added disadvantage of no longer being able to ssh directly into the machine). There is SSH access at least to the environment where the tests are run, according to their web pages. ShiningPanda also offers features like testing on Windows. That *is* a feature, but it also takes up additional (paid) time. We wouldn't have to run continuous tests on it, though, just trigger tests manually when we want them. And it's in beta so far. But it's a feature sage.math will never get. Dag ___ cython-devel mailing list cython-devel@python.org http://mail.python.org/mailman/listinfo/cython-devel
Re: [Cython] some pull requests for 0.16?
On 03/22/2012 05:40 AM, mark florisson wrote: On 22 March 2012 07:18, Stefan Behnel wrote: Robert Bradshaw, 21.03.2012 21:24: On Wed, Mar 21, 2012 at 6:47 AM, mark florisson wrote: On 20 March 2012 18:51, Stefan Behnel wrote: mark florisson, 20.03.2012 17:40: On 18 March 2012 11:58, Stefan Behnel wrote: I put up two new pull requests on github: Implementation of PEP 380 (yield from): https://github.com/cython/cython/pull/96 Rewrite of dict iteration: https://github.com/cython/cython/pull/95 Given that the release of 0.16 has currently slowed down a bit, and given that these are really nice features, could someone (and especially Mark, as the responsible release manager) take a look at them and give an opinion regarding their suitability for 0.16? Sorry about the slowdown, my BT internet connection at home got closed off, so working on a release is rather hard, hopefully that will be fixed within the next few days. Thanks for the status update. Is there a separate release branch, or are you working off the github master? Not currently. I also agree that we should try to get out the release soon. What about this: I merge my pending pull requests, we test everything in Sage (it's been normally tested in my dev branch already), and if that doesn't break anything, we release another beta? If it does break anything, it's either easy enough to fix, or we can create a release branch at that point with the status before the merges. sage.math seems to be back up, although the /levi drive isn't. If there are no objections, I'll make sure Jenkins gets back up and then do the above. Is there a list of issues/blockers somewhere? Don't know. Mostly the pull requests and this reversed bug (http://trac.cython.org/cython_trac/ticket/763), which I marked as a blocker. As much as I would like to push stuff out early, I really find it more important to push something that is as stable and useful as possible, even if it delays a release by a couple of weeks. IMO, the ideal would be to release 0.16 now and 0.16.1 in a couple of weeks, but I respect that this depends on how much more additional work the release manager feels that involves. I agree that we should wait for the patch that was started on for that bug, bringing in new developers is the most important thing we can do and satisfying users who don't live on trunk is less important than that. Dag ___ cython-devel mailing list cython-devel@python.org http://mail.python.org/mailman/listinfo/cython-devel
Re: [Cython] funding (Re: sage.math problems?)
On Thu, Mar 22, 2012 at 2:21 PM, Dag Sverre Seljebotn wrote: > On 03/22/2012 10:52 AM, Stefan Behnel wrote: >> >> Dag Sverre Seljebotn, 22.03.2012 17:58: >>> >>> On 03/22/2012 09:03 AM, Stefan Behnel wrote: I would prefer copying the original installation over (including the build history), rather than rebuilding it. >>> >>> >>> I hope it doesn't come to this, but if it does, I think we should really >>> look hard at ShiningPanda instead. >> >> >> We could set up an OSS test account to see what we'd get for our money, >> i.e. how much of our build/test cycle we can put into one hour in their >> environment. >> >> >>> Honestly, my feeling is that if we can't rally up $240/month in funding >>> among Cython users then we might as well give up. >> >> >> As long as we have sage.math, I can think of better things to do with 240$ >> per month. Didn't we want to organise another workshop at some point? > > > I honestly don't think there's a lack of money for things like this once we > go around asking; the most expensive part of any workshop is the time of the > participants. > > Workshops in particular may be fundable through William's grant. The main > problem is when people are available. Robert will not be available for some > time, and neither will I (though I'm much less important these days), but if > the rest would like to meet up I'm sure it is fundable one way or the other. True. >> >>> ShiningPanda also offers features like testing on Windows. >> >> >> That *is* a feature, but it also takes up additional (paid) time. We >> wouldn't have to run continuous tests on it, though, just trigger tests >> manually when we want them. > > > And it's in beta so far. But it's a feature sage.math will never get. Well, I could let you start a Windows Virtual Machine, and you could connect via VNC... > > Dag > > ___ > cython-devel mailing list > cython-devel@python.org > http://mail.python.org/mailman/listinfo/cython-devel -- William Stein Professor of Mathematics University of Washington http://wstein.org ___ cython-devel mailing list cython-devel@python.org http://mail.python.org/mailman/listinfo/cython-devel
Re: [Cython] Jenkins down
Hi, /levi is back on sage.math. If you use it, I encourage you to continue doing so. However, please setup a crontab'd rsync backup of anything important on there to your /home directory. -- William On Thu, Mar 22, 2012 at 2:11 PM, William Stein wrote: > On Thu, Mar 22, 2012 at 11:59 AM, Robert Bradshaw wrote: >> Thanks for the offer. One problem I see is that /levi/scratch (a local >> disk) has been dismounted (or reconfigured). To save ourselves random >> permissions issues, it's probably best to run this script/job as >> scoder (I've got sudo). >> >> I'll see what I can do to get it running, assuming the sage.math >> issues have been resolved. > > David Roe is going to unplug/replug the disk. > > -- William > >> >> - Robert >> >> On Thu, Mar 22, 2012 at 5:46 AM, mark florisson >> wrote: >>> On 21 March 2012 13:58, Stefan Behnel wrote: Hi, it seems like the sage.math server is broken again, at least it's lacking mounts when I try to log in. I'll restart Jenkins as soon as it's back working. Stefan ___ cython-devel mailing list cython-devel@python.org http://mail.python.org/mailman/listinfo/cython-devel >>> >>> Logging in through ssh seems to work, should I run any of the scripts >>> from your home directory Stefan? e.g. restart_dead_hudson.sh or >>> starthudson.sh? >>> ___ >>> cython-devel mailing list >>> cython-devel@python.org >>> http://mail.python.org/mailman/listinfo/cython-devel > > > > -- > William Stein > Professor of Mathematics > University of Washington > http://wstein.org -- William Stein Professor of Mathematics University of Washington http://wstein.org ___ cython-devel mailing list cython-devel@python.org http://mail.python.org/mailman/listinfo/cython-devel
Re: [Cython] funding (Re: sage.math problems?)
On Thu, Mar 22, 2012 at 10:52 AM, Stefan Behnel wrote: > Dag Sverre Seljebotn, 22.03.2012 17:58: >> On 03/22/2012 09:03 AM, Stefan Behnel wrote: >>> I would prefer copying the original installation over >>> (including the build history), rather than rebuilding it. >> >> I hope it doesn't come to this, but if it does, I think we should really >> look hard at ShiningPanda instead. > > We could set up an OSS test account to see what we'd get for our money, > i.e. how much of our build/test cycle we can put into one hour in their > environment. > > >> Honestly, my feeling is that if we can't rally up $240/month in funding >> among Cython users then we might as well give up. > > As long as we have sage.math, I can think of better things to do with 240$ > per month. Didn't we want to organise another workshop at some point? +1, this would be a much more effective use of funding, though also easier to get funding for. > Regarding funding in general, maybe we should just start putting up one or > two of those sexy funding bars on our web site, like the PyPy devs do for > their funded projects. Assuming that goes well, it would also allow us to > put money on dedicated projects by paying basically ourselves for doing > tasks that we won't normally spend our precious spare time on (e.g. because > they appear too large for a weekend), but that we and our users deem > necessary for some reason. While that's a good idea in theory, I'm not sure how many additional hours would be freed up just because we could pay ourselves for it. Perhaps it would act primarily as an additional incentive to align our efforts with user request (though there are certainly already non-monetary incentives). A budget of a couple hundred a month is likely an order of magnitude too small to get as serious developer to attack "larger than can be done in a weekend" projects. Also, the monetization of Cython development changes the spirit of things a bit, and while I am a big fan of people being able to make money, or even a living, off of open source development, it complicates things a lot from a legal, financial, and political perspective. The current model of organization X is willing to pay developer Y for feature Z directly seems to work well enough for the moment. E.g. with GSoC, the bottleneck is finding good enough students and time to mentor them, not slots (=funding). Opening up funding to non-students could help a bit, but IMHO wouldn't change the balance that much (the gainfully employed cost a lot more and have less spare time). > Basically, any "real" CEP that we consider doable and that we'd have a > developer for could get a funding account where users could "vote" for it > by donating money. > > (and that's where the legal issues start ...) > > >> (And specifically, we >> could ask NumFOCUS first, and possibly share the queue with other open >> source projects on their lists, and possibly ask ShiningPanda for an OSS >> project rebate). > > Sure. > > >> I'm not primarily concerned with uptime, but with the time spent in >> maintaining the systems. The more that can be moved into the cloud the >> better for open source projects, if it means less maintenance, which is >> usually the case; see our move to GitHub. > > I don't know how much time the maintenance takes on UW side, but they're > using the machines for many other things, so I guess they'd have to invest > the time anyway. So they won't win much by us moving out. Yes. We add to the load a bit, but not much. And I don't see us saving administration time (the most lacking resource here) by moving to another service (if anything, it'd likely be more work). > Speaking for myself, I don't consider the time wasted that I invested into > the Jenkins setup so far, and I'm also not sure there'd be all that much to > gain by no longer administrating the server installation itself by > ourselves. The bulk of the work is about configuring jobs and writing > build/test/whatever scripts, which still applies to a cloud installation > (with, I assume, the added disadvantage of no longer being able to ssh > directly into the machine). > > >> ShiningPanda also offers features like testing on Windows. > > That *is* a feature, but it also takes up additional (paid) time. We > wouldn't have to run continuous tests on it, though, just trigger tests > manually when we want them. > > Stefan > ___ > cython-devel mailing list > cython-devel@python.org > http://mail.python.org/mailman/listinfo/cython-devel ___ cython-devel mailing list cython-devel@python.org http://mail.python.org/mailman/listinfo/cython-devel
Re: [Cython] Jenkins down
William Stein, 22.03.2012 19:38: > /levi is back on sage.math. > > If you use it, I encourage you to continue doing so. However, please > setup a crontab'd rsync backup of > anything important on there to your /home directory. Thanks! I'm on it. Stefan ___ cython-devel mailing list cython-devel@python.org http://mail.python.org/mailman/listinfo/cython-devel
Re: [Cython] Jenkins down
Thanks! I've restarted hudson/jenkins. https://sage.math.washington.edu:8091/hudson/ Lets try to put all the configuration/persistant data into someone's home directory, and use /levi/scratch for the workspaces only. William, is /levi/scratch the best place for file-IO intensive work? I think it should be slightly more persistent than /tmp (though we should look into whether that could be good enough). - Robert On Thu, Mar 22, 2012 at 11:38 AM, William Stein wrote: > Hi, > > /levi is back on sage.math. > > If you use it, I encourage you to continue doing so. However, please > setup a crontab'd rsync backup of > anything important on there to your /home directory. > > -- William > > On Thu, Mar 22, 2012 at 2:11 PM, William Stein wrote: >> On Thu, Mar 22, 2012 at 11:59 AM, Robert Bradshaw wrote: >>> Thanks for the offer. One problem I see is that /levi/scratch (a local >>> disk) has been dismounted (or reconfigured). To save ourselves random >>> permissions issues, it's probably best to run this script/job as >>> scoder (I've got sudo). >>> >>> I'll see what I can do to get it running, assuming the sage.math >>> issues have been resolved. >> >> David Roe is going to unplug/replug the disk. >> >> -- William >> >>> >>> - Robert >>> >>> On Thu, Mar 22, 2012 at 5:46 AM, mark florisson >>> wrote: On 21 March 2012 13:58, Stefan Behnel wrote: > Hi, > > it seems like the sage.math server is broken again, at least it's lacking > mounts when I try to log in. I'll restart Jenkins as soon as it's back > working. > > Stefan > ___ > cython-devel mailing list > cython-devel@python.org > http://mail.python.org/mailman/listinfo/cython-devel Logging in through ssh seems to work, should I run any of the scripts from your home directory Stefan? e.g. restart_dead_hudson.sh or starthudson.sh? ___ cython-devel mailing list cython-devel@python.org http://mail.python.org/mailman/listinfo/cython-devel >> >> >> >> -- >> William Stein >> Professor of Mathematics >> University of Washington >> http://wstein.org > > > > -- > William Stein > Professor of Mathematics > University of Washington > http://wstein.org > ___ > cython-devel mailing list > cython-devel@python.org > http://mail.python.org/mailman/listinfo/cython-devel ___ cython-devel mailing list cython-devel@python.org http://mail.python.org/mailman/listinfo/cython-devel
[Cython] dynamically compile and import pure python modules
Hey, For the fused type runtime dispatch I found it very convenient to use the with statement, but that is not supported in Python 2.4. However, the compiler could dynamically compile compiler code with the compiler itself and import it (pyximport), if it is not needed to compile Cython itself. I gave it a try and it seems to work like a charm (but probably needs more testing :): https://github.com/markflorisson88/cython/commit/0c2983056919f7f4d30a809724d7db0ace99d89b#diff-2 It seems like a bit of a hack, so I thought I'd bring it up here and ask for opinions, i.e. ask if anyone thinks it is a terrible idea. Mark ___ cython-devel mailing list cython-devel@python.org http://mail.python.org/mailman/listinfo/cython-devel
Re: [Cython] Jenkins down
On Thu, Mar 22, 2012 at 2:45 PM, Robert Bradshaw wrote: > Thanks! I've restarted hudson/jenkins. > https://sage.math.washington.edu:8091/hudson/ > > Lets try to put all the configuration/persistant data into someone's > home directory, and use /levi/scratch for the workspaces only. > > William, is /levi/scratch the best place for file-IO intensive work? I > think it should be slightly more persistent than /tmp (though we > should look into whether that could be good enough). Yes. Use /tmp if you're not using too much disk space -- it's a RAM disk! > > - Robert > > > On Thu, Mar 22, 2012 at 11:38 AM, William Stein wrote: >> Hi, >> >> /levi is back on sage.math. >> >> If you use it, I encourage you to continue doing so. However, please >> setup a crontab'd rsync backup of >> anything important on there to your /home directory. >> >> -- William >> >> On Thu, Mar 22, 2012 at 2:11 PM, William Stein wrote: >>> On Thu, Mar 22, 2012 at 11:59 AM, Robert Bradshaw >>> wrote: Thanks for the offer. One problem I see is that /levi/scratch (a local disk) has been dismounted (or reconfigured). To save ourselves random permissions issues, it's probably best to run this script/job as scoder (I've got sudo). I'll see what I can do to get it running, assuming the sage.math issues have been resolved. >>> >>> David Roe is going to unplug/replug the disk. >>> >>> -- William >>> - Robert On Thu, Mar 22, 2012 at 5:46 AM, mark florisson wrote: > On 21 March 2012 13:58, Stefan Behnel wrote: >> Hi, >> >> it seems like the sage.math server is broken again, at least it's lacking >> mounts when I try to log in. I'll restart Jenkins as soon as it's back >> working. >> >> Stefan >> ___ >> cython-devel mailing list >> cython-devel@python.org >> http://mail.python.org/mailman/listinfo/cython-devel > > Logging in through ssh seems to work, should I run any of the scripts > from your home directory Stefan? e.g. restart_dead_hudson.sh or > starthudson.sh? > ___ > cython-devel mailing list > cython-devel@python.org > http://mail.python.org/mailman/listinfo/cython-devel >>> >>> >>> >>> -- >>> William Stein >>> Professor of Mathematics >>> University of Washington >>> http://wstein.org >> >> >> >> -- >> William Stein >> Professor of Mathematics >> University of Washington >> http://wstein.org >> ___ >> cython-devel mailing list >> cython-devel@python.org >> http://mail.python.org/mailman/listinfo/cython-devel > ___ > cython-devel mailing list > cython-devel@python.org > http://mail.python.org/mailman/listinfo/cython-devel -- William Stein Professor of Mathematics University of Washington http://wstein.org ___ cython-devel mailing list cython-devel@python.org http://mail.python.org/mailman/listinfo/cython-devel
Re: [Cython] funding (Re: sage.math problems?)
Dag Sverre Seljebotn, 22.03.2012 19:21: > On 03/22/2012 10:52 AM, Stefan Behnel wrote: >> Dag Sverre Seljebotn, 22.03.2012 17:58: >>> On 03/22/2012 09:03 AM, Stefan Behnel wrote: I would prefer copying the original installation over (including the build history), rather than rebuilding it. >>> >>> I hope it doesn't come to this, but if it does, I think we should really >>> look hard at ShiningPanda instead. >> >> We could set up an OSS test account to see what we'd get for our money, >> i.e. how much of our build/test cycle we can put into one hour in their >> environment. >> >>> Honestly, my feeling is that if we can't rally up $240/month in funding >>> among Cython users then we might as well give up. >> >> As long as we have sage.math, I can think of better things to do with 240$ >> per month. Didn't we want to organise another workshop at some point? > > I honestly don't think there's a lack of money for things like this once we > go around asking; the most expensive part of any workshop is the time of > the participants. > > Workshops in particular may be fundable through William's grant. The main > problem is when people are available. Robert will not be available for some > time, and neither will I (though I'm much less important these days), but > if the rest would like to meet up I'm sure it is fundable one way or the > other. Yep, sounds like a time rather than money issue. >> Regarding funding in general, maybe we should just start putting up one or >> two of those sexy funding bars on our web site, like the PyPy devs do for >> their funded projects. Assuming that goes well, it would also allow us to >> put money on dedicated projects by paying basically ourselves for doing >> tasks that we won't normally spend our precious spare time on (e.g. because >> they appear too large for a weekend), but that we and our users deem >> necessary for some reason. > > Well, outright funding for projects is of a totally different order of > magnitude. The $240 doesn't pay for more than between 1 and 4 hours of > "grown-up" developer time (at least in Western Europe and US); for serious > feature-funding you're starting to need thousands or tens-of-thousands of > dollars rather than hundreds. PyPy manages to get those amounts. Just look at their home page, the projects are all in the tens of thousands of dollars. I don't think that's impossible for us. > Smaller constant-amount bounties (like GSoC) for fun stuff one would have > motivation to do otherwise is a different matter. My impression is that a) > core devs have no more time for Cython than they spend already, b) Cython > development is a bit too difficult to enter for random "bounty-hunters". Regarding b), PyPy is far worse. Regarding a), I'm not so sure. At least I would consider it a way to focus my work. Currently, I'm rather reluctant to starting anything that looks like more than a couple of evenings or a weekend. > Slightly related: I believe the best thing we can do to attract more > developers is to seriously clean up the codebase. My new year's resolution > is that if I get some days for working on Cython this year (I hope to), > I'll spend it only on cleaning up the codebase, not on (even simple) features. Yay! >> Basically, any "real" CEP that we consider doable and that we'd have a >> developer for could get a funding account where users could "vote" for it >> by donating money. >> >> (and that's where the legal issues start ...) > > Well, I seem to remember from a talk that NumFOCUS will have a full-time > (or part-time?) position to deal with such administration. And they'll be > set up as a non-profit (so tax-exempt for US-based donations). So I think > that's a better route than PayPal. Sounds like it. Is their tax-exempt status restricted to the US? That would be unfortunate for many donators. > Should we solicit donations on our webpage with a link to NumFOCUS? (I can > ask NumFOCUS whether they're cool with that.) Interesting. If they have the administration set up (BTW, is that paid or do they want something for that?), they should be able to handle project specific money as well. >> Speaking for myself, I don't consider the time wasted that I invested into >> the Jenkins setup so far, and I'm also not sure there'd be all that much to >> gain by no longer administrating the server installation itself by >> ourselves. The bulk of the work is about configuring jobs and writing >> build/test/whatever scripts, which still applies to a cloud installation >> (with, I assume, the added disadvantage of no longer being able to ssh >> directly into the machine). > > There is SSH access at least to the environment where the tests are run, > according to their web pages. Ok, that's cool. >>> ShiningPanda also offers features like testing on Windows. >> >> That *is* a feature, but it also takes up additional (paid) time. We >> wouldn't have to run continuous tests on it, though, just trigger tests >> manually
Re: [Cython] dynamically compile and import pure python modules
On 03/22/2012 11:50 AM, mark florisson wrote: Hey, For the fused type runtime dispatch I found it very convenient to use the with statement, but that is not supported in Python 2.4. However, the compiler could dynamically compile compiler code with the compiler itself and import it (pyximport), if it is not needed to compile Cython itself. I gave it a try and it seems to work like a charm (but probably needs more testing :): https://github.com/markflorisson88/cython/commit/0c2983056919f7f4d30a809724d7db0ace99d89b#diff-2 It seems like a bit of a hack, so I thought I'd bring it up here and ask for opinions, i.e. ask if anyone thinks it is a terrible idea. How about dropping Python 2.4 support for running Cython (though generated C files still run)? Dag ___ cython-devel mailing list cython-devel@python.org http://mail.python.org/mailman/listinfo/cython-devel
Re: [Cython] funding (Re: sage.math problems?)
On 03/22/2012 11:39 AM, Robert Bradshaw wrote: On Thu, Mar 22, 2012 at 10:52 AM, Stefan Behnel wrote: Dag Sverre Seljebotn, 22.03.2012 17:58: On 03/22/2012 09:03 AM, Stefan Behnel wrote: I would prefer copying the original installation over (including the build history), rather than rebuilding it. I hope it doesn't come to this, but if it does, I think we should really look hard at ShiningPanda instead. We could set up an OSS test account to see what we'd get for our money, i.e. how much of our build/test cycle we can put into one hour in their environment. Honestly, my feeling is that if we can't rally up $240/month in funding among Cython users then we might as well give up. As long as we have sage.math, I can think of better things to do with 240$ per month. Didn't we want to organise another workshop at some point? +1, this would be a much more effective use of funding, though also easier to get funding for. Regarding funding in general, maybe we should just start putting up one or two of those sexy funding bars on our web site, like the PyPy devs do for their funded projects. Assuming that goes well, it would also allow us to put money on dedicated projects by paying basically ourselves for doing tasks that we won't normally spend our precious spare time on (e.g. because they appear too large for a weekend), but that we and our users deem necessary for some reason. While that's a good idea in theory, I'm not sure how many additional hours would be freed up just because we could pay ourselves for it. Perhaps it would act primarily as an additional incentive to align our efforts with user request (though there are certainly already non-monetary incentives). A budget of a couple hundred a month is likely an order of magnitude too small to get as serious developer to attack "larger than can be done in a weekend" projects. Also, the monetization of Cython development changes the spirit of things a bit, and while I am a big fan of people being able to make money, or even a living, off of open source development, it complicates things a lot from a legal, financial, and political perspective. The current model of organization X is willing to pay developer Y for feature Z directly seems to work well enough for the moment. E.g. with GSoC, the bottleneck is finding good enough students and time to mentor them, not slots (=funding). Opening up funding to non-students could help a bit, but IMHO wouldn't change the balance that much (the gainfully employed cost a lot more and have less spare time). Basically, any "real" CEP that we consider doable and that we'd have a developer for could get a funding account where users could "vote" for it by donating money. (and that's where the legal issues start ...) (And specifically, we could ask NumFOCUS first, and possibly share the queue with other open source projects on their lists, and possibly ask ShiningPanda for an OSS project rebate). Sure. I'm not primarily concerned with uptime, but with the time spent in maintaining the systems. The more that can be moved into the cloud the better for open source projects, if it means less maintenance, which is usually the case; see our move to GitHub. I don't know how much time the maintenance takes on UW side, but they're using the machines for many other things, so I guess they'd have to invest the time anyway. So they won't win much by us moving out. Yes. We add to the load a bit, but not much. And I don't see us saving administration time (the most lacking resource here) by moving to another service (if anything, it'd likely be more work). OK. My comments were all predicated on the assumption saving administration time; and I totally trust yours and Stefan's judgement here. Dag ___ cython-devel mailing list cython-devel@python.org http://mail.python.org/mailman/listinfo/cython-devel
Re: [Cython] funding (Re: sage.math problems?)
On 03/22/2012 12:03 PM, Stefan Behnel wrote: Dag Sverre Seljebotn, 22.03.2012 19:21: Slightly related: I believe the best thing we can do to attract more developers is to seriously clean up the codebase. My new year's resolution is that if I get some days for working on Cython this year (I hope to), I'll spend it only on cleaning up the codebase, not on (even simple) features. Yay! Granted, that's only because Mark now takes care of adding all the special numerical computing features to the language ;-) Dag ___ cython-devel mailing list cython-devel@python.org http://mail.python.org/mailman/listinfo/cython-devel
Re: [Cython] dynamically compile and import pure python modules
Dag Sverre Seljebotn, 22.03.2012 20:12: > On 03/22/2012 11:50 AM, mark florisson wrote: >> For the fused type runtime dispatch I found it very convenient to use >> the with statement, but that is not supported in Python 2.4. However, >> the compiler could dynamically compile compiler code with the compiler >> itself and import it (pyximport), if it is not needed to compile >> Cython itself. I gave it a try and it seems to work like a charm (but >> probably needs more testing :): >> https://github.com/markflorisson88/cython/commit/0c2983056919f7f4d30a809724d7db0ace99d89b#diff-2 >> >> >> It seems like a bit of a hack, so I thought I'd bring it up here and >> ask for opinions, i.e. ask if anyone thinks it is a terrible idea. > > How about dropping Python 2.4 support for running Cython (though generated > C files still run)? For one, it would make it trickier to run the test suite. Stefan ___ cython-devel mailing list cython-devel@python.org http://mail.python.org/mailman/listinfo/cython-devel
Re: [Cython] funding (Re: sage.math problems?)
On Thu, Mar 22, 2012 at 12:03 PM, Stefan Behnel wrote: > Dag Sverre Seljebotn, 22.03.2012 19:21: >> On 03/22/2012 10:52 AM, Stefan Behnel wrote: >>> Dag Sverre Seljebotn, 22.03.2012 17:58: On 03/22/2012 09:03 AM, Stefan Behnel wrote: > I would prefer copying the original installation over > (including the build history), rather than rebuilding it. I hope it doesn't come to this, but if it does, I think we should really look hard at ShiningPanda instead. >>> >>> We could set up an OSS test account to see what we'd get for our money, >>> i.e. how much of our build/test cycle we can put into one hour in their >>> environment. >>> Honestly, my feeling is that if we can't rally up $240/month in funding among Cython users then we might as well give up. >>> >>> As long as we have sage.math, I can think of better things to do with 240$ >>> per month. Didn't we want to organise another workshop at some point? >> >> I honestly don't think there's a lack of money for things like this once we >> go around asking; the most expensive part of any workshop is the time of >> the participants. >> >> Workshops in particular may be fundable through William's grant. The main >> problem is when people are available. Robert will not be available for some >> time, and neither will I (though I'm much less important these days), but >> if the rest would like to meet up I'm sure it is fundable one way or the >> other. > > Yep, sounds like a time rather than money issue. > > >>> Regarding funding in general, maybe we should just start putting up one or >>> two of those sexy funding bars on our web site, like the PyPy devs do for >>> their funded projects. Assuming that goes well, it would also allow us to >>> put money on dedicated projects by paying basically ourselves for doing >>> tasks that we won't normally spend our precious spare time on (e.g. because >>> they appear too large for a weekend), but that we and our users deem >>> necessary for some reason. >> >> Well, outright funding for projects is of a totally different order of >> magnitude. The $240 doesn't pay for more than between 1 and 4 hours of >> "grown-up" developer time (at least in Western Europe and US); for serious >> feature-funding you're starting to need thousands or tens-of-thousands of >> dollars rather than hundreds. > > PyPy manages to get those amounts. Just look at their home page, the > projects are all in the tens of thousands of dollars. I don't think that's > impossible for us. Cool, that's promising. Do you think we would have the developer resources to follow through if we did something like this? >> Smaller constant-amount bounties (like GSoC) for fun stuff one would have >> motivation to do otherwise is a different matter. My impression is that a) >> core devs have no more time for Cython than they spend already, b) Cython >> development is a bit too difficult to enter for random "bounty-hunters". > > Regarding b), PyPy is far worse. Possibly. > Regarding a), I'm not so sure. At least I would consider it a way to focus > my work. Currently, I'm rather reluctant to starting anything that looks > like more than a couple of evenings or a weekend. Though the crazyiness in my personal life over the last 6+ months is winding down, I doubt I'd have enough spare time to be, e.g., the equivalent of 1/4-full time, or that funding would significantly change the situation. But that's not an argument against not letting you (and the rest of the project) benefit. >> Slightly related: I believe the best thing we can do to attract more >> developers is to seriously clean up the codebase. My new year's resolution >> is that if I get some days for working on Cython this year (I hope to), >> I'll spend it only on cleaning up the codebase, not on (even simple) >> features. > > Yay! +100 >>> Basically, any "real" CEP that we consider doable and that we'd have a >>> developer for could get a funding account where users could "vote" for it >>> by donating money. >>> >>> (and that's where the legal issues start ...) >> >> Well, I seem to remember from a talk that NumFOCUS will have a full-time >> (or part-time?) position to deal with such administration. And they'll be >> set up as a non-profit (so tax-exempt for US-based donations). So I think >> that's a better route than PayPal. > > Sounds like it. Is their tax-exempt status restricted to the US? That would > be unfortunate for many donators. Tax-exempt status is a criteria set by each individual government, not by the entity. I'm sure if it helped money flow in they would consider filing the necessary paperwork. >> Should we solicit donations on our webpage with a link to NumFOCUS? (I can >> ask NumFOCUS whether they're cool with that.) > > Interesting. If they have the administration set up (BTW, is that paid or > do they want something for that?), they should be able to handle project > specific money as well. > > >>> Speaking for myself, I don't consider the time w
Re: [Cython] funding (Re: sage.math problems?)
On Thu, Mar 22, 2012 at 2:03 PM, Stefan Behnel wrote: > > > Well, I seem to remember from a talk that NumFOCUS will have a full-time > > (or part-time?) position to deal with such administration. And they'll be > > set up as a non-profit (so tax-exempt for US-based donations). So I think > > that's a better route than PayPal. > > Sounds like it. Is their tax-exempt status restricted to the US? That would > be unfortunate for many donators. > NUMFOCUS is in the process of trying to get 501c status, but does not yet have it. This will take some time. This means individual donations will not be tax exempt in the US until we have that status. If businesses are donating, they can deduct it as a business expense, but individuals are out of luck for now. > > > Should we solicit donations on our webpage with a link to NumFOCUS? (I > can > > ask NumFOCUS whether they're cool with that.) > > Interesting. If they have the administration set up (BTW, is that paid or > do they want something for that?), they should be able to handle project > specific money as well. NUMFOCUS does have a full time administrator, and will be happy to process and distribute targeted donations for Cython. This is at a "no cost to you" basis, ie the foundation will not take overhead but will cover these costs out of NUMFOCUS donations. At least that is my understanding, but I can confirm at the next director's meeting. JDH ___ cython-devel mailing list cython-devel@python.org http://mail.python.org/mailman/listinfo/cython-devel
Re: [Cython] funding (Re: sage.math problems?)
John Hunter, 22.03.2012 20:39: > On Thu, Mar 22, 2012 at 2:03 PM, Stefan Behnel wrote: >>> Well, I seem to remember from a talk that NumFOCUS will have a full-time >>> (or part-time?) position to deal with such administration. And they'll be >>> set up as a non-profit (so tax-exempt for US-based donations). So I think >>> that's a better route than PayPal. >> >> Sounds like it. Is their tax-exempt status restricted to the US? That would >> be unfortunate for many donators. > > NUMFOCUS is in the process of trying to get 501c status, but does not yet > have it. This will take some time. This means individual donations will > not be tax exempt in the US until we have that status. If businesses are > donating, they can deduct it as a business expense, but individuals are out > of luck for now. Ok, just for clarification: the foundation is US based and not currently targeting any other countries, right? Personally, I think most serious donations would be from companies anyway, which would then not be restricted to the US. And for individuals, we could still put up a PayPal button (if we have anything to let them pay for). >>> Should we solicit donations on our webpage with a link to NumFOCUS? (I >>> can ask NumFOCUS whether they're cool with that.) >> >> Interesting. If they have the administration set up (BTW, is that paid or >> do they want something for that?), they should be able to handle project >> specific money as well. > > NUMFOCUS does have a full time administrator, and will be happy to process > and distribute targeted donations for Cython. This is at a "no cost to > you" basis, ie the foundation will not take overhead but will cover these > costs out of NUMFOCUS donations. At least that is my understanding, but I > can confirm at the next director's meeting. Cool. Then I'm all for taking that route. Stefan ___ cython-devel mailing list cython-devel@python.org http://mail.python.org/mailman/listinfo/cython-devel
Re: [Cython] funding (Re: sage.math problems?)
On Thu, Mar 22, 2012 at 12:49 PM, Stefan Behnel wrote: > John Hunter, 22.03.2012 20:39: >> On Thu, Mar 22, 2012 at 2:03 PM, Stefan Behnel wrote: Well, I seem to remember from a talk that NumFOCUS will have a full-time (or part-time?) position to deal with such administration. And they'll be set up as a non-profit (so tax-exempt for US-based donations). So I think that's a better route than PayPal. >>> >>> Sounds like it. Is their tax-exempt status restricted to the US? That would >>> be unfortunate for many donators. >> >> NUMFOCUS is in the process of trying to get 501c status, but does not yet >> have it. This will take some time. This means individual donations will >> not be tax exempt in the US until we have that status. If businesses are >> donating, they can deduct it as a business expense, but individuals are out >> of luck for now. > > Ok, just for clarification: the foundation is US based and not currently > targeting any other countries, right? > > Personally, I think most serious donations would be from companies anyway, > which would then not be restricted to the US. And for individuals, we could > still put up a PayPal button (if we have anything to let them pay for). > > Should we solicit donations on our webpage with a link to NumFOCUS? (I can ask NumFOCUS whether they're cool with that.) >>> >>> Interesting. If they have the administration set up (BTW, is that paid or >>> do they want something for that?), they should be able to handle project >>> specific money as well. >> >> NUMFOCUS does have a full time administrator, and will be happy to process >> and distribute targeted donations for Cython. This is at a "no cost to >> you" basis, ie the foundation will not take overhead but will cover these >> costs out of NUMFOCUS donations. At least that is my understanding, but I >> can confirm at the next director's meeting. > > Cool. Then I'm all for taking that route. That would be great! - Robert ___ cython-devel mailing list cython-devel@python.org http://mail.python.org/mailman/listinfo/cython-devel
Re: [Cython] funding (Re: sage.math problems?)
On Thu, Mar 22, 2012 at 2:49 PM, Stefan Behnel wrote: > > Ok, just for clarification: the foundation is US based and not currently > targeting any other countries, right? > That's my understanding. Getting US non-profit status is a lot of work to start with. I'm not familiar with what it will take for other countries but I will bring it up at the next meeting. JDH ___ cython-devel mailing list cython-devel@python.org http://mail.python.org/mailman/listinfo/cython-devel
Re: [Cython] dynamically compile and import pure python modules
mark florisson, 22.03.2012 19:50: > For the fused type runtime dispatch I found it very convenient to use > the with statement, but that is not supported in Python 2.4. However, > the compiler could dynamically compile compiler code with the compiler > itself and import it (pyximport), if it is not needed to compile > Cython itself. I gave it a try and it seems to work like a charm (but > probably needs more testing :): > https://github.com/markflorisson88/cython/commit/0c2983056919f7f4d30a809724d7db0ace99d89b#diff-2 The advantages are limited, so I'm leaning towards seeing the drawbacks, of which there are at least some. For one, *running* Cython (as opposed to installing it) becomes more complex and involves a (much) higher first time overhead. We'd also start putting shared libraries into user directories without asking them first. Might be a problem on shared installations with many users. Note also that Cython no longer compiles itself when installing in PyPy (at all), but that would be easy to special case here (and PyPy obviously has features like the "with" statement). Next, I think it would tempt us to split source files into separate modules just because that way we can use a specific feature in one of them because it'll get compiled (and the other half is needed for bootstrapping). That would be bad design. OTOH, it might be worth taking a general look at the code base to see what's really required for bootstrapping, or maybe for compiling pure Python code in general. Factoring that out, and thus separating the Python compiler from the Cython specific language features might (might!) be an actual improvement. (Then again, there's .pxd overriding and the "cython" module, which add Cython features back in, and those two make Cython much more attactive...) I also started to dislike pyximport because it's way outdated, fragile, complicated and its features are overly hacked together (and I'm not entirely innocent in that regard). I would love to see a rewrite that also supports compiling packages properly. Not a GSoC by itself, but it's certainly a worthy project. What about a project that aims for separating out a Python compiler and rewriting pyximport as a jitty frontend for it? Maybe not the greatest use case ever, but a fun project, I'd say. Stefan ___ cython-devel mailing list cython-devel@python.org http://mail.python.org/mailman/listinfo/cython-devel
Re: [Cython] some pull requests for 0.16?
On Thu, Mar 22, 2012 at 11:10 AM, Stefan Behnel wrote: > Stefan Behnel, 20.03.2012 18:51: >> mark florisson, 20.03.2012 17:40: >>> As for the two pull requests, both are quite large, but the dict >>> iteration rewrite is more like an enhancement whereas the 'yield from' >>> is really a new (somewhat big) feature. I would personally prefer to >>> merge only enhancements and bug fixes, but not new features. >> >> Funny. I would have proposed the opposite, because I consider the "yield >> from" implementation (as a new language feature) safer than the dict >> iteration (which impacts existing code). As I said, I wouldn't mind >> postponing both to 0.16.1, but I think it would be better to get them out >> and have people use them, so that we can also fix the bugs earlier. > > Coming back to this, I think the main question is: what does our versioning > scheme mean? Personally, I would expect a 0.16 release to come with new > features compared to 0.15.x, and a 0.16.1 release to fix the bugs that > these features (and other changes) have introduced, without changing too > much of what makes up the 0.16 release series. Yes, this is loosely what our versioning scheme means. > I know that we've rarely followed that distinction (we sometimes didn't > even have point releases), so it doesn't really matter what we add in > 0.16.1, I guess. I just thought I'd bring up the question what would make a > 0.17 release different from a 0.16.1 release. So far, it appears to have > been more of an issue of how much time has passed since the last release, > which usually goes hand in hand with a substantial set of changes. If we have something big, then the next release will be 0.17, otherwise it'll be 0.16.1. There is a correlation with time, but that's not the deciding factor. (If we released right after memory views went in last fall, despite little time passing from 0.15.1, that would have still merited 0.16.) The 1.0 goal is still full Python compatibility, as decided at the workshop. The work on CyFunctions has gotten us much closer (in fact the list at http://trac.cython.org/cython_trac/query?milestone=1.0 seems very out of date.) - Robert ___ cython-devel mailing list cython-devel@python.org http://mail.python.org/mailman/listinfo/cython-devel
Re: [Cython] some pull requests for 0.16?
One more note about release numbering, ideally no 0.x.y release should be in any way backwards incompatible. On Thu, Mar 22, 2012 at 11:25 AM, Dag Sverre Seljebotn wrote: > > IMO, the ideal would be to release 0.16 now and 0.16.1 in a couple of weeks, > but I respect that this depends on how much more additional work the release > manager feels that involves. Shorter release cycles should mean less work. I'd be all for a 0.16.1 shortly following a 0.16 (and a 0.16.2 not long after that). IMHO we've gone way to long (partially my fault) since 0.15.1. > I agree that we should wait for the patch that was started on for that bug, > bringing in new developers is the most important thing we can do and > satisfying users who don't live on trunk is less important than that. In your experience, how many people live on trunk? I think most people only upgrade to stable releases, and this is certainly what lives in the standard distributions/package repositories. Well, we don't want to release with the bug, and if that's the only thing, than I wouldn't want to wait too long on it before a release (though disabling the optimization and getting a proper fix in later is fine). I agree that encouraging and enabling new developers is very important (and in this particular case got the wrong impression that Mike wasn't looking at it). - Robert ___ cython-devel mailing list cython-devel@python.org http://mail.python.org/mailman/listinfo/cython-devel
Re: [Cython] funding (Re: sage.math problems?)
On Thu, Mar 22, 2012 at 1:03 PM, John Hunter wrote: > That's my understanding. Getting US non-profit status is a lot of work to > start with. I'm not familiar with what it will take for other countries but > I will bring it up at the next meeting. At PyCon, we had some brief conversations with folks involved with the European side of Python activities, and Travis also had some conversations with the PSF (which is a US-based c3 non-profit). I hope that over the next few weeks we'll be able to clarify some all of this and start offering a solution for the very problem being discussed here. I'm doubly motivated to make this happen both as part of NumFocus and b/c I want to do the exact same thing regarding IPython funding. In IPython we've recently incurred expenses that are well beyond my 'pocket change' comfort zone, and we need to recover those costs. So stay tuned, it won't be days before we know, but hopefully not more than a few weeks and we'll have a slightly more coherent answer to report. Cheers, f ___ cython-devel mailing list cython-devel@python.org http://mail.python.org/mailman/listinfo/cython-devel
Re: [Cython] funding (Re: sage.math problems?)
Robert Bradshaw, 22.03.2012 19:39: > On Thu, Mar 22, 2012 at 10:52 AM, Stefan Behnel wrote: >> Regarding funding in general, maybe we should just start putting up one or >> two of those sexy funding bars on our web site, like the PyPy devs do for >> their funded projects. Assuming that goes well, it would also allow us to >> put money on dedicated projects by paying basically ourselves for doing >> tasks that we won't normally spend our precious spare time on (e.g. because >> they appear too large for a weekend), but that we and our users deem >> necessary for some reason. > > While that's a good idea in theory, I'm not sure how many additional > hours would be freed up just because we could pay ourselves for it. And if more than one person frees hours for a given project, how would we distribute the money? And how do we know we can still trust each other when it comes to counting the hours? ;) > Perhaps it would act primarily as an additional incentive to align our > efforts with user request (though there are certainly already > non-monetary incentives). There sure are, and I'm sure that won't change. We should see it as an addition to what we invest voluntarily. No-one's going to pay for code cleanup and refactoring, for example, or for tweaks and "having fun at the weekend" code and "I hate that being slow" optimisations. We are not necessarily talking about large projects here that represent person months of value. If I were to decide if I'd start implementing a feature that looks like taking me, say, 10 days, and I'm not seriously self-motivated in doing it, I won't even start because I know that I'll have enough other things to do in the meantime that weigh in equally for me. But, when I know I'll be paid for doing it, I'll certainly consider shifting my priorities. And even if it takes three months to finish it in my spare time, it would still be done in the end, which is much better than just staying an open tracker entry forever. > the > monetization of Cython development changes the spirit of things a bit, > and while I am a big fan of people being able to make money, or even a > living, off of open source development I think if that works depends a lot on what you do exactly, who the users are and also what you do in order to sell it (and yourself). It doesn't work for every project and certainly not for everyone. > it complicates things a lot > from a legal, financial, and political perspective. Yes, I'm seeing that, too. But in any case, before it comes to asking for donations for a given feature/project/fix/whatever, one of the first questions will be: who can do it? And when? I think that will kill a lot of political hassle early enough (although hopefully not the project in question ;). > The current model of organization X is willing to pay developer Y for > feature Z directly seems to work well enough for the moment. That would still work. However, a donation based model would allow us to lower the barrier. Paying a whole feature may be too much for a single (smaller) company, and they would have to know exactly what they want in order to ask us to do it for them. If, instead, we put up a list of projects we consider worth doing and they can make a donation of, say, 5% or 10% of the actual sum and let others pay for the same feature as well, they can just use it to show their appreciation for the general gain we give them, without desperately needing a given feature themselves. It would also allow users to contribute money for "nice to have" features, which is otherwise less likely to happen. > E.g. with > GSoC, the bottleneck is finding good enough students and time to > mentor them, not slots (=funding). The mentors are not getting paid in a GSoC. So we invest our time by guiding the student, and that's regardless of the usability of the outcome. Even if there is an outcome, it's not unheard of that the mere overhead of cleaning up and integrating the contribution comes close to reimplementing it. It doesn't always work out as well as with Dag and Mark. I'm not saying GSoCs are bad - we've certainly had a boost of overall development power through them. But they are just one way to fund the development, and not always the best one. > Opening up funding to non-students > could help a bit, but IMHO wouldn't change the balance that much (the > gainfully employed cost a lot more and have less spare time). It's certainly not the right way to attract new developers. But it's a way to advance the development. Stefan ___ cython-devel mailing list cython-devel@python.org http://mail.python.org/mailman/listinfo/cython-devel