* Handle inconsistencies in type handling in DatabaseQuery & Database
APIs
* Update incompatible queries with frappe.qb notation
* Fixed use cases discovered by failing ERPNext CI tests
fix: db independent syntax for user_type
fix: handle postgres datetime values
feat: add ability to auto commit on db inserts
feat: add ability to escape underscore in postgres
fix: handle missing data in test runner bootstrapping
fix: db independent syntax for queries
fix: refactor to use qb
fix: update cache for language
fix: use pluck in email_queue
Co-authored-by: gavin <gavin18d@gmail.com>
fix: don't auto insert on tests for make_property_setter
fix: remove auto_commit in custom_field insertion
fix: remove auto_commit functionality
fix: review comments
fix: revert link validation
fix: style suggestion for readability
Co-authored-by: gavin <gavin18d@gmail.com>
fix: revert .lower() in link validation
fix: add rollback for setup_wizard
Revert "fix: add rollback for setup_wizard"
This reverts commit 83b3b0913d.
Revert "feat: add ability to escape underscore in postgres"
This reverts commit 8ed9c2aa33.
fix: more concise representation of order fields
Co-authored-by: gavin <gavin18d@gmail.com>
The license.txt file has been replaced with LICENSE for quite a while
now. INAL but it didn't seem accurate to say "hey, checkout license.txt
although there's no such file". Apart from this, there were
inconsistencies in the headers altogether...this change brings
consistency.
Steps to reproduce:
- Create a fresh new site with Frappe
- Add and install a new app.
- Add basic test_file.py anywhere in module.
- Run the single using test with bench command:
`bench --module module.dotted.path --test testname`
The test will not run and complain about implicit commit.
- root cause: test runner makes changes to DB but does not commit. e.g.
disabling of scheduler on L57.
Note: this is not reproducible in FF or when ERPNext is installed
because in many places of "test process" somethng else commits the
changes like `before_tests` hook, which usually isn't present in new
apps.
* Remove six for PY2 compatability since our dependencies are not, PY2
is legacy.
* Removed usages of utils from future/past libraries since they are
deprecated. This includes 'from __future__ ...' and 'from past...'
statements.
* Removed compatibility imports for PY2, switched from six imports to
standard library imports.
* Removed utils code blocks that handle operations depending on PY2/3
versions.
* Removed 'from __future__ ...' lines from templates/code generators
* Used PY3 syntaxes in place of PY2 compatible blocks. eg: metaclass
* [start] removing simpler user permission structure
* permission changes
removed "apply user permission" from has_permission
* test fixes and other supporting fixes
* Removed Apply user permission code
* additional check to see if user has some user permissions related to a doctype
* test fixes
* removed a test
* Permission changes
- Code to restrict access if module is blocked for user.
- [Fix] ignore user perm if applicable
* List view restrictions ui changes
* removed unwanted apply user perm code
* permission (block module fix)
* permission fix
* change user permission
user permission will not be applied if user doesn't have role permission
* removed left "apply_user_permissions" property
* add user permission help template
* perm js refactor
* ui / ux changes
restrict list view before entering view if user is not permitterd
add description for if owner check in role permission manager
* codacy fixes
* permission code fix
add controller permission check
add blocked module check in build_permission
* optimized get blocked module method