Commit graph

39622 commits

Author SHA1 Message Date
Ankush Menat
fc0ff7bd2e feat: RQ job doctype 2022-09-12 11:49:05 +05:30
Ankush Menat
330bd08210 feat: RQ worker virtual doctype
Enuff manual JS and HTML crap, lets reuse list and form views!
2022-09-11 11:44:12 +05:30
Ankush Menat
5152f13b10 fix: RQ reduce failed job TTL from 1 year to 7 days 2022-09-10 23:54:43 +05:30
Ankush Menat
f5a45a7e78 fix: erase default before adding new series-es 2022-09-10 13:14:23 +05:30
Ankush Menat
45b74861af test: fix broken test
Not sure why there's test on doctype "created by". Makes no sense.
2022-09-10 13:07:37 +05:30
Ankush Menat
0896873c8a test: add test role to user 2022-09-10 12:48:33 +05:30
Ankush Menat
a6b341bd59 test: fix tests using admin account 2022-09-10 12:48:33 +05:30
Ankush Menat
f07bc3b369 test(UI): use non-admin user for tests 2022-09-10 12:48:33 +05:30
Ankush Menat
d19790e03d fix: error handling without user set 2022-09-10 12:45:25 +05:30
Ankush Menat
87092ec0b3 fix: don't attempt to delete session during read only session 2022-09-10 12:45:25 +05:30
Ankush Menat
49af8f7db1
Merge pull request #18050 from ankush/read_only_maintenance
feat: Zero* downtime migrations
2022-09-09 18:17:57 +05:30
Ankush Menat
06d888126b fix(UX): show read only mode warning on web pages 2022-09-09 17:34:46 +05:30
Ankush Menat
ea7fbb2c10 refactor: remove dead flag db.read_only
This was added in last DB refactor but it does nothing, it was probably
supposed to do something with the connection pool but to best of my
knowledge "read only" is not a property of a connection.

It can be achieved with users who only have read access, that however
isn't implemented anywhere.

Removing this for now.
2022-09-09 17:34:46 +05:30
Ankush Menat
f6c548c7b9 feat(ux): no-indicator-dot for indicator pills
Adding this class will disable indicator's tiny dot added before text.
2022-09-09 17:34:46 +05:30
Ankush Menat
7f316fa427 test: add api tests for read only mode 2022-09-09 17:34:46 +05:30
Ankush Menat
1ec03dacff feat(UX): Disable write actions in read-only Desk
I won't be covering each and every aspect of desk that shouldn't work in
read only mode. This just handles major interactions and assumes that
user will get a hint about why other things aren't working.

Changes:
- Add read only badge on navbar.
- Disable forms
- Disable new doc creation
2022-09-09 17:34:46 +05:30
Ankush Menat
e1253e8299 fix: remove ad-hoc maintenance mode implementation 2022-09-09 17:34:46 +05:30
Ankush Menat
62d65aa843 perf: drop useless indexes from view log 2022-09-09 17:34:46 +05:30
Ankush Menat
98b57f6a1a fix: ensure deferred insert are flushed during update 2022-09-09 17:34:46 +05:30
Ankush Menat
55617b9e86 fix: defer logging during read only mode
Deferred:
- Error log
- view log
- web page view

