Open Nelfimov opened 8 months ago
@Nelfimov, добрый день. Отписываюсь по итогам задачи:
yarn upgrade-interactive v1.22.19 warning package.json: No license field warning No license field success All of your dependencies are up to date.
warning package.json: No license field warning No license field success Folder in sync.
Есть два вопроса:
Проверь через yarn -v
какой ярн у тебя используется - официальный или наш бандл. Если не наш, то в atls/tools
репе есть скрипт для установки нашего бандла в проект.
Ну и по работе - клонировать @atls/react-kratos-browser-flow
не надо - могу забегая вперед сказать что в большинстве пакетов можно ставить последние версии. Сомнения вызывает только events
Проверь через
yarn -v
какой ярн у тебя используется - официальный или наш бандл. Если не наш, то вatls/tools
репе есть скрипт для установки нашего бандла в проект.
Сейчас официальный yarn v. 1.22.19. При установке вашего по команде yarn set version https://raw.githubusercontent.com/atls/tools/master/yarn/cli/bundles/yarn.js выдает ошибку, как будто по ссылке ничего нужного нет:
error An unexpected error occurred: "Release not found: https://raw.githubusercontent.com/atls/tools/master/yarn/cli/bundles/yarn.js".
Покажи скрином настройки IDE - typescript, nodejs, пакетный менеджер
Ну и по работе - клонировать
@atls/react-kratos-browser-flow
не надо - могу забегая вперед сказать что в большинстве пакетов можно ставить последние версии. Сомнения вызывает толькоevents
Пока не понимаю. Я ведь могу обновить зависимости в своем локальном репозитории, только клонировав проект.
Ну и по работе - клонировать
@atls/react-kratos-browser-flow
не надо - могу забегая вперед сказать что в большинстве пакетов можно ставить последние версии. Сомнения вызывает толькоevents
Пока не понимаю. Я ведь могу обновить зависимости в своем локальном репозитории, только клонировав проект.
Тебе надо:
yarn check
Еще я не обратил внимание - зачем пользуешь npm i...
? У нас вся работа ведется через yarn
. В каждом проекте бандл кладется в .yarn/releases
. Поэтому когда ты выполняешь yarn -v
в проекте тебе должна выдаваться наша версия, например
nikoroach@Nikitas-MacBook-Pro good-gantt % yarn -v
(node:24512) [DEP0005] DeprecationWarning: Buffer() is deprecated due to security and usability issues. Please use the Buffer.alloc(), Buffer.allocUnsafe(), or Buffer.from() methods instead.
(Use `node --trace-deprecation ...` to show where the warning was created)
0.0.1-git.20230911.hash-1c44e15
Если иное - значит у тебя используется глобальный ярн, с ним ничего работать не будет.
Покажи скрином настройки IDE - typescript, nodejs, пакетный менеджер
Имеется в виду не скрины файлов из проекта, а настройки твоей IDE. Вот пример моих настроек:
Обрати внимание что пакетный менеджер ссылается на файл в проекте. Хоть проект другой, но структура папок та же: .yarn/releases
. И поэтому при вызове консоли внутри проекта и любой команды yarn ...
у меня берется yarn
из проекта. Можешь посмотреть в yarnrc.yml
путь ссылки до пакетного менеджера.
У тебя VS Code, поэтому точно где эта настройка лежит - не скажу.
Если решишь оставаться на нем, то тебе еще понадобиться ставить это - https://yarnpkg.com/getting-started/editor-sdks
Ну и готовность мучатся с неожиданными ошибками.
Можешь для экспериментов запуска проекта склонировать это и попробовать запустить в dev
:
Member
Перешел на WebStorm. Вот скрины моих текущих настроек:
Теперь обрати внимание:
пакетный менеджер используется глобальный, надо менять путь
тайпскрипт так же берется «комплектный» с webstorm. Надо менять на проектный, можешь посмотреть у меня настройки
Ну и убедись что у тебя версия IDE не выше 2022.2.5 - на последующих не работает индексация в монорепозиториях, ждем фикса
Можешь для экспериментов запуска проекта склонировать это и попробовать запустить в
dev
:
Склонировал проект себе. Тайпскрипт сменился на проектный (теперь понятно, что он автоматически меняется в зависимости от проекта), скрин ниже:
Теперь 3 вопроса:
Склонировал проект себе. Тайпскрипт сменился на проектный (теперь понятно, что он автоматически меняется в зависимости от проекта), скрин ниже:
Только обрати внимание - он взялся не из корня проекта а из энтрипоинта. Поменяй на корневой.
- Путь пакетного менеджера аналогично тайпскрипту не поменялся, его нужно менять с глобального вручную. Как это сделать?
Указать путь к нашему ярн бандлу, в проекте есть.
- Команда из atls/tools - yarn set version https://raw.githubusercontent.com/atls/tools/master/yarn/cli/bundles/yarn.js выдает ошибку, по которой как будто бы по самому URL ничего не найдено. Как быть с этим?
Сначала сделай п.1, потом попробуй еще раз. Так то при простом переходе по ссылке https://raw.githubusercontent.com/atls/tools/master/yarn/cli/bundles/yarn.js файл есть.
Если и так ничего не выйдет, просто скопируй данные из ссылки в свой бандл. Ну и проследи чтобы название файла бандла совпадало с тем что указано в yarnrc.yml
- Сам проект @atls/react-kratos-browser-flows я изначально клонировал отсюда - https://www.npmjs.com/package/@atls/react-kratos-browser-flows?activeTab=readme, потому что не нашел нужную репу с ровно таким же названием на GitHub. Это верный путь?
Нет - это ты установил пакет себе. Тебе надо клонировать текущую репу и работать из нее.
@Nelfimov зависимости обновил. После yarn check много ошибок. Нужно прикреплять скрины ошибок? Или исправляю их самостоятельно?
Можешь логи прикрепить если нужен совет как с этим быть. Только обязательно не скрины, а вставкой в виде кода. И желательно засунуть под спойлер.
@Nelfimov
➤ YN0000: ┌ Format
➤ YN0000: │ Cannot find module '/Users/voiislav/Desktop/WebDev/reactjs/packages/kratos-browser-flows/.pnp.cjs'
➤ YN0000: │ Require stack:
➤ YN0000: │ - internal/preload
➤ YN0000: │
➤ YN0000: │ Module._resolveFilename node:internal/modules/cjs/loader:1077:15
➤ YN0000: │ Module._load node:internal/modules/cjs/loader:922:27
➤ YN0000: │ internalRequire node:internal/modules/cjs/loader:174:19
➤ YN0000: │ Module._preloadModules node:internal/modules/cjs/loader:1433:5
➤ YN0000: │ loadPreloadModules node:internal/process/pre_execution:598:5
➤ YN0000: │ setupUserModules node:internal/process/pre_execution:117:3
➤ YN0000: │ MessagePort.
Как видно, ошибки найдены в:
Большая часть ошибок связана с @ory/kratos-client (примеры: Error: Property 'submitSelfServiceLogoutFlow' does not exist on type 'KratosClient'; Error: Module '"@ory/kratos-client"' has no exported member 'SelfServiceLoginFlow'). Прочитал, что одной из причин может быть проблема с версией @ory/kratos-client, стоит работать в этом направлении?
Также не определены типы для 'testing-library__jest-dom'. Текст ошибки: Error: Cannot find type definition file for 'testing-libraryjest-dom'. ➤ YN0000: │ The file is in the program because: ➤ YN0000: │ Entry point for implicit type library 'testing-libraryjest-dom'
@Nelfimov, думаю, причина части ошибок - @ory/kratos-client не установлена. Но при попытке установить также возникает ошибка, которая ссылается некорректный пакетный менеджер. Скрины ниже под спойлером. Как проект работал до обновления зависимостей? Или только после обновления зависимостей должна была возникнуть проблема с импортами из @ory/kratos-client?
![photo_2023-10-24 14 17 02](https://github.com/atls/reactjs/assets/133046530/ad1aff14-1671-447b-a044-468b485d90f2) ![photo_2023-10-24 14 17 04](https://github.com/atls/reactjs/assets/133046530/a8db0c0d-7877-4adb-8f08-a179f2737915)
UPD: Откатился назад и сделал yarn check ДО обновления - ошибок нет. При этом до обновления версия @ory/kratos-client - 0.8.2-alpha, а после - 1.0.0. Может, не стоит делать обновление по всему проекту во избежание ошибок? UPD2: Если после обновления внутри yarn.lock вручную изменить версию @ory/kratos-client на ту, что была до обновления, все ошибки сохраняются.
@Nelfimov, я сделал обновление еще раз. При этом не выбирал те latest версии, которые были подсвечены красным. После yarn check ошибок нет. Создал ПР и запросил ревью.
Не совсем понял что имеешь в виду под "обновлением" - убедись что у тебя последняя версия нашего ярна, обнови зависимости в пакете, запусти yarn check
Не совсем понял что имеешь в виду под "обновлением" - убедись что у тебя последняя версия нашего ярна, обнови зависимости в пакете, запусти
yarn check
Убедился, обновил зависимости, yarn check прошел без ошибок. Занимаюсь ошибками ПР.
С чем связан запрос на фичу?
Необходимо обновить версии зависимостей у пакета до последних
Расскажите как вы это себе видите
Обновляем через
yarn upgrade-interactve
(будет обновлять по всему проекту) либо вручную вpackage.json
.После обновления проверяем с помощью
yarn check
наличие ошибок, исправляем до ПР.Приложите пример реализаций
No response