potentially minor breaking change - removal of a default dependency.
Use inbuilt `uuid` library instead of relying on third party lib.
py3.14 adds support for uuidv7, so we no longer need third party lib.
* fix: added 'autoname' to reserved keywords
* fix: prevent using autoname as DocField name
- Add validation for autoname in check_invalid_fieldnames()
- Treat Python keywords as reserved fieldnames
* fix: move autoname out of reserved keywords
* fix: move python keywords out of reserved keywords
* fix: skip reserved docfield name check for 'DocType'
---------
Co-authored-by: Raiza Safeel <raizasafeel@Raizas-MacBook-Air.local>
* feat: add dynamic value support for workflow update_value field
* feat: add evaluate as expression checkbox to workflow states
* test: add tests for dynamic workflow update_value expression
* fix: use description field instead of sender in workflow
tests
* chore: fix typo
---------
Co-authored-by: UmakanthKaspa <kaspaumakanth1999@gmail.com>
Co-authored-by: Akhil Narang <me@akhilnarang.dev>
In Postgres, double quotes denote identifiers. The previous LIKE clause format caused "UndefinedColumn" errors during field renaming (e.g., during HRMS installation) because the pattern was interpreted as a column name.
This change parameterizes the LIKE pattern and passes the wildcarded value as a bound parameter, ensuring compatibility with both MySQL and Postgres.
* feat: implement field masking for query builder
Signed-off-by: Akhil Narang <me@akhilnarang.dev>
* fix: add series and sessions to "core doctypes" list
This is so that we don't try to query their meta
This should also resolve#35030
Signed-off-by: Akhil Narang <me@akhilnarang.dev>
---------
Signed-off-by: Akhil Narang <me@akhilnarang.dev>
* fix(postgres): add rollback to prevent crash on hash collision
* fix(postgres): rollback to savepoint to prevent crash on hash collision
* fix(postgres): tighten bounds for a rollback to savepoint for a better perf
* fix(postgres): Handle hash collision efficiently with ON CONFLICT
* refactor: better naming
- Private methods
- "rows" is not a correct name for single record's name
* fix: Bad error handling
- Why raise postgres error?
- Let default error raising/handling happen
---------
Co-authored-by: Ankush Menat <ankush@frappe.io>