Franz Liedke
9f15e9ba86
Error handling: Rename renderers to formatters
...
Refs #1641 .
2019-08-20 20:07:47 +02:00
Franz Liedke
41009dba74
Remove obsolete queue config
2019-08-19 22:33:32 +02:00
Daniël Klabbers
a045f8bef9
Queue support ( #1773 )
...
Implementation of clean queue handling, by default sync is used
2019-08-19 21:44:06 +02:00
Franz Liedke
689d767f82
Don't fail when extend.php doesn't return an array
...
Refs #1607 .
2019-08-16 12:29:31 +02:00
Franz Liedke
77fff9fde8
#1607 : Show more details when catching boot errors
2019-08-16 12:13:47 +02:00
Franz Liedke
c6c1ae32e6
Bubble up exception for invalid confirmation token
...
This way, the error handler can simply be amended to deal with this
exception type with a dedicated error message or page.
Refs #1337 .
Closes #1528 .
2019-08-14 19:47:56 +02:00
Franz Liedke
bdac88b573
Determine error view and message based on type
...
...not based on status code.
To simplify this logic, we now use the same error "type" both when
routes are not found and specific models are not found. One exception is
ours, one is from Laravel, but for the purposes of error handling they
should be treated the same.
Fixes flarum/core#1641 .
2019-08-14 19:47:56 +02:00
flarum-bot
31ee65be93
Bundled output for commit 29df6b60be
[skip ci]
2019-08-14 06:41:45 +00:00
Franz Liedke
29df6b60be
Tweak translation keys, always use full keys
...
Makes them easier to grep when editing / removing.
Refs #1750 , #1788 .
2019-08-14 08:34:36 +02:00
Franz Liedke
1e6f175379
Extract real method
...
Refs #1750 , #1788 .
2019-08-14 08:34:14 +02:00
flarum-bot
065ff3456f
Bundled output for commit 37e0a5579b
[skip ci]
2019-08-13 21:02:10 +00:00
Tobias Karlsson
37e0a5579b
Improve feedback on user deletion
...
Fixes #1750 , #1777
2019-08-13 22:56:24 +02:00
Franz Liedke
cd9aa0096e
Merge pull request #1843 from flarum/fl/1641-exception-handling
...
Implement new error handling stack
2019-08-13 22:45:46 +02:00
Franz Liedke
d06493c61e
Support multiple error reporters
...
The error handling middleware now expects an array of reporters.
Extensions can register new reporters in the container like this:
use Flarum\Foundation\ErrorHandling\Reporter;
$container->tag(NewReporter::class, Reporter::class);
Note that this is just an implementation detail and will be hidden
behind an extender.
2019-08-10 11:04:12 +02:00
Franz Liedke
9f71e2c3cb
Remove old error handler, middleware and tests
2019-08-10 00:26:24 +02:00
Franz Liedke
81a8736ba9
API Client: Use new error handling mechanism
2019-08-10 00:26:24 +02:00
Franz Liedke
57ce25301d
Use new error handler middleware
2019-08-10 00:26:24 +02:00
Franz Liedke
cfbaa84fbc
Wire up new error handling stack
2019-08-10 00:26:23 +02:00
Franz Liedke
3417f5a77e
Make existing extensions compatible with new stack
2019-08-10 00:26:22 +02:00
Franz Liedke
1035636d0f
Implement new error handling stack
...
This separates the error registry (mapping exception types to status
codes) from actual handling (the middleware) as well as error formatting
(Whoops, pretty error pages or JSON-API?) and reporting (log? Sentry?).
The components can be reused in different places (e.g. the API client
and the error handler middleware both need the registry to understand
all the exceptions Flarum knows how to handle), while still allowing to
change only the parts that need to change (the API stack always uses the
JSON-API formatter, and the forum stack switches between Whoops and
pretty error pages based on debug mode).
Finally, this paves the way for some planned features and extensibility:
- A console error handler can build on top of the registry.
- Extensions can register new exceptions and how to handle them.
- Extensions can change how we report exceptions (e.g. Sentry).
- We can build more pretty error pages, even different ones for
exceptions having the same status code.
2019-08-10 00:26:22 +02:00
Franz Liedke
d00fc2c49d
Remove obsolete constructor parameter
...
This was removed in commit 484c6d2e
.
2019-08-10 00:16:21 +02:00
flarum-bot
f3b889a665
Bundled output for commit c5122bf5d5
[skip ci]
2019-08-08 23:12:56 +00:00
Franz Liedke
c5122bf5d5
a11y: Try to make screenreaders read tooltips
...
Refs #1835 .
2019-08-08 22:40:30 +02:00
David Sevilla Martín
5ed55195e1
Add canonical URL to discussion list ( #1814 )
2019-08-08 00:01:25 +02:00
Franz Liedke
8604ea3020
Bypass CSRF token check when using access tokens
...
Fixes #1828 .
2019-08-01 22:53:31 +02:00
Franz Liedke
2648e960a7
Make exception message dynamic as well
2019-08-01 22:25:28 +02:00
Daniël Klabbers
f0dff95d62
Merge branch 'master' of github.com:flarum/core
2019-07-31 17:10:47 +02:00
Daniël Klabbers
894db01ad8
Allows configuration of where the language files live. So that
...
language packs can optionally decide for themselves if they want
to use a different directory.
2019-07-31 17:10:13 +02:00
Franz Liedke
bd04023359
Determine default route after extensions
...
Fixes #1819 .
2019-07-30 00:56:29 +02:00
Franz Liedke
f357434a72
PHPUnit: Get rid of deprecated annotation
...
Refs #1795 .
2019-07-30 00:09:10 +02:00
Daniël Klabbers
c2586586c4
fixes #1695 , take into consideration is_private with counts on User stats
2019-07-28 20:59:12 +02:00
Daniël Klabbers
06cd062a1b
fixed ci, make green again; mysql service wasnt booted
2019-07-27 22:24:39 +02:00
Franz Liedke
1502fc98d8
Prevent MySQL search operators from taking effect
...
We do not want to inherit MySQL's fulltext query language, so let's
just drop all non-word characters from the search term.
Fixes #1498 .
2019-07-23 23:55:06 +02:00
Franz Liedke
ed97989ca2
Revert "Remove deprecated bootstrap.php fallback"
...
This reverts commit f8061bbca1
.
We will keep this fallback in place, to avoid unnecessary breakage of
backwards compatibility for extension authors.
Removal is planned for the final 0.1 release.
2019-07-14 22:22:06 +02:00
Franz Liedke
7f1048352d
Clean up database query
...
- Use existing `selectRaw()` method to avoid using the global `app()`
helper as a service locator, which hides dependencies.
- Do the same for the join.
- The `Expression` is necessary to prevent the aliased column from being
prefixed with the database table prefix, if configured.
2019-07-11 22:35:19 +02:00
dependabot[bot]
d2700961ba
Bump lodash-es from 4.17.11 to 4.17.14 in /js ( #1818 )
...
Bumps [lodash-es](https://github.com/lodash/lodash ) from 4.17.11 to 4.17.14.
- [Release notes](https://github.com/lodash/lodash/releases )
- [Commits](https://github.com/lodash/lodash/compare/4.17.11...4.17.14 )
Signed-off-by: dependabot[bot] <support@github.com>
2019-07-11 09:21:17 +02:00
Daniël Klabbers
b2dbb0439c
fixed class property hint for event post content attribute
2019-07-09 08:31:48 +02:00
Daniël Klabbers
085c924a07
fix return type hint for event post content attribute
2019-07-09 08:30:10 +02:00
David Sevilla Martín
f31f02d4cc
Set Whoops middleware HTTP status to error code ( #1648 )
...
* Use error code for HTTP status, defaults to 500
* Use logic from HandleErrorsWithView, make sure status is valid
2019-07-07 14:57:40 +02:00
Daniël Klabbers
797f6eea50
moved GetDisplayName event to User namespace ( #1768 )
2019-07-06 19:27:44 +02:00
Franz Liedke
9fb3a31b51
Get rid of unnecessary method
2019-07-06 02:25:06 +02:00
Franz Liedke
f8061bbca1
Remove deprecated bootstrap.php fallback
...
Closes #1557 .
2019-07-06 02:11:09 +02:00
Franz Liedke
de67927ef2
Travis: Allow PHP 7.4 to fail for now
...
We are currently experiencing issues due to Mockery not yet being 100%
compatible with PHP.
See https://github.com/mockery/mockery/pull/980 .
2019-07-06 01:56:54 +02:00
Franz Liedke
8c841c3266
Update test libraries
2019-07-06 01:49:55 +02:00
Franz Liedke
2f656146a7
Travis: Test against the upcoming PHP 7.4
2019-07-06 01:30:59 +02:00
Franz Liedke
d66d2aa26e
Convert more helpers in tests
2019-07-06 01:30:59 +02:00
Franz Liedke
f4c0d4ba87
Type hint contract, not implementation
2019-07-06 01:30:58 +02:00
Franz Liedke
646bd40bca
Use Laravel's class-based Str and Arr helpers
...
Starting with version 5.9, the global funtions will be deprecated.
* https://laravel-news.com/laravel-5-8-deprecates-string-and-array-helpers
* https://github.com/laravel/framework/pull/26898
2019-07-06 01:30:58 +02:00
Franz Liedke
307b912019
Issue templates: Remove vulnerability information
...
GitHub now automatically displays this information (or rather, links to
the Security Policy) at the issue type selection page.
2019-07-06 00:08:55 +02:00
Franz Liedke
cbc896eba7
Use class constant instead of strings
2019-07-06 00:03:25 +02:00