f.haeder.net

Back with updated instance but wrong UTF?

I have successfully updated my instance to latest code and migrated to new config file. But as you can see, the UTF-8 is broken. What can I set here to fix it? The database says "utf8mb4_general_ci".
develop friendica
Can you check in src\Database\DBA.php what charset is actually used for the connection?
Tomorrow more, already 04:33 a.m. here. :-/
Sorry, busy and hot day today. Will attempt it this evening. :)
As configured $charset has value utf8mb4.
Do I have to run queries like this to fix it: UPDATE `item-content` SET `body`= REPLACE(`body`,'ö','?');?
Found a better one:
UPDATE
`item-content`

SET
`body` =
CASE
WHEN CONVERT(CAST(CONVERT(`body` USING latin1) AS BINARY) USING utf8) IS NULL THEN `body`
ELSE CONVERT(CAST(CONVERT(`body` USING latin1) AS BINARY) USING utf8)
END;

Source: stackoverflow
Careful with already converted data, like I had with contact table where all converted uni-code characters had been converted to question marks. I then had to re-fetch all these contacts over the "Advanced" tab, still there are some pending. GNUSocial allows me to refresh contacts through scripts. Maybe a good idea for Friendica as well?
While clicking on "re-fetch contact data" in the "Advanced" tab, I get these E_NOTICE with OStatus contacts:

Notice: Undefined index: body in /var/www/../src/Protocol/OStatus.php on line 1163
Notice: Undefined index: title in /var/www/../src/Protocol/OStatus.php on line 1916
Notice: Undefined index: guid in /var/www/../src/Protocol/OStatus.php on line 1925
Notice: Undefined index: tag in /var/www/../src/Model/Item.php on line 2787
Notice: Undefined index: tag in /var/www/../src/Model/Item.php on line 2796
Notice: Undefined index: attach in /var/www/../src/Protocol/OStatus.php on line 1372


Will prepare a PR for them.
Found a parser error in addons:
PHP Parse error: syntax error, unexpected '}', expecting end of file in ./addons/pumpio/pumpio.php on line 228

Parse error: syntax error, unexpected '}', expecting end of file in ./addons/pumpio/pumpio.php on line 228

Errors parsing ./addons/pumpio/pumpio.php
Branch pumpio/import-curly-braces created, PR is on it's way.
More errors while deleting an item:
Notice: Undefined index: remote in /var/www/../include/items.php on line 357
Notice: Undefined index: confirm in /var/www/../include/items.php on line 368
Notice: Undefined index: canceled in /var/www/../include/items.php on line 391

Yes, some of you may say that I can switch off E_NOTICE but that is causing more trouble than solving it. The best practice in my oppinion is, to get to the root of the cause and not supress errors and warnings.

Only a #fixed #bug is a good bug. :-)
Again, some "downtime" (errors) due to updating my develop branch to latest upstream (= main repository) changes.

Latest develop fails to run SQL update

@Friendica Developers I have an error while the db update was running, Friendica was sending me an email about it.
The friendica developers released update 1274 recently,
but when I tried to install it, something went terribly wrong.
This needs to be fixed soon and I can't do it alone. Please contact a
friendica developer if you can not help me on your own. My database might be invalid.
The error message is
Errors encountered performing database changes: ALTER IGNORE TABLE `item` DROP INDEX `contactid_allowcid_allowpid_denycid_denygid`, DROP INDEX `uid_authorlink`, ...


On console I get this error:
Error 1296 occurred during database update:
Got error 64 'Temp file write failure' from InnoDB


