Commit graph

58 commits

Author SHA1 Message Date
142dddd253
refactor: moved most of sqlite implementation to core 2024-03-20 01:17:58 +03:00
a2739b678c
chore!: started extracting platform-specific stuff into separate packages 2024-03-07 05:35:36 +03:00
ac3b5df9a0
refactor!: renamed MaybeAsync -> MaybePromise 2024-02-03 21:56:44 +03:00
6768b15514
fix: tests 2024-02-03 11:57:40 +03:00
c8e026dc03
refactor!: merged client into core + fixed dispatcher for new storage 2024-01-31 19:30:57 +03:00
eca99a7535
refactor!: large refactor of storage implementation
breaking: pretty much the entire storage thing has been overhauled.
migrations from older versions **are not** available, please do them manually through string sessions
2024-01-04 00:22:26 +03:00
c538c2b059
fix(core): allow storage reset to be async 2023-12-19 23:44:39 +03:00
02a6a0e133
fix(core): proper exit cleanup in json file 2023-12-19 02:24:19 +03:00
314bfa0fec
fix(core): export MemoryStorage 2023-12-13 17:19:10 +03:00
56c2085190
feat(core)!: future salts storage
breaking: `ITelegramStorage` interface changed
2023-12-12 00:23:34 +03:00
c42c629475
feat(client): allow implicit storage usage 2023-11-30 23:53:33 +03:00
93ddc6a58c
chore!: do not default to MemoryStorage 2023-11-30 22:57:10 +03:00
8214750055
chore: deprecated json-based storages 2023-11-30 22:40:38 +03:00
1f53923dfc
feat(core): indexeddb storage 2023-11-30 22:20:16 +03:00
a36cdf1d20
test: run tests in browser 2023-11-30 00:20:37 +03:00
b25f9dddfa
feat!: support min updates
breaking: changed `ITelegramStorage` interface, changed tl schema a bit
2023-11-27 06:33:32 +03:00
13be8482e0
refactor: moved test utils to @mtcute/test 2023-11-13 20:14:32 +03:00
f525c12f83
fix: auth storage fixes
- .reset() no longer resets auth keys by default
- auth keys are stored immediately in sqlite
- update loop fixes for logout
- tests for sqlite storage

