floraison / flor

a workflow engine
https://github.com/floraison/flor#readme
MIT License
261 stars 17 forks source link

hooks with point: return are not triggered #36

Open jmettraux opened 3 years ago

jmettraux commented 3 years ago

As seen with @northox and @jfrioux https://gitter.im/floraison/flor?at=5fbfb55f846eed6b67ae2bf2

Reproduced in https://github.com/jmettraux/issue_flor_hook_20201126

It seems hooks with point: return are not triggered.

The workaround is to write point: "return" or point: 'return'.

[
  { point: execute, consumed: true, nid: '0', require: 'pollen/pollen.rb', class: 'LaunchedPollenHook' },
  { point: return, consumed: true, require: 'pollen/pollen.rb', class: 'ReturnedPollenHook' },
  { point: terminated, consumed: true, require: 'pollen/pollen.rb', class: 'TerminatedPollenHook' },
  { point: failed, consumed: true, require: 'pollen/pollen.rb', class: 'FailedPollenHook' },
]

Probably the point gets evaluated to an empty string (and never matches).

jmettraux commented 3 years ago

@northox @jfrioux I think the commit above solves it. Please tell me if not. Thanks again for reporting that!

jmettraux commented 3 years ago

@jfrioux wrote in https://github.com/floraison/pollen/pull/5 :

Though, just tested with commit floraison/flor@465d4ed, on Ruby 2.3.8 and 2.6.6 and the issue remains when return is unquoted.

Reopening...