react-components icon indicating copy to clipboard operation
react-components copied to clipboard

Formik error when using latest version in project

Open steverydz opened this issue 1 year ago • 4 comments

When using the latest version (0.51.4) of this package in a project, e.g. charmhub.io, the following error occurs, preventing the project from building:

ERROR in ./node_modules/@canonical/react-components/dist/components/FormikField/FormikField.js 8:14-31
Module not found: Error: Can't resolve 'formik' in '/home/ubuntu/charmhub-io/node_modules/@canonical/react-components/dist/components/FormikField'

steverydz avatar Apr 16 '24 15:04 steverydz

I've got a similar one:

Uncaught TypeError: The specifier “formik” was a bare specifier, but was not remapped to anything. Relative module specifiers must start with “./”, “../” or “/”.

Seems like formik has been added recently and it's not listed as a dependency in the package.json, but as a dev and peer dependencies. The problem disappeared when I installed it in my project.

andesol avatar Apr 18 '24 16:04 andesol

Triage: we need to decide how to deal with that. If formik is used internally it probably needs to be a dependency.

bartaz avatar Sep 30 '24 10:09 bartaz

Maybe we should move Formik to optional deps. I think it's only used by one component at the moment.

huwshimi avatar Oct 03 '24 23:10 huwshimi

Using optional dependencies would likely be a bit of a hussle, as we would need to handle it properly in the code for cases when formik is not avaialble (https://docs.npmjs.com/cli/v8/configuring-npm/package-json#optionaldependencies)

Maybe the easiest solution would be to actually move it to dependences, if it is now required for components to work?

bartaz avatar Oct 24 '24 13:10 bartaz