825 Commits

Author SHA1 Message Date
root
86b1d27afb 破壊する
git-svn-id: file:///srv/svn/repo/suika/trunk@825 f0ae65fe-ee39-954e-97ec-027ff2717ef4
2025-04-17 18:34:17 +00:00
yakumo.izuru
93fe83f4af Remove spurious part from the docs
Signed-off-by: Izuru Yakumo <yakumo.izuru@chaotic.ninja>

git-svn-id: file:///srv/svn/repo/suika/trunk@824 f0ae65fe-ee39-954e-97ec-027ff2717ef4
2023-09-15 04:24:25 +00:00
yakumo.izuru
66c3c63129 Use asciidoctor for generating manpages.
Rename suikactl to suikadb.

Signed-off-by: Izuru Yakumo <yakumo.izuru@chaotic.ninja>

git-svn-id: file:///srv/svn/repo/suika/trunk@823 f0ae65fe-ee39-954e-97ec-027ff2717ef4
2023-09-15 04:20:11 +00:00
yakumo.izuru
065e07da4b Prefer immortal.run over runit and rc.d, use vendored modules
for convenience.

Signed-off-by: Izuru Yakumo <yakumo.izuru@chaotic.ninja>

git-svn-id: file:///srv/svn/repo/suika/trunk@822 f0ae65fe-ee39-954e-97ec-027ff2717ef4
2023-08-20 14:36:11 +00:00
yakumo.izuru
a13ad81a30 Move runit script to rc.d, remove duplicate service unit
Signed-off-by: Izuru Yakumo <yakumo.izuru@chaotic.ninja>

git-svn-id: file:///srv/svn/repo/suika/trunk@821 f0ae65fe-ee39-954e-97ec-027ff2717ef4
2023-06-10 03:03:05 +00:00
yakumo.izuru
be0acf9206 Allow the configuration directory to be elsewhere, add
system startup scripts

Signed-off-by: Izuru Yakumo <yakumo.izuru@chaotic.ninja>

git-svn-id: file:///srv/svn/repo/suika/trunk@820 f0ae65fe-ee39-954e-97ec-027ff2717ef4
2023-06-10 02:48:43 +00:00
yakumo.izuru
4f6ddb99ae Same logic as c5fa22a71d but in reverse
Signed-off-by: Izuru Yakumo <yakumo.izuru@chaotic.ninja>

git-svn-id: file:///srv/svn/repo/suika/trunk@819 f0ae65fe-ee39-954e-97ec-027ff2717ef4
2023-05-19 19:45:14 +00:00
yakumo.izuru
cc8929cae4 Do some tidying
Signed-off-by: Izuru Yakumo <yakumo.izuru@chaotic.ninja>

git-svn-id: file:///srv/svn/repo/suika/trunk@818 f0ae65fe-ee39-954e-97ec-027ff2717ef4
2023-05-05 00:50:19 +00:00
yakumo.izuru
bb1a214ab8 See you in Hell, scdoc!
Signed-off-by: Izuru Yakumo <yakumo.izuru@chaotic.ninja>

git-svn-id: file:///srv/svn/repo/suika/trunk@817 f0ae65fe-ee39-954e-97ec-027ff2717ef4
2023-05-02 23:49:50 +00:00
yakumo.izuru
2322e7ecc5 Attempt to reduce executable sizes further
Signed-off-by: Izuru Yakumo <yakumo.izuru@chaotic.ninja>

git-svn-id: file:///srv/svn/repo/suika/trunk@816 f0ae65fe-ee39-954e-97ec-027ff2717ef4
2023-04-28 23:23:45 +00:00
yakumo.izuru
0174b40aca Support existing Postgres database schemas (if switching from SQLite)
and other minor changes.

Signed-off-by: Izuru Yakumo <yakumo.izuru@chaotic.ninja>

git-svn-id: file:///srv/svn/repo/suika/trunk@815 f0ae65fe-ee39-954e-97ec-027ff2717ef4
2023-04-28 22:23:47 +00:00
koizumi.aoi
3a3759687a Enable cross-compilation via the usual GOARCH/GOOS pair for use with make, also enable static builds
Signed-off-by: Aoi K <koizumi.aoi@chaotic.ninja>