likely closes #13 (?)
2023-11-12 07:51:30 +03:00
8204dc86a4
chore: removed dispatcher dep from core (again), improved build script 2023-11-12 01:17:20 +03:00
e31ecbd3d1
test(core): improved test coverage 2023-11-11 18:38:57 +03:00
73cd1e7dc9
docs: use @default jsdoc tag 2023-10-29 20:25:06 +03:00
9791f8faae
docs: updated typedoc, added ci, fixed some docs 2023-10-27 14:25:21 +03:00
dafe631435
fix: migrated to web streams 2023-10-20 00:41:47 +03:00
Alina Tumanova
f5976a2d74
ESM + end-to-end tests (#11)
* feat: moved tl-runtime to esm and native ArrayBuffers

* feat: migration to esm

* fix(core): web-related fixes

* test: finally, some good fucking e2e

* chore: fixed linters etc

* ci: added e2e to ci

* build(tl): fixed gen-code on node 20

* fix: codegen Uint8Array, not Buffer

never `git reset --hard` kids

* build: only do type-aware linting for `packages/*`

* build: ignore no-unresolved in ci for e2e

* fix: node 16 doesn't have subtle crypto apparently?

* fix(tests): use Uint8Array

for gods sake please can i just merge this already

* ci: don't parallel tasks in ci

because machines are utter garbage and it may just randomly break

* ci: pass secrets to e2e tests

* ci: separate cli command for ci

apparently im retarded

* fix: run codegen in e2e

im actually retarded

* ci: more fixes for e2e

* ci: debugging stuff

* ci: still debugging

* ci: hopefully fix ci???
2023-10-16 19:23:53 +03:00
a03d73503a refactor: initial support for esm
also fixed all circular imports and added checking for them via dpdm
2023-10-11 08:42:37 +03:00
befbceaf8a
chore: changed prettier width to 120 2023-09-24 01:32:22 +03:00
976c25141c
refactor: move errors to core 2023-09-22 15:32:28 +03:00
5a3b101c9f
chore: avoid using {}, use Maps instead 2023-09-19 01:33:47 +03:00
7bf63b2507
fix: dont export everything on first connection 2023-09-18 03:16:29 +03:00
81ce550604
chore: improved eslint config
closes MTQ-54
2023-09-03 02:37:51 +03:00
eb585fc3f1
build: fixes after rebase 2023-07-24 00:14:37 +03:00
teidesu
a23197df91
feat(core): (initial) support pfs 2023-07-24 00:14:37 +03:00
d88bc0ea60
chore: code quality improvements
improved eslint config, fixed linter issues, added husky
2023-06-05 00:30:48 +00:00
teidesu
390b65f796 build(docs): api reference generation improvements
- added readme in each package
- updated typedoc, fixed related issues
- use @link instead of @see
- moved configs to typedoc.js, improved exclusion of unneeded stuff
- custom plugin for typedoc for cross-package references
- preparing to move documentation to separate repository
2022-08-24 23:37:26 +03:00
teidesu
e68c9f4bb5 refactor: prettier-ed code, rearranged imports, fixed tests 2022-06-30 16:32:56 +03:00
teidesu
96300a795e fix(core): removed unnecessary import 2022-05-11 13:17:39 +03:00
teidesu
ec736f8590 some changes
i've been wanting to name a commit like this for my entire life, lol. seriously though, a lot has changed:
 - extracted TL-related stuff to `@mtcute/tl-utils` and `@mtcute/tl-runtime`, rewrote codegen in TS
 - updated to layer 134, moved to int64 identifiers
 - rewritten networking (mtproto), rewritten updates handling
 - *lots* of refactoring

 still a very early version though, there are a lot of improvements to be made, but at least it runs, lol

 also tl-reference will not be updated anytime soon because i want to rewrite it
2021-11-23 00:03:59 +03:00
teidesu
9b5ca0cb2a refactor: improved logging, moved to custom logger instead of debug 2021-08-14 12:57:26 +03:00
teidesu
4b22ee5b25 rename back to mtcute
idk lol
2021-08-05 20:38:24 +03:00
teidesu
a3cf0c526a fix(client): reworked updates, added support for qts 2021-08-04 12:58:57 +03:00
teidesu
a8d3543e64 build: preparing for publish, moved to strict typescript, fixed some stuff 2021-07-30 17:40:50 +03:00
teidesu
2f1c8548a0 build: renamed to mtqt 2021-07-25 21:03:40 +03:00
teidesu
8fb099cfeb fix(core): proper browser support
not much really, fixed exports for webpack, fixed binary mode for websocket
2021-07-16 04:31:04 +03:00
teidesu
c8dae335e8 feat: vacuum storage to reduce its size 2021-06-20 18:18:06 +03:00
teidesu
b45cc0df69 feat: rate limiting 2021-06-20 17:54:28 +03:00
teidesu
ae2dbcf03f build: fixed scripts, eslintignore, fixed linter warnings and re-formatted with prettier 2021-06-06 15:20:41 +03:00
teidesu
2cd443d6d1 feat(client): string sessions 2021-06-05 20:25:08 +03:00
teidesu
a0294b9a64 feat(dispatcher): fsm and scenes 2021-05-27 01:02:31 +03:00
teidesu
c228085bfe feat(client): improved min peers and short updates handling 2021-05-22 14:41:11 +03:00
teidesu
c3fce178b6 feat: only update changed updates state (i.e. dont save pts if it hasnt changed) 2021-05-21 00:24:54 +03:00