I noticed an illogical bit of implementation in taskflowbackend.
Since this commit, irods_backend must be explicitly provided to taskflow iRODS tasks in the arguments of execute() and revert(). However, the same tasks access the iRODS session via self.irods. That session, of course, couldn't exist without first initializing self.irods_backend. Hence providing one of these in the method args but referring to the class variable for the other is illogical.
Usually I try to document all changes I make, but this time it seems I haven't written down the justification for this anywhere. I'll have to see whether providing the backend API as an arg has any relevant functionality. Either both of these have to be provided as args, or neither of them.
I noticed an illogical bit of implementation in taskflowbackend.
Since this commit,
irods_backend
must be explicitly provided to taskflow iRODS tasks in the arguments ofexecute()
andrevert()
. However, the same tasks access the iRODS session viaself.irods
. That session, of course, couldn't exist without first initializingself.irods_backend
. Hence providing one of these in the method args but referring to the class variable for the other is illogical.Usually I try to document all changes I make, but this time it seems I haven't written down the justification for this anywhere. I'll have to see whether providing the backend API as an arg has any relevant functionality. Either both of these have to be provided as args, or neither of them.