Boost logo

Boost :

Subject: Re: [boost] [C++-sig] [Python] GSoC and Python 3.0 Support
From: Haoyu Bai (divinekid_at_[hidden])
Date: 2009-03-12 06:19:58

On Thu, Mar 12, 2009 at 4:50 AM, Niall Douglas
<s_sourceforge_at_[hidden]> wrote:
> On 11 Mar 2009 at 13:42, Ravi wrote:
>> On Wednesday 11 March 2009 12:38:55 Haoyu Bai wrote:
>> > > 1. Thread safety
>> > > 2. PyFinalize support
>> > > 3. Easier methods to write to_python/from_python converters
>> > > 4. Python 3.0 support
>> > > 5. Ability to extend the fundamental PyTypeObject used by boost.python
> My thread safety patch is still working to my knowledge. It sure
> would be lovely to have it officially integrated. I'd also like to
> see PyFinalize working though maybe not "complete" in the sense of a
> total cleanup (just "good enough").
> I would say that any GSoC project should choose *one* of the above
> rather than try combining them. Better to do one thing well and in
> stages than many things at once (unless you have loads of spare
> time!).
> I have been out of commission development-wise during the last few
> years as I have been undertaking some very time consuming academic
> study - hence I have been very quiet on here. However, I finally
> become free come this June and at long, long last I finally can
> return to my own self-directed study (but now I have a whole pile of
> bits of paper to officially say I can do what I was already capable
> of). I will certainly be updating my TnFOX library for sure anyway,
> and that means fresh Python bindings.
>> > Thanks! Seems there's a lot of interesting. So would anyone willing to
>> > mentor this?
>> Sadly, I suspect that finding a mentor will be difficult (perhaps even more
>> difficult than the actual project). Off the top of my head, the following
>> folks come to mind:
>>   - Dave Abrahams
>>   - Stefan Seefeld
>>   - Ralf Grosse-Kunstleve
>>   - Roman Yakovenko
>> You might try contacting them off list or on c++-sig (cc'ed on this email).
> It's not /quite/ as easy as that ... Google want a mentoring
> organisation rather than just a mentor and it has to be an approved
> one. I could volunteer as mentor but I wouldn't qualify as I don't
> come with an organisation attached. I'd need an approved organisation
> to adopt me.
>> I did not mean to imply that the features I requested should be part of your
>> GSoC. Thread safety & PyFinalize support would each be worth a GSoC project
>> just by themselves, IMHO. If you will be tackling python 3.0 support, it might
>> be possible to combine it with greater support for embedding python since much
>> of the work in both aspects would be about wrapping python C API for C++
>> programmers.
> As mentioned before, thread safety is actually fairly trivial as all
> the required work is already done. There is certainly some work
> involved in writing a test suite and making my patch much more
> generic as my patch was specifically designed to be diff-friendly to
> any Boost alterations, and it doesn't make for good code. I would be
> happy to mentor this project if we can find an approved mentoring
> organisation to adopt me. It certainly would be a good GSoC for a
> student programmer.
> PyFinalize() is likely just a hard slog in catching all the code
> paths you wouldn't expect. It's harder than thread safety, but doable
> as a GSoc.
> Adding Python 3.0 support ... I am afraid I have no idea as I've been
> out of the coding scene for two years now, but it does sound big and
> complex. But it's something I'm interested in though I'd be not much
> use as a mentor except as in general Boost.Python programming.
> So, I guess you got a bit of a mentor if you'd like. BTW, I couldn't
> start mentoring till the start of June as I have my final project due
> then. But that fits the GSoC timetable just perfect.
> If you want to know more about my suitability, search this mailing
> list.
> HTH,
> Niall


Thanks Niall, it is great that you are willing to mentor. Also you
don't need to worry about the Python 3.0 things, since I have worked
on it and have knowledge about the API change. On the other side, I
need guidance of Boost.Python internals, which you are familiar. Your
time table is OK, but should notice that there's some trival things
before the coding started, eg. sign up as mentor and evaluating
proposal, hope you have time to do so. Hopefully you will be a great
mentor! :-)

One issue is that seems Boost is not going to participant in this
year's GSoC as a mentor organization. (Anyone knows the real situation
please clarify this, thanks!) If so, the project may could be attached
to PSF, since it is Python related.

We may limit the scope of this project to py3k support and
thread-safety. I'll try to learn more about Boost.Python internals and
see if the scope is feasible.

Thanks you all! :-)

-- Haoyu Bai

Boost list run by bdawes at, gregod at, cpdaniel at, john at