c9 / core Goto Github PK
View Code? Open in Web Editor NEWCloud9 Core - Part of the Cloud9 SDK for Plugin Development https://c9.github.io/core/ https://c9.io
License: Other
Cloud9 Core - Part of the Cloud9 SDK for Plugin Development https://c9.github.io/core/ https://c9.io
License: Other
Hi c9,
The license you've chosen for c9/core makes it illegal to run this software (even for non-commercial purposes). If we combine your c9/core code and your AGPL dependencies and then provide access to the combined program over a network, we are violating section § 5.c of the AGPL which states that we must provide the source code of the combined program under the AGPLv3 or GPLv3 license. Your license has additional restrictions which mean that we can't do so.
Note that the FSF believes this applies to plugins like the c9.ide.*
libraries: http://www.gnu.org/licenses/gpl-faq.html#NFUseGPLPlugins
Presumably this doesn't affect you because as copyright holders of the AGPL libraries, you can give yourself whatever permissions you like to run with a closed source c9/core. But to the rest of us, having access to the source of c9/core isn't very helpful without the permission to legally use it.
Best,
Alex Ogier
on debian wheezy
I know BasicAuth is already implemented and works well.
But it would be great if authentication could be Form as well.
When the file indent use tab, cursor position can't focus end of line. In fact the cursor is focused end of line, because the last char is delete when press BackSpace key.
It's obvious you guys have abandoned the GPLv3 license. Are you sure there is no code from v2 that was contributed by developers outside of your company under GPLv3. If so, then that would void your license, would it not?
Disclaimer: Actual files are not duplicated, just visually in the file tree. (as can be seen from the console output in the screenshot)
http://i.imgur.com/lmG2wde.png
I have no idea what causes this or how to trigger it, it seems rather random. Selecting one of those duplicated items even highlights all of them. Refreshing the file tree does not remove the problem, neither does refreshing the browser tab or even restarting the node process.
I removed my .c9 folder and deleted all cookies. Now it seems fine again for now.
Also, this was under Favorites, not the normal file tree.
Browser: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:35.0) Gecko/20100101 Firefox/35.0
c9/core: be54b38
OS: Linux debian-virt 3.2.0-4-amd64 #1 SMP Debian 3.2.65-1+deb7u1 x86_64 GNU/Linux ( not the browser though, that is running on win7)
Node.js: v0.10.36
Any other info I can provide?
Is it possible to change color of console output in the terminal based on the level (console.warn, console.error, console.log...) ?
Some of the internal plugins see to incorrectly remove themselves from the core.ext extension, which leads to the Plugin-Manager showing up empty.
The "crash" occurs when invoking lut[plugin.name]
in c9.ide.plugins/manager.js
on line 396.
I added the following code to c9.ide.plugins/manager.js:
if (typeof(lut[plugin.name]) != "undefined") {
package.items.push({
...
});
} else {
console.log("UNDEFINED PACKAGE NAME", plugin.name, lut);
}
Which produces the following result.
I can't reliably reproduce the error but I guess it has something to do with the following line being commented out: // plugins.splice(plugins.indexOf(plugin), 1);
in c9.core/ext.js
.
Using the TS builder, the generated JS for a file 'foo.ts' is 'foo/.js' whereas one would expect it to be 'foo.js'
Not sure if this is a bug. If it is , please remove the slash. If not, please can I get a pointer to the default TS builder so I can use it to create my own.
when i open cloud9 in browser
627 requests 257kb transferred 51.11s
Hi,
I followed the howto in readme in order to install the core
I have a problem when I run
node server.js
The command doesn't show any error and nothing happens
Would it be possible to ad a feature where you can add your own code snippets? If thats already don and I just can't figure out how to use it would it be possible to have those code snippets be able to be put into three catigories, Local Progect, Language based and public.
If a snippit is local, it will only show up in that progect.
If it is Language, it will show only in code of the same type
public is seen by all your progects.
Love the C9 hosted solution and wanted to try using it with some of our private VPC servers. Installed the local version and was up and running for anything on my drive by launching the editor for the proper workspace.
Now though, I'd like to use the ssh option to mount into our remote servers (private cloud, so no public access that I can use :( ) and can't figure it out.
Also, would be nice to not have to restart C9 from the command line every time to switch projects. I'm sure this can be done since projects like the BeagleBone Black are using C9, but not finding it.
Any pointers? Did I miss the docs someplace?
Your beautiful IDE runs now on my Pi-2. Building it needed some little modifications in the installer scripts, because Pi-2 comes with ArmV7 and the scripts only support armv6.
$ node server.js
Error: Cannot find module '../plugins/c9.ide.run/runners_list'
{ [Error: Can't find './c9.api/ping.js' relative to '/root/c9sdk/plugins'] code: 'ENOENT' }
Seems like there are still some files missing to run collab?
Hi, i have a raspberry pi 2 and when im trying to install doing scripts/install-sdk.sh
i get 404 error from http://nodejs.org/dist/v0.12.0/node-v0.12.0-linux-arm-pi.tar.gz
There is no v0.12.0 there for ARM. The only one i got working is this: http://node-arm.herokuapp.com/node_latest_armhf.deb
Please i cant install if that error happens. It will be great if somewhere installation of nodejs can be disabled to make it work correctly on raspberrypi. Thanks
via the mailinglist: https://groups.google.com/forum/#!topic/cloud9-sdk/cNAQ8imFDVo
When I did that, I discovered that the Settings / Run section position values are invalid. For example Settings / Run / Build is "undefined400". The Run section preferences are specified in a few plugins. [I cannot find the code in c9/core, so I'll reference c9/c9v3.]
plugins/c9.ide.run.build/build.js#L68
"Run" has no position property. Adding a position value might fix the problem.
plugins/c9.ide.preview/preview.js#L118
Here Run does have a position property of 600?
Perhaps build.js is loading before preview.js, and there is a bug is the preference code that does not handle undefined positions.
This problem is also causing my plugins preference controls to show up out of order (between Run / Build and Run / Run & Debug) in the main control area. Though, the order in the narrow menu on the left is fine.
When I select Themes->cloud9->cloud9 Day, the whole theme changed to white.
But selecting cloud9 night only changes back the editor's theme. Others stay white.
Is there any chance to see a diff files feature in Cloud9 ?
A project already integrates diff with ace (https://github.com/benkeen/ace-diff).
I've got this error trying to install-sdk.sh :
http://puu.sh/gWLEh/eac3339085.png
http://nodejs.org/dist/v0.12.1/
http://nodejs.org/dist/v0.12.0/
It seems like there is no more arm version. Am I missing something ?
I've updated nodejs 0.12.0 from latest official packages. I cleaned up install directory and replaced it running a new installation from scratch.
Installation succeeded, but now terminal isn't loaded and shows only a square char.
I am expecting it can be installed on my Raspberry Pi
I have a c9 installed on a raspberry pi 2 with an ubuntu 14.04 image , all is working except for the language worker problem.
The console output is :
Language worker could not be loaded; some language features have been disabled
Tried to solve with :
sudo update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8
But with no hope
Hi,
In C9, how can I use a different URL but http://localhost:8181/ide.html. I would like to use it as:
http://localhost:8181/c9/ide.html
Then I can setup the SDK environment together with Apache. Any settings? Thank you.
Hello,
I understand if I install it on my server if I have 5 people using it, at least as far as C9 is concerned all 5 of those people are the same user.
I'm wondering if there is a way to have one install, but 5 users?
I am currently developing a plugin which reads in code and perform some customized syntax analysis.
I was trying to use 'esprima' and 'escope' for my plugin to convert code to AST and then perform scope analysis. Just wondering is there any ways that I could require external node modules like 'esprima' or 'escope' in my plugin? Because currently, it seems the plugin only have access to all sorts modules provided by other plugins.
I wrote a plugin (and put it in ~/.c9/plugin/plugin-name) with following code:
var WebSocket = require('ws')
, ws = new WebSocket('ws://mylocalipaddress:8090/');
ws.on('open', function() {
ws.send('something');
});
ws.on('message', function(message) {
console.log('received: %s', message);
});
On localhost I have a server listening on port 8090
var WebSocketServer = require('ws').Server
, wss = new WebSocketServer({port: 8090});
wss.on('connection', function(ws) {
ws.on('message', function(message) {
console.log('received: %s', message);
});
ws.send('something');
});
When I try to load the IDE at
http://localhost:8186/ide.html?sdk=1?debug=2
It loads only IDE but not the plugin and my server doesn't receive any data.
If I try the same code in a client loaded in a different container it works perfectly.
Thanks
How can i protect my workspace with a password?
thx!
I tried installing on an Ubuntu 14.04 VM the other day, the install script worked well and I was able to get everything working. But it was painfully slow... is there something I could do to speed things up? Any plan to have Docker images maybe?
Hello,
When I launch install-sdk.sh, nothing happens. I tried to see where the script is hanging, and it's on the line "git fetch c9".
EDIT : I tried to wait for a long time, and here it is :
error: Failed connect to github.com:443; Connection timed out while accessing https://github.com/c9/core/info/refs
fatal: c9/master - not something we can merge
Couldn't automatically update sdk core
I have a mostly working version of c9sdk inside a Docker container, running with an nginx front end to implement ssl. Most everything works, except for the terminal. The terminal window opens to a blank screen with the tab flashing repeatedly between the "x" and a thinking circle.
The javascript console log shows hundreds of "Disregard terminal: devel_604" in tmux_connection.js line 202. This number increases rapidly whenever a terminal window is open. This is true on Chrome, Safari, and Firefox
The strange thing is that sometimes when I change my home or workspace directories, it suddenly works, but not consistently. For example, I changed my home and workspace directories to /workspace and it worked, I changed them back to the default (/ and /c9) and it didn't work, then I changed them back to /workspace and it still didn't work. No change other than the home and workspace directories were made.
Any thoughts as to where to track this down?
I have the core installed on a Fedora server. The app runs, and I can bring up the website - however it just sits on the "Loading your workspace" splash screen. There are no errors on the console. Any suggestions, or is there a log somewhere I can take a look at to see what it is hanging on?
I did
git clone [email protected]:c9/core.git c9sdk
cd c9sdk
scripts/install-sdk.sh
on visiting http://0.0.0.0:8181 the workspace isn't loading
I get an error:
{ [Error: ENOENT, no such file or directory '/home/anupbiswal/.c9/user.settings']
errno: 34,
code: 'ENOENT',
path: '/home/anupbiswal/.c9/user.settings',
syscall: 'open' }
{ [Error: ENOENT, no such file or directory '/home/anupbiswal/Projects/open_source/c9sdk/.c9/project.settings']
errno: 34,
code: 'ENOENT',
path: '/home/anupbiswal/Projects/open_source/c9sdk/.c9/project.settings',
syscall: 'open' }
{ [Error: ENOENT, no such file or directory '/home/anupbiswal/Projects/open_source/c9sdk/.c9/state.settings']
errno: 34,
code: 'ENOENT',
path: '/home/anupbiswal/Projects/open_source/c9sdk/.c9/state.settings',
syscall: 'open' }
Having no clue I created those settings file manually in the desired locations now the error is gone BUT I am still not able to see my workspace loaded
I think I am missing something. Can somebody help here.
> [email protected] install /home/home/.c9/node_modules/sqlite3 > node build.js [sqlite3]: Checking for http://node-sqlite3.s3.amazonaws.com/Release/node_sqlite3-v2.1.a-node-v11-linux-arm.tar.gz [sqlite3]: http://node-sqlite3.s3.amazonaws.com/Release/node_sqlite3-v2.1.a-node-v11-linux-arm.tar.gz not found, falling back to source compile (Error: Server returned 404)
Sorry for short Issue i speak little english ( but i love this project <3 )
Hi, sorry for my bad english, i am from Spain.
My nodejs -v is 0.10.37 and npm -v 1.4.28
Installation fails here:
node-gyp rebuild
make: Entering directory '/home/pi/c9/c9sdk/node_modules/pty/node_modules/pty.js/build'
CXX(target) Release/obj.target/pty/src/unix/pty.o
/usr/bin/g++: 1: /usr/bin/g++: Syntax error: "(" unexpected
pty.target.mk:82: recipe for target 'Release/obj.target/pty/src/unix/pty.o' failed
make: *** [Release/obj.target/pty/src/unix/pty.o] Error 2
make: Leaving directory '/home/pi/c9/c9sdk/node_modules/pty/node_modules/pty.js/build'
gyp ERR! build error
gyp ERR! stack Error: make
failed with exit code: 2
gyp ERR! stack at ChildProcess.onExit (/usr/lib/node_modules/npm/node_modules/node-gyp/lib/build.js:267:23)
gyp ERR! stack at ChildProcess.emit (events.js:98:17)
gyp ERR! stack at Process.ChildProcess._handle.onexit (child_process.js:820:12)
gyp ERR! System Linux 3.18.7-v7+
gyp ERR! command "node" "/usr/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /home/pi/c9/c9sdk/node_modules/pty/node_modules/pty.js
gyp ERR! node -v v0.10.37
gyp ERR! node-gyp -v v1.0.1
gyp ERR! not ok
Can you help me please?
An error was ment when I installed c9 core, the pty.js can't be installed successfully
> [email protected] install /home/vagrant/cloud9/node_modules/pty.js
> node-gyp rebuild
gyp WARN install got an error, rolling back install
gyp ERR! configure error
gyp ERR! stack Error: node-v0.10.36.tar.gz local checksum deb28b6c1e92f278e3f02e2d427d3fcd996e52b06dd0e0ad3ddc5d4a6a3dcc90 not match remote b9d7d1d0294bce46686b13a05da6fc5b1e7743b597544aa888e8e64a9f178c81
gyp ERR! stack at deref (/usr/local/lib/node_modules/npm/node_modules/node-gyp/lib/install.js:299:20)
gyp ERR! stack at IncomingMessage.<anonymous> (/usr/local/lib/node_modules/npm/node_modules/node-gyp/lib/install.js:340:13)
gyp ERR! stack at IncomingMessage.emit (events.js:117:20)
gyp ERR! stack at _stream_readable.js:944:16
gyp ERR! stack at process._tickCallback (node.js:442:13)
gyp ERR! System Linux 3.2.0-23-generic-pae
gyp ERR! command "node" "/usr/local/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /home/vagrant/cloud9/node_modules/pty.js
gyp ERR! node -v v0.10.36
gyp ERR! node-gyp -v v1.0.1
gyp ERR! not ok
npm WARN engine [email protected]: wanted: {"node":">= 0.6.0 && < 0.9.0"} (current: {"node":"0.10.36","npm":"1.4.28"})
npm WARN optional dep failed, continuing [email protected]
nodejs : v0.10.36
npm: 1.4.28
python2.7
tmux installed
When i enable --collab it seems that it tries to connect to api.c9.dev (cool domain!) and it fails with the below console output :
Failed to load resource: net::ERR_CONNECTION_CLOSED
https://api.c9.dev/collab/0/access_info?access_token=token Failed to load resource: net::ERR_SSL_PROTOCOL_ERROR
default.js:16397 Collab not connected - SKIPPING Object
default.js:16397 Collab not connected - SKIPPING Object
default.js:16313 [OT] Collab connect timed out ! - retrying ...
default.js:16304 Collab connecting
default.js:16320 COLLAB CONNECT ERR Object
default.js:151130 GET https://api.c9.dev/collab/0/access_info?access_token=token net::ERR_SSL_PROTOCOL_ERROR
default.js:151130 GET https://api.c9.dev/collab/0/access_info?access_token=token net::ERR_CONNECTION_CLOSED
default.js:151130 GET https://api.c9.dev/collab/0/access_info?access_token=token net::ERR_SSL_PROTOCOL_ERROR
The --collab feature also interferes with the file save process and slows it down severely.
When start it without --collab it runs smoothly with no console errors
When I make my first plugin, the name in the list comes out to be "token" rather than "myplugin". When I double click "token" and reveal what's in it, it shows "myplugin".
My cloud9 ide has no "Download" item in my contextual menu.
Are there any conditions to display it ?
My workspace panel doesn't appear anymore.
install-sdk and reset preferences don't change anything.
The console displays :
Can't add dynamic less library in packed mode!
LESS code trying to added starts with
.panelsbutton{
padding : 10px 10px 6px 10px;
display : inline-block;
white-space: nowrap;
cursor : default;
margin-left : -1px;
margin-right : 2px;
font-family: Helvetica, Arial;
font-size: @general-font-size;
color : @panel-button-color;
text-shadow: @panel-button-text-shadow;
.transform(rotate(180deg));
height : 18px;
}
I don't set packed option but this var is true anyway.
I saw that it is defined by style.css length
So after empty plugins/c9.ide.ui/style.css, left panel appears.
bin/c9 require both read and form-data, but they're not referenced in package.json
configure: error: "curses not found" when installing on centos 7. Is this a known issue?
[root@play c9sdk]# rpm -qa|grep curse
ncurses-libs-5.9-13.20130511.el7.x86_64
ncurses-5.9-13.20130511.el7.x86_64
ncurses-devel-5.9-13.20130511.el7.x86_64
ocaml-curses-1.0.3-17.el7.x86_64
ncurses-base-5.9-13.20130511.el7.noarch
ocaml-curses-devel-1.0.3-17.el7.x86_64
is installed.
https://github.com/c9/core/blob/master/plugins/c9.cli.publish/publish.js#L346 tests for .js, and not .js$, which makes it pick up all kinds of things that aren't js files.
In my case, sax-js directory, which breaks once it tries to readFileSync that entry.
Given how many things call itself .js these days, it's probably a good idea to actually statSync to check if it's a file, too.
I think i'm pretty close now from runnning cloud ide. Here is my last error :
http://puu.sh/gY4mi/266c7cd1ac.png
The web client : http://puu.sh/gY4e2/c68eb72a19.png
Has anyone already experienced this ?
Could you tell me how to activate the "git add" menu in terminal on a local installation of cloud9.
I saw feature is in plugin c9.ide.terminal/link_handler.js, which is not 'required' by my installation.
I failed to clearly understand how to add plugins.
Thanks for your help.
/*global main, imports*/
var Plugin = imports.Plugin;
var Tree = imports.Tree;
var List = imports.List;
var Datagrid = imports.Datagrid;
var plugin = new Plugin("Ajax.org", main.consumes);
// Illustration
var container = document.createElement("div");
// A list
var myList = new List({
container: container,
// # Properties
emptyMessage: "No items found",
scrollMargin: [0, 10],
rowHeight : 25,
rowHeightInner : 25,
theme: "mylist",
animatedScroll: true,
enableDragdrop: true,
enableRename: true,
maxLines: 10,
minLines: 10,
scrollSpeed: 2,
wrapAround: true
// # Route Methods
// isLoading: function(){},
// getEmptyMessage: function(){},
// renderRow: function(){},
// sort: function(children, compare){},
// getClassName: function(){},
// getIndex: function(){}, // Preserves selection when doing setRoot()
}, plugin);
// # myList has the following available:
//
// # Methods
// setRoot: function(root){}
// resize: function(force){}
// select: function(node){}
// select: function(nodeList){}
// focus: function(nodeList){}
// setScrollTop: function(nodeList){}
// startRename: function(node){}
// execCommand: function(cmd){}
// scrollIntoView: function(node, float_where_on_page)
// enable: function(){}
// disable: function(){}
// getNodeAtIndex: function(idx){}
// getIndexForNode: function(node){}
//
// # Property Getters
// selectedNodes: function(){}
// selectedNode: function(){}
// root: function(){}
// scrollTop: function(){}
// focussed: function(){}
// container: function(){}
//
// # Property Objects
// textInput: tree.textInput,
// renderer: tree.renderer
// selection: tree.selection
// commands: tree.commands
// model: tree.model
//
// # Events
// click: click
// drop: drop
// dragIn: dragIn
// dragOut: dragOut
// dragMoveOutside: dragMoveOutside
// folderDragLeave: folderDragLeave
// folderDragEnter: folderDragEnter
// drop: drop
// dropOutside: dropOutside
// userSelect: userSelect
// afterChoose: afterChoose
// delete: delete
// beforeRename: beforeRename
// afterRename: rename
// select: changeSelection
// select: selection.change
// scroll: provider.changeScrollTop
// scrollbarVisibilityChanged: renderer.scrollbarVisibilityChanged
// resize: renderer.resize
// A tree
var myTree = new Tree({
// # Adds Properties
indentSize: 12,
// # Adds these Route Methods
// getContentHTML: function(){},
// getCaptionHTML: function(){},
// getIconHTML: function(){}
// hasChildren: function(){}
// getChildren: function(){}
// loadChildren: function(){}
// shouldLoadChildren: function(node){}
}, plugin);
// # myTree adds the following:
//
// # Methods
// toggle: function(node){}
// open: function(node){}
// close: function(node){}
// isOpen: function(node){}
// isVisible: function(node){}
// getNodePosition: function(node){}
//
// # Events
// expand: provider.expand // Unique
// collapse: provider.collapse // Unique
// A tree
var myDatagrid = new Datagrid({
// # Adds Properties
theme: "blackdg", // Default
// # Columns
columns : [
{
caption: "Property",
value: "name",
defaultValue: "Scope",
width: "40%",
icon: "debugger/genericvariable_obj.gif",
type: "tree"
},
{
caption: "Value",
value: "value",
width: "60%",
editor: "textbox"
},
{
caption: "Type",
value: "type",
width: "55"
},
{
caption: "CPU",
getText: function(node) { return node.cpu + "%"; },
width: "50",
}
],
}, plugin);
// # myDatagrid adds the following:
//
sort()
function is set, also set model.$sortNodes = true;
and model.$sorted = true;
Please add a syntax highlight for asciidoc files :)
I am unable to find a configuration setting to define the number of lines defines for the Output and terminal panes,
As of today, it seems to be limited around 500 lines. Is there an hidden configuration for that, or is it missing?
Anyway, a user should be able to modify the amount of lines in those panes.
hi, I installed c9 core, but I got some undefined exception like below after I started it.
VFS Exception in function 'tmux':
undefined
Scheduling process exit
Exiting after uncaught exception in 'tmux':
undefined
destroying because of error undefined
VFS connection does not exist
I don't know what the problem mean. It seems to be some problem for the ”tmux“?
thanks
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.