Fixed:
- fix yaml load synthax for pyyaml > 3.13
Changed:
- promote
_close_shutter_stub
and_open_shutter_stub
to non-private - use
close_shutter_stub
andopen_shutter_stub
where possible _configurate_area_det
now yields properly
Added:
- Explicitly block user from starting new beamtime in the same python session
after
_end_beamtime
has been run.
Fixed:
- Guard
images_per_set
becausedexela
detector doesn't have it
Changed:
- Don't release xpdAcq until new calibration has been written
Fixed:
- use shuter stubs in
_shutter_step
so the shutter delay is supported
Changed:
- endbeamtime process renames the local xpdUser to xpdUser_<archive_name> first before archiving and transferring file to remote location. This is to make sure the next beamtime will not be blocked by the backup process of last beamtime.
Fixed:
- Try except for new pyFAI calibration api vs old
Added:
bt.robot_all
to have a listing of all samples in the current mag- ScanPlan API doc in https://xpdacq.github.io/xpdAcq/api_doc.html
- Add shutter sleep so in-situ works
Changed:
- Robot scan plan now has checkpoints, allowing better pausing
Fixed:
- Robot print statments now work properly
- Removed bad zip for robot
Added:
swap
capability to theglbl
so that vars can be swapped out via context manager
Changed:
Beamtime.robot_location_number
takes in a geometry to specify the sample geometry- Reduce summary field of callable argument in
ScanPlan
with only its__name__
. Before it use__repr__
which includes hash and special characters that is prone to generate illegal filename for yaml.
Removed:
- Exception for non-robot multi-sample experiments, since they could happen and we do support this behavior
Fixed:
per_step
argument inTlist
. Before this argument is always overridden by default.
Added:
Shutter control in tseries
scan plan. By default, the shutter will only be open before collecting the data and close afterwards for protecting sample. Default behavior can be overridden by passing argument auto_shutter=False
while creating scan plan. Please use tseries?
in ipython
session for full doc.
Changed:
- xpdAcq now outsources
glbl
configuration management to xpdConf - Run CI on conda-forge
xpdconf
Removed:
load_configuration
(which is now in xpdConf)
Fixed:
- Pull release notes prepend from GitHub
Fixed:
- Use simulation config if all else fails
Added:
- Changelogs are now displayed in the docs homepage and as their own page.
- xrun now can take a list of scans and run them in order
- Preliminary robot functionality, requiring location information
Changed:
- Moved to configuration file driven
xpdacq_conf.py
for greater flexability - All doc
rst
files are passed through a jinja2 renderer before being built into docs. This will allow for greater flexability while writing the docs.
Deprecated:
run_mask_builder
function and relevant metadata injections.- Dynamic mask is generated by
xpdAn
per run and mask server-client relationship will be tracked in analysis pipeline.
Fixed:
- Error in the docs where sphinx was finding the templates.
Added:
- Requirements folder
Changed:
- Release template now uses proper version in license
- Travis now uses the requirements folder
Deprecated:
- Replace most
shutil
functionalities with native Unix commands called bysubprocess
to have a clear picture on the system response.
Fixed:
- Add
--timeout
option to rsync during_end_beamtime
to allow temporally disconnect. - Exclude hidden files from the
_end_beamtime
archival. Those files are mainly used as configurations by local applications and are less likely to be reusable even if user requests them.
Added:
None
- Filter positions are recorded in metadata on each xrun.
- Added verification step: Beamline scientists must verify longterm beamline config file at the start of a new beamtime.
- Automatically display current filter positions (
In
orOut
) from for everyxrun
.
Changed:
- Change the filepath structure in
glbl
to align with the update at XPD. Allxf28id1
->xf28id2
, including hostname and nfs-mount drives.
Deprecated:
- Remove static mask injection. Mask is now handled by the analysis pipeline dynamically.
Fixed:
- Instruction in
run_calibration
. There is a specific print statement to tell the user to finish the interactive calibration process in the analysis terminal. - Fix
_end_beamtime
. Details about the fixes are:- Use rsync while archiving
xpdUser
so that user can see the progress. (rsync lists files have been transferred) - More sophisticated logic when flushing xpdUser directory. Now the function will tell the user to close files used by the current process, instead of throwing an error and failing the process.
- Some cleaning in the logic. Program will remove the remote archive if user doesn't confirm to flush the local directory so that we could potentially avoid having multiple copies at the remote location.
- Use rsync while archiving
This is a stable release of xpdAcq
software.
This version is fully documented and extensively tested.
New features introduced to this version:
Integration with automated data reduction pipeline. Now live visualization and automated data-saving is supported. For the details about the pipeline, please refer to xpdAn documentation.
Advanced shutter control logic for temperature-ramping scan plan,
Tlist
andTramp
. By default, shutter will remain closed in between exposures, which prevent detector from burning. This behavior can be overridden, leaving the fast shutter open for the entire scan. Please refer to the function docstring by typingTlist?
orTramp?
in thecollection
terminal for more details.Refined metadata logic. We implement
client-server
logic which would largely enhance the linking between associated scans. For more details, please refer to :ref:`client_server_md`.Now programs takes in user defined folder tag so that it's easier to separate data into subfolders with memorable names. Please refer to :ref:`folder_tag`.
Current version supports following built-in scans:
single-frame (ct) time-series (tseries) temperature-series scans (Tramp) temperature-list scans (Tlist)
Additional built-in scan types will be added in future releases.
This is a stable release of xpdAcq
software.
Addition to all the features of v0.5.0
, new features introduced to this version are:
- functionality to reload beamtime configuration when reenter into
ipython
session- improved logic of importing metadata from a spreadsheet, information is parsed in a way that facilitates data driven studies.
- new ScanPlan: temperature list scan
Tlist
. User can collect data at desired temperature points.
v0.5.2
supports following built-in scans:
single-frame (ct)
time-series (tseries)
temperature-series scans (Tramp)
temperature-list scans (Tlist)
Additional built-in scan types will be added in future releases.
v0.5.2
also supports following automated logics :
This version is fully documented and extensively tested.
This is a stable release of xpdAcq
software.
New features introduced to this version:
- flexibility of running customized
bluesky
plans while keepingxpdAcq
dark collection logic.- ability of importing metadata from a spreadsheet, open the door for data driven studies.
- data reduction tools:
- azimuthal integration using
pyFAI
as the back-end- auto-masking based on statistics on pixel counts
v0.5.0
supports three kinds of built-in scans:
single-frame (ct)
time-series (tseries)
temperature-series scans (Tramp)
Additional built-in scan types will be added in future releases.
v0.5.0
supports following automated logics :
This version is fully documented and extensively tested.
This is the first full, stable, release, of xpdAcq software.
It offers functionality to acquire data at XPD but with very limited
tools yet to analyze it.
Future releases will focus more on analysis functionalities.
v0.3.0
is still a limited functionality release in that it only supports three kinds of scans:
single-frame (ct)
time-series (tseries)
temperature-series scans (Tramp)
Additional scan types will be added in future releases.
- However, it does support:
- automated dark subtraction
- automated calibration capture.
This version is fully documented and extensively tested.