frappe

Low code web framework for real world applications, in Python and Javascript

MIT License

Stars
6.4K
Committers
689

Bot releases are hidden (Show)

frappe - Version 13 - End Of Life

Published by ankush 10 months ago

Version 13 is now officially End Of Life. Please upgrade to the latest version to receive the latest features and fixes.

Version 13 was released on 1st April 2021 and had a support life of 2.75 years. Thanks to everyone who worked on making this one of our best releases 🎉

frappe - v13.58.18

Published by barredterra 11 months ago

What's Changed

Full Changelog: https://github.com/frappe/frappe/compare/v13.58.17...v13.58.18

frappe - Version 15.0.0

Published by ankush 12 months ago

  • feat: Desk refresh (Espresso design) by @maharshivpatel in #22191
  • feat: Form Builder by @shariquerik in #18381
  • feat: Workflow Builder by @shariquerik in #20880
  • feat: Custom Block for Workspace by @shariquerik in #21040
  • feat: rearranging standard fields in customize form by @dj12djdjs in #19822
  • feat!: API versioning and API v2 (beta) by @ankush in #22300
  • feat: Login With Email Link by @shariquerik in #19363
  • feat(UI): Sticky Tabs Header by @maharshivpatel in #18906
  • feat: Onboarding tour (UI Tours) by @maharshivpatel in #21044
  • feat(whitelisted): Runtime typing hints validation by @gavindsouza in #19029
  • feat: Background submissions for submittable doctypes by @Aradhya-Tripathi in #18251
  • feat!: DB hooks to run things before/after commit/rollback by @ankush in #21215
  • feat(DX): auto generate python type annotations by @ankush in #21776
  • feat(desk): Allow setting filter description in Link dropdown by @gavindsouza in #21382
  • feat(grid): Add shift-click to select multiple rows quickly by @cogk in #22184
  • feat(list): Sort by column by clicking on col title by @cogk in #22187
  • feat(minor): Show fieldname on hover when cmd/ctrl is pressed by @shariquerik in #19391
  • feat(workers): many small RQ worker features by @ankush in #18995
  • feat: Add custom icons with the app_include_icons hook by @cogk in #22254
  • feat: Allow app_include_js and app_include_css via site config by @netchampfaris in #18841
  • feat: Allow setting cron as Server Script frequency by @gavindsouza in #21142
  • feat: Audit hooks report by @ankush in #19780
  • feat: Disable Sharing globally by @marination in #20318
  • feat: Document Reminders by @ankush in #20129
  • feat: Improved RQ monitoring and control with virtual doctypes by @ankush in #18086
  • feat: RQ WorkerPool support by @ankush in #21482
  • feat: Request, Job Hooks {Before/After} by @gavindsouza in #19971
  • feat: Scroll to field via URL by @surajshetty3416 in #21174
  • feat: Sidebar Attachments accessibility by @marination in #21819
  • feat: Track count of views on newsletter emails by @surajshetty3416 in #20179
  • feat: Undo/Redo (Form Builder) by @shariquerik in #20094
  • feat: Zero* downtime migrations by @ankush in #18050
  • feat: Desk User role by @ankush in #22224
  • feat: audit trail by @GursheenK in #22104
  • feat: before/after hooks for any app install/uninstall by @ruchamahabal in #21461
  • feat: better Email search by @barredterra in #20323
  • feat: bulk insert simple Docs and iterator support for db.bulk_insert by @ankush in #17150
  • feat: child_field syntax sugar for qb by @netchampfaris in #20908
  • feat: close assignment from sidebar by @barredterra in #21913
  • feat: communication: override on_update by @ssiyad in #22267
  • feat: configurable CSV delimiter and quoting by @barredterra in #18664
  • feat: configurable amended document naming by @rtdany10 in #21414
  • feat: configurable default views by @shariquerik in #18409
  • feat: configurable rounding methods by @ankush in #20258
  • feat: consistent, translatable timeline messages by @barredterra in #17526
  • feat: db storage usage report by @ankush in #18464
  • feat: get anonymous response from webform by @shariquerik in #20798
  • feat: implement like in compare util by @GursheenK in #22017
  • feat: inline doc link for each field by @shariquerik in #18919
  • feat: inter-process file locks by @ankush in #19133
  • feat: let users modify hook resolution order by @ankush in #19653
  • feat: load more communications button in timeline by @shariquerik in #21359
  • feat: log all DDL queries by @ankush in #21107
  • feat: max_file_size configurable from system settings by @ankush in #22384
  • feat: meaningful report pdf name by @rtdany10 in #18422
  • feat: migrate translations command by @anandbaburajan in #21362
  • feat: rate limiting on server scripts by @ankush in #20980
  • feat: read-only geolocation (GDE-86) by @barredterra in #16561
  • feat: redis cache decorator by @nextchamp-saqib in #20452
  • feat: rename custom field's fieldname by @ankush in #22513
  • feat: search frappecloud marketplace apps from awesomebar by @rutwikhdev in #22185
  • feat: search in translated title, if we show title by @barredterra in #17828
  • feat: support reordering standard fields in Form Builder by @sagarvora in #21297
  • feat: use Connected App for OAuth based Email Account by @revant in #18750
  • feat: virtual doctype for frappe recorder by @GursheenK in #21908
  • feat: webhook timeout by @dj12djdjs in #21410
  • feat: wkhtmltopdf logging by @casesolved-co-uk in #19935
  • perf: ~20% Faster web routing 🚀 by @ankush in #21233
  • perf: ~45% faster Desk first response by @ankush in #17891
  • perf: Freeze GC before forking Gunicorn workers by @ankush in #21474
  • perf: ~65% faster create_custom_fields by @sagarvora in #17826
  • perf(desk): Batched List Updates by @gavindsouza in #19853
  • perf: reduce memory usage of background processes by @ankush in #21467
  • perf: lower web worker memory usage by @ankush in #21473
  • perf: Perform db.set_value with single query only by @ankush in #18305
  • perf: pre-load common modules to reduce memory usage by @ankush in #21475 and #21557
  • perf!: Reduce db call and reads in typical requests by @ankush in #21762
  • perf!: frappe.db.exists without order_by by @ankush in #20093
  • perf!: Only add modified index on parent doctypes by @ankush in #18119
  • perf(doc): skip order_by when name is set in load_from_db by @gavindsouza in #18837
  • perf(workflow): get_transitions by @gavindsouza in #18834
  • perf(desk): reduce unnecessary requests on first load by @ankush in #21695
  • perf: Dont update list view data if list view not active by @ankush in #20396
  • perf: Faster address query with explicit joins by @ankush in #20537
  • perf: Faster docshare permission checks by @ankush in #21519
  • perf: Faster scheduled job deduplication by @ankush in #20937
  • perf: frappe.require by @gavindsouza in #22113
  • perf: accurate cache eviction for assets by @ankush in #21693
  • perf: avoid coalescing wherever possible by @ankush in #17920
  • perf: cache FormMeta directly by @sagarvora in #18165
  • perf: cache Meta directly and other improvements by @sagarvora in #18164
  • perf: cache document naming rule to avoid recurring db calls by @DaizyModi in #18491
  • perf: docinfo by @ankush in #22444
  • perf: dont fetch meta unless required by @sagarvora in #18907
  • perf: dont re-initate session in realtime.py by @ankush in #20442
  • perf: dont reload doc when already saving by @sagarvora in #21869
  • perf: drop ifnull from IS SET filter by @ankush in #21822
  • perf: drop unused indexes by @ankush in #18118
  • perf: ensure cache works for non_standard_user_types when empty by @sagarvora in #18665
  • perf: faster docshare queries by @ankush in #21392
  • perf: faster generate_hash by @ankush in #18825
  • perf: get all Scheduled Job Types in one query by @sagarvora in #21770
  • perf: get all file data at once when downloading private file by @sagarvora in #20856
  • perf: index for_user in Notification log by @ankush in #21379
  • perf: install hiredis for faster response parsing by @ankush in #17893
  • perf: lazy load SVG icons by @ankush in #22517
  • perf: lazy load dashboard links by @ankush in #21752
  • perf: lazy load sidebar tag stats by @ankush in #21683
  • perf: load _doc_before_save sooner to avoid DB call in check_if_latest by @sagarvora in #18666
  • perf: reduce DB calls in frappe.client.get (and other changes) by @sagarvora in #17665
  • perf: reduce DB calls made in get_fetch_values by @sagarvora in #17671
  • perf: remove order_by from linked document checks by @ankush in #19229
  • perf: remove duplicate database initialisation by @ankush in #18049
  • perf: remove localproxy for frappe.cache by @sagarvora in #21281
  • perf: remove redundant render template call by @NagariaHussain in #19123
  • perf: reuse _doc_before_save in doc.get_latest by @sagarvora in #19326
  • perf: set lower priority for background processes by @ankush in #21841
  • perf: short-circuit guest connection and basic perf tests by @ankush in #17988
  • perf: skip reset_seen for new doc by @ankush in #21832
  • perf: undo regression in as_dict performance by @sagarvora in #22110
  • perf: unsubscribe from list_update events by @ankush in #20423
  • perf: use modified instead of creation in scheduler by @ankush in #18234
  • perf: use cached docs for website and system settings by @ankush in #17832
  • perf: use cached workflow doc for transitions by @ankush in #21300
  • perf: workflow transitions and bulk workflow by @ankush in #21737
  • refactor!: Socket.IO by @gavindsouza in #18875
  • refactor!: Disable server scripts by default by @ankush in #22141
  • refactor!: Drop support for currentsite.txt by @ankush in #21536
  • refactor!: prepared report by @phot0n in #18940
  • refactor(DX)!: frappe.cache() -> frappe.cache by @ankush in #21279
  • refactor!: Link field search by @ankush in #22745
  • refactor!: Merge redis_socketio and redis_queue by @ankush in #21317
  • refactor!: Prefix all custom fieldnames created from Desk by @ankush in #21355
  • refactor!: Remove "Set user permission" permtype by @ankush in #20090
  • refactor!: Remove activity feed by @ankush in #19241
  • refactor!: Remove custom script import by @ankush in #21354
  • refactor!: Remove error snapshot doctype by @ankush in #21509
  • refactor!: Use job_id for bg job deduplication by @ankush in #20951
  • refactor!: frappe.realtime by @ankush in #21527
  • refactor!: deprecate sorting based on apps.txt in get_installed_apps by @sagarvora in #17869
  • refactor!: drop depcreated functionality by @ankush in #18815
  • refactor!: remove compare util from frappe package by @barredterra in #19234
  • refactor!: remove deprecated timezone utils by @barredterra in #20255
  • refactor!: remove event streaming by @phot0n in #17910
  • refactor(cli): Scheduler by @gavindsouza in #19972
  • refactor(minor): cleanup email retreiveing by @phot0n in #20754
  • refactor(money in words): translatable currency Name by @Sendipad in #21672
  • refactor(treewide): use mariadb commands directly instead of mysql by @akhilnarang in #22620
  • refactor: Better webhook loging by @deepeshgarg007 in #20091
  • refactor: Consider singles for dynamic set_value usage by @ankush in #21367
  • refactor: Correct Content-Disposition headers by @ankush in #22383
  • refactor: Deprecate broken-img mixin by @surajshetty3416 in #21510
  • refactor: Improve list_apps function readability and maintainability. by @0xsirsaif in #22436
  • refactor: Load all communications (Email + Automated Messages) by @shariquerik in #21582
  • refactor: Multi Step Web Form by @shariquerik in #17783
  • refactor: Namespace all RQ jobs by @ankush in #21526
  • refactor: OAuth by @gavindsouza in #19421
  • refactor: Use safer hashing algorithm for verified_command by @ankush in #18848
  • refactor: Use single query to delete child rows on doc.save by @gavindsouza in #22003
  • refactor: Workspace cleanup by @nabinhait in #21100
  • refactor: deprecate db.set_value on singles completely by @ankush in #19481
  • refactor: deprecate unused DB methods + misc by @ankush in #18814
  • refactor: deprecate usage of set_value with None as docname by @ankush in #19472
  • refactor: docshare get_users by @barredterra in #21924
  • refactor: document caching and invalidation by @ankush in #21216
  • refactor: filter on name while fetching custom column in report by @ruthra-kumar in #22133
  • refactor: improve frappe.only_for by @sagarvora in #17682
  • refactor: improved child table permission check by @sagarvora in #17681
  • refactor: qb.engine by @netchampfaris in #19405
  • refactor: rename timezone utils by @barredterra in #20253
  • refactor: safe_eval to use same restictedpython library by @ankush in #22135
  • refactor: scheduler without external libraries by @ankush in #18331
  • refactor: simplified get_controller by @sagarvora in #19684
  • refactor: simplify api.py by @ankush in #18372
  • refactor: translatable doctypes by @hrwX in #17741

