upstream V3 development https://www.gnusocial.rocks/v3
Go to file
tenma 83f179989e [AP] Handle unlisted/followers-only notices
Note that this commit isn't intended to add support for sending such notes
in GS. Instead, we handle the reception, storage and direct reply to this
type of notices, in AP.

ActivityPubPlugin:
- Subscribe the event StartNoticeSave to hack answering non-public notes

Activitypub_create:
- Add 'directMessage' attribute to the Create activity, defaulting to false for now
- Update validation method: validate 'directMessage' and add debug

Activitypub_notice:
- Handle incoming unlisted/followers-only notes
- Add support for unlisted-replies
- Add method to verify private (direct) notices

inbox_handler:
- Add handler for CREATE Note
- Prepare logic for private-messaging
- Overall refactor: Class members were continuously being passed as function arguments without need

SharePlugin:
- Stop showing the announce button in non public posts
2021-07-16 19:44:34 +01:00
actions [OverwriteThemeBackground] This new plugin will let the admin set a custom background theme independent 2021-07-16 19:44:34 +01:00
classes [MODULES] Allow to upload third party plugins 2021-07-16 19:44:34 +01:00
db Set default value of datetime columns to CURRENT_TIMESTAMP 2019-04-16 00:43:17 +01:00
doc-src fix a link of doc/twitterapi 2017-05-30 07:23:36 +09:00
DOCUMENTATION [DOCUMENTATION][DEVELOPERS][PLUGINS] Some updates to Plugins doc 2021-07-16 19:44:34 +01:00
extlib [PEAR][DB] Import some new commits 2019-08-08 02:44:14 +01:00
lib [MODULES] Allow to delete third party plugins 2021-07-16 19:44:34 +01:00
locale [OverwriteThemeBackground] This new plugin will let the admin set a custom background theme independent 2021-07-16 19:44:34 +01:00
mail-src better indenting in invite email 2011-04-18 13:37:54 -04:00
modules [AP] Handle unlisted/followers-only notices 2021-07-16 19:44:34 +01:00
plugins [AP] Handle unlisted/followers-only notices 2021-07-16 19:44:34 +01:00
public [DOCUMENTATION][DEVELOPERS][PLUGINS] Some updates to Plugins doc 2021-07-16 19:44:34 +01:00
scripts [OverwriteThemeBackground] This new plugin will let the admin set a custom background theme independent 2021-07-16 19:44:34 +01:00
tests [CORE] Plugin API now extends a new Module API 2021-07-16 19:44:33 +01:00
vendor [COMPOSER] Added predis/predis and updated packages 2021-07-16 19:44:33 +01:00
.gitignore [CORE][COMPOSER] Move extlib packages with immediate composer correspondent to composer dependencies 2019-08-03 17:47:24 +01:00
CHANGELOG.md [DOCUMENTATION] Add release notes 2021-07-16 19:44:33 +01:00
CODE_OF_CONDUCT.md [DOCUMENTATION] Minor corrections 2019-06-12 12:55:42 +01:00
composer.json [GNUsocialProfileExtensions] Fixed plugin 2021-07-16 19:44:34 +01:00
composer.lock [COMPOSER] Added predis/predis and updated packages 2021-07-16 19:44:33 +01:00
CONTRIBUTING.md [DOCUMENTATION] Add versioning information 2019-08-08 02:44:07 +01:00
COPYING license block for source code 2008-05-14 15:26:48 -04:00
CREDITS.md [DOCUMENTATION] Minor corrections 2019-06-12 12:55:42 +01:00
INSTALL.md [DOCUMENTATION] Add release notes 2021-07-16 19:44:33 +01:00
Makefile [CORE] Fixed some small issues with PEAR 2019-08-03 17:47:28 +01:00
phpunit.xml [CORE] Make tests great gain 2019-08-03 17:47:27 +01:00
README.md [CORE][COMPOSER] Move extlib packages with immediate composer correspondent to composer dependencies 2019-08-03 17:47:24 +01:00
RELEASE_NOTES.md [DOCUMENTATION] Add release notes 2021-07-16 19:44:33 +01:00
TODO.md [DOCUMENTATION] Add release notes 2021-07-16 19:44:33 +01:00

