Commit graph

1837 commits

Author SHA1 Message Date
Michael a27274b3b4 Avoid loops at deletion / decoupling for relay posts 2022-07-28 05:29:47 +00:00
Michael 3c71392f9e Avoid endless loop while deleting 2022-07-27 21:57:05 +00:00
Michael 505191dec5 Decouple the processor from the receiver 2022-07-27 20:59:42 +00:00
Michael 3af55de978 Issue 11776 - process replies via a worker task 2022-07-27 20:03:28 +00:00
Michael 86105635ca Improved message handling / new activity relay handling 2022-07-27 17:39:00 +00:00
Michael b546173747 IMproved handling of untrusted posts 2022-07-24 21:58:09 +00:00
Michael 5ab94ea921 Option to store untrusted entries 2022-07-24 19:31:31 +00:00
Michael 51cc1f679f Added trust / isActivityGone 2022-07-24 14:26:06 +00:00
Michael 55b6a89c7c Optimizing 2022-07-24 13:49:57 +00:00
Michael 6abb4d40d6 Handle changed parents 2022-07-24 13:09:35 +00:00
Michael 06280aa5a3 Recursively delete failed worker tasks 2022-07-24 09:26:52 +00:00
Michael 073695b33c Funkwhale context file moved 2022-07-23 23:10:47 +00:00
Michael 6a19639ac2 Standards 2022-07-23 14:10:07 +00:00
Michael 5d6eb4670a We now store the conversation as well 2022-07-23 13:58:14 +00:00
Michael abf39ff9cf Merge remote-tracking branch 'upstream/develop' into enqueue-posts 2022-07-23 12:55:34 +00:00
Michael 8c602071c2 Bookwyrm posts now work 2022-07-23 12:50:15 +00:00
Michael 7eb410bed7 Conversation/context is now stored 2022-07-23 06:52:43 +00:00
Michael 54cebf5a88 Remove test code 2022-07-21 12:42:26 +00:00
Michael 4c5e9f206e Remove ignored undo 2022-07-21 11:47:23 +00:00
Michael 99f7270e18 Improved workerqueue handling 2022-07-21 08:55:45 +00:00
Michael 4930e77eb3 We are now setting the corresponding worker id 2022-07-21 07:05:38 +00:00
Michael 28fb022425 Reset the recursion depth at a different place 2022-07-21 06:26:31 +00:00
Michael c775833117 Use deferred tasks 2022-07-21 06:23:55 +00:00
Michael d4a536137d database.sql updated, standards fixed 2022-07-21 05:42:53 +00:00
Michael 4a1fb1da12 Hourly process pending queue entries 2022-07-21 05:33:01 +00:00
Michael 1d13574225 Fetching of missing posts is reworked 2022-07-21 05:16:14 +00:00
Hypolite Petovan 650e05bcb5
Merge pull request #11758 from Quix0r/fixes/wrong-variable-name
Fixed variable name + used empty()
2022-07-20 07:55:38 -04:00
Roland Häder 4b5ae32ec6
Changes:
- ops, fixed variable name (thanks to @annando)
- also used empty() for an empty array (and false/null)
2022-07-20 11:54:28 +02:00
Michael Vogel fc52296a77
Merge branch 'develop' into diaspora 2022-07-20 08:12:30 +02:00
Michael 138a15404f Fix processing of incoming Diaspora messages 2022-07-20 05:38:53 +00:00
Michael 7dcd02938d Remove entries from queue / relay detection 2022-07-20 05:37:40 +00:00
Roland Häder 1fbda27aad
Changes:
- rewrote a lot local variables to an array and returned it instead of an
  anonymous array
- added more debug/warning logging in case something went wrong -> lesser guessing! ;-)
- changed double-quote to single
2022-07-20 01:08:15 +02:00
Roland Häder 2ef0566ba5
Fixed:
- "Undefined variable: contact in .../src/Protocol/Diaspora.php on line 4097
Trying to access array offset on value of type null in .../src/Protocol/Diaspora.php on line 4097"
- see https://github.com/friendica/friendica/issues/11632#issuecomment-1189465336
2022-07-19 23:46:09 +02:00
Michael ce38e63399 Add and delete entries 2022-07-18 14:03:49 +00:00
Michael 2f462ffa16 Store incoming posts in a queue 2022-07-18 03:31:00 +00:00
Philipp 6175f9086e
Merge pull request #11747 from annando/fixes
Emergency fixes to fix a bunch of fatal errors
2022-07-17 16:34:53 +02:00
Michael 6882e70024 Match the documentation 2022-07-17 13:00:34 +00:00
Michael 2ddf37f32d Emergency fixes to fix a bunch of fatal errors 2022-07-17 11:47:12 +00:00
Roland Häder cb7f52cc6a
Fixed:
- $item is the proper array here,
- see https://github.com/friendica/friendica/issues/11632#issuecomment-1186119430
2022-07-16 12:19:09 +02:00
Hypolite Petovan 74991d1f95 Fix type hint typo in Protocol\Email::messageGetPart
- Address https://github.com/friendica/friendica/issues/11724
2022-07-11 23:05:13 -04:00
Hypolite Petovan eb8237dd89 Remove unused uid parameter in Item::newURI 2022-07-09 07:39:51 -04:00
Roland Häder bf809c9d57
Fixed:
> TypeError: "Argument 2 passed to Friendica\Protocol\ActivityPub\Transmitter::sendContactReject()
> must be of the type int, string given