New Contributors

  • @P-Godfroid made their first contribution in #17696
  • @dpk404 made their first contribution in #17777
  • @kittiu made their first contribution in #18051
  • @athul made their first contribution in #18128
  • @niyazrazak made their first contribution in #18104
  • @aliX40 made their first contribution in #18212
  • @abhinavxd made their first contribution in #18250
  • @git-avc made their first contribution in #18329
  • @DrZoidberg09 made their first contribution in #18671
  • @Ponnusamy1-V made their first contribution in #18712
  • @HUMENTH made their first contribution in #18810
  • @AMSFauzi7869 made their first contribution in #18822
  • @ssiyad made their first contribution in #19019
  • @abdo-host made their first contribution in #18887
  • @nk521 made their first contribution in #19058
  • @Matthewenderle made their first contribution in #19070
  • @iamejaaz made their first contribution in #19161
  • @yjane99 made their first contribution in #19235
  • @Ahuahuachi made their first contribution in #19255
  • @aynugek made their first contribution in #19247
  • @zaqoutabed made their first contribution in #19236
  • @bosdaring made their first contribution in #19331
  • @AHasanin made their first contribution in #19332
  • @BreadGenie made their first contribution in #19376
  • @SvbZ3r0 made their first contribution in #19504
  • @jiangying000 made their first contribution in #19517
  • @aissa-berrachiche made their first contribution in #19594
  • @riandrys made their first contribution in #19732
  • @Shankarv19bcr made their first contribution in #19715
  • @morehardik made their first contribution in #19823
  • @developsessions made their first contribution in #19871
  • @unibravo made their first contribution in #19947
  • @zhxnlai made their first contribution in #20055
  • @MouSoeng made their first contribution in #20251
  • @pstuhlmueller made their first contribution in #20115
  • @vvrithof made their first contribution in #20528
  • @Jainysh made their first contribution in #20541
  • @harshtandiya made their first contribution in #20727
  • @eltociear made their first contribution in #20894
  • @williamluke4 made their first contribution in #20694
  • @cwerner1 made their first contribution in #21071
  • @GursheenK made their first contribution in #21070
  • @rafalkrupinski made their first contribution in #21060
  • @cogk made their first contribution in #21162
  • @dhiashalabi made their first contribution in #21197
  • @JeansReal made their first contribution in #21204
  • @gn306029 made their first contribution in #21239
  • @101v made their first contribution in #21275
  • @blaggacao made their first contribution in #21309
  • @sayedayman203 made their first contribution in #21465
  • @batonac made their first contribution in #21550
  • @nautatva made their first contribution in #21661
  • @Sendipad made their first contribution in #21672
  • @dvdl16 made their first contribution in #21378
  • @niraj2477 made their first contribution in #21857
  • @viralkansodiya made their first contribution in #21985
  • @Nihantra-Patel made their first contribution in #22008
  • @bvisible made their first contribution in #22055
  • @AlexandreLumertz made their first contribution in #22182
  • @Xieyt made their first contribution in #22266
  • @Firefishy made their first contribution in #22296
  • @bosue made their first contribution in #22336
  • @psyirius made their first contribution in #22353
  • @google-boy made their first contribution in #22355
  • @0xsirsaif made their first contribution in #22394
  • @mterceno made their first contribution in #22282
  • @ssuda made their first contribution in #22422
  • @akhilnarang made their first contribution in #22636
  • @ranjit-git made their first contribution in #22778