git-svn-id: file:///srv/svn/repo/suika/trunk@814 f0ae65fe-ee39-954e-97ec-027ff2717ef4
2023-03-23 22:05:09 +00:00
koizumi.aoi
94fa2da825 feat: replace mattn/go-sqlite3 with modernc.org/sqlite - this also means CGo is not needed anymore
git-svn-id: file:///srv/svn/repo/suika/trunk@813 f0ae65fe-ee39-954e-97ec-027ff2717ef4
2023-03-23 19:27:39 +00:00
koizumi.aoi
aeb7bd11ab Update README
Signed-off-by: Aoi K <koizumi.aoi@chaotic.ninja>

git-svn-id: file:///srv/svn/repo/suika/trunk@812 f0ae65fe-ee39-954e-97ec-027ff2717ef4
2023-03-22 19:06:45 +00:00
koizumi.aoi
5a3c9201cf Add package description for godoc
Signed-off-by: Aoi K <koizumi.aoi@chaotic.ninja>

git-svn-id: file:///srv/svn/repo/suika/trunk@811 f0ae65fe-ee39-954e-97ec-027ff2717ef4
2023-03-22 19:02:34 +00:00
koizumi.aoi
f8789c45a1 Add a 'version' subcommand to suikactl, show version on suika daemon
startup.

Signed-off-by: Aoi K <koizumi.aoi@chaotic.ninja>

git-svn-id: file:///srv/svn/repo/suika/trunk@810 f0ae65fe-ee39-954e-97ec-027ff2717ef4
2023-03-22 12:17:57 +00:00
koizumi.aoi
41abaffd5e Use internal versioning
Signed-off-by: Aoi K <koizumi.aoi@chaotic.ninja>

git-svn-id: file:///srv/svn/repo/suika/trunk@809 f0ae65fe-ee39-954e-97ec-027ff2717ef4
2023-03-22 11:47:03 +00:00
koizumi.aoi
96f31cd0d1 Update go.mod
Signed-off-by: Aoi K <koizumi.aoi@chaotic.ninja>

git-svn-id: file:///srv/svn/repo/suika/trunk@808 f0ae65fe-ee39-954e-97ec-027ff2717ef4
2023-03-22 01:16:21 +00:00
koizumi.aoi
a125e80bd0 Use vanity module path
Signed-off-by: Aoi K <koizumi.aoi@chaotic.ninja>

git-svn-id: file:///srv/svn/repo/suika/trunk@807 f0ae65fe-ee39-954e-97ec-027ff2717ef4
2023-03-21 23:43:07 +00:00
koizumi.aoi
d00c9a97c1 Removed build.sr.ht stuff, update Makefile
Signed-off-by: Aoi K <koizumi.aoi@chaotic.ninja>

git-svn-id: file:///srv/svn/repo/suika/trunk@806 f0ae65fe-ee39-954e-97ec-027ff2717ef4
2023-03-21 11:06:12 +00:00
koizumi.aoi
7dd3f69a74 You know the drill
Signed-off-by: Aoi K <koizumi.aoi@chaotic.ninja>

git-svn-id: file:///srv/svn/repo/suika/trunk@805 f0ae65fe-ee39-954e-97ec-027ff2717ef4
2023-03-21 04:54:42 +00:00
koizumi.aoi
cd99ccc1de Drunk as I like
Signed-off-by: Aoi K <koizumi.aoi@chaotic.ninja>

git-svn-id: file:///srv/svn/repo/suika/trunk@804 f0ae65fe-ee39-954e-97ec-027ff2717ef4
2023-03-21 04:45:19 +00:00
koizumi.aoi
6de8b9c247 Add runit and systemd unit files
Signed-off-by: Aoi K <koizumi.aoi@chaotic.ninja>

git-svn-id: file:///srv/svn/repo/suika/trunk@803 f0ae65fe-ee39-954e-97ec-027ff2717ef4
2023-03-21 03:16:08 +00:00
koizumi.aoi
c00353ac95 Update references
Signed-off-by: Aoi K <koizumi.aoi@chaotic.ninja>

