Re: [HTCondor-devel] HTCondor Python Bindings: propose to implement via pybind11 instead of Boost?


Date: Tue, 24 Apr 2018 15:23:57 -0500
From: Brian Bockelman <bbockelm@xxxxxxxxxxx>
Subject: Re: [HTCondor-devel] HTCondor Python Bindings: propose to implement via pybind11 instead of Boost?


On Apr 24, 2018, at 3:05 PM, Greg Thain <gthain@xxxxxxxxxxx> wrote:

On 04/24/2018 02:46 PM, Todd Tannenbaum wrote:
Hi all,

Currently our increasingly popular HTCondor python bindings are implemented via Boost.Python.  Now that all HTCondor supported platforms have C++11-compatible compilers, I propose we consider implementing our bindings via pybind11 [see below for description] instead.

Note that RHEL6 doesn't fully support c++11.

pybind11 needs gcc 4.8 or VC++ 2015.  RHEL 6 is gcc 4.4.  RHEL 7 is gcc 4.8.

I'm feeling increasing frustrated by the age of the default c++ compilers on RHEL.  There are packages for EL that provide modern gcc's that statically link in the c++ libraries, so that they run on stock el6/7s.  Perhaps this is a path we should consider, even though it inconveniences our downstream friends?


Ugh.  C++11.  Who uses such an old language?  :)  (I work with people who are cranky that we didn't switch to C++17 until last month)

What's the remaining RHEL6 lifetime?  Can we do this changeover at release boundaries?  It feels like it's perhaps a bit early on that...

Otherwise, we could live with things ifdef'd between pybind11 and boost for awhile.  We are historically bad at ripping out old code, aren't we?

There are a few places where we dig deep into the guts of boost.  I would suggest doing some preliminary investigations into pybind before we go too far with the C++11 thread.

Brian
[← Prev in Thread] Current Thread [Next in Thread→]