Commit graph

3893 commits

Author SHA1 Message Date
sokumon
990329d23b fix(desktop_icon): adapt new schema in auto generation 2026-01-06 17:35:58 +05:30
mergify[bot]
efc236ef37
Merge branch 'develop' into capture-client-events 2026-01-05 07:22:11 +00:00
Akhil Narang
f8443020ca
fix(error): don't return in a finally block (PEP-765) (#35610)
https://docs.python.org/3/whatsnew/3.14.html#pep-765-control-flow-in-finally-blocks

Signed-off-by: Akhil Narang <me@akhilnarang.dev>
2026-01-05 06:41:16 +00:00
Saqib Ansari
61679295aa chore: move common utility functions to frappe.utils 2026-01-04 14:20:40 +05:30
Saqib Ansari
142367c9b7 fix: preserve old behaviour
* is_enabled wasn't cached before
2026-01-04 13:40:16 +05:30
Saqib Ansari
43d71dd02b fix: handle string input for bulk_capture events 2026-01-04 13:34:27 +05:30
Saqib Ansari
e51ce12b90 feat: add test cases 2026-01-04 13:31:44 +05:30
Saqib Ansari
23c8673c45 refactor: implement retry logic 2026-01-04 13:09:51 +05:30
Saqib Ansari
f3cc4301f8 refactor: create event queue class 2026-01-04 12:39:08 +05:30
Saqib Ansari
1f762c316a refactor: avoid guest event capture for now 2026-01-03 20:50:55 +05:30
Saqib Ansari
aea1e86627 fix: is_enabled is not updated on system settings change 2026-01-03 20:49:52 +05:30
Saqib Ansari
018d01fe77 chore: remove unused import 2026-01-03 20:38:34 +05:30
Saqib Ansari
80205d5d59 feat: whitelist capture methods for client side events 2026-01-03 20:31:11 +05:30
Saqib Ansari
ee7c91599d refactor: telemetry with posthog and pulse providers 2026-01-03 16:21:49 +05:30
Akhil Narang
936e7947c2
Merge pull request #35565 from akhilnarang/simplify-chromium-setup
fix: ensure `bench setup-chrome` respects site config path for chromium
2025-12-31 18:32:27 +05:30
Ankush Menat
987be17ea1
perf: Reduce memory usage of exif stripping (#35566)
This was at least 4x inefficient because of:

- Way too many copies of same buffers
- Serialization of binary data to python integers :woozy: using `list()`
2025-12-31 11:30:13 +00:00
Akhil Narang
19ccfcc453
fix: ensure bench setup-chrome respects site config path for chromium
Signed-off-by: Akhil Narang <me@akhilnarang.dev>
2025-12-31 16:49:23 +05:30
Akhil Narang
873a12827c
Merge pull request #35505 from akhilnarang/fix-ruff-autofix
fix: correct some type annotations changed by ruff
2025-12-30 15:34:30 +05:30
Sagar Vora
e6f867da74
Merge pull request #35391 from akhilnarang/qb-fixes 2025-12-30 13:44:43 +05:30
Sagar Vora
26b3e6363e chore: deprecate validate_filters 2025-12-30 13:02:49 +05:30
Akhil Narang
bfc0e416b2
Merge pull request #35507 from akhilnarang/fix-msgprint
fix(msgprint): correct typehint, and only use HTML-stripped version for printing to terminal
2025-12-29 17:46:21 +05:30
Akhil Narang
bebec109a5
fix(msgprint): correct typehint, and only use HTML-stripped version for printing to terminal
Signed-off-by: Akhil Narang <me@akhilnarang.dev>
2025-12-29 17:33:30 +05:30
Akhil Narang
b80ef0d89e
fix: correct some type annotations changed by ruff
Reference: commit 8723a2b6ee

These didn't need to be forward references

Signed-off-by: Akhil Narang <me@akhilnarang.dev>
2025-12-29 17:02:17 +05:30
Akhil Narang
344d8cbead
Merge pull request #35424 from akhilnarang/oauth-fix-mixed-case-email
fix(oauth): convert email to lowercase
2025-12-29 16:24:31 +05:30
Akhil Narang
bc94ef1381
Merge pull request #35483 from Packeting1/fix/secure-git-call-changelog
fix: avoid shell in changelog git calls
2025-12-29 13:45:56 +05:30
Ankush Menat
f6873fec0a
perf: Remove unused empty table checks (#35469) 2025-12-29 07:28:41 +00:00
Packeting
03aa9ca1f8 fix: avoid shell in changelog git calls 2025-12-29 10:29:55 +08:00
Akhil Narang
6204ff351c
fix(oauth): convert email to lowercase
All user emails are stored as lowercase, but OAuth provider could have it in mixed case.
We pass the email as-is to LoginManager, which could result in a session with an incorrect email.

Signed-off-by: Akhil Narang <me@akhilnarang.dev>
2025-12-23 18:15:30 +05:30
Akhil Narang
659b3bac8e
fix(msgprint): cleanup checks
Signed-off-by: Akhil Narang <me@akhilnarang.dev>
2025-12-23 17:33:54 +05:30
Akhil Narang
a7cfb11e4b
fix(msgprint): let as_table work properly
Signed-off-by: Akhil Narang <me@akhilnarang.dev>
2025-12-23 17:30:03 +05:30
Sabu Siyad
4f0e303f18
fix(types): msgprint: use Sequence instead of list 2025-12-23 17:26:06 +05:30
Sabu Siyad
7c4d64157c
fix(types): msgprint can take of list of strings
`msg` argument to `msgprint` can be either a string, a list of strings
or a list of list of strings.
2025-12-23 17:26:06 +05:30
Ankush Menat
5b87d55b7e perf: Cache get_apps and internals 2025-12-23 16:06:10 +05:30
Akhil Narang
0ac52c1bb4
chore: update boilerplate
Signed-off-by: Akhil Narang <me@akhilnarang.dev>
2025-12-23 13:27:48 +05:30
Akhil Narang
e859b1d312
fix: disable UP040, revert some instances to TypeAlias
Signed-off-by: Akhil Narang <me@akhilnarang.dev>
2025-12-23 13:12:04 +05:30
Akhil Narang
90a40dbfe0
fix: ruff manual fixes
Signed-off-by: Akhil Narang <me@akhilnarang.dev>
2025-12-22 21:06:48 +05:30
Akhil Narang
f7feeea0a0
fix: ruff "unsafe" fixes
Signed-off-by: Akhil Narang <me@akhilnarang.dev>
2025-12-22 21:06:48 +05:30
Akhil Narang
8723a2b6ee
fix: ruff fixes
Signed-off-by: Akhil Narang <me@akhilnarang.dev>
2025-12-22 21:06:48 +05:30
Akhil Narang
588cb1e44d
refactor: tomli -> tomllib
Signed-off-by: Akhil Narang <me@akhilnarang.dev>
2025-12-22 21:06:48 +05:30
sokumon
0ea047a776 fix: reroute portal users correctly 2025-12-19 20:34:28 +05:30
Abdeali Chharchhodawala
a333241d95
fix: handle password feedback for common words and suggestions (#35156)
* fix: handle password feedback for common words and suggestions

* refactor: enhance password strength failure msg

* refactor: keep suggestion html align with title
2025-12-19 14:44:22 +05:30
sokumon
dd2dc053ca chore: more renames to /desk 2025-12-18 20:45:04 +05:30
sokumon
0e3ff92996 chore: rename app to desk in get url methods 2025-12-18 19:56:04 +05:30
Ankush Menat
dc3e598be8
fix: Always show traceback on dev server (#35263) 2025-12-16 07:13:28 +00:00
Akhil Narang
ec615fe9aa
fix(goal): improve validation (#35186) 2025-12-12 13:50:12 +05:30
Abdeali Chharchhodawala
4647986aeb
fix!: Always Bold report header row (#34703)
* fix: Always bold report header row

* fix: update test cases

* refactor: add option to bold filter rows in XLSX output

* chore: minor changes

* chore: rename index variable

* revert: undo bold filters param use

* refactor: remove duplication for building xlsx data

* revert: add has_filters parameter to check for filter row bold

* refactor: add type hints and docstrings for XLSX data handling functions
2025-12-11 15:55:51 +05:30
Hardik Zinzuvadiya
b5f22227ab feat(utils): replace custom email parsing with RFC-compliant validation (fixes #27337)
Replaced the old comma-split based email parsing with `email.utils.getaddresses`
to correctly handle RFC 5322 formatted addresses, including display names
containing commas (e.g. `"Last, First" <email@example.com>`).

The previous implementation incorrectly split on commas and treated parts of
display names as standalone emails, causing valid inputs to fail validation and
breaking Communication creation (e.g. `"Gritton, Howard" <hgrit@example.com>`).

The new validator:
- correctly parses display names with commas
- handles multiple addresses and multiline input
- skips undisclosed recipients
- preserves existing EMAIL_MATCH_PATTERN validation
- returns only the email addresses (same as before)

Added additional test cases covering RFC-compliant inputs and empty-addr scenarios.
Fixes frappe/frappe#27337.
2025-12-07 06:38:12 +00:00
Trusted Computer
d870caf6c4
fix: there is no attribute for closed, just handle the exception as the docs suggest (ported from frappe/print_designer #496) (#35098) 2025-12-06 05:05:32 +05:30
Aarol D'Souza
cf69e4bed1
fix(postgres): misc query building fixes + CI (#34831)
* fix(query): check standard field definitions

Signed-off-by: Akhil Narang <me@akhilnarang.dev>

* fix(postgres): fix order_by problem in pg

* fix(postgres): fix order_by in get_all for _test_connection_query

* fix: add check to a proper numeric fallback in _get_ifnull_fallback

* test(postgres): fix pg query used in assertion in test_permission_query

* fix(postgres): fix order_by in get_all for possible_link

* fix(postgres): fix order_by in get_all for set_modules

* fix(postgres): fix pg query count *

* fix(postgres): fix order_by in get_all for ask_pass_update

* fix(postgres): fix order_by statement in search_widget

* fix(postgres): fix order_by in get_list for get_stats

* test(postgres): normalize_sql for pg queries in test_arithmetic_operators_in_fields

* test(postgres): normalize_sql for pg queries in test_field_alias_in_group_by

* test(postgres): normalize_sql for pg queries in test_field_alias_permission_check

* test(postgres): fix order_by statement in get_all for test_db_keywords_as_fields

* test(postgres): fix order_by statement in get_all for test_prepare_select_args

* fix(treeview): use 0 instead of false to check since check field is an integer

* fix(postgres): fix order_by in get_all for sync_communication

* fix(postgres): fix order_by in get_all for get_references_across_doctypes_by_dynamic_link_field

* test(postgres): fix order_by in get_all for test_list_summary

* fix(postgres): fix order_by in get_all for email queries

* test(postgres): use order_by none and update assertion for postgres

* fix(postgres): use ILIKE to support case insensitive search in postgres

* test(test_query): update pg specific query assert to use ILIKE

* test(test_query): update test_nested_filters to use ilike instead for PG

* test(postgres): update pg query in assert to test updated qb query

* fix(search): update query to be db-agnostic

* test(postgres): normalize query for pg in test_build_match_conditions

* fix(postgres): suppress ORDER BY when SELECT DISTINCT in query for postgres specific behavior

* fix(postgres): suppress ORDER BY when GROUP BY is explicitly asked for pg specific behavior

* test(postgres): fix test behavior for pg ORDER BY drop when used with GROUP BY

* refactor: reducing noise in code by formatting code

* fix(query): use Star() to handle SQL wildcard character * correctly

* fix(postgres): display warning for ORDER BY fields that will be dropped

---------

Signed-off-by: Akhil Narang <me@akhilnarang.dev>
Co-authored-by: Akhil Narang <me@akhilnarang.dev>
2025-12-05 10:30:49 +05:30
sokumon
34b221d097 fix: delete sidebars when app is deleted 2025-12-02 13:50:29 +05:30