From b6b09203879bc5fed6155b9e41ec063c0e0d2555 Mon Sep 17 00:00:00 2001 From: Darcy Date: Wed, 28 Jun 2023 10:13:40 +1200 Subject: [PATCH] Remove allowInsecureSubmissions option (#488) * Update index.js * Update README.md * Update raygun.js * Remove XDomainRequest as is super obsolete * version bump * bad merge?!!! * Revert "bad merge?!!!" This reverts commit 2eb95f533cfbcb9661cdca4fd571111095fc42e1. --- CHANGELOG.md | 3 +++ README.md | 14 -------------- bower.json | 2 +- package.json | 2 +- raygun4js.nuspec | 2 +- src/raygun.js | 22 +++------------------- src/raygun.rum/index.js | 2 +- 7 files changed, 10 insertions(+), 37 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 21255ab2..48c70088 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,6 @@ +* v2.26.0 +- Removed some dead code related to http support in IE8. As IE8 and http is [no longer supported due to security reasons](https://raygun.com/documentation/product-guides/crash-reporting/troubleshooting/#transport-layer-security-tls-compliance) + * v2.25.8 - Improve README documentation to be more clear on the protocol relative URL and how to use the CDN implemmentation without running a server . diff --git a/README.md b/README.md index 77a00c4e..0f7e9007 100644 --- a/README.md +++ b/README.md @@ -143,17 +143,6 @@ If you need to detach it (this will disable automatic unhandled error sending): rg4js('detach'); ``` -**IE8** - -If you are serving your site over HTTP and want IE8 to be able to submit JavaScript errors then you will -need to set the following setting which will allow IE8 to submit the error over HTTP. Otherwise the provider -will only submit over HTTPS which IE8 will not allow while being served over HTTP. - -```javascript -rg4js('options', { - allowInsecureSubmissions: true -}); -``` ## Documentation @@ -169,8 +158,6 @@ rg4js('options', { The second parameter should contain one or more of these keys and a value to customize the behavior: -`allowInsecureSubmissions` - posts error payloads over HTTP. This allows **IE8** to send JS errors - `ignoreAjaxAbort` - User-aborted Ajax calls result in errors - if this option is true, these will not be sent. `ignoreAjaxError` - Ajax requests that return error codes will not be sent as errors to Raygun if this options is true. @@ -219,7 +206,6 @@ An example raygun4js configuration: ```javascript rg4js('options', { - allowInsecureSubmissions: true, ignoreAjaxAbort: true, ignoreAjaxError: true, debugMode: true, diff --git a/bower.json b/bower.json index 2c7db675..5a1ed4c9 100644 --- a/bower.json +++ b/bower.json @@ -1,6 +1,6 @@ { "name": "raygun4js", - "version": "2.25.8", + "version": "2.26.0", "homepage": "http://raygun.io", "authors": [ "Mindscape " diff --git a/package.json b/package.json index 44a0fa5d..307a0e94 100644 --- a/package.json +++ b/package.json @@ -6,7 +6,7 @@ ], "title": "Raygun4js", "description": "Raygun.com plugin for JavaScript", - "version": "2.25.8", + "version": "2.26.0", "homepage": "https://github.com/MindscapeHQ/raygun4js", "author": { "name": "MindscapeHQ", diff --git a/raygun4js.nuspec b/raygun4js.nuspec index 3d4fadd7..69842a36 100644 --- a/raygun4js.nuspec +++ b/raygun4js.nuspec @@ -2,7 +2,7 @@ raygun4js - 2.25.8 + 2.26.0 Raygun4js Mindscape Limited Mindscape Limited diff --git a/src/raygun.js b/src/raygun.js index 0f576003..aa34dac2 100644 --- a/src/raygun.js +++ b/src/raygun.js @@ -34,7 +34,6 @@ var raygunFactory = function(window, $, undefined) { var _traceKit = TraceKit, _raygun = window.Raygun, _debugMode = false, - _allowInsecureSubmissions = false, _ignoreAjaxAbort = false, _ignoreAjaxError = false, _enableOfflineSave = false, @@ -112,7 +111,6 @@ var raygunFactory = function(window, $, undefined) { } if (options) { - _allowInsecureSubmissions = options.allowInsecureSubmissions || false; _ignoreAjaxAbort = options.ignoreAjaxAbort || false; _ignoreAjaxError = options.ignoreAjaxError || false; _disableAnonymousUserTracking = options.disableAnonymousUserTracking || false; @@ -968,28 +966,14 @@ var raygunFactory = function(window, $, undefined) { // Create the XHR object. function createCORSRequest(method, url) { - var xhr; - - xhr = new window.XMLHttpRequest(); + var xhr = new window.XMLHttpRequest(); + xhr.timeout = 10000; if ('withCredentials' in xhr || Raygun.Utilities.isReactNative()) { // XHR for Chrome/Firefox/Opera/Safari // as well as React Native's custom XHR implementation xhr.open(method, url, true); - } else if (window.XDomainRequest) { - // XDomainRequest for IE. - if (_allowInsecureSubmissions) { - // remove 'https:' and use relative protocol - // this allows IE8 to post messages when running - // on http - url = url.slice(6); - } - - xhr = new window.XDomainRequest(); - xhr.open(method, url); - } - - xhr.timeout = 10000; + } return xhr; } diff --git a/src/raygun.rum/index.js b/src/raygun.rum/index.js index b4363757..e287661b 100644 --- a/src/raygun.rum/index.js +++ b/src/raygun.rum/index.js @@ -1327,7 +1327,7 @@ var raygunRumFactory = function (window, $, Raygun) { return ( initiatorType === 'xmlhttprequest' || initiatorType === 'fetch' || - initiatorType === 'preflight' || // 'preflight' initatorType used by Edge for CORS POST/DELETE requests + initiatorType === 'preflight' || // 'preflight' initiatorType used by Edge for CORS POST/DELETE requests initiatorType === 'beacon' // for navigator.sendBeacon calls in Chrome/Edge. Safari doesn't record the timings and Firefox marks them as 'other' ); }