I'm now back at my old commit so the instance can work again.
@Friendica Developers bug develop friendica update
Okay, fixed here. The flooded `/tmp/` has caused this, to less sleep to figure this out by myself ... :-/ Thank you both again! @Hyp??li????e Pet????van (he/him) @Rebeka Catalina
Quick notice: Notice: Undefined index: url in /home/quix0r/NetBeansProjects/friendica/src/Object/Post.php on line 359. Maybe it does not exist at all in item table? @Hyp??li????e Pet????van (he/him) @Michael Vogel or maybe #tpyo ? uri does exist.
Yupp, no url there.
Now, after an update my right-side pane is gone. I found out that a style.css with display:none hid it.
Found a E_NOTICE here: Notice: Undefined index: title in /var/www/../src/Content/Text/BBCode.php on line 565
And another one: Notice: Undefined index: term in /var/www/../mod/filer.php on line 18
And 4 more:
Notice: Undefined property: stdClass::$type in /var/www/../src/Content/OEmbed.php on line 329
Notice: Undefined property: stdClass::$html in /var/www/../src/Content/OEmbed.php on line 169
Notice: Undefined property: stdClass::$type in /var/www/../src/Content/OEmbed.php on line 170
Notice: Undefined property: stdClass::$type in /var/www/../src/Content/OEmbed.php on line 171
Notice: Undefined property: stdClass::$type in /var/www/../src/Content/OEmbed.php on line 205
@Hyp??li????e Pet????van (he/him) Do you have any ideas of fixing them? I would try property_exists() where needed.
empty() or isset() work as well.
I find mine more clear ... ;-)
And I think I remember that it is lesser recommended for properties of stdClass objects.

And yet another E_NOTICE here: Notice: Undefined index: verb in /var/www/../src/Core/NotificationsManager.php on line 281. It origins from the system notification list view (/notifications/system.
@Hyp??li????e Pet????van (he/him) So, how to address this? Normally, I would check if the array element exists and if not, throw an exception. But that seems to be not wanted, it would however make it traceable where the error origins from (xdebug needs to be properly configured).
You really are a Java developer. :-D

I mostly just see if it is critical if a value isn't as expected. And I prefer failing silently - or at least without the danger of data loss.

Paradigms

:-) #Java teaches you to take really good care of your type-hints. But this will now lead away from the original scope of this thread, I guess.
#Java java paradigm php7 strong-types type-hints weak-types
And 2 more E_NOTICE:

Notice: Undefined index: emailcc in /var/www/../mod/item.php on line 192
Notice: Undefined variable: postopts in /var/www/../mod/item.php on line 632
Branch is ready, going to make a PR.
:D I should also fix the 2nd one ...
PR updated (and rebased ... ;) ).
And one more in addons: Notice: Undefined index: allow_api in /var/www/../addon/xmpp/xmpp.php on line 98
And even more while connecting to a #diaspora account:
Notice: Undefined index: cancel in /var/www/../mod/follow.php on line 22
Notice: Undefined index: addr in /var/www/../src/Protocol/Diaspora.php on line 2921
Notice: Undefined index: uprvkey in /var/www/../src/Protocol/Diaspora.php on line 3172
Notice: Undefined index: addr in /var/www/../src/Protocol/Diaspora.php on line 2921
PR #5404 is out to address these.
#xdebug let suppressed warnings/errors scream:
SCREAM:  Error suppression ignored for
Warning: file_get_contents(/../phptmp/friendica/daemon.pid): failed to open stream: No such file or directory in /../friendica/bin/daemon.php on line 67

This whole thing can be done otherwise:
- remove the @ from it
- use file_exists() or is_readable() to check if file exists
- if so, read it, otherwise skip further parts

This leads to better code. In addition to that, maybe this particular thing can be encapsulated away in a class?
So, I think I rewrite this part a bit.
Some more (still there?) while requesting to follow an OStatus account:
Notice: Undefined index: body in /var/www/../src/Protocol/OStatus.php on line 1163
Notice: Undefined index: title in /var/www/../src/Protocol/OStatus.php on line 1916
Notice: Undefined index: guid in /var/www/../src/Protocol/OStatus.php on line 1925
Notice: Undefined index: tag in /var/www/../src/Model/Item.php on line 2787
Notice: Undefined index: tag in /var/www/../src/Model/Item.php on line 2796
Notice: Undefined index: attach in /var/www/../src/Protocol/OStatus.php on line 1372


And one from when the daemon is running:
Notice: Undefined offset: 0 in /../src/Model/GContact.php on line 970
Gee, getting more: ( ! ) Notice: Undefined index: marital in /../mod/profiles.php on line 250 and also later for line 314.
Interesting, that $item has really no element 'body':Image/Photo cc !Friendica Developers
:-( Comments are not getting to mentioned forums ... Makes sense, of course. :-) Because the main post is not propagated. cc @Hyp☀️li🌷e Pet🌸van (he/him) @Michael Vogel
Editing a photo causes E_NOTICEs:

