This repository has been archived by the owner on Sep 16, 2023. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 96
Lodash is set to undefined in build if its loaded onto a local 'this' #235
Comments
Hi @usman-subhani! Can you post what the transpiled code looks like? |
Hey @jdalton, sure. This is the transpiled code with the plugin
and this is the code after removing the plugin
This is the .babelrc config
I have v3.3.4 of babel-plugin lodash |
Have the same issue: |
same issue, is there a solution now? |
sidx1024
referenced
this issue
Dec 14, 2021
keyurparalkar
added a commit
to appsmithorg/appsmith
that referenced
this issue
Jun 19, 2023
## Description This issue is happening because we are getting lodash library as `undefined` when we pass it to` derived.value` function here. This is happening because of the following reason: * [Bundle optimisation PR](#21667) introduces a new plugin called: `babel-plugin-lodash`. It helps in transforming the imports. * But this plugin doesn't work on the following pattern: `import _ from "lodash"`. Here it replaces `_` with `undefined` [ This file](https://github.com/appsmithorg/appsmith/blob/3bc50d9632cf269935aed6657092ddb8b7e8c92f/app/client/src/workers/common/JSLibrary/lodash-wrapper.js#L1) explains the exact scenario that we are facing. There is also [an open bug](lodash/babel-plugin-lodash#235) for this issue on the `babel-plugin-lodash` repository. This PR imports lodash from the lodash-wrapper instead of directly importing as follows: `import _ from "lodash"` > #### PR fixes following issue(s) Fixes #23671 #### Type of change - Bug fix (non-breaking change which fixes an issue) ## Testing > #### How Has This Been Tested? - [x] Manual - [ ] Jest - [x] Cypress - should check that value entered in currency field appears in the actual field > > #### Test Plan > Add Testsmith test cases links that relate to this PR > > #### Issues raised during DP testing > Link issues raised during DP testing for better visiblity and tracking (copy link from comments dropped on this PR) > > > ## Checklist: #### Dev activity - [x] My code follows the style guidelines of this project - [x] I have performed a self-review of my own code - [ ] I have commented my code, particularly in hard-to-understand areas - [ ] I have made corresponding changes to the documentation - [ ] My changes generate no new warnings - [ ] I have added tests that prove my fix is effective or that my feature works - [ ] New and existing unit tests pass locally with my changes - [ ] PR is being merged under a feature flag #### QA activity: - [ ] [Speedbreak features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-) have been covered - [ ] Test plan covers all impacted features and [areas of interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-) - [ ] Test plan has been peer reviewed by project stakeholders and other QA members - [ ] Manually tested functionality on DP - [ ] We had an implementation alignment call with stakeholders post QA Round 2 - [ ] Cypress test cases have been added and approved by SDET/manual QA - [ ] Added `Test Plan Approved` label after Cypress tests were reviewed - [ ] Added `Test Plan Approved` label after JUnit tests were reviewed
keyurparalkar
added a commit
to appsmithorg/appsmith
that referenced
this issue
Jun 20, 2023
## Description This issue is happening because we are getting lodash library as `undefined` when we pass it to` derived.value` function here. This is happening because of the following reason: * [Bundle optimisation PR](#21667) introduces a new plugin called: `babel-plugin-lodash`. It helps in transforming the imports. * But this plugin doesn't work on the following pattern: `import _ from "lodash"`. Here it replaces `_` with `undefined` [ This file](https://github.com/appsmithorg/appsmith/blob/3bc50d9632cf269935aed6657092ddb8b7e8c92f/app/client/src/workers/common/JSLibrary/lodash-wrapper.js#L1) explains the exact scenario that we are facing. There is also [an open bug](lodash/babel-plugin-lodash#235) for this issue on the `babel-plugin-lodash` repository. This PR imports lodash from the lodash-wrapper instead of directly importing as follows: `import _ from "lodash"` > #### PR fixes following issue(s) Fixes #23671 #### Type of change - Bug fix (non-breaking change which fixes an issue) ## Testing > #### How Has This Been Tested? - [x] Manual - [ ] Jest - [x] Cypress - should check that value entered in currency field appears in the actual field > > #### Test Plan > Add Testsmith test cases links that relate to this PR > > #### Issues raised during DP testing > Link issues raised during DP testing for better visiblity and tracking (copy link from comments dropped on this PR) > > > ## Checklist: #### Dev activity - [x] My code follows the style guidelines of this project - [x] I have performed a self-review of my own code - [ ] I have commented my code, particularly in hard-to-understand areas - [ ] I have made corresponding changes to the documentation - [ ] My changes generate no new warnings - [ ] I have added tests that prove my fix is effective or that my feature works - [ ] New and existing unit tests pass locally with my changes - [ ] PR is being merged under a feature flag #### QA activity: - [ ] [Speedbreak features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-) have been covered - [ ] Test plan covers all impacted features and [areas of interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-) - [ ] Test plan has been peer reviewed by project stakeholders and other QA members - [ ] Manually tested functionality on DP - [ ] We had an implementation alignment call with stakeholders post QA Round 2 - [ ] Cypress test cases have been added and approved by SDET/manual QA - [ ] Added `Test Plan Approved` label after Cypress tests were reviewed - [ ] Added `Test Plan Approved` label after JUnit tests were reviewed (cherry picked from commit f47b1c8)
19 tasks
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Issue occurs in this situation
The text was updated successfully, but these errors were encountered: