-
-
Notifications
You must be signed in to change notification settings - Fork 2.3k
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
feat: avoid install installed plugin #1214
Conversation
Any use case, please? |
For example, UTC plugin will set a new format which call the old format
function. If we repeatedly call extend(UTC), it will repeatedly call
format. It is very dangerous for SSR because leaking of memory.
|
Like use function in Vue.js, it also detects duplicate of plugins.
|
What if we want to install two different plugins at the same time? |
It's ok. It only prevents same plugin. |
Codecov Report
@@ Coverage Diff @@
## dev #1214 +/- ##
=========================================
Coverage 100.00% 100.00%
=========================================
Files 174 174
Lines 1657 1660 +3
Branches 377 378 +1
=========================================
+ Hits 1657 1660 +3
Continue to review full report at Codecov.
|
## [1.9.7](v1.9.6...v1.9.7) (2020-12-05) ### Bug Fixes * add duration.format to format a Duration ([#1202](#1202)) ([9a859a1](9a859a1)) * Add function handling for relativeTime.future and relativeTime.past ([#1197](#1197)) ([ef1979c](ef1979c)) * avoid install installed plugin ([#1214](#1214)) ([a92eb6c](a92eb6c)) * avoid memory leak after installing a plugin too many times ([b8d2e32](b8d2e32)) * fix diff bug when UTC plugin enabled ([#1201](#1201)) ([9544ed2](9544ed2)), closes [#1200](#1200) * fix startOf/endOf bug in timezone plugin ([#1229](#1229)) ([eb5fbc4](eb5fbc4)) * fix utc plugin diff edge case ([#1187](#1187)) ([971b3d4](971b3d4)) * update customParseFormat plugin to parse 2-digit offset ([#1209](#1209)) ([b56936a](b56936a)), closes [#1205](#1205) * Update timezone plugin type definition ([#1221](#1221)) ([34cfb92](34cfb92))
🎉 This PR is included in version 1.9.7 🎉 The release is available on: Your semantic-release bot 📦🚀 |
This MR is greate to fix the problem in SSR. Because of re-install for plugin, the function overwriten ref the old one, so in SSR , the function call will increase each time the module loaded. Cause to stack over-flow finally. |
## [1.9.7](iamkun/dayjs@v1.9.6...v1.9.7) (2020-12-05) ### Bug Fixes * add duration.format to format a Duration ([#1202](iamkun/dayjs#1202)) ([9a859a1](iamkun/dayjs@9a859a1)) * Add function handling for relativeTime.future and relativeTime.past ([#1197](iamkun/dayjs#1197)) ([ef1979c](iamkun/dayjs@ef1979c)) * avoid install installed plugin ([#1214](iamkun/dayjs#1214)) ([a92eb6c](iamkun/dayjs@a92eb6c)) * avoid memory leak after installing a plugin too many times ([b8d2e32](iamkun/dayjs@b8d2e32)) * fix diff bug when UTC plugin enabled ([#1201](iamkun/dayjs#1201)) ([9544ed2](iamkun/dayjs@9544ed2)), closes [#1200](iamkun/dayjs#1200) * fix startOf/endOf bug in timezone plugin ([#1229](iamkun/dayjs#1229)) ([eb5fbc4](iamkun/dayjs@eb5fbc4)) * fix utc plugin diff edge case ([#1187](iamkun/dayjs#1187)) ([971b3d4](iamkun/dayjs@971b3d4)) * update customParseFormat plugin to parse 2-digit offset ([#1209](iamkun/dayjs#1209)) ([b56936a](iamkun/dayjs@b56936a)), closes [#1205](iamkun/dayjs#1205) * Update timezone plugin type definition ([#1221](iamkun/dayjs#1221)) ([34cfb92](iamkun/dayjs@34cfb92))
## [1.9.7](iamkun/dayjs@v1.9.6...v1.9.7) (2020-12-05) ### Bug Fixes * add duration.format to format a Duration ([#1202](iamkun/dayjs#1202)) ([9a859a1](iamkun/dayjs@9a859a1)) * Add function handling for relativeTime.future and relativeTime.past ([#1197](iamkun/dayjs#1197)) ([ef1979c](iamkun/dayjs@ef1979c)) * avoid install installed plugin ([#1214](iamkun/dayjs#1214)) ([a92eb6c](iamkun/dayjs@a92eb6c)) * avoid memory leak after installing a plugin too many times ([b8d2e32](iamkun/dayjs@b8d2e32)) * fix diff bug when UTC plugin enabled ([#1201](iamkun/dayjs#1201)) ([9544ed2](iamkun/dayjs@9544ed2)), closes [#1200](iamkun/dayjs#1200) * fix startOf/endOf bug in timezone plugin ([#1229](iamkun/dayjs#1229)) ([eb5fbc4](iamkun/dayjs@eb5fbc4)) * fix utc plugin diff edge case ([#1187](iamkun/dayjs#1187)) ([971b3d4](iamkun/dayjs@971b3d4)) * update customParseFormat plugin to parse 2-digit offset ([#1209](iamkun/dayjs#1209)) ([b56936a](iamkun/dayjs@b56936a)), closes [#1205](iamkun/dayjs#1205) * Update timezone plugin type definition ([#1221](iamkun/dayjs#1221)) ([34cfb92](iamkun/dayjs@34cfb92))
## [1.9.7](iamkun/dayjs@v1.9.6...v1.9.7) (2020-12-05) ### Bug Fixes * add duration.format to format a Duration ([#1202](iamkun/dayjs#1202)) ([9a859a1](iamkun/dayjs@9a859a1)) * Add function handling for relativeTime.future and relativeTime.past ([#1197](iamkun/dayjs#1197)) ([ef1979c](iamkun/dayjs@ef1979c)) * avoid install installed plugin ([#1214](iamkun/dayjs#1214)) ([a92eb6c](iamkun/dayjs@a92eb6c)) * avoid memory leak after installing a plugin too many times ([b8d2e32](iamkun/dayjs@b8d2e32)) * fix diff bug when UTC plugin enabled ([#1201](iamkun/dayjs#1201)) ([9544ed2](iamkun/dayjs@9544ed2)), closes [#1200](iamkun/dayjs#1200) * fix startOf/endOf bug in timezone plugin ([#1229](iamkun/dayjs#1229)) ([eb5fbc4](iamkun/dayjs@eb5fbc4)) * fix utc plugin diff edge case ([#1187](iamkun/dayjs#1187)) ([971b3d4](iamkun/dayjs@971b3d4)) * update customParseFormat plugin to parse 2-digit offset ([#1209](iamkun/dayjs#1209)) ([b56936a](iamkun/dayjs@b56936a)), closes [#1205](iamkun/dayjs#1205) * Update timezone plugin type definition ([#1221](iamkun/dayjs#1221)) ([34cfb92](iamkun/dayjs@34cfb92))
No description provided.