Notice: Undefined index: group_allow in /var/www/../mod/photos.php on line 356
Notice: Undefined index: contact_allow in /var/www/../mod/photos.php on line 357
Notice: Undefined index: group_deny in /var/www/../mod/photos.php on line 358
Notice: Undefined index: contact_deny in /var/www/../mod/photos.php on line 359
Another one when I view notifications:
Notice: Undefined index: verb in /var/www/../src/Core/NotificationsManager.php on line 276
Here, $it misses that element.

Friendica is overly happy with notifications

Wow, that was a lot notifications, about 300 I guess, pilled up my whole desktop:
Image/Photo
desktop-notification friendica
Fabio Friendica
"ARE YOU NOT NOTIFIED?"

Image/Photo

Needed to change item.body - domain parker found again

Today I ran this SQL on my #friendica database:
MariaDB [xxx]> UPDATE `item` SET `body`=REPLACE(`body`,'oracle.skilledtests.com','invalid-domain') WHERE `body` LIKE '%skilledtests.com%s';
Query OK, 94 rows affected (1 min 1.45 sec)
Rows matched: 94  Changed: 94  Warnings: 0

MariaDB [xxx]>

Normally I try to avoid such "hacky" things as they may hurt the application. But here I made an exception. Sadly, #ErkanYilmaz stepped down and left #question bot and the famous #fediverse grou left to death. Now it seems also the domain is gone. His decision but as you can see here, a "domain-shark" (someone hunting with automated scripts for left and popular domains) took it over and parked it.

I ask you not to always stay with us, your decision and I respect it. But please consider to ask someone here to take over the domain and delink it from all other nodes or else, "thanks" to the #page-ranking by #googlle it still has an attractive rank and sure such people will give everything to grab it and put it on sale with for-money generated "content" (#fake-content ) on it.

So, the other administrators, please repeat above query for any parked (given up) domain you can find.
#friendica #ErkanYilmaz #question #fediverse #page-ranking #googlle #fake-content friendica old-owner-leaving skilledtests.com sql
#mindblown some shady registrar tries to get .invalid in their TLD list ...

Problem with http-bind to XMPP server

I have xmpp-based chat enabled on this site where I currently have some trouble with. You can reach it here: https://f.haeder.net/http-bind

The upstream server behind it runs at 127.0.0.1:5280 and is configured as followed:
ejabberd.cfg
{5280, ejabberd_http, [captcha, http_put, http_poll, http_bind]}
and ...
ejabberd.yml
port: 5280
ip: "127.0.0.1"
module: ejabberd_http
request_handlers:
"/websocket": ejabberd_http_ws
## "/pub/archive": mod_http_fileserver
web_admin: true
http_bind: true
## register: true
captcha: true
tls: true
certfile: "/etc/ejabberd/ejabberd.pem"


In /var/log/ejabberd/error.log I see tons of these messages:
2018-05-13 xx:xx:xx.xxx [critical]<0.2508.0>@extauth:loop:142 extauth script has exitted abruptly with reason 'normal'
chat ejabberd friendica xmpp
Process is clearly listening:
# netstat -lnp |grep 5280
tcp 0 0 127.0.0.1:5280 0.0.0.0:* LISTEN xxx/beam.smp
#
In my #apache2.4 configuration file I have this:

<IfModule mod_proxy.c>
<IfModule mod_proxy_http.c>
ProxyPass /http-bind http://127.0.0.1:5280/http-bind retry=0
</IfModule>
</IfModule>
Ah, if I call that URL with lynx, nothing returns, but with https something returns! Here is the bug!
FIXED!!! I had to set tls: false, restart ejabberd, then apache. #fixed
#TIL If you restart apache first, it won't work as ejabberd must be listening already when apache builds the proxy chain (which makes sense again). And yeah, having TLS on 127.0.0.1 makes no sense. ;-)

Well, #shit-happens

Buggy federation?

Dann machst du Musik? Welche Style? @Steffen K9 ????


