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

Merge from upstream v15 #91

Merged
merged 219 commits into from
Apr 2, 2024

Conversation

ankush and others added 30 commits February 28, 2024 08:34
…fix/pr-25128

fix: Use current language in attachment prints (backport frappe#25128)
…fix/pr-25131

fix: specify print_language in communication attachments (backport frappe#25131)
…fix/pr-25135

fix(UX): set default print language from print format (backport frappe#25135)
Print failures shouldn't generate PDF with failure message but instead escalate the error.

This prevent all the PDFs that just contain "PermissionError" from being sent.

(cherry picked from commit dbc2e09)
…fix/pr-25137

fix: escalate print failures (backport frappe#25137)
…fix/pr-25143

fix(UX): correctly disable standard web form form (backport frappe#25143)
This causes more confusion when it's hidden.

(cherry picked from commit bab3ee3)

Co-authored-by: Ankush Menat <ankush@frappe.io>
(cherry picked from commit 5ef208d)

Co-authored-by: Shankarv19bcr <shankarv292002@gmail.com>
Use a separate cache key depending on the arguments passed

Signed-off-by: Akhil Narang <me@akhilnarang.dev>
(cherry picked from commit e6be7d6)
…fix/pr-25149

fix(setup_module_map): fix caching (backport frappe#25149)
## [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))
Resolves frappe#25078 (comment)

(cherry picked from commit ac05c7d)

Co-authored-by: Raffael Meyer <14891507+barredterra@users.noreply.github.com>
Also avoid complex naming schemes.

(cherry picked from commit f7bff58)

Co-authored-by: Ankush Menat <ankush@frappe.io>
* fix: lock the doc before deleting

Locking only prevents this kinda race conditions:
- User A deletes doc
- User B modifies doc so that it's not deletable anymore.

(cherry picked from commit 8f00aae)

* feat: nowait to skip blocking locks

(cherry picked from commit e810fb7)

* fix: prevent deletion if document is locked

(cherry picked from commit fc5ce04)

* test: utils for simulating two connections

(cherry picked from commit 5116768)

* test: NOWAIT functionality

(cherry picked from commit 0c9cc2e)

* fix(postgres): treat LockNotAvailable as timeout

It's a lock timeout in a way.

(cherry picked from commit b4fe722)

* test: separate out risky tests

---------

Co-authored-by: Ankush Menat <ankush@frappe.io>
Remove redundant parameters

(cherry picked from commit 1f969a4)
…fix/pr-25184

refactor: validate_link_and_fetch (backport frappe#25184)
(cherry picked from commit daf43cf)

Co-authored-by: Ankush Menat <ankush@frappe.io>
… (frappe#25197)

(cherry picked from commit f4b6f95)

Co-authored-by: Corentin Flr <10946971+cogk@users.noreply.github.com>
* Implementation is set operator. fix issue frappe#25180

* Refactored filtrer operator `is`,
Add tests

* fix: Correct implementation for `is set`

---------

Co-authored-by: Ankush Menat <ankush@frappe.io>
(cherry picked from commit eff50e1)

# Conflicts:
#	frappe/tests/test_utils.py

Co-authored-by: Maxim Sysoev <maks4a@gmail.com>
(cherry picked from commit af69dab)

# Conflicts:
#	frappe/custom/doctype/custom_field/custom_field.js

Co-authored-by: Ankush Menat <ankush@frappe.io>
…ppe#25206)

* fix: No need to sort keys while saving JSON to DB

Also, adding indent is unnecessary.

(cherry picked from commit 9a1bd6c)

Co-authored-by: Suraj Shetty <13928957+surajshetty3416@users.noreply.github.com>
This is not shown in UI and only used for UI logic of toggling button.

closes frappe#25202

(cherry picked from commit 2639bfe)

Co-authored-by: Ankush Menat <ankush@frappe.io>
…appe#25212)

Select options can be dynamic, in that case we should at least the
default value `None` as a value `DF.Literal` otherwise is invalid type
annotation.

(cherry picked from commit b1a8bc9)

# Conflicts:
#	frappe/automation/doctype/milestone_tracker/milestone_tracker.py
#	frappe/email/doctype/notification/notification.py
#	frappe/social/doctype/energy_point_rule/energy_point_rule.py

Co-authored-by: Ankush Menat <ankush@frappe.io>
(cherry picked from commit bfb1c3e)

Co-authored-by: Raffael Meyer <14891507+barredterra@users.noreply.github.com>
akhilnarang and others added 28 commits March 22, 2024 16:23
…fix/pr-25599

feat: allow setting a custom rate limit for `login via email link` feature (backport frappe#25599)
frappe#25523)" (frappe#25603) (frappe#25606)

This reverts commit bc83b24.

(cherry picked from commit bbf55df)

Co-authored-by: Ankush Menat <ankush@frappe.io>
frappe#25522)" (frappe#25604) (frappe#25605)

This reverts commit e446770.

(cherry picked from commit 0bf0cb8)

Co-authored-by: Ankush Menat <ankush@frappe.io>
Broke in frappe#21064

Sentry: FRAPPE-2SH

Signed-off-by: Akhil Narang <me@akhilnarang.dev>
(cherry picked from commit 2af42f5)
…fix/pr-25611

fix(webhook): `r` is referenced here before its initialized (backport frappe#25611)
(cherry picked from commit 457f5bf)

# Conflicts:
#	frappe/www/contact.py
…fix/pr-25614

fix(Contact form): make email content translatable (backport frappe#25614)
…rappe#25622)

Ideally, this query should be converted to "Top N" variant and just pick
first 20 records, join only them with other table and send data back.

Currently we always group by `name` in list view. This makes "show title
in link field" join queries insanely slow as it first queries entire
table and then applies limit.

(cherry picked from commit bad3b9e)

Co-authored-by: Ankush Menat <ankush@frappe.io>
- make checkbox container area larger to avoid accidental click routing to form

(cherry picked from commit 439e7c5)

Co-authored-by: Faris Ansari <netchampfaris@users.noreply.github.com>
(cherry picked from commit 8ee2850)

Co-authored-by: Ankush Menat <ankush@frappe.io>
…pe#25636)

(cherry picked from commit 4f205e2)

Co-authored-by: Ankush Menat <ankush@frappe.io>
Null is the intentional absence of a value. It represents a variable that has been explicitly set to have no value.

(cherry picked from commit 8b0c202)

Co-authored-by: barredterra <14891507+barredterra@users.noreply.github.com>
fix: download_multi_pdf doesn't print letter head
It overrides what we set with information that isn't really useful for us.
Set a more readable method name, and add in some additional job metadata.

Signed-off-by: Akhil Narang <me@akhilnarang.dev>
(cherry picked from commit bd6eaab)
The job name will now be the module + qualname instead of just the method name

Signed-off-by: Akhil Narang <me@akhilnarang.dev>
(cherry picked from commit baa5b1c)
…fix/pr-25610

feat: drop sentry's RQ integration (backport frappe#25610)
# [15.19.0](frappe/frappe@v15.18.2...v15.19.0) (2024-03-27)

### Bug Fixes

* add missing arg while invoking _download_multi_pdf ([f82ed9f](frappe@f82ed9f))
* allow page length 2500 ([frappe#25062](frappe#25062)) ([75b1f6c](frappe@75b1f6c))
* **Contact form:** make email translatable ([800cfee](frappe@800cfee))
* **Contact form:** make title and options translatable ([b1dbd79](frappe@b1dbd79))
* **Contact form:** translate internal notification to system language ([f67e5f1](frappe@f67e5f1))
* DB Query distinct handling with full table name ([frappe#25594](frappe#25594)) ([4fe0498](frappe@4fe0498))
* diff after converting to html to text ([frappe#25582](frappe#25582)) ([frappe#25584](frappe#25584)) ([bd7372d](frappe@bd7372d))
* Mark totals row correctly for print ([frappe#25629](frappe#25629)) ([frappe#25631](frappe#25631)) ([725018f](frappe@725018f))
* only add title field in search if it exists ([frappe#25634](frappe#25634)) ([frappe#25636](frappe#25636)) ([b2260c1](frappe@b2260c1))
* redirect after login, todo filters (backport [frappe#25521](frappe#25521)) ([frappe#25561](frappe#25561)) ([d9f9aa4](frappe@d9f9aa4)), closes [frappe#25455](frappe#25455) [frappe#25455](frappe#25455)
* respect `null` as number value ([frappe#25639](frappe#25639)) ([5b64ac9](frappe@5b64ac9))
* set list row height to 40px ([frappe#25619](frappe#25619)) ([frappe#25625](frappe#25625)) ([af406f9](frappe@af406f9))
* **test:** update RQ serialization test ([c764282](frappe@c764282))
* Translate form and workflow builder (backport [frappe#25482](frappe#25482)) ([frappe#25547](frappe#25547)) ([01f469f](frappe@01f469f))
* **webhook:** `r` is referenced here before its initialized ([a60bb4e](frappe@a60bb4e)), closes [frappe#21064](frappe#21064)
* **workspace:** Don't allow Welcome as default workspace ([819a24c](frappe@819a24c))

### Features

* allow setting a custom rate limit for `login via email link` feature ([c7af627](frappe@c7af627))
* connect to redis sentinel for redis queue ([frappe#25557](frappe#25557)) ([82a33c3](frappe@82a33c3))
* drop sentry's RQ integration ([1eab176](frappe@1eab176))
* **workspace:** Allow user to choose a default workspace ([bfa1a83](frappe@bfa1a83))

### Performance Improvements

* Faster "show title in link field" on list view ([frappe#25597](frappe#25597)) ([frappe#25622](frappe#25622)) ([f62a30c](frappe@f62a30c))
* remove useless sorting on docstatus ([frappe#25571](frappe#25571)) ([frappe#25591](frappe#25591)) ([5e5853e](frappe@5e5853e))

### Reverts

* Revert "fix: escape text types before setting disp area (frappe#25520) (frappe#25523)" (frappe#25603) ([bbf55df](frappe@bbf55df)), closes [frappe#25520](frappe#25520) [frappe#25523](frappe#25523) [frappe#25603](frappe#25603)
…rappe#25723)

Don't pass the stringified version - this is what goes to RQ, and the string we construct isn't always "correct"

For example, https://github.com/frappe/frappe/blob/87d121f47a4afc507442a97bf1854bb3d17f42c6/frappe/email/doctype/email_queue/email_queue.py#L735-L736 generates `frappe.email.doctype.email_queue.email_queue.QueueBuilder.send_emails` which will result in `ModuleNotFoundError: No module named 'frappe.email.doctype.email_queue.email_queue.QueueBuilder'; 'frappe.email.doctype.email_queue.email_queue' is not a package`

Signed-off-by: Akhil Narang <me@akhilnarang.dev>
(cherry picked from commit 8658196)

Co-authored-by: Akhil Narang <me@akhilnarang.dev>
(cherry picked from commit 2c14450)

Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
## [15.19.1](frappe/frappe@v15.19.0...v15.19.1) (2024-03-29)

### Bug Fixes

* **enqueue:** pass the original method argument here ([frappe#25722](frappe#25722)) ([frappe#25723](frappe#25723)) ([adfd8eb](frappe@adfd8eb)), closes [/github.com/frappe/frappe/blob/87d121f47a4afc507442a97bf1854bb3d17f42c6/frappe/email/doctype/email_queue/email_queue.py#L735-L736](https://github.com//github.com/frappe/frappe/blob/87d121f47a4afc507442a97bf1854bb3d17f42c6/frappe/email/doctype/email_queue/email_queue.py/issues/L735-L736)
@Alchez Alchez merged commit d73672d into ParsimonyGit:parsimony-production-v15 Apr 2, 2024
12 of 14 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
10 participants