Commit Graph

119 Commits

Author SHA1 Message Date
Octol1ttle
57d492da8a
Upgrade project to PHP 8.3, add PHPStan, upgrade almost every dependency (#36)
* start updating to PHP 8.3

* taking off!

Co-authored-by: ErickSkrauch <erickskrauch@yandex.ru>
Signed-off-by: Octol1ttle <l1ttleofficial@outlook.com>

* dropped this

Signed-off-by: Octol1ttle <l1ttleofficial@outlook.com>

* migrate to symfonymailer

Signed-off-by: Octol1ttle <l1ttleofficial@outlook.com>

* this is so stupid 😭

Signed-off-by: Octol1ttle <l1ttleofficial@outlook.com>

* ah, free, at last.

Signed-off-by: Octol1ttle <l1ttleofficial@outlook.com>

* oh, Gabriel.

Signed-off-by: Octol1ttle <l1ttleofficial@outlook.com>

* now dawns thy reckoning.

Signed-off-by: Octol1ttle <l1ttleofficial@outlook.com>

* and thy gore shall GLISTEN before the temples of man.

Signed-off-by: Octol1ttle <l1ttleofficial@outlook.com>

* creature of steel.

Signed-off-by: Octol1ttle <l1ttleofficial@outlook.com>

* my gratitude upon thee for my freedom.

Signed-off-by: Octol1ttle <l1ttleofficial@outlook.com>

* but the crimes thy kind has committed against humanity

Signed-off-by: Octol1ttle <l1ttleofficial@outlook.com>

* Upgrade PHP-CS-Fixer and do fix the codebase

* First review round (maybe I have broken something)

* are NOT forgotten.

Signed-off-by: Octol1ttle <l1ttleofficial@outlook.com>

* Enable parallel PHP-CS-Fixer runner

* PHPStan level 1

* PHPStan level 2

* PHPStan level 3

* PHPStan level 4

* PHPStan level 5

* Levels 6 and 7 takes too much effort. Generate a baseline and fix them eventually

* Resolve TODO's related to the php-mock

* Drastically reduce baseline size with the Rector

* More code modernization with help of the Rector

* Update GitLab CI

---------

Signed-off-by: Octol1ttle <l1ttleofficial@outlook.com>
Co-authored-by: ErickSkrauch <erickskrauch@yandex.ru>
2024-12-02 11:10:55 +01:00
ErickSkrauch
0a666e1e12
Extract public key from private pem file at runtime 2024-06-14 03:03:10 +02:00
ErickSkrauch
16877d502d
Drop usage of goaop, replace implementation with events 2023-11-20 04:39:13 +01:00
ErickSkrauch
26b2168ae3
Upgrade PHP to the latest version 2022-12-05 22:44:00 +01:00
ErickSkrauch
ab7ae95e60 Update dependencies 2021-02-20 02:53:12 +01:00
ErickSkrauch
cc519edf5a
Remove unused yii2 composer plugin which was causing an error 2021-02-14 19:18:43 +01:00
ErickSkrauch
9729fc939d
Upgrade backend engine 2021-02-14 19:01:49 +01:00
ErickSkrauch
c18052c323
Upgrade dependencies 2020-06-10 17:38:05 +03:00
ErickSkrauch
6712471176 Translate readme, add license and some composer.json fields 2020-05-20 02:36:32 +03:00
ErickSkrauch
09f7818113 Upgrade PHP to 7.4. Update corresponding dependencies. 2019-12-29 18:23:20 +03:00
ErickSkrauch
43a4a58053 Remove usage of codeception/specify and fzaninotto/faker 2019-12-21 02:26:06 +03:00
ErickSkrauch
22e8158581 Upgrade codeception to 4 version 2019-12-20 22:50:47 +03:00
ErickSkrauch
8d28c7c453 Upgrade patch in the build image before install dependencies 2019-12-15 05:26:45 +03:00
ErickSkrauch
04e399c726 Fix tests 2019-12-15 00:49:54 +03:00
ErickSkrauch
e8b71d33d0 Get rid of mockery library. Still have some troubles with functional tests for api 2019-12-14 00:16:05 +03:00
ErickSkrauch
26f7d6213f Update dependencies 2019-12-13 20:37:37 +03:00
ErickSkrauch
642db2e045 Use libsodium to encrypt data, stored in jwt tokens 2019-12-05 19:37:46 +03:00
ErickSkrauch
a81ef5cac2 Replace separate minecraft access tokens with JWT 2019-12-04 21:10:15 +03:00
ErickSkrauch
45101d6453 Completely restored authorization_code grant for user side.
Reworked oauth_sessions table.
Added extension to use MariaDB's JSON columns.
Rewritten tests for authorization_code grant for client side.
Deprecate some old shit.
[skip ci]
2019-09-18 02:15:12 +03:00
ErickSkrauch
0b63dc2d84 Upgrade oauth2-server to 8.0.0 version, rewrite repositories and entities, start rewriting tests. Intermediate commit [skip ci] 2019-08-23 11:28:04 +03:00
ErickSkrauch
d9f2b1a8c9 Upgrade PHPUnit to 8. Replace codeception/base with codeception/codeception due to release bug in the base version. 2019-08-02 15:57:17 +03:00
ErickSkrauch
f2ab7346aa Fixed almost everything, but all functional tests are broken at the last minute :( 2019-08-02 03:29:20 +03:00
ErickSkrauch
45c2ed601d Replace emarref/jwt with lcobucci/jwt
Refactor all JWT-related components
Replace RS256 with ES256 as a preferred JWT algorithm
2019-08-01 12:17:12 +03:00
ErickSkrauch
31069562b3 Update Yii2 framework to the latest version 2019-06-18 02:37:04 +03:00
ErickSkrauch
1bf249030f Removed ely/email-renderer package and implemented new emails renderer client [skip ci] 2019-06-07 02:16:13 +03:00
ErickSkrauch
75fdd5d1ba Upgrade Codeception to 3 version. Remove codeception/verify. 2019-05-14 02:12:49 +03:00
ErickSkrauch
5dacd66fb7 Upgrade ely/email-renderer and some other non-breaking dependencies 2019-05-14 01:13:07 +03:00
Arslan
85d4d465fb Implemented "ely/mojang-api" 2019-05-09 04:23:49 +03:00
ErickSkrauch
e13b6f0d94 Upgrade PHP to 7.3 and fix some related code errors. Disable self_accessor fixer for PHP-CS-Fixer 2019-04-06 04:15:23 +02:00
ErickSkrauch
b20825a051 Update ely/php-code-style and run updated CS fixer 2019-02-26 02:26:02 +03:00
ErickSkrauch
ea4ebd19ef Update dependencies 2019-02-23 17:15:20 +03:00
ErickSkrauch
b05dc6816e Rework tests structure. Upgrade codeception to 2.5.3. Merge params configuration into app configuration. 2019-02-20 22:58:52 +03:00
ErickSkrauch
49d612daa1 Replace debian-based image with alpine-based.
Remove supervisor usage. Cron now runs as separate service.
CI for backend now performs without Docker.
2018-07-10 20:02:19 +03:00
ErickSkrauch
e3ade6a0cb Update outdated dependencies 2018-07-08 18:38:47 +03:00
ErickSkrauch
c0aa78d156 Implemented WebHooks delivery queue.
Completely removed usage of the RabbitMQ. Queue now based on Redis channels.
Worker process now extracted as separate docker container.
Base image upgraded to the 1.8.0 version (PHP 7.2.7 and pcntl extension).
2018-07-08 18:20:19 +03:00
ErickSkrauch
02ea7346a8 Implemented PHP-CS-Fixer support 2018-04-17 23:47:25 +03:00
ErickSkrauch
ddec87e3a9 Include composer.lock in the repository. Update dependencies. 2018-02-19 20:06:43 +03:00
ErickSkrauch
33091aaefa Переход на yii2-queue с amqp-interop реализацией для RabbitMQ 2018-01-01 16:53:53 +03:00
ErickSkrauch
ea033f70bc Используем форк yii2-queue для исправления поведения при возникновении ошибки обработки задачи 2017-11-29 02:04:13 +03:00
ErickSkrauch
88175fea48 Отправка всех email вынесена в очередь 2017-11-28 14:33:48 +03:00
ErickSkrauch
4d48b38e47 Исправлена совместимость с codeception/specify 1.0.0 2017-11-28 14:24:28 +03:00
ErickSkrauch
8c8116038e Форк Codeception для исправления сброса состояния приложения между запросами в функциональных тестах 2017-11-28 14:23:06 +03:00
ErickSkrauch
a0423d9b13 Yii2 обновлён до 2.0.13.1 2017-11-25 23:21:37 +03:00
ErickSkrauch
867c1a2b3b Интергрирован фреймворк для поддержки аспектного программирования 2017-11-13 17:15:24 +03:00
ErickSkrauch
df340a6ad2 Обновлены зависимости 2017-10-16 00:46:59 +03:00
ErickSkrauch
07de8912bc Добавлен литовский язык 2017-10-04 20:18:15 +03:00
ErickSkrauch
0dbbb2e0de Удалена зависимость от yiisoft/yii2-codeception в пользу интегрированного в Codeception генератора REST адресов
Реорганизованы объекты Pages для Functional тестов
Исправлены не переименованные тесты, оставшиеся после последнего рефакторинга
2017-10-01 03:24:23 +03:00
ErickSkrauch
f51bfcb20d Обновлены версии зависимостей 2017-10-01 03:20:29 +03:00
ErickSkrauch
88d5b2dd7a Обновлена версия yii2-tempmail-validator до 2.0.0, где теперь используется daveearley/Email-Validation-Tool для источника 10-минутных ящиков 2017-10-01 02:04:36 +03:00
ErickSkrauch
dd2c4bc413 Объединены сущности для авторизации посредством JWT токенов и токенов, выданных через oAuth2.
Все действия, связанные с аккаунтами, теперь вызываются через url `/api/v1/accounts/<id>/<action>`.
Добавлена вменяемая система разграничения прав на основе RBAC.
Теперь oAuth2 токены генерируются как случайная строка в 40 символов длинной, а не UUID.
Исправлен баг с неправильным временем жизни токена в ответе успешного запроса аутентификации.
Теперь все unit тесты можно успешно прогнать без наличия интернета.
2017-09-19 20:06:17 +03:00