110 Commits

Author SHA1 Message Date
n08i40k 2442641479 feat(ci): auto-deploy new version after building docker image 2025-10-29 02:31:13 +04:00
n08i40k ac16c96e5e chore(schedule): add lesson type 'differentiated exam' 2025-10-29 02:16:25 +04:00
n08i40k 622464e4c3 feat(users): add endpoints for getting user by ids 2025-10-28 22:33:49 +04:00
n08i40k 39c60ef939 feat(middleware): add support of path patterns 2025-10-28 22:33:10 +04:00
n08i40k d1ef5c032e feat: implement service users 2025-10-28 06:53:31 +04:00
n08i40k b635750e28 feat(db): add service users table 2025-10-28 06:46:30 +04:00
n08i40k a59fff927d chore(deps): update dependencies 2025-10-28 06:45:55 +04:00
n08i40k cdc89b5bcd fix(parser): fix sentry error sending 2025-10-10 03:00:47 +04:00
n08i40k ad86f6cd64 feat(parser): limit names regex to maximum 2 elements
This allows us to not worry about subgroups array index overflows, and we can make better non-standard case solving.
2025-10-10 01:39:54 +04:00
n08i40k a3b4a501db feat(parser): improve names regex to exclude some non-standard cases
Like "Название ФАмилия. И.О.".
In that case regex will grab "Название ФА", instead of "Амилия. И. О." (we can't add 'Ф', bc it will make regex checks way more complex).

Now it will ignore "Название ФА" if after that lower or upper char is placed.
Previously only lower chars are excluded and check won't exclude "Название ФА" and grabs "Название Ф" bc after 'Ф' uppercase char is present.
2025-10-10 01:37:52 +04:00
n08i40k df0e99a4d0 feat(parser): make lesson cell range less strict to support upcoming split-lessons 2025-10-10 01:31:55 +04:00
n08i40k a8cf8fb0f5 feat(parser): improve street regex 2025-10-10 01:30:56 +04:00
n08i40k 7ed866138e feat(error): add error for unknown lesson type 2025-10-10 01:30:30 +04:00
n08i40k 7bac48f8fc feat(error): add more intuitive CellPos formatting and get rid of ErrorCell 2025-10-10 01:27:05 +04:00
n08i40k 191ec36fef chore: remove useless commented code 2025-10-10 01:25:12 +04:00
n08i40k f121a04f1b refactor: refactor providers code 2025-10-02 07:55:07 +04:00
n08i40k df74ab03a1 chore(ci): make building non-verbose 2025-10-02 07:54:09 +04:00
n08i40k 1b79d1cf1e chore: bump provider version to 0.2.2 2025-10-02 07:44:35 +04:00
n08i40k 2b9b1ea66b chore(deps): update dependencies 2025-10-02 07:43:37 +04:00
n08i40k ca713d8d51 refactor: prevent updater stop because of errors 2025-10-02 07:40:44 +04:00
n08i40k 69df538467 refactor(updater): don't cancel token when uri fetch error occurred 2025-09-29 08:27:25 +04:00
n08i40k aa019f8fcf fix(parser): rework teacher name parsing 2025-09-29 08:27:24 +04:00
n08i40k b664ba578d chore(clippy): fix all clippy warnings release/v1.3.0 2025-09-25 03:42:34 +04:00
n08i40k 983967f8b0 chore(downloader): suppress unused_assignments warning 2025-09-25 03:27:55 +04:00
n08i40k e5760120e2 chore(release): bump version to 1.3.0 2025-09-25 03:17:14 +04:00
n08i40k a28fb66dd4 feat(downloader): add retry-mechanism for querying uri from yandex-cloud api (#18) 2025-09-25 03:15:36 +04:00
n08i40k 3780fb3136 feat(downloader): implement etag-based difference check for schedule 2025-09-25 03:14:39 +04:00
n08i40k 6c71bc19f5 chore(parser): fix crash caused by another mistype in schedule 2025-09-25 02:50:43 +04:00
n08i40k 2d0041dc8b feat(schedule): add practice lesson type 2025-09-25 02:49:23 +04:00
n08i40k b5d372e109 feat(ci): build and push image to docker registry on every push to master 2025-09-10 20:05:11 +04:00
n08i40k 84dca02c34 fix(database): use migrator and change connection options 2025-09-10 20:04:19 +04:00
n08i40k 6c9d3b3b31 chore(release): bump version to 1.2.2 release/v1.2.2 2025-09-08 07:16:53 +04:00
n08i40k a348b1b99b refactor(auth): interpret failure to find user as an error 2025-09-08 07:15:22 +04:00
n08i40k ff12ee5da2 chore(release): bump version to 1.2.1 release/v1.2.1 2025-09-06 21:25:26 +04:00
n08i40k 35f707901f chore(clippy): fix all clippy warnings 2025-09-06 21:24:52 +04:00
n08i40k edea6c5424 chore(release): bump version to 1.2.0 release/v1.2.0 2025-09-06 20:33:17 +04:00
n08i40k fdbb872fc3 refactor(dev): move tracing to feature 2025-09-06 20:17:14 +04:00
n08i40k dbc800fef1 feat(database)!: switch from diesel to sea-orm 2025-09-06 20:09:04 +04:00
n08i40k e729d84c93 fix: fix typo in error description 2025-09-06 18:42:23 +04:00
n08i40k cc7adf10ed fix(env): make dotenv file optional 2025-09-06 18:40:04 +04:00
n08i40k 57c1699c9a chore(release): bump version to 1.1.1 release/v1.1.1 2025-09-03 07:13:37 +04:00
n08i40k 298c4f4dd3 feat(auth): send raw token on telegram auth 2025-09-03 07:08:51 +04:00
n08i40k e3904a255b chore(release): bump version to 1.1.0 release/v1.1.0 2025-09-02 09:23:29 +04:00
n08i40k 829c1cf68d chore(deps): bump calamine version 2025-09-02 09:20:02 +04:00
n08i40k 6a535f8d73 chore(ci): remove creating .env.test 2025-09-02 09:20:02 +04:00
n08i40k 5e5cd53f46 chore(ci): remove creating .env.test 2025-09-02 09:11:30 +04:00
n08i40k 8d59e37976 refactor(android)!: remove FCM support 2025-09-02 09:08:17 +04:00
n08i40k 5e39fc9acc feat(schedule)!: move schedule parser, downloader, and updater to external library
This can be used to support more schedule formats in the future.
2025-09-02 08:59:59 +04:00
n08i40k 7c973bfda0 refactor(middlewares): move MiddlewareError from crate::utility to crate::middlewares 2025-09-02 08:52:15 +04:00
n08i40k 8fba0fc709 feat(env): add ability to set custom .env file for testing on local machine 2025-06-13 01:03:06 +04:00