diff --git a/v3/feed.rss b/v3/feed.rss index 2f517c1..056a401 100644 --- a/v3/feed.rss +++ b/v3/feed.rss @@ -2,10 +2,42 @@ GNU social V3https://gnusocial.rocks/v3/index.html Development blog where we announce our progress.en -Mon, 13 Sep 2021 17:36:14 +0100 -Mon, 13 Sep 2021 17:36:14 +0100 +Wed, 03 Nov 2021 01:48:53 +0000 +Wed, 03 Nov 2021 01:48:53 +0000 +Milestone: ActivityStreams 2.0 and WebFinger +The primary use of GNU social is to access the free network, be it ActivityWeb (ActivityPub) or Fediverse (OStatus).

+ +

Contrary to the original plan, we have merged The Free Network Module, WebFinger and LRDD into a single component named FreeNetwork. Likewise, ActivityPub and ActivityStreams 2.0 was kept the same plugin instead of separated.

+ +

Understanding the organisation chosen

+ +

The FreeNetwork component adds WebFinger (RFC7033) lookup and implements Link-based Resource Descriptor Discovery (LRDD) based on RFC6415, Web Host Metadata. It takes and produces both Extensible Resource Descriptor (XRD) and JSON (JavaSript Object Notation). Furthermore, and different from v2, every federation protocol will use the same distribution queue maintained by this component instead of holding its own.

+ +

We originally intended to have data modelling plugins that would extend the GS's "language". We then understood that it added more complexity than we wanted without any considerable advantage because we cannot dissociate data reception handling of the protocol itself.

+ +

Situation Report

+ +

ActivityPub already translates between activity and entity and allows plugins to extend it (thus serving a similar purpose to data modelling and representation plugins).

+ +

GNU social v3 now supports mentions, which is a process that starts in the Posting component. The processing of local mentions naturally finds its entire handling here.

+ +

For remote ActivityPub mentions, ActivityPub handles it aided by the FreeNetwork component).

+ +

Next steps

+ +

We still have to port OStatus (and ActivityStreams 1.0) and implement the distribution by FreeNetwork, although the base work is done. Regarding ActivityPub, although some of it already works, expanding the existing plugins to supplement ActivityPub, and full validation isn't ready yet. We will most likely finish the implementation of the whole federation stack in the next week.

+ + + +]]>
https://gnusocial.rocks/v3/milestone-activitystreams-20-and-webfinger.html +https://gnusocial.rocks/v3/./milestone-activitystreams-20-and-webfinger.html +GNU social development team +Wed, 03 Nov 2021 01:48:35 +0000
+ Updates: Interface and accessibility + ]]>https://gnusocial.rocks/v3/updates-v3-blog.html https://gnusocial.rocks/v3/./updates-v3-blog.html @@ -135,6 +168,7 @@ attempts to generate a page preview from open graph and oembed. I.e., acts when + ]]>https://gnusocial.rocks/v3/updates-implement-storeremotemedia-for-v3-and-port-embed.html https://gnusocial.rocks/v3/./updates-implement-storeremotemedia-for-v3-and-port-embed.html @@ -197,6 +231,7 @@ any remote URL being shared in a note. + ]]>https://gnusocial.rocks/v3/updates-improve-the-attachments-system.html https://gnusocial.rocks/v3/./updates-improve-the-attachments-system.html @@ -288,6 +323,7 @@ Updates: Finish the Avatar component + @@ -347,6 +383,7 @@ is properly tested, we have the + ]]>https://gnusocial.rocks/v3/milestone-documentation-and-tests-infrastructure.html https://gnusocial.rocks/v3/./milestone-documentation-and-tests-infrastructure.html @@ -408,6 +445,7 @@ The key ones are:

