Tags: legolas108/frappe
Tags
chore(release): Bumped to Version 15.16.1 ## [15.16.1](frappe/frappe@v15.16.0...v15.16.1) (2024-02-28) ### Bug Fixes * Only validate fetch from when user modifies it ([bae8ab9](frappe@bae8ab9))
chore(release): Bumped to Version 15.16.0 # [15.16.0](frappe/frappe@v15.15.0...v15.16.0) (2024-02-28) ### Bug Fixes * **a11y:** Improve desk accessibility (backport [frappe#23319](frappe#23319)) ([frappe#25023](frappe#25023)) ([48665e6](frappe@48665e6)) * add context for row number label ([235f921](frappe@235f921)) * add show_dashboard field on custom fields ([frappe#24984](frappe#24984)) ([frappe#24986](frappe#24986)) ([34bca99](frappe@34bca99)) * added important to bold class. ([718973e](frappe@718973e)) * allow negative numbers in grid search ([frappe#24989](frappe#24989)) ([frappe#24991](frappe#24991)) ([e778fe9](frappe@e778fe9)) * Avoid add "null" to cc in communication in timeline (backport [frappe#25092](frappe#25092)) ([frappe#25096](frappe#25096)) ([06c7a87](frappe@06c7a87)) * Cast to string to handle int PK ([frappe#24988](frappe#24988)) ([frappe#24993](frappe#24993)) ([de3042b](frappe@de3042b)) * Check perm for library file before cloning ([frappe#25117](frappe#25117)) ([frappe#25120](frappe#25120)) ([173ff30](frappe@173ff30)) * **ControlTime:** Don't set datepicker's date if field is read only ([frappe#25038](frappe#25038)) ([frappe#25076](frappe#25076)) ([3e33ae3](frappe@3e33ae3)) * Correct type hint ([frappe#24990](frappe#24990)) ([frappe#24995](frappe#24995)) ([3f956c1](frappe@3f956c1)) * disable internal columns like _comments from report column selec… ([frappe#24998](frappe#24998)) ([frappe#25000](frappe#25000)) ([76a32f2](frappe@76a32f2)) * Don't init site if already init-ed during truncate ([frappe#25033](frappe#25033)) ([frappe#25036](frappe#25036)) ([5ddbfb2](frappe@5ddbfb2)) * **File Uploader:** call 'upload_files' without passing event object ([frappe#25034](frappe#25034)) ([frappe#25087](frappe#25087)) ([ce5abfc](frappe@ce5abfc)) * force `[]` as default for child tables ([frappe#24000](frappe#24000)) ([fea1623](frappe@fea1623)) * **formatters:** Translate Select value in format_value ([frappe#24951](frappe#24951)) ([frappe#25077](frappe#25077)) ([ff9e199](frappe@ff9e199)) * german translation of No. ([4e491b2](frappe@4e491b2)) * grid row default values not using model (backport [frappe#23701](frappe#23701)) ([frappe#24896](frappe#24896)) ([ad05acb](frappe@ad05acb)) * **grid:** Add type attribute to buttons ([frappe#25021](frappe#25021)) ([frappe#25022](frappe#25022)) ([d440fef](frappe@d440fef)) * Guess currency from report row if available ([frappe#25009](frappe#25009)) ([frappe#25010](frappe#25010)) ([dfcee61](frappe@dfcee61)) * handle total rows in number card ([frappe#25011](frappe#25011)) ([frappe#25012](frappe#25012)) ([4882bfc](frappe@4882bfc)) * invalid lru_cache usage ([frappe#25046](frappe#25046)) ([frappe#25047](frappe#25047)) ([e275851](frappe@e275851)) * **module_map:** only include apps installed on the site - not everything on the bench (backport [frappe#24688](frappe#24688)) ([frappe#25122](frappe#25122)) ([79e7c57](frappe@79e7c57)) * Private images in PDFs from background jobs ([frappe#24980](frappe#24980)) ([frappe#25015](frappe#25015)) ([3211ccf](frappe@3211ccf)) * replaced created by with owner in base_document ([frappe#25059](frappe#25059)) ([frappe#25061](frappe#25061)) ([bc5d09d](frappe@bc5d09d)) * restrict method for security critical endpoints ([frappe#25105](frappe#25105)) ([frappe#25108](frappe#25108)) ([44f4858](frappe@44f4858)) * ruff fixes ([c557ec6](frappe@c557ec6)) * show tooltip on edit table row (backport [frappe#25040](frappe#25040)) ([frappe#25069](frappe#25069)) ([2afbed7](frappe@2afbed7)) * spelling of "recording" in button (backport [frappe#25025](frappe#25025)) ([frappe#25026](frappe#25026)) ([6bf4f1c](frappe@6bf4f1c)) * support running QB union queries (backport [frappe#24757](frappe#24757)) ([frappe#25016](frappe#25016)) ([c092efa](frappe@c092efa)) * translate doctype in user-facing error message ([frappe#25045](frappe#25045)) ([3cd1eb2](frappe@3cd1eb2)) * validate fetch from ([frappe#25116](frappe#25116)) ([frappe#25118](frappe#25118)) ([624985d](frappe@624985d)) * wrap read_only functions correctly ([frappe#25018](frappe#25018)) ([frappe#25020](frappe#25020)) ([88a09be](frappe@88a09be)) ### Features * add push notification ([93ecd40](frappe@93ecd40)) * hook for print format template loader ([frappe#25037](frappe#25037)) ([frappe#25074](frappe#25074)) ([201e30f](frappe@201e30f)) * Impersonate a user (backport [frappe#25050](frappe#25050)) ([frappe#25051](frappe#25051)) ([813fb59](frappe@813fb59)) * socketio using authorization headers (backport [frappe#24858](frappe#24858)) ([frappe#24966](frappe#24966)) ([2045340](frappe@2045340)) * support array request type ([frappe#25109](frappe#25109)) ([frappe#25112](frappe#25112)) ([957d3eb](frappe@957d3eb)) ### Performance Improvements * avoid unnecessary json parsing ([frappe#25065](frappe#25065)) ([frappe#25073](frappe#25073)) ([1b814b3](frappe@1b814b3)) * don't process checks if there are none ([frappe#25063](frappe#25063)) ([frappe#25071](frappe#25071)) ([c3b0931](frappe@c3b0931)) * remove specific elements instead of re-rendering entire list ([frappe#25078](frappe#25078)) ([frappe#25089](frappe#25089)) ([37c9d3f](frappe@37c9d3f))
chore(release): Bumped to Version 14.66.3 ## [14.66.3](frappe/frappe@v14.66.2...v14.66.3) (2024-02-28) ### Bug Fixes * add context for row number label ([b9bb4e3](frappe@b9bb4e3)) * Avoid add "null" to cc in communication in timeline (backport [frappe#25092](frappe#25092)) ([frappe#25095](frappe#25095)) ([4bb84e7](frappe@4bb84e7)) * Cast to string to handle int PK ([frappe#24988](frappe#24988)) ([frappe#24992](frappe#24992)) ([4b7edff](frappe@4b7edff)) * Check perm for library file before cloning ([frappe#25117](frappe#25117)) ([frappe#25119](frappe#25119)) ([3b75844](frappe@3b75844)) * **ControlTime:** Don't set datepicker's date if field is read only ([frappe#25038](frappe#25038)) ([frappe#25075](frappe#25075)) ([b0d55a3](frappe@b0d55a3)) * disable internal columns like _comments from report column selec… ([frappe#24998](frappe#24998)) ([frappe#24999](frappe#24999)) ([78ff82b](frappe@78ff82b)) * Don't init site if already init-ed during truncate ([frappe#25033](frappe#25033)) ([frappe#25035](frappe#25035)) ([52bb028](frappe@52bb028)) * **File Uploader:** call 'upload_files' without passing event object ([frappe#25034](frappe#25034)) ([frappe#25086](frappe#25086)) ([40b725d](frappe@40b725d)) * german translation of No. ([ac841dc](frappe@ac841dc)) * grid row default values not using model (backport [frappe#23701](frappe#23701)) ([frappe#24895](frappe#24895)) ([119d7a6](frappe@119d7a6)) * invalid lru_cache usage ([frappe#25046](frappe#25046)) ([frappe#25048](frappe#25048)) ([f9d4874](frappe@f9d4874)) * replaced created by with owner in base_document (backport [frappe#25059](frappe#25059)) ([frappe#25060](frappe#25060)) ([ceb81a0](frappe@ceb81a0)) * set default user value only if enabled ([frappe#25017](frappe#25017)) ([deeb509](frappe@deeb509)) * show tooltip on edit table row (backport [frappe#25040](frappe#25040)) ([frappe#25068](frappe#25068)) ([4fb20ff](frappe@4fb20ff)) * translate doctype in user-facing error message (backport [frappe#25043](frappe#25043)) ([frappe#25044](frappe#25044)) ([d3054e4](frappe@d3054e4)) * wrap read_only functions correctly ([frappe#25018](frappe#25018)) ([frappe#25019](frappe#25019)) ([81af784](frappe@81af784)) ### Performance Improvements * avoid unnecessary json parsing ([frappe#25065](frappe#25065)) ([frappe#25072](frappe#25072)) ([ae469ef](frappe@ae469ef)) * remove specific elements instead of re-rendering entire list ([frappe#25078](frappe#25078)) ([frappe#25088](frappe#25088)) ([e6c1269](frappe@e6c1269))
chore(release): Bumped to Version 15.15.0 # [15.15.0](frappe/frappe@v15.14.1...v15.15.0) (2024-02-20) ### Bug Fixes * **calendar:** Replace route in load_last_view ([frappe#24894](frappe#24894)) ([frappe#24928](frappe#24928)) ([2557384](frappe@2557384)) * ensure has_value_changed works for Datetime, Date and Time fields (backport [frappe#24919](frappe#24919)) ([frappe#24922](frappe#24922)) ([87e7702](frappe@87e7702)) * handle bad cron expressions (backport [frappe#24938](frappe#24938)) ([frappe#24942](frappe#24942)) ([18512d6](frappe@18512d6)) * invite contact as user ([4e308e4](frappe@4e308e4)) * keep order in `get_values_from_single` ([frappe#24907](frappe#24907)) ([frappe#24924](frappe#24924)) ([d8f663b](frappe@d8f663b)) * lower socket timeout for validating email domain ([frappe#24915](frappe#24915)) ([frappe#24918](frappe#24918)) ([796c7c0](frappe@796c7c0)) * **page:** Catch LocalStorage quota exception ([frappe#24885](frappe#24885)) ([frappe#24931](frappe#24931)) ([cb3a435](frappe@cb3a435)) * send_workflow_action_email ([frappe#24929](frappe#24929)) ([frappe#24934](frappe#24934)) ([7e9eec0](frappe@7e9eec0)) * use communication date in timeline ([8bebcb6](frappe@8bebcb6)) * **weblist:** Fix "More" button not working ([frappe#24893](frappe#24893)) ([frappe#24926](frappe#24926)) ([4732928](frappe@4732928)) ### Features * pass doctype as context when translating label (backport [frappe#24903](frappe#24903)) ([frappe#24916](frappe#24916)) ([6cdc0a7](frappe@6cdc0a7)) * Queue selection for webhooks ([frappe#24876](frappe#24876)) ([frappe#24932](frappe#24932)) ([bd2b90c](frappe@bd2b90c)) ### Performance Improvements * defer imports during CLI (backport [frappe#24945](frappe#24945)) ([frappe#24946](frappe#24946)) ([a23a758](frappe@a23a758))
chore(release): Bumped to Version 14.66.2 ## [14.66.2](frappe/frappe@v14.66.1...v14.66.2) (2024-02-20) ### Bug Fixes * **calendar:** Replace route in load_last_view ([frappe#24894](frappe#24894)) ([frappe#24927](frappe#24927)) ([fa184d6](frappe@fa184d6)) * ensure has_value_changed works for Datetime, Date and Time fields (backport [frappe#24919](frappe#24919)) ([frappe#24921](frappe#24921)) ([8087a7a](frappe@8087a7a)) * handle bad cron expressions (backport [frappe#24938](frappe#24938)) ([frappe#24941](frappe#24941)) ([4efcdb5](frappe@4efcdb5)) * ignore and gracefully handle img optimization failure ([b112333](frappe@b112333)) * invite contact as user ([136ac70](frappe@136ac70)) * keep order in `get_values_from_single` ([frappe#24907](frappe#24907)) ([frappe#24923](frappe#24923)) ([3347144](frappe@3347144)) * lower socket timeout for validating email domain ([frappe#24915](frappe#24915)) ([frappe#24917](frappe#24917)) ([427e681](frappe@427e681)) * **page:** Catch LocalStorage quota exception ([frappe#24885](frappe#24885)) ([frappe#24930](frappe#24930)) ([3a36f7d](frappe@3a36f7d)) * send_workflow_action_email ([frappe#24929](frappe#24929)) ([frappe#24933](frappe#24933)) ([5f29c83](frappe@5f29c83)) * set same cookie expiry on client side (backport [frappe#24560](frappe#24560)) ([frappe#24567](frappe#24567)) ([744b363](frappe@744b363)) * use communication date in timeline ([0632cb3](frappe@0632cb3)) * **weblist:** Fix "More" button not working ([frappe#24893](frappe#24893)) ([frappe#24925](frappe#24925)) ([1715638](frappe@1715638))
chore(release): Bumped to Version 15.14.1 ## [15.14.1](frappe/frappe@v15.14.0...v15.14.1) (2024-02-19) ### Bug Fixes * send_workflow_action_email ([frappe#24929](frappe#24929)) ([frappe#24940](frappe#24940)) ([7381216](frappe@7381216))
chore(release): Bumped to Version 14.66.1 ## [14.66.1](frappe/frappe@v14.66.0...v14.66.1) (2024-02-19) ### Bug Fixes * send_workflow_action_email ([frappe#24929](frappe#24929)) ([frappe#24939](frappe#24939)) ([6c13a3b](frappe@6c13a3b))
chore(release): Bumped to Version 15.14.0 # [15.14.0](frappe/frappe@v15.13.0...v15.14.0) (2024-02-14) ### Bug Fixes * add default timezone for Tanzania ([a1bb530](frappe@a1bb530)) * Added Mongolian language ([frappe#24803](frappe#24803)) ([frappe#24849](frappe#24849)) ([68f25eb](frappe@68f25eb)) * Avoid sending password back ([frappe#24794](frappe#24794)) ([frappe#24796](frappe#24796)) ([88d6900](frappe@88d6900)) * **DX:** show user who modified in diff view ([frappe#24790](frappe#24790)) ([frappe#24792](frappe#24792)) ([54cca5b](frappe@54cca5b)) * Ignore "Invalid Doctype" validation if ignore flag is passed (backport [frappe#24818](frappe#24818)) ([frappe#24822](frappe#24822)) ([d07e48b](frappe@d07e48b)) * preferred_language cookie ([frappe#24819](frappe#24819)) ([frappe#24827](frappe#24827)) ([6a8fcfb](frappe@6a8fcfb)) * remove _ from frappe.model.std_fields (Backport [frappe#24662](frappe#24662)) ([62d0d72](frappe@62d0d72)) * Remove Open Filter On Communication Doctype ([frappe#24800](frappe#24800)) ([frappe#24801](frappe#24801)) ([cd4bf1e](frappe@cd4bf1e)) ### Features * frapp.model.can_submit (JS) ([91b54c6](frappe@91b54c6)) * Jinja syntax highlighting (backport [frappe#23760](frappe#23760)) ([frappe#24833](frappe#24833)) ([425f1c6](frappe@425f1c6)) ### Performance Improvements * faster workflow action processing (backport [frappe#24862](frappe#24862)) ([frappe#24866](frappe#24866)) ([8866374](frappe@8866374)) * skip ifnull checks on `modified` field (backport [frappe#24042](frappe#24042)) ([frappe#24043](frappe#24043)) ([2ee251d](frappe@2ee251d)) * use unique file url ([frappe#24830](frappe#24830)) ([frappe#24836](frappe#24836)) ([b24cfcc](frappe@b24cfcc))
chore(release): Bumped to Version 14.66.0 # [14.66.0](frappe/frappe@v14.65.0...v14.66.0) (2024-02-14) ### Bug Fixes * Abort flushing email queue if >50% fail. ([c825035](frappe@c825035)) * add default timezone for Tanzania ([c1599f3](frappe@c1599f3)) * Added Mongolian language ([frappe#24803](frappe#24803)) ([frappe#24848](frappe#24848)) ([7e02dd8](frappe@7e02dd8)) * Avoid sending password back ([frappe#24794](frappe#24794)) ([frappe#24795](frappe#24795)) ([3335bf3](frappe@3335bf3)) * check param type in mark_as_seen(note) ([52ebde3](frappe@52ebde3)) * console import progress off-by-one ([frappe#24777](frappe#24777)) ([frappe#24786](frappe#24786)) ([12234ab](frappe@12234ab)) * **DX:** show user who modified in diff view ([frappe#24790](frappe#24790)) ([frappe#24791](frappe#24791)) ([3859f42](frappe@3859f42)) * flush emails from single background jobs ([e833346](frappe@e833346)) * Ignore "Invalid Doctype" validation if ignore flag is passed (backport [frappe#24818](frappe#24818)) ([frappe#24821](frappe#24821)) ([87c2600](frappe@87c2600)) * **login:** Escape translated strings (backport [frappe#24431](frappe#24431)) ([frappe#24700](frappe#24700)) ([9f4b39c](frappe@9f4b39c)) * preferred_language cookie ([frappe#24819](frappe#24819)) ([frappe#24826](frappe#24826)) ([6369301](frappe@6369301)) * remove _ from frappe.model.std_fields (Backport [frappe#24662](frappe#24662)) ([frappe#24881](frappe#24881)) ([0c74d2f](frappe@0c74d2f)) ### Features * add style & onEachFeature function for geojson in geolocation controller ([frappe#21322](frappe#21322)) ([8e9b4be](frappe@8e9b4be)) * frapp.model.can_submit (JS) ([2a28d04](frappe@2a28d04)) * Jinja syntax highlighting (backport [frappe#23760](frappe#23760)) ([frappe#24834](frappe#24834)) ([fbf7b1c](frappe@fbf7b1c)) ### Performance Improvements * faster workflow action processing (backport [frappe#24862](frappe#24862)) ([frappe#24865](frappe#24865)) ([e01c11d](frappe@e01c11d)) * skip ifnull checks on `modified` field ([frappe#24042](frappe#24042)) ([frappe#24813](frappe#24813)) ([56a9579](frappe@56a9579)) * use unique file url ([frappe#24830](frappe#24830)) ([frappe#24835](frappe#24835)) ([34e2022](frappe@34e2022))
chore(release): Bumped to Version 15.13.0 # [15.13.0](frappe/frappe@v15.12.0...v15.13.0) (2024-02-06) ### Bug Fixes * Allow int fields to be unique ([frappe#24750](frappe#24750)) ([frappe#24756](frappe#24756)) ([6c5ea2f](frappe@6c5ea2f)) * Avoid enqueueing during install ([frappe#24679](frappe#24679)) ([frappe#24682](frappe#24682)) ([7825a72](frappe@7825a72)) * Check if header/footer html exists before trying to extract ([03fc5b1](frappe@03fc5b1)) * check is_translatable link ([frappe#24739](frappe#24739)) ([frappe#24747](frappe#24747)) ([e21e2ca](frappe@e21e2ca)) * clear sitemap cache periodically ([frappe#24676](frappe#24676)) ([282e0e6](frappe@282e0e6)) * console import progress off-by-one ([frappe#24777](frappe#24777)) ([frappe#24787](frappe#24787)) ([e6ad6e8](frappe@e6ad6e8)) * Custom Script runs twice ([5d7d7f7](frappe@5d7d7f7)) * Dashboard view realtime error ([frappe#24698](frappe#24698)) ([frappe#24699](frappe#24699)) ([a2a766b](frappe@a2a766b)) * data import table UI fix ([064aca2](frappe@064aca2)) * date format & pre commit test ([9726c46](frappe@9726c46)) * depends on ([9777fe3](frappe@9777fe3)) * description ([fe7ed4b](frappe@fe7ed4b)) * Disappearing letterhead header in pdf ([e932958](frappe@e932958)) * do not allow to set if_owner & report perm together ([290b7e8](frappe@290b7e8)) * don't notify links if not public ([019c223](frappe@019c223)) * enable syntax highlighting for `PythonExpression` code fields ([frappe#24669](frappe#24669)) ([frappe#24671](frappe#24671)) ([4bbfaa7](frappe@4bbfaa7)) * Enqueue deletion of dynamic link after comitting ([frappe#24675](frappe#24675)) ([9fbe981](frappe@9fbe981)) * Extract header/footer html into `content` to simplify things ([64102a7](frappe@64102a7)) * formatting ([05a6ad8](frappe@05a6ad8)) * formatting ([5ba9be8](frappe@5ba9be8)) * hide number counter for new document view shortcut ([bb46d23](frappe@bb46d23)) * **js:** Handle hidden virtual fields ([frappe#24405](frappe#24405)) ([frappe#24692](frappe#24692)) ([ea82c81](frappe@ea82c81)) * **login:** Escape translated strings ([frappe#24431](frappe#24431)) ([frappe#24701](frappe#24701)) ([73c66ce](frappe@73c66ce)) * lower default retention periods ([frappe#24697](frappe#24697)) ([frappe#24705](frappe#24705)) ([a155f9e](frappe@a155f9e)) * make rate_limiter respect multitenancy ([frappe#24634](frappe#24634)) ([d25bfd9](frappe@d25bfd9)) * Make sure sitemap respects robot_txt ([10b583b](frappe@10b583b)) * never show virtual fields in list view (backport [frappe#24666](< B41A a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="2112127454" data-permission-text="Title is private" data-url="https://github.com/frappe/frappe/issues/24666" data-hovercard-type="pull_request" data-hovercard-url="/frappe/frappe/pull/24666/hovercard" href="https://github.com/frappe/frappe/pull/24666">frappe#24666)) ([frappe#24668](frappe#24668)) ([45e2683](frappe@45e2683)) * no of rows displayed based on report type ([db4d36f](frappe@db4d36f)) * outgoing email account handlng (backport [frappe#24656](frappe#24656)) ([frappe#24657](frappe#24657)) ([4a59a01](frappe@4a59a01)) * redirect and open new doctype dialog if route to /doctype/new ([fec821a](frappe@fec821a)) * Retry contact update if it fails due to conflict ([frappe#24654](frappe#24654)) ([frappe#24655](frappe#24655)) ([22aa5d3](frappe@22aa5d3)) * Set default for search result limit if empty ([frappe#24713](frappe#24713)) ([frappe#24715](frappe#24715)) ([474feb8](frappe@474feb8)) * short circuit private files perm check ([e6d7ffe](frappe@e6d7ffe)) * show folders in Google Drive Picker ([0d99ef8](frappe@0d99ef8)), closes [frappe#23096](frappe#23096) * Show proper error message for prepared report failure ([frappe#24733](frappe#24733)) ([frappe#24737](frappe#24737)) ([99676af](frappe@99676af)) * Skip fulltext indexes during sync ([frappe#24728](frappe#24728)) ([frappe#24734](frappe#24734)) ([8e078f3](frappe@8e078f3)) * suggestion ([63764a9](frappe@63764a9)) * title link check ([frappe#24731](frappe#24731)) ([frappe#24735](frappe#24735)) ([5c006cd](frappe@5c006cd)) * Translate Letterhead information string ([8dfa972](frappe@8dfa972)) * typeerror in onboarding_tours.js ([5ae79be](frappe@5ae79be)) * Use `TEXT` type for Webhook URLs to support large URLs ([frappe#24763](frappe#24763)) ([f31a3ce](frappe@f31a3ce)) * **UX:** improve server script message ([frappe#24770](frappe#24770)) ([5d88275](frappe@5d88275)) * virtual fields are never writable ([frappe#24693](frappe#24693)) ([frappe#24696](frappe#24696)) ([d020771](frappe@d020771)) * **website:** Handle virtual DocTypes webview routing ([frappe#24445](frappe#24445)) ([frappe#24743](frappe#24743)) ([bed66ca](frappe@bed66ca)) ### Features * allow extending site config with a hook ([ffed7bf](frappe@ffed7bf)) * Letterhead scripts ([9b296cd](frappe@9b296cd)) * **recorder:** profiling and granular recording (backport [frappe#24683](frappe#24683)) ([frappe#24742](frappe#24742)) ([fd04617](frappe@fd04617)) * show doctype description on list title hover (backport [frappe#24612](frappe#24612)) ([frappe#24769](frappe#24769)) ([5a0e20b](frappe@5a0e20b)) * show doctype description on workspace link hover ([frappe#24598](frappe#24598)) ([frappe#24789](frappe#24789)) ([6107338](frappe@6107338)) * use_first_day_of_period ([1fcb105](frappe@1fcb105)) ### Performance Improvements * optional faster perm check for files ([3e4a344](frappe@3e4a344))
PreviousNext