Commit Graph

1496 Commits

Author SHA1 Message Date
Philipp cdd57275eb
Some improvements
- Move $_SERVER into ConfigFileManager constructor
- Rename "creatConfigFileLoader" to "createConfigFileManager"
- Rename variable "loader" to "manager" in all tests
2023-01-06 01:03:00 +01:00
Philipp b4096251ba
Check 'config' table as fallback for migrations 2023-01-06 01:03:00 +01:00
Philipp 4b17d6f3bf
Update src/Core/Addon.php
Co-authored-by: Hypolite Petovan <hypolite@mrpetovan.com>
2023-01-04 23:12:41 +01:00
Philipp 01403d15c4
sort addon array 2023-01-04 21:55:51 +01:00
Philipp 13b234d279
Use addons config entries instead of the addon table 2023-01-04 21:55:51 +01:00
Philipp dce86be58e
Just commit config transactions if something changed 2023-01-04 19:55:22 +01:00
Philipp aabe39220d
Make flock writing easier 2023-01-04 08:16:40 +01:00
Philipp c057954896
Make BaseURL check/save transactional and make the whole process easier 2023-01-04 08:14:00 +01:00
Philipp 17105cf7d1
Fix config read/write locking 2023-01-04 00:25:18 +01:00
Philipp 176af67e88
Fix empty fetchResult curResult at Link::fetchMimeType (thx to Marco R.) 2023-01-03 21:06:16 +01:00
Philipp beff759c82
Update src/Core/Config/Model/ConfigTransaction.php
Co-authored-by: Hypolite Petovan <hypolite@mrpetovan.com>
2023-01-03 17:39:32 +01:00
Philipp a46cd2fb36
Remove get() from config transaction interface 2023-01-03 17:26:48 +01:00
Philipp b439df892a
Apply suggestions 2023-01-03 17:24:05 +01:00
Philipp dd88d193b9
Escape single quotes and backslashes 2023-01-03 15:36:36 +01:00
Philipp 65d79d4c93
Introduce ISetConfigValuesTransactional for transactional config behaviour 2023-01-03 14:22:07 +01:00
Philipp ae1533e312
Apply suggestions from code review
Co-authored-by: Hypolite Petovan <hypolite@mrpetovan.com>
2023-01-03 14:22:06 +01:00
Philipp 88b3effc18
Use toConfigValue in case of serialized, legacy data 2023-01-03 14:22:05 +01:00
Philipp 1e574d5383
Refactor IManageConfigValues interface 2023-01-03 14:22:04 +01:00
Philipp d272e8c3c7
Remove unnecessary classes 2023-01-03 14:22:03 +01:00
Philipp b871e1d264
Introduce lightweight Config model 2023-01-03 14:22:02 +01:00
Philipp 0f91d1cbde
Introduce ConfigFileManager for config files 2023-01-03 14:22:02 +01:00
Philipp fea4b202c1
Introduce ConfigFileTransformer for Config files 2023-01-03 14:22:02 +01:00
Hypolite Petovan 8bbf9e93c6 Remove dependency to the second parameter of XML::fromArray 2023-01-01 19:20:42 -05:00
Michael Vogel 6b914ccc0f
Merge pull request #12586 from MrPetovan/task/entitize-delivery-queue
Add Entity-Factory-Repository for deliver-queue
2023-01-02 00:56:13 +01:00
Hypolite Petovan a744b8b56f Replace direct database calls and anonymous arrays by repository calls and entity objects 2023-01-01 18:50:21 -05:00
Hypolite Petovan f9676c9ed2 Convert Directory Search results into contact-looking records
- Address https://github.com/friendica/friendica/issues/12488#issuecomment-1368216631
2023-01-01 18:47:45 -05:00
Michael f1bcf1ef66 Set the server status directly after transmission 2023-01-01 17:34:05 +00:00
Michael 12fac6e089 Close the database 2023-01-01 15:37:47 +00:00
Michael 360614d2cf Merge remote-tracking branch 'upstream/develop' into inbox-gsid 2023-01-01 15:25:28 +00:00
Michael fe897c7ef4 Increase the year 2023-01-01 15:14:45 +00:00
Michael 7307646cf8 Use server id on direct delivery 2023-01-01 15:13:44 +00:00
Hypolite Petovan 1874a32728 Happy New Year 2023! 2023-01-01 09:36:24 -05:00
Hypolite Petovan 319857edaa
Merge pull request #12583 from annando/delivery-queue
Bulk delivery added for all protocols
2022-12-31 11:36:54 -05:00
Michael 8e397b5849 Changes after review 2022-12-31 16:20:18 +00:00
Michael 259b99e6e9 Bulk delivery added for all protocols 2022-12-31 12:19:34 +00:00
Hypolite Petovan b0898ada29 Add previous exception to unexpected worker exception logging 2022-12-30 22:25:19 -05:00
Hypolite Petovan 6e31b8d6a5 Avoid return type exeption in HTTPSignature->post
- Prefer passing the owner record array instead of just the uid
- +4/-7 calls to User::getOwnerDataById
2022-12-30 17:23:22 -05:00
Philipp a330a3c22d
Make PHP-CS happy again 2022-12-29 22:38:01 +01:00
Philipp 86f80af432
Rename Interface 2022-12-29 22:37:12 +01:00
Philipp 7c4c409060
Change key-value table
- Make "k" as primary key
- Added "updated_at"
2022-12-29 22:36:08 +01:00
Philipp 925c30280c
Apply suggestions from code review
Co-authored-by: Hypolite Petovan <hypolite@mrpetovan.com>
2022-12-29 22:12:02 +01:00
Philipp b227d65dfc
Replace worker_daemon_mode config entry with key-value entry 2022-12-29 21:53:57 +01:00
Philipp 6b3265742a
Replace cron/worker "last" config entries with key-value entries 2022-12-29 21:53:57 +01:00
Philipp 10f8631cd9
Replace PostUpdate key-value config entries with key-value pair entries 2022-12-29 21:53:56 +01:00
Philipp 47764387b3
Introduce Key-Value Pair storage provider 2022-12-29 21:53:56 +01:00
Hypolite Petovan 8b1947bd78 Add Core\Logger to the introspection skip class list
- Make class list explicit to avoid confusion between similar class names
- Update skipped class string match to a safer "starts with" condition
2022-12-28 17:54:37 -05:00
Hypolite Petovan 9dbcbe0482 Remove extraneous Introspection->isTraceClassOrSkippedFunction second parameter 2022-12-28 17:51:07 -05:00
Philipp e0fa557f18
Merge pull request #12539 from annando/forum-thread
Distribute forum comments only via the forum
2022-12-27 17:51:22 +01:00
Michael ca0e3e3db7 Distribute forum comments only via the forum 2022-12-27 16:14:04 +00:00
Hypolite Petovan 5c332af844
Merge pull request #12527 from nupplaphil/feat/request_id
Introduce Request::getRequestId()
2022-12-26 16:07:35 -05:00
Philipp 5584e7a4e5
Use X-REQUEST-ID for Logging 2022-12-26 21:18:04 +01:00
Philipp 10864e50c7
Adapt Logger\Introspection
- Create an interface
- Add it as constructor parameter
2022-12-26 21:18:04 +01:00
Philipp bfc1c157f1
Adapt UserSession
- Move from App methods to UserSession methods
- Deprecate corresponding App methods
2022-12-26 21:18:04 +01:00
Michael 5298cd73b3 We now store the violation as well 2022-12-25 10:44:06 +00:00
Hypolite Petovan 43aa9cddc5 Trim terms of service rules before turning them to an array 2022-12-17 21:13:52 -05:00
Hypolite Petovan 07520719f7 Add documentation about the ACL autocomplete fields 2022-12-14 21:57:14 -05:00
Hypolite Petovan baf2f7565a
Merge pull request #12390 from annando/fixes
Only reshare the author's posts on `MIRROR_NATIVE_RESHARE`
2022-12-11 15:05:47 -05:00
Michael 2f3f41ed9c Merge remote-tracking branch 'origin/2022.12-rc' into fixes 2022-12-11 19:00:59 +00:00
Michael Vogel 884a265c5a Some small fixes 2022-12-11 11:21:02 +01:00
Michael 3ce4a1fee4 Avoid error when image couldn't be fetched 2022-12-11 10:12:20 +00:00
Hypolite Petovan 22e2578b23
Merge pull request #12322 from annando/api-rules
API: Central way to fetch the system rules
2022-12-03 17:24:52 -05:00
Michael 16b76919c0 Rules added 2022-12-03 21:15:08 +00:00
Michael b6f7d31036 API: Central way to fetch the system rules 2022-12-03 20:18:19 +00:00
Michael fa80c69d94 Only fetch the processes if needed 2022-12-03 19:44:50 +00:00
Zane C. Bowers-Hadley 8f82fb9a22 now with g 2022-12-03 04:34:17 -06:00
Zane C. Bowers-Hadley edaff99307 derp, minor fix 2022-12-03 04:31:04 -06:00
Zane C. Bowers-Hadley f664208157 get the load average in a portable manner 2022-12-03 04:24:49 -06:00
Hypolite Petovan ed7b175491 Catch worker argument type errors
- This marks the invalid worker queue item as completed instead of endlessly retrying it
- Address https://github.com/friendica/friendica/issues/11992#issuecomment-1327029331
2022-11-26 15:21:46 -05:00
Hypolite Petovan 6b555f64da Add \ReturnTypeWillChange attribute to methods inherited from native interfaces
- Part of https://github.com/friendica/friendica/issues/12011#issuecomment-1321796513
2022-11-25 08:13:05 -05:00
Michael 53b46855ef return "null" 2022-11-24 19:45:45 +00:00
Michael 6a434588a9 Silently quit on unfollow of invalid contacts 2022-11-24 05:17:14 +00:00
Hypolite Petovan fe547b7851 Centralize config.admin_email management in Model\User 2022-11-14 17:02:42 -05:00
Philipp 477bec1977
Fix some PHP8.1 issues if possible 2022-11-09 23:58:23 +01:00
Hypolite Petovan 561f22cdc4 Add title to homepage verified check mark
- Decrease log level for not found Memcached keys
2022-11-08 04:20:19 -05:00
Hypolite Petovan 23dda5d510 Deprecate default value parameters in Session and Config interfaces
- It is more efficient to use the null coalescing operator ?? that prevents the computation of the default value if the key has been found
2022-11-04 06:42:38 -04:00
Michael 842e51194e Improved bulk delivery / don't redistribute activities 2022-11-03 04:03:39 +00:00
Hypolite Petovan 4ab260042c Create new User\Import module class
- Merge Core\UserImport class in Module class
2022-11-02 11:27:31 -04:00
Hypolite Petovan 3865733e18 Move Model\Profile::getMyUrl to UserSessions 2022-10-30 10:49:47 -04:00
Philipp b5bc1b0844
Extend IHandleUserSessions from IHandleSessions and adapt classes 2022-10-23 20:41:17 +02:00
Philipp a9963dc54b
Remove Core\Session 2022-10-21 19:36:42 +02:00
Philipp 44a9683008
Move "submanage" Session value into own methods 2022-10-21 19:35:34 +02:00
Philipp b3f9cef94a
UserSession class [3] - Refactor src/ files excluding Module/Model 2022-10-21 19:35:32 +02:00
Philipp 0b66b6e0d5
Move Session "exists" and "expire" to new class 2022-10-20 20:27:35 +02:00
Philipp 940619325d
Add SessionUsers class including tests 2022-10-20 20:27:34 +02:00
Michael 4930737cc4 Legacy "include" fragments have been removed 2022-10-20 04:21:00 +00:00
Michael d3e167c77c All references to boot.php are now removed 2022-10-19 20:38:25 +00:00
Michael ee1acba9eb old boot.php functions replaced in /src 2022-10-19 07:56:25 -04:00
Tobias Diekershoff d8fe8b1e8b
Merge pull request #12029 from annando/warning
Suppress warning on load check
2022-10-19 07:51:24 +02:00
Michael 196dda9487 Suppress warning on load check 2022-10-19 04:49:57 +00:00
Philipp 4a2f67aa9a
Move Core\Session::clear() to DI::session()->clear() 2022-10-18 21:13:58 +02:00
Philipp a2eb0c7378
Move Core\Session::remove() to DI::session()->remove() 2022-10-18 21:13:28 +02:00
Philipp 315ed3ed22
Remove unused Core\Session::setMultiple() 2022-10-18 21:12:48 +02:00
Philipp 3a8bcb3fbf
Move Core\Session::set() to DI::session()->set() 2022-10-18 21:12:23 +02:00
Philipp dfb5792773
Remove unused Core\Session::pop() method 2022-10-18 21:11:19 +02:00
Philipp fb2b2f5c58
Remove unused Core\Session::create() method 2022-10-18 21:11:00 +02:00
Philipp 7ac86e49d1
Move Core\Session::get() to DI::session()->get() 2022-10-18 21:10:37 +02:00
Roland Häder 26e0469de7
Merge branch 'develop' into rewrite/gravity-constants 2022-10-18 16:34:40 +02:00
Michael 6f68679375 The EOL constant is removed 2022-10-18 12:29:50 +00:00
Hypolite Petovan abf52c0c11
Merge pull request #12012 from nupplaphil/feat/move_monolog
Move Monolog to Addons
2022-10-18 07:31:59 -04:00
Hypolite Petovan ab9b60b9d2
Merge pull request #12014 from annando/usertosession
The user related functions moved to the session class
2022-10-18 07:30:21 -04:00
Michael d43122c6d8 Check the readability before acessing /proc/loadavg 2022-10-18 08:02:55 +00:00
Michael 33ac39c335 The user related functions moved to the session class 2022-10-17 21:11:00 +00:00
Philipp 497fc4e432
Move Monolog to Addons 2022-10-17 22:22:00 +02:00
Michael fdfa1f8630 The notice and info have been moved 2022-10-17 18:55:22 +00:00
Michael 62a0d55fc8 The friendica constants have been moved to the app class 2022-10-17 10:37:48 +00:00
Michael 9bac8153ae Some more constants are moved to their specific classes 2022-10-17 09:24:32 +00:00
Michael 018858934b The priority is now a class constant 2022-10-17 05:49:55 +00:00
Roland Häder da66730e4f
Rewrite:
- moved constants GRAVITY_* from boot.php to Friendica\Model\Item
- also rewrote some array initialization:

From:
````
<?php
$arr = [];
$arr['foo'] = "FOO";
````

To:
````
<?php
$arr['foo'] = "FOO";
````
- added a few type-hints
2022-10-15 00:44:06 +02:00
Michael a21c04d55d Use "maxloadavg" when "worker_load_cooldown" is not defined 2022-10-10 06:01:07 +00:00
Michael 4c52772d84 Use class constant 2022-09-26 13:33:31 +00:00
Michael 5e51ab95fb Merge remote-tracking branch 'upstream/2022.09-rc' into worker-timeout 2022-09-26 13:26:56 +00:00
Michael 3911c9450b (Hopefully) SQL improvements 2022-09-24 17:56:07 +00:00
Michael Vogel 98a4c7a56c We can now configure the worker runtime limits 2022-09-24 10:00:41 +02:00
Michael 97e5477bde static cooldown moved to the cooldown function 2022-09-22 22:46:59 +00:00
Michael e1341b6ad3 Fallback for load detection, additional checks 2022-09-22 05:45:42 +00:00
Michael Vogel 0fa281247d More cooldown calls for worker processes 2022-09-21 21:03:07 +02:00
Hypolite Petovan bdd80eeaaf Fix wrong parameter name in Core\System::httpExit 2022-09-11 02:36:05 -04:00
Michael 075638c0ae Pause the worker execution when the load is too high 2022-09-04 13:54:32 +00:00
Michael cc43b567cb Some changes after code review 2022-08-31 19:03:37 +00:00
Michael 757a5c2de9 Loglevels are adjusted 2022-08-30 19:45:30 +00:00
Hypolite Petovan 4a885a13a6 Remove poke feature 2022-08-09 14:55:55 -04:00
Philipp e0ec304d2a
Merge pull request #11830 from MrPetovan/task/11826-pluralization
Use L10n->tt instead of t() for plural strings
2022-08-08 15:35:54 +02:00
Tobias Diekershoff 7634fc2425 added Gàidhlig language translation
This adds the initial translation of Friendica core into Gàidhlig by @gunchleoc

