Актуализировать окружение
С чем связан запрос на фичу?
Падающие чеки, старые тесты
Расскажите как вы это себе видите
- [x] Починить чеки
- [ ] Актуализировать тесты
- [ ] Почистить пакетные расширения
Материалы
https://github.com/atls/nestjs/actions/runs/10911274215/job/30283606649
@OsirisAnubiz для понимания какие чеки и тесты падают - создай новый пр и смотри по его чекам.
@TorinAsakura тут о чем речь?
- [ ] Почистить пакетные расширения
@OsirisAnubiz тут
- [ ] Почистить пакетные расширения
Нужно проверить packageExtensions в yarnrc и почистить от ненужного
@Nelfimov нужно ли добавлять тайпинги для библиотек, чтобы не было подобных @ts-ignore?
// @ts-ignore
import { jsonFlatStringify } from '@graphql-mesh/utils'
Да
@Nelfimov когда запускаю yarn test integration grpc-relection (для других некотрых тестов такая же ситтуация) выходит ошибка:
ReferenceError: self is not defined
Знаешь как её исправить? (уже пробовал с/без export NODE_OPTIONS=--experimental-vm-modules)
это не исправишь, кроме как бампа google-protobuf.
скипай
@Nelfimov все тесты, которые падают на данный момент падают с ошибкой self is not defined.
by OsirisAnubiz
когда запускаю yarn test integration grpc-relection (для других некотрых тестов такая же ситтуация) выходит ошибка: ReferenceError: self is not defined
by Nelfimov:
это не исправишь, кроме как бампа google-protobuf. скипай
Их всех не надо трогать?
в рамках отдельного ПР
Статус на конец дня:
- Осталось ~10.000 строк ошибок при
yarn lint, было ~16.000 (не знаю ещё как статус отметить)
Осталось сделать:
- ~10.000 строк ошибок, думаю за завтра справлюсь (может послезавтра ещё буду, т.к. это не приоритетная задача)
Осталось сделать:
- ~10.000 строк ошибок, думаю за завтра справлюсь (может послезавтра ещё буду, т.к. это не приоритетная задача)
Можешь аккуратно попробовать yarn lint --fix
by OsirisAnubiz
все тесты, которые падают на данный момент падают с ошибкой self is not defined Их всех не надо трогать?
by Nelfimov
в рамках отдельного ПР
@Nelfimov нужно залить то, что исправляет yarn check сейчас и создать ещё одну ветку для пункта Актуализировать тесты (где буду решать проблему с self) и ещё одну для чистки пакетных расширений?
рассуждай логически - если можно разделить что-то чтобы потом:
- было легче ревьюить
- было легче откатывать из мастера
то можно
@Nelfimov не понял как правильно делать пункт Почистить пакетные расширения. Сделал приблизительно сдедующее:
Допустим вижу в .yarnrc.yml в packageExtensions есть следующий пункт:
typesense@*:
dependencies:
'@babel/runtime': '*'
Что я сделал для проверки, что этот пункт можно удалить:
Удалил этот пункт, прописал yarn запустил unit тесты, всё прошло.
- Посмотрел какие версии
typesenseиспользуются в проекте. - Увидел, что в проекте используется версия
typesense: "1.8.2" или "^0.15". - Зашёл на github репозиторий
typesenseи вижу, что у них для этих версий указывается следующая строка (сморю для последней минорной версии0.15.xи1.8.2) вpackage.json:
для 0.15.0 (последняя минорная для 0.15.x):
"peerDependencies": {
"@babel/runtime": "^7.14.6"
},
для 1.8.2:
"peerDependencies": {
"@babel/runtime": "^7.23.2"
},
Получается, что нет необходимости в исходном пункте, т.к. библиотека и так сама устанавливает зависимость.
Если все вышеперечисленное оказалось правильным, то могу удалять?
@Nelfimov правильно я описал в сообщении выше?
Проще так:
- удалить запись из yarnrc
yarn installyarn test unitиyarn test integration- препак для пакетов с этой зависимостью
@Nelfimov Я делаю вообще просто - сношу все расширения и потом смотрю на реакцию инсталла. Быстрее и нагляднее
@TorinAsakura команда yarn install в случае проблем не сможет вообще выполниться, или она выдаст какой-то спецефичный лог?
@OsirisAnubiz Ты пока писал уже бы 2-3 раза это проверил
@Nelfimov чтобы на данном этапе можно было проверять убирание пакетных расширений из .yarnrc.yml нужно решить проблему с ReferenceError: self is not defined в интеграционных тестах, чтобы можно было полноценно прогнать интеграционные после изменения .yarnrc.yml
Ранее ты писал:
это не исправишь, кроме как бампа google-protobuf.
скипай
Бамп google-protobuf это что имеется ввиду?
https://www.npmjs.com/package/google-protobuf
https://ru.hinative.com/questions/386438
Не одна из следующих версий google-protobuf в packages/nestjs-grpc-reflection/package.json не решило проблему с ReferenceError: self is not defined:
- [x] 3.7.1
- [x] 3.8.0
- [x] 3.9.2
- [x] 3.10.0
- [x] 3.11.2
- [x] 3.11.4
- [x] 3.12.4
- [x] 3.13.0
- [x] 3.14.0
- [x] 3.15.7
- [x] 3.16.0
- [x] 3.16.0
- [x] 3.17.3
- [x] 3.18.1
- [x] 3.19.4
- [x] 3.20.1
- [x] 3.21.0
- [x] 3.21.1
- [x] 3.21.2
- [x] 3.21.3
- [x] 3.21.4
Есть issue по этому поводу, там человеку помог откат google-protobuf до версии 3.11.2, но в данном случае не помогает.
Статус на конец дня:
- Пробовал запустить с разными версиями
google-protobuf, ничего не получилось, по сути понятия не имею, что мне надо делать сейчас, т.к. нужно сделать тесты запускаемыми перед преступанию к следующему этапу.
Статус на конец дня
- Почистил расширения, кинул PR
Осталось сделать
- Ожидаю замечания от ревьюера.
- Начну чинить ошибки в тестах с
self is not defined