JMA
Version 2.3.0
API version: 10.1.1
Changed
- An output slot without a target folder now files its produced WorkData into the Job’s folder instead of the Owner’s root. The folder is the one the Job is in when it is scheduled; a Job at the root still writes its outputs to the root. Once a Job is scheduled, moving it does not move its outputs; a retry after a failed scheduling attempt files the already prepared outputs into the Job’s current folder. An explicit target set with
SetOutputFolderstill takes precedence. This includes sub-jobs created withInheritParentFolder: they sit in the parent’s folder, so their untargeted outputs now land there too. SetOutputFolderwith/now pins the output slot to the Owner’s root, so an output of a Job in a folder can still go to the root. Previously/cleared the target like an empty path; an empty path still clears it, and the slot then follows the Job’s folder. A/sent before this change was stored as no target, so such a slot of a not yet scheduled Job now follows the Job’s folder as well.
Fixed
DeleteJobchecks that the caller may access the Job (issue #197). Any user with a plan grant could delete another Owner’s Job by its id, across tenants, as long as the Job was not running and had no output WorkData. Now only the Job’s Owner or an admin can delete it; anyone else gets 403. The check runs before the sub-job check, so a caller without access no longer sees the ids of the Job’s sub-jobs in the error. Present since job deletion was added in 2024.- Creating a sub-job checks that the caller may access the parent Job (issue #198), through
CreateSubJoband throughRapidJobSetupwith aParentJobUrl. Any user with a plan grant could attach a sub-job to another Owner’s pending or processing Job; that Owner could then no longer delete their Job, and withInheritParentFolderthe sub-job carried their folder. Now only the parent’s Owner or an admin can create a sub-job under it; anyone else gets 403. Workers are unaffected: they act as the identity that scheduled the parent, which already passes the same check when reading the Job.