8000 Tags · legolas108/frappe · GitHub
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

Tags: legolas108/frappe

Tags

v15.16.1

Toggle v15.16.1's commit message
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))

v15.16.0

Toggle v15.16.0's commit message
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))

v14.66.3

Toggle v14.66.3's commit message
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))

v15.15.0

Toggle v15.15.0's commit message
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))

v14.66.2

Toggle v14.66.2's commit message
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))

v15.14.1

Toggle v15.14.1's commit message
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))

v14.66.1

Toggle v14.66.1's commit message
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))

v15.14.0

Toggle v15.14.0's commit message
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))

v14.66.0

Toggle v14.66.0's commit message
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))

v15.13.0

Toggle v15.13.0's commit message
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))
0