redo of #11818
2022-08-08 11:37:39 +02:00
Hypolite Petovan bff6a5a9ee Add support for additional interpolated variables in L10n->tt() 2022-08-08 01:51:42 -04:00
Hypolite Petovan 067f06b166 Rework return_path session key handling
- Add new IHandleSessions::pop() method
- Remove redirection from Authentication::setForUser()
- Add explicit return_path form parameter to Login::form()
2022-08-01 12:10:43 -04:00
Roland Häder 3c540517e7
Ops 2022-07-19 23:40:29 +02:00
Roland Häder 4e5179a7b3
Changes:
- added some missing type-hints
- fixed some documentation (e.g. empty * line between @param and @return/throws)
2022-07-19 18:02:38 +02:00
Hypolite Petovan 42d411712b
Merge pull request #11742 from annando/server-detection
Improved server detection
2022-07-18 08:50:59 -04:00
Michael f2a4aecc05 Check for GMP module 2022-07-17 06:34:37 +00:00
Michael 8b7cb5d9ef Merge remote-tracking branch 'upstream/develop' into server-detection 2022-07-16 12:44:21 +00:00
Roland Häder 4cb5cadba8
Added returned type-int "int" 2022-07-13 21:10:50 +02:00
Philipp d74e57ef2c
include suggested changes 2022-07-13 00:23:12 +02:00
Philipp a910fd8864
Split DBStructure & View to avoid DB-calls and dependencies for basic operations
- new "Definition" classes vor DB and Views
- new "Writer" classes to create SQL definitions for DB and Views
- DBStructure & View are responsible to execute DB-querys
2022-07-12 23:40:31 +02:00
Philipp 34f2b2f558
Add the right exceptions for BaseUrl::redirect and respect them when catching exceptions at the Trust page 2022-07-07 21:47:39 +02:00
Michael cc75eb5d18 Improved server detection 2022-07-05 05:04:05 +00:00
Roland Häder e33f5612ab
Changes:
- added some type-hints
- added some documentation
- changed some double-quotes to single
2022-06-27 15:16:18 +02:00
Hypolite Petovan 91f5a7cc6b Convert potential spaces in Memcache(d) key names
- Address https://github.com/friendica/friendica/issues/11630#issuecomment-1166475036
- Add test for space in cache keys
2022-06-26 07:30:30 -04:00
Philipp d441b90bda
Respect Forwarded-For headers 2022-06-23 22:42:35 +02:00
Roland Häder 2f358607c7
Changes:
- renamed Logger::getLogger() to getInstance() (@MrPetovan)
2022-06-22 01:50:10 +02:00
Roland Häder cdcfb4064b
Changes:
- added type-hints
- added missing documentation
- renamed Logger::getWorker() to Logger::getLogger() as there is no worker class
  returned but the actual (inner) logger
