ochubar / SRW

Synchrotron Radiation Workshop
Other
86 stars 70 forks source link

SRWLOptCryst.find_orient no longer sets aux_energy and aux_ang_dif_pl #24

Open robnagler opened 4 years ago

robnagler commented 4 years ago

find_orient changed recently to eliminate the assignment of self.aux_ang_dif_pl and aux_energy from parameters _ang_dif_pl and _en:

#self.aux_energy = _en #MR01082016: renamed self.energy to self.aux_energy.
#self.aux_ang_dif_pl = _ang_dif_pl #MR01082016: renamed self.ang_dif_pl to self.aux_ang_dif_pl.
#OC17112019 (commented-out the above)

I don't see OC17112019 showing up before 63a08f85b299d6a34115db2f7e6d314206d3ca5c on 3/26.

For Sirepo, this breaks python imports. Here's an example:

        orientDataCr1 = opCr1.find_orient(_en=_v.op_DCM_e0, _ang_dif_pl=1.5707963) # Horizontally-deflecting  #MR15032016: replaced "op_DCM_e" by "op_DCM_e0" to test the import in Sirepo

We expected the aux_ang_dif_pl to be set, which will be stored as the grazingAngle for the crystal in Sirepo.

It would be nice to be warned of breaking changes. I was confused, because we are migrating to py3, and the test was failing strangely. There were other bugs related to the importer so it took a while to track this down.