Full Diff: https://github.com/frappe/frappe/compare/v14.0.0...v15.0.0
Migration Guide: https://github.com/frappe/frappe/wiki/Migrating-to-version-15

Full Changelog

frappe - v13.58.10

Published by ankush about 1 year ago

What's Changed

Full Changelog: https://github.com/frappe/frappe/compare/v13.58.9...v13.58.10

frappe - v14.47.1

Published by ankush about 1 year ago

What's Changed

This release contains a security fix for CVE-2023-41039

Full Changelog: https://github.com/frappe/frappe/compare/v14.47.0...v14.47.1

frappe - v12.28.1

Published by ankush about 2 years ago

What's Changed

Full Changelog: https://github.com/frappe/frappe/compare/v12.28.0...v12.28.1

frappe - Version 14.0.0

Published by surajshetty3416 about 2 years ago

What's Changed

  • feat(workspace): start searching on alphabetic keypress #17071
  • feat(website): added new templates to page builder and refactored typography to be more consistent #16356
  • feat(website-settings): Configurable Splash Image #17006
  • feat(UX)!: always sharable URLs on List/Report/Kanbanview #17072
  • feat(UX): generate preview of Webhook request data #17463
  • feat(utils): Caching Utils #17012
  • feat(UI): consistently themed scrollbars #12882
  • feat(UI): Add beforeunload Listener for 'Leave Site' Dialog to dirty forms #17059
  • feat(translations-cli): Fetch translations for a particular app #17276
  • feat(timeline): Shareable link for comment/communication #14394
  • feat(safe_exec): Allow more APIs #16704
  • feat(minor)!: Add document reference to Error Log and doc.log_error #16653
  • feat(minor): Show Processlist in System Console #14155
  • feat(minor): Packages! also cleanup of DocField and other minor fixes #14123
  • feat(minor): empty state for list view #14179
  • feat(minor): added option to configure powered by in footer and max-height for text editors #16171
  • feat(minor): add custom formatters for text type controls #17108
  • feat(log): implement stream_only to avoid usage of RotatingFileHandler #16274
  • feat(db): Alias is_missing_table for consistency in APIs #16254
  • feat(blog): Browse by category #15363
  • feat!: Async Document Renaming #16130
  • feat!: Added support for IS in frappe qb #16877
  • feat: Zip files #15253
  • feat: Workspace 2.0 new design 🎉 #15335
  • feat: Workspace 2.0 #13152
  • feat: Virtual DocFields #14593
  • feat: utility methods for docstatus #15515
  • feat: Use autocomplete attributes for login, signup and password reset #16837
  • feat: translate column names in export of report #15679
  • feat: translate column names in export of query report #16195
  • feat: Traceback with context #16698
  • feat: tls option for ngrok #16216
  • feat: table_field.fieldname field syntax for db_query #17003
  • feat: Tab Break fieldtype #13036
  • feat: support strikethrough in text-editor/comments #17478
  • feat: Support for MariaDB 10.6 #13954
  • feat: Support for Column comparison in DatabaseQuery #13845
  • feat: Site Maintenance commands #13955
  • feat: single thread discussions #14380
  • feat: signature field in webform #15771
  • feat: Show Title Field in Link Fields #15321
  • feat: show link titles in web form link fields #16238
  • feat: set-password site command #13826
  • feat: set image as footer in letter head #17119
  • feat: savepoint contextmanager #15516
  • feat: run tests on Module Def #17103
  • feat: Run SQL directly in System Console #14216
  • feat: Redis Authentication and namespaces for Redis queue instance #13746
  • feat: Quick List Block for Workspace #16887
  • feat: Query Builder autocomplete hack #14109
  • feat: provision to handle payment authorization event in server script for custom documents #16712
  • feat: print branch and commit on bench version #13567
  • feat: post model-sync patches #15351
  • feat: Phone Control Type #15538
  • feat: Optionally sync multiple IMAP folders in Email Account #12608
  • feat: Option to disable Event Reminders in Notification Settings #15066
  • feat: Option to automatically switch desk theme based on system #14998
  • feat: New Print Format Builder #14134
  • feat: New Build System based on esbuild #12883
  • feat: Multistep webforms #14978
  • feat: multi table support in db.query #16542
  • feat: max_lines option in ace editor #13966
  • feat: manage Python 3 compatiblity with dependencies #12784
  • feat: Make url's clickable in text editor when typed/copied #13468
  • feat!: make rating field's stars customizable with options field #15203
  • feat: integer primary keys #15964
  • feat: Improvements in Webhooks (backport #13320) #13791
  • feat: Image cropping and optimization #13835
  • feat: Hide page head while scrolling down #16364
  • feat: Half star rating (4.5 out of 5) #15368
  • feat: Grid Search #16070
  • feat: Form Tour for Grids #13528
  • feat: Execute queries directly in frappe.qb #13841
  • feat: Drop site support for postgres #16305
  • feat: Document States #15237
  • feat: Document Naming Settings #17027
  • feat: Display button "Create User Email" only if current user can create an Email Account #16979
  • feat: discussions component redesign #16186
  • feat: diffview for client/server scripts #14555
  • feat: delete User Permission when User is deleted #16981
  • feat: Custom signup form hook #15355
  • feat: custom columns for MultiSelectDialog #15738
  • feat: Convert datetime field values to system timezone #13504
  • feat: Convenience methods for NestedSet {get_parent, get_children} #13579
  • feat: configurable location of currency symbol #17405
  • feat: configurable auto email reports limit #16684
  • feat: Choose Letter Head when printing multiple documents from List / Report (backport #14099) #14108
  • feat: Bulk export from list view #13906
  • feat: build constant value cols #15212
  • feat: autoreload for IPython #13868
  • feat: automatically reload web pages whenever JS/CSS assets are rebuilt #14238
  • feat: Autocomplete control #15794
  • feat: Auto-expire web view link key #17021
  • feat: Auto generate RTL styles using rtlcss #13573
  • feat: app name parsing #16042
  • feat: allow multiple client scripts #16591
  • feat: allow hyphens in DocType name (again) #16188
  • feat: allow enqueue at front of Redis Queue #16496
  • feat: allow button of different sizes in df #12847
  • feat: additional filter support #14102
  • feat: Adding support to Query engine #17350
  • feat: added support for data type json #16187
  • feat: Added real time chart javascript API #13198
  • feat: Added image field to the section_with_cards template #13097
  • feat: Added fuzzy search to awesome bar #16478
  • feat: Added force flag to install-app command #16747
  • feat: Add reset password link expiry #16262
  • feat: add number format for BTC #15220
  • feat: add no-git option in make-app command and boilerplate generation #15028
  • feat: add login fields to social login page #14455
  • feat: Add grid breakpoint css_variables #13333
  • feat: Add german translations #16962
  • feat: Add font sizes dropdown in text editor(quill) #16910
  • feat: add email retry limit in system settings #17259
  • feat: Add default date and time format for Germany #16772
  • feat: add context to strings in confirm and prompt dialogs #13341
  • feat: Add confirm password field #14281
  • feat: add button in dashboard list redirecting to dashboard view. #15695
  • feat: Add autocompletion items in Server Script #12888
  • feat: Add a flag to identify system generated customization #16278
  • feat: add get_checked_items for query report #14988
  • feat: country specific number shortening in charts #17520
  • feat: Undo/Redo changes on FormView #17491
  • perf(UX): Load splash screen immediately after login #17253
  • perf(translation): improve if condition to return all values except None #16953
  • perf(minor): remove unnecessary comprehensions #13173
  • perf(DX): add watchdog as developer dependency #17530
  • perf(BaseDocument): remove duplicate code #16733
  • perf(BaseDocument): ~50% faster as_dict #16549
  • perf!: simpler frappe.get_system_setting #16685
  • perf!: Pages & APIs #17063
  • perf!: improve document caching #17061
  • perf: store compact JSON in version diffs #17042
  • perf: role instead of users in workflow actions #15789
  • perf: remove naming series from log-like doctypes #16823
  • perf: remove duplicate control assets #17237
  • perf: reduce query when calling get_doc with filters #16474
  • perf: reduce one query in get_controller #15976
  • perf: Re-use SMTP session while sending bulk emails #17461
  • perf: Pre-compile and re-use regexp pattern #17111
  • perf: improve Custom Field insertion time #16424
  • perf: faster auth ~50% avg speed up on each request #16950
  • perf: exists is already checked in delete_doc #16362
  • perf: drop country_info from boot #17431
  • perf: dont query for impossible children #16577
  • perf: dont cache assets_json in Redis for developer_mode #16467
  • perf: disable creating version for new docs #17153
  • perf: cache single documents #16259
  • perf: cache parsed assets_json instead of string #16465
  • perf: BaseDocument improvements #15398
  • perf: add slots to most used classes #17421
  • perf: ~90% faster get_cached_value from Redis cache #16448
  • perf: ~90% faster frappe.get_cached_doc #17107
  • perf: ~3x faster server side _(translate) calls #16949
  • refactor(UI): Single card design for form #15438
  • refactor(UI): cleanup portal pages #15436
  • refactor(query_report): simplify excel export logic #16196
  • refactor(qb): Term subqry renamed to SubQuery #17007
  • refactor(minor)!: remove is_first_startup from System Settings #16817
  • refactor(minor): Use frappe.db.delete instead of frappe.db.sql queries #13985
  • refactor(minor): Rename Document #16041
  • refactor(minor): move out common functionality from insert and insert_many client functions to a separate function #16840
  • refactor(minor): get_unsubscribe_message #17331
  • refactor(minor): get_permissions API #17320
  • refactor(DX): add type hints for some utilities #16871
  • refactor(BaseDocument)!: improved get, set and extend methods #16540
  • refactor(BaseDocument)!: don't return dict if key is falsy #16383
  • refactor!: Replace incompatible libraries #17419
  • refactor!: Remove wrapt package #16715
  • refactor!: remove video plyr from default bundle #17249
  • refactor!: remove post and post comment doctypes #15786
  • refactor!: remove old weekly cleanup for route history #17493
  • refactor!: remove dev requirements from requirements.txt #14517
  • refactor!: Remove Data Migration Tool #17134
  • refactor!: make automatically following documents optional #16030
  • refactor!: improved frappe._dict #16449
  • refactor!: improve/extend log settings #17159
  • refactor!: GoogleOAuth #16935
  • refactor!: Don't cast values of frappe.db.get_singles_dict by default #17187
  • refactor!: frappe.db.exists #16200
  • refactor: Website routing and rendering #12334
  • refactor: use is None instead of == None #15632
  • refactor: use is bool instead of == bool #15639
  • refactor: Test Commands #15597
  • refactor: Site Migration #15877
  • refactor: simplify fetching of readable records #17417
  • refactor: Show sync option only if mail protocol is imap #14272
  • refactor: Show Document Links #16205
  • refactor: set amended docname to original docname #13861
  • refactor: sendmail of communication doctype #13442
  • refactor: Send mail functionality #13122
  • refactor: safer binding of outer scope in closures #17389
  • refactor: replacing raw SQL queries with frappe ORM #14441
  • refactor: Replaced blog's feedback with comment's comment_type='Like' #17479
  • refactor: Replace usage of deprecated attribute #17254
  • refactor: replace Link field with Select field #15757
  • refactor: Removed unused imports & added flake8 check in CI #16899
  • refactor: removed aggregation functions at db level #14457
  • refactor: remove useless pass, log error #16341
  • refactor: remove unused fallback value #16338
  • refactor: remove parent, parenttype and parentfield columns from non-child table doctypes #15411
  • refactor: Remove events to redraw charts #12973
  • refactor: remove duplicate code from db.get_descendants #16699
  • refactor: Remove dead code #16886
  • refactor: New Feedback & Comment Design for Blog Post #14614
  • refactor: moving raw queries to frappe ORM #14987
  • refactor: Moving from raw queries to frappe orm #13753
  • refactor: module profile #15188
  • refactor: Misc changes in commands #15060
  • refactor: make frappe.db.bulk_insert work as expected #16527
  • refactor: Jinja hooks #12880
  • refactor: Integration Request #16602
  • refactor: Incoming mail refactoring #13307
  • refactor: Image cropping and optimization #14011
  • refactor: getting submitted linked reference documents #14073
  • refactor: frappe.db.query #16932
  • refactor: Fractional ratings patch #15426
  • refactor: Form.update_in_all_rows #16339
  • refactor: Form Tour (backport #13318) #13506
  • refactor: fix py3 datatypes and remove references to six in oauth #13015
  • refactor: File #16289
  • refactor: Email Module - 1 #13057
  • refactor: don't assign variable to itself #16337
  • refactor: Display errors in FilePreview #15003
  • refactor: Deferred insert #16511
  • refactor: db.sql calls to frappe.qb #16107
  • refactor: Converting raw SQL queries using frappe ORM and frappe.qb #14547
  • refactor: converting raw SQL queries #14913
  • refactor: convert doctype db.sql calls #15071
  • refactor: convert db.sql calls in core module #14100
  • refactor: Clean up whitespace & add CI check #16139
  • refactor: clean up code to py310 supported features #17367
  • refactor: build Email queue from send mail request #13393
  • refactor: breadcrumbs for portal pages #15221
  • refactor: API Testing Suite #15927
  • refactor: Add coverage context manager #13889
  • refactor: a better way to cleanup older assets when newer ones are built #14530
  • refactor: setup_database for mariadb #14289
  • refactor: not a in b -> a not in b #16065

New Contributors

Full Changelog: https://github.com/frappe/frappe/compare/v13.36.3...v14.0.0

frappe - v14.0.0-beta.6

Published by deepeshgarg007 about 2 years ago

What's Changed

New Contributors

Full Changelog: https://github.com/frappe/frappe/compare/v14.0.0-beta.5...v14.0.0-beta.6

frappe - v14.0.0-beta.5

Published by deepeshgarg007 over 2 years ago

What's Changed

New Contributors

Full Changelog: https://github.com/frappe/frappe/compare/v14.0.0-beta.4...v14.0.0-beta.5

frappe - v12.28.0

Published by deepeshgarg007 over 2 years ago

What's Changed

New Contributors

Full Changelog: https://github.com/frappe/frappe/compare/v12.27.0...v12.28.0

frappe - v14.0.0-beta.4

Published by deepeshgarg007 over 2 years ago

What's Changed

New Contributors

Full Changelog: https://github.com/frappe/frappe/compare/v14.0.0-beta.3...v14.0.0-beta.4

frappe - Frappe Version 13.26.0

Published by deepeshgarg007 over 2 years ago

Version 13.26.0 Release Notes

Features & Enhancements

  • feat(minor): use specific email signature via from field (#16507)
  • feat: add "After Insert" doctype event to server script (#16543)
  • feat: Ignore permlevel for specific fields (#16590)

Fixes

  • fix: use the right filter value when flushing route history (#16586)
  • fix(desk): Use Int control for Long Int (#16572)
  • fix: stabilize leaflet map (#16513)
  • fix: new route syntax for Logs in System Console (#16554)
  • fix: update french translation (#16550)
  • fix: Show assignments based on allocated todo only (#16535)
frappe - Frappe Version 14.0.0-beta.3 Release Notes

Published by deepeshgarg007 over 2 years ago

What's Changed

New Contributors

Full Changelog: https://github.com/frappe/frappe/compare/v14.0.0-beta.2...v14.0.0-beta.3

frappe - Frappe Version 13.25.0

Published by deepeshgarg007 over 2 years ago

Version 13.25.0 Release Notes

Features & Enhancements

  • feat: store reference to leaflet's drawControl (#16407)
  • feat(minor): Add Custom Group Search for custom LDAP servers (#16059)
  • feat: allow breaking _() function call to different lines (#16409)

Fixes & Enhancements

  • fix: Allow empty webhook data (#16433)
  • fix: set translatable on show alert (#16427)
  • fix: update french translation (#16444)
  • fix: update translation (#16417)
  • fix: don't update autoname field when using Document.save (#16436)
  • fix: Fetch only active letter heads for printing (#16504)
  • fix: Follow FIFO while inserting global search record (#16488)
  • fix: incorrect logic for parenttype parameter in get_all_children (#16462)
  • fix: bad closure on double quote in print.js (#16420)
frappe - Frappe Version 13.24.0

Published by deepeshgarg007 over 2 years ago

Version 13.24.0 Release Notes

Features & Enhancements

  • feat: add translated search doctypes to hooks (#16197)

Fixes & Enhancements

  • fix(listview): Global filter check (#16389)
  • fix: Other user must not able to delete other user's comment except System Manager (#16018)
  • fix: Use calendar name as it is (#16372)
  • fix: Setting permissions to any role of some doctypes is not working (#16239)
  • fix(translation): Set translated text as html to get unescaped output (#16214)
  • fix: update translation (#16406)
  • perf: limit rows to 1 for get_value and exists (v13 port) (#16413)
  • fix: Attach not working on submitted doc (#16358)
  • fix: Show traceback if custom app installation fails with exception (#13858)
  • fix: show traceback as string instead of bytes (#16234)
  • fix: Attach not working on submitted doc (copy #16358) (#16412)
frappe - Frappe Version 12.27.0

Published by deepeshgarg007 over 2 years ago

What's Changed

Full Changelog: https://github.com/frappe/frappe/compare/v12.26.1...v12.27.0

frappe - Frappe Version 13.23.0

Published by ankush over 2 years ago

Version 13.23.0 Release Notes

Features & Enhancements

  • feat: MySQL TIMESTAMP functionality for QB (#16295)

Fixes

  • fix: Consider title field only if it's value exists (#16236)
  • fix: set_column_disp contradicts arguments (backport #16255) (#16255)
  • fix(BackupGenerator): set missing attribute for class object (#16273)
  • fix(rename_doc): Allow updating only document title or name (backport #16225) (#16225)
  • fix(ux): remove attachment limits (#16222)
  • fix: Dashboard report link (backport #14052) (#14052)
  • fix: Double signature in composed Email (backport #16178) (#16178)
  • fix: Number Card to support child table doctype for filters (backport #16243) (#16243)
  • fix: Print for tree view is broken (backport #16137) (#16137)
  • fix: Routing with hash in URL [v13] (#16298)
  • fix: Typo in is_downgrade's user warning (backport #16313) (#16313)
  • fix: typo in database file for v12 - latest (#16250)
  • chore: add German translations (backport #16292) (#16292)
frappe - Release 13.22.2

Published by surajshetty3416 over 2 years ago

What's Changed

Full Changelog: https://github.com/frappe/frappe/compare/v13.22.1...v13.22.2

frappe - Frappe Version 13.22.1

Published by gavindsouza over 2 years ago

What's Changed

Full Changelog: https://github.com/frappe/frappe/compare/v13.22.0...v13.22.1

frappe - Frappe Version 13.22.0

Published by rohitwaghchaure over 2 years ago

Version 13.22.0 Release Notes

Features & Enhancements

  • feat(minor): No Copy attribute for custom fields (backport #15915) (#15915)

Fixes

  • fix: Update df of all grid rows (backport #15380) (#15380 )
  • fix(Permission Manager): Update client-side permission data (#15945)
  • fix: Update df of all grid rows (#15380)
  • fix: hide fileuploader (#16180)
  • fix: Add freeze message when renaming document (#15912)
  • fix: Use sort_by field instead of non-existent sort_field (backport #16121) (#16121)
  • fix: update child table row's linked field on creating new connection (backport #15787) (#15787)
  • fix: Ignore doctype in setter (backport #15962) (#15962)
  • fix: Totalling for tree view reports (#15950)
  • build: Bump python_requires to match documentation (#16094)
  • fix: load more button loads only 20 records at a time bp v13 (#15989)
  • fix(email_account): Decode uid from bytes before update (#16061)
  • fix: share clickable URLs from List View (backport #16039) (#16039)
  • fix: load more button loads only 20 records at a time (#15931)
  • fix: Merge groups for doctype links (#15990)
  • fix: Always set doctype from options for child Document (backport #15957) (#15957)
  • fix: Update Translations (backport #15878) (#15878)
  • fix(translation): Add all possible views as comment (backport #16097) (#16097)
  • fix(UI): Fix incorrect dark theme text color in user-wise grid column configuration (#16106)
  • fix: always execute method if found in __dict__ (#15958)
  • fix(translation): Remove duplicate entry (backport #16091) (#16091)
  • fix: AttributeError when initializing FormMeta (backport #16069) (#16069)
  • fix: libsass issue with min() (#15982)
  • fix: Color picker selected color style (backport #16086) (#16086)
  • fix: broken validation for custom LDAP servers (backport #16016) (#16016)
  • fix: webform mobile view padding (backport #16115) (#16115)
  • fix: Rounding for negative numbers in javascript (#1082)
  • fix(cli): Database agnostic options for root db credentials (backport #15973) (#15973)
  • fix: Check if table_field exists in meta of link.parent_doctype (backport #16050) (#16050)
  • fix: limit without filter (backport #15975) (#15975)
  • fix(form-dashboard): Enable set_open_count (backport #13664) (#13664)
  • fix: mandatory fields validation on new form (backport #16173) (#16173)
  • fix: Wrap timeout getting for custom queues in function (#15933)