Commit graph

233 commits

Author SHA1 Message Date
Abdeali Chharchhodawala
690826ff9b
feat!: faster generation and formatting utils for excel exports (#36323)
* feat: Style builder for report xlsx formatting

* fix: update report to use direct import for query report execution

* refactor: simplify module method retrieval in report execution

* feat: get xlsx styles for report

* refactor: enhance XLSXStyleBuilder with currency formatting and default style registration

* feat: add xlsxwriter dependency for enhanced XLSX report generation

* refactor: enhance XLSXStyleBuilder with improved style registration and formatting methods

* feat: enhance XLSX export functionality with improved styling and metadata support

* refactor: default formatting of currency

* chore: remove some typo

* feat: update make_xlsx function to use xlsxwriter for improved Excel file generation and styling

* perf: some micro optimisations

* refactor: inline generator back and improve condition

* refactor: replace frappe.request_cache with functools.cache

* fix: handle styling in email

* fix: fix old test case to handle styles in export

* refactor: enhance XLSX style handling and registration methods

* refactor: improve currency formatting logic

* fix: update make_xlsx to use constant_memory for large datasets and improve row style handling

* fix: handle None style_id in XLSXStyleBuilder methods to prevent errors

* fix: include owner field with proper doctype naming

* fix: set default date format in XLSX workbook creation

* fix: pass applied filters to metadata

* fix: getting accurate field info for report view exporting

* chore: Minor changes

* feat: add function to generate default XLSX styles for exports

* feat: integrate default XLSX styles into builder report export functionality

* feat: styles on export docs xlsx

* feat: enhance make_xlsx function to support file path saving

* feat: add make_xls function for creating Excel files in old format and improve sheet name sanitization

* fix: handle default date formatting

* refactor: changes xlsx builder usage

* refactor: update xlsx style builder usage

* refactor: enhance field info retrieval with default field support

* fix: handle update key in report data

* refactor: enhance get_field_info to include options and improve label retrieval

* fix: improve error handling for unsupported file formats and ensure applied filters are set correctly

* refactor: update XLSX header index handling and improve metadata structure

* fix: handle currency formatting in reportview export

* fix: update default date format to datetime format in XLSX creation

* fix: update serial number field in auto email report to use 'sr' instead of 'idx'

* fix: enhance XLSX styling by adding right alignment for specific field types

* chore: remove unused code

* fix: update XLSXMetadata attributes for improved report styling options

* perf: further improve currency styling

* fix: correct column index mapping in XLSX export header

* refactor: optimize indentation style registration in XLSXStyleBuilder

* perf: improve apply_indentations

* fix: reduce more attr lookup

* refactor: remove duplication

* fix: use report name in XLSX export instead of hardcoded title

* fix: remove ignore_visible_idx from XLSXMetadata

* fix: review

* fix: update XLSX style fetching logic in build_xlsx_data function

* fix: add right alignment to date, time, and datetime styles in XLSXStyleBuilder

* fix: simplify number format handling in XLSXStyleBuilder

* fix: register common styles in XLSXStyleBuilder for improved style management

* test: add tests for XLSX styles structure and fieldtype column styles in XLSXStyleBuilder

---------

Co-authored-by: Sagar Vora <16315650+sagarvora@users.noreply.github.com>
2026-04-21 19:07:43 +05:30
sokumon
2df8959596 chore: update pypdf 2026-04-17 12:33:59 +05:30
sokumon
538618e327 chore: update pyPDF 2026-04-16 12:59:11 +05:30
sokumon
0dc5fb490f chore: update Pillow 2026-04-14 16:47:24 +05:30
dependabot[bot]
949016c749
chore(deps): bump pypdf from 6.9.2 to 6.10.0 (#38534)
Bumps [pypdf](https://github.com/py-pdf/pypdf) from 6.9.2 to 6.10.0.
- [Release notes](https://github.com/py-pdf/pypdf/releases)
- [Changelog](https://github.com/py-pdf/pypdf/blob/main/CHANGELOG.md)
- [Commits](https://github.com/py-pdf/pypdf/compare/6.9.2...6.10.0)

---
updated-dependencies:
- dependency-name: pypdf
  dependency-version: 6.10.0
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-04-14 11:24:55 +05:30
sokumon
d1f6f8d753 fix: update requests 2026-03-27 11:13:34 +05:30
dependabot[bot]
5347d4b49c
build(deps): bump pypdf from 6.9.1 to 6.9.2
Bumps [pypdf](https://github.com/py-pdf/pypdf) from 6.9.1 to 6.9.2.
- [Release notes](https://github.com/py-pdf/pypdf/releases)
- [Changelog](https://github.com/py-pdf/pypdf/blob/main/CHANGELOG.md)
- [Commits](https://github.com/py-pdf/pypdf/compare/6.9.1...6.9.2)

---
updated-dependencies:
- dependency-name: pypdf
  dependency-version: 6.9.2
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-25 20:51:55 +00:00
sokumon
63f72360b0 fix: update pyPDF 2026-03-19 18:34:22 +05:30
sokumon
29f5bb7629 fix: update pyOpenSSL 2026-03-19 17:03:29 +05:30
Sagar Vora
a9eea222fa
build: bump PyJWT to ~=2.12.1 (#38096) 2026-03-17 13:28:01 +00:00
Raffael Meyer
b1aa97494c
chore: update project URLs (#38018) 2026-03-15 13:27:30 +00:00
dependabot[bot]
78a9d823ea
chore(deps): bump pypdf from 6.7.5 to 6.8.0 (#37908)
Bumps [pypdf](https://github.com/py-pdf/pypdf) from 6.7.5 to 6.8.0.
- [Release notes](https://github.com/py-pdf/pypdf/releases)
- [Changelog](https://github.com/py-pdf/pypdf/blob/main/CHANGELOG.md)
- [Commits](https://github.com/py-pdf/pypdf/compare/6.7.5...6.8.0)

---
updated-dependencies:
- dependency-name: pypdf
  dependency-version: 6.8.0
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-03-11 09:42:41 +05:30
dependabot[bot]
87e96a3060
chore(deps): bump pypdf from 6.7.4 to 6.7.5
Bumps [pypdf](https://github.com/py-pdf/pypdf) from 6.7.4 to 6.7.5.
- [Release notes](https://github.com/py-pdf/pypdf/releases)
- [Changelog](https://github.com/py-pdf/pypdf/blob/main/CHANGELOG.md)
- [Commits](https://github.com/py-pdf/pypdf/compare/6.7.4...6.7.5)

---
updated-dependencies:
- dependency-name: pypdf
  dependency-version: 6.7.5
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-03 02:50:06 +00:00
dependabot[bot]
47d98884b3
chore(deps): bump pypdf from 6.7.3 to 6.7.4
Bumps [pypdf](https://github.com/py-pdf/pypdf) from 6.7.3 to 6.7.4.
- [Release notes](https://github.com/py-pdf/pypdf/releases)
- [Changelog](https://github.com/py-pdf/pypdf/blob/main/CHANGELOG.md)
- [Commits](https://github.com/py-pdf/pypdf/compare/6.7.3...6.7.4)

---
updated-dependencies:
- dependency-name: pypdf
  dependency-version: 6.7.4
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-02 01:34:42 +00:00
Suraj Shetty
734e83b89e chore: update pypdf 2026-02-27 08:25:33 +05:30
sokumon
c554641e58 chore: update pypdf 2026-02-26 01:58:41 +05:30
dependabot[bot]
5d67826f25
chore(deps): bump werkzeug from 3.1.5 to 3.1.6 (#37290)
Bumps [werkzeug](https://github.com/pallets/werkzeug) from 3.1.5 to 3.1.6.
- [Release notes](https://github.com/pallets/werkzeug/releases)
- [Changelog](https://github.com/pallets/werkzeug/blob/main/CHANGES.rst)
- [Commits](https://github.com/pallets/werkzeug/compare/3.1.5...3.1.6)

---
updated-dependencies:
- dependency-name: werkzeug
  dependency-version: 3.1.6
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-02-20 04:49:13 +00:00
dependabot[bot]
80580d78f2
chore(deps): bump pypdf from 6.6.2 to 6.7.1 (#37279)
Bumps [pypdf](https://github.com/py-pdf/pypdf) from 6.6.2 to 6.7.1.
- [Release notes](https://github.com/py-pdf/pypdf/releases)
- [Changelog](https://github.com/py-pdf/pypdf/blob/main/CHANGELOG.md)
- [Commits](https://github.com/py-pdf/pypdf/compare/6.6.2...6.7.1)

---
updated-dependencies:
- dependency-name: pypdf
  dependency-version: 6.7.1
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-02-20 10:04:51 +05:30
Ankush Menat
55aca7654d
build: Bump pillow (#37047) 2026-02-16 06:27:20 +00:00
Akhil Narang
95fbf02ed7
build(deps): move faker out of dev dependencies (#36747)
`frappe.mock()` uses it. Although that's used only in tests, its defined under frappe namespace, so should be accessible without development dependencies.

Signed-off-by: Akhil Narang <me@akhilnarang.dev>
2026-02-05 16:46:38 +05:30
Akhil Narang
76253eba00
build(deps): bump oauthlib and google stack (#36509)
Signed-off-by: Akhil Narang <me@akhilnarang.dev>
2026-01-30 10:13:49 +00:00
Akhil Narang
fb56fbcab8
Merge pull request #34740 from alexleach/bleach-to-nh3
refactor!: Replace bleach HTML sanitiser for nh3
2026-01-27 17:09:53 +05:30
dependabot[bot]
90403adfcd
build(deps): bump pypdf from 6.6.0 to 6.6.2
Bumps [pypdf](https://github.com/py-pdf/pypdf) from 6.6.0 to 6.6.2.
- [Release notes](https://github.com/py-pdf/pypdf/releases)
- [Changelog](https://github.com/py-pdf/pypdf/blob/main/CHANGELOG.md)
- [Commits](https://github.com/py-pdf/pypdf/compare/6.6.0...6.6.2)

---
updated-dependencies:
- dependency-name: pypdf
  dependency-version: 6.6.2
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-01-27 00:01:09 +00:00
Sagar Vora
bb9c565a08 build: remove option types-bleach dependency 2026-01-23 15:19:28 +05:30
Sagar Vora
ca10a3af7a build: improve nh3 dependency specification 2026-01-23 15:05:24 +05:30
Sagar Vora
125bd67ead revert: undo manual pinning for tinycss2 2026-01-23 14:39:08 +05:30
ALB.Leach
e4376fc067
Merge branch 'develop' into bleach-to-nh3 2026-01-23 15:29:44 +07:00
Sagar Vora
b66e899d35 build: pin tinycss2 dependency manually 2026-01-23 13:23:28 +05:30
sokumon
9f9a7cf66b chore: bump weasyprint 2026-01-23 13:22:23 +05:30
Ankush Menat
ee56afade5
refactor!: Remove UUID Utils library (#36216)
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.
2026-01-22 11:40:11 +00:00
Markus Lobedann
740b65ff32
fix: update pyngrok dependency version to 7.5.0
6.0.0 doesn't work with unpaid accounts anymore
2026-01-15 09:19:29 +01:00
dependabot[bot]
fd715c3338
build(deps): bump pypdf from 6.5.0 to 6.6.0
Bumps [pypdf](https://github.com/py-pdf/pypdf) from 6.5.0 to 6.6.0.
- [Release notes](https://github.com/py-pdf/pypdf/releases)
- [Changelog](https://github.com/py-pdf/pypdf/blob/main/CHANGELOG.md)
- [Commits](https://github.com/py-pdf/pypdf/compare/6.5.0...6.6.0)

---
updated-dependencies:
- dependency-name: pypdf
  dependency-version: 6.6.0
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-01-09 20:09:39 +00:00
dependabot[bot]
469c5fb2ec
build(deps): bump werkzeug from 3.1.4 to 3.1.5 (#35783)
Bumps [werkzeug](https://github.com/pallets/werkzeug) from 3.1.4 to 3.1.5.
- [Release notes](https://github.com/pallets/werkzeug/releases)
- [Changelog](https://github.com/pallets/werkzeug/blob/main/CHANGES.rst)
- [Commits](https://github.com/pallets/werkzeug/compare/3.1.4...3.1.5)

---
updated-dependencies:
- dependency-name: werkzeug
  dependency-version: 3.1.5
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-01-09 11:52:23 +05:30
Alex Leach
4ad934719b
chore: Replace bleach HTML sanitiser for nh3 2026-01-04 00:52:07 +00:00
Akhil Narang
8cb7e4b0b7
build(deps): bump freezegun
Signed-off-by: Akhil Narang <me@akhilnarang.dev>
2025-12-30 18:36:58 +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
e0cad22cdd
chore(ruff): ignore UP037
We do rely heavily on quoted types for deferred evaluation of type annotations.
We can slowly migrate to `from __future__ import annotations`, don't want to enforce it here right now.

Signed-off-by: Akhil Narang <me@akhilnarang.dev>
2025-12-22 21:06:48 +05:30
Akhil Narang
4c871f1c09
build(deps): bump
Signed-off-by: Akhil Narang <me@akhilnarang.dev>
2025-12-22 21:06:48 +05:30
Akhil Narang
345f17558a
build(deps): bump to python>=3.14, nodejs>=24
Signed-off-by: Akhil Narang <me@akhilnarang.dev>
2025-12-22 20:33:11 +05:30
Akhil Narang
44e47918b6
build(deps): bump filelock
Resolves CVE-2025-68146

Signed-off-by: Akhil Narang <me@akhilnarang.dev>
2025-12-17 12:39:01 +05:30
dependabot[bot]
ccb4afaa11
chore(deps): bump werkzeug from 3.1.3 to 3.1.4 (#35010)
Bumps [werkzeug](https://github.com/pallets/werkzeug) from 3.1.3 to 3.1.4.
- [Release notes](https://github.com/pallets/werkzeug/releases)
- [Changelog](https://github.com/pallets/werkzeug/blob/main/CHANGES.rst)
- [Commits](https://github.com/pallets/werkzeug/compare/3.1.3...3.1.4)

---
updated-dependencies:
- dependency-name: werkzeug
  dependency-version: 3.1.4
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-12-02 11:01:37 +05:30
sokumon
8c69f3e542 fix(ci): update pypdf 2025-11-26 12:40:27 +05:30
Akhil Narang
b83ae4d793
build(deps): bump cryptography and openssl
This allows us to use 3.14 freethreaded

Signed-off-by: Akhil Narang <me@akhilnarang.dev>
2025-11-14 17:42:47 +05:30
Akhil Narang
0c3be512db
build(deps): bump RestrictedPython version [change to non-alpha before merging]
Signed-off-by: Akhil Narang <me@akhilnarang.dev>
2025-11-14 17:42:47 +05:30
Akhil Narang
c00a06445f
build(deps): bump pydantic version
Signed-off-by: Akhil Narang <me@akhilnarang.dev>
2025-11-14 17:42:47 +05:30
Akhil Narang
9d45a931d1
build(deps): bump orjson
Signed-off-by: Akhil Narang <me@akhilnarang.dev>
2025-11-14 17:42:47 +05:30
Akhil Narang
4ff5297d9e
build(deps): bump pypika
Signed-off-by: Akhil Narang <me@akhilnarang.dev>
2025-11-14 17:42:47 +05:30
Akhil Narang
336e1ea3a5
build: update python version range
Signed-off-by: Akhil Narang <me@akhilnarang.dev>
2025-11-14 17:42:47 +05:30
Akhil Narang
e11785199a
build(deps): bump pypdf (#34485)
Resolves GHSA-vr63-x8vc-m265 and GHSA-jfx9-29x2-rv3j
2025-10-24 07:50:04 +00:00
Ejaaz Khan
f74671267d Merge branch 'develop' into chrome-pdf 2025-10-08 15:43:38 +05:30