Commit graph

2041 commits

Author SHA1 Message Date
Ankush Menat
e76c29fcec
feat: Store printed PDF attachments on communication (#25439) 2024-03-14 11:45:03 +00:00
Ankush Menat
d758af5960 fix: clear routing cache on homepage change 2024-03-13 23:42:59 +05:30
Ankush Menat
a49fafbf8e feat: support countig till a limit
In InnoDB counting is essentially O(n) operation, it can be pretty fast
on indexes but when filters don't use any index it usually means doing a
full table scan.

Adding a limit will stop the scan as soon as that many records are
matched.
2024-03-12 13:17:28 +05:30
Ankush Menat
f7c0dd66fd refactor: migrate virtual doctypes to new API 2024-03-11 18:25:05 +05:30
Ankush Menat
4ab2ccd01f fix!: get_count accepts splatted arguments 2024-03-11 18:15:27 +05:30
Ankush Menat
13c74ec231 fix: Use debug log to log DB queries 2024-03-10 12:49:19 +05:30
Ankush Menat
ef5a173db0
fix: misleading CLI error message for missing command (#25049) 2024-03-04 10:45:46 +00:00
Maxim Sysoev
eff50e1cd3
fix: filter Implementation is set operator (#25182)
* Implementation is set operator. fix issue #25180

* Refactored filtrer operator `is`,
Add tests

* fix: Correct implementation for `is set`

---------

Co-authored-by: Ankush Menat <ankush@frappe.io>
2024-03-02 13:59:30 +00:00
Ankush Menat
daf43cff79
test: add test case for in ("") (#25189) 2024-03-02 06:00:02 +00:00
Ankush Menat
0fff2755d6
test: separate out risky tests (#25179) 2024-02-29 16:10:08 +00:00
Ankush Menat
0c9cc2e6ce test: NOWAIT functionality 2024-02-29 17:46:30 +05:30
Ankush Menat
5116768a54 test: utils for simulating two connections 2024-02-29 17:31:46 +05:30
Ankush Menat
dbc2e092f1 fix: escalate print failures
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.
2024-02-28 16:42:03 +05:30
Ankush Menat
bb7c3c289c
feat: support array request type (#25109)
There can be external APIs like webhooks that only send array request,
in which case Frappe has no mechanism to accept such requests.

After this PR such request data can be accessed using `data` list
argument on function.

I've considered directly storing list in form_dict but it's not
feasible:
1. It breaks semantics, "form_dict" can't be a list. That ship has long
   sailed.
2. Way too much code expects form_dict to be a dict.
2024-02-27 16:41:33 +00:00
Akhil Narang
3f1e19de85
refactor(treewide): enable RUF rules
Signed-off-by: Akhil Narang <me@akhilnarang.dev>
2024-02-21 16:20:28 +05:30
Ankush Menat
718b5b8bee
fix: Private images in PDFs from background jobs (#24980)
* refactor: Private images rendering in PDFs

Private images currently render fine if PDF is generated during a
request as we pass the cookiejar to WKHTML.

Background jobs however fail completeley because they can't retrieve
private images without cookiejar.

This PR converts all image types to base64 encoded sources in HTML
itself, so wkhtmltopdf doesn't have to a fire a request.

* test: private images in pdf
2024-02-21 10:38:02 +00:00
Akhil Narang
c60e97410d
chore(cache): add in some tests
Signed-off-by: Akhil Narang <me@akhilnarang.dev>
2024-02-19 14:28:35 +05:30
Ankush Menat
e6120f230a
Merge pull request #23848 from barredterra/copy-config-to-new-app
feat: default configuration for new app
2024-02-19 12:19:07 +05:30
Raffael Meyer
68eb2d978d
fix: keep order in get_values_from_single (#24907)
* fix: keep order in `get_values_from_single`

* fix: add test for destructuring

---------

Co-authored-by: Ankush Menat <ankush@frappe.io>
2024-02-19 05:35:35 +00:00
Ankush Menat
0d847439b6 test: add more tests for has_value_changed 2024-02-19 10:42:21 +05:30
scdanieli
a1cb19c820 fix: ensure has_value_changed works for datetime, date and timedelta fields 2024-02-18 16:05:31 +01:00
barredterra
1aae576b1a Merge branch 'develop' into copy-config-to-new-app 2024-02-16 14:36:58 +01:00
Ankush Menat
38565a80e3 test: redo reset password tests 2024-02-11 14:30:50 +05:30
Ankush Menat
4c925e0325 refactor: Reset password flow
- Hash one time reset tokens instead of storing them as is
- Up the perm level
- Use better source of randomness for generating token
- minor code cleanup here and there
2024-02-11 14:25:26 +05:30
Ankush Menat
19044c4be4
Merge pull request #24745 from niraj2477/multiple-role-profile
feat: Allow multiple role profile for user
2024-02-10 13:11:44 +05:30
Ankush Menat
72c2207e0f refactor: useless use of dict in frappe.get_doc 2024-02-10 12:52:38 +05:30
Raffael Meyer
b3b02c809f
Merge pull request #24684 from barredterra/label-in-link-to-form 2024-02-09 21:03:07 +01:00
Ankush Menat
ef923e4cc9 test: use known functions for testing
Random functions can have annotations but no annotations on arguments
2024-02-09 17:11:48 +05:30
Akhil Narang
26ae0f3460
fix: ruff fixes
Signed-off-by: Akhil Narang <me@akhilnarang.dev>
2024-02-07 17:04:31 +05:30
barredterra
0184aa7823 test: get_url_to_form 2024-02-06 12:50:01 +01:00
Ankush Menat
d89e0e7e4c feat: let users unlock stuck documents 2024-02-06 12:55:31 +05:30
Ankush Menat
de9ac89748 style: re-format with ruff 2024-02-05 18:53:33 +05:30
Ankush Menat
f8743d1cfb fix: support running QB union queries
closes https://github.com/frappe/frappe/issues/15609
2024-02-05 16:45:04 +05:30
Akhil Narang
f19c25ec42
Merge pull request #24432 from blaggacao/chore/cleanup-frappe-connect-2
chore: cleanup frappe connect II/II
2024-02-02 16:53:19 +05:30
Ankush Menat
dedadbb0d9 perf: optional faster perm check for files 2024-01-31 10:49:18 +05:30
David Arnold
b57dbe2dbc
Merge remote-tracking branch 'origin/develop' into chore/cleanup-frappe-connect-2 2024-01-30 10:47:19 +01:00
Ankush Menat
2f28a5e224
Merge pull request #23904 from cogk/fix-fieldlevel-access-to-shared-document-list
fix(meta)!: Allow level 0 fields if a doc has been shared with user
2024-01-29 20:17:29 +05:30
Ankush Menat
d2d1b14cc6 fix: Always allow meta/standard fields in perm level
Perm levels CANNOT applied on these fields so these should ALWAYS be allowed.
2024-01-29 20:00:41 +05:30
Ankush Menat
3bea50d519
fix: Return empty result if no perm level access (#24591) 2024-01-29 19:48:19 +05:30
barredterra
1d4c61aa86 test: adjust param for get_user_input_stream 2024-01-29 15:18:08 +01:00
barredterra
ce50162213 Merge branch 'develop' into copy-config-to-new-app 2024-01-29 15:07:13 +01:00
Ankush Menat
70a6a8334f
fix: set same cookie expiry as client side (#24560) 2024-01-29 05:52:40 +00:00
David Arnold
c57bc94ead
chore: cleanup frappe.connect invocations 2024-01-24 11:56:24 +01:00
barredterra
9d6cbd0c15 fix: typos 2024-01-24 02:41:03 +01:00
David Arnold
ef1ee77c99
test: fully spec test command line 2024-01-21 18:20:38 +01:00
David Arnold
e5ea601882
test: amend to consistently specify the test env's root db user 2024-01-18 12:25:58 +01:00
Ankush Menat
c177431557
perf: Document objects without circular references (#17080)
* perf: `Document` objects without circular references

Circular references are usuallly considered bad for GC, avoiding them
since they don't seem to be necessary.

* fix: explicitly convert to weakref
2024-01-17 17:22:55 +05:30
Ankush Menat
c0cf13b8e8 Revert "fix: search_link fails when txt contains parentheses (#22892)"
This reverts commit 642e9f4ec1.
2024-01-17 12:44:20 +05:30
Sambasiva Suda
642e9f4ec1
fix: search_link fails when txt contains parentheses (#22892)
* fix: search_link fails when txt contains parentheses

* fix: updating regex to replace number params also

* chore: replacing regex with sqlparse

* chore: not including fields like count(1) in asterisk_fields

* fix: owner/module not identified as column

* chore: lint fix and removing exception

* refactor: better function name

---------

Co-authored-by: Ankush Menat <ankush@frappe.io>
2024-01-16 21:36:45 +05:30
Ankush Menat
484049c5ae
fix: simultenous sessions ux (#24387)
* fix: set 2 as simultaneous_sessions by default

* fix: Correct offset for simultaneous_sessions

* refactor: use freeze_time instead of patching

* chore: misleading docstring

* test: set lower simultaneous_sessions for test
2024-01-16 13:36:05 +00:00