2022-06-21 21:22:16 +02:00
Roland Häder 44a9ec9b17
Rewrite:
- avoid having array|string for $table to have a "string" type-hint for $table
- you now have to do it for yourself by giving 'schema.table' as parameter
2022-06-21 13:47:38 +02:00
Roland Häder 94a594eeb2
Ops, wrong type-hint 2022-06-20 03:36:36 +02:00
Roland Häder 14bf72e4fe
Changes:
- added some documentation
- added type-hints
2022-06-20 02:48:05 +02:00
Roland Häder a0c8fc6d6e
Changes:
- added more type-hints
2022-06-20 02:48:02 +02:00
Roland Häder 7bb0cb5323
Changes:
- added more type-hints
- DBStructure::existsTable() does no longer need array support for table name
  because this is no longer used (good work!)
2022-06-19 02:11:12 +02:00
Roland Häder 8756d92316
Continued:
- prevents a "Return value of Friendica\Core\Worker::workerProcess() must be of the type array, bool returned"
2022-06-18 15:57:31 +02:00
Roland Häder af8cd5ca86 Worker::getWaitingJobForPID() can also return FALSE on failure ... :-( 2022-06-17 17:18:31 +02:00
Roland Häder f7c1eaa858 Continued:
- added type-hints
- removed out-dated documentation
- added some missing documentation
2022-06-17 17:18:31 +02:00
Michael 7e747b2f41 API: Speed improvements when fetching posts 2022-06-10 18:49:03 +00:00
Michael e46354a522 New command to merge duplicated contacts 2022-06-01 22:11:03 +00:00