A small tool to view real-world ActivityPub objects as JSON! Enter a URL
or username from Mastodon or a similar service below, and we'll send a
request with
the right
Accept
header
to the server to view the underlying object.
{
"@context": [
"https://www.w3.org/ns/activitystreams",
{
"ostatus": "http://ostatus.org#",
"atomUri": "ostatus:atomUri",
"inReplyToAtomUri": "ostatus:inReplyToAtomUri",
"conversation": "ostatus:conversation",
"sensitive": "as:sensitive",
"toot": "http://joinmastodon.org/ns#",
"votersCount": "toot:votersCount",
"Hashtag": "as:Hashtag"
}
],
"id": "https://fosstodon.org/users/robinm/outbox?max_id=113475888927722737&page=true",
"type": "OrderedCollectionPage",
"next": "https://fosstodon.org/users/robinm/outbox?max_id=113413619717907846&page=true",
"prev": "https://fosstodon.org/users/robinm/outbox?min_id=113475663430920126&page=true",
"partOf": "https://fosstodon.org/users/robinm/outbox",
"orderedItems": [
{
"id": "https://fosstodon.org/users/robinm/statuses/113475663430920126/activity",
"type": "Create",
"actor": "https://fosstodon.org/users/robinm",
"published": "2024-11-13T12:33:32Z",
"to": [
"https://www.w3.org/ns/activitystreams#Public"
],
"cc": [
"https://fosstodon.org/users/robinm/followers",
"https://piaille.fr/users/NuclearSquid"
],
"object": {
"id": "https://fosstodon.org/users/robinm/statuses/113475663430920126",
"type": "Note",
"summary": null,
"inReplyTo": "https://piaille.fr/users/NuclearSquid/statuses/113475509126251066",
"published": "2024-11-13T12:33:32Z",
"url": "https://fosstodon.org/@robinm/113475663430920126",
"attributedTo": "https://fosstodon.org/users/robinm",
"to": [
"https://www.w3.org/ns/activitystreams#Public"
],
"cc": [
"https://fosstodon.org/users/robinm/followers",
"https://piaille.fr/users/NuclearSquid"
],
"sensitive": false,
"atomUri": "https://fosstodon.org/users/robinm/statuses/113475663430920126",
"inReplyToAtomUri": "https://piaille.fr/users/NuclearSquid/statuses/113475509126251066",
"conversation": "tag:fosstodon.org,2024-11-13:objectId=260429381:objectType=Conversation",
"content": "<p><span class=\"h-card\" translate=\"no\"><a href=\"https://piaille.fr/@NuclearSquid\" class=\"u-url mention\">@<span>NuclearSquid</span></a></span> Pas grave, mais hésite pas à faire passer le mot</p>",
"contentMap": {
"fr": "<p><span class=\"h-card\" translate=\"no\"><a href=\"https://piaille.fr/@NuclearSquid\" class=\"u-url mention\">@<span>NuclearSquid</span></a></span> Pas grave, mais hésite pas à faire passer le mot</p>"
},
"attachment": [],
"tag": [
{
"type": "Mention",
"href": "https://piaille.fr/users/NuclearSquid",
"name": "@NuclearSquid@piaille.fr"
}
],
"replies": {
"id": "https://fosstodon.org/users/robinm/statuses/113475663430920126/replies",
"type": "Collection",
"first": {
"type": "CollectionPage",
"next": "https://fosstodon.org/users/robinm/statuses/113475663430920126/replies?only_other_accounts=true&page=true",
"partOf": "https://fosstodon.org/users/robinm/statuses/113475663430920126/replies",
"items": []
}
},
"likes": {
"id": "https://fosstodon.org/users/robinm/statuses/113475663430920126/likes",
"type": "Collection",
"totalItems": 0
},
"shares": {
"id": "https://fosstodon.org/users/robinm/statuses/113475663430920126/shares",
"type": "Collection",
"totalItems": 0
}
}
},
{
"id": "https://fosstodon.org/users/robinm/statuses/113475383279300674/activity",
"type": "Create",
"actor": "https://fosstodon.org/users/robinm",
"published": "2024-11-13T11:22:17Z",
"to": [
"https://www.w3.org/ns/activitystreams#Public"
],
"cc": [
"https://fosstodon.org/users/robinm/followers",
"https://social.tchncs.de/users/TheyCallMeHacked",
"https://piaille.fr/users/NuclearSquid",
"https://mastodon.social/users/fabi1cazenave",
"https://mamot.fr/users/PacoVelobs"
],
"object": {
"id": "https://fosstodon.org/users/robinm/statuses/113475383279300674",
"type": "Note",
"summary": null,
"inReplyTo": null,
"published": "2024-11-13T11:22:17Z",
"url": "https://fosstodon.org/@robinm/113475383279300674",
"attributedTo": "https://fosstodon.org/users/robinm",
"to": [
"https://www.w3.org/ns/activitystreams#Public"
],
"cc": [
"https://fosstodon.org/users/robinm/followers",
"https://social.tchncs.de/users/TheyCallMeHacked",
"https://piaille.fr/users/NuclearSquid",
"https://mastodon.social/users/fabi1cazenave",
"https://mamot.fr/users/PacoVelobs"
],
"sensitive": false,
"atomUri": "https://fosstodon.org/users/robinm/statuses/113475383279300674",
"inReplyToAtomUri": null,
"conversation": "tag:fosstodon.org,2024-11-13:objectId=260429381:objectType=Conversation",
"content": "<p>Qui est-ce qui viens au prochain tupperrust demain soir?</p><p><a href=\"https://www.meetup.com/tupperlibre/events/303687040/\" target=\"_blank\" rel=\"nofollow noopener noreferrer\" translate=\"no\"><span class=\"invisible\">https://www.</span><span class=\"ellipsis\">meetup.com/tupperlibre/events/</span><span class=\"invisible\">303687040/</span></a></p><p>Le repouet fait briller les carapaces de crabes !</p><p><a href=\"https://fosstodon.org/tags/rust\" class=\"mention hashtag\" rel=\"tag\">#<span>rust</span></a> <a href=\"https://fosstodon.org/tags/rustlang\" class=\"mention hashtag\" rel=\"tag\">#<span>rustlang</span></a> <a href=\"https://fosstodon.org/tags/grenoble\" class=\"mention hashtag\" rel=\"tag\">#<span>grenoble</span></a> <a href=\"https://fosstodon.org/tags/tupperrust\" class=\"mention hashtag\" rel=\"tag\">#<span>tupperrust</span></a> </p><p><span class=\"h-card\" translate=\"no\"><a href=\"https://social.tchncs.de/@TheyCallMeHacked\" class=\"u-url mention\">@<span>TheyCallMeHacked</span></a></span> <span class=\"h-card\" translate=\"no\"><a href=\"https://piaille.fr/@NuclearSquid\" class=\"u-url mention\">@<span>NuclearSquid</span></a></span> <span class=\"h-card\" translate=\"no\"><a href=\"https://mastodon.social/@fabi1cazenave\" class=\"u-url mention\">@<span>fabi1cazenave</span></a></span> <span class=\"h-card\" translate=\"no\"><a href=\"https://mamot.fr/@PacoVelobs\" class=\"u-url mention\">@<span>PacoVelobs</span></a></span></p>",
"contentMap": {
"fr": "<p>Qui est-ce qui viens au prochain tupperrust demain soir?</p><p><a href=\"https://www.meetup.com/tupperlibre/events/303687040/\" target=\"_blank\" rel=\"nofollow noopener noreferrer\" translate=\"no\"><span class=\"invisible\">https://www.</span><span class=\"ellipsis\">meetup.com/tupperlibre/events/</span><span class=\"invisible\">303687040/</span></a></p><p>Le repouet fait briller les carapaces de crabes !</p><p><a href=\"https://fosstodon.org/tags/rust\" class=\"mention hashtag\" rel=\"tag\">#<span>rust</span></a> <a href=\"https://fosstodon.org/tags/rustlang\" class=\"mention hashtag\" rel=\"tag\">#<span>rustlang</span></a> <a href=\"https://fosstodon.org/tags/grenoble\" class=\"mention hashtag\" rel=\"tag\">#<span>grenoble</span></a> <a href=\"https://fosstodon.org/tags/tupperrust\" class=\"mention hashtag\" rel=\"tag\">#<span>tupperrust</span></a> </p><p><span class=\"h-card\" translate=\"no\"><a href=\"https://social.tchncs.de/@TheyCallMeHacked\" class=\"u-url mention\">@<span>TheyCallMeHacked</span></a></span> <span class=\"h-card\" translate=\"no\"><a href=\"https://piaille.fr/@NuclearSquid\" class=\"u-url mention\">@<span>NuclearSquid</span></a></span> <span class=\"h-card\" translate=\"no\"><a href=\"https://mastodon.social/@fabi1cazenave\" class=\"u-url mention\">@<span>fabi1cazenave</span></a></span> <span class=\"h-card\" translate=\"no\"><a href=\"https://mamot.fr/@PacoVelobs\" class=\"u-url mention\">@<span>PacoVelobs</span></a></span></p>"
},
"attachment": [],
"tag": [
{
"type": "Mention",
"href": "https://social.tchncs.de/users/TheyCallMeHacked",
"name": "@TheyCallMeHacked@social.tchncs.de"
},
{
"type": "Mention",
"href": "https://piaille.fr/users/NuclearSquid",
"name": "@NuclearSquid@piaille.fr"
},
{
"type": "Mention",
"href": "https://mastodon.social/users/fabi1cazenave",
"name": "@fabi1cazenave@mastodon.social"
},
{
"type": "Mention",
"href": "https://mamot.fr/users/PacoVelobs",
"name": "@PacoVelobs@mamot.fr"
},
{
"type": "Hashtag",
"href": "https://fosstodon.org/tags/rust",
"name": "#rust"
},
{
"type": "Hashtag",
"href": "https://fosstodon.org/tags/rustlang",
"name": "#rustlang"
},
{
"type": "Hashtag",
"href": "https://fosstodon.org/tags/grenoble",
"name": "#grenoble"
},
{
"type": "Hashtag",
"href": "https://fosstodon.org/tags/tupperrust",
"name": "#tupperrust"
}
],
"replies": {
"id": "https://fosstodon.org/users/robinm/statuses/113475383279300674/replies",
"type": "Collection",
"first": {
"type": "CollectionPage",
"next": "https://fosstodon.org/users/robinm/statuses/113475383279300674/replies?only_other_accounts=true&page=true",
"partOf": "https://fosstodon.org/users/robinm/statuses/113475383279300674/replies",
"items": []
}
},
"likes": {
"id": "https://fosstodon.org/users/robinm/statuses/113475383279300674/likes",
"type": "Collection",
"totalItems": 0
},
"shares": {
"id": "https://fosstodon.org/users/robinm/statuses/113475383279300674/shares",
"type": "Collection",
"totalItems": 7
}
}
},
{
"id": "https://fosstodon.org/users/robinm/statuses/113474713921846188/activity",
"type": "Create",
"actor": "https://fosstodon.org/users/robinm",
"published": "2024-11-13T08:32:03Z",
"to": [
"https://fosstodon.org/users/robinm/followers"
],
"cc": [
"https://www.w3.org/ns/activitystreams#Public",
"https://ruhr.social/users/chfkch",
"https://zirk.us/users/Mayobrot"
],
"object": {
"id": "https://fosstodon.org/users/robinm/statuses/113474713921846188",
"type": "Note",
"summary": null,
"inReplyTo": "https://ruhr.social/users/chfkch/statuses/113473921034781009",
"published": "2024-11-13T08:32:03Z",
"url": "https://fosstodon.org/@robinm/113474713921846188",
"attributedTo": "https://fosstodon.org/users/robinm",
"to": [
"https://fosstodon.org/users/robinm/followers"
],
"cc": [
"https://www.w3.org/ns/activitystreams#Public",
"https://ruhr.social/users/chfkch",
"https://zirk.us/users/Mayobrot"
],
"sensitive": false,
"atomUri": "https://fosstodon.org/users/robinm/statuses/113474713921846188",
"inReplyToAtomUri": "https://ruhr.social/users/chfkch/statuses/113473921034781009",
"conversation": "tag:zirk.us,2024-11-12:objectId=131754872:objectType=Conversation",
"content": "<p><span class=\"h-card\" translate=\"no\"><a href=\"https://ruhr.social/@chfkch\" class=\"u-url mention\">@<span>chfkch</span></a></span> <span class=\"h-card\" translate=\"no\"><a href=\"https://zirk.us/@Mayobrot\" class=\"u-url mention\">@<span>Mayobrot</span></a></span> Wouldn't git worktree help in your case?</p>",
"contentMap": {
"en": "<p><span class=\"h-card\" translate=\"no\"><a href=\"https://ruhr.social/@chfkch\" class=\"u-url mention\">@<span>chfkch</span></a></span> <span class=\"h-card\" translate=\"no\"><a href=\"https://zirk.us/@Mayobrot\" class=\"u-url mention\">@<span>Mayobrot</span></a></span> Wouldn't git worktree help in your case?</p>"
},
"attachment": [],
"tag": [
{
"type": "Mention",
"href": "https://ruhr.social/users/chfkch",
"name": "@chfkch@ruhr.social"
},
{
"type": "Mention",
"href": "https://zirk.us/users/Mayobrot",
"name": "@Mayobrot@zirk.us"
}
],
"replies": {
"id": "https://fosstodon.org/users/robinm/statuses/113474713921846188/replies",
"type": "Collection",
"first": {
"type": "CollectionPage",
"next": "https://fosstodon.org/users/robinm/statuses/113474713921846188/replies?only_other_accounts=true&page=true",
"partOf": "https://fosstodon.org/users/robinm/statuses/113474713921846188/replies",
"items": []
}
},
"likes": {
"id": "https://fosstodon.org/users/robinm/statuses/113474713921846188/likes",
"type": "Collection",
"totalItems": 0
},
"shares": {
"id": "https://fosstodon.org/users/robinm/statuses/113474713921846188/shares",
"type": "Collection",
"totalItems": 0
}
}
},
{
"id": "https://fosstodon.org/users/robinm/statuses/113442996622090308/activity",
"type": "Create",
"actor": "https://fosstodon.org/users/robinm",
"published": "2024-11-07T18:05:56Z",
"to": [
"https://www.w3.org/ns/activitystreams#Public"
],
"cc": [
"https://fosstodon.org/users/robinm/followers",
"https://mastodon.green/users/hicksy2"
],
"object": {
"id": "https://fosstodon.org/users/robinm/statuses/113442996622090308",
"type": "Note",
"summary": null,
"inReplyTo": "https://mastodon.green/users/hicksy2/statuses/113442092569913932",
"published": "2024-11-07T18:05:56Z",
"url": "https://fosstodon.org/@robinm/113442996622090308",
"attributedTo": "https://fosstodon.org/users/robinm",
"to": [
"https://www.w3.org/ns/activitystreams#Public"
],
"cc": [
"https://fosstodon.org/users/robinm/followers",
"https://mastodon.green/users/hicksy2"
],
"sensitive": false,
"atomUri": "https://fosstodon.org/users/robinm/statuses/113442996622090308",
"inReplyToAtomUri": "https://mastodon.green/users/hicksy2/statuses/113442092569913932",
"conversation": "tag:mastodon.green,2024-11-07:objectId=152098798:objectType=Conversation",
"content": "<p><span class=\"h-card\" translate=\"no\"><a href=\"https://mastodon.green/@hicksy2\" class=\"u-url mention\">@<span>hicksy2</span></a></span> You may also be interested by <a href=\"https://fosstodon.org/tags/sharegoodnewstoo\" class=\"mention hashtag\" rel=\"tag\">#<span>sharegoodnewstoo</span></a></p>",
"contentMap": {
"en": "<p><span class=\"h-card\" translate=\"no\"><a href=\"https://mastodon.green/@hicksy2\" class=\"u-url mention\">@<span>hicksy2</span></a></span> You may also be interested by <a href=\"https://fosstodon.org/tags/sharegoodnewstoo\" class=\"mention hashtag\" rel=\"tag\">#<span>sharegoodnewstoo</span></a></p>"
},
"attachment": [],
"tag": [
{
"type": "Mention",
"href": "https://mastodon.green/users/hicksy2",
"name": "@hicksy2@mastodon.green"
},
{
"type": "Hashtag",
"href": "https://fosstodon.org/tags/sharegoodnewstoo",
"name": "#sharegoodnewstoo"
}
],
"replies": {
"id": "https://fosstodon.org/users/robinm/statuses/113442996622090308/replies",
"type": "Collection",
"first": {
"type": "CollectionPage",
"next": "https://fosstodon.org/users/robinm/statuses/113442996622090308/replies?only_other_accounts=true&page=true",
"partOf": "https://fosstodon.org/users/robinm/statuses/113442996622090308/replies",
"items": []
}
},
"likes": {
"id": "https://fosstodon.org/users/robinm/statuses/113442996622090308/likes",
"type": "Collection",
"totalItems": 0
},
"shares": {
"id": "https://fosstodon.org/users/robinm/statuses/113442996622090308/shares",
"type": "Collection",
"totalItems": 0
}
}
},
{
"id": "https://fosstodon.org/users/robinm/statuses/113436813205136213/activity",
"type": "Create",
"actor": "https://fosstodon.org/users/robinm",
"published": "2024-11-06T15:53:24Z",
"to": [
"https://www.w3.org/ns/activitystreams#Public"
],
"cc": [
"https://fosstodon.org/users/robinm/followers",
"https://biscuit.town/users/Emi"
],
"object": {
"id": "https://fosstodon.org/users/robinm/statuses/113436813205136213",
"type": "Note",
"summary": null,
"inReplyTo": "https://biscuit.town/users/Emi/statuses/113436804992340538",
"published": "2024-11-06T15:53:24Z",
"url": "https://fosstodon.org/@robinm/113436813205136213",
"attributedTo": "https://fosstodon.org/users/robinm",
"to": [
"https://www.w3.org/ns/activitystreams#Public"
],
"cc": [
"https://fosstodon.org/users/robinm/followers",
"https://biscuit.town/users/Emi"
],
"sensitive": false,
"atomUri": "https://fosstodon.org/users/robinm/statuses/113436813205136213",
"inReplyToAtomUri": "https://biscuit.town/users/Emi/statuses/113436804992340538",
"conversation": "tag:biscuit.town,2024-11-06:objectId=22594365:objectType=Conversation",
"content": "<p><span class=\"h-card\" translate=\"no\"><a href=\"https://biscuit.town/@Emi\" class=\"u-url mention\">@<span>Emi</span></a></span> Sur téléphone en open source, organic map est bien</p>",
"contentMap": {
"fr": "<p><span class=\"h-card\" translate=\"no\"><a href=\"https://biscuit.town/@Emi\" class=\"u-url mention\">@<span>Emi</span></a></span> Sur téléphone en open source, organic map est bien</p>"
},
"attachment": [],
"tag": [
{
"type": "Mention",
"href": "https://biscuit.town/users/Emi",
"name": "@Emi@biscuit.town"
}
],
"replies": {
"id": "https://fosstodon.org/users/robinm/statuses/113436813205136213/replies",
"type": "Collection",
"first": {
"type": "CollectionPage",
"next": "https://fosstodon.org/users/robinm/statuses/113436813205136213/replies?only_other_accounts=true&page=true",
"partOf": "https://fosstodon.org/users/robinm/statuses/113436813205136213/replies",
"items": []
}
},
"likes": {
"id": "https://fosstodon.org/users/robinm/statuses/113436813205136213/likes",
"type": "Collection",
"totalItems": 1
},
"shares": {
"id": "https://fosstodon.org/users/robinm/statuses/113436813205136213/shares",
"type": "Collection",
"totalItems": 0
}
}
},
{
"id": "https://fosstodon.org/users/robinm/statuses/113427155658351324/activity",
"type": "Announce",
"actor": "https://fosstodon.org/users/robinm",
"published": "2024-11-04T22:57:22Z",
"to": [
"https://www.w3.org/ns/activitystreams#Public"
],
"cc": [
"https://mamot.fr/users/eledoster",
"https://fosstodon.org/users/robinm/followers"
],
"object": "https://mamot.fr/users/eledoster/statuses/113426454788832874"
},
{
"id": "https://fosstodon.org/users/robinm/statuses/113427139472558759/activity",
"type": "Create",
"actor": "https://fosstodon.org/users/robinm",
"published": "2024-11-04T22:53:15Z",
"to": [
"https://www.w3.org/ns/activitystreams#Public"
],
"cc": [
"https://fosstodon.org/users/robinm/followers",
"https://mastodon.social/users/bagder"
],
"object": {
"id": "https://fosstodon.org/users/robinm/statuses/113427139472558759",
"type": "Note",
"summary": null,
"inReplyTo": "https://mastodon.social/users/bagder/statuses/113427015433858956",
"published": "2024-11-04T22:53:15Z",
"url": "https://fosstodon.org/@robinm/113427139472558759",
"attributedTo": "https://fosstodon.org/users/robinm",
"to": [
"https://www.w3.org/ns/activitystreams#Public"
],
"cc": [
"https://fosstodon.org/users/robinm/followers",
"https://mastodon.social/users/bagder"
],
"sensitive": false,
"atomUri": "https://fosstodon.org/users/robinm/statuses/113427139472558759",
"inReplyToAtomUri": "https://mastodon.social/users/bagder/statuses/113427015433858956",
"conversation": "tag:mastodon.social,2024-11-04:objectId=839697789:objectType=Conversation",
"content": "<p><span class=\"h-card\" translate=\"no\"><a href=\"https://mastodon.social/@bagder\" class=\"u-url mention\">@<span>bagder</span></a></span> That's just so awesome!</p>",
"contentMap": {
"en": "<p><span class=\"h-card\" translate=\"no\"><a href=\"https://mastodon.social/@bagder\" class=\"u-url mention\">@<span>bagder</span></a></span> That's just so awesome!</p>"
},
"attachment": [],
"tag": [
{
"type": "Mention",
"href": "https://mastodon.social/users/bagder",
"name": "@bagder@mastodon.social"
}
],
"replies": {
"id": "https://fosstodon.org/users/robinm/statuses/113427139472558759/replies",
"type": "Collection",
"first": {
"type": "CollectionPage",
"next": "https://fosstodon.org/users/robinm/statuses/113427139472558759/replies?only_other_accounts=true&page=true",
"partOf": "https://fosstodon.org/users/robinm/statuses/113427139472558759/replies",
"items": []
}
},
"likes": {
"id": "https://fosstodon.org/users/robinm/statuses/113427139472558759/likes",
"type": "Collection",
"totalItems": 1
},
"shares": {
"id": "https://fosstodon.org/users/robinm/statuses/113427139472558759/shares",
"type": "Collection",
"totalItems": 0
}
}
},
{
"id": "https://fosstodon.org/users/robinm/statuses/113427138577582695/activity",
"type": "Announce",
"actor": "https://fosstodon.org/users/robinm",
"published": "2024-11-04T22:53:01Z",
"to": [
"https://www.w3.org/ns/activitystreams#Public"
],
"cc": [
"https://mastodon.social/users/bagder",
"https://fosstodon.org/users/robinm/followers"
],
"object": "https://mastodon.social/users/bagder/statuses/113427015433858956"
},
{
"id": "https://fosstodon.org/users/robinm/statuses/113423808459275648/activity",
"type": "Create",
"actor": "https://fosstodon.org/users/robinm",
"published": "2024-11-04T08:46:07Z",
"to": [
"https://www.w3.org/ns/activitystreams#Public"
],
"cc": [
"https://fosstodon.org/users/robinm/followers",
"https://fediscience.org/users/franz"
],
"object": {
"id": "https://fosstodon.org/users/robinm/statuses/113423808459275648",
"type": "Note",
"summary": null,
"inReplyTo": "https://fediscience.org/users/franz/statuses/113420711340540451",
"published": "2024-11-04T08:46:07Z",
"url": "https://fosstodon.org/@robinm/113423808459275648",
"attributedTo": "https://fosstodon.org/users/robinm",
"to": [
"https://www.w3.org/ns/activitystreams#Public"
],
"cc": [
"https://fosstodon.org/users/robinm/followers",
"https://fediscience.org/users/franz"
],
"sensitive": false,
"atomUri": "https://fosstodon.org/users/robinm/statuses/113423808459275648",
"inReplyToAtomUri": "https://fediscience.org/users/franz/statuses/113420711340540451",
"conversation": "tag:fediscience.org,2024-11-03:objectId=84944939:objectType=Conversation",
"content": "<p><span class=\"h-card\" translate=\"no\"><a href=\"https://fediscience.org/@franz\" class=\"u-url mention\">@<span>franz</span></a></span> If it's only for you, you most certainely don't need CI/CD, and in that case a simple access to a computer that has git + a repo anywhere is already enough.</p><p>Did you know that `mkdir repo dev && cd repo && git init --bare && cd ../dev && git clone ../repo` is enough? The next step is just to put `repo` on a raspberry pi behind ssh. When git cloning, you can use an url (github.com/...), a local path (../repo), an ssh address (192.168.1.10:/home/me/my/git/repo), ...</p>",
"contentMap": {
"en": "<p><span class=\"h-card\" translate=\"no\"><a href=\"https://fediscience.org/@franz\" class=\"u-url mention\">@<span>franz</span></a></span> If it's only for you, you most certainely don't need CI/CD, and in that case a simple access to a computer that has git + a repo anywhere is already enough.</p><p>Did you know that `mkdir repo dev && cd repo && git init --bare && cd ../dev && git clone ../repo` is enough? The next step is just to put `repo` on a raspberry pi behind ssh. When git cloning, you can use an url (github.com/...), a local path (../repo), an ssh address (192.168.1.10:/home/me/my/git/repo), ...</p>"
},
"attachment": [],
"tag": [
{
"type": "Mention",
"href": "https://fediscience.org/users/franz",
"name": "@franz@fediscience.org"
}
],
"replies": {
"id": "https://fosstodon.org/users/robinm/statuses/113423808459275648/replies",
"type": "Collection",
"first": {
"type": "CollectionPage",
"next": "https://fosstodon.org/users/robinm/statuses/113423808459275648/replies?only_other_accounts=true&page=true",
"partOf": "https://fosstodon.org/users/robinm/statuses/113423808459275648/replies",
"items": []
}
},
"likes": {
"id": "https://fosstodon.org/users/robinm/statuses/113423808459275648/likes",
"type": "Collection",
"totalItems": 1
},
"shares": {
"id": "https://fosstodon.org/users/robinm/statuses/113423808459275648/shares",
"type": "Collection",
"totalItems": 0
}
}
},
{
"id": "https://fosstodon.org/users/robinm/statuses/113414495350478046/activity",
"type": "Create",
"actor": "https://fosstodon.org/users/robinm",
"published": "2024-11-02T17:17:41Z",
"to": [
"https://www.w3.org/ns/activitystreams#Public"
],
"cc": [
"https://fosstodon.org/users/robinm/followers",
"https://fosstodon.org/users/rmanos"
],
"object": {
"id": "https://fosstodon.org/users/robinm/statuses/113414495350478046",
"type": "Note",
"summary": null,
"inReplyTo": "https://fosstodon.org/users/rmanos/statuses/113414428731138296",
"published": "2024-11-02T17:17:41Z",
"url": "https://fosstodon.org/@robinm/113414495350478046",
"attributedTo": "https://fosstodon.org/users/robinm",
"to": [
"https://www.w3.org/ns/activitystreams#Public"
],
"cc": [
"https://fosstodon.org/users/robinm/followers",
"https://fosstodon.org/users/rmanos"
],
"sensitive": false,
"atomUri": "https://fosstodon.org/users/robinm/statuses/113414495350478046",
"inReplyToAtomUri": "https://fosstodon.org/users/rmanos/statuses/113414428731138296",
"conversation": "tag:fosstodon.org,2024-11-02:objectId=256787109:objectType=Conversation",
"content": "<p><span class=\"h-card\" translate=\"no\"><a href=\"https://fosstodon.org/@rmanos\" class=\"u-url mention\">@<span>rmanos</span></a></span> Do you really think that adding a call to rand instead of something deterministic that makes the code easy to read and review + a backtrace as described before would change anything to what I send you?</p><p>You said “it’s not possible”, I showed you that it is in Rust, others have showed you in other languages.</p><p>Your challenge was fun, but you must understand that our time is not infinite either. You can complain about valid points, not lipstick.</p>",
"contentMap": {
"en": "<p><span class=\"h-card\" translate=\"no\"><a href=\"https://fosstodon.org/@rmanos\" class=\"u-url mention\">@<span>rmanos</span></a></span> Do you really think that adding a call to rand instead of something deterministic that makes the code easy to read and review + a backtrace as described before would change anything to what I send you?</p><p>You said “it’s not possible”, I showed you that it is in Rust, others have showed you in other languages.</p><p>Your challenge was fun, but you must understand that our time is not infinite either. You can complain about valid points, not lipstick.</p>"
},
"attachment": [],
"tag": [
{
"type": "Mention",
"href": "https://fosstodon.org/users/rmanos",
"name": "@rmanos"
}
],
"replies": {
"id": "https://fosstodon.org/users/robinm/statuses/113414495350478046/replies",
"type": "Collection",
"first": {
"type": "CollectionPage",
"next": "https://fosstodon.org/users/robinm/statuses/113414495350478046/replies?only_other_accounts=true&page=true",
"partOf": "https://fosstodon.org/users/robinm/statuses/113414495350478046/replies",
"items": []
}
},
"likes": {
"id": "https://fosstodon.org/users/robinm/statuses/113414495350478046/likes",
"type": "Collection",
"totalItems": 0
},
"shares": {
"id": "https://fosstodon.org/users/robinm/statuses/113414495350478046/shares",
"type": "Collection",
"totalItems": 0
}
}
},
{
"id": "https://fosstodon.org/users/robinm/statuses/113414360772361917/activity",
"type": "Create",
"actor": "https://fosstodon.org/users/robinm",
"published": "2024-11-02T16:43:27Z",
"to": [
"https://www.w3.org/ns/activitystreams#Public"
],
"cc": [
"https://fosstodon.org/users/robinm/followers",
"https://fosstodon.org/users/rmanos"
],
"object": {
"id": "https://fosstodon.org/users/robinm/statuses/113414360772361917",
"type": "Note",
"summary": null,
"inReplyTo": "https://fosstodon.org/users/robinm/statuses/113414338331955017",
"published": "2024-11-02T16:43:27Z",
"url": "https://fosstodon.org/@robinm/113414360772361917",
"attributedTo": "https://fosstodon.org/users/robinm",
"to": [
"https://www.w3.org/ns/activitystreams#Public"
],
"cc": [
"https://fosstodon.org/users/robinm/followers",
"https://fosstodon.org/users/rmanos"
],
"sensitive": false,
"atomUri": "https://fosstodon.org/users/robinm/statuses/113414360772361917",
"inReplyToAtomUri": "https://fosstodon.org/users/robinm/statuses/113414338331955017",
"conversation": "tag:fosstodon.org,2024-11-02:objectId=256787109:objectType=Conversation",
"content": "<p><span class=\"h-card\" translate=\"no\"><a href=\"https://fosstodon.org/@rmanos\" class=\"u-url mention\">@<span>rmanos</span></a></span> Btw, I did not included the stacktrace, but thiserror (the lib I already uses) does support them, so adding them would be relatively trivial.</p><p><a href=\"https://stackoverflow.com/questions/61744018/how-do-i-print-a-backtrace-without-panicking-using-thiserror\" target=\"_blank\" rel=\"nofollow noopener noreferrer\" translate=\"no\"><span class=\"invisible\">https://</span><span class=\"ellipsis\">stackoverflow.com/questions/61</span><span class=\"invisible\">744018/how-do-i-print-a-backtrace-without-panicking-using-thiserror</span></a></p>",
"contentMap": {
"en": "<p><span class=\"h-card\" translate=\"no\"><a href=\"https://fosstodon.org/@rmanos\" class=\"u-url mention\">@<span>rmanos</span></a></span> Btw, I did not included the stacktrace, but thiserror (the lib I already uses) does support them, so adding them would be relatively trivial.</p><p><a href=\"https://stackoverflow.com/questions/61744018/how-do-i-print-a-backtrace-without-panicking-using-thiserror\" target=\"_blank\" rel=\"nofollow noopener noreferrer\" translate=\"no\"><span class=\"invisible\">https://</span><span class=\"ellipsis\">stackoverflow.com/questions/61</span><span class=\"invisible\">744018/how-do-i-print-a-backtrace-without-panicking-using-thiserror</span></a></p>"
},
"attachment": [],
"tag": [
{
"type": "Mention",
"href": "https://fosstodon.org/users/rmanos",
"name": "@rmanos"
}
],
"replies": {
"id": "https://fosstodon.org/users/robinm/statuses/113414360772361917/replies",
"type": "Collection",
"first": {
"type": "CollectionPage",
"next": "https://fosstodon.org/users/robinm/statuses/113414360772361917/replies?only_other_accounts=true&page=true",
"partOf": "https://fosstodon.org/users/robinm/statuses/113414360772361917/replies",
"items": []
}
},
"likes": {
"id": "https://fosstodon.org/users/robinm/statuses/113414360772361917/likes",
"type": "Collection",
"totalItems": 0
},
"shares": {
"id": "https://fosstodon.org/users/robinm/statuses/113414360772361917/shares",
"type": "Collection",
"totalItems": 0
}
}
},
{
"id": "https://fosstodon.org/users/robinm/statuses/113414338331955017/activity",
"type": "Create",
"actor": "https://fosstodon.org/users/robinm",
"published": "2024-11-02T16:37:45Z",
"to": [
"https://www.w3.org/ns/activitystreams#Public"
],
"cc": [
"https://fosstodon.org/users/robinm/followers",
"https://fosstodon.org/users/rmanos"
],
"object": {
"id": "https://fosstodon.org/users/robinm/statuses/113414338331955017",
"type": "Note",
"summary": null,
"inReplyTo": "https://fosstodon.org/users/rmanos/statuses/113414258351005484",
"published": "2024-11-02T16:37:45Z",
"url": "https://fosstodon.org/@robinm/113414338331955017",
"attributedTo": "https://fosstodon.org/users/robinm",
"to": [
"https://www.w3.org/ns/activitystreams#Public"
],
"cc": [
"https://fosstodon.org/users/robinm/followers",
"https://fosstodon.org/users/rmanos"
],
"sensitive": false,
"atomUri": "https://fosstodon.org/users/robinm/statuses/113414338331955017",
"inReplyToAtomUri": "https://fosstodon.org/users/rmanos/statuses/113414258351005484",
"conversation": "tag:fosstodon.org,2024-11-02:objectId=256787109:objectType=Conversation",
"content": "<p><span class=\"h-card\" translate=\"no\"><a href=\"https://fosstodon.org/@rmanos\" class=\"u-url mention\">@<span>rmanos</span></a></span> Does this Rust version suits your expectation better?</p><p><a href=\"https://play.rust-lang.org/?version=stable&mode=debug&edition=2021&gist=8bd49e7e5ea4041dc6b6abcca369dbc6\" target=\"_blank\" rel=\"nofollow noopener noreferrer\" translate=\"no\"><span class=\"invisible\">https://</span><span class=\"ellipsis\">play.rust-lang.org/?version=st</span><span class=\"invisible\">able&mode=debug&edition=2021&gist=8bd49e7e5ea4041dc6b6abcca369dbc6</span></a></p>",
"contentMap": {
"en": "<p><span class=\"h-card\" translate=\"no\"><a href=\"https://fosstodon.org/@rmanos\" class=\"u-url mention\">@<span>rmanos</span></a></span> Does this Rust version suits your expectation better?</p><p><a href=\"https://play.rust-lang.org/?version=stable&mode=debug&edition=2021&gist=8bd49e7e5ea4041dc6b6abcca369dbc6\" target=\"_blank\" rel=\"nofollow noopener noreferrer\" translate=\"no\"><span class=\"invisible\">https://</span><span class=\"ellipsis\">play.rust-lang.org/?version=st</span><span class=\"invisible\">able&mode=debug&edition=2021&gist=8bd49e7e5ea4041dc6b6abcca369dbc6</span></a></p>"
},
"attachment": [],
"tag": [
{
"type": "Mention",
"href": "https://fosstodon.org/users/rmanos",
"name": "@rmanos"
}
],
"replies": {
"id": "https://fosstodon.org/users/robinm/statuses/113414338331955017/replies",
"type": "Collection",
"first": {
"type": "CollectionPage",
"next": "https://fosstodon.org/users/robinm/statuses/113414338331955017/replies?min_id=113414360772361917&page=true",
"partOf": "https://fosstodon.org/users/robinm/statuses/113414338331955017/replies",
"items": [
"https://fosstodon.org/users/robinm/statuses/113414360772361917"
]
}
},
"likes": {
"id": "https://fosstodon.org/users/robinm/statuses/113414338331955017/likes",
"type": "Collection",
"totalItems": 0
},
"shares": {
"id": "https://fosstodon.org/users/robinm/statuses/113414338331955017/shares",
"type": "Collection",
"totalItems": 0
}
}
},
{
"id": "https://fosstodon.org/users/robinm/statuses/113414255974636257/activity",
"type": "Create",
"actor": "https://fosstodon.org/users/robinm",
"published": "2024-11-02T16:16:48Z",
"to": [
"https://www.w3.org/ns/activitystreams#Public"
],
"cc": [
"https://fosstodon.org/users/robinm/followers",
"https://fosstodon.org/users/rmanos"
],
"object": {
"id": "https://fosstodon.org/users/robinm/statuses/113414255974636257",
"type": "Note",
"summary": null,
"inReplyTo": "https://fosstodon.org/users/rmanos/statuses/113414247622276463",
"published": "2024-11-02T16:16:48Z",
"url": "https://fosstodon.org/@robinm/113414255974636257",
"attributedTo": "https://fosstodon.org/users/robinm",
"to": [
"https://www.w3.org/ns/activitystreams#Public"
],
"cc": [
"https://fosstodon.org/users/robinm/followers",
"https://fosstodon.org/users/rmanos"
],
"sensitive": false,
"atomUri": "https://fosstodon.org/users/robinm/statuses/113414255974636257",
"inReplyToAtomUri": "https://fosstodon.org/users/rmanos/statuses/113414247622276463",
"conversation": "tag:fosstodon.org,2024-11-02:objectId=256787109:objectType=Conversation",
"content": "<p><span class=\"h-card\" translate=\"no\"><a href=\"https://fosstodon.org/@rmanos\" class=\"u-url mention\">@<span>rmanos</span></a></span> No problem :)</p>",
"contentMap": {
"en": "<p><span class=\"h-card\" translate=\"no\"><a href=\"https://fosstodon.org/@rmanos\" class=\"u-url mention\">@<span>rmanos</span></a></span> No problem :)</p>"
},
"attachment": [],
"tag": [
{
"type": "Mention",
"href": "https://fosstodon.org/users/rmanos",
"name": "@rmanos"
}
],
"replies": {
"id": "https://fosstodon.org/users/robinm/statuses/113414255974636257/replies",
"type": "Collection",
"first": {
"type": "CollectionPage",
"next": "https://fosstodon.org/users/robinm/statuses/113414255974636257/replies?only_other_accounts=true&page=true",
"partOf": "https://fosstodon.org/users/robinm/statuses/113414255974636257/replies",
"items": []
}
},
"likes": {
"id": "https://fosstodon.org/users/robinm/statuses/113414255974636257/likes",
"type": "Collection",
"totalItems": 0
},
"shares": {
"id": "https://fosstodon.org/users/robinm/statuses/113414255974636257/shares",
"type": "Collection",
"totalItems": 0
}
}
},
{
"id": "https://fosstodon.org/users/robinm/statuses/113414234861698609/activity",
"type": "Create",
"actor": "https://fosstodon.org/users/robinm",
"published": "2024-11-02T16:11:26Z",
"to": [
"https://www.w3.org/ns/activitystreams#Public"
],
"cc": [
"https://fosstodon.org/users/robinm/followers",
"https://fosstodon.org/users/rmanos"
],
"object": {
"id": "https://fosstodon.org/users/robinm/statuses/113414234861698609",
"type": "Note",
"summary": null,
"inReplyTo": null,
"published": "2024-11-02T16:11:26Z",
"url": "https://fosstodon.org/@robinm/113414234861698609",
"attributedTo": "https://fosstodon.org/users/robinm",
"to": [
"https://www.w3.org/ns/activitystreams#Public"
],
"cc": [
"https://fosstodon.org/users/robinm/followers",
"https://fosstodon.org/users/rmanos"
],
"sensitive": false,
"atomUri": "https://fosstodon.org/users/robinm/statuses/113414234861698609",
"inReplyToAtomUri": null,
"conversation": "tag:fosstodon.org,2024-11-02:objectId=256787109:objectType=Conversation",
"content": "<p><span class=\"h-card\" translate=\"no\"><a href=\"https://fosstodon.org/@rmanos\" class=\"u-url mention\">@<span>rmanos</span></a></span> Except it does. If ErrBankAccountEmpty is created by f3, you don’t get the same error message, and vice versa with ErrInvestmentLost. Both in C++ and Rust</p>",
"contentMap": {
"en": "<p><span class=\"h-card\" translate=\"no\"><a href=\"https://fosstodon.org/@rmanos\" class=\"u-url mention\">@<span>rmanos</span></a></span> Except it does. If ErrBankAccountEmpty is created by f3, you don’t get the same error message, and vice versa with ErrInvestmentLost. Both in C++ and Rust</p>"
},
"attachment": [],
"tag": [
{
"type": "Mention",
"href": "https://fosstodon.org/users/rmanos",
"name": "@rmanos"
}
],
"replies": {
"id": "https://fosstodon.org/users/robinm/statuses/113414234861698609/replies",
"type": "Collection",
"first": {
"type": "CollectionPage",
"next": "https://fosstodon.org/users/robinm/statuses/113414234861698609/replies?only_other_accounts=true&page=true",
"partOf": "https://fosstodon.org/users/robinm/statuses/113414234861698609/replies",
"items": []
}
},
"likes": {
"id": "https://fosstodon.org/users/robinm/statuses/113414234861698609/likes",
"type": "Collection",
"totalItems": 0
},
"shares": {
"id": "https://fosstodon.org/users/robinm/statuses/113414234861698609/shares",
"type": "Collection",
"totalItems": 0
}
}
},
{
"id": "https://fosstodon.org/users/robinm/statuses/113414220801310651/activity",
"type": "Create",
"actor": "https://fosstodon.org/users/robinm",
"published": "2024-11-02T16:07:51Z",
"to": [
"https://www.w3.org/ns/activitystreams#Public"
],
"cc": [
"https://fosstodon.org/users/robinm/followers",
"https://fosstodon.org/users/rmanos"
],
"object": {
"id": "https://fosstodon.org/users/robinm/statuses/113414220801310651",
"type": "Note",
"summary": null,
"inReplyTo": "https://fosstodon.org/users/robinm/statuses/113414210173948126",
"published": "2024-11-02T16:07:51Z",
"url": "https://fosstodon.org/@robinm/113414220801310651",
"attributedTo": "https://fosstodon.org/users/robinm",
"to": [
"https://www.w3.org/ns/activitystreams#Public"
],
"cc": [
"https://fosstodon.org/users/robinm/followers",
"https://fosstodon.org/users/rmanos"
],
"sensitive": false,
"atomUri": "https://fosstodon.org/users/robinm/statuses/113414220801310651",
"inReplyToAtomUri": "https://fosstodon.org/users/robinm/statuses/113414210173948126",
"conversation": "tag:fosstodon.org,2024-11-02:objectId=256787109:objectType=Conversation",
"content": "<p><span class=\"h-card\" translate=\"no\"><a href=\"https://fosstodon.org/@rmanos\" class=\"u-url mention\">@<span>rmanos</span></a></span> Anyway, I don’t think you will like it for the same reason (I wrote it before reading your answer), but here is a C++ version that uses the same architecture.</p><p><a href=\"https://godbolt.org/z/9PeWaKeWW\" target=\"_blank\" rel=\"nofollow noopener noreferrer\" translate=\"no\"><span class=\"invisible\">https://</span><span class=\"\">godbolt.org/z/9PeWaKeWW</span><span class=\"invisible\"></span></a></p>",
"contentMap": {
"en": "<p><span class=\"h-card\" translate=\"no\"><a href=\"https://fosstodon.org/@rmanos\" class=\"u-url mention\">@<span>rmanos</span></a></span> Anyway, I don’t think you will like it for the same reason (I wrote it before reading your answer), but here is a C++ version that uses the same architecture.</p><p><a href=\"https://godbolt.org/z/9PeWaKeWW\" target=\"_blank\" rel=\"nofollow noopener noreferrer\" translate=\"no\"><span class=\"invisible\">https://</span><span class=\"\">godbolt.org/z/9PeWaKeWW</span><span class=\"invisible\"></span></a></p>"
},
"attachment": [],
"tag": [
{
"type": "Mention",
"href": "https://fosstodon.org/users/rmanos",
"name": "@rmanos"
}
],
"replies": {
"id": "https://fosstodon.org/users/robinm/statuses/113414220801310651/replies",
"type": "Collection",
"first": {
"type": "CollectionPage",
"next": "https://fosstodon.org/users/robinm/statuses/113414220801310651/replies?only_other_accounts=true&page=true",
"partOf": "https://fosstodon.org/users/robinm/statuses/113414220801310651/replies",
"items": []
}
},
"likes": {
"id": "https://fosstodon.org/users/robinm/statuses/113414220801310651/likes",
"type": "Collection",
"totalItems": 0
},
"shares": {
"id": "https://fosstodon.org/users/robinm/statuses/113414220801310651/shares",
"type": "Collection",
"totalItems": 0
}
}
},
{
"id": "https://fosstodon.org/users/robinm/statuses/113414210173948126/activity",
"type": "Create",
"actor": "https://fosstodon.org/users/robinm",
"published": "2024-11-02T16:05:09Z",
"to": [
"https://www.w3.org/ns/activitystreams#Public"
],
"cc": [
"https://fosstodon.org/users/robinm/followers",
"https://fosstodon.org/users/rmanos"
],
"object": {
"id": "https://fosstodon.org/users/robinm/statuses/113414210173948126",
"type": "Note",
"summary": null,
"inReplyTo": "https://fosstodon.org/users/robinm/statuses/113414209687450048",
"published": "2024-11-02T16:05:09Z",
"url": "https://fosstodon.org/@robinm/113414210173948126",
"attributedTo": "https://fosstodon.org/users/robinm",
"to": [
"https://www.w3.org/ns/activitystreams#Public"
],
"cc": [
"https://fosstodon.org/users/robinm/followers",
"https://fosstodon.org/users/rmanos"
],
"sensitive": false,
"atomUri": "https://fosstodon.org/users/robinm/statuses/113414210173948126",
"inReplyToAtomUri": "https://fosstodon.org/users/robinm/statuses/113414209687450048",
"conversation": "tag:fosstodon.org,2024-11-02:objectId=256787109:objectType=Conversation",
"content": "<p><span class=\"h-card\" translate=\"no\"><a href=\"https://fosstodon.org/@rmanos\" class=\"u-url mention\">@<span>rmanos</span></a></span> The randomness was removed just to make it easy to show that it works. It’s not an exercice about knowing how to call rand() in your language.</p><p>Being able to print the stack trace has nothing to do with the challenge. Or that’s no longer error handling that we are talking about but error logging. Two close but unrealated topics.</p>",
"contentMap": {
"en": "<p><span class=\"h-card\" translate=\"no\"><a href=\"https://fosstodon.org/@rmanos\" class=\"u-url mention\">@<span>rmanos</span></a></span> The randomness was removed just to make it easy to show that it works. It’s not an exercice about knowing how to call rand() in your language.</p><p>Being able to print the stack trace has nothing to do with the challenge. Or that’s no longer error handling that we are talking about but error logging. Two close but unrealated topics.</p>"
},
"attachment": [],
"tag": [
{
"type": "Mention",
"href": "https://fosstodon.org/users/rmanos",
"name": "@rmanos"
}
],
"replies": {
"id": "https://fosstodon.org/users/robinm/statuses/113414210173948126/replies",
"type": "Collection",
"first": {
"type": "CollectionPage",
"next": "https://fosstodon.org/users/robinm/statuses/113414210173948126/replies?min_id=113414220801310651&page=true",
"partOf": "https://fosstodon.org/users/robinm/statuses/113414210173948126/replies",
"items": [
"https://fosstodon.org/users/robinm/statuses/113414220801310651"
]
}
},
"likes": {
"id": "https://fosstodon.org/users/robinm/statuses/113414210173948126/likes",
"type": "Collection",
"totalItems": 0
},
"shares": {
"id": "https://fosstodon.org/users/robinm/statuses/113414210173948126/shares",
"type": "Collection",
"totalItems": 0
}
}
},
{
"id": "https://fosstodon.org/users/robinm/statuses/113414209687450048/activity",
"type": "Create",
"actor": "https://fosstodon.org/users/robinm",
"published": "2024-11-02T16:05:02Z",
"to": [
"https://www.w3.org/ns/activitystreams#Public"
],
"cc": [
"https://fosstodon.org/users/robinm/followers",
"https://fosstodon.org/users/rmanos"
],
"object": {
"id": "https://fosstodon.org/users/robinm/statuses/113414209687450048",
"type": "Note",
"summary": null,
"inReplyTo": "https://fosstodon.org/users/robinm/statuses/113414196217434215",
"published": "2024-11-02T16:05:02Z",
"url": "https://fosstodon.org/@robinm/113414209687450048",
"attributedTo": "https://fosstodon.org/users/robinm",
"to": [
"https://www.w3.org/ns/activitystreams#Public"
],
"cc": [
"https://fosstodon.org/users/robinm/followers",
"https://fosstodon.org/users/rmanos"
],
"sensitive": false,
"atomUri": "https://fosstodon.org/users/robinm/statuses/113414209687450048",
"inReplyToAtomUri": "https://fosstodon.org/users/robinm/statuses/113414196217434215",
"conversation": "tag:fosstodon.org,2024-11-02:objectId=256787109:objectType=Conversation",
"content": "<p><span class=\"h-card\" translate=\"no\"><a href=\"https://fosstodon.org/@rmanos\" class=\"u-url mention\">@<span>rmanos</span></a></span> It was not explicit that the main methode create has to create the message of the errors. I would argue that this is actually an anti pattern, but it’s relatively trivial to create the error message in main rather than in error themselves. Furthermore, creating the error message in main will remove the need for the ErrInternal.</p>",
"contentMap": {
"en": "<p><span class=\"h-card\" translate=\"no\"><a href=\"https://fosstodon.org/@rmanos\" class=\"u-url mention\">@<span>rmanos</span></a></span> It was not explicit that the main methode create has to create the message of the errors. I would argue that this is actually an anti pattern, but it’s relatively trivial to create the error message in main rather than in error themselves. Furthermore, creating the error message in main will remove the need for the ErrInternal.</p>"
},
"attachment": [],
"tag": [
{
"type": "Mention",
"href": "https://fosstodon.org/users/rmanos",
"name": "@rmanos"
}
],
"replies": {
"id": "https://fosstodon.org/users/robinm/statuses/113414209687450048/replies",
"type": "Collection",
"first": {
"type": "CollectionPage",
"next": "https://fosstodon.org/users/robinm/statuses/113414209687450048/replies?min_id=113414210173948126&page=true",
"partOf": "https://fosstodon.org/users/robinm/statuses/113414209687450048/replies",
"items": [
"https://fosstodon.org/users/robinm/statuses/113414210173948126"
]
}
},
"likes": {
"id": "https://fosstodon.org/users/robinm/statuses/113414209687450048/likes",
"type": "Collection",
"totalItems": 0
},
"shares": {
"id": "https://fosstodon.org/users/robinm/statuses/113414209687450048/shares",
"type": "Collection",
"totalItems": 0
}
}
},
{
"id": "https://fosstodon.org/users/robinm/statuses/113414196217434215/activity",
"type": "Create",
"actor": "https://fosstodon.org/users/robinm",
"published": "2024-11-02T16:01:36Z",
"to": [
"https://www.w3.org/ns/activitystreams#Public"
],
"cc": [
"https://fosstodon.org/users/robinm/followers",
"https://fosstodon.org/users/rmanos"
],
"object": {
"id": "https://fosstodon.org/users/robinm/statuses/113414196217434215",
"type": "Note",
"summary": null,
"inReplyTo": "https://fosstodon.org/users/rmanos/statuses/113414076878521728",
"published": "2024-11-02T16:01:36Z",
"url": "https://fosstodon.org/@robinm/113414196217434215",
"attributedTo": "https://fosstodon.org/users/robinm",
"to": [
"https://www.w3.org/ns/activitystreams#Public"
],
"cc": [
"https://fosstodon.org/users/robinm/followers",
"https://fosstodon.org/users/rmanos"
],
"sensitive": false,
"atomUri": "https://fosstodon.org/users/robinm/statuses/113414196217434215",
"inReplyToAtomUri": "https://fosstodon.org/users/rmanos/statuses/113414076878521728",
"conversation": "tag:fosstodon.org,2024-11-02:objectId=256787109:objectType=Conversation",
"content": "<p><span class=\"h-card\" translate=\"no\"><a href=\"https://fosstodon.org/@rmanos\" class=\"u-url mention\">@<span>rmanos</span></a></span> Please learn to communicate with other. As I said before the rules of the challenges were anything but clear, that’s why I reformulated them above. If my understanding was wrong, please correct it **before** looking at the solution I gave you.</p>",
"contentMap": {
"en": "<p><span class=\"h-card\" translate=\"no\"><a href=\"https://fosstodon.org/@rmanos\" class=\"u-url mention\">@<span>rmanos</span></a></span> Please learn to communicate with other. As I said before the rules of the challenges were anything but clear, that’s why I reformulated them above. If my understanding was wrong, please correct it **before** looking at the solution I gave you.</p>"
},
"attachment": [],
"tag": [
{
"type": "Mention",
"href": "https://fosstodon.org/users/rmanos",
"name": "@rmanos"
}
],
"replies": {
"id": "https://fosstodon.org/users/robinm/statuses/113414196217434215/replies",
"type": "Collection",
"first": {
"type": "CollectionPage",
"next": "https://fosstodon.org/users/robinm/statuses/113414196217434215/replies?min_id=113414209687450048&page=true",
"partOf": "https://fosstodon.org/users/robinm/statuses/113414196217434215/replies",
"items": [
"https://fosstodon.org/users/robinm/statuses/113414209687450048"
]
}
},
"likes": {
"id": "https://fosstodon.org/users/robinm/statuses/113414196217434215/likes",
"type": "Collection",
"totalItems": 0
},
"shares": {
"id": "https://fosstodon.org/users/robinm/statuses/113414196217434215/shares",
"type": "Collection",
"totalItems": 0
}
}
},
{
"id": "https://fosstodon.org/users/robinm/statuses/113413622243634661/activity",
"type": "Create",
"actor": "https://fosstodon.org/users/robinm",
"published": "2024-11-02T13:35:38Z",
"to": [
"https://www.w3.org/ns/activitystreams#Public"
],
"cc": [
"https://fosstodon.org/users/robinm/followers",
"https://fosstodon.org/users/rmanos"
],
"object": {
"id": "https://fosstodon.org/users/robinm/statuses/113413622243634661",
"type": "Note",
"summary": null,
"inReplyTo": "https://fosstodon.org/users/robinm/statuses/113413619717907846",
"published": "2024-11-02T13:35:38Z",
"url": "https://fosstodon.org/@robinm/113413622243634661",
"attributedTo": "https://fosstodon.org/users/robinm",
"to": [
"https://www.w3.org/ns/activitystreams#Public"
],
"cc": [
"https://fosstodon.org/users/robinm/followers",
"https://fosstodon.org/users/rmanos"
],
"sensitive": false,
"atomUri": "https://fosstodon.org/users/robinm/statuses/113413622243634661",
"inReplyToAtomUri": "https://fosstodon.org/users/robinm/statuses/113413619717907846",
"conversation": "tag:fosstodon.org,2024-11-02:objectId=256787109:objectType=Conversation",
"content": "<p><span class=\"h-card\" translate=\"no\"><a href=\"https://fosstodon.org/@rmanos\" class=\"u-url mention\">@<span>rmanos</span></a></span> And here is a Rust version</p><p><a href=\"https://play.rust-lang.org/?version=stable&mode=debug&edition=2021&gist=620d8af2a989065a625ea6c696319942\" target=\"_blank\" rel=\"nofollow noopener noreferrer\" translate=\"no\"><span class=\"invisible\">https://</span><span class=\"ellipsis\">play.rust-lang.org/?version=st</span><span class=\"invisible\">able&mode=debug&edition=2021&gist=620d8af2a989065a625ea6c696319942</span></a></p><p>There is 90% of boilerplate, but the idea is indeed just to create the implicit conversion between the errors</p>",
"contentMap": {
"en": "<p><span class=\"h-card\" translate=\"no\"><a href=\"https://fosstodon.org/@rmanos\" class=\"u-url mention\">@<span>rmanos</span></a></span> And here is a Rust version</p><p><a href=\"https://play.rust-lang.org/?version=stable&mode=debug&edition=2021&gist=620d8af2a989065a625ea6c696319942\" target=\"_blank\" rel=\"nofollow noopener noreferrer\" translate=\"no\"><span class=\"invisible\">https://</span><span class=\"ellipsis\">play.rust-lang.org/?version=st</span><span class=\"invisible\">able&mode=debug&edition=2021&gist=620d8af2a989065a625ea6c696319942</span></a></p><p>There is 90% of boilerplate, but the idea is indeed just to create the implicit conversion between the errors</p>"
},
"attachment": [],
"tag": [
{
"type": "Mention",
"href": "https://fosstodon.org/users/rmanos",
"name": "@rmanos"
}
],
"replies": {
"id": "https://fosstodon.org/users/robinm/statuses/113413622243634661/replies",
"type": "Collection",
"first": {
"type": "CollectionPage",
"next": "https://fosstodon.org/users/robinm/statuses/113413622243634661/replies?only_other_accounts=true&page=true",
"partOf": "https://fosstodon.org/users/robinm/statuses/113413622243634661/replies",
"items": []
}
},
"likes": {
"id": "https://fosstodon.org/users/robinm/statuses/113413622243634661/likes",
"type": "Collection",
"totalItems": 0
},
"shares": {
"id": "https://fosstodon.org/users/robinm/statuses/113413622243634661/shares",
"type": "Collection",
"totalItems": 0
}
}
},
{
"id": "https://fosstodon.org/users/robinm/statuses/113413619717907846/activity",
"type": "Create",
"actor": "https://fosstodon.org/users/robinm",
"published": "2024-11-02T13:35:00Z",
"to": [
"https://www.w3.org/ns/activitystreams#Public"
],
"cc": [
"https://fosstodon.org/users/robinm/followers",
"https://fosstodon.org/users/rmanos"
],
"object": {
"id": "https://fosstodon.org/users/robinm/statuses/113413619717907846",
"type": "Note",
"summary": null,
"inReplyTo": "https://fosstodon.org/users/rmanos/statuses/113412920850012162",
"published": "2024-11-02T13:35:00Z",
"url": "https://fosstodon.org/@robinm/113413619717907846",
"attributedTo": "https://fosstodon.org/users/robinm",
"to": [
"https://www.w3.org/ns/activitystreams#Public"
],
"cc": [
"https://fosstodon.org/users/robinm/followers",
"https://fosstodon.org/users/rmanos"
],
"sensitive": false,
"atomUri": "https://fosstodon.org/users/robinm/statuses/113413619717907846",
"inReplyToAtomUri": "https://fosstodon.org/users/rmanos/statuses/113412920850012162",
"conversation": "tag:fosstodon.org,2024-11-02:objectId=256787109:objectType=Conversation",
"content": "<p><span class=\"h-card\" translate=\"no\"><a href=\"https://fosstodon.org/@rmanos\" class=\"u-url mention\">@<span>rmanos</span></a></span> I did not initially understood what you really the challenge was about. Is this an accurate summary?</p><p>- f1() returns either error A or B<br />- f2() and f3() calls f1()<br />- f4() calls f2() or f3() </p><p>- if error A was emitted thought f2, it should print a given error message<br />- if error B was emitted thought f3, it should print another error message<br />- in all other casses a common error message must be printed</p><p>And the challenge it do it without having any of the logic being in any of f1, f2 or f3</p>",
"contentMap": {
"en": "<p><span class=\"h-card\" translate=\"no\"><a href=\"https://fosstodon.org/@rmanos\" class=\"u-url mention\">@<span>rmanos</span></a></span> I did not initially understood what you really the challenge was about. Is this an accurate summary?</p><p>- f1() returns either error A or B<br />- f2() and f3() calls f1()<br />- f4() calls f2() or f3() </p><p>- if error A was emitted thought f2, it should print a given error message<br />- if error B was emitted thought f3, it should print another error message<br />- in all other casses a common error message must be printed</p><p>And the challenge it do it without having any of the logic being in any of f1, f2 or f3</p>"
},
"attachment": [],
"tag": [
{
"type": "Mention",
"href": "https://fosstodon.org/users/rmanos",
"name": "@rmanos"
}
],
"replies": {
"id": "https://fosstodon.org/users/robinm/statuses/113413619717907846/replies",
"type": "Collection",
"first": {
"type": "CollectionPage",
"next": "https://fosstodon.org/users/robinm/statuses/113413619717907846/replies?min_id=113413622243634661&page=true",
"partOf": "https://fosstodon.org/users/robinm/statuses/113413619717907846/replies",
"items": [
"https://fosstodon.org/users/robinm/statuses/113413622243634661"
]
}
},
"likes": {
"id": "https://fosstodon.org/users/robinm/statuses/113413619717907846/likes",
"type": "Collection",
"totalItems": 0
},
"shares": {
"id": "https://fosstodon.org/users/robinm/statuses/113413619717907846/shares",
"type": "Collection",
"totalItems": 0
}
}
}
]
}