If an email doesn't match our incoming email patterns on the To header, we fall
back to the References header. If there was no References header, we'd raise an
exception, when we'd be better off acting as if it was empty.
* upstream/master: (574 commits)
remove dateFormat global exception
fix relative paths to xterm.js within fit.js
use setFixtures instead of fixture.set
prevent u2f tests from triggering a form submission while testing
simplify test for focus state
preload projects.json fixture
preload projects.json fixture
rework tests which rely on teaspoon-specific behavior
Only render hr when user can't archive project.
use setFixtures instead of fixture.set
ensure helper classes and constants are exposed globally
preload projects.json fixture
fix fixture references in environments_spec
allow console.xxx in tests, reorder eslint rules alphabetically
remove redundant "data-toggle" attribute so Vue doesn't complain
fix broken reference to formatDate in a CommonJS environment
fix errors within gl_dropdown_spec.js when running in Karma
fix intermittant errors in merge_commit_message_toggle_spec.rb
Update installation docs to include Docker, others
ignore node_modules in rubocop
...
Microsoft Exchange would append a comma and another
message id into the References header, therefore we'll
need to fallback and parse the header by ourselves.
Closes#26567
- allows unsubscription processing of email in format "reply+%{key}+unsubscribe@acme.com" (example)
- if config.address includes %{key} and replies are enabled every unsubscriable message will include mailto: link in its List-Unsubscribe header
Some important things to note:
- commands are removed from noteable.description / note.note
- commands are translated to params so that they are treated as normal
params in noteable Creation services
- the logic is not in the models but in the Creation services, which is
the right place for advanced logic that has nothing to do with what
models should be responsible of!
- UI/JS needs to be updated to handle notes which consist of commands
only
- the `/merge` command is not handled yet
Other improvements:
- Don't process commands in commit notes and display a flash is note is only commands
- Add autocomplete for slash commands
- Add description and params to slash command DSL methods
- Ensure replying by email with a commands-only note works
- Use :subscription_event instead of calling noteable.subscribe
- Support :todo_event in IssuableBaseService
Signed-off-by: Rémy Coutable <remy@rymai.me>