Disable:
- "_seen" tracking used on list view to highlight unseen docs.
- "seen" on error log.
- dashboard chart last ts caching
2022-09-09 17:34:46 +05:30
Ankush Menat
f96505fae0 feat: wrap read only mode SQL errors 2022-09-09 17:34:44 +05:30
Ritwik Puri
fddaa2da57
Merge pull request #17910 from phot0n/remove-event-streaming
refactor!: remove event streaming
2022-09-08 22:00:45 +05:30
Sagar Vora
1ea1d5de04
fix(Link): dont validate DocType when setting value (#18061) 2022-09-08 21:59:21 +05:30
phot0n
914ef2edc5 chore: remove Event Streaming from frappe.breadcrumbs.module_map 2022-09-08 21:57:46 +05:30
Ankush Menat
5922c0ea35 fix: dont renew session during read only mode 2022-09-08 18:22:08 +05:30
Ankush Menat
4389447148 fix: always explicitly start a new transaction
Active read only transaction can be aborted by doing a commit and then
issuing queries. This prevents such edge cases.
2022-09-08 18:22:08 +05:30
Ankush Menat
5beccd8802 feat: allow reads during maintenance_mode
To reduce downtime reading from main db server during maintenance_mode
can be allowed. This lets users browse desk, static sites or any other
pages while ensuring that no writes happen to DB.

refactor: use read replica if available
2022-09-08 18:22:03 +05:30
Ankush Menat
5e86e1f192 feat: db.begin(read_only=True)
You can now start read only transaction by passing read only flag. Read
only transactions prevent any query that is of "WRITE" type like
insert/delete/update.
2022-09-08 18:22:03 +05:30
Ankush Menat
466d59f2e1 fix: query parent on Dashboard Chart and number card
Querying docfields directly like this is not allowed
2022-09-08 16:51:59 +05:30
Ankush Menat
c400e18979 refactor: drop file upload plugin
Cypress supports this natively now!
2022-09-08 16:51:59 +05:30
Ankush Menat
de9e002cc1 fix: stick footer at bottom on login page
Right now if you've got taller display or even 1080p the footer doesn't
stick to bottom of the page
2022-09-08 16:32:07 +05:30
Ankush Menat
98f7453b92 fix: don't show login link on login page again
Makes little sense.
2022-09-08 16:32:07 +05:30
Shariq Ansari
d787563849
fix: hide grid row index if table is used in column break (#18056) 2022-09-08 15:56:06 +05:30
Ankush Menat
f4434e9c80
ci: add alternate backport workflow 2022-09-08 15:23:22 +05:30
Ankush Menat
022df94711
fix: respect Accept headers during maintenance mode #18057 2022-09-08 14:35:55 +05:30
mergify[bot]
eb4c4fb7b2
fix: encode docname when routing (backport #17092) (#17374)
(cherry picked from commit c8777c59cf665ab54218cd7bf9accd1d8e22ddf9)

Co-authored-by: phot0n <ritwikpuri5678@gmail.com>
2022-09-07 21:25:51 +05:30
Kitti U. @ Ecosoft
a35880a089
docs: misleading docstring #18051
Wrong instruction for Redirect URL
2022-09-07 18:03:19 +05:30
Ankush Menat
77d8c9bd29
Merge pull request #18044 from phot0n/fix-email-queue-recipient-status
refactor(minor): get_success_recipients -> get_queued_recipients
2022-09-07 15:39:51 +05:30
Ankush Menat
3e92bab1d0
perf: duplicate database initialization (#18049) 2022-09-07 11:32:00 +05:30
Ritwik Puri
e7e8ee1d6d
Merge branch 'develop' into fix-email-queue-recipient-status 2022-09-06 22:45:52 +05:30
phot0n
94795aa571 test: fix test_retry_partially_sent_newsletter and add stricter assertions 2022-09-06 22:11:08 +05:30
phot0n
d49a35ce5e refactor(minor): get_success_recipients -> get_queued_recipients
* chore: remove status filter from get_queued_recipients (previously
  get_success_recipients)

* chore: removed not used statuses from Email Queue Recipient
2022-09-06 22:11:08 +05:30
Ankush Menat
b47205ff01 chore: use PAT instead of GH token
[skip ci]
2022-09-06 19:00:43 +05:30
Ankush Menat
441fcc5159
ci: auto raise release PRs (#18048) 2022-09-06 18:47:34 +05:30
Ankush Menat
5699eadcad
fix: show user/pass fields when LDAP is active (#18043) 2022-09-06 14:03:52 +05:30
Nikhil Kothari
89b2e5133f
feat: option to disable user pass based login (#18000)
* Added checkbox to disable pass login in settings

* Added user_pass disable option in Login page context

* Hide user-pass fields when option disabled

* Added check for social login key and LDAP

* feat: Disable API based usr-pwd login

* style: format with black

* refactor: simpify auth validation

No need for else clause

* refactor: fixup sys setting json and move field

* refactor: sys settings validation

* refactor: simpler imports

* chore: undo unintional changes

* test: add test for disabled user pass

Co-authored-by: Ankush Menat <ankush@frappe.io>
2022-09-06 13:48:00 +05:30
Ankush Menat
f6d886eb56
Merge pull request #18030 from resilient-tech/better-cors
refactor: improved CORS support and caching
2022-09-06 12:20:57 +05:30
Sagar Vora
5db5396b49 test: ensure that Vary header is specified 2022-09-05 15:51:41 +05:30
Sagar Vora
48196915f6 fix: set Vary header to tell browser that response differs based on origin 2022-09-05 15:42:08 +05:30
Sagar Vora
51a39bd693 fix: only set allowed headers if required 2022-09-05 02:10:58 +05:30