GNU social 2.0.x

(c) 2010-2019 Free Software Foundation, Inc

This is the README file for GNU social, the free software social networking platform. It includes general information about the software and the project.

The file INSTALL.md has useful instructions on how to install this software.

System administrators may find the DOCUMENTATION/SYSTEM_ADMINISTRATORS directory useful, namely:

  • upgrade_from: upgrading from different software
  • CONFIGURE.md: configuration options in gruesome detail.
  • PLUGINS.md: how to install and configure plugins.

Developers may find the DOCUMENTATION/DEVELOPERS directory useful.

About

GNU social is a free social networking platform. It helps people in a community, company or group to exchange short status updates, do polls, announce events, or other social activities (and you can add more!). Users can choose which people to "follow" and receive only their friends' or colleagues' status messages. It provides a similar service to proprietary social network sites, but is much more awesome.

With a little work, status messages can be sent to mobile phones, instant messenger programs (using XMPP), and specially-designed desktop clients that support the Twitter API.

GNU social supports open standards (such as OStatus https://www.w3.org/community/ostatus/) that lets users in different networks follow each other. It enables a distributed social network spread all across the Web.

GNU social was originally developed as "StatusNet" by StatusNet, Inc. with Evan Prodromou as lead developer.

It is shared with you in hope that you too make an service available to your users. To learn more, please see the Open Software Service Definition 1.1: http://www.opendefinition.org/ossd

License

This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more details.

You should have received a copy of the GNU Affero General Public License along with this program, in the file "COPYING". If not, see http://www.gnu.org/licenses/.

IMPORTANT NOTE: The GNU Affero General Public License (AGPL) has
*different requirements* from the "regular" GPL. In particular, if
you make modifications to the GNU social source code on your server,
you *MUST MAKE AVAILABLE* the modified version of the source code
to your users under the same license. This is a legal requirement
of using the software, and if you do not wish to share your
modifications, *YOU MAY NOT INSTALL GNU SOCIAL*.

Documentation in the /doc-src/ directory is available under the Creative Commons Attribution 3.0 Unported license, with attribution to "GNU social". See http://creativecommons.org/licenses/by/3.0/ for details.

CSS and images in the /theme/ directory are available under the Creative Commons Attribution 3.0 Unported license, with attribution to "GNU social". See http://creativecommons.org/licenses/by/3.0/ for details.

Our understanding and intention is that if you add your own theme that uses only CSS and images, those files are not subject to the copyleft requirements of the Affero General Public License 3.0. See http://wordpress.org/news/2009/07/themes-are-gpl-too/. This is not legal advice; consult your lawyer.

Additional library software has been made available in the 'extlib' directory. All of it is Free Software and can be distributed under liberal terms, but those terms may differ in detail from the AGPL's particulars. See each package's license file in the extlib directory for additional terms.

Refer to COPYING.md for full text of the software license..

Troubleshooting

The primary output for GNU social is syslog, unless you configured a separate logfile. This is probably the first place to look if you're getting weird behaviour from GNU social.

If you're tracking the unstable version of GNU social in the git repository (see below), and you get a compilation error ("unexpected T_STRING") in the browser, check to see that you don't have any conflicts in your code.

Unstable version

If you're adventurous or impatient, you may want to install the development version of GNU social. To get it, use the git version control tool http://git-scm.com/ like so:

git clone git@notabug.org:diogo/gnu-social.git

In the current phase of development it is probably recommended to use git as a means to stay up to date with the source code. You can choose between these branches:

  • 1.20.x "oldstable", few updates, well tested coded
  • master "stable", usually working well
  • nightly "testing", most updates, not always working as expected

To keep it up-to-date, use git pull. Watch for conflicts!

As in any upgrade, do not forget to run /scripts/upgrade.php.

Further information

There are several ways to get more information about GNU social.

Credits

An incomplete list of developers who've worked on GNU social, or its predecessors StatusNet and Free Social has been made available in CREDITS.md.

Current team

  • Matt Lee
  • Mikael Nordfeldth
  • Diogo Cordeiro
  • Bruno Casteleiro
  • Miguel Dantas
  • Alexei Sorokin