This comment has not reached him but he does follow me. #federation-bug #friendica
#federation-bug #friendica @Steffen K9 devlop federation friendica
PHP Fatal error: Uncaught TypeError: Argument 2 passed to statusnet_cron() must be of the type array, null given, called in /var/www/../src/Core/Addon.php on line 246 and defined in /var/www/../addon/statusnet/statusnet.php:727
Ops!
I have now tweaked some settings, the worker queue is now dropping almost constantly. I have found out that ./bin/daemon.php continues only every 5 minutes with next cycle. Plus worker_fetch_limit was only on 1 which I have now increased to 100. Also worker_queues is now 20 as @Michael Vogel suggested. Plus fastlane is enabled.

These settings have improved worker performance and it is now on the job. :-) In addition to that I enabled "my" implemented redis cache driver and set config_adapter to preload.

So here is my .htconfig.php (relevant lines only):
// Pre-load configuration
$a->config['system']['config_adapter'] = 'preload';

// Worker settings
$a->config['system']['worker_queues'] = 20;
$a->config['system']['worker_fetch_limit'] = 100;
$a->config['system']['worker_fastlane'] = true;

And always keep logfile + intense debugging on low-profile! All instructions being executed count in and drop performance for each request being sent to your instance.

E_NOTICE in .htconfig.php ?

Hi @Friendica Developers I'm getting this error on my instance (this):

PHP Notice:  Use of undefined constant REGISTER_CLOSED - assumed 'REGISTER_CLOSED' in /var/www/../.htconfig.php on line 38
PHP Stack trace:
PHP   1. {main}() /var/www/../bin/daemon.php:0
PHP   2. include() /var/www/../bin/daemon.php:41


I get this every time I start or stop the daemon (as you can see in backtrace).
@Friendica Developers develop friendica update
Okay, it always starts and stops, just a bit annoying.

Update of develop branch

Dear @Friendica Developers I have now updated to latest develop code and rebased my branch. There have always been a scripts/dbstructure.php around. How do I now update? The offline documentation does not provide any information about this.
@Friendica Developers develop friendica update
And I got this on ./bin/console dbstructure update:

ALTER IGNORE TABLE `gserver` MODIFY `register_policy` tinyint NOT NULL DEFAULT 0 COMMENT '', MODIFY `registered-users` int unsigned NOT NULL DEFAULT 0 COMMENT '', MODIFY `network` char(4) NOT NULL DEFAULT '' COMMENT '', ADD `relay-subscribe` boolean NOT NULL DEFAULT '0' COMMENT 'Has the server subscribed to the relay system', ADD `relay-scope` varchar(10) NOT NULL DEFAULT '' COMMENT 'The scope of messages that the server wants to get', COMMENT = 'Global servers';

Error 1060 occurred during database update:
Duplicate column name 'relay-subscribe'


You may want to split this combined SQL statement into single statements then at least all the other parts will work.
This SQL query was automatically generated by the DBStructure::update process that compares your current database schema with the target Friendica current schema. Basically, the script concluded that your gserver table was missing a column and tried to add it back again. I'm not sure why it doesn't see the current column though. This would be a question for @Michael Vogel, he created the DB update routine.
Have done it here. I have also updated my instance again because of the #bug with user accounts.
#bug

My friendica directory

Gettings these warnings a lot:

Warning: mysqli::close(): Couldn't fetch mysqli in /var/www/../htdocs/include/dba.php on line 100

Call Stack:
0.0005 346776 1. {main}() /var/www/../htdocs/include/cron_sync.php:0
0.0149 486640 2. run_pulling_job() /var/www/../htdocs/include/cron_sync.php:93
0.0899 567136 3. pull_worker() /var/www/../htdocs/include/sync.php:406
0.0927 578144 4. dba->__destruct() /var/www/../htdocs/include/sync.php:350
0.0927 578144 5. mysqli->close() /var/www/../htdocs/include/dba.php:100


Anyone knows what is wrong? And I had to fix .htaccess file for Apache 2.4 (Require all denied is the correct one).
directory friendica sync
And the #federation is targeted by escort services ... :-( I have now blocked 4 accounts.
Completed a PR for .htaccess file thing: https://github.com/friendica/dir/pull/46
Thanks for the PR! Not sure what it is about in the mysqli error.
Accounts that have censored=1 activated (blocked?) should not be touched by cron_sync.php as this would unlock them again.
Also I noticed that these accounts flooded the tags table with their "SEO keywords".