I followed here here the documentation, may fix #11708
2022-07-06 05:43:00 +02:00
Hypolite Petovan 181c142bb4 Remove overly strict type-hint in ActivityPub\Transmission::createCachedActivityFromItem
- Fix "Return value of Friendica\Protocol\ActivityPub\Transmitter::createCachedActivityFromItem() must be of the type array, bool returned" error
2022-07-02 22:16:59 -04:00
Philipp e594656a48
Merge pull request #11684 from MrPetovan/bug/11651-ap-fetch-queue
Create ActivityPub\FetchQueue and ActivityPub\FetchQueueItem classes
2022-06-26 13:36:19 +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
Hypolite Petovan da32fa8fa6 Create ActivityPub\FetchQueue and ActivityPub\FetchQueueItem classes
- These classes are used to flatten the recursive missing activity fetch that can hit PHP's maximum function nesting limit
- The original caller is responsible for processing the remaining queue once the original activity has been fetched
2022-06-25 12:40:54 -04:00
Roland Häder 88870d18be
Changes:
- added some type-hints
- added documentation
2022-06-25 16:48:36 +02:00
Roland Häder b0693c1ad7
Reformatted array 2022-06-25 16:48:35 +02:00
Roland Häder 82bb36e13d
Changes:
- Made Item::guidFromUri()'s $host parameter optional (allowing null)
- added some type-hints
- added documentation
- this may fix reported issue in #11630
2022-06-24 03:17:57 +02:00
Roland Häder fd8f4269ff
Reformatted code 2022-06-23 17:30:17 +02:00
Roland Häder 3f74a59f73
Added some type-hints 2022-06-23 17:30:14 +02:00
Roland Häder 0ddb315b23
$id in Transmitter::sendContactAccept() is a string, see Introduction class 2022-06-23 16:48:00 +02:00
Roland Häder 636fef26f1
Maybe this fixes missing array element 2022-06-23 07:40:49 +02:00
Roland Häder 7eefb9aed8
Changed:
- empty() is maybe superflous here, still I would prefer a code style that is
  written explicitly and not rely on "magic casting"
2022-06-22 18:57:01 +02:00
Roland Häder b996712ef7
Images::getInfoFromURL[Cached]() will both return empty arrays on error and
that needs to be reflected here, too.
2022-06-22 17:20:59 +02:00
Roland Häder 101cd2dd10
Changes:
- added some documentation
- fixed some documentation
- changed more double-quotes to singl
2022-06-22 16:14:14 +02:00
Roland Häder ba45e59313
Changes:
- added more type-hints
- added missing documentation
- Email::send() now returns what mail() returns (bool)
2022-06-22 14:36:48 +02:00
Roland Häder 2dd7d465e8
Changes:
- added more type-hints
- updated documentation
- changed double-quotes to single
2022-06-22 14:36:47 +02:00
Roland Häder 74ab7648c6
Changes:
- addHubLink()'s 2nd parameter is DOMElement
- added more type-hints
- converted double-quotes to single
2022-06-22 14:36:46 +02:00
Roland Häder abd0d9f3fd
Changes
- added type-hints
- added some documentation
- added default: block for unknown 'rel' value
- changed return type void to empty array
2022-06-22 14:36:45 +02:00
Roland Häder 77c37ff2db
Fixed:
- Uncaught Exception TypeError: "Argument 3 passed to
  Friendica\Protocol\DFRN::createActivity() must be of the type string, null
  given, called ..."
