Skip to content

Latest commit

 

History

History
936 lines (637 loc) · 55.6 KB

CHANGELOG.md

File metadata and controls

936 lines (637 loc) · 55.6 KB

Change Log

Unreleased

5.3.1 (2024-11-08)

:release-by: Albert Wang (@albertyw) Full Changelog

Fixes:

  • Fix missing jQuery UI images (#754) @Tatsh
  • Fix swallowing exceptions when processing response in silk middleware (#753) @albertyw

5.3.0 (2024-10-25)

:release-by: Albert Wang (@albertyw) Full Changelog

Note: this release removes support for Django 3.2 and Python 3.8

Features/Enhancements:

  • Support python 3.13 (#747)

Fixes:

  • Upgrade jQuery-UI to 1.13.2 to fix XSS vulnerability (#742)

Maintenance and Cleanup:

  • Remove Django 3.2 support (#736)
  • Drop support for python 3.8 (#749)
  • Update python dependencies (#748)

5.2.0 (2024-08-17)

:release-by: Albert Wang (@albertyw) Full Changelog

Features/Enhancements:

  • Support Django 5.1 (#734, #732) @albertyw

Fixes:

  • Fix when Session, Authentication or Message middleware are not present (#667) @mgaligniana
  • Update 'tables_involved' property to include tables from UPDATE operation (#717) @emregeldegul
  • Fix double-escaping of the curl and Python example code (#709) @SpecLad
  • Correct units in profiling and requests pages (#725) @ka28kumar

Maintenance and Cleanup:

  • Update python dependencies (#733) @albertyw
  • Refactor SQL query time calculation to use Django aggregation (#720) @beltagymohamed
  • Fix test failures on Windows (#707) @SpecLad
  • Update workflow actions (#700) @albertyw
  • Update test matrix to latest version of django, postgres, and mariadb #701) @albertyw

5.1.0 (2023-12-30)

:release-by: Albert Wang (@albertyw) Full Changelog

Upgrading:

This release includes Fix deprecation warning for get_storage_class #669 which deprecates SILKY_STORAGE_CLASS. Users should instead use the Django STORAGES configuration. See README and Django documentation for more information.

Also, for python 3.12, the cProfile stdlib library cannot be enabled multiple times concurrently. Silk will therefore skip profiling if another profile is already enabled.

Features/Enhancements:

  • Allow option to delete profiles (#652) @viralj

Fixes:

  • Gracefully error out when there are concurrent profilers (#692) @albertyw
  • Always disable cProfile as part of cleanup (#699) @albertyw
  • Fix when Session, Authentication or Message middlewares are not present (#667) @mgaligniana

Maintenance and Cleanup:

  • Fix deprecation warning for get_storage_class (#669) @albertyw
  • Support Django 4.2 (#685) @albertyw
  • Support python 3.12 (#683) @albertyw
  • Support Django 5 (#686) @albertyw
  • Remove deprecated datetime.timezone.utc (#687) @albertyw
  • Derive version from importlib (#697) @robinchow

Dependencies:

  • Update python dependencies (#693) @albertyw

5.0.4 (2023-09-17)

:release-by: Albert Wang (@albertyw) Full Changelog

Features/Enhancements:

  • Handle case-insensitive sensitive headers (#674) @shtimn
  • Add a "pagetitle" block to Silky templates (#661) @vsajip
  • Allow to generate more informative profile file name (#638) @k4rl85

Maintenance and Cleanup:

  • Remove unsupported versions of Django and Python (#668) @albertyw
  • Outsource all inline scripts and styles (#635) @sgelis
  • Remove support for looking up headers on django <3.2 (#643) @albertyw

Dependencies:

  • Update python dependencies (#677) @albertyw

5.0.3 (2023-01-12)

:release-by: Albert Wang (@albertyw) Full Changelog

Fixes:

  • #46 Retain ordering, view style and limit (#614)
  • #157 prevent encoding errors in params (#617)
  • #594 Silk fails on constraint check queries (#618) (Fixes compatibility with Django 4.1)

Features/Enhancements:

  • #132 Add action on sql query list (#611)
  • traceback only when needed (#387)

Dependencies:

  • #625 Drop dependency to jinja2

5.0.2 (2022-10-12)

:release-by: Albert Wang (@albertyw) Full Changelog

Fixes:

  • Multipart forms and RawPostDataException (#592)
  • Decrease unnecessary database hits (#587) (#588)

Features/Enhancements:

  • Remove unneeded pytz package (#603)
  • Use contextlib in test_profile_parser (#590)
  • Add support for storages, that don't implement full filesystem path (#596)

5.0.1 (2022-07-03)

:release-by: Albert Wang (@albertyw) Full Changelog

Fixes:

  • Add jquery UI 1.13.1 images and fix collectstatic (#576)

5.0.0 (2022-06-20)

:release-by: Albert Wang (@albertyw) Full Changelog

Features/Enhancements:

  • Drop support for Django 2.2 (EOL) (#567)
  • Added silk_request_garbage_collect command for out-of-band garbage collection. (#541)

4.4.1 (2022-07-03)

:release-by: Albert Wang (@albertyw) Full Changelog

Fixes:

  • Add jquery UI 1.13.1 images and fix collectstatic (#576)

4.4.0 (2022-06-20)

:release-by: Albert Wang (@albertyw) Full Changelog

Features/Enhancements:

  • Switch 'Apply' and 'Clear all filters' ordering
  • Make filters on Requests tab more visible
  • Add small margin for filter selects
  • Add 'Clear all filters' button
  • Add message when there are no requests to display
  • Making the error logging more accurate and explicit
  • Fixing #530 - Adding support for SILKY_EXPLAIN_FLAGS

Maintenance and Cleanup:

  • Remove unused js compilation pipeline (#561)
  • Fix pre-commit-config

Dependencies:

  • Update jquery to 3.6.0 and jquery-ui to 1.13.1 [#508]
  • [pre-commit.ci] pre-commit autoupdate (#560, #571)
  • Add django-upgrade to pre-commit hooks (#566)

Moved to 5.0.0

  • Drop support for Django 2.2 (EOL) (#567)

4.3.0 (2022-03-01)

:release-by: Albert Wang (@albertyw) Full Changelog

Fixes:

  • Use correct db in a multi db setup (#522)

Dependencies:

  • Drop support for Python 3.6
  • Add Python 3.10 compatibility
  • Add Django 4.0 to tox.ini
  • Update django version (#544)
  • Django main (#528)
  • Remove unneeded dependency Pygments

Maintenance and Cleanup:

  • Jazzband: Created local 'CODE_OF_CONDUCT.md' from remote 'CODE_OF_CONDUCT.md'
  • fix installation instructions in README
  • Replace assertDictContainsSubset (#536)
  • Fix issue avoid-misusing-assert-true found at https://codereview.doctor (#550)
  • pre-commit autoupdate

4.2.0 (2021-23-10)

:release-by: Asif Saif Uddin (@auvipy) Full Changelog

  • #427 Passed wsgi request to SILKY_PYTHON_PROFILER_FUNC
  • Added Django 3.1 & 3.2 to test matrix
  • Replace url with re_path for Django 4.0
  • Move CI to GitHub Actions. #460 (jezdez)
  • Do not crash when silk app is not included in urls
  • Add the SILKY_JSON_ENSURE_ASCII configuration item to support Chinese
  • Add row view for requests page (#440)
  • RequestModelFactory: fallback if request body too large, fix #162 (#451)
  • Add query execution plan to sql_detail (#452)
  • Add Python 3.9 compatibility (#404)
  • Replace re_path with path
  • Fix transaction error for mysql
  • parse query when count joins to match only Keyword
  • fix: DB connection to ClearDB when multiple databases
  • fix: DataCollector sql_queries model not found on filter(request=self.request)
  • Generate missing row.css from sass
  • Filter null values from most time overall summary
  • Ensure sorting between longest requests
  • Filter null values from most db time summary
  • Ensure sorting between most db time requests
  • Temporary fix for testing Django 2.2
  • Fix egg metadata error
  • Fixed a bug that the profile tab could not be opened when the source code contains japanese
  • fix incorrectly made decorator
  • Ensure sorting between most db queries requests
  • Add tests that access the actual DB (#493)
  • remove python 2 style codes from across the codebase
  • Fix broken test on Windows 10 (SQLite) (#504)
  • Remove Make Migrations (#503)
  • Add Python 3.10 compatibility (#527)

4.1.0 (2020-08-07)

Full Changelog

New features/Implemented enhancements:

Fixed bugs:

Closed issues:

  • _mask_credentials uses UGC in a regex substitution #410 (barm)
  • Django Silk is not compatible with Django 3.1: EmptyResultSet is removed in Django 3.1 #431 (Tirzono)

Merged pull requests:

  • Wrap re.sub() in try-except #412 (bambookchos)
  • Replace the call to re.findall with re.sub in _mask_credentials so matched values are not treated as regex patterns #413 (ThePumpingLemma)
  • Capture entire key name during cleansing in _mask_credentials #414 (ThePumpingLemma)
  • Clear DB error when configuring silk to use a non-' default' database #417 (eshxcmhk)
  • Fix force_text RemovedInDjango40Warning #422 (justinmayhew)
  • Make compatible with Django 3.1 #432 (Tirzono)
  • Update README.md django-silk is tested with Django 3.1 #433 (Tirzono)

4.0.1 (2020-03-12)

Full Changelog

New features/Implemented enhancements:

Fixed bugs:

Closed issues:

  • The "Clear DB" page doesn't work with PostgreSQL #395 (Ikalou)

Merged pull requests:

4.0.0 (2020-01-09)

Full Changelog

New features/Implemented enhancements:

Fixed bugs:

Closed issues:

  • Ability to clean up all requests/queries #365
  • Use bulk_create to save number of queries #369
  • Headers are not sanitized #375
  • Django 3 support #382
  • Support functional cProfile enable #390

Merged pull requests:

3.0.4 (2019-08-12)

Full Changelog

Implemented enhancements:

  • templates: limit select width to its container one #351 (xrmx)
  • Clean up RemovedInDjango30Warning with {% load staticfiles %} #353 (devmonkey22)
  • Simplify pattern masking and handle dicts #355 (Chris7)

Fixed bugs:

Closed issues:

  • Clean up RemovedInDjango30Warning warning re load staticfiles in Django 2.1+ #352

Merged pull requests:

  • Fix masking sensitive data in batch JSON request #342 (nikolaik)
  • Fix project url on PyPi #343 (luzfcb)
  • templates: limit select width to its container one #351 (xrmx)
  • Clean up RemovedInDjango30Warning with {% load staticfiles %} #353 (devmonkey22)
  • Simplify pattern masking and handle dicts #355 (Chris7)

3.0.2 (2019-04-23)

Full Changelog

Implemented enhancements:

Fixed bugs:

  • Long url path causes Http 500 #312

Closed issues:

  • Permission checking is skipped due to order of silk_profile decorator #336
  • Support gprof2dot 2017.09.19 #332
  • Duplicate #310 #328
  • Profiling management commands #327
  • NoReverseMatch at /cart/detail/ Reverse for 'cart_add' with arguments not found. #324
  • Request body sanitization #305
  • How to profile middleware? #303
  • Disabling Silk for specific URLs #292
  • silk_clear_request_log fails on Postgres #290
  • silk profile is not work, with dango-version 2.0.2 and django-silk version 2.0.0 #277
  • DataError: value too long for type character varying(190) #179

Merged pull requests:

3.0.1 (2018-07-03)

Full Changelog

Closed issues:

  • ProgrammingError raised from silk_clear_request_log #293
  • Make a new release of django-silk #282

Merged pull requests:

3.0.0 (2018-05-15)

Full Changelog

Implemented enhancements:

  • Limiting request/response data don't available in pypi version #218

Fixed bugs:

  • silk_clear_request_log taking longer than 30 minutes #239

Closed issues:

  • Meta profiling does not work with Django 2.0 and higher #274
  • Force opening a new window for SQL queries is very annoying #271
  • DB Deadlock when stress testing with silk #265
  • proplem with propagating code to pypi #264
  • PSA: Cleanup silk_requests before updating to 1.1.0 #261
  • Release 2.0.0 #259

Merged pull requests:

2.0.0 (2018-01-16)

Full Changelog

Fixed bugs:

  • Links for Readme.md not working. #250

Closed issues:

  • pypi version #252
  • Remove support for django 1.7 #247
  • migrations/0005_increase_request_prof_file_length.py does not match code #244
  • Excessive number of queries in class method profile #240
  • Django 2.0 support #229
  • Create new release of silk #187

Merged pull requests:

1.1.0 (2017-12-27)

Full Changelog

Implemented enhancements:

  • RemovedInDjango20Warning: on_delete will be a required arg for OneToOneField in Django 2.0. #183
  • README missing info about how to import decorator #180
  • Use redis for backend #163
  • Difficult to install on windows: Needs wheels. #149
  • Organise cProfile output as a sortable, more organised table. #33

Closed issues:

  • Silk is incompatible with django-fullclean #219
  • The dashboard shows views with no queries as most time taken in database #217
  • No end_time for any captured request #213
  • Bad alignment in profile table #206
  • Visualization not visible #205
  • Storage class as a setting #202
  • Consider moving project to jazzband #184
  • Request detail page never loads #175
  • Number of queries and time showing as 0 #174
  • NameError: name 'silk_profile' is not defined #172
  • Query time-outs #158

Merged pull requests:

1.0.0 (2017-03-25)

Full Changelog

Fixed bugs:

  • Silk shows 0 time for all requests? #161
  • Failed to install index for silk.Request model: (1071, 'Specified key was too long; max key length is 767 bytes') #38
  • IntegrityError: duplicate key value violates unique constraint "silk_response_request_id_key" #26

Closed issues:

  • There is no reference to download a profile #170
  • Build fails occasionally due to "missing manage.py" #32

Merged pull requests:

0.7.3 (2017-02-13)

Full Changelog

Fixed bugs:

  • Profiling files get copied into MEDIA_ROOT #151
  • Bad requirements for postgres based installations #142

Closed issues:

  • Middleware setting in Django 1.10 #159
  • When installing silk asking for mysql library. But I'm using postgresql. #150
  • No Silk profiling was performed for this request. Use the silk_profile decorator/context manager to do so. #147
  • ProgrammingError on postgresql #146
  • [Error][Bug]adding silk middleware in MIDDLEWARE causes ImportError #108

Merged pull requests:

0.7.2 (2016-12-03)

Full Changelog

Closed issues:

  • Pypi version upload #141

Merged pull requests:

  • Allow using Django 1.10 MIDDLEWARE setting instead of MIDDLEWARE_CLASSES #148 (lockie)
  • Travis config to test on the different django database backends. #145 (mattjegan)
  • Updates exception handling to use Django DatabaseError class #144 (hanleyhansen)
  • Fix for byte string incompatibility in ResponseModelFactory.body() on py3 #143 (aljp)

0.7.1 (2016-10-01)

Full Changelog

Merged pull requests:

0.7.0 (2016-09-21)

Full Changelog

Implemented enhancements:

  • Select a path to save profiling files #131

Merged pull requests:

0.6.2 (2016-07-28)

Full Changelog

Closed issues:

  • SnakeViz integration #83

Merged pull requests:

0.6.1 (2016-07-13)

Full Changelog

Closed issues:

  • Latest version of django-silk not installing because of missing dependency #127
  • README.md missing in v0.6 #125

Merged pull requests:

0.6.0 (2016-07-12)

Full Changelog

Closed issues:

  • Local Dev of Silk. Template Error. #121
  • Using django six rather then maintaining one #112
  • PyPi release #106

Merged pull requests:

  • update pillow requirement so installation succeeds #124 (SzySteve)
  • Give users the ability to export .prof binary files for every request #123 (hanleyhansen)
  • Make Silk Great Again and Upgrade Dev Project #122 (hanleyhansen)
  • make file paths clickable that don't start with a slash #120 (chrono)
  • clear data store in chunks #119 (chrono)
  • remove claim to support django 1.6 #118 (chrono)
  • removed six six utils and tests #117 (auvipy)
  • used django utils six instead of sils utls six in some module #116 (auvipy)
  • Lint fix and code cleaning #114 (auvipy)
  • small updates #113 (auvipy)
  • Render function instead of render_to_response #111 (auvipy)
  • remove south migrations as not needed in less then 1.7 #110 (auvipy)
  • versions upgrade and obsolete versions removal #109 (auvipy)
  • Supporting django<1.8 #107 (wm3ndez)

0.5.7 (2016-03-16)

Full Changelog

Implemented enhancements:

  • Unittesting #87
  • Add Ascending/Descending sort order GET parameter in RequestsView #84
  • Support binary response bodies #1

Fixed bugs:

  • TemplateSyntaxError at /silk/ Invalid filter: 'silk_date_time' #82

Closed issues:

  • base64 encoded responses break unit tests for Python3 #98
  • Refactor Unit Tests to test new sort ordering structure. #96
  • Running tests from the Travis config file fails because of difference in django-admin/manage.py #91
  • Support for missing URL names in Django 1.8 and 1.9 #89
  • UnicodeDecodeError in sql.py: leads to 500 internal error #85

Merged pull requests:

  • remove simplejson #105 (digitaldavenyc)
  • Fixing Depreciation, Saving and Performance Tweaks #104 (Wrhector)
  • Django 1.9 compatibility for the csrf context processor #100 (blag)
  • URL patterns are just Python lists for Django 1.9+ #99 (blag)
  • Refactor Unit Tests to test new sort ordering structure. #97 (trik)
  • Add Ascending/Descending sort order GET parameter in RequestsView #95 (trik)
  • Response bodies are now stored b64 encoded (support for binary responses). #94 (trik)
  • Unittests for models #93 (Alkalit)
  • Conditional migration tests #92 (florisdenhengst)
  • Added support for missing URL names in Django 1.8-1.9. #90 (florisdenhengst)
  • Avoid errors when doing migrate command #86 (msaelices)
  • Namespace templatetags so they don't clash with existing application templatetags #81 (lmortimer)
  • Added the use of Lambdas in settings.py to the README. #77 (bryson)

0.5.6 (2015-09-06)

Full Changelog

Closed issues:

  • Post-processing static assets fails due to missing font files #51

Merged pull requests:

0.5.5 (2015-06-04)

Full Changelog

Fixed bugs:

  • Pin six.py within silk to avoid version incompatibility. #70

Closed issues:

  • IntegrityError: NOT NULL constraint failed: silk_request.view_name #71

0.5.3 (2015-06-04)

Full Changelog

Closed issues:

  • null value in column "view_name" violates not-null constraint #66
  • Migrations do not work with Django 1.5.9 #64

Merged pull requests:

0.5.2 (2015-04-15)

Full Changelog

Merged pull requests:

0.5.1 (2015-04-08)

Full Changelog

Implemented enhancements:

  • UTC time in templates #49

Fixed bugs:

  • AttributeError: This StreamingHttpResponse instance has no content attribute #50

Closed issues:

  • Django 1.8 support #55
  • Should not have to manually add a logger for silk #53

0.5 (2015-04-08)

Full Changelog

Implemented enhancements:

  • 'thread._local' object has no attribute 'temp_identifier' (should log a warning stating that this is likely a middleware issue) #52
  • Check to see if process_request of SilkyMiddleware has been called, and issue warnings on middleware placement if not #42
  • Django 1.7 support #29

Fixed bugs:

  • Django 1.5 support broken #60

Closed issues:

  • Tests broken #61
  • Deploying silk site-wide #56
  • Migration error #54
  • Silky doesn't work when django.middleware.gzip.GZipMiddleware is enabled #43
  • static files not found problem #41
  • No handlers could be found for logger "silk" #35

Merged pull requests:

v0.4 (2014-08-17)

Full Changelog

Closed issues:

  • Live demo link is broken #30

Merged pull requests:

  • Ability to not log every request, optimizations, db_index, and a management command #31 (JoshData)

0.3.2 (2014-07-22)

Full Changelog

Fixed bugs:

  • No data profiled #25
  • Incorrect interface for execute_sql #24

Closed issues:

  • Don't pin versions in setup.py #23
  • Ability to clear old runs #14

Merged pull requests:

  • Added tests for _should_intercept and fixed bug with requests not being ... #28 (mackeian)
  • Added missing requirement for running tests: mock #27 (mackeian)

0.3.1 (2014-07-05)

Full Changelog

Implemented enhancements:

  • Conform to charset flag in Content-Type header of request/response #20
  • Enhance filtering #17

Fixed bugs:

  • Conform to charset flag in Content-Type header of request/response #20
  • HttpRequest body has UTF-8 Character causes UnicodeDecodeError ? #19

Closed issues:

  • Problems with six.moves.urllib #22
  • Incorrect string value: '\xCE\xBB, \xCF\x86...' for column 'raw_body' at row 1 #21
  • Silk fails on binary staticfiles content #16
  • Silk's static assets are served from the wrong path #11

0.3 (2014-06-17)

Full Changelog

V0.2.2 (2014-06-13)

Full Changelog

v0.2.2 (2014-06-13)

Full Changelog

Closed issues:

  • request: timestamp on list of requests #15
  • AttributeError: 'thread._local' object has no attribute 'temp_identifier' #12

v0.2 (2014-06-12)

Full Changelog

Fixed bugs:

  • Stacktrace inspector allows users to see any file on the filesystem #10

v0.1.1 (2014-06-07)

Full Changelog

Closed issues:

  • Pip install direct from repo fails #9
  • urls.py uses incorrect regex expressions #7
  • requirements.txt must specify exact versions or version upper bounds #6
  • Switch to PyPI for managing releases #4

Merged pull requests:

  • Ensure README file is properly closed by setup.py #8 (svisser)
  • updated readme #5 (rosscdh)

v0.1 (2014-06-06)

* *This Change Log was automatically generated by github_changelog_generator*⏎