git-svn-id: file:///srv/svn/repo/suika/trunk@802 f0ae65fe-ee39-954e-97ec-027ff2717ef4
2023-03-21 03:06:55 +00:00
koizumi.aoi
56f5116d21 Rename to suika
Signed-off-by: Aoi K <koizumi.aoi@chaotic.ninja>

git-svn-id: file:///srv/svn/repo/suika/trunk@801 f0ae65fe-ee39-954e-97ec-027ff2717ef4
2023-03-21 03:00:04 +00:00
koizumi.aoi
730917adc3 dev: move contrib/znc-import.go to cmd/soju-znc-import
git-svn-id: file:///srv/svn/repo/suika/trunk@800 f0ae65fe-ee39-954e-97ec-027ff2717ef4
2023-03-21 02:29:26 +00:00
koizumi.aoi
5a4d2f9132 Add -v to $GOFLAGS. Scratch the original module URI with another one.
git-svn-id: file:///srv/svn/repo/suika/trunk@799 f0ae65fe-ee39-954e-97ec-027ff2717ef4
2023-03-21 02:20:07 +00:00
koizumi.aoi
49282469d4 dev: move import uris to this repository
git-svn-id: file:///srv/svn/repo/suika/trunk@798 f0ae65fe-ee39-954e-97ec-027ff2717ef4
2023-03-21 01:50:04 +00:00
contact
4c38415d5e contrib/clients: add goguma
git-svn-id: file:///srv/svn/repo/suika/trunk@797 f0ae65fe-ee39-954e-97ec-027ff2717ef4
2022-03-05 22:35:17 +00:00
contact
745c1ed1c3 contrib/clients: warn about catgirl
git-svn-id: file:///srv/svn/repo/suika/trunk@796 f0ae65fe-ee39-954e-97ec-027ff2717ef4
2022-03-05 22:35:17 +00:00
contact
5716e2cdca doc/ext: add README
All authors have acknowledged the dual license.

The second license is the same as the one used by the IRCv3 working
group.

git-svn-id: file:///srv/svn/repo/suika/trunk@795 f0ae65fe-ee39-954e-97ec-027ff2717ef4
2022-03-04 09:36:41 +00:00
contact
f617c794b7 downstream: disallow '.' in nicknames
See [1] and [2].

[1]: https://github.com/ircdocs/modern-irc/pull/148
[2]: eff6dd242b/irc/strings.go (L29)

git-svn-id: file:///srv/svn/repo/suika/trunk@794 f0ae65fe-ee39-954e-97ec-027ff2717ef4
2022-03-03 09:54:21 +00:00
contact
8b3b076e5e downstream: re-format illegalNickChars doc comment
git-svn-id: file:///srv/svn/repo/suika/trunk@793 f0ae65fe-ee39-954e-97ec-027ff2717ef4
2022-03-03 09:53:33 +00:00
contact
2c8867bdb0 downstream: fix network name msimatch check being too strict
The network name can be set via BOUNCER BIND. In that case we
don't want to error out when fallbackNetworkName == "".

git-svn-id: file:///srv/svn/repo/suika/trunk@792 f0ae65fe-ee39-954e-97ec-027ff2717ef4
2022-03-03 08:08:51 +00:00
contact
d2da74aa69 Upgrade dependencies
git-svn-id: file:///srv/svn/repo/suika/trunk@791 f0ae65fe-ee39-954e-97ec-027ff2717ef4
2022-03-03 08:00:36 +00:00
contact
a4fa4b48f7 downstream: fail on client or network name mismatch
This probably indicates a mis-configuration.

git-svn-id: file:///srv/svn/repo/suika/trunk@790 f0ae65fe-ee39-954e-97ec-027ff2717ef4
2022-03-03 07:50:37 +00:00
contact
0327068bdd downstream: be less strict when picking up client name
Allow e.g. the SASL username to contain "username/network" and the
raw username to contain "username@client", for instance.

git-svn-id: file:///srv/svn/repo/suika/trunk@789 f0ae65fe-ee39-954e-97ec-027ff2717ef4
2022-03-03 07:35:34 +00:00
contact
488107b3d4 downstream: panic when registering twice
This would be a soju bug.

git-svn-id: file:///srv/svn/repo/suika/trunk@788 f0ae65fe-ee39-954e-97ec-027ff2717ef4
2022-03-03 07:33:10 +00:00
contact
cd5d76be0e msgstore_fs: fix direct message targets
When fetching messages via draft/chathistory from a conversation
with another user, soju would send the following:

    :sender PRIVMSG sender :hey

instead of

    :sender PRIVMSG recipient :hey

because the file-system message store format doesn't contain the
original PRIVMSG target.

Fix this by doing some guesswork.

git-svn-id: file:///srv/svn/repo/suika/trunk@787 f0ae65fe-ee39-954e-97ec-027ff2717ef4
2022-02-25 20:05:10 +00:00
contact
d09f594aac irc: simplify isHighlight
git-svn-id: file:///srv/svn/repo/suika/trunk@786 f0ae65fe-ee39-954e-97ec-027ff2717ef4
2022-02-25 10:32:09 +00:00
contact
cdb3bfe2a4 irc: add isHighlight tests
git-svn-id: file:///srv/svn/repo/suika/trunk@785 f0ae65fe-ee39-954e-97ec-027ff2717ef4
2022-02-25 10:31:41 +00:00
contact
3dbc059a7b Introduce formatServerTime
It's too easy to forget to convert to UTC.

git-svn-id: file:///srv/svn/repo/suika/trunk@784 f0ae65fe-ee39-954e-97ec-027ff2717ef4
2022-02-16 13:45:09 +00:00
contact
37cc949032 Ignore READ commands for service
git-svn-id: file:///srv/svn/repo/suika/trunk@783 f0ae65fe-ee39-954e-97ec-027ff2717ef4
2022-02-12 18:07:30 +00:00
contact
85d375e157 doc: move read spec to ext/
git-svn-id: file:///srv/svn/repo/suika/trunk@782 f0ae65fe-ee39-954e-97ec-027ff2717ef4
2022-02-11 18:49:21 +00:00
delthas
9b1a5bd469 Add support for the wip soju.im/read capability and READ command
READ lets downstream clients share information between each other about
what messages have been read by other downstreams.

Each target/entity has an optional corresponding read receipt, which is
stored as a timestamp.

- When a downstream sends:
  READ #chan timestamp=2020-01-01T01:23:45.000Z
  the read receipt for that target is set to that date
- soju sends READ to downstreams:
  - on JOIN, if the client uses the soju.im/read capability
  - when the read receipt timestamp is set by any downstream

The read receipt date is clamped by the previous receipt date and the
current time.

git-svn-id: file:///srv/svn/repo/suika/trunk@781 f0ae65fe-ee39-954e-97ec-027ff2717ef4
2022-02-11 18:41:46 +00:00
delthas
81e4b057c5 Fix echo-message for TAGMSG
A previous fix (d4b7bb02da1c) only fixed sending echo-message for
TAGMSG to self. We also need to send echo-message for TAGMSG to
other targets.

Closes: https://todo.sr.ht/~emersion/soju/111

git-svn-id: file:///srv/svn/repo/suika/trunk@780 f0ae65fe-ee39-954e-97ec-027ff2717ef4
2022-02-09 15:58:54 +00:00
contact
71a0ed4052 Fix flags variable name in RPL_WHOREPLY handler
This param doesn't contain modes, it contains user flags (such as
H/G for away status).

git-svn-id: file:///srv/svn/repo/suika/trunk@779 f0ae65fe-ee39-954e-97ec-027ff2717ef4
2022-02-09 14:20:32 +00:00
contact
801dc26f68 Refactor generateWHOXReply
Isolate the field letter -> value logic into a separate function.

git-svn-id: file:///srv/svn/repo/suika/trunk@778 f0ae65fe-ee39-954e-97ec-027ff2717ef4
2022-02-09 14:16:54 +00:00
contact
bef2bfad2b Add context to upstreamConn.register
git-svn-id: file:///srv/svn/repo/suika/trunk@777 f0ae65fe-ee39-954e-97ec-027ff2717ef4
2022-02-08 15:38:34 +00:00
contact
6f8aa7f95a Add context to upstreamConn.runUntilRegistered
git-svn-id: file:///srv/svn/repo/suika/trunk@776 f0ae65fe-ee39-954e-97ec-027ff2717ef4
2022-02-08 15:37:31 +00:00