{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":665214347,"defaultBranch":"master","name":"dhtnet","ownerLogin":"savoirfairelinux","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2023-07-11T17:38:20.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/2735545?v=4","public":true,"private":false,"isOrgOwned":true},"refInfo":{"name":"","listCacheKey":"v0:1718040456.0","currentOid":""},"activityList":{"items":[{"before":"5170f76d79bef7f031434d365ef5f336a49d1054","after":"7a33c7c38c45faabad2bea873ae8b2ba1bcd3050","ref":"refs/heads/master","pushedAt":"2024-08-16T21:25:53.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"GerritRingMirror","name":null,"path":"/GerritRingMirror","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/42186080?s=80&v=4"},"commit":{"message":"pupnp: Log a warning if UPnP is already initialized\n\nCurrently, any flag other than UPNP_E_SUCCESS terminates UPnP during initialization. However, the UPNP_E_INIT flag (indicating UPnP is already initialized) should not cause termination. NAT-PMP has no equivalent flag.\n\nChange-Id: Ia40508a4c07a141dbd5e2effe5f11dff05607d7c","shortMessageHtmlLink":"pupnp: Log a warning if UPnP is already initialized"}},{"before":"c5ce26957afb86002a35a18c3faf126b71e605fc","after":"5170f76d79bef7f031434d365ef5f336a49d1054","ref":"refs/heads/master","pushedAt":"2024-08-16T21:25:01.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"GerritRingMirror","name":null,"path":"/GerritRingMirror","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/42186080?s=80&v=4"},"commit":{"message":"tools: remove ioContextRunner\n\nChange-Id: I0ce66802ef962d8ff01ffea800224b2d2ed72ac4","shortMessageHtmlLink":"tools: remove ioContextRunner"}},{"before":"1d0be55f66ff1b657d0abfd51cf67e5edb27a5ec","after":"c5ce26957afb86002a35a18c3faf126b71e605fc","ref":"refs/heads/master","pushedAt":"2024-08-05T16:30:51.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"GerritRingMirror","name":null,"path":"/GerritRingMirror","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/42186080?s=80&v=4"},"commit":{"message":"dnc: fix log\n\nChange-Id: I0717a1da7290130549c9e8c19ffe533490018258","shortMessageHtmlLink":"dnc: fix log"}},{"before":"31d31f8d039ed6abc7c473fbb237011f699dba4e","after":"1d0be55f66ff1b657d0abfd51cf67e5edb27a5ec","ref":"refs/heads/master","pushedAt":"2024-07-31T15:35:25.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"GerritRingMirror","name":null,"path":"/GerritRingMirror","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/42186080?s=80&v=4"},"commit":{"message":"dnc/config: use default server path in dnc.yaml\n\nOn installation, this file is installed in server folder, so using\nthe default path is more convenient. On client-side, this file is not\ncopied, it's created by dhtnet-crtmgr with the correct path.\n\nChange-Id: I4be51909bed5b579369d5df818e0d01fe11ec3bb","shortMessageHtmlLink":"dnc/config: use default server path in dnc.yaml"}},{"before":"6aeaaa539038320f29763d90efc723a143fc3224","after":"31d31f8d039ed6abc7c473fbb237011f699dba4e","ref":"refs/heads/master","pushedAt":"2024-07-30T14:00:54.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"GerritRingMirror","name":null,"path":"/GerritRingMirror","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/42186080?s=80&v=4"},"commit":{"message":"packaging: add debian build and args for script\n\nAdded debian 10, 11, 12 and Ubuntu 20.04 Dockerfiles.\nAdded arguments selector in build_packages.sh to choose what to build.\nMake build parallels and wait for all to finish at end.\n\nChange-Id: I307fcac3e9b02eb821841309779f9268549aaeb0","shortMessageHtmlLink":"packaging: add debian build and args for script"}},{"before":"88a3c8cd2bb136c1ce5393ffe8ee607547ca901b","after":"6aeaaa539038320f29763d90efc723a143fc3224","ref":"refs/heads/master","pushedAt":"2024-07-25T20:16:15.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"GerritRingMirror","name":null,"path":"/GerritRingMirror","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/42186080?s=80&v=4"},"commit":{"message":"packaging: add dynamic lib.so to the package\n\nRelated to https://review.jami.net/c/dhtnet/+/28665\n\nChange-Id: Ic06f0c78744f57764fc66ae0161ac62cd05c84fe","shortMessageHtmlLink":"packaging: add dynamic lib.so to the package"}},{"before":"77e27dcb90b4e7db7828481a3f853d7f9ddf5335","after":"88a3c8cd2bb136c1ce5393ffe8ee607547ca901b","ref":"refs/heads/master","pushedAt":"2024-07-25T19:17:11.000Z","pushType":"push","commitsCount":4,"pusher":{"login":"GerritRingMirror","name":null,"path":"/GerritRingMirror","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/42186080?s=80&v=4"},"commit":{"message":"packaging: disable postinst auto-setup\n\nDisabled keys generation because it could lead to change of certificate\nduring an update => security issue.\nReconfiguration of yaml is disabled because user will now have to run\n`dhtnet-crtmgr --interactive`, which create the file if needed.\n\nChange-Id: I388ab1cebf75d248600f070be4eb108766bfe993","shortMessageHtmlLink":"packaging: disable postinst auto-setup"}},{"before":"c1f7da21bdc618e4835b5509b6492a531c0ecf5e","after":"77e27dcb90b4e7db7828481a3f853d7f9ddf5335","ref":"refs/heads/master","pushedAt":"2024-07-25T18:34:38.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"GerritRingMirror","name":null,"path":"/GerritRingMirror","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/42186080?s=80&v=4"},"commit":{"message":"tools/*: update docs (man, readme, --help)\n\nThere was huge number of inconsistencies between documentation, helpers\nand options parsing. Unified arguments and docs + package them.\n\nChange-Id: Icf1097e2130882e4de831db21d3fb16603266229","shortMessageHtmlLink":"tools/*: update docs (man, readme, --help)"}},{"before":"c835404395450e9d6dcac33ebdc1c4d5aa415ed2","after":"c1f7da21bdc618e4835b5509b6492a531c0ecf5e","ref":"refs/heads/master","pushedAt":"2024-07-25T16:34:32.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"GerritRingMirror","name":null,"path":"/GerritRingMirror","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/42186080?s=80&v=4"},"commit":{"message":"crtmgr: remove newline when asking question\n\nThis patch remove a typo '\\n' while asking an question to user\n\nChange-Id: I06520037a65e91cd3d3496bff37ba854070310ed","shortMessageHtmlLink":"crtmgr: remove newline when asking question"}},{"before":"f81d36bd169ff1c3f7a42924a1d6de355d0f3b90","after":"c835404395450e9d6dcac33ebdc1c4d5aa415ed2","ref":"refs/heads/master","pushedAt":"2024-07-24T21:51:36.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"GerritRingMirror","name":null,"path":"/GerritRingMirror","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/42186080?s=80&v=4"},"commit":{"message":"check error when creating directory\n\nChange-Id: Iccff91eea9c3a5ab7b84a24688d80d3ea6fdec5e","shortMessageHtmlLink":"check error when creating directory"}},{"before":"8838918db79ea53412e2ac7bbc6068ab177a9d01","after":"f81d36bd169ff1c3f7a42924a1d6de355d0f3b90","ref":"refs/heads/master","pushedAt":"2024-07-24T17:56:16.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"GerritRingMirror","name":null,"path":"/GerritRingMirror","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/42186080?s=80&v=4"},"commit":{"message":"doc: add comments in config files to help users\n\nAdding comment in config file help users to edit it without having to\nkeep documentation opened on side.\n\nChange-Id: If58dd43dd6c5ac5dbb4209881fb4c14bd0d88e78","shortMessageHtmlLink":"doc: add comments in config files to help users"}},{"before":"366f384b7483902b4dc6ecd7b376ef7b61f2ea9e","after":"8838918db79ea53412e2ac7bbc6068ab177a9d01","ref":"refs/heads/master","pushedAt":"2024-07-24T17:55:43.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"GerritRingMirror","name":null,"path":"/GerritRingMirror","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/42186080?s=80&v=4"},"commit":{"message":"optimize: add options to optimize build time\n\nThis commit remove benchmark from building as it is not usefull for\npackage, and make peerDiscovery tool optional via an option. It's still\nON per default but can be disabled later.\n\nChange-Id: I3ce1eb9647a0393e47e3d56ded9a70f4e3c58407","shortMessageHtmlLink":"optimize: add options to optimize build time"}},{"before":"d887d3bcc4b4457a785751a5e5417de244d60dbc","after":"366f384b7483902b4dc6ecd7b376ef7b61f2ea9e","ref":"refs/heads/master","pushedAt":"2024-07-24T17:54:36.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"GerritRingMirror","name":null,"path":"/GerritRingMirror","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/42186080?s=80&v=4"},"commit":{"message":"postrm: add script to clean systemd on uninstall\n\nThis script stops and disables the dnc.service unit file and removes it.\nIt's a fix for an issue where, on upgrade or uninstall+install, the\nservice file became 'masked' and linked to /dev/null.\n\nChange-Id: Ifcc6bc42212e0241c775cdd24df5f937780e0a9b","shortMessageHtmlLink":"postrm: add script to clean systemd on uninstall"}},{"before":"80bb7b17ec2e14da30f0a9ffbf9db1ec03798f93","after":"d887d3bcc4b4457a785751a5e5417de244d60dbc","ref":"refs/heads/master","pushedAt":"2024-07-24T17:54:21.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"GerritRingMirror","name":null,"path":"/GerritRingMirror","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/42186080?s=80&v=4"},"commit":{"message":"crtmgr: clean code and switch -g option to -a\n\n-g option is incoherent with --identifier option it represent. Changed\nto -a as plenty of unix tools use it when displaying all information.\nAlso removed double space and indented a block of code for linting.\n\nChange-Id: I1de7355da1f47b5ea1200d3dd4fe3373091e7403","shortMessageHtmlLink":"crtmgr: clean code and switch -g option to -a"}},{"before":"2da6725e73aebbdeb26e3c858a0c674b15a8210d","after":"80bb7b17ec2e14da30f0a9ffbf9db1ec03798f93","ref":"refs/heads/master","pushedAt":"2024-07-23T19:26:28.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"GerritRingMirror","name":null,"path":"/GerritRingMirror","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/42186080?s=80&v=4"},"commit":{"message":"pkg-ubuntu: add build pipeline Ubuntu 22.04, 24.04\n\nThis commit add necessary files for building debian .deb package and\nshell script to build for Ubuntu 22.04 and 24.04. You can use it by\nrunning `extras/packaging/build_packages.sh` script.\n\nChange-Id: I91ba97cbe932ff4207072dcb2f9d2b2887de236a","shortMessageHtmlLink":"pkg-ubuntu: add build pipeline Ubuntu 22.04, 24.04"}},{"before":"6999623d22582055be4a259450215c0178baf023","after":"2da6725e73aebbdeb26e3c858a0c674b15a8210d","ref":"refs/heads/master","pushedAt":"2024-07-23T19:10:00.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"GerritRingMirror","name":null,"path":"/GerritRingMirror","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/42186080?s=80&v=4"},"commit":{"message":"tools: fix segfault when invalid identity given\n\nGiving no or invalid identity to dnc, dsh or dvpn was giving a segfault.\nThey now print an error message and exit with a non-zero status\ncorrectly. dhtnet-crtmgr was also suffering segfault when no -o option,\neven for --help or --version options. This is now fixed.\n\nChange-Id: I7871db9ab73205c9ad024260d7687cc20ae1a983","shortMessageHtmlLink":"tools: fix segfault when invalid identity given"}},{"before":"2eb254cf7f630e3cbc4ea6cb5b29961ac3b466f8","after":"6999623d22582055be4a259450215c0178baf023","ref":"refs/heads/master","pushedAt":"2024-07-23T19:00:40.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"GerritRingMirror","name":null,"path":"/GerritRingMirror","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/42186080?s=80&v=4"},"commit":{"message":"tools/dnc: add verbose option to enable the log\n\nChange-Id: If2efb47ecc2c8701ecc41e3318f716e5f584508f","shortMessageHtmlLink":"tools/dnc: add verbose option to enable the log"}},{"before":"cfe512b0632eea046f683b22e42d01eeb943d751","after":"2eb254cf7f630e3cbc4ea6cb5b29961ac3b466f8","ref":"refs/heads/master","pushedAt":"2024-07-23T18:22:41.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"GerritRingMirror","name":null,"path":"/GerritRingMirror","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/42186080?s=80&v=4"},"commit":{"message":"packaging: build dhtnet as a shared library\n\nYou need to use cmake -DBUILD_SHARED_LIBS=On\n\nChange-Id: Iea5bdc1e66c4308590890901cf2a3ab06ec33d53","shortMessageHtmlLink":"packaging: build dhtnet as a shared library"}},{"before":"4067397f0b9d1bc3e98452e78cab56095046f52c","after":"cfe512b0632eea046f683b22e42d01eeb943d751","ref":"refs/heads/master","pushedAt":"2024-07-22T21:17:10.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"GerritRingMirror","name":null,"path":"/GerritRingMirror","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/42186080?s=80&v=4"},"commit":{"message":"build with nat-pmp using proper pkgconfig name\n\nChange-Id: I3da6650031cd005536ef32d9d06f52d1559bd160","shortMessageHtmlLink":"build with nat-pmp using proper pkgconfig name"}},{"before":"1c17298712506ef3cc80fc29d13f4c5418fc7639","after":"4067397f0b9d1bc3e98452e78cab56095046f52c","ref":"refs/heads/master","pushedAt":"2024-07-22T21:05:19.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"GerritRingMirror","name":null,"path":"/GerritRingMirror","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/42186080?s=80&v=4"},"commit":{"message":"build with nat-pmp from pkgconfig if available\n\nChange-Id: Idc5ae4611a99132336ff62617d66b842fc87323a","shortMessageHtmlLink":"build with nat-pmp from pkgconfig if available"}},{"before":"ad02d568bb08f577c17e2c3de53a43c2cb69a10f","after":"1c17298712506ef3cc80fc29d13f4c5418fc7639","ref":"refs/heads/master","pushedAt":"2024-07-05T16:02:19.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"GerritRingMirror","name":null,"path":"/GerritRingMirror","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/42186080?s=80&v=4"},"commit":{"message":"update opendht\n\nChange-Id: I24cf3c79adf2d74fd3bac6a7772e12149fe550bb","shortMessageHtmlLink":"update opendht"}},{"before":"e86d97f904607b61251a3f21d3460f40952d52b3","after":"ad02d568bb08f577c17e2c3de53a43c2cb69a10f","ref":"refs/heads/master","pushedAt":"2024-07-02T20:15:49.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"GerritRingMirror","name":null,"path":"/GerritRingMirror","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/42186080?s=80&v=4"},"commit":{"message":"CI: fix the github workflow\n\nDefine a specific build stage target.\n\nChange-Id: Ia9844f96700176d144879d52a36392433969b95d","shortMessageHtmlLink":"CI: fix the github workflow"}},{"before":"f981c7023312d2efc03dd876b8b48b5d9c6185da","after":"e86d97f904607b61251a3f21d3460f40952d52b3","ref":"refs/heads/master","pushedAt":"2024-07-02T17:07:55.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"GerritRingMirror","name":null,"path":"/GerritRingMirror","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/42186080?s=80&v=4"},"commit":{"message":"Update opendht\n\nChange-Id: I04a6f3bd65ace2f9327d6a96f348565aecdd022b","shortMessageHtmlLink":"Update opendht"}},{"before":"92abe1260704819a85b4350ef2db25ac85a550c5","after":"f981c7023312d2efc03dd876b8b48b5d9c6185da","ref":"refs/heads/master","pushedAt":"2024-06-27T14:49:46.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"GerritRingMirror","name":null,"path":"/GerritRingMirror","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/42186080?s=80&v=4"},"commit":{"message":"CI: add a workflow in .github/ directory for Docker container packaging\n\nI already tested the workflow: https://github.com/AmnaSnene/dhtnet/pkgs/container/dhtnet%2Fdhtnet\n\nChange-Id: I4c21c19d710058e80f17dd6f39080a5d35e174d9","shortMessageHtmlLink":"CI: add a workflow in .github/ directory for Docker container packaging"}},{"before":"fd29c1d63cdd9768c6a850526d4e4b285ea50b12","after":"92abe1260704819a85b4350ef2db25ac85a550c5","ref":"refs/heads/master","pushedAt":"2024-06-27T14:45:25.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"GerritRingMirror","name":null,"path":"/GerritRingMirror","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/42186080?s=80&v=4"},"commit":{"message":"dependencies: bump pjproject\n\nhttps://git.jami.net/savoirfairelinux/jami-daemon/-/issues/1006\nChange-Id: If87ad01fb680cb7c9f9d324746731f96a887de9e","shortMessageHtmlLink":"dependencies: bump pjproject"}},{"before":"826f0ba4ef26479b7bc2886e4280b1d430b215f8","after":"fd29c1d63cdd9768c6a850526d4e4b285ea50b12","ref":"refs/heads/master","pushedAt":"2024-06-19T18:37:21.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"GerritRingMirror","name":null,"path":"/GerritRingMirror","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/42186080?s=80&v=4"},"commit":{"message":"upnp: refactor to improve handling of port mappings renewal\n\nThe two main changes are:\n\n1) Renewal requests are now sent for both UPnP and NAT-PMP mappings, not\n just NAT-PMP. The old code asked for an infinite lifetime when\n creating UPnP mappings and assumed that it got it, but this is not a\n safe assumption. (See GitLab issue below for more information.)\n\n2) The updateMappingList function was removed. This function used to be\n called every 30 seconds to handle a bunch of unrelated tasks (one of\n which was renewing port mappings) and generated mostly unnecessary\n network traffic every time when using UPnP (because of the call to\n pruneMappingList). These tasks are now performed separately instead\n of being bundled together, and only when needed (either based on a\n timer or on certain events occuring, depending on the task).\n\nGitLab: #31\nChange-Id: Id0f60ddb76fb8eb4517eadbb971892d125cebfc7","shortMessageHtmlLink":"upnp: refactor to improve handling of port mappings renewal"}},{"before":"1b3aba284daa96438b82d737e75efb0ebe80f31e","after":"826f0ba4ef26479b7bc2886e4280b1d430b215f8","ref":"refs/heads/master","pushedAt":"2024-05-31T20:30:21.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"GerritRingMirror","name":null,"path":"/GerritRingMirror","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/42186080?s=80&v=4"},"commit":{"message":"upnpctrl: add command to show all existing port mappings\n\nThis can be useful for debugging purposes.\n\nChange-Id: I9da11d20a7a8cd9f7d1eae9d4aee45281c5cd4ad","shortMessageHtmlLink":"upnpctrl: add command to show all existing port mappings"}},{"before":"1f92ee2ac74a58a6f01952049946af3563a5e566","after":"1b3aba284daa96438b82d737e75efb0ebe80f31e","ref":"refs/heads/master","pushedAt":"2024-05-24T13:18:48.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"GerritRingMirror","name":null,"path":"/GerritRingMirror","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/42186080?s=80&v=4"},"commit":{"message":"pupnp: fix logging error in deleteMappingsByDescription function\n\nChange-Id: I496565785da8bc6bcb2f37d0ebe5408e986f9eef","shortMessageHtmlLink":"pupnp: fix logging error in deleteMappingsByDescription function"}},{"before":"77331098ff663a5ac54fae7d0bedafe076c575a1","after":"1f92ee2ac74a58a6f01952049946af3563a5e566","ref":"refs/heads/master","pushedAt":"2024-05-22T14:53:30.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"GerritRingMirror","name":null,"path":"/GerritRingMirror","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/42186080?s=80&v=4"},"commit":{"message":"tools: correct typo in dhtnet-crtmgr README.\n\nChange-Id: Id6a0e7636d7cf3c0336bbc2324a7c4e24554beb1","shortMessageHtmlLink":"tools: correct typo in dhtnet-crtmgr README."}},{"before":"72704fc26aca5b831d569a0a6bf46c0369f13426","after":"77331098ff663a5ac54fae7d0bedafe076c575a1","ref":"refs/heads/master","pushedAt":"2024-05-17T15:10:25.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"GerritRingMirror","name":null,"path":"/GerritRingMirror","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/42186080?s=80&v=4"},"commit":{"message":"nat_pmp: fix timeout if we passed the current deadline\n\ngetnatpmprequesttimeout can return a negative timeout if we passed\nthe current deadline. This can cause poll to wait forever and\ncan cause a deadlock if no data arrives.\n\ngit.jami.net/savoirfairelinux/jami-daemon/-/issues/991\n\nChange-Id: Ie8b30f0dfb24022fe6f2d9e996dc099143b5387a","shortMessageHtmlLink":"nat_pmp: fix timeout if we passed the current deadline"}}],"hasNextPage":true,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"djE6ks8AAAAEnIOkEwA","startCursor":null,"endCursor":null}},"title":"Activity ยท savoirfairelinux/dhtnet"}