Details
-
Type:
Improvement
-
Status: Done
-
Resolution: Done
-
Fix Version/s: None
-
Component/s: None
-
Labels:
-
Story Points:6
-
Epic Link:
-
Sprint:AP F18-2
-
Team:Alert Production
Description
Upgrade pybind11 from 2.1.x to 2.2.3, the current release and update our pybind11 wrappers to eliminate compiler warnings from use of deprecated pybind11 features.
Attachments
Issue Links
- duplicates
-
DM-11765 Update pybind11 wrappers to use PYBIND11_MODULE instead of init
- Invalid
- is blocked by
-
DM-14864 Make afw pybind11 wrappers compatible with pybind11 2.2.3
- Done
-
DM-15132 Fix errors in jointcal pybind11 wrappers
- Done
-
DM-15126 Make meas_* compatible with pybind11 2.2 (as well as 2.1)
- Done
- is triggering
-
DM-15151 Set symbol visibility to hidden in pybind11 wrappers
- Done
-
DM-15183 Update developer guide for pybind11 2.2
- Done
-
DM-15187 Modernize sphgeom pickle support for pybind11 2.2
- Done
- mitigates
-
DM-11820 Upgrade pybind11 pickling support
- Won't Fix
- relates to
-
DM-11695 Upgrade pybind11 version to upstream v2.2.0
- Invalid
Activity
Field | Original Value | New Value |
---|---|---|
Risk Score | 0 |
Watchers | Russell Owen [ Russell Owen ] | Jim Bosch, Russell Owen [ Jim Bosch, Russell Owen ] |
Story Points | 2 | 6 |
Status | To Do [ 10001 ] | In Progress [ 3 ] |
Epic Link |
|
Sprint | AP F18-2 [ 747 ] | |
Team | Alert Production [ 10300 ] |
Reviewers | Nate Lust [ nlust ] | |
Status | In Progress [ 3 ] | In Review [ 10004 ] |
Comment |
[ A deprecation warning to keep in mind (in afw); seen when running unit tests:
{code} /Users/rowen/UW/LSST/lsstsw3/miniconda/lib/python3.6/importlib/_bootstrap.py:205: FutureWarning: pybind11-bound class 'lsst.pex.policy.policyFile.PolicyFile' is using an old-style placement-new '__init__' which has been deprecated. See the upgrade guide in pybind11's docs. This message is only visible when compiled in debug mode. {code} ] |
Comment | [ pybind11 2.2 [deprecates placement-new custom constructors |https://github.com/pybind/pybind11/blob/master/docs/upgrade.rst#new-api-for-defining-custom-constructors-and-pickling-functions]. Unfortunately the new syntax is not available in pybindd 2.1 so fixing this is part of the upgrade to pybind11 2.2. Affected packages include afw, meas_algorithms, pex_policy, sphgeom (based on a search for {{\_\_init\_\_}} in .cc files) ] |
Risk Score | 0 | 1 |
Comment |
[ I tried running Jenkins with 2.2.3 and afw failed with the following error:
{code} /home/jenkins-slave/workspace/stack-os-matrix/centos-6.devtoolset-6.py3/lsstsw/stack/Linux64/pybind11/tickets. ::::: [2018-06-19T00:23:43.758666Z] /home/jenkins-slave/workspace/stack-os-matrix/centos-6.devtoolset-6.py3/lsstsw/stack/Linux64/pybind11/tickets. ::::: [2018-06-19T00:23:43.758681Z] python/lsst/afw/detection/footprintSet.cc:114:30: required from here ::::: [2018-06-19T00:23:43.758695Z] /home/jenkins-slave/workspace/stack-os-matrix/centos-6.devtoolset-6.py3/lsstsw/stack/Linux64/pybind11/tickets. ::::: [2018-06-19T00:23:43.758709Z] rec->impl = [](function_call &call) -> handle { ::::: [2018-06-19T00:23:43.758723Z] {code} ] |
Description |
Upgrade pybind11 from 2.1.x to 2.2.3, the current release.
This will result in compiler warnings due to using an older macro in our wrappers. |
Upgrade pybind11 from 2.1.x to 2.2.3, the current release and update code to eliminate compiler warnings. |
Description | Upgrade pybind11 from 2.1.x to 2.2.3, the current release and update code to eliminate compiler warnings. | Upgrade pybind11 from 2.1.x to 2.2.3, the current release and update our pybind11 wrappers to eliminate compiler warnings from use of deprecated pybind11 features. |
Resolution | Done [ 10000 ] | |
Status | In Review [ 10004 ] | Done [ 10002 ] |