flaky-plumber-70709
06/02/2023, 8:11 PM@conda_base(disabled=True)
class CondaQFlow(FlowSpec):
@conda(libraries={'pandas':'1.5.3'})
@step
def start(self):
import pandas as pd
print(pd.__version__)
self.next(self.end)
@step
def end(self):
import pandas as pd
print(pd.__version__)
if __name__ == "__main__":
CondaQFlow()
For me this outputs 2.0.2
for both steps. If I were to specify a different pandas version in conda_base, then that version would correctly get picked up in the end
step and start
would output 1.5.3
. I know I can get the desired behavior by putting @conda(disabled=True)
at the end step but for long flows with a lot of steps my OCD gets triggered a bit by having to put @conda
everywhere.
I support a few teams using metaflow and this pops up pretty frequently when onboarding new metaflowers. They expect the default behavior to be @conda(disabled=True)
for steps where they don't use the decorator.