{"_id":"560b438e3bcbd80d0077d0e9","project":"55db8f8f1a91690d007ad975","parentDoc":null,"__v":23,"category":{"_id":"55f491b2be9c2b2100f0635d","version":"55db8f901a91690d007ad978","__v":2,"pages":["55f4920210a10c1700af1cce","560b438e3bcbd80d0077d0e9"],"project":"55db8f8f1a91690d007ad975","sync":{"url":"","isSync":false},"reference":false,"createdAt":"2015-09-12T20:57:22.715Z","from_sync":false,"order":9,"slug":"release-notes","title":"Release Notes"},"githubsync":"","user":"55dde261746ace2b00dd6f73","version":{"_id":"55db8f901a91690d007ad978","project":"55db8f8f1a91690d007ad975","__v":17,"createdAt":"2015-08-24T21:41:36.034Z","releaseDate":"2015-08-24T21:41:36.034Z","categories":["55db8f901a91690d007ad979","55db9856b3d6540d00886426","55dc751b00a8811900c230e3","55dc766255be9f21004ee250","55dc769200a8811900c230ed","55e4c701177b6e0d003330fa","55f4915caf0bc71900a53130","55f491b2be9c2b2100f0635d","560b22739c7be70d00100bd8","57488c53e8c6a420000b729c","574cefd95953e20e00f40f9f","5798edfd7700d30e00ad250c","579ac88234b5fd0e00b9e140","57c81c6d690c200e0047b72e","57d9b8fbda17c30e003897f1","57d9b90e608ea00e00f358d8","57d9b91cda17c30e003897f4"],"is_deprecated":false,"is_hidden":false,"is_beta":false,"is_stable":true,"codename":"","version_clean":"1.0.0","version":"1.0"},"updates":[],"next":{"pages":[],"description":""},"createdAt":"2015-09-30T02:06:06.720Z","link_external":false,"link_url":"","sync_unique":"","hidden":false,"api":{"results":{"codes":[]},"settings":"","auth":"required","params":[],"url":""},"isReference":false,"order":1,"body":"## Version 2.3.1\nReleased December 13th, 2018\n* Fixes:\n   * Include support for python 3.7 in compiled wheel packages\n\n## Version 2.3.0\nReleased December 13th, 2018\n* Improvements and New Features:\n   * Add support for Pyramid 1.10\n\n## Version 2.2.0\nReleased January 29th, 2018\n* Improvements and New Features:\n   * Support for Jinja2 2.9+ handling of symbol references\n\n## Version 2.1.2 [Limited Availability]\nReleased November 20th, 2017\n* Improvements and New Features:\n   * Python wheel for binary distribution\n   * Support for Darwin OSX\n* Fixes:\n   * Fix cache directory to be nested under `cache_dir`\n   * Fix ready_timeout hang when cache is used\n\n## Version 2.1.1 [Limited Availability]\nReleased September 8th, 2017\n* Fixes:\n   * Fixed a memory leak that was introduced in \n     agent python version 2.1.0\n\n## Version 2.1.0 [Limited Availability]\nReleased August 8th, 2017\n* Improvements and New Features:\n   * Support for Python 3\n   * Added SQL dialect for SQLi engine\n   * Added plugins status reports for agent instrumentation view\n* Deprecation:\n   * Python versions 2.6 and prior are deprecated\n\n## Version 2.0.0 [Limited Availability]\nReleased July 10th, 2017\n* Improvements and New Features:\n   * Enhanced SQLi algorithm for application code change detection\n\n## Version 1.19.0\nReleased July 7th, 2017\n* Enhancements\n * Improved handling of plugin status for Security Instrumentation reports \n\n## Version 1.18.2\nReleased June 6th, 2017\n* Improvements and New Features:\n   * Enhanced detection and protection algorithms for SQLi\n   * Enhanced detection and protection algorithms for HTTP headers\n   * Enable params filtering for Django\n   * Added support for pymysql\n   * Added support for Django 1.11  \n\n## Version 1.17.1\nReleased May 30th, 2017\n* Fixes\n * Updated a third party library\n\n## Version 1.17.0\nReleased May 11th, 2017\n* Enhancements\n * Only warn on first occurrence of unclosed iter\n * Use repr instead of the str in trace channel logging\n * Enabled params filtering for Flask\n\n## Version 1.16.0\nReleased March 15th, 2017\n* Enhancements\n * Adds MS SQLServer support with the pymssql driver\n* Fixes\n * Remove CA cert used for internal testing\n * Detect and handle non-compliant WSGI servers that don't close response iterators\n * Fix embedded tag handling for Django XSS\n * Don't CAPTCHA cross-origin OPTIONS requests for CORS.\n\n## Version 1.15.0\nReleased March 1st, 2017\n* Enhancements\n * Add additional detail for Django instrumentation.\n * Add inline CAPTCHAs for custom events\n * Improved handling of code changes in templates\n* Fixes\n * Ensure responses are always closed in Django\n * Switched captcha response to 403 instead of 200\n\n## Version 1.14.0\nReleased February 10th, 2017\n* Enhancements\n * Add new vmdata split top level keys to the engine\n * Setup Django minimal app to run with Django's runserver\n * Add \"hooks\" list to the reported environment.\n * Track the stack at which Django redirects were created.\n * Enable xss_django by default\n * Switch the duration id from a uuid1() to the object id()\n * Support for running on OSX 10.12\n * Add ability to set client-side captcha parameters.\n * Allow multiple Set-Cookie headers to be added\n * Separate CAPTCHA challenge vs verify URLs\n * Add ip whitelist\n * Added agents timing telemetry\n * Added function to set report flag and reason\n * Use the suspicious_payload feature name for blocking\n * Centralize learning code and add limits\n* Fixes\n * Fix passing the status update function to model hooks\n * Enable xss_django by default\n * Switch the duration id from a uuid1() to the object id()\n * Schema fixes\n * msys aliad to mingw\n * Tracking config can incorrectly stop a report\n\n## Version 1.13.0\nReleased January 11th, 2017\n* Enhancements\n  * Drop messages that exceed maxReportBytes value\n  * Changes to make Code Protection plugins disabled by default\n\n## Version 1.12.1\nReleased November 25th, 2016\n* Fixes\n   * Add additional debug logging for code update diagnostics.\n\n## Version 1.12.0\nReleased November 22nd, 2016\n* Improvements\n  * Filtering of pre-wsgi stack frames to improve location matching.\n  * Add support for regex whitelisting of redirect domains.\n\n## Version 1.11.0\nReleased November 17th, 2016\n* Improvements\n  * Improved XSS performance\n  * Improved learning for Open Redirect and Verb tampering\n  * More accurate whitelisting options\n  * Add additional profiling to the Jinja2 plugin\n  * Improved reporting of plugin status\n\n* Fixes\n  * Better handling for custom type-adaptors in SQL drivers\n  * Add additional debug logging to code updates\n  * Fix error when disabling XSS protection with a pre-compiled template\n\n\n## Version 1.10.3\nReleased September 20th, 2016\n* Fixes\n   * Removed custom username extraction for Pyramid.\n\n## Version 1.10.1\nReleased September 13th, 2016\n* Improvements\n  * Improved Build System\n  * Tuning improvements for code protection\n  * Additional performance instrumentation\n\n* Fixes\n  * Features disabled by default. Fixes spurious alerts for disabled functionality at startup\n  * Fix attack generation for SQLi scanning.\n  * Performance improvement in logging subsystem\n  * Performance improvement when file monitoring is disabled\n  * Memory usage improvement in context generation caching\n\n## Version 1.10.0\nReleased August 2nd, 2016\n* Improvements\n    * Add Django 2.x anonymous user handling.\n    * Include the protection mode in generated alerts.\n \n* Fixes\n    * Fix import error for non-Django projects that have Django installed.\n    * Fix Django spaceless builtin tag handling.\n\n## Version 1.9.2\nReleased July 15th, 2016\n* Fixes\n    * Fix issue disabling XSS for apps that hold explicit references to compiled templates.\n \n## Version 1.9.1\nReleased July 12th, 2016\n* Fixes\n    * Fix bug with disabled agent and disabled XSS\n \n## Version 1.9.0\nReleased June 29th, 2016\n* Improvements\n   * Fully disable all processing of Jinja2 XSS when feature is disabled in dashboard.\n\n* Fixes\n   * Better support for apps with gevent package installed, but not used.\n \n## Version 1.8.0\nReleased June 10th, 2016\n* Improvements\n   * Complete support for reporting custom events\n   * Add additional framework support for detecting bad HTTP response headers\n   * Use the UserAgent header to further identify scanners and bots\n   * Add additional whitelisting support for redirects and FileIO\n   * Add Open Redirection protection for Flask and Django\n\n* Fixes\n   * Reduce performance impact for features that have been disabled\n\n## Version 1.7.0\nReleased May 23rd, 2016\n* Improvements\n   * Add support for Flask-Security login\n   * Update capturing of route name in Django and Flask to be more consistent.\n   * Add ability to whitelist and manually learn for XSS, RCE, Open Redirect, and SQLi\n   * Add API for reporting custom events to IMMUNIO\n\n* Fixes\n    * Fix problem collecting host IP address from unusual network configurations\n    * Fix issue with blocking calls to os.open()\n    * Better handling of files opened with ReadWrite mode\n    * Whitelist `aria-*` html attributes for accessibility.\n    * Handle custom types passed to DB driver for SQLi protection.\n    * Multiple performance improvements for XSS protection algorithm.\n\n## Version 1.6.3\nReleased April 25th, 2016\n* Fixes\n  * Fix exception when using precompiled Jinja2 Macros.\n  * Reduce size of context cache to reduce overall memory usage.\n \n## Version 1.6.2\nReleased April 11th, 2016\n* Fixes\n   * Fix excessive memory usage for apps using the `decorator` package.\n\n## Version 1.6.1\nReleased March 22nd, 2016\n* Fixes\n   * Fix exception with nested performance timers.\n\n## Version 1.6.0\nReleased March 14th, 2016\n* Improvements\n  * Add Auth support for Flask-Login and Flask-Security\n  * Add support for configuring IP address headers.\n  * Add support for enhanced performance monitoring.\n  * Improved XSS protection performance for large renderings.\n\n* Fixes\n  * Fix issue with Jinja2 rendering when not using Template.render()\n  * Fix problem with rebuilding agent within same source directory\n\n## Version 1.5.0\nReleased February 25th, 2016\n* Improvements\n  * Add beta support for Django XSS protection (disabled by default).\n  * Added support for performance and timing measurements.\n\n* Fixes\n  * Handle direct rendering of Jinja2 macros.\n  * Fixed support for very large SQL queries.\n  * Corrected a bug in Remote Command Execution learn button support.\n  * Corrected handling of SGML style HTML comments.\n  * Correctly ignore CSS comments before interpreting CSS tokens.\n  * Corrected handling of interpolated quoted strings in CSS and Javascript attribute values.\n\n## Version 1.4.2\nReleased February 19th, 2016\n * Improvements\n    * Fix error in Jinja2 i18n extension with `{% trans %}` blocks.\n\n## Version 1.4.1\nReleased February 18th, 2016\n * Improvements:\n   * Add DEBUG logging to Agent API function calls.\n\n## Version 1.4.0\nReleased February 5th, 2016\n * Improvements:\n   * Add support for the SHA2 family of hash algorithms\n   * Add route-name support for Flask\n\n## Version 1.3.0\nReleased January 29th, 2016\n * Improvements:\n   * Track timings of Python hook code.\n   * Add support for Django 1.9\n   * Add support for sending diagnostic data from the security code when running in Debug Mode.\n   * Add MsgPack support to reduce data size and improve binary data handling when communicating with Immunio.\n   * Add full support for authentication tracking to the Agent API\n   * Small improvements to the Remote Command Execution detection algorithm\n   * Add detection for 10 additional automated scan tools\n\n* Fixes:\n * Fix some SQL Injection tracking errors in Django 1.4\n * Allow UserID to be None for calls to the authentication API to indicate an anonymous user.\n\n\n## Version 1.2.0\nReleased December 15th, 2015\n* Improvements\n  * Switch to Versioneer tool to automate release versioning.\n  * Handle Custom request.user attribute for an enterprise customer.\n\n## Version 1.1.0\nReleased December 11th, 2015\n* Improvements\n  * Better support for SQLi detection when using Django's ORM\n  * More relaxed parsing of HTML to accommodate non-conformant HTML output\n  * Improvements to Bash lexer for numerical values\n\n\n## Version 1.0.0\nReleased November 12th, 2015\n* Improvements\n  * Enable Jinja2 XSS protection by default.\n\n* Fixes\n  * Fix in Jinja2 to handle sub-blocks including parent blocks with call to `{{ super() }}`\n\n\n## Version 0.36.0\nReleased November 2nd, 2015\n* Improvements\n   * Capture Jinja2 code blocks in attack details\n\n* * Fixes\n   * Don't ship compiled libraries as part of the source tarball.\n\n\n## Version 0.35.0\nReleased October 27th, 2015\n* Improvements\n  * Add support for Flask with `import immunio.start`\n  * Add additional shell command execution support\n  * Improved CSS handling in XSS protection\n\n* Fixes\n  * Prevent Jinja2 failure when template rendering raises an exception\n  * Fix to preserve Jinja2 `Markup` strings\n  * Fix for compilation error with latest LuaJIT\n  * Invalidate Jinja's bytecode cache with Immunio to prevent stale data\n\n## Version 0.34.0\nReleased October 15th, 2015\n* Improvements\n * Analysis engine upgrade resulting in a 50% reduction in overhead.\n * Extend support to older versions of Pyramid, back to 1.4\n\n## Version 0.33.0\nReleased September 29th, 2015\n* Improvements\n * Send the individual Lua hook timing to the Agentmanager.\n * Updated setup.py and README to get ready to upload to pypi.\n* Fixes\n * Fixes the context hash calculation to ensure different lines of code get different hashes.\n * Take SHA-1 hash of the session ID before passing to Lua - prevents Immunio from being able to use a session_id to actually impersonate the session.\n\n## Version 0.32.0\nReleased September 21st, 2015\n* Improvements\n * Simplify Django installation. Now only needs import `immunio.start`.\n * Add additional search directory (CWD/etc/immunio.ini) for config\n\n## Version 0.31.1\nReleased September 19th, 2015\n* Fixes\n * Fix to ensure environment data is sent properly to the database.\n\n## Version 0.31.0\nReleased September 18th, 2015\n* Improvements\n * Collect overall number of requests and request times seen by the agent.\n * Collect internal hostname and IPs for billing purposes.\n * Upstream Django tests working again with all hooks.\n * Lots of small Django fixes.\n * Change configuration file to immunio.ini (the legacy immunio.json file is still supported, but deprecated.)\n * Jinja2 XSS support (beta - disabled by default)\n * Allow plugins to be enabled and disabled","excerpt":"","slug":"python-agent","type":"basic","title":"Python Agent"}
## Version 2.3.1 Released December 13th, 2018 * Fixes: * Include support for python 3.7 in compiled wheel packages ## Version 2.3.0 Released December 13th, 2018 * Improvements and New Features: * Add support for Pyramid 1.10 ## Version 2.2.0 Released January 29th, 2018 * Improvements and New Features: * Support for Jinja2 2.9+ handling of symbol references ## Version 2.1.2 [Limited Availability] Released November 20th, 2017 * Improvements and New Features: * Python wheel for binary distribution * Support for Darwin OSX * Fixes: * Fix cache directory to be nested under `cache_dir` * Fix ready_timeout hang when cache is used ## Version 2.1.1 [Limited Availability] Released September 8th, 2017 * Fixes: * Fixed a memory leak that was introduced in agent python version 2.1.0 ## Version 2.1.0 [Limited Availability] Released August 8th, 2017 * Improvements and New Features: * Support for Python 3 * Added SQL dialect for SQLi engine * Added plugins status reports for agent instrumentation view * Deprecation: * Python versions 2.6 and prior are deprecated ## Version 2.0.0 [Limited Availability] Released July 10th, 2017 * Improvements and New Features: * Enhanced SQLi algorithm for application code change detection ## Version 1.19.0 Released July 7th, 2017 * Enhancements * Improved handling of plugin status for Security Instrumentation reports ## Version 1.18.2 Released June 6th, 2017 * Improvements and New Features: * Enhanced detection and protection algorithms for SQLi * Enhanced detection and protection algorithms for HTTP headers * Enable params filtering for Django * Added support for pymysql * Added support for Django 1.11 ## Version 1.17.1 Released May 30th, 2017 * Fixes * Updated a third party library ## Version 1.17.0 Released May 11th, 2017 * Enhancements * Only warn on first occurrence of unclosed iter * Use repr instead of the str in trace channel logging * Enabled params filtering for Flask ## Version 1.16.0 Released March 15th, 2017 * Enhancements * Adds MS SQLServer support with the pymssql driver * Fixes * Remove CA cert used for internal testing * Detect and handle non-compliant WSGI servers that don't close response iterators * Fix embedded tag handling for Django XSS * Don't CAPTCHA cross-origin OPTIONS requests for CORS. ## Version 1.15.0 Released March 1st, 2017 * Enhancements * Add additional detail for Django instrumentation. * Add inline CAPTCHAs for custom events * Improved handling of code changes in templates * Fixes * Ensure responses are always closed in Django * Switched captcha response to 403 instead of 200 ## Version 1.14.0 Released February 10th, 2017 * Enhancements * Add new vmdata split top level keys to the engine * Setup Django minimal app to run with Django's runserver * Add "hooks" list to the reported environment. * Track the stack at which Django redirects were created. * Enable xss_django by default * Switch the duration id from a uuid1() to the object id() * Support for running on OSX 10.12 * Add ability to set client-side captcha parameters. * Allow multiple Set-Cookie headers to be added * Separate CAPTCHA challenge vs verify URLs * Add ip whitelist * Added agents timing telemetry * Added function to set report flag and reason * Use the suspicious_payload feature name for blocking * Centralize learning code and add limits * Fixes * Fix passing the status update function to model hooks * Enable xss_django by default * Switch the duration id from a uuid1() to the object id() * Schema fixes * msys aliad to mingw * Tracking config can incorrectly stop a report ## Version 1.13.0 Released January 11th, 2017 * Enhancements * Drop messages that exceed maxReportBytes value * Changes to make Code Protection plugins disabled by default ## Version 1.12.1 Released November 25th, 2016 * Fixes * Add additional debug logging for code update diagnostics. ## Version 1.12.0 Released November 22nd, 2016 * Improvements * Filtering of pre-wsgi stack frames to improve location matching. * Add support for regex whitelisting of redirect domains. ## Version 1.11.0 Released November 17th, 2016 * Improvements * Improved XSS performance * Improved learning for Open Redirect and Verb tampering * More accurate whitelisting options * Add additional profiling to the Jinja2 plugin * Improved reporting of plugin status * Fixes * Better handling for custom type-adaptors in SQL drivers * Add additional debug logging to code updates * Fix error when disabling XSS protection with a pre-compiled template ## Version 1.10.3 Released September 20th, 2016 * Fixes * Removed custom username extraction for Pyramid. ## Version 1.10.1 Released September 13th, 2016 * Improvements * Improved Build System * Tuning improvements for code protection * Additional performance instrumentation * Fixes * Features disabled by default. Fixes spurious alerts for disabled functionality at startup * Fix attack generation for SQLi scanning. * Performance improvement in logging subsystem * Performance improvement when file monitoring is disabled * Memory usage improvement in context generation caching ## Version 1.10.0 Released August 2nd, 2016 * Improvements * Add Django 2.x anonymous user handling. * Include the protection mode in generated alerts. * Fixes * Fix import error for non-Django projects that have Django installed. * Fix Django spaceless builtin tag handling. ## Version 1.9.2 Released July 15th, 2016 * Fixes * Fix issue disabling XSS for apps that hold explicit references to compiled templates. ## Version 1.9.1 Released July 12th, 2016 * Fixes * Fix bug with disabled agent and disabled XSS ## Version 1.9.0 Released June 29th, 2016 * Improvements * Fully disable all processing of Jinja2 XSS when feature is disabled in dashboard. * Fixes * Better support for apps with gevent package installed, but not used. ## Version 1.8.0 Released June 10th, 2016 * Improvements * Complete support for reporting custom events * Add additional framework support for detecting bad HTTP response headers * Use the UserAgent header to further identify scanners and bots * Add additional whitelisting support for redirects and FileIO * Add Open Redirection protection for Flask and Django * Fixes * Reduce performance impact for features that have been disabled ## Version 1.7.0 Released May 23rd, 2016 * Improvements * Add support for Flask-Security login * Update capturing of route name in Django and Flask to be more consistent. * Add ability to whitelist and manually learn for XSS, RCE, Open Redirect, and SQLi * Add API for reporting custom events to IMMUNIO * Fixes * Fix problem collecting host IP address from unusual network configurations * Fix issue with blocking calls to os.open() * Better handling of files opened with ReadWrite mode * Whitelist `aria-*` html attributes for accessibility. * Handle custom types passed to DB driver for SQLi protection. * Multiple performance improvements for XSS protection algorithm. ## Version 1.6.3 Released April 25th, 2016 * Fixes * Fix exception when using precompiled Jinja2 Macros. * Reduce size of context cache to reduce overall memory usage. ## Version 1.6.2 Released April 11th, 2016 * Fixes * Fix excessive memory usage for apps using the `decorator` package. ## Version 1.6.1 Released March 22nd, 2016 * Fixes * Fix exception with nested performance timers. ## Version 1.6.0 Released March 14th, 2016 * Improvements * Add Auth support for Flask-Login and Flask-Security * Add support for configuring IP address headers. * Add support for enhanced performance monitoring. * Improved XSS protection performance for large renderings. * Fixes * Fix issue with Jinja2 rendering when not using Template.render() * Fix problem with rebuilding agent within same source directory ## Version 1.5.0 Released February 25th, 2016 * Improvements * Add beta support for Django XSS protection (disabled by default). * Added support for performance and timing measurements. * Fixes * Handle direct rendering of Jinja2 macros. * Fixed support for very large SQL queries. * Corrected a bug in Remote Command Execution learn button support. * Corrected handling of SGML style HTML comments. * Correctly ignore CSS comments before interpreting CSS tokens. * Corrected handling of interpolated quoted strings in CSS and Javascript attribute values. ## Version 1.4.2 Released February 19th, 2016 * Improvements * Fix error in Jinja2 i18n extension with `{% trans %}` blocks. ## Version 1.4.1 Released February 18th, 2016 * Improvements: * Add DEBUG logging to Agent API function calls. ## Version 1.4.0 Released February 5th, 2016 * Improvements: * Add support for the SHA2 family of hash algorithms * Add route-name support for Flask ## Version 1.3.0 Released January 29th, 2016 * Improvements: * Track timings of Python hook code. * Add support for Django 1.9 * Add support for sending diagnostic data from the security code when running in Debug Mode. * Add MsgPack support to reduce data size and improve binary data handling when communicating with Immunio. * Add full support for authentication tracking to the Agent API * Small improvements to the Remote Command Execution detection algorithm * Add detection for 10 additional automated scan tools * Fixes: * Fix some SQL Injection tracking errors in Django 1.4 * Allow UserID to be None for calls to the authentication API to indicate an anonymous user. ## Version 1.2.0 Released December 15th, 2015 * Improvements * Switch to Versioneer tool to automate release versioning. * Handle Custom request.user attribute for an enterprise customer. ## Version 1.1.0 Released December 11th, 2015 * Improvements * Better support for SQLi detection when using Django's ORM * More relaxed parsing of HTML to accommodate non-conformant HTML output * Improvements to Bash lexer for numerical values ## Version 1.0.0 Released November 12th, 2015 * Improvements * Enable Jinja2 XSS protection by default. * Fixes * Fix in Jinja2 to handle sub-blocks including parent blocks with call to `{{ super() }}` ## Version 0.36.0 Released November 2nd, 2015 * Improvements * Capture Jinja2 code blocks in attack details * * Fixes * Don't ship compiled libraries as part of the source tarball. ## Version 0.35.0 Released October 27th, 2015 * Improvements * Add support for Flask with `import immunio.start` * Add additional shell command execution support * Improved CSS handling in XSS protection * Fixes * Prevent Jinja2 failure when template rendering raises an exception * Fix to preserve Jinja2 `Markup` strings * Fix for compilation error with latest LuaJIT * Invalidate Jinja's bytecode cache with Immunio to prevent stale data ## Version 0.34.0 Released October 15th, 2015 * Improvements * Analysis engine upgrade resulting in a 50% reduction in overhead. * Extend support to older versions of Pyramid, back to 1.4 ## Version 0.33.0 Released September 29th, 2015 * Improvements * Send the individual Lua hook timing to the Agentmanager. * Updated setup.py and README to get ready to upload to pypi. * Fixes * Fixes the context hash calculation to ensure different lines of code get different hashes. * Take SHA-1 hash of the session ID before passing to Lua - prevents Immunio from being able to use a session_id to actually impersonate the session. ## Version 0.32.0 Released September 21st, 2015 * Improvements * Simplify Django installation. Now only needs import `immunio.start`. * Add additional search directory (CWD/etc/immunio.ini) for config ## Version 0.31.1 Released September 19th, 2015 * Fixes * Fix to ensure environment data is sent properly to the database. ## Version 0.31.0 Released September 18th, 2015 * Improvements * Collect overall number of requests and request times seen by the agent. * Collect internal hostname and IPs for billing purposes. * Upstream Django tests working again with all hooks. * Lots of small Django fixes. * Change configuration file to immunio.ini (the legacy immunio.json file is still supported, but deprecated.) * Jinja2 XSS support (beta - disabled by default) * Allow plugins to be enabled and disabled