Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Грейд версий @atls/react-kratos-browser-flows #130

Closed
Nelfimov opened this issue Oct 24, 2023 · 37 comments · Fixed by #147
Closed

Грейд версий @atls/react-kratos-browser-flows #130

Nelfimov opened this issue Oct 24, 2023 · 37 comments · Fixed by #147
Assignees

Comments

@Nelfimov
Copy link
Member

С чем связан запрос на фичу?

Необходимо обновить версии зависимостей у пакета до последних

Расскажите как вы это себе видите

Обновляем через yarn upgrade-interactve (будет обновлять по всему проекту) либо вручную в package.json.

После обновления проверяем с помощью yarn check наличие ошибок, исправляем до ПР.

Приложите пример реализаций

No response

@Nelfimov Nelfimov added the enhancement New feature or request label Oct 24, 2023
@Voiislav
Copy link

@Nelfimov, добрый день. Отписываюсь по итогам задачи:

  1. Устанавливал в свой локальный репозиторий отсюда: [https://www.npmjs.com/package/@atls/react-kratos-browser-flows?activeTab=readme] через команду npm i @atls/react-kratos-browser-flows.
  2. Установил yarn-lock
  3. Запустил обновление версии зависимостей через команду yarn upgrade-interactve и по итогам получил ответ:

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.

  1. Запустил проверку через команду yarn check и по итогам получил ответ:

warning package.json: No license field
warning No license field
success Folder in sync.

Есть два вопроса:

  1. Эти ответы от системы ожидаемы или в чем-то ошибся?
  2. Не совсем понимаю, как связать репозиторий с GitHub, если исходный проект брал не оттуда?

@Nelfimov
Copy link
Member Author

Проверь через yarn -v какой ярн у тебя используется - официальный или наш бандл. Если не наш, то в atls/tools репе есть скрипт для установки нашего бандла в проект.

@Nelfimov
Copy link
Member Author

Ну и по работе - клонировать @atls/react-kratos-browser-flow не надо - могу забегая вперед сказать что в большинстве пакетов можно ставить последние версии. Сомнения вызывает только events

@Voiislav
Copy link

Проверь через 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".

@Nelfimov
Copy link
Member Author

Покажи скрином настройки IDE - typescript, nodejs, пакетный менеджер

@Voiislav
Copy link

Ну и по работе - клонировать @atls/react-kratos-browser-flow не надо - могу забегая вперед сказать что в большинстве пакетов можно ставить последние версии. Сомнения вызывает только events

Пока не понимаю. Я ведь могу обновить зависимости в своем локальном репозитории, только клонировав проект.

@Nelfimov
Copy link
Member Author

Ну и по работе - клонировать @atls/react-kratos-browser-flow не надо - могу забегая вперед сказать что в большинстве пакетов можно ставить последние версии. Сомнения вызывает только events

Пока не понимаю. Я ведь могу обновить зависимости в своем локальном репозитории, только клонировав проект.

Тебе надо:

  1. Склонировать текущую репу
  2. Сделать свою ветку
  3. Обновить зависимости
  4. yarn check
  5. Создать ПР, привязать эту задачу
  6. Запросить у меня ревью

Еще я не обратил внимание - зачем пользуешь 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

Если иное - значит у тебя используется глобальный ярн, с ним ничего работать не будет.

@Voiislav
Copy link

Покажи скрином настройки IDE - typescript, nodejs, пакетный менеджер

photo_2023-10-24 10 13 42

photo_2023-10-24 10 13 47

@Nelfimov
Copy link
Member Author

Имеется в виду не скрины файлов из проекта, а настройки твоей IDE. Вот пример моих настроек:

Screenshot 2023-10-24 at 11 22 46
Screenshot 2023-10-24 at 11 22 51

Обрати внимание что пакетный менеджер ссылается на файл в проекте. Хоть проект другой, но структура папок та же: .yarn/releases. И поэтому при вызове консоли внутри проекта и любой команды yarn ... у меня берется yarn из проекта. Можешь посмотреть в yarnrc.yml путь ссылки до пакетного менеджера.

У тебя VS Code, поэтому точно где эта настройка лежит - не скажу.

Если решишь оставаться на нем, то тебе еще понадобиться ставить это - https://yarnpkg.com/getting-started/editor-sdks

Ну и готовность мучатся с неожиданными ошибками.

@Nelfimov
Copy link
Member Author

Можешь для экспериментов запуска проекта склонировать это и попробовать запустить в dev:

https://github.com/torin-asakura/drum-in

@Voiislav
Copy link

Member

Перешел на WebStorm. Вот скрины моих текущих настроек:

photo_2023-10-24 10 33 53

photo_2023-10-24 10 33 56

@Nelfimov
Copy link
Member Author

Теперь обрати внимание:

  • пакетный менеджер используется глобальный, надо менять путь

  • тайпскрипт так же берется «комплектный» с webstorm. Надо менять на проектный, можешь посмотреть у меня настройки

Ну и убедись что у тебя версия IDE не выше 2022.2.5 - на последующих не работает индексация в монорепозиториях, ждем фикса

@Voiislav
Copy link

Можешь для экспериментов запуска проекта склонировать это и попробовать запустить в dev:

https://github.com/torin-asakura/drum-in

Склонировал проект себе. Тайпскрипт сменился на проектный (теперь понятно, что он автоматически меняется в зависимости от проекта), скрин ниже:

photo_2023-10-24 11 08 36

Теперь 3 вопроса:

  1. Путь пакетного менеджера аналогично тайпскрипту не поменялся, его нужно менять с глобального вручную. Как это сделать?
  2. Команда из atls/tools - yarn set version https://raw.githubusercontent.com/atls/tools/master/yarn/cli/bundles/yarn.js выдает ошибку, по которой как будто бы по самому URL ничего не найдено. Как быть с этим?
  3. Сам проект @atls/react-kratos-browser-flows я изначально клонировал отсюда - https://www.npmjs.com/package/@atls/react-kratos-browser-flows?activeTab=readme, потому что не нашел нужную репу с ровно таким же названием на GitHub. Это верный путь?

@Nelfimov
Copy link
Member Author

Склонировал проект себе. Тайпскрипт сменился на проектный (теперь понятно, что он автоматически меняется в зависимости от проекта), скрин ниже:

photo_2023-10-24 11 08 36

Только обрати внимание - он взялся не из корня проекта а из энтрипоинта. Поменяй на корневой.

  1. Путь пакетного менеджера аналогично тайпскрипту не поменялся, его нужно менять с глобального вручную. Как это сделать?

Указать путь к нашему ярн бандлу, в проекте есть.

  1. Команда из 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

  1. Сам проект @atls/react-kratos-browser-flows я изначально клонировал отсюда - https://www.npmjs.com/package/@atls/react-kratos-browser-flows?activeTab=readme, потому что не нашел нужную репу с ровно таким же названием на GitHub. Это верный путь?

Нет - это ты установил пакет себе. Тебе надо клонировать текущую репу и работать из нее.

@Voiislav
Copy link

@Nelfimov зависимости обновил. После yarn check много ошибок. Нужно прикреплять скрины ошибок? Или исправляю их самостоятельно?

@Nelfimov
Copy link
Member Author

Можешь логи прикрепить если нужен совет как с этим быть. Только обязательно не скрины, а вставкой в виде кода. И желательно засунуть под спойлер.

@Voiislav
Copy link

Voiislav commented Oct 24, 2023

@Nelfimov

Details

➤ 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. node:internal/main/worker_thread:132:5
➤ YN0000: │ [nodejs.internal.kHybridDispatch] node:internal/event_target:741:20
➤ YN0000: │ exports.emitMessage node:internal/per_context/messageport:23:28
➤ YN0000: └ Completed in 0s 607ms
➤ YN0000: Failed with errors in 0s 610ms
➤ YN0000: ┌ Typecheck
➤ YN0000: │ Error: Cannot find type definition file for 'testing-library__jest-dom'.
➤ YN0000: │ The file is in the program because:
➤ YN0000: │ Entry point for implicit type library 'testing-library__jest-dom'
➤ YN0000: │
➤ YN0000: │
➤ YN0000: │ packages/kratos-browser-flows/src/flows/abstract.flow.ts:50:24
➤ YN0000: │
➤ YN0000: │ Error: Property 'ui' does not exist on type 'NonNullable'.
➤ YN0000: │
➤ YN0000: │ 48 |
➤ YN0000: │ 49 | getMessages() {
➤ YN0000: │ > 50 | return this.#state?.ui?.messages || []
➤ YN0000: │ | ^
➤ YN0000: │ 51 | }
➤ YN0000: │ 52 |
➤ YN0000: │ 53 | getNode(name) {
➤ YN0000: │
➤ YN0000: │
➤ YN0000: │ packages/kratos-browser-flows/src/flows/abstract.flow.ts:54:24
➤ YN0000: │
➤ YN0000: │ Error: Property 'ui' does not exist on type 'NonNullable'.
➤ YN0000: │
➤ YN0000: │ 52 |
➤ YN0000: │ 53 | getNode(name) {
➤ YN0000: │ > 54 | return this.#state?.ui?.nodes?.find(
➤ YN0000: │ | ^
➤ YN0000: │ 55 | (node) => (node.attributes as UiNodeInputAttributes).name === name
➤ YN0000: │ 56 | )
➤ YN0000: │ 57 | }
➤ YN0000: │
➤ YN0000: │
➤ YN0000: │ packages/kratos-browser-flows/src/flows/abstract.flow.ts:61:19
➤ YN0000: │
➤ YN0000: │ Error: Property 'ui' does not exist on type 'NonNullable'.
➤ YN0000: │
➤ YN0000: │ 59 | getNodes(name) {
➤ YN0000: │ 60 | return (
➤ YN0000: │ > 61 | this.#state?.ui?.nodes?.filter(
➤ YN0000: │ | ^
➤ YN0000: │ 62 | (node) => (node.attributes as UiNodeInputAttributes).name === name
➤ YN0000: │ 63 | ) || []
➤ YN0000: │ 64 | )
➤ YN0000: │
➤ YN0000: │
➤ YN0000: │ packages/kratos-browser-flows/src/flows/abstract.flow.ts:68:24
➤ YN0000: │
➤ YN0000: │ Error: Property 'ui' does not exist on type 'NonNullable'.
➤ YN0000: │
➤ YN0000: │ 66 |
➤ YN0000: │ 67 | getNodesGroup(group) {
➤ YN0000: │ > 68 | return this.#state?.ui?.nodes?.filter((node) => node.group === group) || []
➤ YN0000: │ | ^
➤ YN0000: │ 69 | }
➤ YN0000: │ 70 |
➤ YN0000: │ 71 | getValue(name): string | any {
➤ YN0000: │
➤ YN0000: │
➤ YN0000: │ packages/kratos-browser-flows/src/flows/abstract.flow.ts:84:11
➤ YN0000: │
➤ YN0000: │ Error: Property 'ui' does not exist on type 'NonNullable'.
➤ YN0000: │
➤ YN0000: │ 82 |
➤ YN0000: │ 83 | protected setValues(state: State) {
➤ YN0000: │ > 84 | state?.ui?.nodes?.forEach(({ attributes }) => {
➤ YN0000: │ | ^
➤ YN0000: │ 85 | if (!this.#values[(attributes as UiNodeInputAttributes).name]) {
➤ YN0000: │ 86 | this.#values[(attributes as UiNodeInputAttributes).name] =
➤ YN0000: │ 87 | (attributes as UiNodeInputAttributes).value || ''
➤ YN0000: │
➤ YN0000: │
➤ YN0000: │ packages/kratos-browser-flows/src/flows/errors.flow.ts
➤ YN0000: │
➤ YN0000: │ Error: Property 'getSelfServiceError' does not exist on type 'KratosClient'.
➤ YN0000: │
➤ YN0000: │
➤ YN0000: │ packages/kratos-browser-flows/src/flows/flow.interfaces.ts
➤ YN0000: │
➤ YN0000: │ Error: Module '"@ory/kratos-client"' has no exported member 'SelfServiceRegistrationFlow'.
➤ YN0000: │
➤ YN0000: │
➤ YN0000: │ packages/kratos-browser-flows/src/flows/flow.interfaces.ts
➤ YN0000: │
➤ YN0000: │ Error: Module '"@ory/kratos-client"' has no exported member 'SelfServiceVerificationFlow'.
➤ YN0000: │
➤ YN0000: │
➤ YN0000: │ packages/kratos-browser-flows/src/flows/flow.interfaces.ts
➤ YN0000: │
➤ YN0000: │ Error: Module '"@ory/kratos-client"' has no exported member 'SelfServiceRecoveryFlow'.
➤ YN0000: │
➤ YN0000: │
➤ YN0000: │ packages/kratos-browser-flows/src/flows/flow.interfaces.ts
➤ YN0000: │
➤ YN0000: │ Error: Module '"@ory/kratos-client"' has no exported member 'SelfServiceSettingsFlow'.
➤ YN0000: │
➤ YN0000: │
➤ YN0000: │ packages/kratos-browser-flows/src/flows/flow.interfaces.ts
➤ YN0000: │
➤ YN0000: │ Error: Module '"@ory/kratos-client"' has no exported member 'SelfServiceLoginFlow'.
➤ YN0000: │
➤ YN0000: │
➤ YN0000: │ packages/kratos-browser-flows/src/flows/flow.interfaces.ts
➤ YN0000: │
➤ YN0000: │ Error: Module '"@ory/kratos-client"' has no exported member 'SubmitSelfServiceRegistrationFlowBody'.
➤ YN0000: │
➤ YN0000: │
➤ YN0000: │ packages/kratos-browser-flows/src/flows/flow.interfaces.ts
➤ YN0000: │
➤ YN0000: │ Error: Module '"@ory/kratos-client"' has no exported member 'SubmitSelfServiceVerificationFlowBody'.
➤ YN0000: │
➤ YN0000: │
➤ YN0000: │ packages/kratos-browser-flows/src/flows/flow.interfaces.ts
➤ YN0000: │
➤ YN0000: │ Error: Module '"@ory/kratos-client"' has no exported member 'SubmitSelfServiceRecoveryFlowBody'.
➤ YN0000: │
➤ YN0000: │
➤ YN0000: │ packages/kratos-browser-flows/src/flows/flow.interfaces.ts
➤ YN0000: │
➤ YN0000: │ Error: Module '"@ory/kratos-client"' has no exported member 'SubmitSelfServiceSettingsFlowBody'.
➤ YN0000: │
➤ YN0000: │
➤ YN0000: │ packages/kratos-browser-flows/src/flows/flow.interfaces.ts
➤ YN0000: │
➤ YN0000: │ Error: Module '"@ory/kratos-client"' has no exported member 'SubmitSelfServiceLoginFlowBody'.
➤ YN0000: │
➤ YN0000: │
➤ YN0000: │ packages/kratos-browser-flows/src/flows/kratos.client.ts
➤ YN0000: │
➤ YN0000: │ Error: Module '"@ory/kratos-client"' has no exported member 'V0alpha2Api'.
➤ YN0000: │
➤ YN0000: │
➤ YN0000: │ packages/kratos-browser-flows/src/flows/login.flow.ts
➤ YN0000: │
➤ YN0000: │ Error: Module '"@ory/kratos-client"' has no exported member 'SelfServiceLoginFlow'.
➤ YN0000: │
➤ YN0000: │
➤ YN0000: │ packages/kratos-browser-flows/src/flows/login.flow.ts
➤ YN0000: │
➤ YN0000: │ Error: Module '"@ory/kratos-client"' has no exported member 'SubmitSelfServiceLoginFlowBody'.
➤ YN0000: │
➤ YN0000: │
➤ YN0000: │ packages/kratos-browser-flows/src/flows/login.flow.ts
➤ YN0000: │
➤ YN0000: │ Error: Property 'getSelfServiceLoginFlow' does not exist on type 'KratosClient'.
➤ YN0000: │
➤ YN0000: │
➤ YN0000: │ packages/kratos-browser-flows/src/flows/login.flow.ts
➤ YN0000: │
➤ YN0000: │ Error: Property 'initializeSelfServiceLoginFlowForBrowsers' does not exist on type 'KratosClient'.
➤ YN0000: │
➤ YN0000: │
➤ YN0000: │ packages/kratos-browser-flows/src/flows/login.flow.ts
➤ YN0000: │
➤ YN0000: │ Error: Property 'submitSelfServiceLoginFlow' does not exist on type 'KratosClient'.
➤ YN0000: │
➤ YN0000: │
➤ YN0000: │ packages/kratos-browser-flows/src/flows/logout.flow.ts
➤ YN0000: │
➤ YN0000: │ Error: Property 'createSelfServiceLogoutFlowUrlForBrowsers' does not exist on type 'KratosClient'.
➤ YN0000: │
➤ YN0000: │
➤ YN0000: │ packages/kratos-browser-flows/src/flows/logout.flow.ts
➤ YN0000: │
➤ YN0000: │ Error: Property 'submitSelfServiceLogoutFlow' does not exist on type 'KratosClient'.
➤ YN0000: │
➤ YN0000: │
➤ YN0000: │ packages/kratos-browser-flows/src/flows/recovery.flow.ts
➤ YN0000: │
➤ YN0000: │ Error: Module '"@ory/kratos-client"' has no exported member 'SelfServiceRecoveryFlow'.
➤ YN0000: │
➤ YN0000: │
➤ YN0000: │ packages/kratos-browser-flows/src/flows/recovery.flow.ts
➤ YN0000: │
➤ YN0000: │ Error: Module '"@ory/kratos-client"' has no exported member 'SubmitSelfServiceRecoveryFlowBody'.
➤ YN0000: │
➤ YN0000: │
➤ YN0000: │ packages/kratos-browser-flows/src/flows/recovery.flow.ts
➤ YN0000: │
➤ YN0000: │ Error: Property 'getSelfServiceRecoveryFlow' does not exist on type 'KratosClient'.
➤ YN0000: │
➤ YN0000: │
➤ YN0000: │ packages/kratos-browser-flows/src/flows/recovery.flow.ts
➤ YN0000: │
➤ YN0000: │ Error: Property 'initializeSelfServiceRecoveryFlowForBrowsers' does not exist on type 'KratosClient'.
➤ YN0000: │
➤ YN0000: │
➤ YN0000: │ packages/kratos-browser-flows/src/flows/recovery.flow.ts
➤ YN0000: │
➤ YN0000: │ Error: Property 'submitSelfServiceRecoveryFlow' does not exist on type 'KratosClient'.
➤ YN0000: │
➤ YN0000: │
➤ YN0000: │ packages/kratos-browser-flows/src/flows/registration.flow.ts
➤ YN0000: │
➤ YN0000: │ Error: Module '"@ory/kratos-client"' has no exported member 'SelfServiceRegistrationFlow'.
➤ YN0000: │
➤ YN0000: │
➤ YN0000: │ packages/kratos-browser-flows/src/flows/registration.flow.ts
➤ YN0000: │
➤ YN0000: │ Error: Module '"@ory/kratos-client"' has no exported member 'SubmitSelfServiceRegistrationFlowBody'.
➤ YN0000: │
➤ YN0000: │
➤ YN0000: │ packages/kratos-browser-flows/src/flows/registration.flow.ts
➤ YN0000: │
➤ YN0000: │ Error: Property 'getSelfServiceRegistrationFlow' does not exist on type 'KratosClient'.
➤ YN0000: │
➤ YN0000: │
➤ YN0000: │ packages/kratos-browser-flows/src/flows/registration.flow.ts
➤ YN0000: │
➤ YN0000: │ Error: Property 'initializeSelfServiceRegistrationFlowForBrowsers' does not exist on type 'KratosClient'.
➤ YN0000: │
➤ YN0000: │
➤ YN0000: │ packages/kratos-browser-flows/src/flows/registration.flow.ts
➤ YN0000: │
➤ YN0000: │ Error: Property 'submitSelfServiceRegistrationFlow' does not exist on type 'KratosClient'.
➤ YN0000: │
➤ YN0000: │
➤ YN0000: │ packages/kratos-browser-flows/src/flows/settings.flow.ts
➤ YN0000: │
➤ YN0000: │ Error: Module '"@ory/kratos-client"' has no exported member 'SelfServiceSettingsFlow'.
➤ YN0000: │
➤ YN0000: │
➤ YN0000: │ packages/kratos-browser-flows/src/flows/settings.flow.ts
➤ YN0000: │
➤ YN0000: │ Error: Module '"@ory/kratos-client"' has no exported member 'SubmitSelfServiceSettingsFlowBody'.
➤ YN0000: │
➤ YN0000: │
➤ YN0000: │ packages/kratos-browser-flows/src/flows/settings.flow.ts
➤ YN0000: │
➤ YN0000: │ Error: Property 'getSelfServiceSettingsFlow' does not exist on type 'KratosClient'.
➤ YN0000: │
➤ YN0000: │
➤ YN0000: │ packages/kratos-browser-flows/src/flows/settings.flow.ts
➤ YN0000: │
➤ YN0000: │ Error: Property 'initializeSelfServiceSettingsFlowForBrowsers' does not exist on type 'KratosClient'.
➤ YN0000: │
➤ YN0000: │
➤ YN0000: │ packages/kratos-browser-flows/src/flows/settings.flow.ts
➤ YN0000: │
➤ YN0000: │ Error: Property 'submitSelfServiceSettingsFlow' does not exist on type 'KratosClient'.
➤ YN0000: │
➤ YN0000: │
➤ YN0000: │ packages/kratos-browser-flows/src/flows/verification.flow.ts
➤ YN0000: │
➤ YN0000: │ Error: Module '"@ory/kratos-client"' has no exported member 'SelfServiceVerificationFlow'.
➤ YN0000: │
➤ YN0000: │
➤ YN0000: │ packages/kratos-browser-flows/src/flows/verification.flow.ts
➤ YN0000: │
➤ YN0000: │ Error: Module '"@ory/kratos-client"' has no exported member 'SubmitSelfServiceVerificationFlowBody'.
➤ YN0000: │
➤ YN0000: │
➤ YN0000: │ packages/kratos-browser-flows/src/flows/verification.flow.ts
➤ YN0000: │
➤ YN0000: │ Error: Property 'getSelfServiceVerificationFlow' does not exist on type 'KratosClient'.
➤ YN0000: │
➤ YN0000: │
➤ YN0000: │ packages/kratos-browser-flows/src/flows/verification.flow.ts
➤ YN0000: │
➤ YN0000: │ Error: Property 'initializeSelfServiceVerificationFlowForBrowsers' does not exist on type 'KratosClient'.
➤ YN0000: │
➤ YN0000: │
➤ YN0000: │ packages/kratos-browser-flows/src/flows/verification.flow.ts
➤ YN0000: │
➤ YN0000: │ Error: Property 'submitSelfServiceVerificationFlow' does not exist on type 'KratosClient'.
➤ YN0000: │
➤ YN0000: │
➤ YN0000: │ packages/kratos-browser-flows/src/ui/flow-error.component.tsx:1:9
➤ YN0000: │
➤ YN0000: │ Error: Module '"@ory/kratos-client"' has no exported member 'SelfServiceError'.
➤ YN0000: │
➤ YN0000: │ > 1 | import { SelfServiceError } from '@ory/kratos-client'
➤ YN0000: │ | ^
➤ YN0000: │ 2 |
➤ YN0000: │ 3 | import { ReactElement } from 'react'
➤ YN0000: │ 4 | import { FC } from 'react'
➤ YN0000: │
➤ YN0000: │
➤ YN0000: └ Completed in 16s 271ms
➤ YN0000: Failed with errors in 16s 272ms
➤ YN0000: ┌ Lint
➤ YN0000: └ Completed in 8s 593ms
➤ YN0000: Done in 8s 594ms

Как видно, ошибки найдены в:

  1. packages/kratos-browser-flows/src/flows/abstract.flow.ts;
  2. packages/kratos-browser-flows/src/flows/errors.flow.ts;
  3. packages/kratos-browser-flows/src/flows/flow.interfaces.ts;
  4. packages/kratos-browser-flows/src/flows/kratos.client.ts;
  5. packages/kratos-browser-flows/src/flows/login.flow.ts;
  6. packages/kratos-browser-flows/src/flows/logout.flow.ts;
  7. packages/kratos-browser-flows/src/flows/recovery.flow.ts;
  8. packages/kratos-browser-flows/src/flows/registration.flow.ts;
  9. packages/kratos-browser-flows/src/flows/settings.flow.ts;
  10. packages/kratos-browser-flows/src/flows/verification.flow.ts;
  11. packages/kratos-browser-flows/src/ui/flow-error.component.tsx

Большая часть ошибок связана с @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-library__jest-dom'.
➤ YN0000: │ The file is in the program because:
➤ YN0000: │ Entry point for implicit type library 'testing-library__jest-dom'
_

@Voiislav
Copy link

Voiislav commented Oct 24, 2023

@Nelfimov, думаю, причина части ошибок - @ory/kratos-client не установлена. Но при попытке установить также возникает ошибка, которая ссылается некорректный пакетный менеджер. Скрины ниже под спойлером.
Как проект работал до обновления зависимостей? Или только после обновления зависимостей должна была возникнуть проблема с импортами из @ory/kratos-client?

Details

photo_2023-10-24 14 17 02

photo_2023-10-24 14 17 04

UPD: Откатился назад и сделал yarn check ДО обновления - ошибок нет. При этом до обновления версия @ory/kratos-client - 0.8.2-alpha, а после - 1.0.0. Может, не стоит делать обновление по всему проекту во избежание ошибок?
UPD2: Если после обновления внутри yarn.lock вручную изменить версию @ory/kratos-client на ту, что была до обновления, все ошибки сохраняются.

@Voiislav
Copy link

Voiislav commented Oct 24, 2023

@Nelfimov, я сделал обновление еще раз. При этом не выбирал те latest версии, которые были подсвечены красным. После yarn check ошибок нет. Создал ПР и запросил ревью.

@Nelfimov
Copy link
Member Author

Не совсем понял что имеешь в виду под "обновлением" - убедись что у тебя последняя версия нашего ярна, обнови зависимости в пакете, запусти yarn check

@Voiislav
Copy link

Не совсем понял что имеешь в виду под "обновлением" - убедись что у тебя последняя версия нашего ярна, обнови зависимости в пакете, запусти yarn check

Убедился, обновил зависимости, yarn check прошел без ошибок. Занимаюсь ошибками ПР.

@OsirisAnubiz
Copy link
Member

@Nelfimov я правильно понимаю, что yarn upgrade-interactiveв текущей версии бандла yarn не работает? (команда была упомянута в описании к issue)

Действия которые я проделал:

  1. Ввёл команду yarn upgrade-interactive возможные версии пакетов показались
  2. При попытке выбрать определённый пакет и нажать <Enter> команда останавливается, причём код завершения успешный (0), но ничего не происходит.

P.S
Классная команда, жаль только сейчас узнал

@Nelfimov
Copy link
Member Author

Работает. Можешь в другом репозитории протестировать

@OsirisAnubiz
Copy link
Member

@Nelfimov нужно исправить все чеки по проекту или можно ограничиться только чеками той библиотеки, где обновляю версии?

@Nelfimov
Copy link
Member Author

@OsirisAnubiz Можно ограничиться твоей библиотекой

@OsirisAnubiz
Copy link
Member

Статус на конец дня:

  • Частично исправил lint для укзанной библиотеки

Осталось сделать:

  • Доисправлять lint для библиотеки
  • Увеличить версии

P.S.
Не могу залить изменения, т.к. новый бандл не пускает файлы, если они не полностью исправлены

@OsirisAnubiz
Copy link
Member

Решил исправить все ошибки линта

Статус на конец дня:

  • исправил линт для:
    • react identity user
    • react app links
    • react user
    • kratos browser flow

Осталось:

  • вроде 3 либы ещё, думаю за завтра справлюсь

@OsirisAnubiz
Copy link
Member

@Nelfimov забыл спросить. Может висячий PR удалить?

@TorinAsakura
Copy link
Member

@OsirisAnubiz Кинь линк - гляну

@OsirisAnubiz
Copy link
Member

OsirisAnubiz commented Oct 18, 2024

@TorinAsakura

@OsirisAnubiz Кинь линк - гляну

PR

@OsirisAnubiz
Copy link
Member

@Nelfimov думаю стоит залочить issue на текущий issue, я линт исправил много где и будет не очень, если человек задачу начнёт в пустую делать

@Nelfimov
Copy link
Member Author

Можешь сам закрыть либо оставить комментарий с прогрессом

@OsirisAnubiz
Copy link
Member

исправил линт, но остались проблемы с typecheck (ошибки про styled-system и @emotion/sheet), увеличиваю версии

@OsirisAnubiz
Copy link
Member

@Nelfimov
вот тут как зависимость указанна библиотека для тестов, хотя тестов в kratos-browser-flows нет. Удалять её?

@OsirisAnubiz
Copy link
Member

@Nelfimov и остальные библиотеки, которые не используются

@Nelfimov
Copy link
Member Author

@Nelfimov вот тут как зависимость указанна библиотека для тестов, хотя тестов в kratos-browser-flows нет. Удалять её?

da

@OsirisAnubiz OsirisAnubiz linked a pull request Oct 22, 2024 that will close this issue
@OsirisAnubiz
Copy link
Member

Статус на конец дня:

  • увеличил версии и справил линт для всего проекта

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
5 participants