Asynchronous loading of JavaScript and CSS files in Friendica?

@Friendica Developers what do you think? It mostly involves adding the attribute async="" to the tags.
@Friendica Developers async css friendica javascript
The console will tell you which parts are missing next time you encounter the issue though.
The problem is mitigated by the fact only you reported it so far. ????

Friendica verwechselbar mit FB?

Ich wurde hier #aufarbeit angesprochen, ob ich [bold]hier[/bold] auf #Facebook unterwegs sei ... Ja, ist verwechselbar, wenn man sehr ungenau hinsieht. Vielleicht hat er sich an dem Favicon festgeklammert?

Naja, nicht als Kritik oder FB-Bashing verstehen, was damit auch nicht beabsichtigt ist, ich weis sehr wohl, dass Friendica != Facebook ist, da es eine freie Alternative ist.

Ich finde es halt etwas bedenklich. Ich musste nachkorrigieren und sagen, dass es nicht FB, sondern Friendica ist. Mal schauen, vielleicht wechsel ich das Theme? Sieht es wirklich so verwandt mit FB aus? Finde nicht, hier ist vieles weiss und grau, bei FB weiss und blau.
#aufarbeit #Facebook facebook friendica verwechselung
Hier #vier . Ich schalte mal #frio frei und gucke, wie es aussieht. Etwas FB konnte ich bei meiner Frau "zwangsweise" sehen (sie ist dort wegen der Familie auf den #Philippinen viel unterwegs, dort gibt es FB kostenlos, (fast) der Rest kostet Aufschlag, 2-Lane-Internet ist dort schon angekommen ... :-( )

XMPP addon does no longer connect to ejabberd

@Friendica Support I had always a working XMPP instance on my friendica instance. Now it doesn't connect. I have enabled debug log in .htaconfig file but nothing is written there.

With pstree I can only see beam.smp with 18 beam.smp threads but no ejabberd_auth.php sub process which did happen before. strace tells me that it tries to read from 0 (stdin) so it seems to wait for input. Access rights and correct user/group are set (0700, ejabberd.ejabberd according to documentation). Yet still it isn't starting.

Any ideas what might cause this?
@Friendica Support addon ejabberd friendica jabber xmpp
Have you changed the path to ejabberd_auth.php? It moved to "scripts".
No, I still have it in include but it did work before. Sure, I need to find some time for updating my instance ...
Then try at first a regular XMPP client to see where the problem is.
As I said, only beam.smp is visible in pstree view, no forked auth_ejabberd.php.
You are on the develop branch. When have you updated your system? Several weeks ago the script moved.
And no, it is not working. Not even a single debug message in ejabberd.log.
Okay, I have always updated ejabberd.cfg but ejabberd.yml is used. No wonder that auth_ejabberd.php was never loaded. Now it is loaded but still the same. I'll digg deeper for this ...
Please check via an external client.
Tried it with #gajim, no change. :-(
Somehow it listens only on IPv6 requests, which I surely not do (not now).
Okay, the private key part in ejabberd.pem was missing. Now I can connect and even with SSL.
Still nothing on friendica's side. It looks like no connect is going through. http-bind is available at https://f.haeder.net/http-bind and returns a 503?
Have a look at your system logfile (/var/log/user.log). There you should see some lines for "auth_ejabberd".
I have found out that ejabberd's http-bin was listening not on 127.0.0.1:5280 but instead on public IP. Maybe misconfiguration, still I'm getting a 502 on pointing my browser to https://f.haeder.net/http-bind

http-bind settings and listener

<IfModule mod_proxy.c>
<IfModule mod_proxy_http.c>
ProxyPass /http-bind http://127.0.0.1:5280/http-bind retry=0
</IfModule>
</IfModule>


And:

# netstat -lnp|grep 5280
tcp 0 0 127.0.0.1:5280 0.0.0.0:* LISTEN xxxxx/beam.smp
#
apache24 bosh ejabberd http-bind

Hacking friendica code with trailing/leading white-spaces

When editing #Friendica code, I use a local commit hook, finding leading and trailing white-spaces. The hook itself is GIT's default pre-commit hook plus a few extra lines:

