cctbx / cctbx_project

Computational Crystallography Toolbox
https://cci.lbl.gov/docs/cctbx
Other
216 stars 114 forks source link

Proposal: extract PHIL into a standard python package #565

Open graeme-winter opened 3 years ago

graeme-winter commented 3 years ago

I would like to be able to use PHIL for input for a non-cctbx / non-DIALS Python project and it would be very nice to be able to

pip install phil

or

conda install phil

and not get the whole of cctbx etc. - currently we are using JSON for input to this and mapping to PHIL would be almost identical UI wise but much more useful.

Is there any hostility to making PHIL a standard Python package? I can see there being takers for it as it is a lot more useful for complex input than anything else in the standard library.

dagewa commented 3 years ago

I like this idea. PHIL has some nice features and it would be laudable to gift that to the general Python community. The fact that "core PHIL" is extensible (e.g. to iotbx.phil) gives some hope that it could be extracted cleanly, but I do wonder how deep the roots go into libtbx. Worth a look.

nksauter commented 3 years ago

The experience with dxtbx was entirely unsatisfactory. Once it was moved out of cctbx_project, new coding practices were introduced outside of our control here at Berkeley Lab. In my view there are two options for PHIL: a) keep everything exactly as it is now. b) separate PHIL into a new repository entirely under LBNL control; still open source, but no shared development.

On Thu, Nov 19, 2020 at 12:53 AM David Waterman notifications@github.com wrote:

I like this idea. PHIL has some nice features and it would be laudable to gift that to the general Python community. The fact that "core PHIL" is extensible (e.g. to iotbx.phil) gives some hope that it could be extracted cleanly, but I do wonder how deep the roots go into libtbx. Worth a look.

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/cctbx/cctbx_project/issues/565#issuecomment-730225472, or unsubscribe https://github.com/notifications/unsubscribe-auth/ADQ24VVWGJTFYECMTTKCYF3SQTMJXANCNFSM4T3AA7VA .

stranskj commented 3 years ago

Yes, please. I actually was just looking on how to use Phil stand-alone... Cannot believe the issue is just 4days old :-D Something like PHIL is teriblly missing in Python... There is plenty other CLI stuff, but non suitable for potentialy complex inputs. JSON is to picky to be user friendly.

Please, make it even from pip only. However, there is already 'phil' package in PyPi already.

bkpoon commented 3 years ago

This looks like something to be discussed at the next cctbx management meeting. A potential solution is that I can build the conda and pip packages for PHIL without changing anything in the repository.