Kyle Fuller [Sat, 1 Apr 2023 12:53:15 +0000 (13:53 +0100)]
refactor: replace pragma mark with comments
Kyle Fuller [Sat, 1 Apr 2023 11:13:13 +0000 (12:13 +0100)]
refactor: split tests into multiple files
Kyle Fuller [Sat, 24 Sep 2022 12:26:31 +0000 (13:26 +0100)]
build: switch to GitHub actions
Kyle Fuller [Fri, 23 Sep 2022 22:14:20 +0000 (23:14 +0100)]
release: 1.2.2
Kyle Fuller [Sat, 24 Sep 2022 12:02:54 +0000 (13:02 +0100)]
fix: switch to less aggressive backoff algorithm
This results in retry delays of:
* 2 seconds
* 4 seconds
* 6 seconds
* 8 seconds
* 10 seconds
Kyle Fuller [Fri, 23 Sep 2022 22:12:47 +0000 (23:12 +0100)]
feat: retry on socket error
Kyle Fuller [Fri, 23 Sep 2022 21:56:15 +0000 (22:56 +0100)]
feat: retry on rate limited requests
Kyle Fuller [Fri, 23 Sep 2022 21:53:11 +0000 (22:53 +0100)]
feat: retry failed 5xx requests
Kyle Fuller [Wed, 21 Sep 2022 20:36:38 +0000 (21:36 +0100)]
test: remove loop arguments to asyncio
In Python 3.10 these have been removed.
Kyle Fuller [Wed, 21 Sep 2022 20:35:56 +0000 (21:35 +0100)]
test: account for header/payload ordering
The ordering is not stable due to the C++ implementation using a
hashmap.
Kyle Fuller [Sun, 30 May 2021 21:21:34 +0000 (22:21 +0100)]
fix: delete device when encountering 404
Kyle Fuller [Sat, 27 Feb 2021 20:07:49 +0000 (20:07 +0000)]
refactor: build HTTP Request structures
Kyle Fuller [Sat, 27 Feb 2021 19:45:28 +0000 (19:45 +0000)]
refactor: encompass URL parsing in a structure
Kyle Fuller [Wed, 6 Jan 2021 21:17:51 +0000 (21:17 +0000)]
refactor: dedupe request code
Kyle Fuller [Sat, 18 Jul 2020 17:39:03 +0000 (18:39 +0100)]
fix: clear badgge when Palaver device connects
Kyle Fuller [Sun, 5 Apr 2020 14:14:33 +0000 (15:14 +0100)]
docs: remove typos in readme
Kyle Fuller [Sun, 5 Apr 2020 13:44:53 +0000 (14:44 +0100)]
release: 1.2.0
Kyle Fuller [Sun, 5 Apr 2020 13:43:36 +0000 (14:43 +0100)]
refactor: rename PALAVER_VERSION to module version
This prevents any confusion that it reflects Palaver application version.
Kyle Fuller [Sun, 5 Apr 2020 13:35:11 +0000 (14:35 +0100)]
feat: include znc-palaver version in user-agent
Kyle Fuller [Sun, 5 Apr 2020 13:24:00 +0000 (14:24 +0100)]
feat: add support for PUSH-TOKEN
Kyle Fuller [Sun, 5 Apr 2020 13:04:52 +0000 (14:04 +0100)]
chore: don't fail when re-running tests
Kyle Fuller [Sun, 5 Apr 2020 13:03:46 +0000 (14:03 +0100)]
test: verify push notifications are sent
Dennis Collaris [Mon, 22 Jul 2019 15:35:34 +0000 (17:35 +0200)]
docs: make wget recommended download method
Dennis Collaris [Mon, 22 Jul 2019 15:19:05 +0000 (17:19 +0200)]
docs: replace latest version with auto-updated badge
Kyle Fuller [Sun, 21 Jul 2019 16:57:07 +0000 (17:57 +0100)]
feat: support cap-notify
Kyle Fuller [Mon, 17 Jun 2019 21:42:47 +0000 (22:42 +0100)]
Add integration tests (#56)
Add integration tests
Dennis Collaris [Mon, 17 Jun 2019 21:12:09 +0000 (23:12 +0200)]
ci: store test results
Kyle Fuller [Thu, 4 Apr 2019 22:36:13 +0000 (00:36 +0200)]
test: add integration tests
Kyle Fuller [Tue, 18 Sep 2018 18:48:23 +0000 (19:48 +0100)]
chore: Update PALAVER_VERSION to 1.1.2
Kyle Fuller [Tue, 18 Sep 2018 18:44:11 +0000 (19:44 +0100)]
chore: Release 1.1.2
Dennis Collaris [Tue, 18 Sep 2018 11:37:41 +0000 (13:37 +0200)]
fix: Local notifications may appear twice
Kyle Fuller [Tue, 18 Sep 2018 11:59:35 +0000 (12:59 +0100)]
Revert "fix: Local notifications may appear twice"
This reverts commit
e288377a51e314be485acab14fa27e0b79149d0c.
Dennis Collaris [Tue, 18 Sep 2018 11:37:41 +0000 (13:37 +0200)]
fix: Local notifications may appear twice
Kyle Fuller [Sat, 16 Jun 2018 15:32:07 +0000 (16:32 +0100)]
chore(ci): Fix YAML referencing missing key
Kyle Fuller [Sat, 16 Jun 2018 15:26:59 +0000 (16:26 +0100)]
chore(ci): Fix Circle CI configuration indentation
Dennis Collaris [Sat, 16 Jun 2018 13:29:21 +0000 (15:29 +0200)]
Merge pull request #54 from cocodelabs/kylef/refactor
Move to Circle CI 2.0, simplify building and test on ZNC 1.6 and 1.7
Kyle Fuller [Fri, 15 Jun 2018 22:03:24 +0000 (23:03 +0100)]
chore(ci): Build on both ZNC 1.6 and ZNC 1.7
Kyle Fuller [Fri, 15 Jun 2018 21:57:45 +0000 (22:57 +0100)]
refactor: Move to Circle CI 2.0
Kyle Fuller [Fri, 15 Jun 2018 21:55:08 +0000 (22:55 +0100)]
refactor: Simplify building by moving VERSION to source
Kyle Fuller [Wed, 14 Mar 2018 11:17:16 +0000 (11:17 +0000)]
chore: Release 1.1.1
Kyle Fuller [Mon, 29 Jan 2018 09:39:16 +0000 (09:39 +0000)]
Use CCX over CC
Fixes #52
Kyle Fuller [Thu, 25 Jan 2018 02:47:17 +0000 (02:47 +0000)]
Use CC over c++
Kyle Fuller [Sun, 10 Dec 2017 17:52:04 +0000 (09:52 -0800)]
refactor: Get hold of the network and user from the client
Kyle Fuller [Thu, 13 Apr 2017 16:06:53 +0000 (17:06 +0100)]
chore: Release 1.1.0
Kyle Fuller [Thu, 13 Apr 2017 15:16:39 +0000 (16:16 +0100)]
feat: Support disabling message previews
Kyle Fuller [Fri, 13 Jan 2017 03:04:14 +0000 (03:04 +0000)]
No longer provide push notifications for private NOTICEs
Kyle Fuller [Fri, 24 Mar 2017 13:40:45 +0000 (14:40 +0100)]
fix(make clean): Delete test-regex
Kyle Fuller [Fri, 24 Mar 2017 13:40:32 +0000 (14:40 +0100)]
fix: Don't send notification to connected devices
Kyle Fuller [Fri, 20 Jan 2017 07:56:54 +0000 (07:56 +0000)]
Merge pull request #44 from cocodelabs/decode/improve-readme
Update README.md
Dennis Collaris [Wed, 18 Jan 2017 09:24:04 +0000 (10:24 +0100)]
Update README.md
The line `cp palaver.so ~/.znc/modules` was a bit ambiguous and in the case there was no directory `modules` yet, it would create a *file* called modules instead. To circumvent this, I added `mkdir ~/.znc/modules`.
Dennis Collaris [Wed, 6 Jul 2016 14:27:38 +0000 (16:27 +0200)]
Merge pull request #41 from cocodelabs/kylef/changelog
Add a CHANGELOG
Kyle Fuller [Tue, 5 Jul 2016 23:39:44 +0000 (00:39 +0100)]
Add a CHANGELOG
Dennis Collaris [Tue, 5 Jul 2016 19:58:31 +0000 (21:58 +0200)]
Merge pull request #40 from cocodelabs/kylef/notice-auth
Only send NOTICEs after 001 (authenticated)
Kyle Fuller [Tue, 5 Jul 2016 19:50:10 +0000 (20:50 +0100)]
Only send NOTICEs after 001 (authenticated)
Dennis Collaris [Sat, 2 Jul 2016 15:56:04 +0000 (17:56 +0200)]
Merge pull request #38 from cocodelabs/kylef/remove-devices
Remove devices when API returns 401
Dennis Collaris [Sat, 2 Jul 2016 15:55:43 +0000 (17:55 +0200)]
Merge pull request #39 from cocodelabs/kylef/actions
Send notifications for actions (`/me`)
Kyle Fuller [Sat, 2 Jul 2016 10:59:29 +0000 (11:59 +0100)]
Send notifications for actions (`/me`)
Kyle Fuller [Sat, 2 Jul 2016 10:24:06 +0000 (11:24 +0100)]
Remove devices when API returns 401
Kyle Fuller [Wed, 15 Jun 2016 17:05:31 +0000 (10:05 -0700)]
Ensure that the compiler properly supports regex
Kyle Fuller [Tue, 22 Mar 2016 20:22:40 +0000 (21:22 +0100)]
[Makefile] Remove `ifneq` to be BSDmake compatible
Kyle Fuller [Sat, 24 Oct 2015 00:59:04 +0000 (17:59 -0700)]
Don't strip colour codes from messages
Kyle Fuller [Wed, 14 Oct 2015 15:30:12 +0000 (08:30 -0700)]
Catch regex errors #31
Kyle Fuller [Wed, 30 Sep 2015 23:10:49 +0000 (16:10 -0700)]
Allow nick matching if nick contains a word boundary
Fixes #30
Kyle Fuller [Wed, 30 Sep 2015 17:13:08 +0000 (10:13 -0700)]
Issue an error when installation instructions we're not followed
Kyle Fuller [Wed, 30 Sep 2015 17:02:20 +0000 (10:02 -0700)]
[README] Include debugging techniques
Kyle Fuller [Wed, 30 Sep 2015 16:18:21 +0000 (09:18 -0700)]
Release 1.0.1
Kyle Fuller [Wed, 30 Sep 2015 16:17:48 +0000 (09:17 -0700)]
Always enable regex
Kyle Fuller [Wed, 30 Sep 2015 16:15:55 +0000 (09:15 -0700)]
Support VERSION files
Kyle Fuller [Fri, 4 Sep 2015 04:12:53 +0000 (21:12 -0700)]
[HTTP] Wait for response before disconnecting
Kyle Fuller [Fri, 4 Sep 2015 04:07:14 +0000 (21:07 -0700)]
Merge pull request #26 from cocodelabs/kylef/networks
Keep track of Palaver's Client IDs
Kyle Fuller [Fri, 4 Sep 2015 03:43:59 +0000 (20:43 -0700)]
Keep track of Palaver's Client IDs
Kyle Fuller [Fri, 4 Sep 2015 03:01:41 +0000 (20:01 -0700)]
[make install] Create directory before copying
Kyle Fuller [Fri, 4 Sep 2015 02:09:10 +0000 (19:09 -0700)]
Log success/failure of HTTP requests
Kyle Fuller [Tue, 11 Aug 2015 20:36:47 +0000 (21:36 +0100)]
Module requires ZNC >= 1.6.0
Kyle Fuller [Mon, 10 Aug 2015 22:02:09 +0000 (23:02 +0100)]
Send SNI when connecting via TLS
Kyle Fuller [Fri, 10 Apr 2015 19:28:25 +0000 (20:28 +0100)]
RFC doesn't specify that HTTP GET cannot have a body
Kyle Fuller [Fri, 10 Apr 2015 19:28:05 +0000 (20:28 +0100)]
Update copyright
Kyle Fuller [Mon, 3 Aug 2015 15:48:54 +0000 (17:48 +0200)]
Merge pull request #24 from cocodelabs/kylef/circle
Build with Circle CI
Kyle Fuller [Sun, 31 May 2015 04:31:23 +0000 (21:31 -0700)]
Build with Circle CI
Kyle Fuller [Thu, 2 Apr 2015 00:35:50 +0000 (01:35 +0100)]
[palaver] Send notifications for matching NOTICEs
Kyle Fuller [Tue, 23 Dec 2014 22:24:38 +0000 (22:24 +0000)]
Depend on ZNC 1.5 for regex use
Kyle Fuller [Tue, 23 Dec 2014 22:01:47 +0000 (22:01 +0000)]
Match on word-boundaries
Closes #6
Kyle Fuller [Tue, 23 Dec 2014 20:52:27 +0000 (20:52 +0000)]
[HTTP] Don't disconnect straight away
Kyle Fuller [Fri, 10 Oct 2014 19:07:01 +0000 (21:07 +0200)]
[README] Show commands to download
Kyle Fuller [Sun, 27 Apr 2014 22:58:43 +0000 (23:58 +0100)]
Merge pull request #15 from praseodym/patch-1
Create standard .gitignore
Mark Janssen [Sat, 26 Apr 2014 22:40:28 +0000 (00:40 +0200)]
Ignore built `palaver.so` file
Kyle Fuller [Wed, 27 Nov 2013 08:03:16 +0000 (08:03 +0000)]
Strip color codes from notifications
Closes #7
Closes #14
Kyle Fuller [Fri, 27 Sep 2013 06:45:50 +0000 (07:45 +0100)]
Include a makefile to install and build the module
Kyle Fuller [Fri, 27 Sep 2013 06:45:09 +0000 (07:45 +0100)]
Include an info command to get info
Kyle Fuller [Tue, 24 Sep 2013 07:08:27 +0000 (08:08 +0100)]
Fix a bug where PATH and headers were not being sent to the server correctly
Add additional logging when we send a notification
Kyle Fuller [Fri, 13 Sep 2013 17:11:38 +0000 (18:11 +0100)]
Reset the badge when another client connects
Kyle Fuller [Fri, 30 Aug 2013 14:50:43 +0000 (15:50 +0100)]
Refactor HTTP socket into it's own class
Kyle Fuller [Fri, 30 Aug 2013 06:15:17 +0000 (07:15 +0100)]
m_pNetwork from OnUnknownUserRaw is not to be trusted
Don't rely on m_pNetwork it seems to store another user in the
OnUnknownUserRaw ZNC hook and not NULL as expected.
In certain circumstances, the client will send a palaver negotiation
before the registration to ZNC has finished. If this happens,
m_pNetwork value from the module hook could contain a different network
instead of NULL.
If m_pNetwork has another user's network, it would cause this device to be
attached to a different network.
This bug could manifest in a different way, if the network is deleted in the
meantime (once m_pNetwork is set to a network that is deleted). When this
certain code path is run again, it could cause a crash because we would try and
read from memory which has been deallocated.
You may need to delete moddata/palaver/palaver.conf to lose any incorrect
config which was caused by this bug.
Kyle Fuller [Sat, 3 Aug 2013 20:54:29 +0000 (13:54 -0700)]
Merge pull request #10 from Un1matr1x/cosmetics/wikilink
[cosmetics/wikilink] add a link to the znc-wiki-page for the module
Falk Seidel [Sat, 3 Aug 2013 19:21:09 +0000 (21:21 +0200)]
[cosmetics/wikilink] add a link to the znc-wiki-page for the module
Kyle Fuller [Mon, 1 Jul 2013 22:37:50 +0000 (23:37 +0100)]
Make sure we add row before removing tables
Kyle Fuller [Mon, 1 Jul 2013 19:29:03 +0000 (20:29 +0100)]
Persist config across module restarts
Closes #1
Kyle Fuller [Mon, 1 Jul 2013 19:28:30 +0000 (20:28 +0100)]
x
Kyle Fuller [Mon, 1 Jul 2013 19:26:09 +0000 (20:26 +0100)]
Parse push endpoint from device
Kyle Fuller [Sun, 16 Jun 2013 10:42:01 +0000 (11:42 +0100)]
Don't match on {nick}