Hugo Sales
705bf815ab
[CACHE] Add partial implmentation for caching hashmaps (non-list arrays, i.e. array<string,string>). No non-redis-fallback yet
2021-11-08 16:08:03 +00:00
Hugo Sales
cd470cbf93
[CORE] Fix loading of settings from modules
2021-11-08 16:08:03 +00:00
Hugo Sales
1960f6944f
[CORE][DB] Fix error in regex that prevented selecting collumns that are named the same way a column is
2021-11-02 11:14:59 +00:00
Hugo Sales
e6c5312025
[CORE][GSFile] Add check_is_supported_mimetype
option to GSFile::storeFileAsAttachment
2021-10-28 17:29:57 +01:00
Hugo Sales
c352e40518
[CORE][Controller] Allow plugins to override the Twig templates
2021-10-28 14:29:34 +01:00
Diogo Peralta Cordeiro
3cdaf6671a
[CORE][HTTPClient] Add some shortcut functions inspired by pre-v3
2021-10-27 04:22:18 +01:00
Diogo Peralta Cordeiro
3227e1f919
[CORE][Log] Document magic methods
2021-10-27 04:22:18 +01:00
Diogo Peralta Cordeiro
bccafd0d7b
[CORE][GSFile] Respect mimetype whitelist and extensions blacklist before saving files
2021-10-27 04:19:33 +01:00
Hugo Sales
299e893ca9
[TOOLS][PHPStan][DocCheck] Fix errors found by PHPStan and Doc Check
2021-10-27 04:19:31 +01:00
Hugo Sales
2694d83ae4
[TOOLS][CS-FIXER] Run new PHP CS Fixer config. Notably, adds strict_types
2021-10-27 04:19:30 +01:00
Diogo Peralta Cordeiro
028ea79fff
[CORE][Router] Properly act on Accept headers
2021-10-27 04:19:30 +01:00
eli
99fd2f725b
[Core][Util] Hotfix: In App\Core\DB\DB persistWithSameId, casting the id to an int. In App\Util\HTML html, tag is now evaluated beforehand, making sure it's a string.
2021-10-27 04:19:30 +01:00
Diogo Peralta Cordeiro
8fdc52636f
[ActivityPub] Port RSA
2021-10-27 04:19:29 +01:00
Hugo Sales
9109c61af5
[TOOLS][CS-FIXER] Run new PHP CS Fixer config. Notably, adds strict_types
2021-10-27 04:19:28 +01:00
Diogo Peralta Cordeiro
99ab24ec23
[CORE][Controller] Allow routes without text/html response
...
Improve GET getters
2021-10-27 04:19:23 +01:00
Hugo Sales
2d8b220e92
[CORE][Controller] Make Controller abstract, handle
an optional non static method and use static::class
rather than get_called_class
2021-09-27 19:50:56 +01:00
Hugo Sales
af3531f1c7
[CORE][GSFile] Add type annotation to the $encoders
used in attachment handling
2021-09-23 14:54:21 +01:00
Diogo Peralta Cordeiro
7beb5c2995
[GSFile] Fix sanitize configuration
2021-09-22 15:13:46 +01:00
Hugo Sales
879f54c772
[CACHE] Filter notes by scope in pagedStream
...
This currently does not return a fixed number of notes per page. Fixing this is left as an exercise to the reader
2021-09-21 16:37:51 +01:00
Hugo Sales
14c173df7a
[CACHE][COMPONENT][Tag] Add generic Cache::pagedStream and use it for the tag stream. Note that it doesn't respect scope yet
2021-09-21 15:35:07 +01:00
Hugo Sales
6715a036e9
[CACHE] Add way to fetch limit,offset values from a list
2021-09-21 11:04:26 +01:00
Hugo Sales
ce80065775
[DB] Add mechanism for specifying limit and offset in dql query
2021-09-21 11:04:26 +01:00
Hugo Sales
91fd7d1cfa
[CONFIG][CORE] Fix bug in overriding default config
2021-09-21 11:04:14 +01:00
Diogo Peralta Cordeiro
67d62cf37b
[TWIG] Remove kludge event TwigPopulateVars
2021-09-18 07:27:35 +01:00
Diogo Peralta Cordeiro
d6f31d102a
[CORE][ActivityStreamsTwo][ActivityPub] Set all routes
...
Allow global routes to act for every actor
Fix Favoured stream query
2021-09-18 05:12:15 +01:00
Hugo Sales
15a2a69274
[ROUTER] Add option is_system_path
, to allow specifying that a route, such as gsactor_view_nickname
should not be considered a system path, when checking for the collision of nicknames
2021-09-18 05:12:05 +01:00
Hugo Sales
e563c393f8
[ROUTER] Add mechanism for sorting the order in which core routes are loaded
2021-09-18 05:12:05 +01:00
Diogo Peralta Cordeiro
365edbaff0
[ActivityStreamsTwo] Initial Actor support
...
Various bug fixes
2021-09-15 10:26:53 +01:00
Hugo Sales
c69b28d894
[CORE] Fix Undefined array key 0
in DB::filterTableName
2021-09-14 13:13:45 +01:00
Hugo Sales
b74d944ae3
[TOOLS][PHPStan] Raise PHPStan level to 3 and fix new errors
2021-09-14 13:13:45 +01:00
Hugo Sales
4e30e5aad9
[TOOLS] Fix all issues found by PHPStan level 2
2021-09-14 13:13:44 +01:00
Hugo Sales
add8f4a52f
[TOOLS] Fix all errors found by PHPStan level 1
2021-09-14 13:13:42 +01:00
Hugo Sales
eb833b62e2
[TOOLS] Fix all level 0 errors found by PHPStan and move constant definition to bootstrap file
2021-09-14 13:13:42 +01:00
Hugo Sales
f65e2b90f2
[CORE] Fix use of Exception
class without import
2021-09-14 13:13:41 +01:00
Hugo Sales
e8ae0b74e0
[CORE][Controller] Switch order for content negotiation: allow events to take precedence. Bring back default JSON response
2021-09-14 13:13:41 +01:00
Hugo Sales
0a7fd9c460
[CORE][MODULES][NoteHandlerPlugin] Add missing import for Event
2021-09-14 13:13:40 +01:00
Hugo Sales
1d5fd1aefa
[CORE][Controller] Fix Controller::__invoke
so it actually passes on the route parameters to the controller method. Add Controller->string
, which gets a query parameter as a string value, or null if not set
2021-09-14 13:13:40 +01:00
Hugo Sales
330143e549
[ROUTER][DOCUMENTATION] Add Router::isAbsolute
, add documentation to Router::url
and `s/setRouter/serServices/
2021-09-14 13:13:39 +01:00
Hugo Sales
be27a10244
[EVENTS] Rename event RouteInFormat
to ControllerResponseInFormat
2021-09-14 13:13:39 +01:00
Hugo Sales
983e0303a5
[ROUTER] Sort routes so that the one with a smaller list of Accept types matches first
...
This requires a copy, but gets cached, so it's the ideal place to do it.
Note that only routes that match the incoming Accept match anyway, so the order between those with different accept types is not relevant
2021-09-14 13:13:39 +01:00
Hugo Sales
45734d882c
[CONFIG] Make it possible to write module configuration in a config.{php,yml,yaml,xml} file and set each value as properties in the module object
2021-09-14 13:13:38 +01:00
Diogo Peralta Cordeiro
fd3b57dc24
[CORE][Controller] Make it possible for plugins to add different content-types to existing routes
2021-09-14 13:13:37 +01:00
Hugo Sales
626f50080b
[MODULES] Use snake_case for module config keys
2021-09-14 13:13:37 +01:00
Hugo Sales
033c4db914
[MODULES] Add function to defer module initialization and cleanup to plugin and component. Add example in Avatar component
...
Forward onInitializeModule to onInitializePlugin if the component is a plugin
2021-09-14 13:13:37 +01:00
Hugo Sales
bda839be7b
[MODULES] Add InitiializeModule and CleanupModule events, similar to v2
2021-09-14 13:13:37 +01:00
Diogo Peralta Cordeiro
1ee8df1494
[DOCS][Developer] Elaborate on implementing and configuring a module
2021-09-14 13:13:37 +01:00
Hugo Sales
c71a4b06ef
[CONFIG] Make it possible to write module configuration in a config.{php,yml,yaml,xml} file and set each value as properties in the module object
2021-09-14 13:13:36 +01:00
Hugo Sales
3587b8dc1d
[CONFIG] Refactor configuration loading
2021-09-14 13:13:36 +01:00
Diogo Peralta Cordeiro
bc1fb007aa
[Core][GSFile] Improve the way EncoderPlugins participate in the file sanitization process
2021-09-14 13:13:34 +01:00
Hugo Sales
26bf78360b
[ROUTER][UTIL] Allow specifying the Accept format for a route
2021-09-14 13:13:34 +01:00