6
1
mirror of https://git.mills.io/saltyim/saltyim.git synced 2024-06-26 00:38:22 +00:00
Commit Graph

349 Commits

Author SHA1 Message Date
lyse
c67f5c69b2 Fix typos (#186)
Disclaimer: I have no idea what I'm looking at.

Some tests fail, but I believe they have nothing to do with my changes
(fingers crossed). `make certs` doesn't work, I don't have `minica`
installed and don't want to litter my system with even more stuff. It's
bad enough that I got a shitload of Go dependencies downloaded when
running `make test`.

Co-authored-by: Lysander Trischler <twtxt@lyse.isobeef.org>
Reviewed-on: https://git.mills.io/saltyim/saltyim/pulls/186
Reviewed-by: James Mills <james@mills.io>
Co-authored-by: lyse <lyse@noreply@mills.io>
Co-committed-by: lyse <lyse@noreply@mills.io>
2023-01-27 23:24:19 +00:00
James Mills
f3b7f14e5e Add .Blobs() service object to the client for easier usage of the Blob API (#184)
Co-authored-by: James Mills <1290234+prologic@users.noreply.github.com>
Reviewed-on: https://git.mills.io/saltyim/saltyim/pulls/184
2023-01-27 23:20:49 +00:00
James Mills
ba77f9e32c Refactor read options with functional options for easier usage (#183)
Co-authored-by: James Mills <1290234+prologic@users.noreply.github.com>
Reviewed-on: https://git.mills.io/saltyim/saltyim/pulls/183
2023-01-27 23:19:52 +00:00
James Mills
57970ff67f Add resolver tests (#182)
Co-authored-by: James Mills <1290234+prologic@users.noreply.github.com>
Reviewed-on: https://git.mills.io/saltyim/saltyim/pulls/182
2023-01-27 23:14:03 +00:00
James Mills
36f9b25ec9 Add format tests (#181)
Co-authored-by: James Mills <1290234+prologic@users.noreply.github.com>
Reviewed-on: https://git.mills.io/saltyim/saltyim/pulls/181
2023-01-27 23:13:51 +00:00
James Mills
09a513e2ec Fix CI (hopefully) by splitting our build and test (#185)
Co-authored-by: James Mills <1290234+prologic@users.noreply.github.com>
Reviewed-on: https://git.mills.io/saltyim/saltyim/pulls/185
2023-01-27 14:44:14 +00:00
James Mills
14857206cb Add client e2e integration tests (#180)
Co-authored-by: James Mills <1290234+prologic@users.noreply.github.com>
Reviewed-on: https://git.mills.io/saltyim/saltyim/pulls/180
2023-01-26 22:30:16 +00:00
James Mills
8cdda7118d Fix tests (#179)
Co-authored-by: James Mills <1290234+prologic@users.noreply.github.com>
Reviewed-on: https://git.mills.io/saltyim/saltyim/pulls/179
2023-01-26 04:27:20 +00:00
James Mills
ddd16c202f Add blob service and support for signing and verifying HTTP requests (#178)
Alternative to #177

The way this works is:

Client:

- Client creates a normal `net/http.Request{}` object using the `Request()` function in `utils.go`. The `http.Request{}` object is then signed using the Client's Ed25519 private key.
- The HTTP Method and Path (_note this is important_) are hashed, as well as the request body (if any) using the FNV128a hashing algorithm.
- This hash is then signed by the Client's's Ed25519 private key.
- The resulting signature is then encoded to Base64 (_standard encoding_) and added to the HTTP headers as a `Signature:` header.
- In addition the Client's Ed25519 public key is added to the HTTP headers as `Signer:`

Server:

- The server calculates the same FNV128a hash of the HTTP Request Method and Path and the body (if any)
- The server decodes the HTTP header `Signature:`
- The server then uses the Client's Ed25519 public key in the HTTP header `Signer:` to verify the signature of the `Signature:` HTTP header which gives us back the original FNV128a hash the Client calculated for the request.
- The server then compares the Client's hash with the expected hash to see if they compare equally.

Co-authored-by: James Mills <1290234+prologic@users.noreply.github.com>
Co-authored-by: Jon Lundy <jon@xuu.cc>
Reviewed-on: https://git.mills.io/saltyim/saltyim/pulls/178
Reviewed-by: xuu <xuu@noreply@mills.io>
2023-01-25 23:05:29 +00:00
James Mills
96d8afcbef
Add package level docs 2023-01-14 12:48:22 +10:00
James Mills
2e3907a3b3
Add doc strings for all the thigns 2023-01-14 12:46:47 +10:00
James Mills
ae2199bff4
Fix version handling 2023-01-14 12:05:29 +10:00
James Mills
03c863c028
Fix version output when no version is injected (i.e: go install) 2023-01-14 10:38:53 +10:00
James Mills
a42f9e85ec
Add an improved version string contianing the commit timestamp 2023-01-14 10:27:14 +10:00
James Mills
95663345d4 Adds support for multiple chats (#174)
Closes #146

See attached screenshots.

Co-authored-by: James Mills <prologic@shortcircuit.net.au>
Co-authored-by: James Mills <1290234+prologic@users.noreply.github.com>
Reviewed-on: https://git.mills.io/saltyim/saltyim/pulls/174
Reviewed-by: xuu <xuu@noreply@mills.io>
2023-01-11 22:58:07 +00:00
James Mills
801493a85b
Update logo 2022-10-24 14:40:30 +10:00
xuu
318c3275b5 fix: Make register lookup broker if default to blank (#175)
Co-authored-by: Jon Lundy <jon@xuu.cc>
Reviewed-on: https://git.mills.io/saltyim/saltyim/pulls/175
Reviewed-by: James Mills <james@mills.io>
Co-authored-by: xuu <xuu@noreply@mills.io>
Co-committed-by: xuu <xuu@noreply@mills.io>
2022-10-15 21:45:13 +00:00
James Mills
37135ce6af
Fix possible nil map from State.Load() 2022-10-05 13:21:55 +10:00
James Mills
7c149128b4
Fix README logo by centering it 2022-09-25 13:00:55 +10:00
James Mills
c91603b11c
Fix logo extension 2022-09-25 12:58:48 +10:00
James Mills
2d6abaf918
Fix README (Fixes #74) 2022-09-25 12:52:51 +10:00
James Mills
5253269b19 Fix consistent coloring of nicks using taigrr's colorhash library (#173)
Fixes #81

Co-authored-by: James Mills <prologic@shortcircuit.net.au>
Reviewed-on: https://git.mills.io/saltyim/saltyim/pulls/173
2022-09-25 02:29:27 +00:00
Aoi Koizumi (古泉 あおい)
bc12377edb
Add OpenBSD instructions, based on my personal setup. Update docs/Deployment.md
Signed-off-by: Aoi Koizumi (هڈ¤و³‰ مپ‚مپٹمپ„) <koizumi.aoi@kyoko [dash]
project [dot] wer [dot] ee>
2022-08-27 12:25:23 +10:00
James Mills
2b32d9539f
fix: Fix links to Deployment and Development guides in README 2022-06-12 12:52:03 +10:00
James Mills
b227f57b7a
feat: Add development guide with screenshots and refactor docs 2022-06-12 12:49:19 +10:00
James Mills
7420ff47cc
Update PWA 2022-05-23 00:10:37 +10:00
James Mills
c145c27325
Update CHANGELOG for 0.0.22 2022-05-14 01:01:00 +10:00
James Mills
8a18428b87
Fix regression in 330701d causing register to no longe rwork 2022-05-14 01:00:15 +10:00
James Mills
cea7e7fcf6
Update CHANGELOG for 0.0.21 2022-05-07 08:50:44 +10:00
James Mills
9c5fec5caf Fix bug when endpoint is invalid or not configured proeprly and fails lookup (#171)
Fixes #169

This now behaves like this:

```
/Users/prologic/Projects/saltyim/saltyim # ./salty-chat write prologic@mills.io test
WARN[0000] error looking up user endpoint                error="error looking up user testing123@shortcircuit.net.au: non-2xx response received: 404 Not Found"
error initializing client: unable to find your endpoint for testing123@shortcircuit.net.au
/Users/prologic/Projects/saltyim/saltyim #
```

Co-authored-by: James Mills <prologic@shortcircuit.net.au>
Reviewed-on: https://git.mills.io/saltyim/saltyim/pulls/171
Reviewed-by: m u t e f a l l <mutefall@noreply@mills.io>
2022-05-06 22:44:06 +00:00
James Mills
dc432abdc3 Fix handling for invalid or no endpoint passed to make-user (#170)
See #169 which this patch partially fixes one issue found but not the most critical one (hence this PR does not close the issue)

Co-authored-by: James Mills <prologic@shortcircuit.net.au>
Reviewed-on: https://git.mills.io/saltyim/saltyim/pulls/170
Reviewed-by: m u t e f a l l <mutefall@noreply@mills.io>
2022-05-06 21:48:07 +00:00
James Mills
09826d2caa
Update CHANGELOG for 0.0.20 2022-05-02 12:26:27 +10:00
James Mills
ee86b96ee5
Fix goreleaser config 2022-05-02 12:24:32 +10:00
James Mills
9727105c4b
Update CHANGELOG for 0.0.20 2022-05-02 12:19:31 +10:00
mlctrez
504c66f7c1 make outbox.state same as client.state to allow persisting last message retrieved (#168)
After testing quite a bit on the saltyim/app client, I tracked down why all outbox messages were being pulled every time a new client starts up.

I believe the outbox client state should be shared with the parent client to allow the last message retrieved from the oubox to be persisted.

Co-authored-by: mlctrez <mlctrez@gmail.com>
Reviewed-on: https://git.mills.io/saltyim/saltyim/pulls/168
Reviewed-by: James Mills <james@mills.io>
Co-authored-by: mlctrez <mlctrez@noreply@mills.io>
Co-committed-by: mlctrez <mlctrez@noreply@mills.io>
2022-04-29 21:59:40 +00:00
m u t e f a l l
12fc010ce7 docker swarm deployment and dns documentation (#167)
this changeset addresses the need for a simple docker swarm deployment and setup of dns records on cloudflare.

Co-authored-by: m u t e f a l l <mutefall@noreply.mills.io>
Reviewed-on: https://git.mills.io/saltyim/saltyim/pulls/167
Reviewed-by: James Mills <james@mills.io>
Co-authored-by: m u t e f a l l <mutefall@noreply@mills.io>
Co-committed-by: m u t e f a l l <mutefall@noreply@mills.io>
2022-04-26 01:44:51 +00:00
James Mills
af206c0ace
Fix certs Makefile target for local dev and fix alternate subject name 2022-04-15 18:11:46 +10:00
James Mills
994895681d Fix handling for bad endpoints from mixbehaving clients proxying send requests (#163)
Co-authored-by: James Mills <prologic@shortcircuit.net.au>
Reviewed-on: https://git.mills.io/saltyim/saltyim/pulls/163
Reviewed-by: xuu <xuu@noreply@mills.io>
2022-04-11 22:09:35 +00:00
Sheldon Smith
823c112547 CSS fixes for desktop (#161)
As outlined in [issue #155](https://git.mills.io/saltyim/saltyim/issues/155) and will also improve things such as overflow not working (there's currently no wrapping on overflow) and changing the sidebar and text input to be fixed so only the chatbox scrolls and the text input doesn't overflow off of the view area.

Reviewed-on: https://git.mills.io/saltyim/saltyim/pulls/161
Reviewed-by: James Mills <james@mills.io>
Co-authored-by: Sheldon Smith <screem@noreply@mills.io>
Co-committed-by: Sheldon Smith <screem@noreply@mills.io>
2022-04-11 09:59:52 +00:00
mlctrez
364743abf5 fix issue with shared outbox and endpoint modification (#160)
Fixes two issues

cli.me.key.Private() was always nil, outbox hash was the same for everyone 👎

client.Outbox() modified Path variable on endpoint url

Co-authored-by: mlctrez <mlctrez@gmail.com>
Reviewed-on: https://git.mills.io/saltyim/saltyim/pulls/160
Reviewed-by: xuu <xuu@noreply@mills.io>
Reviewed-by: James Mills <james@mills.io>
Co-authored-by: mlctrez <mlctrez@noreply@mills.io>
Co-committed-by: mlctrez <mlctrez@noreply@mills.io>
2022-04-08 15:30:02 +00:00
James Mills
27473cd84a Update the Desktop breakpoint to by 768px (#158)
Co-authored-by: James Mills <prologic@shortcircuit.net.au>
Reviewed-on: https://git.mills.io/saltyim/saltyim/pulls/158
Reviewed-by: mlctrez <mlctrez@noreply@mills.io>
Co-authored-by: James Mills <james@mills.io>
Co-committed-by: James Mills <james@mills.io>
2022-04-08 12:45:02 +00:00
mlctrez
fcc4f53f20 navigation drawer is now fixed for > 900px windows (#157)
Co-authored-by: mlctrez <mlctrez@gmail.com>
Reviewed-on: https://git.mills.io/saltyim/saltyim/pulls/157
Reviewed-by: James Mills <james@mills.io>
Co-authored-by: mlctrez <mlctrez@noreply@mills.io>
Co-committed-by: mlctrez <mlctrez@noreply@mills.io>
2022-04-07 03:43:09 +00:00
James Mills
81935022c1
Update CHANGELOG for 0.0.1 2022-04-06 09:30:43 +10:00
James Mills
eece0a7abe
Update to msgbus v0.1.19 2022-04-05 16:12:59 +10:00
James Mills
fce6c97259 Upgrade to msgbus v0.1.18 (#153)
Co-authored-by: James Mills <prologic@shortcircuit.net.au>
Reviewed-on: https://git.mills.io/saltyim/saltyim/pulls/153
2022-04-05 03:10:29 +00:00
James Mills
d90292bc8e fix_case_insensitive_addrs (#148)
Fixes #144

Co-authored-by: James Mills <prologic@shortcircuit.net.au>
Reviewed-on: https://git.mills.io/saltyim/saltyim/pulls/148
Reviewed-by: xuu <xuu@noreply@mills.io>
Co-authored-by: James Mills <james@mills.io>
Co-committed-by: James Mills <james@mills.io>
2022-04-04 16:09:27 +00:00
James Mills
832fb124fe Improve the registration process, add feedback to the PWA's UX adn use an API for registration (#147)
Co-authored-by: James Mills <prologic@shortcircuit.net.au>
Reviewed-on: https://git.mills.io/saltyim/saltyim/pulls/147
Reviewed-by: xuu <xuu@noreply@mills.io>
Co-authored-by: James Mills <james@mills.io>
Co-committed-by: James Mills <james@mills.io>
2022-04-04 16:04:38 +00:00
James Mills
330701da86 Fix SendToAddr to error when no sender configured (#149)
Fixes #145

Co-authored-by: James Mills <prologic@shortcircuit.net.au>
Reviewed-on: https://git.mills.io/saltyim/saltyim/pulls/149
Reviewed-by: xuu <xuu@noreply@mills.io>
Co-authored-by: James Mills <james@mills.io>
Co-committed-by: James Mills <james@mills.io>
2022-04-04 15:38:59 +00:00
James Mills
f3a847674c Add support for state for Service{} (#142)
Co-authored-by: James Mills <prologic@shortcircuit.net.au>
Reviewed-on: https://git.mills.io/saltyim/saltyim/pulls/142
2022-04-04 03:42:54 +00:00
James Mills
35aa48c273
Upgrade to msgbus v0.1.17 2022-04-04 12:39:45 +10:00