# Find bad scripts
./util/typo.php

# PHPUnit
if [ -x ./vendor/bin/phpunit ]
then
./vendor/bin/phpunit || exit 255
fi


So, please don't wonder when I touch "the whole file". Then I have just changed DOS -> Uni* line-break (CRLF to LF) as it was being detected as trailing white-space characters.
#Friendica code friendica white-space
js/country.js is indented with space and tabs, I fix that to tabs now. Plus I have fixed some JS warnings due to missing semicolon.
I would also recommend to start with #cache-busting which means, adding version numbers to JS/CSS files (and URLs).
Browsers (even #Firefox #Quantum) tend not to download CSS/JS when they have downloaded it already. This forces your users to press CTRL+F5 (under Firefox at least). The fix is to include a version number in the URL and always increment it when you change something.

Examples: /js/main.js?v=1.0.0 or /css/default.css?v=1.0.0

Static files normally ignore parameters so this is safe to do so. When you change that file, just increment the last patch number until you want it (I prefer to increment from 1.0.9 to 1.1.0 but that is up to the community (you should come up with a versioning convention). #cache-busting
Na, #quantum should be the correct hashtag. #bug

Fatal error: Call to a member function escape() on null

@Friendica Developers I get the following error after I updated to latest develop code:

Fatal error: Uncaught Error: Call to a member function escape() on null in /../friendica/include/dba.php on line 1104
Error: Call to a member function escape() on null in /../friendica/include/dba.php on line 1104

Call Stack:
 0.0036 371800 1. {main}() /../friendica/include/dbstructure.php:0
 0.0533 938728 2. dbstructure_run(array(2), long) /../friendica/include/dbstructure.php:1827
 0.0651 1037352 3. update_structure(true, true, ???, ???) /../friendica/include/dbstructure.php:1783
 0.0654 1038120 4. Friendica\Core\Config::set(string(6), string(11), long) /../friendica/include/dbstructure.php:207
 0.0655 1040408 5. dba::update(string(6), array(1), array(2), true) /../friendica/src/Core/Config.php:167

Variables in local scope (#5):
 $array_element = *uninitialized*
 $array_key = *uninitialized*
 $condition = array ('cat' => 'system', 'k' => 'maintenance')
 $condition_string = *uninitialized*
 $content = *uninitialized*
 $do_insert = *uninitialized*
 $do_update = *uninitialized*
 $fieldname = *uninitialized*
 $fields = array ('v' => '1')
 $old_fields = TRUE
 $params = *uninitialized*
 $params1 = *uninitialized*
 $params2 = *uninitialized*
 $sql = *uninitialized*
 $table = 'config'
 $values = *uninitialized*


Any idea how to fix this? Did I miss something to update on my .htconfig.php file?
@Friendica Developers code fatal-error friendica
I cannot reproduce, but have created some possible workaround: https://github.com/friendica/friendica/pull/3776
That error seem to be fixed but now only CREATE statements are being processed, nothing else. I have fixed all my parser errors which were caused by missing curly braces.
Added a late code-review pointing out some stuff that should be rewritten:

"dba" is now static by annando · Pull Request #3778 · friendica/friendica

Sorry, no progress here. Maybe next weekend, as I have 3 additional more days no work! #atwork
Re-tested it. And seems to be fixed. Need more testing at home before I update this instance.
hoergen GNU Social
@roland @heluecht btw danke für den Screenshot vom Psytrance Forum ;)

Friendica on a widescreen

THis is how the #vier (I guess?) theme looks like on a wide-screen: A lot empty, unused space ...
#vier 16x9 friendica theme widescreen
That's cool, you can't comfortably scan more than about 600-700 pixels of text width at a regular 72 px/inch resolution anyway.
Tobias Friendica
You should add ads :-)
Ha ha ha ... ;-)
Okay, so this is clearly intended then.
It was not really intended but it is hard to change because vier does have many fixed width values in the css. I tried to fix it 2 years ago but after some months of work I came to the conclusion that fixing this issue would mean to rewrite more than half of vier. So it was a lot easier to start a new theme from scratch.
This was the beginning of Frio
Ah, yeah. Thank you for explaining it in detail. Now I can understand it better, I would properly do the same. Maybe one day, someone can do a #vier-fullsize theme ...
I'm not unhappy, don't worry. ;-)
I'm not sure what do you expect, multiple columns or a single unreadable line of text per post? ????