+ ]]>https://gnusocial.rocks/v3/milestone-port-media-handling-from-v2.html https://gnusocial.rocks/v3/./milestone-port-media-handling-from-v2.html diff --git a/v3/index.html b/v3/index.html index 094daf1..fa6391b 100644 --- a/v3/index.html +++ b/v3/index.html @@ -43,6 +43,10 @@ Our objective is to further differentiate GNU social from the alternative softwa

Blog

+

November 2021

+

September 2021

+
+ +

+Milestone: ActivityStreams 2.0 and WebFinger +

+ +
November 03, 2021 — +GNU social development team +
+ + +

The primary use of GNU social is to access the free network, be it ActivityWeb (ActivityPub) or Fediverse (OStatus).

+ +

Contrary to the original plan, we have merged The Free Network Module, WebFinger and LRDD into a single component named FreeNetwork. Likewise, ActivityPub and ActivityStreams 2.0 was kept the same plugin instead of separated.

+ +

Understanding the organisation chosen

+ +

The FreeNetwork component adds WebFinger (RFC7033) lookup and implements Link-based Resource Descriptor Discovery (LRDD) based on RFC6415, Web Host Metadata. It takes and produces both Extensible Resource Descriptor (XRD) and JSON (JavaSript Object Notation). Furthermore, and different from v2, every federation protocol will use the same distribution queue maintained by this component instead of holding its own.

+ +

We originally intended to have data modelling plugins that would extend the GS's "language". We then understood that it added more complexity than we wanted without any considerable advantage because we cannot dissociate data reception handling of the protocol itself.

+ +

Situation Report

+ +

ActivityPub already translates between activity and entity and allows plugins to extend it (thus serving a similar purpose to data modelling and representation plugins).

+ +

GNU social v3 now supports mentions, which is a process that starts in the Posting component. The processing of local mentions naturally finds its entire handling here.

+ +

For remote ActivityPub mentions, ActivityPub handles it aided by the FreeNetwork component).

+ +

Next steps

+ +

We still have to port OStatus (and ActivityStreams 1.0) and implement the distribution by FreeNetwork, although the base work is done. Regarding ActivityPub, although some of it already works, expanding the existing plugins to supplement ActivityPub, and full validation isn't ready yet. We will most likely finish the implementation of the whole federation stack in the next week.

