A community effort to develop an open standard library for Medical Physics in Python. Building quality transparent software together via peer review and open source distribution. Open code is better science.
interpolation
package by default. Initial testing shows improvements in gamma calculation times by approximately a factor of 4. PR #1761
inverse_grey
ROI display colour. PR #1784
pseudonymise
, quickcheck
and streamlit
have been removed. These may be added back upon request.pymedphys dicom anonymise
now produces DICOM conformant patient names in the anonymised result.
logging
module. The quiet
parameter for
pymedphys.gamma
is deprecated but its use is non-breaking (for now).pymedphys.electronfactors
has been added back in to the public API in
Pull Request.dev
extra has been reduced and an additional extra all
has been added:
Pull Request
Delivery.from_monaco
wouldn't be able to load beams
where the stop angle of one beam was +180 and the start angle of the
subsequent beam was -180 (or visa-versa). The conversion from IEC to bipolar
is now handled on a "per-beam" basis. This bug affected the MetersetMap
application.config.toml
file instead of the prior CSV
files.http://localhost:8501/docs/index.html
after running
pymedphys gui
. In the future it is intended to make this link more
accessible.pymedphys.Delivery.from_mosaiq
non functional.pymedphys.trf.identify
interface was moved out of beta. See the
documentation for this newly stable API over at https://docs.pymedphys.com/lib/ref/trf.html.extend ct
routines.pymedphys dev mssql
which boots up
a docker image of the Developer edition of Microsoft SQL. This is for
utilisation by the Mosaiq testing suite.pymedphys dev tests --cypress
automatically include the options -v
and -s
for displaying the cypress
printouts during testing as well as --reruns 5
so that the test
automatically reruns on failure in alignment with the CI procedure.pymedphys.electronfactors
and pymedphys.wlutz
were removed
from the public API.
pymedphys.mosaiq.connect
now returns a Connection
object instead of a
Cursor
object. This was so as to align with PEP0249. See https://github.com/pymedphys/pymedphys/pull/1352.cursor
have been changed to connection
.pymedphys.mosaiq.connect
by passing it as a colon separated string, for example "localhost:1234"
.
This is no longer the case. Now, hostname and port need to be provided
separately. There are also three extra arguments, alias
, username
, and
password
. See either the docs https://docs.pymedphys.com/lib/ref/mosaiq.html
or the docstring for more details https://github.com/pymedphys/pymedphys/blob/a124bc56fb576456cc6eec44a711ebd478a995f3/lib/pymedphys/_mosaiq/api.py#L33-L79.pymedphys.mosaiq.qcls
.pymedphys dev tests --pylint
with
pymedphys dev lint
.pymedphys dicom listen 7779 --host 127.0.0.1
.pymedphys dicom send 127.0.0.1 7779 path\to\dicom\*.dcm
pymedphys gui
.pymedphys streamlit run
was added
to facilitate utilising the custom PyMedPhys patches on the streamlit server
for arbitrary streamlit apps. See https://github.com/pymedphys/pymedphys/issues/1422.pymedphys dev tests --mosaiqdb
, to load up the tests that depend on having
a Microsoft SQL server running. Thanks to Derek Lane
for all of his work building the Mosaiq CI workflow and the first set of
Mosaiq tests.pymedphys dev doctests
, run doctests.pymedphys dev imports
, verify optional import logic by creating a clean
Python install and attempting to import all modules.pymedphys dev lint
, run pylint.pymedphys dev cypress
, load up Cypress for interactively writing and
running the end-to-end tests.