Commit graph

916 commits

Author SHA1 Message Date
Raito Bezarius
f05124d6db feat(ircv3): add simple internal batch processing
Some checks failed
CI / rustfmt (pull_request) Failing after 23s
CI / test (pull_request) Failing after 1m0s
The BATCH feature is a form of a server-suggested message processing
delays.

To implement this, we can record all inflight batches, handle start/end
in handle_batch and collect all pending messages in the entrypoint of
the message handler as long as they have a correct batch id.

Signed-off-by: Raito Bezarius <masterancpp@gmail.com>
2024-10-14 11:19:43 +02:00
264820077f Merge pull request 'chore: repair CI under Forgejo' (#1) from ci into develop
All checks were successful
CI / rustfmt (push) Successful in 18s
CI / test (push) Successful in 2m3s
Reviewed-on: #1
2024-10-14 11:18:47 +02:00
Raito Bezarius
9a295f27c3 chore: repair CI under Forgejo
All checks were successful
CI / rustfmt (pull_request) Successful in 16s
CI / test (pull_request) Successful in 1m57s
Signed-off-by: Raito Bezarius <masterancpp@gmail.com>
2024-10-13 22:27:14 +02:00
Aaron Weiss
3b9ab628fd
bump minimum supported rust version to 1.71
Some checks are pending
CI / test (1.71) (push) Waiting to run
CI / test (stable) (push) Waiting to run
CI / rustfmt (push) Waiting to run
2024-03-18 16:43:36 -07:00
Aaron Weiss
b45c5fa88d
bump version to 1.0 2024-03-18 16:34:00 -07:00
Aaron Weiss
c51eaf1f0c
update some dependency versions 2024-03-18 16:32:40 -07:00
Aaron Weiss
0e5186420a
bump rust version to 1.67 since our dependencies require that 2024-03-18 16:23:57 -07:00
Aaron Weiss
8013504bbf
fix links in documentation. 2024-03-18 16:21:31 -07:00
Aaron Weiss
ab0d1dda5e
make channel-lists feature additive (fixes #257) 2024-03-18 16:16:46 -07:00
Aaron Weiss
ecf411cbc8
bring dangerously_accept_invalid_certs in line with the other config options 2024-03-18 16:09:03 -07:00
Aaron Weiss
f640e49571
fix mistake in Config::load and Config::save docs (fixes #256) 2024-03-18 16:06:39 -07:00
aaron
b5a017a58b
Merge pull request #253 from ljrk0/verbose_tls_error
Provide encapsulated Tls error information
2024-03-18 15:57:51 -07:00
aaron
44ef696727
Update MSRV to 1.67
There is surely a better way of doing this, but this is low barrier to entry.
2024-03-18 14:44:46 -07:00
aaron
3f44270bfc
Update MSRV to 1.66 2024-03-18 14:41:58 -07:00
aaron
acde3cca9c
Update MSRV to 1.65 2024-03-18 14:39:29 -07:00
aaron
2eb9bf5c2d
Merge pull request #254 from ljrk0/certfp_pkcs12_doc
CertFP: The file must be a PKCS #12 archive
2024-03-18 13:03:54 -07:00
aaron
831c8cb429
Merge pull request #258 from sshine/readme-updates-0.15
README, Getting Started: Update 0.13 to 0.15 in example
2024-03-18 13:03:08 -07:00
Simon Shine
4f2690d321 README, Getting Started: Update 0.13 to 0.15 in example 2023-08-08 13:21:54 +02:00
Janis König
5b09238788 CertFP: The file must be a PKCS #12 archive
While this archive is indeed DER-formatted, in contrast to `cert_path`,
a regular DER file created from some certificate/key PEM file won't work:

```
openssl x509 -outform der -in foo.pem -out foo.der
```

This will result in the following OpenSSL error through tls-native error:

```
error:068000A8:asn1 encoding routines:asn1_check_tlen:wrong tag:crypto/asn1/tasn_dec.c:1188:
error:0688010A:asn1 encoding routines:asn1_d2i_ex_primitive:nested asn1
error:crypto/asn1/tasn_dec.c:752:
error:0688010A:asn1 encoding routines:asn1_template_noexp_d2i:nested asn1
error:crypto/asn1/tasn_dec.c:685:Field=version, Type=PKCS12
```

Instead, a PKCS #12 archive must be created like so:

```
openssl pkcs12 -export -out foo.p12 -inkey fookey.pem -in foocert.pem
```

If the PEM file contains both the private key and the certificate,
the same file can be passed to `openssl` twice.

Also compare the documentation for `from_pkcs12` to `from_der` in
native-tls, as used in the `new_secured_transport` function:

https://docs.rs/native-tls/0.2.11/native_tls/struct.Identity.html#method.from_pkcs12
2023-07-11 16:39:02 +02:00
Janis König
5658fe514f Provide encapsulated Tls error information
When `.to_string()` is invoked on a the crate-wide Error enum,
the error message using #[error("...")] is displayed.
Some of those wrapped internal enums also contain, possibly more
helpful, error messages.  This will include the string gathered by
`.to_string()` from the encapsulated enum in the main error message.

See also
https://github.com/squidowl/halloy/pull/143
2023-07-11 15:19:27 +02:00
aaron
26ab9425bd
Merge pull request #252 from martinetd/query_mode
irc-proto: allow modes with no prefix
2023-06-23 22:09:31 -04:00
Dominique Martinet
709151b94d irc-proto: allow modes with no prefix
irc clients can query the details of some modes (e.g. request list of
banned users) by sending a message with no plus or minus prefix,
e.g. "MODE #chan b"
2023-06-23 21:47:02 +09:00
Aaron Weiss
8eef9c5688
Merge pull request #235 from simnalamburt/clippy
Fix all `cargo clippy` warnings.
2023-06-05 15:28:33 -04:00
Hyeon Kim
66f18c2044
examples: Fix all clippy warnings 2023-06-04 01:26:54 +09:00
Hyeon Kim
82387576a0
client/mod.rs: Fix mistake 2023-06-04 01:26:54 +09:00
Hyeon Kim
a9b1ea3946
Run cargo fmt 2023-06-04 01:26:15 +09:00
Hyeon Kim
781cbab4a4
Fix all trivial clippy warnings using cargo clippy --fix 2023-06-04 01:26:15 +09:00
Hyeon Kim
a8d6df4e31
Remove redundant uses of format!() 2023-06-04 01:26:12 +09:00
Hyeon Kim
af6ef9eec2
irc-proto: Run cargo fmt 2023-06-04 01:24:25 +09:00
Hyeon Kim
956025c222
irc-proto: Fix a nontrivial clippy warning
References:
  https://rust-lang.github.io/rust-clippy/master/index.html#inherent_to_string_shadow_display
2023-06-04 01:24:24 +09:00
Hyeon Kim
467efb9eba
irc-proto: Misc refactoring 2023-06-04 01:00:25 +09:00
Hyeon Kim
b0c5f1fe90
irc-proto: Fix all trivial clippy warnings using cargo clippy --fix 2023-06-04 01:00:22 +09:00
Aaron Weiss
3d037df761
Merge pull request #237 from yancyribbens/fix/readme-example
Update the readme example
2023-05-22 10:57:17 -07:00
Aaron Weiss
d74e0117e7
Update README.md with fixed CI link 2023-05-22 13:47:33 -04:00
Aaron Weiss
c533c49e9f
Update ci.yml for MSV 1.64 2023-05-22 13:34:12 -04:00
Aaron Weiss
34aae72edc
Merge pull request #249 from udoprog/develop
Bump dependencies, set rust-version, and some more maintenance work
2023-05-22 10:30:09 -07:00
John-John Tedro
aacba7fef1 Add Github workflow 2023-04-12 17:50:47 +02:00
John-John Tedro
3e396f8577 Bump dependencies, set rust-version 2023-04-12 17:50:47 +02:00
Aaron Weiss
d40e3ce844
Merge pull request #248 from Bytekeeper/develop
Fix to allow stripping of 0-prefixed color codes
2023-03-28 13:15:48 -07:00
Dennis Waldherr
7ee6dfd4dc Fix to allow stripping of 0-prefixed color codes and filter characters
when switching back to Text
2023-03-27 18:36:34 +02:00
Aaron Weiss
71610a8a8e
Merge pull request #247 from kpcyrd/chrono-cve-2020-26235
Reconfigure chrono to remove CVE-2020-26235/RUSTSEC-2020-0159
2023-03-02 13:26:02 -05:00
kpcyrd
a4d789a74c Reconfigure chrono to remove CVE-2020-26235 2023-03-02 11:54:50 +01:00
Aaron Weiss
78216d601c
Merge pull request #243 from seam345/develop
remove reference to for_each_incoming
2022-08-15 13:09:32 -07:00
sean borg
1e2a03d327
remove reference to for_each_incoming 2022-08-12 19:59:33 +01:00
Aaron Weiss
925651cd02
Merge pull request #236 from simnalamburt/dangerously-accept-invalid-certs
New option: dangerously_accept_invalid_certs
2022-02-25 17:20:22 -05:00
yancy
38008c66ca Update the readme example to reflect the current API and include an example Cargo.toml as well 2021-12-09 17:41:28 +01:00
Daniel Lublin
bcc6479d22
New option: dangerously_accept_invalid_certs
This patch adds an option to dangerously ignore all ceritificate
verifications. This option must be used with extreme caution and should
only be used as a last resort.

Closes #209, #230

Co-authored-by: Hyeon Kim <simnalamburt@gmail.com>
2021-11-15 05:52:15 +09:00
Aaron Weiss
f254b10fca
Merge pull request #233 from yancyribbens/fix/link-rot
Update broken link location to rfc 2812
2021-08-04 12:32:01 -04:00
yancy
b87b1f37e8 Update broken link location to rfc 2812 2021-07-29 14:47:39 +02:00
Aaron Weiss
f76c845979
Merge pull request #232 from maugier/fix/develop/colon_in_suffix
Fix stringification of command suffixes with a leading colon
2021-05-04 18:18:41 -04:00