Coding convention rewrites 2-5-2 of 2-14-2

PR request 3469 is out which contains changes towards a Friendica-wide coding-convention. As requested earlier, I have splitted my 119 (!) files large PR into several small to make it easier for the reviewers (not to review tons of changes but small chunks then).

So as you (dear users) can see, #Friendica is being rewritten in many directions. No new stuff but more clear code where I hope to have later an even more clear code (better understandable by humans, a computer can read any badly formatted code as long as it is valid).

@Friendica Developers

Edit: Here is the link to the PR: https://github.com/friendica/friendica/pull/3469
#Friendica @Friendica Developers code coding-convention friendica php
PR 3473 is up: https://github.com/friendica/friendica/pull/3473 split 6 of 14 of 2nd wave.
Added some changes to include/text.php, in the start of the PR I just rebased the branch towards upstream/develop.
3588 is out and waits for a CR (with fixes).
I ran php util/typo.php again and it failed ????
:D I hope we can also solve that issue with ./vendor/ directory then. Because looked globally (PHP community) most projects using composer install will ignore it because it is considered as "build" (locally recreated) directory.
What is the issue with vendor?
It should be ignored entirely and not committed as it will be rebuild by composer install. If that is to hard/impossible for some users, then they should download pre-built "binary" packages (including vendor).
This is the end goal, however it is a gradual process. For now I believe we don't have a good enough routine to offer a pre-built archive of the latest version of Friendica, also not all the people using the dev branch are aware about the extra steps required to build the dependencies. I'm voluntarily not in the loop anymore so I couldn't give you a timetable, but I believe it is on track to remove vendor from version control eventually.
Sorry, had not continued on it. Maybe when time allows it. And then I have to rebase a lot.

Friendica + WebDAV/$API = Nextcloud-Ready?

What do you think?, especially those @Friendica Developers ? Is it possible to rewrite #Friendica to have some "wrapper class" for storing pictures/movies locally (default) or remotely on a #WebDAV share like with Nextcloud?

Or does #Nextcloud have an other API for file storage/retrieval than WebDAV? Would be cool to not have pictures stored on so many places. Sure you need then a "WebDAV browser" where you can easily select your files you want to link here (including music files and videos, of course).
#Friendica #WebDAV #Nextcloud @Friendica Developers api friendica nextcloud webdav
Abstracting storing files, like:

- LocaStorage (stores files on local directory
- WebDavStorage (stores files on any WebDAV, let's make a simple WUI here for NextCloud/OwnCloud configuration to encourage people using it)
- SftpStorage (stores files over an SFTP link)
- FooStorage (stores files the foo-way)

And many more. So how to procede?
If one has a path for storage, you can let the OS figure out what it is.

eg, Friendica looks in a directory called /storage

This can literally be a directory called /storage...or you can add an fstab entry to add an arbitrary type of remote file system mounted at /storage.

New directory online, but ...

I have just finished setting up a new directory for #Friendica: https://dir.haeder.net/

It pulls from http://dir.friendica.com/ and http://dir.friendi.ca/ and it is secured with #LetsEncrypt :-)
#Friendica #LetsEncrypt directory forum friendica user
... but I think it needs some overworking, at least fixing that E_NOTICE in initial page and then those nasty CHMOD rights. I have already forked it and will fix it now.

friendica-addons need fixing CHMOD

@Friendica Developers please fix chmod in wppost/*.* this has not-needed execute flag. cc @Michael Vogel
What happened to the make file? That was supposed to avoid things like wrong permissions.

Authentication with Friendica Jabber account?

I have tried to connect to my XMPP account I have with this #Friendica instance, it is the same as my web-finger, as I understand it. But what is the current password so I can connect? It is not the one I used to login.

cc @Friendica Support @Michael Vogel
#Friendica #xmpp #chat #solved @Friendica Support @Michael Vogel authentication friendica jabber password
Strange, now it works. I restarted ejabberd + updated my develop to latest upstream commits.
Later posts Earlier posts