Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
fix: Backport missing commits from version-13 to develop (#12845)
* feat(logger): allow max_size and file_count params (cherry picked from commit 94116ae) * chore: Typo (cherry picked from commit f04ce5d) * fix(get_logger): allow None for module (cherry picked from commit a87531e) * revert: "fix(image-with-blur): Set width, height in CSS" (bp #11170) (#11179) Co-authored-by: Shivam Mishra <scmmishra@users.noreply.github.com> * fix: Log site only if exists (cherry picked from commit 4b93f75) * fix: check if is_standard is "Yes" * fix: whitelist functions called through search widget (bp #11153) (#11187) (cherry picked from commit 6453317) Co-authored-by: Prssanna Desai <prssud@gmail.com> * feat: don't load user translation in make_dict_from_messages (bp #11120) (#11188) (cherry picked from commit 9b26702) Co-authored-by: Shivam Mishra <scmmishra@users.noreply.github.com> * fix: Permission query in Dashboard Chart (bp #10981) (#11191) Co-authored-by: Suraj Shetty <13928957+surajshetty3416@users.noreply.github.com> Co-authored-by: Prssanna Desai <prssud@gmail.com> * fix: Dashboard fixes (bp #11186) (#11199) Co-authored-by: Suraj Shetty <13928957+surajshetty3416@users.noreply.github.com> Co-authored-by: Prssanna Desai <prssud@gmail.com> * test: Make email accounts in email_account test (bp #11139) (#11150) Co-authored-by: Suraj Shetty <13928957+surajshetty3416@users.noreply.github.com> * feat: Add validate_and_sanitize_search_inputs decorator (#11194) (#11204) * feat: Add validate_and_sanitize_search_inputs decorator Co-authored-by: Nabin Hait <nabinhait@gmail.com> Co-authored-by: Prssanna Desai <prssud@gmail.com> Co-authored-by: Shivam Mishra <scmmishra@users.noreply.github.com> * refactor: Move validate_and_sanitize_search_inputs to init * refactor: Move validate_and_sanitize_search_inputs to search.py * test: validate_and_sanitize_search_inputs decorator * chore: Add wrapt module * refactor: Use @wrapt to define validate_and_sanitize_search_inputs decorator * test: Add a case to make sure frappe.call works as well Co-authored-by: Nabin Hait <nabinhait@gmail.com> Co-authored-by: Prssanna Desai <prssud@gmail.com> Co-authored-by: Shivam Mishra <scmmishra@users.noreply.github.com> (cherry picked from commit cd1ab8e) Co-authored-by: Suraj Shetty <13928957+surajshetty3416@users.noreply.github.com> * fix: Validate and sanitise whitelisted search methods using decorator (#11197) (#11205) * fix: Validate and sanitize whitelisted search methods using decorator Co-authored-by: Prssanna Desai <prssud@gmail.com> Co-authored-by: Shivam Mishra <scmmishra@users.noreply.github.com> * refactor: Replace decorator name Co-authored-by: Prssanna Desai <prssud@gmail.com> Co-authored-by: Shivam Mishra <scmmishra@users.noreply.github.com> Co-authored-by: Prssanna Desai <prssud@gmail.com> Co-authored-by: Shivam Mishra <scmmishra@users.noreply.github.com> (cherry picked from commit 21a0caf) Co-authored-by: Suraj Shetty <13928957+surajshetty3416@users.noreply.github.com> * chore: Add change log for v13.beta.4 (#11207) * bumped to version 13.0.0-beta.4 * fix: set samesite none for mobile (#11266) Co-authored-by: Shivam Mishra <scm.mymail@gmail.com> Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com> * chore: Fix Version * refactor: catch exceptions (cherry picked from commit 64f913f) * feat: catch exceptions on tokenizing values in get_value (cherry picked from commit 23975d5) * fix: contact not showing in form (bp #11363) (#11379) Co-authored-by: Afshan <afshan13k@gmail.com> * fix: boot if module is not present in desk (bp #11470) (#11471) (cherry picked from commit 40748d7) Co-authored-by: Shivam Mishra <scm.mymail@gmail.com> * fix: oauth code pointing to older desktop page * feat: Add module field in get_desk_sidebar_items (bp #11781) (#11782) (cherry picked from commit 00310ea) Co-authored-by: Sumit Bhanushali <sumit.bhanushali63@gmail.com> * fix: customize options in desk page rtl layout (cherry picked from commit e131681) * fix(Help Article): show 0 instead of undefined when value not set in dashboard (cherry picked from commit 6e04e0d) * fix: add colon between key and value (cherry picked from commit 2184313) * fix: disable chart form condition (#11844) (cherry picked from commit 6e931e6) * fix: shorten number card percentage stat (bp #11846) (#11848) (cherry picked from commit 8d70e3e) Co-authored-by: prssanna <prssud@gmail.com> * fix: Max slices for aggregate charts (bp #11808) (#11847) Co-authored-by: Prssanna Desai <prssud@gmail.com> Co-authored-by: Suraj Shetty <13928957+surajshetty3416@users.noreply.github.com> * fix: Navbar logo height and width (bp #11822) (#11849) (cherry picked from commit 25052af) Co-authored-by: Deepesh Garg <deepeshgarg6@gmail.com> * fix: Email password prompt missing field name for submit button (bp #11840) (#11850) (cherry picked from commit 8aca710) Co-authored-by: Andy Zhu <andy007yan@gmail.com> * fix: Remove @ from relevance query (bp #11837) (#11851) Co-authored-by: Suraj Shetty <13928957+surajshetty3416@users.noreply.github.com> * fix: Show total text with value if first column is numeric (bp #11813) (#11852) Co-authored-by: Suraj Shetty <13928957+surajshetty3416@users.noreply.github.com> * fix: Show custom message for invalid login credentials (bp #11853) (#11855) Co-authored-by: Suraj Shetty <surajshetty3416@gmail.com> * fix: Update child values for existing rows (bp #11737) (#11860) Co-authored-by: Faris Ansari <netchamp.faris@gmail.com> * fix: Doctype query in create new shortcut (bp #11864) (#11865) Co-authored-by: Shivam Mishra <scm.mymail@gmail.com> * fix(minor): minor fixes in document_naming.py and mandatory * fix: Total Row in Checkbox Column Reports * fix: Check of `get_datatable_options` exists in report settings * fix: enable disable save when navigating between docs (bp #11867) (#11876) Co-authored-by: Shivam Mishra <scm.mymail@gmail.com> * chore: Add Release Notes for v13-beta-6 (#11882) * fix(pdf): PDF generation shouldn't fail in background jobs and tests (bp #11792) (#11886) Co-authored-by: Aditya Hase <aditya@adityahase.com> * fix: Remove scrolling on focusout event for touchscreen devices (bp #11888) (#11889) (cherry picked from commit 59c5437) Co-authored-by: Rucha Mahabal <ruchamahabal2@gmail.com> * fix: Clear cache after updating defaults manually (cherry picked from commit 823aec2) * test: Added tests for bench remove-from-installed-apps (cherry picked from commit cb44492) # Conflicts: # frappe/tests/test_commands.py * chore: Resolve conflicts * chore: update version * bumped to version 13.0.0-beta.6 * refactor: Move get_build_version to utils.py (cherry picked from commit 0131288) * fix(website): Bust cache by passing build_version to link and script sources (cherry picked from commit 13175a8) * fix(website): Bust cache by passing build_version to link and script src (bp #11903) (#11909) Co-authored-by: Suraj Shetty <surajshetty3416@gmail.com> * fix: create auto_repeat field if docfield/custom field does not exist * feat: check if auto_repeat field is already present * chore: Bump version to 13.0.0-beta.7 * chore: Bump version to 13.0.0-beta.7 * fix(query-report): Show scrollbar for datatable Show report-wrapper before rendering datatable (cherry picked from commit e7fb4d0) * fix(Email): use set_header to set Message-Id in header (cherry picked from commit 8c11878) * chore: Bump version to 13.0.0-beta.8 * fix: Reload server script via patch (#12079) * fix(workflow): Update modified timestamp (bp #12093) (#12094) To sync changes in #11787 after migrate (cherry picked from commit 41a3b8c) Co-authored-by: Suraj Shetty <13928957+surajshetty3416@users.noreply.github.com> * fix: Link attachment in webform for new file (bp #12097) (bp #12102) (#12103) (cherry picked from commit 85d6a64) Co-authored-by: Suraj Shetty <13928957+surajshetty3416@users.noreply.github.com> (cherry picked from commit a670513) Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com> * fix(patch): Remove Package Publish Tool doctypes (#12113) (#12124) (cherry picked from commit bc9d6cf) Co-authored-by: Faris Ansari <netchampfaris@users.noreply.github.com> * chore: Added change log (#12127) * fix: beta version tag from version-13-beta * bumped to version 13.0.0-beta.9 * fix: validate user permissions while user has select perms (#12287) * feat: ability to set default desk page (#12286) * feat: ability to set default desk page * chore: add description * fix: validate single default page * fix: error message Co-authored-by: Prssanna Desai <prssud@gmail.com> Co-authored-by: Prssanna Desai <prssud@gmail.com> * fix: cannot extend a desk page with developer mode off (bp #12294) (#12295) Co-authored-by: Saqib <nextchamp.saqib@gmail.com> * chore: Add release notes for v13-beta-10 (#12296) * bumped to version 13.0.0-beta.10 * perf: optimise set_cors_headers (bp #12460) (#12462) (cherry picked from commit 68c6fc4) Co-authored-by: Sagar Vora <sagar@resilient.tech> * fix: ignore notify update in patch execution * chore: Bump to v13.0.0-beta.11 * fix: allow on submit for child table not working (bp #12381) (#12472) Co-authored-by: Prssanna Desai <prssud@gmail.com> Co-authored-by: hasnain2808@gmail.com <hasnain2808@gmail.com> * Revert "chore: Bump to v13.0.0-beta.11" This reverts commit 0ccdd93. * bumped to version 13.0.0-beta.11 * fix: uncomment conditions that handle guest access for desk (cherry picked from commit aa8f7cc) * fix: don't show social login icon if not set (cherry picked from commit 91cb71f) * chore: update frappe charts (cherry picked from commit 89b9c29) * fix: missing bracket in get_inner_group_button (cherry picked from commit 882ea6e) * fix: toast red indicator icon (cherry picked from commit dcbce24) * fix: web form buttons (cherry picked from commit 1937a1e) * fix: web form style (cherry picked from commit 72192e4) * refactor: common form styles (cherry picked from commit ec004cc) * fix: commonify quill styles for website and desk (cherry picked from commit 1581c99) * fix: more button in web list (cherry picked from commit 9386dbc) * fix: web form print button (cherry picked from commit 4246f8f) * fix: select field condition to check if value is selected (cherry picked from commit 97f7f63) * fix: use single statememt Co-authored-by: Suraj Shetty <13928957+surajshetty3416@users.noreply.github.com> (cherry picked from commit 7d1e04f) * feat: Client Script for List views * fix: remove print statement * fix: rename field to simply "view" * fix: List view formatters should override standard formatters * fix: Don't add child table button for List script * fix: DocType and Apply To should be set only once * fix: Hide Apply To for Single doctypes * fix: Reset form boilerplate if view is List * chore(sider): add sider default config for flake8 + ignore tab errors (W191) (bp #12587) (#12598) Co-authored-by: Mohammad Hasnain Mohsin Rajan <hasnain2808@gmail.com> * test: encoding @ since we encode each url (bp #12567) (#12599) Co-authored-by: hasnain2808@gmail.com <hasnain2808@gmail.com> * fix: Average Chart compute inaccurate average (bp #12254) (#12595) Co-authored-by: Prssanna Desai <prssud@gmail.com> Co-authored-by: shariquerik <sharique.rik@gmail.com> Co-authored-by: Shariq Ansari <30859809+shariquerik@users.noreply.github.com> Co-authored-by: prssanna <prssud@gmail.com> Co-authored-by: Suraj Shetty <surajshetty3416@gmail.com> Co-authored-by: Suraj Shetty <13928957+surajshetty3416@users.noreply.github.com> * feat: Add quoting parameter in the UnicodeWriter constructor (bp #12578) (#12602) Co-authored-by: Suraj Shetty <13928957+surajshetty3416@users.noreply.github.com> Co-authored-by: Britlog <info@britlog.com> * fix: Remove list.min.css from hook (bp #12606) (#12607) (cherry picked from commit cf2eacb) Co-authored-by: Suraj Shetty <13928957+surajshetty3416@users.noreply.github.com> * fix: Redesign Fixes (bp #12591) (#12611) Co-authored-by: prssanna <prssud@gmail.com> * chore: Update frappe-charts (bp #12617) (#12618) (cherry picked from commit 19a092f) Co-authored-by: Suraj Shetty <13928957+surajshetty3416@users.noreply.github.com> * revert: "fix: include space and tab in special characters to match to encode url" (bp #12619) (#12620) Co-authored-by: Suraj Shetty <13928957+surajshetty3416@users.noreply.github.com> (cherry picked from commit 67f3464) Co-authored-by: Prssanna Desai <prssud@gmail.com> * fix: Double signature in emails (bp #12520) (#12622) Co-authored-by: pateljannat <pateljannat2308@gmail.com> * revert: "test: encoding @ since we encode each url (bp #12567)" (#12626) This reverts commit 907d418. * fix: include space and tab in special characters to match to encode url (bp #12632) (#12634) (cherry picked from commit 6827b6b) Co-authored-by: prssanna <prssud@gmail.com> * fix: Auth failing (bp #12637) (#12638) Co-authored-by: leela <leela.vadlamudi@gmail.com> * fix: Remove 'ignore_user_type' from user filter (cherry picked from commit d9bb0c7) * feat: allowed the auto name in Customize Form (cherry picked from commit 2e70c1c) * feat: allowed the auto name in Customize Form (cherry picked from commit 607dcce) * fix: Make scrolling separate for sidebar and main content (cherry picked from commit 6e22902) * fix: Mobile view for workspace (cherry picked from commit 228cbb1) * fix(Workspace): Remove forced scrollbar (bp #12655) (#12656) (cherry picked from commit 8be8d4b) Co-authored-by: Aditya Hase <aditya@adityahase.com> * fix: Login with username fails (bp #12658) (#12663) With the recent refactoring we missed to include username check in auth flow. Added test cases along with the fix. (cherry picked from commit 2984026) Co-authored-by: Leela vadlamudi <leela@users.noreply.github.com> * feat: flag to delete docs permanently * feat: flag to delete attached files permanently * fix: remove redundant code * fix: auto delete prepared reports permanently * chore: update docstring for delete_doc * fix: update description for prepared_report_expiry_period - remove duplicate field * chore: Remove unused code (bp #12671) (#12675) (cherry picked from commit c4b0f54) Co-authored-by: Sagar Vora <sagar@resilient.tech> * fix: Hide tooltip on route change (bp #12579) (#12684) Co-authored-by: Suraj Shetty <13928957+surajshetty3416@users.noreply.github.com> * fix: Format currency values in dashboard chart (cherry picked from commit 8fcee4e) * fix: missing help links in navbar help dropdown (bp #12657) (#12691) Co-authored-by: prssanna <prssud@gmail.com> * fix: Typography for markdown content (bp #12692) (#12698) Co-authored-by: Faris Ansari <netchamp.faris@gmail.com> * fix: Always validate file URLs (bp #12685) (#12704) * feat: validate file urls * fix: validate file url while downloading content * fix: cleaner validation * fix: added separate validation for web URLs Co-authored-by: Saurabh <saurabh6790@gmail.com> Co-authored-by: Suraj Shetty <13928957+surajshetty3416@users.noreply.github.com> (cherry picked from commit bbeb241) Co-authored-by: Sagar Vora <sagar@resilient.tech> * fix: Read only mode for color input - fix style color readonly field - fix case where color control is hidden (cherry picked from commit 0d20d1a) * fix: Set color control as Data while adding filter (cherry picked from commit b22e5dd) * fix: Add version link to version content (cherry picked from commit f202953) * fix: awesomplete style in page form (cherry picked from commit 1c0e5c2) * fix: render info type comments on form timeline (cherry picked from commit e286cbf) * fix: toggle modal scroll for field select in modal (cherry picked from commit 64d2d99) * fix: don't show apply filter button if no filter button (cherry picked from commit ab65f7a) * fix: check if report result exists before formatting (cherry picked from commit c0e949e) * feat: don't render filters, sort, add doc button for dashbaord view (cherry picked from commit e22542a) * style: fix formatting (cherry picked from commit 7fe570c) * fix: render map view in Views menu (cherry picked from commit 8af1616) * fix: translation syntax (cherry picked from commit a638618) * style: Remove unnecessary space (cherry picked from commit fdb94a5) * fix: pull modules from Module Def instead of desktop config file (bp #12631) (#12723) Co-authored-by: Suraj Shetty <13928957+surajshetty3416@users.noreply.github.com> (cherry picked from commit 875056b) Co-authored-by: Prssanna Desai <prssud@gmail.com> * fix: System Notification fix (bp #12719) (#12724) (cherry picked from commit 93e6cc4) Co-authored-by: prssanna <prssud@gmail.com> * fix: enable fetch from for Check fieldtype (bp #12727) (#12728) (cherry picked from commit 8d3e0c2) Co-authored-by: prssanna <prssud@gmail.com> * fix(refactor): lockdown frappe.desk.reportview (cherry picked from commit a2ffea5) * fix(minor): fieldnames can't have commas (cherry picked from commit 511a5dd) * fix(minor): functions must end with bracket (cherry picked from commit 0c99594) * fix(minor): handle as fieldnames (cherry picked from commit 0def975) * fix(minor): make group_by validation tighter (cherry picked from commit c9b3679) * fix(report): move count, aggregation to serverside (cherry picked from commit 6d978a1) * fix(minor): disallow comments in fields (cherry picked from commit f1f6477) * fix(minor): lockdown frappe.client.get_list (cherry picked from commit 2248c6c) * fix(minor): tests and linting (cherry picked from commit d959fc7) * fix(minor): return value in reportview.py (cherry picked from commit 1aa8ada) * fix(minor): tests (cherry picked from commit 868228b) * fix(minor): tests (cherry picked from commit 82399dd) * fix(reportview): test (cherry picked from commit 337bdc9) * Update frappe/desk/reportview.py Co-authored-by: Suraj Shetty <13928957+surajshetty3416@users.noreply.github.com> (cherry picked from commit 375cdea) * fix: first column padding in datatable (bp #12733) (#12734) (cherry picked from commit 1c3688e) Co-authored-by: Prssanna Desai <prssud@gmail.com> * fix: copy paste rows more than 50 (one page) (bp #12548) (#12736) Co-authored-by: Suraj Shetty <13928957+surajshetty3416@users.noreply.github.com> Co-authored-by: Fisher Yu <12823863+szufisher@users.noreply.github.com> * refactor: Grid paste code (bp #12633) (#12737) Co-authored-by: Suraj Shetty <surajshetty3416@gmail.com> * fix: Miscellaneous changes (bp #12730) (#12738) Co-authored-by: Suraj Shetty <13928957+surajshetty3416@users.noreply.github.com> * chore: add semicolon * fix: use pathname on window.location * fix: checkbox bleed (cherry picked from commit b12714a) * fix: Make authentication check mandatory even in case of 2FA (cherry picked from commit 2227b91) * refactor: Cleanup name confusion Using `delete_session` name for a function and also as a method name is confusing. Cleaned that up. (cherry picked from commit 9200192) * fix: Track 2FA OTP attempts using login tracker (cherry picked from commit 1f6f02f) * test: OTP atempt tracker tests (cherry picked from commit 8fcb97a) * fix: change z-index even when list is empty (bp #12745) (#12747) (cherry picked from commit bbcfee9) Co-authored-by: hasnain2808@gmail.com <hasnain2808@gmail.com> * fix: get frappe.client.get_value() to work when as_dict is false (bp #12739) (#12749) (cherry picked from commit 193dbec) Co-authored-by: Walstan Baptista <38958184+walstanb@users.noreply.github.com> * fix: Return correct value from frappe.db.count (bp #12748) (#12750) (cherry picked from commit b279ca2) Co-authored-by: Suraj Shetty <13928957+surajshetty3416@users.noreply.github.com> * fix: Chart style in Dark Mode (bp #12751) (#12752) (cherry picked from commit 8d07768) Co-authored-by: Suraj Shetty <13928957+surajshetty3416@users.noreply.github.com> * fix: Miscellaneous changes (bp #12754) (#12755) Co-authored-by: Suraj Shetty <13928957+surajshetty3416@users.noreply.github.com> * fix: only focus on first input if form is new (bp #12758) (#12759) (cherry picked from commit 4fb544c) Co-authored-by: prssanna <prssud@gmail.com> * fix: Grid validation - Use separate docfields list for each child table row to avoid cross row validation issue (cherry picked from commit be857c7) * test: Add a test case for grid validation (cherry picked from commit 108c728) * chore: Remove change logs of beta releases * fix: users currently viewing a form (cherry picked from commit 0952e5d) * chore: Version 13 change log * fix: also emit doc close event on doc change (cherry picked from commit 987b3e2) * fix: get_route_options_for_new_doc in link field - Used correct df where get_route_options_for_new_doc function is attached It stopped working after #12744 (cherry picked from commit e25fae3) * fix: get_count API endpoint Make get_count work with join queries (cherry picked from commit 566f8ba) * fix: fix patch to pluralize list view setting (cherry picked from commit 872151f) * fix: list view setting patch (cherry picked from commit 86ddc1b) * chore: Bump version to v13.0.0 * fix: Reload website_theme_ignore_app before Website Theme (cherry picked from commit aaea55e) * fix: Check if df.options exists before setting docfields Fixes: #12793 (cherry picked from commit a71066f) * chore: Bump version to v13.0.1 * fix: Handle exception while building version comment (bp #12801) (#12802) (cherry picked from commit 13e7f45) Co-authored-by: Suraj Shetty <13928957+surajshetty3416@users.noreply.github.com> * fix: Patch fixes for v13 upgrade (#12806) * fix: ZeroDivision error in progress (bp #12586) (#12808) Co-authored-by: Ankush Menat <ankush@iwebnotes.com> * bumped to version 13.0.2 Co-authored-by: Gavin D'souza <gavin18d@gmail.com> Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com> Co-authored-by: Shivam Mishra <scmmishra@users.noreply.github.com> Co-authored-by: Shivam Mishra <scm.mymail@gmail.com> Co-authored-by: Prssanna Desai <prssud@gmail.com> Co-authored-by: Suraj Shetty <13928957+surajshetty3416@users.noreply.github.com> Co-authored-by: Saurabh <saurabh6790@gmail.com> Co-authored-by: Afshan <afshan13k@gmail.com> Co-authored-by: Sagar Vora <sagar@resilient.tech> Co-authored-by: Suraj Shetty <surajshetty3416@gmail.com> Co-authored-by: Sumit Bhanushali <sumit.bhanushali63@gmail.com> Co-authored-by: Abhishek Balam <abhishekbalam96@gmail.com> Co-authored-by: Deepesh Garg <deepeshgarg6@gmail.com> Co-authored-by: Andy Zhu <andy007yan@gmail.com> Co-authored-by: Faris Ansari <netchamp.faris@gmail.com> Co-authored-by: Rushabh Mehta <rmehta@gmail.com> Co-authored-by: marination <maricadsouza221197@gmail.com> Co-authored-by: Aditya Hase <aditya@adityahase.com> Co-authored-by: Rucha Mahabal <ruchamahabal2@gmail.com> Co-authored-by: Saurabh <saurabh@erpnext.com> Co-authored-by: Faris Ansari <netchampfaris@users.noreply.github.com> Co-authored-by: Saqib <nextchamp.saqib@gmail.com> Co-authored-by: Rohit Waghchaure <rohitw1991@gmail.com> Co-authored-by: Administrator <Administrator> Co-authored-by: hasnain2808@gmail.com <hasnain2808@gmail.com> Co-authored-by: shariquerik <sharique.rik@gmail.com> Co-authored-by: Shariq Ansari <30859809+shariquerik@users.noreply.github.com> Co-authored-by: Britlog <info@britlog.com> Co-authored-by: pateljannat <pateljannat2308@gmail.com> Co-authored-by: leela <leela.vadlamudi@gmail.com> Co-authored-by: Anupam <anupamvns0099@gmail.com> Co-authored-by: Leela vadlamudi <leela@users.noreply.github.com> Co-authored-by: Fisher Yu <12823863+szufisher@users.noreply.github.com> Co-authored-by: Walstan Baptista <38958184+walstanb@users.noreply.github.com> Co-authored-by: Ankush Menat <ankush@iwebnotes.com>
- Loading branch information