aboutsummaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
2022-05-03partialator: Use default event ID in csplit for crystals which don't have oneThomas White
2022-05-03partialator: Fix a typoThomas White
2022-04-05indexamajig: Fix profiling when using streamed dataThomas White
2022-04-05GUI: Add desktop file and set application nameThomas White
This fixes the broken window icon on Wayland.
2022-04-01GUI: Improve an error messageThomas White
2022-03-18GUI: Use sbatch/scancel/scontrol instead of Slurm APIThomas White
This commit strips out all references to the Slurm API, instead making subprocess calls to sbatch and scontrol. Attempting to use the Slurm API seems to have been a mis-step. First, it seems that nowhere has the Slurm headers pre-installed. Literally none of the facilities where there are known deployments of CrystFEL have them. And in a significant fraction of cases, getting them installed is difficult, slow or impossible. In addition, the API doesn't seem to work in all cases, so we already shell out to 'scancel' to abort jobs - see d76fc3495. There are some tricky implications for submitting Slurm jobs from a container via the API. The Slurm REST API offers a solution, but is very new and not widely available. Calls to the Slurm executables are much easier to 'tunnel' out of a container. This isn't a great solution. It's a net increase of only about 40 lines of source code, but it incurs some unpleasant string handling and will probably be less reliable overall. It completely relies on Slurm's not being internationalised. If Slurm's messages start getting translated, we will be in trouble.
2022-03-18GUI: Slow down job status checksThomas White
2022-03-09Meson: enable building without HDF5Thomas White
2022-03-08Fix slabbiness assumptionsThomas White
This adds a new routine, data_template_slabby_file_to_panel_coords, to be used (only!) in places where external forces require assumptions of slabbiness: pixel maps and MsgPack/HDF5 peak lists (including CXI-style). This also fixes the prototype of data_template_file_to_panel_coords to make the panel number strictly an input parameter. This was an oversight in the implementation of DataTemplate, and caused problems when reading non-slabby streams. Fixes: https://gitlab.desy.de/thomas.white/crystfel/-/issues/66
2022-03-07indexamajig: Don't back up image data if not filteringThomas White
This takes a non-negligible amount of time (40 ms per frame for 16M), so should be skipped if not needed.
2022-03-07indexamajig: Use fine-grained profilingThomas White
2022-03-07Move time-accounts to libcrystfelThomas White
2022-03-07Add new time accounts (preparation for finer-grained profiling)Thomas White
2022-03-07indexamajig: Remove pointless time account/last task/pingThomas White
This doesn't do anything. The very next lines override all the settings.
2022-03-04GUI: Fix stream rescan logicThomas White
Fixes: https://gitlab.desy.de/thomas.white/crystfel/-/issues/64
2022-03-03GUI: Better handling of error-filled indexamajig logsThomas White
If there are lots of error messages (e.g. a missing mask file), looking at the last 4k of the log file is not always enough. Now it will go back to 16k, in steps of 4k. It will stop early if it finds the start of the file, and it will complain if it still doesn't find what it's looking for.
2022-03-03GUI: Use fixed profile radius for indexing onceThomas White
Fixes: https://gitlab.desy.de/thomas.white/crystfel/-/issues/61
2022-03-02indexamajig: Return a specific error code (5) if no files could be processedThomas White
2022-03-02Formatting and increased verbosityThomas White
2022-02-21cell_explorer: Handle smooth scrolling eventsThomas White
Fixes: https://gitlab.desy.de/thomas.white/crystfel/-/issues/59
2022-02-10CrystFELImageView: Handle smooth scrolling eventsThomas White
Fixes: https://gitlab.desy.de/thomas.white/crystfel/-/issues/58
2022-01-12SLURM: Fix a silly mistake counting the environment entriesThomas White
2022-01-12SLURM: Get rid of path_addThomas White
This is no longer needed after 48c02e71e5bf. Simply set the correct PATH before starting the GUI, and it will be propagated to the SLURM jobs. Astute readers will notice that the feature has been silently broken since last March (65a1afdce2da5cd), anyway. Whoops.
2022-01-12GUI: Try to get geometry from result (stream), if not explicitly providedThomas White
Fixes: https://gitlab.desy.de/thomas.white/crystfel/-/issues/56
2022-01-12SLURM: Copy environment from parent processThomas White
Unfortunately, several environments rely on "magic" environment variables to make things work. These need to be propagated. The path to the GUI will no longer be added to the PATH. This was intended to help when the indexing executables (mosflm, dirax etc) were found alongside the CrystFEL executables. However, it's highly likely that the path to the CrystFEL executables will be in PATH anyway. This way, running the SLURM jobs in the same environment as the GUI itself, also seems more compliant with the "principle of least surprise".
2021-12-17indexamajig: Set file read time account for unpacking frame dataThomas White
2021-12-17indexamajig: Avoid fclose(NULL)Thomas White
When running online, there's no input file handle to close.
2021-12-17indexamajig: Send sandbox ping while waiting for next frameThomas White
This avoids the process getting killed while waiting e.g. between runs in an online context.
2021-12-07indexamajig: Generate per-frame profiling numbersThomas White
2021-12-07indexamajig: Shut down cleanly on SIGUSR1Thomas White
2021-12-02GUI: Add a checkbox for automatically rescanning streamsThomas White
Usually, one will want this option enabled. However, sometimes it speeds things up a lot to disable it. Fixes: https://gitlab.desy.de/thomas.white/crystfel/-/issues/54
2021-12-02GUI: Always set toggle actions at startupThomas White
Otherwise, setting the defaults won't work properly.
2021-11-29GUI: Allow selection of multiple streamsThomas White
Fixes: https://gitlab.desy.de/thomas.white/crystfel/-/issues/51
2021-11-29Add GtkMultiFileChooserButtonThomas White
2021-11-26GUI: Don't store stream filename in projectThomas White
There's already some confusion between "loading a stream into the GUI" and "adding a stream as a result". This should help resolve it, as well as simplifying multi-stream results (coming up).
2021-11-25partialator: Use image_free() to avoid memory leaksThomas White
Requires that the array of crystals isn't allocated on the stack.
2021-11-25partialator: Handle spaces in custom split fileThomas White
The csplit format is ambiguous when the filenames contain spaces. To make things a bit clearer, the file now requires the fields to be separated by exactly one space rather than any number of tabs/spaces. Fixes: https://gitlab.desy.de/thomas.white/crystfel/-/issues/55
2021-10-27CrystFELImageView: Fix range of pixels for value display at high zoomThomas White
Fixes: https://gitlab.desy.de/thomas.white/crystfel/-/issues/17
2021-10-25CrystFELImageView: fix scrollbar adjustment rangesThomas White
Fixes: https://gitlab.desy.de/thomas.white/crystfel/-/issues/18
2021-10-20Add "plain" MTZ file layout, distinct from "Bijvoet" layoutThomas White
Closes: https://gitlab.desy.de/thomas.white/crystfel/-/issues/52
2021-10-20GUI: Set project name in MTZ filesThomas White
Closes: https://gitlab.desy.de/thomas.white/crystfel/-/issues/28
2021-10-20Set crystal name in MTZ filesThomas White
When using the GUI, it will be set to the corresponding indexing result name.
2021-10-20GUI: Track the indexing result from which each merge result cameThomas White
2021-10-12GUI: Use proper overlines for reflection indicesThomas White
Closes: https://gitlab.desy.de/thomas.white/crystfel/-/issues/19
2021-09-17SLURM: Add field for time limitThomas White
Closes: https://gitlab.desy.de/thomas.white/crystfel/-/issues/49
2021-09-17indexamajig: Add --data-formatThomas White
2021-09-07partialator write_split: Handle zero crystalsThomas White
The variable-sized array can't have zero size, so we need to check.
2021-09-07indexamajig: Avoid crash on NULL eventThomas White
2021-09-07add_stream: Fix data type for malloc sizeThomas White
2021-09-07GUI SLURM backend: Bail out if environment can't be allocatedThomas White