You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Capistrano 3 does not document that before() or after() take many arguments. We'd take a patch, but we probably won't have time to work on this ourselves any time soon. It should be an easy fix (which is why I linked the original implementation)
Capistrano 3.4 takes any extra before/after arguments and passes them to Rake::Task.define_task as task arguments. Anyone that depends on this 3.4 behavior will break if we interpret the extra arguments as additional task names instead.
I don't see a way to "fix" this without it being a breaking change.
Good news is this is definitely something we can detect and show a deprecation warning for, if we do eventually decide to do this in Capistrano 4.0.
Hi @leehambley
I came across a surprise this morning when updating a few projects from 2.x to 3.4.0.
I didn't see it documented anywhere and wanted to check if it was intended or maybe a regression.
In my 2.x projects I had multiple callbacks defined for a single before hook definition.
Running
cap production deploy:baz
Under 2.15.5 the tasks that get run:
Under 3.4.0 the tasks that get run:
You can see that under 3.4.0 the 'deploy:bar' task gets silently skipped.
I'd expect that before/after hooks in 3.4.0 would do one of the following:
I'd prefer option (1), but understand that going from 2.x to 3.x is a good chance to make breaking api changes if needed.
Thanks,
-- Arron
The text was updated successfully, but these errors were encountered: