1
0
mirror of https://github.com/Mrs4s/MiraiGo.git synced 2025-05-04 11:07:40 +08:00

54 Commits

Author SHA1 Message Date
wdvxdr
993ec128a0 all: fix some issue reported by golangci-lint 2023-02-13 15:33:55 +08:00
wdvxdr
24ee0103e7
client: add VipLevel in SummaryCard 2022-06-22 09:57:46 +08:00
wdvxdr
4314fdcb39
binary: avoid alloc in reading integer 2022-03-22 21:34:05 +08:00
wdvxdr
4a007cfcf9
all: rewrite interface{} to any
generated by `gofmt -w -r 'interface{} -> any' .`
2022-03-17 10:52:03 +08:00
wdvxdr
8b99d3147e
style: fix issues reported by golangci-lint 2021-12-16 20:21:49 +08:00
wdvxdr
b398cec6a5
refactor: move highway.go to client/internal/highway 2021-12-15 19:13:52 +08:00
wdvxdr
5ff69f3c3a
binary/jce: use go/parser generator 2021-12-12 14:38:03 +08:00
源文雨
45692b75f8
fix(jce): ToByes lost some fields of SvcReqRegisterNew (#217) 2021-12-12 00:04:15 +08:00
fumiama
bcde705a75 fix: codegen error & drop all reflect in jce 2021-12-10 14:49:53 +08:00
fumiama
ed7199def8 fix: gen rely on jce 2021-12-09 23:30:12 +08:00
fumiama
f1d2259956 fix(jce): replacment not equivalent 2021-12-09 22:47:16 +08:00
fumiama
b041fc20e8 perf(jce): drop most reflect in writer
name                           old time/op    new time/op     delta
JceWriter_WriteMap-8             2.34µs ± 2%     0.69µs ± 4%   -70.63%  (p=0.008 n=5+5)
JceWriter_WriteJceStructRaw-8    1.28µs ± 1%     0.42µs ± 1%   -66.86%  (p=0.008 n=5+5)

name                           old speed      new speed       delta
JceWriter_WriteMap-8           39.7MB/s ± 2%  135.4MB/s ± 4%  +240.56%  (p=0.008 n=5+5)
JceWriter_WriteJceStructRaw-8  82.3MB/s ± 1%  219.9MB/s ± 1%  +167.32%  (p=0.008 n=5+5)

name                           old alloc/op   new alloc/op    delta
JceWriter_WriteMap-8             1.30kB ± 0%     0.21kB ± 0%   -84.05%  (p=0.008 n=5+5)
JceWriter_WriteJceStructRaw-8      640B ± 0%       208B ± 0%   -67.50%  (p=0.008 n=5+5)

name                           old allocs/op  new allocs/op   delta
JceWriter_WriteMap-8               30.0 ± 0%        2.0 ± 0%   -93.33%  (p=0.008 n=5+5)
JceWriter_WriteJceStructRaw-8      15.0 ± 0%        2.0 ± 0%   -86.67%  (p=0.008 n=5+5)
2021-12-09 22:25:53 +08:00
fumiama
d3ab5965d5 fix(#209): OpenWriterF encode error 2021-12-04 20:31:11 +08:00
fumiama
13a9d087e7 perf(jce): drop reflect in reader
name                   old time/op    new time/op    delta
JceReader_ReadSlice-8    1.53ms ±90%    0.82ms ±86%  -46.30%  (p=0.017 n=16+16)

name                   old speed      new speed      delta
JceReader_ReadSlice-8   117MB/s ± 3%   228MB/s ± 4%  +94.43%  (p=0.000 n=16+16)

name                   old alloc/op   new alloc/op   delta
JceReader_ReadSlice-8     516kB ±88%     536kB ±85%     ~     (p=0.780 n=16+16)

name                   old allocs/op  new allocs/op  delta
JceReader_ReadSlice-8     25.6k ±88%     26.6k ±85%     ~     (p=0.780 n=16+16)
2021-11-26 15:02:44 +08:00
wdvxdr
97dcddb6d4
jce: speed up read
don't use bytes.Buffer to inline more functions

name                            old time/op    new time/op    delta
JceReader_ReadSlice-8              614µs ±68%     523µs ±70%     ~     (p=0.690 n=5+5)
RequestDataVersion2_ReadFrom-8    3.98µs ± 1%    3.54µs ± 2%  -10.96%  (p=0.008 n=5+5)

name                            old speed      new speed      delta
JceReader_ReadSlice-8            104MB/s ± 7%   121MB/s ± 2%  +16.68%  (p=0.008 n=5+5)
RequestDataVersion2_ReadFrom-8  23.4MB/s ± 1%  26.3MB/s ± 2%  +12.33%  (p=0.008 n=5+5)

name                            old alloc/op   new alloc/op   delta
JceReader_ReadSlice-8              196kB ±67%     184kB ±67%     ~     (p=0.690 n=5+5)
RequestDataVersion2_ReadFrom-8    2.59kB ± 0%    2.62kB ± 0%   +1.04%  (p=0.008 n=5+5)

name                            old allocs/op  new allocs/op  delta
JceReader_ReadSlice-8              9.02k ±67%     9.02k ±67%     ~     (p=1.000 n=5+5)
RequestDataVersion2_ReadFrom-8      46.0 ± 0%      44.0 ± 0%   -4.35%  (p=0.008 n=5+5)
2021-11-20 20:54:19 +08:00
wdvxdr
43b23f4e6f
jce: speed up write
name                           old time/op    new time/op    delta
JceWriter_WriteMap-8             2.46µs ± 1%    2.37µs ± 1%   -3.88%  (p=0.000 n=9+9)
JceWriter_WriteJceStructRaw-8    1.78µs ± 1%    1.29µs ± 1%  -27.38%  (p=0.000 n=9+10)

name                           old speed      new speed      delta
JceWriter_WriteMap-8           37.7MB/s ± 1%  39.3MB/s ± 1%   +4.04%  (p=0.000 n=9+9)
JceWriter_WriteJceStructRaw-8  59.0MB/s ± 1%  81.3MB/s ± 1%  +37.70%  (p=0.000 n=9+10)

name                           old alloc/op   new alloc/op   delta
JceWriter_WriteMap-8             1.30kB ± 0%    1.30kB ± 0%     ~     (all equal)
JceWriter_WriteJceStructRaw-8      724B ± 0%      640B ± 0%  -11.60%  (p=0.000 n=10+10)

name                           old allocs/op  new allocs/op  delta
JceWriter_WriteMap-8               30.0 ± 0%      30.0 ± 0%     ~     (all equal)
JceWriter_WriteJceStructRaw-8      29.0 ± 0%      15.0 ± 0%  -48.28%  (p=0.000 n=10+10)
2021-11-20 11:38:24 +08:00
wdvxdr
80e2d83dab
fix: only read protobuf on known sub-type
Fixes Mrs4s/go-cqhttp#1120
2021-10-21 18:01:33 +08:00
wdvxdr
2cdb7407f9
clean: remove unused method 2021-10-05 23:33:39 +08:00
wdvxdr
fd9a6657fa
drop dep jsoniter&reflect2.
for smaller binary size.
2021-08-25 16:16:08 +08:00
wdvxdr
7bed7a3657
jce: optimize JceWriter_WriteMap.
name                  old time/op    new time/op    delta
JceWriter_WriteMap-8    4.09µs ± 3%    2.44µs ± 1%  -40.39%  (p=0.000 n=10+8)

name                  old speed      new speed      delta
JceWriter_WriteMap-8  22.8MB/s ± 3%  38.2MB/s ± 1%  +67.73%  (p=0.000 n=10+8)

name                  old alloc/op   new alloc/op   delta
JceWriter_WriteMap-8    2.34kB ± 0%    1.30kB ± 0%  -44.37%  (p=0.000 n=10+10)

name                  old allocs/op  new allocs/op  delta
JceWriter_WriteMap-8      52.0 ± 0%      30.0 ± 0%  -42.31%  (p=0.000 n=10+10)
2021-08-17 17:06:00 +08:00
wdvxdr
53ac47950c
jce: optimize readByte.
name                            old time/op    new time/op    delta
JceReader_ReadSlice-8              271µs ± 2%     228µs ± 7%  -15.97%  (p=0.000 n=9+10)
RequestDataVersion2_ReadFrom-8    4.57µs ± 6%    4.08µs ± 2%  -10.74%  (p=0.000 n=10+10)

name                            old speed      new speed      delta
JceReader_ReadSlice-8           77.6MB/s ± 2%  92.5MB/s ± 7%  +19.14%  (p=0.000 n=9+10)
RequestDataVersion2_ReadFrom-8  20.4MB/s ± 6%  22.8MB/s ± 2%  +11.92%  (p=0.000 n=10+10)

name                            old alloc/op   new alloc/op   delta
JceReader_ReadSlice-8             73.4kB ± 0%    65.3kB ± 0%  -10.96%  (p=0.000 n=9+6)
RequestDataVersion2_ReadFrom-8    2.64kB ± 0%    2.59kB ± 0%   -1.93%  (p=0.000 n=10+10)

name                            old allocs/op  new allocs/op  delta
JceReader_ReadSlice-8              6.02k ± 0%     3.01k ± 0%  -49.96%  (p=0.000 n=10+10)
RequestDataVersion2_ReadFrom-8      67.0 ± 0%      46.0 ± 0%  -31.34%  (p=0.000 n=10+10)
2021-08-17 16:32:16 +08:00
wdvxdr
0ca0c6ea45
jce: readHead return non-ptr.
avoid escape.

name                            old time/op    new time/op    delta
JceReader_ReadSlice-8              469µs ± 1%     238µs ± 2%  -49.40%  (p=0.000 n=8+9)
RequestDataVersion2_ReadFrom-8    5.72µs ± 5%    4.12µs ± 4%  -28.04%  (p=0.000 n=9+10)

name                            old speed      new speed      delta
JceReader_ReadSlice-8           44.8MB/s ± 1%  88.6MB/s ± 2%  +97.66%  (p=0.000 n=8+9)
RequestDataVersion2_ReadFrom-8  16.3MB/s ± 6%  22.6MB/s ± 4%  +38.89%  (p=0.000 n=9+10)

name                            old alloc/op   new alloc/op   delta
JceReader_ReadSlice-8              266kB ± 0%      73kB ± 0%  -72.40%  (p=0.000 n=8+7)
RequestDataVersion2_ReadFrom-8    3.74kB ± 0%    2.64kB ± 0%  -29.49%  (p=0.000 n=10+10)

name                            old allocs/op  new allocs/op  delta
JceReader_ReadSlice-8              18.0k ± 0%      6.0k ± 0%  -66.66%  (p=0.000 n=10+10)
RequestDataVersion2_ReadFrom-8       136 ± 0%        67 ± 0%  -50.74%  (p=0.000 n=10+10)
2021-08-17 12:01:45 +08:00
wdvxdr
ad174508ff
clean(jce): use new ReadBytes rather than ReadAny.
use rsc.io/rf tool:

rf '
  ex {
    var reader *JceReader
    var tag int
    reader.ReadAny(tag).([]byte) -> reader.ReadBytes(tag)
  }
'
2021-08-13 15:35:26 +08:00
wdvxdr
1abbeb148a
feat(jce): new api *JceReader.ReadBytes. 2021-08-13 15:29:07 +08:00
wdvxdr
3ed9b8d698
clean(jce): remove ReadMapF. 2021-08-12 23:28:21 +08:00
wdvxdr
9814f5295d
refactor(jce): use ReadMap & remove ReadMapF.
name                            old time/op    new time/op    delta
RequestDataVersion2_ReadFrom-8    5.58µs ± 1%    5.78µs ± 2%   +3.64%  (p=0.000 n=9+9)

name                            old speed      new speed      delta
RequestDataVersion2_ReadFrom-8  16.7MB/s ± 1%  16.1MB/s ± 2%   -3.52%  (p=0.000 n=9+9)

name                            old alloc/op   new alloc/op   delta
RequestDataVersion2_ReadFrom-8    5.40kB ± 0%    3.74kB ± 0%  -30.67%  (p=0.000 n=10+10)

name                            old allocs/op  new allocs/op  delta
RequestDataVersion2_ReadFrom-8       147 ± 0%       136 ± 0%   -7.48%  (p=0.000 n=10+10)
2021-08-12 23:24:58 +08:00
wdvxdr
f4fca58809
feat(jce): optimize ReadSlice performance.
name                   old time/op    new time/op    delta
JceReader_ReadSlice-8    1.09ms ± 7%    0.52ms ± 1%   -52.48%  (p=0.000 n=10+10)

name                   old speed      new speed      delta
JceReader_ReadSlice-8  19.4MB/s ± 7%  40.8MB/s ± 1%  +110.25%  (p=0.000 n=10+10)

name                   old alloc/op   new alloc/op   delta
JceReader_ReadSlice-8     594kB ± 1%     266kB ± 0%   -55.22%  (p=0.000 n=9+9)

name                   old allocs/op  new allocs/op  delta
JceReader_ReadSlice-8     22.6k ± 0%     18.0k ± 0%   -19.98%  (p=0.000 n=10+10)
2021-08-12 20:45:45 +08:00
wdvxdr
1d900b302d
feat: group member shut up timestamp.
Fixes: #174
2021-08-07 16:43:13 +08:00
Mrs4s
b66d8a9a95
feat: delete friend. 2021-04-29 09:51:15 +08:00
Mrs4s
6efd6e020d
fix c2c msg processor. 2021-04-26 20:59:02 +08:00
wdvxdr
2e64a6913d
zap: reuse some []byte
优化单线程上传内存使用
2021-04-15 21:36:14 +08:00
Mrs4s
dd7898c204 feat: SetOnlineStatus. 2021-04-06 09:52:22 +08:00
github-actions
65ab1304e6 ci(chore): Fix stylings 2021-02-14 03:06:03 +00:00
wdvxdr
449fd49fd3
speed up jce writer again
BenchmarkJceWriter_WriteJceStructRaw
BenchmarkJceWriter_WriteJceStructRaw-8    	  414883	      2659 ns/op
BenchmarkJceWriter_WriteJceStructRaw2
BenchmarkJceWriter_WriteJceStructRaw2-8   	  925503	      1460 ns/op
又快了1倍
2021-02-02 13:21:28 +08:00
wdvxdr
a782ccbf10
fix 2021-01-30 18:47:43 +08:00
wdvxdr
59e689bd46 speed up jce
pkg: github.com/Mrs4s/MiraiGo/binary/jce
BenchmarkJceWriter_WriteJceStructRaw
BenchmarkJceWriter_WriteJceStructRaw-8    	  200443	      5966 ns/op
BenchmarkJceWriter_WriteJceStructRaw2
BenchmarkJceWriter_WriteJceStructRaw2-8   	  481285	      2659 ns/op
2021-01-30 18:43:12 +08:00
Mrs4s
31424dec79 fix sync. 2021-01-30 18:36:57 +08:00
Mrs4s
37b077e610 feature OtherClientStatusChangedEvent. 2021-01-20 22:46:40 +08:00
Mrs4s
b8e1d54fe3 fix JceWriter.WriteString(). 2021-01-20 21:16:04 +08:00
Mrs4s
a618d101db feature GetAllowedClients() & OnlineClients. 2021-01-20 21:12:07 +08:00
Mrs4s
6ed080344b feature qid support. 2021-01-10 21:25:02 +08:00
Mrs4s
12ea6ae4c7 add file storage svc. 2020-12-31 02:21:11 +08:00
Mrs4s
b51d8b417c feature sso addr fetch. 2020-11-13 18:46:55 +08:00
Mrs4s
7cc6f1c926 add SvcResp. 2020-11-04 12:01:38 +08:00
Mrs4s
a45bbd6364 fix GetGroupInfo() panic. 2020-11-04 01:46:31 +08:00
Mrs4s
2050e45664 add: GroupMemberInfo.Gender 2020-10-02 17:53:27 +08:00
Mrs4s
916d230456 update. 2020-09-24 00:45:01 +08:00
Mrs4s
381186d631 add: GetSummaryInfo(). 2020-09-19 16:25:37 +08:00
Mrs4s
a56bdf2a3e fix issue of connection lost. 2020-09-11 17:56:24 +08:00
Mrs4s
0a8fa220ea supported group card edit. 2020-07-21 01:56:44 +08:00