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

perf: ensure cache works for non_standard_user_types when empty #18665

Merged
merged 1 commit into from Oct 29, 2022

Conversation

sagarvora
Copy link
Member

Caching was never respected previously, because get_non_standard_user_type_details was rerun every time a falsy value was encountered.

@github-actions github-actions bot added the add-test-cases Add test case to validate fix or enhancement label Oct 28, 2022
@sagarvora sagarvora removed the add-test-cases Add test case to validate fix or enhancement label Oct 28, 2022
@codecov
Copy link

codecov bot commented Oct 28, 2022

Codecov Report

Merging #18665 (df62acf) into develop (9c0e111) will decrease coverage by 0.03%.
The diff coverage is 81.81%.

Additional details and impacted files
@@             Coverage Diff             @@
##           develop   #18665      +/-   ##
===========================================
- Coverage    63.06%   63.03%   -0.04%     
===========================================
  Files          747      747              
  Lines        67411    67459      +48     
  Branches      5996     5996              
===========================================
+ Hits         42515    42524       +9     
- Misses       21436    21475      +39     
  Partials      3460     3460              
Flag Coverage Δ
server-mariadb 67.16% <100.00%> (-0.03%) ⬇️
server-postgres 67.16% <100.00%> (-0.03%) ⬇️

Flags with carried forward coverage won't be shown. Click here to find out more.

@@ -24,7 +30,6 @@ def on_update(self):
self.add_role_permissions_for_select_doctypes()
self.add_role_permissions_for_file()
self.update_users()
get_non_standard_user_type_details()
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Wow. getter is just conveniently used for cache clearing.