2022-06-21 13:47:37 +02:00
Roland Häder 95f9eb34ac
Fixed indenting 2022-06-21 01:29:33 +02:00
Roland Häder fbae0b8bcf
Changes:
- renamed ItemArrayFromMail() to getItemArrayFromMail() to follow naming-convetion
- added missing type-hints
- added missing documentation
2022-06-20 21:22:46 +02:00
Roland Häder ea22e88896
Added documentation 2022-06-20 21:02:34 +02:00
Roland Häder 752953e472
Changes:
- as @MrPetovan pointed out, $actor can be NULL earlier and used later as NULL
- added some missing type-hints
- added missing documentation
- the added @TODO points out to avoid true|false|null for a boolean
2022-06-20 21:00:19 +02:00
Roland Häder 0c12e947dd
Changes:
- null was 2nd argument's value before, an empty string is basically the same here
2022-06-20 20:01:59 +02:00
Roland Häder 4fb03cf163
Changes:
- fixed a null value handled over to Friendica\Model\APContact::getByURL()
- added missing type-hints
2022-06-20 19:05:02 +02:00
Roland Häder a0c8fc6d6e
Changes:
- added more type-hints
2022-06-20 02:48:02 +02:00
Roland Häder d276f2c62b
Changes:
- added type-hints
- changed some double-quotes to single
2022-06-20 01:00:29 +02:00
Roland Häder 41f34c4261
Maybe fix for:
"Argument 1 passed to Friendica\Model\ItemURI::getIdByURI() must be of the type string, null given, called in Processor.php line 1219"
2022-06-18 18:30:50 +02:00
Roland Häder 7cbb818c93
Set type-hint for parameter $data to SimpleXMLElement as $fields in dispatch()
is the same and being handled over.
2022-06-18 05:19:24 +02:00
Roland Häder 89302d0843
Some outside code relies on returned "false" 2022-06-18 05:06:18 +02:00
Roland Häder aaf5c323b6
Fixed indenting 2022-06-18 05:04:14 +02:00
Roland Häder adb4aea6ad
Changes:
- added some type-hints
- replaced most double-quotes (only Diaspora.php, later more) with single
- added some documentation
- normalized indenting in Diaspora.php (I hope I got all?)
2022-06-18 05:03:10 +02:00
Roland Häder a770634b95 Ops, wrong type 2022-06-17 17:18:31 +02:00
Roland Häder 36d56a4041 Continued:
- changed back to 'return false;' as other methods heavily rely on false instead
  of an empty array as pointed out by @heluecht@pirati.ca
- $fetched_contact should be initialized as an empty array, let's not make this
  code more crazier than it already is (see APContact::getByURL())
2022-06-17 17:18:31 +02:00
Roland Häder 605e7d55b3 Continued:
- added more type-hints
- some methods in Diaspora returned void but integer was documented so I
  changed it to -1 to have a proper type-hint
2022-06-17 17:18:31 +02:00
Roland Häder 0c9aff8a09 Also need to declare $profile or otherwise an invocation of
Receiver::getReceiverForActor() will fail.
2022-06-17 17:18:31 +02:00
Roland Häder 5c9ce790bf Fixed:
- $object_data['actor'] can be null, but Receiver::getReceivers()'s 2nd
  parameter expect it to be string
2022-06-17 17:18:31 +02:00
Roland Häder a587217f47 Fixed "Argument 4 passed to Friendica\Protocol\DFRN::processVerbs() must be of the type bool" 2022-06-17 17:18:31 +02:00
Roland Häder c351099c5a Ops, bad type-hint here 2022-06-17 17:18:31 +02:00
Roland Häder c2e889cfae Added more type-hints 2022-06-17 17:18:31 +02:00
Roland Häder 51a7b5c584
Made also this one sweeter (null-coalscing) 2022-06-16 17:36:47 +02:00
Roland Häder e8fee5644b
Ops, syntax errors get unnoticed with a simple editor. :-( 2022-06-16 17:10:02 +02:00
Roland Häder 624e4c192c
Changed to null-coalscing style (??) as sugguested by @MrPetovan 2022-06-16 16:59:54 +02:00
Roland Häder 7814ba4fc4
Fixes for bad invocations of HTML::toBBCode() (1st parameter is now string) 2022-06-16 16:54:50 +02:00
Roland Häder b200874f17
Ops:
- wrong way around (!empty($foo)) is proper
- also needed to be checked on $acitivty['content']
2022-06-16 16:54:50 +02:00
Roland Häder b1e4c0931a
Fixes and type-hints:
- added more checked type-hints as they prevent bad method invocations
- fixed TypeError for HTML::toBBCode() invocations with NULL as first (wrong)
  argument, thanks to @tobias@social.diekershoff.de pointing this out.
2022-06-16 16:54:49 +02:00
Michael d7d8a6ab55 Issue 11625: Don't parse the title through Markdown 2022-06-11 06:50:59 +00:00
Michael cc6192df02 Issue 10926: Transmit pending events to accepted contacts 2022-05-30 20:52:43 +00:00
Michael 74b102b948 Increase the delivery queue counter on drop 2022-05-24 17:28:35 +00:00
Michael 034d838248 Ignore delivery problems with drops 2022-05-24 12:27:35 +00:00
Michael 8969e83134 Use a better query to fetch the relay actor 2022-05-24 08:06:48 +00:00
Michael e68ff3b3bb Return the actor, not the array 2022-05-24 08:02:55 +00:00
Michael b1a2de5cb5 Resubscribe to relay servers 2022-05-24 07:02:42 +00:00
Michael 6ce23bd9ca Fixed code structure 2022-05-20 04:42:10 +00:00
Michael dc16e6d471 The worker is split into several classes 2022-05-19 19:24:21 +00:00
Michael c3fd8b39aa Caching for profiles removed 2022-05-17 12:53:31 +00:00
Michael 4e3e9dc763 Cache the profile as well 2022-05-17 12:46:55 +00:00
Michael 73019284ce Increase cache lifespan / clear cache upon changes 2022-05-17 12:32:25 +00:00