+ + + + +
+
+ diff --git a/v3/milestone-activitystreams-20-and-webfinger.md b/v3/milestone-activitystreams-20-and-webfinger.md new file mode 100644 index 0000000..36ce72c --- /dev/null +++ b/v3/milestone-activitystreams-20-and-webfinger.md @@ -0,0 +1,24 @@ +Milestone: ActivityStreams 2.0 and WebFinger + +The primary use of GNU social is to access the [free network](https://blog.diogo.site/what-is-the-fediverse), be it ActivityWeb (ActivityPub) or Fediverse (OStatus). + +Contrary to the original plan, we have merged [The Free Network Module](https://code.undefinedhackers.net/GNUsocial/gnu-social/src/branch/nightly/modules/TheFreeNetwork), [WebFinger](https://code.undefinedhackers.net/GNUsocial/gnu-social/src/branch/nightly/plugins/WebFinger) and [LRDD](https://code.undefinedhackers.net/GNUsocial/gnu-social/src/branch/nightly/plugins/LRDD) into a single component named [FreeNetwork](https://code.undefinedhackers.net/GNUsocial/gnu-social/src/branch/v3/components/FreeNetwork). Likewise, ActivityPub and ActivityStreams 2.0 was kept the same plugin instead of separated. + +## Understanding the organisation chosen + +The FreeNetwork component adds WebFinger (RFC7033) lookup and implements Link-based Resource Descriptor Discovery (LRDD) based on RFC6415, Web Host Metadata. It takes and produces both Extensible Resource Descriptor (XRD) and JSON (JavaSript Object Notation). Furthermore, and different from v2, every federation protocol will use the same distribution queue maintained by this component instead of holding its own. + +We originally intended to have data modelling plugins that would extend the GS's "language". We then understood that it added more complexity than we wanted without any considerable advantage because we cannot dissociate data reception handling of the protocol itself. + +## Situation Report + +[ActivityPub](https://code.undefinedhackers.net/GNUsocial/gnu-social/src/branch/v3/plugins/ActivityPub) already translates between activity and entity and allows plugins to extend it (thus serving a similar purpose to data modelling and representation plugins). + +GNU social v3 now supports [mentions](https://code.undefinedhackers.net/GNUsocial/gnu-social/src/branch/v3/src/Util/Formatting.php#L292), which is a process that starts in the [Posting component](https://code.undefinedhackers.net/GNUsocial/gnu-social/src/branch/v3/components/Posting/Posting.php#L197). The processing of local mentions naturally finds its entire handling here. + +For remote ActivityPub mentions, [ActivityPub handles it aided by the FreeNetwork component]((https://code.undefinedhackers.net/GNUsocial/gnu-social/src/branch/v3/plugins/ActivityPub/Entity/ActivitypubActor.php#L179)). + +## Next steps + +We still have to port OStatus (and ActivityStreams 1.0) and implement the distribution by FreeNetwork, although the base work is done. Regarding ActivityPub, although some of it already works, expanding the existing plugins to supplement ActivityPub, and full validation isn't ready yet. We will most likely finish the implementation of the whole federation stack in the next week. + diff --git a/v3/milestone-documentation-and-tests-infrastructure.html b/v3/milestone-documentation-and-tests-infrastructure.html index 9f6b83b..165f2ec 100644 --- a/v3/milestone-documentation-and-tests-infrastructure.html +++ b/v3/milestone-documentation-and-tests-infrastructure.html @@ -90,6 +90,7 @@ is properly tested, we have the + diff --git a/v3/milestone-port-media-handling-from-v2.html b/v3/milestone-port-media-handling-from-v2.html index 72384cd..ba99cc6 100644 --- a/v3/milestone-port-media-handling-from-v2.html +++ b/v3/milestone-port-media-handling-from-v2.html @@ -94,6 +94,7 @@ The key ones are:

+ diff --git a/v3/updates-finish-the-avatar-component.html b/v3/updates-finish-the-avatar-component.html index 5f5d9f7..bb0f062 100644 --- a/v3/updates-finish-the-avatar-component.html +++ b/v3/updates-finish-the-avatar-component.html @@ -124,6 +124,7 @@ GNU social development team + diff --git a/v3/updates-implement-storeremotemedia-for-v3-and-port-embed.html b/v3/updates-implement-storeremotemedia-for-v3-and-port-embed.html index ded1a33..92ee53b 100644 --- a/v3/updates-implement-storeremotemedia-for-v3-and-port-embed.html +++ b/v3/updates-implement-storeremotemedia-for-v3-and-port-embed.html @@ -62,6 +62,7 @@ attempts to generate a page preview from open graph and oembed. I.e., acts when + diff --git a/v3/updates-improve-the-attachments-system.html b/v3/updates-improve-the-attachments-system.html index d04518e..8b2b0ba 100644 --- a/v3/updates-improve-the-attachments-system.html +++ b/v3/updates-improve-the-attachments-system.html @@ -95,6 +95,7 @@ any remote URL being shared in a note. + diff --git a/v3/updates-interface-and-accessibility.html b/v3/updates-interface-and-accessibility.html index fb32934..d3d0129 100644 --- a/v3/updates-interface-and-accessibility.html +++ b/v3/updates-interface-and-accessibility.html @@ -127,6 +127,7 @@ markup, we hope to achieve an accessible, fast and polished structure by which a + diff --git a/v3/updates-v3-blog.html b/v3/updates-v3-blog.html index ba82f23..819f036 100644 --- a/v3/updates-v3-blog.html +++ b/v3/updates-v3-blog.html @@ -70,6 +70,7 @@ forget to subscribe!

+