## Description
We have found api responses not responding with a responseMeta object
intermittently. Adding a sentry log to try and collect more data before
fixing this issue
Fixes#20278
Media
> A video or a GIF is preferred. when using Loom, don’t embed because it
looks like it’s a GIF. instead, just link to the video
## Type of change
> Please delete options that are not relevant.
- Chore (housekeeping or task changes that don't impact user perception)
## How Has This Been Tested?
> Please describe the tests that you ran to verify your changes. Provide
instructions, so we can reproduce.
> Please also list any relevant details for your test configuration.
> Delete anything that is not important
- Manual
- Jest
- Cypress
### 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
- [ ] My code follows the style guidelines of this project
- [ ] 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:
- [ ] Test plan has been approved by relevant developers
- [ ] Test plan has been peer reviewed by QA
- [ ] Cypress test cases have been added and approved by either SDET or
manual QA
- [ ] Organized project review call with relevant stakeholders after
Round 1/2 of QA
- [ ] Added Test Plan Approved label after reveiwing all Cypress test
## Description
JSPDF's output API requires it to be run in the context of global scope.
Changes made recently to the mocked window object (assigning it to
[linkedom](https://github.com/WebReflection/linkedom).window) caused the
crash, and is being reverted in this PR.
Fixes#20540
## Type of change
- Bug fix (non-breaking change which fixes an issue)
## How Has This Been Tested?
- Manual
- Cypress
### Test Plan
- [x] JSPDF installing and creating JSfunction to download table data
- [x] Validated above with deployed and edit preview
- [x] Verify other library installation and working
App verified -
https://appsmith-56w77pq8j-get-appsmith.vercel.app/app/playground-custom-js-libs-1/playground-63d25e3d2e9099627b3f4f72/edit
### 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
- [x] My changes generate no new warnings
- [x] I have added tests that prove my fix is effective or that my
feature works
- [x] New and existing unit tests pass locally with my changes
- [ ] PR is being merged under a feature flag
### QA activity:
- [ ] Test plan has been approved by relevant developers
- [ ] Test plan has been peer reviewed by QA
- [ ] Cypress test cases have been added and approved by either SDET or
manual QA
- [ ] Organized project review call with relevant stakeholders after
Round 1/2 of QA
- [ ] Added Test Plan Approved label after reveiwing all Cypress test
## Description
This fix checks the modal's content and check if any of the input
widgets state has autofocused enabled. If it does it allows the html
autoofocus attribute to resolve the focus state and if not the focus is
shifted to the modal.
## Description
TL;DR
When user types in the input box for table filter, the input loses focus
after a 500ms while typing. This is a regression from
https://github.com/appsmithorg/appsmith/pull/16904 PR (bug -
https://github.com/appsmithorg/appsmith/issues/12638)
We were stringifying the whole filter object and using it in the key for
each table filter. But when we changed the filter value the key would
get updated and hence the filter re-rendered and the text input lost
focus.
The key was previously set this way to address another bug where the
value field of the filter would not update in the DOM although the
filter data was correct.
The solution to address both these issues was to assign a unique key to
the filters. Since the filter data is totally front-end generated we do
not have any unique id to use here as the key. So we generate unique id
for each filter now and use it as the key.
Fixes#18040
## Type of change
- Bug fix (non-breaking change which fixes an issue)
## How Has This Been Tested?
- Manual
### Test Plan
> Add Testsmith test cases links that relate to this PR
> Suggested tests
>- Verify that value input does not lose focus in table filter
>- Verify bug - https://github.com/appsmithorg/appsmith/issues/12638
>- Verify that clearing filters don't reset the current page in the
table and only adding and applying a filter resets the page to 1
>- Verify basic filter functionalities
### 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
- [x] I have commented my code, particularly in hard-to-understand areas
- [ ] I have made corresponding changes to the documentation
- [x] 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:
- [ ] Test plan has been approved by relevant developers
- [ ] Test plan has been peer reviewed by QA
- [ ] Cypress test cases have been added and approved by either SDET or
manual QA
- [ ] Organized project review call with relevant stakeholders after
Round 1/2 of QA
- [ ] Added Test Plan Approved label after reveiwing all Cypress test
Evaluated value window improvements:
1. Evaluated value window will not show up unless there is a dynamic
binding within the input field or when there's a validation error on the
input field (this edge case happens when user types an incorrect string
in the field for example typing a wrong date format inside the Default
Date field in the DatePickerWidget).
2. Evaluated value window will be draggable anywhere on the DOM. The new
position would also be remembered the next time the user returns to the
input.
3. The UI of the evaluated value window has been changed: Since the
popup will become draggable, it will have the name of the input it is
attached to. The styling of the evaluated value window fields has been
changed as well.
Design Documentation:
https://www.notion.so/appsmith/Improve-the-evaluated-value-window-experience-fbbdead747a5468b8015c2fbbb5843bc
> Add a TL;DR when description is extra long (helps content team)
Fixes#4458
- Bug fix (non-breaking change which fixes an issue)
- New feature (non-breaking change which adds functionality)
- This change requires a documentation update
> Tests
- Manual
- Cypress
### 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
- [x] I have commented my code, particularly in hard-to-understand areas
- [ ] I have made corresponding changes to the documentation
- [x] My changes generate no new warnings
- [x] I have added tests that prove my fix is effective or that my
feature works
- [x] New and existing unit tests pass locally with my changes
- [ ] PR is being merged under a feature flag
### QA activity:
- [ ] Test plan has been approved by relevant developers
- [ ] Test plan has been peer reviewed by QA
- [ ] Cypress test cases have been added and approved by either SDET or
manual QA
- [ ] Organized project review call with relevant stakeholders after
Round 1/2 of QA
- [ ] Added Test Plan Approved label after reveiwing all Cypress test
---------
Co-authored-by: Aishwarya UR <aishwarya@appsmith.com>
## Description
Import application flow is a multi-stage process where we touch all the
mongo DB collections required to store the application in DB, which
today includes pages, actions, JSObjects, etc. When the flow is complete
then only we can say the application is successfully imported and DB
won't have any stale objects stored. But in a negative scenario where
the flow might break because of some unknown exceptions, objects stored
earlier become stale and reside in DB forever. With this PR we are
establishing the infra for transactions to avoid saving stale DB
objects. This is achieved by a rollback mechanism in case an exception
is thrown in the middle of execution.
Note: Since transactions are built on concepts of logical sessions they
require mecahnics (like oplog) which are only available in replica set
environment.
You can always convert a standalone to a single noded replica set and
transactions will work with this one node.
[https://docs.mongodb.com/manual/tutorial/convert-standalone-to-replica-set/](https://docs.mongodb.com/manual/tutorial/convert-standalone-to-replica-set/?_ga=2.53712296.1453502529.1669195955-2065030687.1664009965)
```
For local dev earlier we used to run the single node without replica set. Henceforth if we want to take the advantage of transactions please follow the steps to run mongod single node in local with replica set:
- Upgrade the MongoDB version to 4.4 or higher if it’s 4.2 or lower (https://www.mongodb.com/docs/manual/release-notes/4.4/#std-label-4.4-upgrade)
- Close the mongoDB instance running in your local
- Start the mongoDB in replica set mode and initiate the replica set
- mongod --port 27017 --dbpath <path/to/db> --replSet <replica-set-name> && mongo --eval “rs.initiate()”
- One can use following commands to check replica set status:
- mongo appsmith
- rs.status()
- By this time you should have the mongo running with replica set
```
<img width="1788" alt="Screenshot 2022-07-01 at 10 31 27 PM"
src="https://user-images.githubusercontent.com/41686026/176944386-f9d94715-c0cf-4900-93b7-f73647132d60.png">
This also means mongodb connection string used in env file will now
include the replica-set name if one wants to leverage transactions:
`mongodb://localhost:27017/appsmith?replicaSet={replica-set-name}`
Fixes https://github.com/appsmithorg/appsmith/issues/14543
## Type of change
- Bug fix (non-breaking change which fixes an issue)
- This change requires a documentation update
## How Has This Been Tested?
> JUnit
> Manual test
## Checklist:
- [x] My code follows the style guidelines of this project
- [x] I have performed a self-review of my own code
- [x] 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
- [x] I have added tests that prove my fix is effective or that my
feature works
- [x] New and existing unit tests pass locally with my changes
---------
Co-authored-by: Anagh Hegde <anagh@appsmith.com>
Co-authored-by: Aishwarya UR <aishwarya@appsmith.com>
## Description
- Skipping validations in UpgradeAppsmith_spec.js
## Type of change
- Cypress
## How Has This Been Tested?
- Cypress
## Checklist:
### QA activity:
- [ ] Test plan has been approved by relevant developers
- [ ] Test plan has been peer reviewed by QA
- [ ] Cypress test cases have been added and approved by either SDET or
manual QA
- [ ] Organized project review call with relevant stakeholders after
Round 1/2 of QA
- [ ] Added Test Plan Approved label after reveiwing all Cypress test
## Description
- Added clean up for command_click_naviagtion_spec
**Fixed below flaky tests**
- Add_new_row_spec.js
- ForkApplication_spec.js
## Type of change
- Flaky test fix
## How Has This Been Tested?
- Cypress test runs
## Checklist:
### QA activity:
- [ ] Test plan has been approved by relevant developers
- [ ] Test plan has been peer reviewed by QA
- [ ] Cypress test cases have been added and approved by either SDET or
manual QA
- [ ] Organized project review call with relevant stakeholders after
Round 1/2 of QA
- [x] Added Test Plan Approved label after reveiwing all Cypress test
## Description
In order to improve the first load of the applications, now we're only
rendering the widget components that are [above the
fold](https://en.wikipedia.org/wiki/Above_the_fold#In_web_design) right
away and rendering the other widget components whenever the browser is
idle. This decreases the amount of time it takes before the first paint
on the screen.
This is getting shipped behind a feature flag!
## Description
Updated versions of mammoth and execljs to browser versions. Earlier
versions used were compatible in a node js environment and expected
certain base libraries which were missing in the browser env. Hence
caused errors which prevented the app from loading the base encoded
versions.
## Description
The following issues were caused because of the recent changes with
respect to auto height instant update.
In the recent change, we removed a few wrappers around containers which
seemed unnecessary. This led to the fact that in deploy mode, these
wrappers were not present. The issue with this was that, these wrappers
were responsible for the modal widget's background color styling. This
also led to an issue where the background color was not applied in edit
mode.
To fix this, we've added a wrapper in the component and removed all
styling logic from the widget. This is because, the component is
responsible for the actual rendering and what users see. The widgets
should act as an interface, and as a result, should not deal with
styling.
Fixes#20434Fixes#20405Fixes#20436
## Type of change
- Bug fix (non-breaking change which fixes an issue)
## Description
Updated the image on upgrade page. Removed license route on CE.
Fixes [#303](https://github.com/appsmithorg/cloud-services/issues/303)
Media
<img width="1440" alt="Screenshot 2023-02-07 at 3 59 30 AM"
src="https://user-images.githubusercontent.com/74818788/217102992-f542094a-8563-450f-b81b-e6ceea74e9e8.png">

## Type of change
> Please delete options that are not relevant.
- Chore (housekeeping or task changes that don't impact user perception)
## How Has This Been Tested?
- Manual
## 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
- [x] My changes generate no new warnings
- [ ] I have added tests that prove my fix is effective or that my
feature works
- [x] New and existing unit tests pass locally with my changes
- [x] PR is being merged under a feature flag
### QA activity:
- [ ] Test plan has been approved by relevant developers
- [ ] Test plan has been peer reviewed by QA
- [ ] Cypress test cases have been added and approved by either SDET or
manual QA
- [ ] Organized project review call with relevant stakeholders after
Round 1/2 of QA
- [ ] Added Test Plan Approved label after reveiwing all Cypress test
## Description
- This PR reverts https://github.com/appsmithorg/appsmith/pull/20471
## Type of change
- ci-test yml file update
## Checklist:
### QA activity:
- [X] Added Test Plan Approved label after reviewing all changes
## Description
This PR reverts https://github.com/appsmithorg/appsmith/pull/20471
## Type of change
- ci-test yml file update
## Checklist:
### QA activity:
- [X] Added Test Plan Approved label after reviewing all changes test
## Description
- This PR reverts #20471
## Type of change
- ci-test yml file update
## Checklist:
### QA activity:
- [X] Added Test Plan Approved label after reveiwing all changes
## Description
- This PR Stops SSH which is run on port 22 for enabling it for Local
Gitea support from TED
## Type of change
- Script update
## Checklist:
### QA activity:
- [X] Added Test Plan Approved label after reviewing the changes
## Description
- This PR adds the 3000 port mapping for the TED GITEA support for the
cypress tests
## Type of change
- Script update
## Checklist:
### QA activity:
- [X] Test plan has been peer reviewed by QA
- [X] Cypress test cases have been added and approved by either SDET or
manual QA
## Description
> Cognito returns **Malformed URI** for redirect when User tries to
Login. Due to this, browser ends up throwing `400 Bad Request`. In order
to fix this, we have removed the padding from the `state` query
parameter which we send to the OIDC, in order to avoid the cases where
the additional `=` will lead to malformed URIs being created. Read
[here](https://stackoverflow.com/questions/6916805/why-does-a-base64-encoded-string-have-an-sign-at-the-end)
for Additional information on the Base64 encoding and padding.
> Also, we are changing the delimiter from `=` to `-` when server tries
to find the redirect URI for other use cases.
> Server uses `,` in order to split the state to get the `origin value`.
Now we will use `@` instead of `,`.
> TL;DR, remove `=` and `,` in order to avoid malformed URI strings.
Fixes https://github.com/appsmithorg/appsmith/issues/19692
Media
> A video or a GIF is preferred. when using Loom, don’t embed because it
looks like it’s a GIF. instead, just link to the video
## Type of change
- Breaking change (fix or feature that would cause existing
functionality to not work as expected)
## How Has This Been Tested?
> Tested manually with different use case scenarios.
### 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
- [x] 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:
- [ ] Test plan has been approved by relevant developers
- [ ] Test plan has been peer reviewed by QA
- [ ] Cypress test cases have been added and approved by either SDET or
manual QA
- [ ] Organized project review call with relevant stakeholders after
Round 1/2 of QA
- [ ] Added Test Plan Approved label after reveiwing all Cypress test
Co-authored-by: Nilesh Sarupriya <20905988+nsarupr@users.noreply.github.com>
## Description
### Cause of issue
During the translation of dataTree diff, a change from an `Array` to `undefined`, was interpreted as a **delete event**. This causes the path to be deleted from the dependencyMap, hence doesn't ever show up in the evaluation order.
### Solution
A change from an Array or Object to undefined is translated to
1. Deletion of all Array accessor paths
2. Edit of propertyPath
### Example
Multiselect1.selectedOptions changes from ["Red", "Green"] to **undefined**. This translates to
1. Delete event for Multiselect1.selectedOptions[0] & Multiselect1.selectedOptions[1]
2. Edit event for Multiselect1.selectedOptions
Fixes#20428
## Type of change
- Bug fix (non-breaking change which fixes an issue)
## How Has This Been Tested?
- Manual
- Jest
- Cypress
### 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
- [ ] My code follows the style guidelines of this project
- [ ] 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:
- [ ] Test plan has been approved by relevant developers
- [ ] Test plan has been peer reviewed by QA
- [ ] Cypress test cases have been added and approved by either SDET or manual QA
- [ ] Organized project review call with relevant stakeholders after Round 1/2 of QA
- [ ] Added Test Plan Approved label after reveiwing all Cypress test
Co-authored-by: Aishwarya UR <aishwarya@appsmith.com>
## Description
- Added test for appsmith upgrade
## Type of change
- Cypress
## How Has This Been Tested?
- Cypress
## Checklist:
### QA activity:
- [ ] Test plan has been approved by relevant developers
- [ ] Test plan has been peer reviewed by QA
- [ ] Cypress test cases have been added and approved by either SDET or
manual QA
- [ ] Organized project review call with relevant stakeholders after
Round 1/2 of QA
- [ ] Added Test Plan Approved label after reveiwing all Cypress test
Part of #11855.
Instead of getting the Google Maps API Key from runtime env variables,
we get it from the server, as part of the response of
`/api/v1/tenant/current`. This doesn't add a database call, just include
the env variable name in the response, so shouldn't have any performance
impact on the API.
On the client though, the Maps API key won't be available, until at
least the first call to `/tenant/current` is finished.
Also, first big PR in client code. 🙂
Edit: not `/me` anymore, but from `/tenant/current`.
---------
Co-authored-by: Pawan Kumar <pawan.stardust@gmail.com>
Co-authored-by: Aishwarya UR <aishwarya@appsmith.com>
## Description
TL;DR: This PR introduces metrics logging using native Spring support
for Micrometer. It includes a docker-compose to set up all the required
parts of this observability stack in the local environment as well.
In order to make use of this stack, please navigate to
`utils/observability` and execute the following command:
```
docker-compose up -d
```
The set up comes bundled with a default Grafana dashboard that can be
accessed at localhost:3001. Please feel free to switch the mapping ports
around in the docker-compose file.
This dashboard currently shows all http requests (sampled at 0.1 by
default), and the server side implementation has introduced some minimal
tracing for the `/api/v1/action/execute` endpoint. This means that you
can use the trace id from http server requests for this endpoint to
delve deeper into the spans exposed in this flow.
In case you would like to send trace information to another service,
please make use of the `APPSMITH_TRACING_ENDPOINT` variable. To override
the default sampling rate in your local (to say, 1), you can set that as
the value for the variable `APPSMITH_SAMPLING_PROBABILITY`.
Fixes#19153
## Type of change
- Chore (housekeeping or task changes that don't impact user perception)
## How Has This Been Tested?
- Manual
### Test Plan
No testing required, only needs regression after merge.
## Checklist:
### Dev activity
- [x] My code follows the style guidelines of this project
- [x] I have performed a self-review of my own code
- [x] I have commented my code, particularly in hard-to-understand areas
- [ ] I have made corresponding changes to the documentation
- [x] My changes generate no new warnings
- [ ] I have added tests that prove my fix is effective or that my
feature works
- [x] New and existing unit tests pass locally with my changes
- [ ] PR is being merged under a feature flag
---------
Co-authored-by: Sumesh Pradhan <sumesh@appsmith.com>
## Description
When we worked on replacing the underlying library of google map
component, we accidently replaced the custom icon with the one provided
by google due to which color functionality got lost. This PR fixes this
and also tracks for changes in position or color in the marker values.
Fixes#20271
## Type of change
- Bug fix
## How Has This Been Tested?
- Manual
### Test Plan
> https://github.com/appsmithorg/TestSmith/issues/2180
### 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
- [ ] My code follows the style guidelines of this project
- [ ] 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:
- [x] Test plan has been approved by relevant developers
- [x] Test plan has been peer reviewed by QA
- [ ] Cypress test cases have been added and approved by either SDET or
manual QA
- [ ] Organized project review call with relevant stakeholders after
Round 1/2 of QA
- [ ] Added Test Plan Approved label after reveiwing all Cypress test
In the `entrypoint.sh` script, we check if the MongoDB in use, has
replicaSet initiated or not. This is usually done with a `rs.initiate()`
on the cluster.
We need the replicaSet to be enabled on MongoDB, since the backend
server relies on MongoDB `changeStream`s, which is a feature, only
available if replicaSet is enabled.
However, to use the `changeStream` APIs, having the `read` or
`readWrite` role on MongoDB is enough. But the check we do in
`entrypoint.sh`, runs `rs.status()` to see if `replicaSet` is initiated.
This `rs.status()` call, unfortunately, requires the `ClusterMonitor`
role, unlike the `changeStream` API.
To tackle this, we created the `appsmithctl check_replica_set` command.
This command would attempt to use the `changeStream` API, and report
success or failure. But this failed on certain configurations, where
MongoDB was running as a single-node-cluster, on localhost, or a
local/internal network. This was an edge case.
That edge case is solved by this PR. With this, we can use `appsmithctl
check-replica-set` in the `entrypoint.sh` again.
Bumps [jszip](https://github.com/Stuk/jszip) from 3.7.1 to 3.10.1.
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/Stuk/jszip/blob/main/CHANGES.md">jszip's
changelog</a>.</em></p>
<blockquote>
<h3>v3.10.1 2022-08-02</h3>
<ul>
<li>Add sponsorship files.
<ul>
<li>If you appreciate the time spent maintaining JSZip then I would
really appreciate <a href="https://github.com/sponsors/Stuk">your
sponsorship</a>.</li>
</ul>
</li>
<li>Consolidate metadata types and expose OnUpdateCallback <a
href="https://github-redirect.dependabot.com/Stuk/jszip/pull/851">#851</a>
and <a
href="https://github-redirect.dependabot.com/Stuk/jszip/pull/852">#852</a></li>
<li>use <code>const</code> instead <code>var</code> in example from
README.markdown <a
href="https://github-redirect.dependabot.com/Stuk/jszip/pull/828">#828</a></li>
<li>Switch manual download link to HTTPS <a
href="https://github-redirect.dependabot.com/Stuk/jszip/pull/839">#839</a></li>
</ul>
<p>Internals:</p>
<ul>
<li>Replace jshint with eslint <a
href="https://github-redirect.dependabot.com/Stuk/jszip/pull/842">#842</a></li>
<li>Add performance tests <a
href="https://github-redirect.dependabot.com/Stuk/jszip/pull/834">#834</a></li>
</ul>
<h3>v3.10.0 2022-05-20</h3>
<ul>
<li>Change setimmediate dependency to more efficient one. Fixes <a
href="https://github-redirect.dependabot.com/Stuk/jszip/issues/617">Stuk/jszip#617</a>
(see <a
href="https://github-redirect.dependabot.com/Stuk/jszip/pull/829">#829</a>)</li>
<li>Update types of <code>currentFile</code> metadata to include
<code>null</code> (see <a
href="https://github-redirect.dependabot.com/Stuk/jszip/pull/826">#826</a>)</li>
</ul>
<h3>v3.9.1 2022-04-06</h3>
<ul>
<li>Fix recursive definition of <code>InputFileFormat</code> introduced
in 3.9.0.</li>
</ul>
<h3>v3.9.0 2022-04-04</h3>
<ul>
<li>Update types JSZip#loadAsync to accept a promise for data, and
remove arguments from <code>new JSZip()</code> (see <a
href="https://github-redirect.dependabot.com/Stuk/jszip/pull/752">#752</a>)</li>
<li>Update types for <code>compressionOptions</code> to JSZipFileOptions
and JSZipGeneratorOptions (see <a
href="https://github-redirect.dependabot.com/Stuk/jszip/pull/722">#722</a>)</li>
<li>Add types for <code>generateInternalStream</code> (see <a
href="https://github-redirect.dependabot.com/Stuk/jszip/pull/774">#774</a>)</li>
</ul>
<h3>v3.8.0 2022-03-30</h3>
<ul>
<li>Santize filenames when files are loaded with <code>loadAsync</code>,
to avoid <a
href="https://snyk.io/research/zip-slip-vulnerability">"zip
slip" attacks</a>. The original filename is available on each zip
entry as <code>unsafeOriginalName</code>. See the <a
href="https://stuk.github.io/jszip/documentation/api_jszip/load_async.html">documentation</a>.
Many thanks to McCaulay Hudson for reporting.</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="0f2f1e4d05"><code>0f2f1e4</code></a>
3.10.1</li>
<li><a
href="cae55105f5"><code>cae5510</code></a>
Updates for v3.10.1</li>
<li><a
href="179c9a0340"><code>179c9a0</code></a>
Update changelog for 3.10.1</li>
<li><a
href="61e1df58da"><code>61e1df5</code></a>
Add Jekyll files to gitignore</li>
<li><a
href="f299cce9b8"><code>f299cce</code></a>
Merge pull request <a
href="https://github-redirect.dependabot.com/Stuk/jszip/issues/852">#852</a>
from Stuk/metadata-ts</li>
<li><a
href="852887aa94"><code>852887a</code></a>
Consolidate metadata types and expose OnUpdateCallback</li>
<li><a
href="5be00dfd0c"><code>5be00df</code></a>
Add sponsorship files</li>
<li><a
href="dabe86445c"><code>dabe864</code></a>
Update package-lock for benchmark</li>
<li><a
href="cc554dae51"><code>cc554da</code></a>
Merge pull request <a
href="https://github-redirect.dependabot.com/Stuk/jszip/issues/841">#841</a>
from stevennyman/patch-2</li>
<li><a
href="caefbc082d"><code>caefbc0</code></a>
Merge pull request <a
href="https://github-redirect.dependabot.com/Stuk/jszip/issues/834">#834</a>
from Stuk/benchmark</li>
<li>Additional commits viewable in <a
href="https://github.com/Stuk/jszip/compare/v3.7.1...v3.10.1">compare
view</a></li>
</ul>
</details>
<br />
[](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)
Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
<details>
<summary>Dependabot commands and options</summary>
<br />
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)
- `@dependabot use these labels` will set the current labels as the
default for future PRs for this repo and language
- `@dependabot use these reviewers` will set the current reviewers as
the default for future PRs for this repo and language
- `@dependabot use these assignees` will set the current assignees as
the default for future PRs for this repo and language
- `@dependabot use this milestone` will set the current milestone as the
default for future PRs for this repo and language
You can disable automated security fix PRs for this repo from the
[Security Alerts
page](https://github.com/appsmithorg/appsmith/network/alerts).
</details>
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
## Description
- Decrease the usage pulse trigger interval to 5 minutes.
- In another PR we will add changes to make this value driven by backend
Media
> A video or a GIF is preferred. when using Loom, don’t embed because it
looks like it’s a GIF. instead, just link to the video
## Type of change
> Please delete options that are not relevant.
- Bug fix (non-breaking change which fixes an issue)
- New feature (non-breaking change which adds functionality)
- Breaking change (fix or feature that would cause existing
functionality to not work as expected)
- Chore (housekeeping or task changes that don't impact user perception)
- This change requires a documentation update
## How Has This Been Tested?
> Please describe the tests that you ran to verify your changes. Provide
instructions, so we can reproduce.
> Please also list any relevant details for your test configuration.
> Delete anything that is not important
- Manual
- Jest
- Cypress
### 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
- [ ] My code follows the style guidelines of this project
- [ ] 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:
- [ ] Test plan has been approved by relevant developers
- [ ] Test plan has been peer reviewed by QA
- [ ] Cypress test cases have been added and approved by either SDET or
manual QA
- [ ] Organized project review call with relevant stakeholders after
Round 1/2 of QA
- [ ] Added Test Plan Approved label after reveiwing all Cypress test