{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":28573480,"defaultBranch":"master","name":"pbot","ownerLogin":"pragma-","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2014-12-28T22:53:31.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/1725098?v=4","public":true,"private":false,"isOrgOwned":false},"refInfo":{"name":"","listCacheKey":"v0:1419807531.0","currentOid":""},"activityList":{"items":[{"before":"002f7a23d12252cf26615a6b8915d08977e223fa","after":"635f2c5a006f60f0bb66e9042da5c3a1864f3587","ref":"refs/heads/master","pushedAt":"2024-09-19T20:57:26.000Z","pushType":"push","commitsCount":5,"pusher":{"login":"pragma-","name":"Pragmatic Software","path":"/pragma-","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1725098?s=80&v=4"},"commit":{"message":"Update factoids","shortMessageHtmlLink":"Update factoids"}},{"before":"2cce930d47f7387e81535c5786a08677d0d7892d","after":"002f7a23d12252cf26615a6b8915d08977e223fa","ref":"refs/heads/master","pushedAt":"2024-09-09T00:17:55.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"pragma-","name":"Pragmatic Software","path":"/pragma-","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1725098?s=80&v=4"},"commit":{"message":"Plugin/AntiHello: always send private message warning","shortMessageHtmlLink":"Plugin/AntiHello: always send private message warning"}},{"before":"13c117e36020b093779a7532564eefb8643e46bc","after":"2cce930d47f7387e81535c5786a08677d0d7892d","ref":"refs/heads/master","pushedAt":"2024-08-19T18:38:15.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"pragma-","name":"Pragmatic Software","path":"/pragma-","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1725098?s=80&v=4"},"commit":{"message":"Update factoids (set `keep-escapes 1` to preserve backslashes on some commands)","shortMessageHtmlLink":"Update factoids (set keep-escapes 1 to preserve backslashes on some…"}},{"before":"1b9e482396b410bd9964a693195f3fea1583b812","after":"13c117e36020b093779a7532564eefb8643e46bc","ref":"refs/heads/master","pushedAt":"2024-08-18T05:17:57.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"pragma-","name":"Pragmatic Software","path":"/pragma-","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1725098?s=80&v=4"},"commit":{"message":"pbot-vm: remove/replace `-Wno-unused` with `-Wno-unused-parameter`","shortMessageHtmlLink":"pbot-vm: remove/replace -Wno-unused with -Wno-unused-parameter"}},{"before":"ac8753f9625f30e095c1d85e08293e09cd6c5ed7","after":"1b9e482396b410bd9964a693195f3fea1583b812","ref":"refs/heads/master","pushedAt":"2024-08-13T07:07:20.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"pragma-","name":"Pragmatic Software","path":"/pragma-","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1725098?s=80&v=4"},"commit":{"message":"Plugin/Wordle: refactor how wordlist is (not) reloaded","shortMessageHtmlLink":"Plugin/Wordle: refactor how wordlist is (not) reloaded"}},{"before":"b31aa7a8164c3d145376dce930efebfd2ddc5820","after":"ac8753f9625f30e095c1d85e08293e09cd6c5ed7","ref":"refs/heads/master","pushedAt":"2024-08-12T19:43:28.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"pragma-","name":"Pragmatic Software","path":"/pragma-","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1725098?s=80&v=4"},"commit":{"message":"Plugin/Wordle: do not reload words from disk until wordlist changes; add british and urban to supp for English lists","shortMessageHtmlLink":"Plugin/Wordle: do not reload words from disk until wordlist changes; …"}},{"before":"de42067e2877bdcf0fe9fe2f9e5a21e414b643d2","after":"b31aa7a8164c3d145376dce930efebfd2ddc5820","ref":"refs/heads/master","pushedAt":"2024-08-10T21:03:06.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"pragma-","name":"Pragmatic Software","path":"/pragma-","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1725098?s=80&v=4"},"commit":{"message":"AntiAway/AntiHello: added \"2nd offense\" text to warning kick message","shortMessageHtmlLink":"AntiAway/AntiHello: added \"2nd offense\" text to warning kick message"}},{"before":"1986da2a4b63c0a8f648c80f33483802c39526e6","after":"de42067e2877bdcf0fe9fe2f9e5a21e414b643d2","ref":"refs/heads/master","pushedAt":"2024-08-07T22:51:18.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"pragma-","name":"Pragmatic Software","path":"/pragma-","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1725098?s=80&v=4"},"commit":{"message":"Plugin/AntiHello: update greeting regex","shortMessageHtmlLink":"Plugin/AntiHello: update greeting regex"}},{"before":"dd4be2184c8f94d20989a523869342080486abc3","after":"1986da2a4b63c0a8f648c80f33483802c39526e6","ref":"refs/heads/master","pushedAt":"2024-08-07T22:29:24.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"pragma-","name":"Pragmatic Software","path":"/pragma-","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1725098?s=80&v=4"},"commit":{"message":"Plugin/AntiHello: update greeting regex","shortMessageHtmlLink":"Plugin/AntiHello: update greeting regex"}},{"before":"e96e48562c1c303dd7555939c380e20cdd4f7004","after":"dd4be2184c8f94d20989a523869342080486abc3","ref":"refs/heads/master","pushedAt":"2024-08-07T21:48:12.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"pragma-","name":"Pragmatic Software","path":"/pragma-","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1725098?s=80&v=4"},"commit":{"message":"Add Plugins/AntiHello to warn about stand-alone greetings in large channels","shortMessageHtmlLink":"Add Plugins/AntiHello to warn about stand-alone greetings in large ch…"}},{"before":"aa7ae9a78ac81000928f14d4d7493e8045a55d05","after":"e96e48562c1c303dd7555939c380e20cdd4f7004","ref":"refs/heads/master","pushedAt":"2024-08-03T07:00:15.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"pragma-","name":"Pragmatic Software","path":"/pragma-","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1725098?s=80&v=4"},"commit":{"message":"Plugin/WordMorph: improve start message","shortMessageHtmlLink":"Plugin/WordMorph: improve start message"}},{"before":"58303f6b97cae77e16a7e8f39227b66481181a3e","after":"aa7ae9a78ac81000928f14d4d7493e8045a55d05","ref":"refs/heads/master","pushedAt":"2024-08-03T06:58:48.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"pragma-","name":"Pragmatic Software","path":"/pragma-","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1725098?s=80&v=4"},"commit":{"message":"Plugin/WordMorph: improve start message","shortMessageHtmlLink":"Plugin/WordMorph: improve start message"}},{"before":"4cf8583a1e990c6d0bbf32e14b58148651a119f8","after":"58303f6b97cae77e16a7e8f39227b66481181a3e","ref":"refs/heads/master","pushedAt":"2024-07-23T18:38:23.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"pragma-","name":"Pragmatic Software","path":"/pragma-","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1725098?s=80&v=4"},"commit":{"message":"Plugin/AntiAway: unregister irc.public when unloading","shortMessageHtmlLink":"Plugin/AntiAway: unregister irc.public when unloading"}},{"before":"9bae80aae5c113dda1ad73ecfd2282ddf5b03d8e","after":"4cf8583a1e990c6d0bbf32e14b58148651a119f8","ref":"refs/heads/master","pushedAt":"2024-07-22T20:56:51.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"pragma-","name":"Pragmatic Software","path":"/pragma-","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1725098?s=80&v=4"},"commit":{"message":"Plugin/AntiAway: improve logic of temp-ban warning","shortMessageHtmlLink":"Plugin/AntiAway: improve logic of temp-ban warning"}},{"before":"a0a61ff0d572545adcb8667bbab9f4fafe0b9bb7","after":"9bae80aae5c113dda1ad73ecfd2282ddf5b03d8e","ref":"refs/heads/master","pushedAt":"2024-07-22T20:53:02.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"pragma-","name":"Pragmatic Software","path":"/pragma-","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1725098?s=80&v=4"},"commit":{"message":"Plugin/AntiAway: warn about temp-ban only for the first offense","shortMessageHtmlLink":"Plugin/AntiAway: warn about temp-ban only for the first offense"}},{"before":"1e668a601243dc61156f95ecef8446fc747a8c83","after":"a0a61ff0d572545adcb8667bbab9f4fafe0b9bb7","ref":"refs/heads/master","pushedAt":"2024-07-22T20:47:38.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"pragma-","name":"Pragmatic Software","path":"/pragma-","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1725098?s=80&v=4"},"commit":{"message":"Plugin/AntiAway: monitor PRIVMSG for away nicks","shortMessageHtmlLink":"Plugin/AntiAway: monitor PRIVMSG for away nicks"}},{"before":"5988d3d11d078b31ea4800061882d4586803d3e9","after":"1e668a601243dc61156f95ecef8446fc747a8c83","ref":"refs/heads/master","pushedAt":"2024-07-18T23:11:13.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"pragma-","name":"Pragmatic Software","path":"/pragma-","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1725098?s=80&v=4"},"commit":{"message":"Update doc/Commands.md and factoids","shortMessageHtmlLink":"Update doc/Commands.md and factoids"}},{"before":"88518a21df6e12d43c53be3ced8f876bb6422936","after":"5988d3d11d078b31ea4800061882d4586803d3e9","ref":"refs/heads/master","pushedAt":"2024-07-16T01:54:24.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"pragma-","name":"Pragmatic Software","path":"/pragma-","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1725098?s=80&v=4"},"commit":{"message":"Update factoids","shortMessageHtmlLink":"Update factoids"}},{"before":"6ac157d42da7dc38264cfe509cc7d6a56598841b","after":"88518a21df6e12d43c53be3ced8f876bb6422936","ref":"refs/heads/master","pushedAt":"2024-07-11T20:54:48.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"pragma-","name":"Pragmatic Software","path":"/pragma-","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1725098?s=80&v=4"},"commit":{"message":"Update factoids","shortMessageHtmlLink":"Update factoids"}},{"before":"c1847efc358626e210bad7dfacadf4f27d149e87","after":"6ac157d42da7dc38264cfe509cc7d6a56598841b","ref":"refs/heads/master","pushedAt":"2024-07-10T19:47:05.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"pragma-","name":"Pragmatic Software","path":"/pragma-","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1725098?s=80&v=4"},"commit":{"message":"applets/c2english: make some rules more aware of expressions","shortMessageHtmlLink":"applets/c2english: make some rules more aware of expressions"}},{"before":"ff31d710240c79a0e02baf7eafb8013261739c63","after":"c1847efc358626e210bad7dfacadf4f27d149e87","ref":"refs/heads/master","pushedAt":"2024-06-29T19:04:50.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"pragma-","name":"Pragmatic Software","path":"/pragma-","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1725098?s=80&v=4"},"commit":{"message":"applets/wiktionary: remove pluralization of parts of speech","shortMessageHtmlLink":"applets/wiktionary: remove pluralization of parts of speech"}},{"before":"dfd56aed57eff2c7041e6a46b84340df69c47bad","after":"ff31d710240c79a0e02baf7eafb8013261739c63","ref":"refs/heads/master","pushedAt":"2024-06-29T18:33:19.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"pragma-","name":"Pragmatic Software","path":"/pragma-","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1725098?s=80&v=4"},"commit":{"message":"applets/wiktionary: add part of speech filter option","shortMessageHtmlLink":"applets/wiktionary: add part of speech filter option"}},{"before":"abbe785911b155190e2dfef6a096b369ec5913ff","after":"dfd56aed57eff2c7041e6a46b84340df69c47bad","ref":"refs/heads/master","pushedAt":"2024-06-29T01:51:45.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"pragma-","name":"Pragmatic Software","path":"/pragma-","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1725098?s=80&v=4"},"commit":{"message":"Plugin/AntiRepeat: increase min length to allow \"thanks\"/\"thank you\"","shortMessageHtmlLink":"Plugin/AntiRepeat: increase min length to allow \"thanks\"/\"thank you\""}},{"before":"6722fd7f8d7373bcdaac174a745048a8374d0e84","after":"abbe785911b155190e2dfef6a096b369ec5913ff","ref":"refs/heads/master","pushedAt":"2024-06-23T19:28:03.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"pragma-","name":"Pragmatic Software","path":"/pragma-","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1725098?s=80&v=4"},"commit":{"message":"doc/QuickStart.md: minor tweak to login section","shortMessageHtmlLink":"doc/QuickStart.md: minor tweak to login section"}},{"before":"442377d9774f5277d7b487ffd89488f234fbbdf8","after":"6722fd7f8d7373bcdaac174a745048a8374d0e84","ref":"refs/heads/master","pushedAt":"2024-06-23T05:38:24.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"pragma-","name":"Pragmatic Software","path":"/pragma-","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1725098?s=80&v=4"},"commit":{"message":"Store user passwords as salted hash digests\n\nThis was way overdue. User passwords are no longer stored as cleartext.\n\nWhen PBot is restarted after applying this commit, all stored passwords will\nbe converted to salted hash digests.\n\nThe `useradd`, `userset` and `my` commands will now hash passwords.\n\nWhy did it take me so long to finally get around to hashing passwords\nproperly, you might ask. The reason why this wasn't done sooner is because\nall of my users used hostmask-based `autologin`. The passwords that PBot\nrandomly generated were ignored and never used.\n\nI do regret that it took me so long to get around to this, for those of you\nwho might be using custom passwords instead of hostmask-based `autologin`.","shortMessageHtmlLink":"Store user passwords as salted hash digests"}},{"before":"784c2508e52d543b5ef00c5c42b002a63eadaf79","after":"442377d9774f5277d7b487ffd89488f234fbbdf8","ref":"refs/heads/master","pushedAt":"2024-06-23T05:21:40.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"pragma-","name":"Pragmatic Software","path":"/pragma-","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1725098?s=80&v=4"},"commit":{"message":"Store user passwords as salted hash digests\n\nThis was way overdue. User passwords are no longer stored as cleartext.\n\nWhen PBot is restarted after applying this commit, all stored passwords will\nbe converted to salted hash digests.\n\nThe `useradd`, `userset` and `my` commands will now hash passwords.","shortMessageHtmlLink":"Store user passwords as salted hash digests"}},{"before":"3cc5424840d910a6a377039863f0c89ca3b0cec6","after":"784c2508e52d543b5ef00c5c42b002a63eadaf79","ref":"refs/heads/master","pushedAt":"2024-06-12T21:22:32.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"pragma-","name":"Pragmatic Software","path":"/pragma-","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1725098?s=80&v=4"},"commit":{"message":"c2english/CGrammar: fix translation of `[static n]` in array parameters","shortMessageHtmlLink":"c2english/CGrammar: fix translation of [static n] in array parameters"}},{"before":"0786ee03a3f52b7cda2bd34bc33bd4a82ec0117b","after":"3cc5424840d910a6a377039863f0c89ca3b0cec6","ref":"refs/heads/master","pushedAt":"2024-06-12T21:21:55.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"pragma-","name":"Pragmatic Software","path":"/pragma-","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1725098?s=80&v=4"},"commit":{"message":"c2english/CGrammar: fix transation of `[static n]` in array parameters","shortMessageHtmlLink":"c2english/CGrammar: fix transation of [static n] in array parameters"}},{"before":"da75397b513955fefdfd6f745512c3917d597dd9","after":"0786ee03a3f52b7cda2bd34bc33bd4a82ec0117b","ref":"refs/heads/master","pushedAt":"2024-06-08T21:24:28.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"pragma-","name":"Pragmatic Software","path":"/pragma-","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1725098?s=80&v=4"},"commit":{"message":"applets/wiktionary.pl: show disambiguation when word is not found\n\nRequires latest version of https://github.com/pragma-/WiktionaryParser","shortMessageHtmlLink":"applets/wiktionary.pl: show disambiguation when word is not found"}},{"before":"9b1687d46c34f06770fb0ee630060e267eb36830","after":"da75397b513955fefdfd6f745512c3917d597dd9","ref":"refs/heads/master","pushedAt":"2024-06-08T16:12:29.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"pragma-","name":"Pragmatic Software","path":"/pragma-","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1725098?s=80&v=4"},"commit":{"message":"applets/wiktionary.pl: show list of languages when entry is not found\n\nRequires latest version of https://github.com/pragma-/WiktionaryParser","shortMessageHtmlLink":"applets/wiktionary.pl: show list of languages when entry is not found"}}],"hasNextPage":true,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"Y3Vyc29yOnYyOpK7MjAyNC0wOS0xOVQyMDo1NzoyNi4wMDAwMDBazwAAAAS7UECP","startCursor":"Y3Vyc29yOnYyOpK7MjAyNC0wOS0xOVQyMDo1NzoyNi4wMDAwMDBazwAAAAS7UECP","endCursor":"Y3Vyc29yOnYyOpK7MjAyNC0wNi0wOFQxNjoxMjoyOS4wMDAwMDBazwAAAARf_SRg"}},"title":"Activity · pragma-/pbot"}