@ankush ankush merged commit 8f057ef into frappe:develop Oct 29, 2022
@ankush ankush added the backport version-14-hotfix backport to version 14 label Oct 29, 2022
mergify bot pushed a commit that referenced this pull request Oct 29, 2022
ankush pushed a commit that referenced this pull request Oct 29, 2022
…8665) (#18669)

(cherry picked from commit 8f057ef)

Co-authored-by: Sagar Vora <sagar@resilient.tech>
@sagarvora sagarvora deleted the perf-user_type branch October 29, 2022 12:33
frappe-pr-bot pushed a commit that referenced this pull request Nov 1, 2022
# [14.14.0](v14.13.0...v14.14.0) (2022-11-01)

### Bug Fixes

* correct stacklevel for warnings ([#18633](#18633)) ([#18634](#18634)) ([17821f1](17821f1))
* **formatting:** use snake case for variable names ([32851ce](32851ce))
* handle exceptions thrown in post_schema_updates ([#18648](#18648)) ([#18663](#18663)) ([29a659a](29a659a))
* **insert_many:** list instead of set to maintain order ([#18641](#18641)) ([4c521b8](4c521b8))
* make module def custom checkbox readonly in prod mode ([#18698](#18698)) ([18fa732](18fa732))
* **router-js:** handle case when link is not of same host ([1b70ec4](1b70ec4))
* set proper cache key for singles when name is passed as `None` ([#18667](#18667)) ([#18668](#18668)) ([e32ba96](e32ba96))
* Signature form ([#18477](#18477)) ([8e4711b](8e4711b))
* Signature form (backport [#18477](#18477)) ([#18690](#18690)) ([34c1611](34c1611))
* support symlinked /files directory ([#18702](#18702)) ([7b8cbd0](7b8cbd0))
* use `async...await` when parsing route ([9c09c65](9c09c65))
* use `is_file_path_valid` instead of `is_safe_path` ([#18316](#18316)) ([#18642](#18642)) ([537966c](537966c))
* **UX:** Info message on workspace for better UX (backport [#18701](#18701)) ([#18703](#18703)) ([5ba85ec](5ba85ec))
* **UX:** session expiry explanation and defaults ([#18680](#18680)) ([#18685](#18685)) ([515f6c2](515f6c2))
* **UX:** warn about Etc/* timezones behaviour ([#18587](#18587)) ([#18588](#18588)) ([c8728f5](c8728f5))
* webform validation script not working ([ab2b8df](ab2b8df))

### Features

* add video conferencing option (Google Meet) to Google Calendar integration (backport [#17851](#17851)) ([#18456](#18456)) ([b04a54c](b04a54c))
* support list view for "show titles instead of name" ([#18060](#18060)) ([#18681](#18681)) ([64c2555](64c2555))

### Performance Improvements

* ensure cache works for `non_standard_user_types` when empty ([#18665](#18665)) ([#18669](#18669)) ([5f7928b](5f7928b))

### Reverts

* Revert "fix: use `is_file_path_valid` instead of `is_safe_path` (#18316) (#18642)" (#18696) ([a08c029](a08c029)), closes [#18316](#18316) [#18642](#18642) [#18696](#18696)
mergify bot pushed a commit that referenced this pull request Nov 3, 2022
stephenBDT pushed a commit to alias/frappe that referenced this pull request Nov 7, 2022
…appe#18665) (frappe#18669)

(cherry picked from commit 8f057ef)

Co-authored-by: Sagar Vora <sagar@resilient.tech>
stephenBDT pushed a commit to alias/frappe that referenced this pull request Nov 7, 2022
# [14.14.0](frappe/frappe@v14.13.0...v14.14.0) (2022-11-01)

### Bug Fixes

* correct stacklevel for warnings ([frappe#18633](frappe#18633)) ([frappe#18634](frappe#18634)) ([17821f1](frappe@17821f1))
* **formatting:** use snake case for variable names ([32851ce](frappe@32851ce))
* handle exceptions thrown in post_schema_updates ([frappe#18648](frappe#18648)) ([frappe#18663](frappe#18663)) ([29a659a](frappe@29a659a))
* **insert_many:** list instead of set to maintain order ([frappe#18641](frappe#18641)) ([4c521b8](frappe@4c521b8))
* make module def custom checkbox readonly in prod mode ([frappe#18698](frappe#18698)) ([18fa732](frappe@18fa732))
* **router-js:** handle case when link is not of same host ([1b70ec4](frappe@1b70ec4))
* set proper cache key for singles when name is passed as `None` ([frappe#18667](frappe#18667)) ([frappe#18668](frappe#18668)) ([e32ba96](frappe@e32ba96))
* Signature form ([frappe#18477](frappe#18477)) ([8e4711b](frappe@8e4711b))
* Signature form (backport [frappe#18477](frappe#18477)) ([frappe#18690](frappe#18690)) ([34c1611](frappe@34c1611))
* support symlinked /files directory ([frappe#18702](frappe#18702)) ([7b8cbd0](frappe@7b8cbd0))
* use `async...await` when parsing route ([9c09c65](frappe@9c09c65))
* use `is_file_path_valid` instead of `is_safe_path` ([frappe#18316](frappe#18316)) ([frappe#18642](frappe#18642)) ([537966c](frappe@537966c))
* **UX:** Info message on workspace for better UX (backport [frappe#18701](frappe#18701)) ([frappe#18703](frappe#18703)) ([5ba85ec](frappe@5ba85ec))
* **UX:** session expiry explanation and defaults ([frappe#18680](frappe#18680)) ([frappe#18685](frappe#18685)) ([515f6c2](frappe@515f6c2))
* **UX:** warn about Etc/* timezones behaviour ([frappe#18587](frappe#18587)) ([frappe#18588](frappe#18588)) ([c8728f5](frappe@c8728f5))
* webform validation script not working ([ab2b8df](frappe@ab2b8df))

### Features

* add video conferencing option (Google Meet) to Google Calendar integration (backport [frappe#17851](frappe#17851)) ([frappe#18456](frappe#18456)) ([b04a54c](frappe@b04a54c))
* support list view for "show titles instead of name" ([frappe#18060](frappe#18060)) ([frappe#18681](frappe#18681)) ([64c2555](frappe@64c2555))

### Performance Improvements

* ensure cache works for `non_standard_user_types` when empty ([frappe#18665](frappe#18665)) ([frappe#18669](frappe#18669)) ([5f7928b](frappe@5f7928b))

### Reverts

* Revert "fix: use `is_file_path_valid` instead of `is_safe_path` (frappe#18316) (frappe#18642)" (frappe#18696) ([a08c029](frappe@a08c029)), closes [frappe#18316](frappe#18316) [frappe#18642](frappe#18642) [frappe#18696](frappe#18696)
@github-actions github-actions bot locked as resolved and limited conversation to collaborators Nov 18, 2022
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
backport version-14-hotfix backport to version 14
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants