diff --git a/node_modules/vfs-local/localfs.js b/node_modules/vfs-local/localfs.js index 3ce6bd52..0eba62a4 100644 --- a/node_modules/vfs-local/localfs.js +++ b/node_modules/vfs-local/localfs.js @@ -157,6 +157,8 @@ module.exports = function setup(fsOptions) { // Export the API var vfs = wrapDomain({ + fsOptions: fsOptions, + // File management resolve: resolve, stat: stat, diff --git a/package.json b/package.json index 7d6a010d..6d000336 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "c9", "description": "New Cloud9 Client", - "version": "3.1.1233", + "version": "3.1.1246", "author": "Ajax.org B.V. ", "private": true, "main": "bin/c9", @@ -56,7 +56,7 @@ "c9" ], "c9plugins": { - "c9.ide.language": "#dc02e5c4c2", + "c9.ide.language": "#197e5eb0d0", "c9.ide.language.css": "#be07d72209", "c9.ide.language.generic": "#a4023db7f6", "c9.ide.language.html": "#9be847c0ce", @@ -66,7 +66,7 @@ "c9.ide.language.javascript.eslint": "#3127e1eba1", "c9.ide.language.javascript.tern": "#bf1072b11a", "c9.ide.language.javascript.infer": "#0561c69d67", - "c9.ide.language.jsonalyzer": "#243e11bd42", + "c9.ide.language.jsonalyzer": "#bf12af3d0a", "c9.ide.collab": "#4b93a497cd", "c9.ide.local": "#a6e689e33b", "c9.ide.find": "#e33fbaed2f", @@ -91,7 +91,7 @@ "c9.ide.imgeditor": "#612e75ef4f", "c9.ide.immediate": "#a962119bec", "c9.ide.installer": "#0fde9f0067", - "c9.ide.language.python": "#4fad6f5a80", + "c9.ide.language.python": "#675ddb4c8f", "c9.ide.language.go": "#8f6d0beae7", "c9.ide.mount": "#86c8985f34", "c9.ide.navigate": "#1fbb7cd53b", @@ -105,9 +105,9 @@ "c9.ide.recentfiles": "#7c099abf40", "c9.ide.remote": "#301d2ab519", "c9.ide.processlist": "#2b12cd1bdd", - "c9.ide.run": "#a25ea419b8", + "c9.ide.run": "#53d351200a", "c9.ide.run.build": "#0598fff697", - "c9.ide.run.debug.xdebug": "#a1b39e0ac4", + "c9.ide.run.debug.xdebug": "#9956689819", "c9.ide.save": "#f8aaf93ea1", "c9.ide.scm": "#ca3c94b84f", "c9.ide.terminal.monitor": "#1ccac33b0d", diff --git a/plugins/c9.fs/mock/python/app/__init__.py b/plugins/c9.fs/mock/python/app/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/plugins/c9.fs/mock/python/app/tests/__init__.py b/plugins/c9.fs/mock/python/app/tests/__init__.py new file mode 100644 index 00000000..8b137891 --- /dev/null +++ b/plugins/c9.fs/mock/python/app/tests/__init__.py @@ -0,0 +1 @@ + diff --git a/plugins/c9.fs/mock/python/app/tests/tests.py b/plugins/c9.fs/mock/python/app/tests/tests.py new file mode 100644 index 00000000..51e01f29 --- /dev/null +++ b/plugins/c9.fs/mock/python/app/tests/tests.py @@ -0,0 +1,4 @@ +from ..user.models import User + +def test_user(): + return User() diff --git a/plugins/c9.fs/mock/python/app/user/__init__.py b/plugins/c9.fs/mock/python/app/user/__init__.py new file mode 100644 index 00000000..8b137891 --- /dev/null +++ b/plugins/c9.fs/mock/python/app/user/__init__.py @@ -0,0 +1 @@ + diff --git a/plugins/c9.fs/mock/python/app/user/models.py b/plugins/c9.fs/mock/python/app/user/models.py new file mode 100644 index 00000000..b7ae594e --- /dev/null +++ b/plugins/c9.fs/mock/python/app/user/models.py @@ -0,0 +1,3 @@ +class User(): + def __repr__(self): + return '' diff --git a/plugins/c9.fs/mock/python/test_user.py b/plugins/c9.fs/mock/python/test_user.py new file mode 100644 index 00000000..3867f0f3 --- /dev/null +++ b/plugins/c9.fs/mock/python/test_user.py @@ -0,0 +1,9 @@ +#!/usr/bin/env python3 +from app.tests.tests import test_user +from doesntexist import badimport + +print(test_user()) + +bad_call() + +badimport.foo() \ No newline at end of file diff --git a/plugins/c9.ide.errorhandler/raygun.js b/plugins/c9.ide.errorhandler/raygun.js index 0e1ee90e..ec401969 100644 --- a/plugins/c9.ide.errorhandler/raygun.js +++ b/plugins/c9.ide.errorhandler/raygun.js @@ -1419,12 +1419,13 @@ window.TraceKit = TraceKit; } var blackListedErrors = { - 'Error with empty message': {}, - 'Script error.': {}, - 'DealPly is not defined': { factor: 10e5 }, - "Cannot read property 'style' of null": { factor: 10e3 }, - "Project with id '' does not exist": { factor: 10e2 }, - "Workspace not found": { factor: 10e2 }, + count: 0, + '#Error with empty message': {}, + '#Script error.': {}, + '#DealPly is not defined': { factor: 10e5 }, + "#Cannot read property 'style' of null": { factor: 10e3 }, + "#Project with id '' does not exist": { factor: 10e2 }, + "#Workspace not found": { factor: 10e2 }, }; var groupedErrors = [{ regex: /^((?:Project|User) with id ')(\d+)(' does not exist)/i, @@ -1511,13 +1512,16 @@ window.TraceKit = TraceKit; } }); - if (blackListedErrors.hasOwnProperty(message)) { - var count = (blackListedErrors[message].count || 0) + 1; - blackListedErrors[message].count = count; - if (count % (blackListedErrors[message].factor || 10) !== 1) { + var blackListEntry = blackListedErrors["#" + message]; + if (blackListEntry) { + var count = (blackListEntry.count || 0) + 1; + blackListEntry.count = count; + if (count % (blackListEntry.factor || 10) !== 1) { return; } - finalCustomData.$blackList = blackListedErrors[message]; + finalCustomData.$blackList = blackListEntry; + } else if (blackListedErrors.count < 10000) { + blackListedErrors["#" + message] = {}; } var payload = {