4dn-dcic / tibanna

Tibanna helps you run your genomic pipelines on Amazon cloud (AWS). It is used by the 4DN DCIC (4D Nucleome Data Coordination and Integration Center) to process data. Tibanna supports CWL/WDL (w/ docker), Snakemake (w/ conda) and custom Docker/shell command.
MIT License
70 stars 28 forks source link

Accept kwargs #387

Closed drio18 closed 1 year ago

drio18 commented 1 year ago

Here, we add **kwargs to various class constructor methods, specifically those that are used elsewhere in the form Class(**properties).

This design pattern (creating classes by dumping unspecified properties) is not ideal IMO, and it had caused the cost updates to MWFRs to silently fail for a long time. Rather than refactoring this design pattern, we add kwargs to prevent similar issues from cropping up in the future.

Associated tibanna_ff PR here: https://github.com/4dn-dcic/tibanna_ff/pull/65.