Coder Social home page Coder Social logo

pylonide / pylon Goto Github PK

View Code? Open in Web Editor NEW
213.0 15.0 72.0 163.66 MB

Pylon IDE, a Cloud9 v2 descendant with some added extras and support for modern node >= 14.21.1 (v15.x, v16.x, v17.x, v18.x, v19.x, v20.x). OSS licensed.

License: GNU General Public License v3.0

Makefile 0.02% JavaScript 93.65% Shell 0.02% CSS 0.69% HTML 3.14% CoffeeScript 0.14% Ruby 0.01% Scilab 0.90% Batchfile 0.01% ActionScript 1.33% PHP 0.01% Pug 0.11%
ide cloud9-ide programming c9 c9v2 node javascript ace pylon ipad

pylon's Issues

Engine.io v2.0.0 crashes cloud9 on access

Dep upgrade of engine.io v2.0.0 crashes Cloud9 when accessing the page with the following:

/Users/exile/Projects/cloud9/node_modules/engine.io/lib/server.js:360
    self.ws.handleUpgrade(req, socket, head, function (conn) {
    
TypeError: Cannot read property 'handleUpgrade' of undefined
    at /Users/exile/Projects/cloud9/node_modules/engine.io/lib/server.js:360:12
    at Server.verify (/Users/exile/Projects/cloud9/node_modules/engine.io/lib/server.js:171:3)
    at Server.handleUpgrade (/Users/exile/Projects/cloud9/node_modules/engine.io/lib/server.js:349:8)
    at Server.<anonymous> (/Users/exile/Projects/cloud9/plugins-server/c9.smith.io/smith.io.js:229:16)
    at emitThree (events.js:121:20)
    at Server.emit (events.js:194:7)
    at onParserExecuteCommon (_http_server.js:409:14)
    at HTTPParser.onParserExecute (_http_server.js:377:5)

Found an open filed issue of a possible bug in engine.io: socketio/engine.io#473 - Look into the proposed fix.

Closing Browser does not kill terminal sessions

Closing Browser does not kill terminal sessions, only thing that kills sessions is when you ctl click a terminal tab.

this is running over nginx 1.4

Nginx Config

upstream cloud9 {
server 127.0.0.1:3131 weight=3;
}

server {
listen 80;
server_name www.google.this.is.fake.lol
location / {
proxy_pass http://cloud9;
proxy_redirect off;
proxy_set_header Host $host:$server_port;
proxy_set_header X-Real-IP $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_max_temp_file_size 0;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
client_max_body_size 10m;
client_body_buffer_size 128k;
proxy_connect_timeout 90;
proxy_send_timeout 90;
proxy_read_timeout 90;
proxy_buffer_size 4k;
proxy_buffers 4 32k;
proxy_busy_buffers_size 64k;
proxy_temp_file_write_size 64k;
}
}

workspace file tree does not follow `ln -s`

I have a workspace /home/ubuntu/workspace and inside the dir I have a symlink ln -s /opt/prjx prjx. I see the folder but I can not expand it in the tree view.

This might be for security? or my symlinks is just wrong. I tried relative symlinks with no success.

lrwxrwxrwx  1 usr usr   15 May  9 12:05 prjx -> /opt/prjx/
lrwxrwxrwx  1 usr usr    7 May 10 21:33 tmp -> ../tmp/

Support Forms Authentication

Currently Pylon supports Basic Authentication via pylon.connect.basic-auth module, which is enabled when username and password is defined as startup options. It works relatively well for most scenarios but it does have disadvantages:

  • User credentials are sent in the request;
  • No way to log out, except by ending the browser session;
  • Vulnerable to cross-site request forgery (CSRF);

When Pylon is configured as a Web-app on iOS home screen, the password must be passed every time as session cannot be continued.

To overcome the shortcomings of Basic Authentication, implement a new authentication module which supports Form-based Authentication as pylon.connect.form-auth.

Merge APF as PPC to this project

Ajax.org PlatForm (APF) was originally designed as a 100% pure JavaScript framework for creating real-time collaborative applications. It was LGPL licensed and a cool thing in 2009 (the same year that Node.js got its first release). Ajax.org also had created its own client/server side component library (O3) that had JavaScript APIs available as Server-Side JavaScript (SSJS), Site-Specific Browser (SSB) and browser plugin runtime. The APF framework was used to create Cloud9 and is still a major component in Pylon. As APF and O3 both have died as a generic framework libraries, the packaged APF library contains a lot of dead code that is not used.

Currently, to fix any Pylon issues or to create new functionality that has a root cause in the platform code is tricky, because Pylon only uses APF as a framework library and is not included in this repository.

The goal of this issue is to

  • merge APF to this project as PPC (Pylon Platform Code)
  • archive apf and apf-packager projects
  • make it possible to build a parity version of PPC to APF during npm test || npm build

This will greatly help in fixing issues like #65 going forward.

Cloud9v2 unresponsive after refresh - 100% CPU usage

On the development branch using Chrome running Cloud9 in Ubuntu 16.04 LTS:

  • open Cloud9 and a terminal session
  • refresh

App becomes unresponsive with 100% CPU usage. No information is printed to the server console.

epoll_ctl(5, EPOLL_CTL_DEL, 14, 0x7ffc18ebb4a0) = -1 EBADF (Bad file descriptor)
epoll_ctl(5, EPOLL_CTL_DEL, 23, 0x7ffc18ebb4ac) = -1 EBADF (Bad file descriptor)
epoll_wait(5, [{EPOLLIN|EPOLLERR|EPOLLHUP, {u32=14, u64=14}}, {EPOLLIN|EPOLLERR|EPOLLHUP, {u32=23, u64=23}}], 1024, 32575) = 2
clock_gettime(CLOCK_MONOTONIC, {83100, 957940084}) = 0
epoll_ctl(5, EPOLL_CTL_DEL, 14, 0x7ffc18ebb4a0) = -1 EBADF (Bad file descriptor)
epoll_ctl(5, EPOLL_CTL_DEL, 23, 0x7ffc18ebb4ac) = -1 EBADF (Bad file descriptor)
epoll_wait(5, [{EPOLLIN|EPOLLERR|EPOLLHUP, {u32=14, u64=14}}, {EPOLLIN|EPOLLERR|EPOLLHUP, {u32=23, u64=23}}], 1024, 32573) = 2

% time     seconds  usecs/call     calls    errors syscall
------ ----------- ----------- --------- --------- ----------------
 41.39    0.000466           0    743854    743854 epoll_ctl
 33.84    0.000381           0    371927           epoll_wait
 24.78    0.000279           0    371973           clock_gettime
------ ----------- ----------- --------- --------- ----------------
100.00    0.001126               1487754    743854 total

This happens already when closing the browser with the terminal open (Disconnect) on Ubuntu 16.04.
Funny enough, this doesn't seem to happen when using Safari as the browser... nor with Chrome when Cloud9 is running from a Mac. Windows host is untested.

Investigate engine.io v3 upgrade

Engine.io has released version v3.0 and with it abandons node.js v0.10/v0.12 support. Investigate if it's possible to maintain the older node support while still upgrade to the newer engine.io stack.

Node 10.8, Ubuntu 16.04 - build failed

Having:

  1. Ubuntu 16.04 on EC2
  2. Node: 10, 9, 4
  3. build-essentials, g++, g++-4.9
  4. On the last phase of build we get:
> [email protected] postinstall /home/ubuntu/cloud9/cloud9/node_modules/gnu-tools
> node ./install.js

Creating directory  /home/ubuntu/cloud9/cloud9/node_modules/gnu-tools/bin
fs.js:135
    throw new ERR_INVALID_CALLBACK();
    ^

TypeError [ERR_INVALID_CALLBACK]: Callback must be a function
    at makeCallback (fs.js:135:11)
    at Object.mkdir (fs.js:711:16)
    at main (/home/ubuntu/cloud9/cloud9/node_modules/gnu-tools/install.js:28:12)
    at Object.<anonymous> (/home/ubuntu/cloud9/cloud9/node_modules/gnu-tools/install.js:228:5)
    at Module._compile (internal/modules/cjs/loader.js:689:30)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:700:10)
    at Module.load (internal/modules/cjs/loader.js:599:32)
    at tryModuleLoad (internal/modules/cjs/loader.js:538:12)
    at Function.Module._load (internal/modules/cjs/loader.js:530:3)
    at Function.Module.runMain (internal/modules/cjs/loader.js:742:12)

What should I do to overcome it?
Or can everyone show some box with successfully installed cloud 9 (packages, version numbers).

That tab in which a picture (with .png extension in my case) is opened can't be closed.

No matter If I use shortcut Alt+W or click on the Cross or click on Close Tab in right click context menu, I can't close the tab!

For example there is a picture named screenshot.png, if I double click on it in the Left Files Explorer Window it will be opened in a new tab called screenshot.png but I can't close it afterwards. Even refreshing the window has no effect on it.

I confirm that those opened tabs stay open even after restarting Cloud9.

Remove GNU make dependency from postinstall

As of moving to node-pty, the Windows native build of Cloud9v2 has become a low hanging fruit. Altought the npm i dependency installations are carried out successfully, the last step during postinstall fails due to reliance on GNU make. The Makefile targets are actually using simple unix shell commands.

Proposal is to migrate the required installation Makefile steps to build/postinstall.js and use shelljs commands as platform agnostic substitute.

Compatibility with Firefox Quantum 64.0

Certain IDE elements no longer render using Firefox Quantum 64.0.

Most probably this is caused by the introduced changes to CSS:

  • The non-standard -moz-box and -moz-inline-box display values have been hidden from web content (Mozilla bug 1496961).
  • The non-standard ::-moz-tree pseudo-elements have been hidden from web content (Mozilla bug 1496961).

This is covered in more detail also here: https://www.fxsitecompat.com/en-CA/docs/2018/display-moz-box-and-moz-tree-pseudo-elements-have-been-removed/

Terminal does not wrap input line & keyboard paste not working

Not sure if this is a issue with the terminal or my idea of how the terminal must work.

But when you reach the end of the line it does not wrap the input to the next line. But rather restart input on the same line, overwriting any text in its way.

A side node, I'm on a mac and cmd+v works in the editor but not on the terminal. But double click paste, so I'm using that atm but moving my hand from the keyboard is a erk!

Thanks for maintaining this and making sure it runs nicely.

[DEP0013] DeprecationWarning: Calling an asynchronous function without callback is deprecated.

With node v8.0.0 the following Deprecation warning is given:

(node:25347) [DEP0013] DeprecationWarning: Calling an asynchronous function without callback is deprecated.
    at makeCallback (fs.js:127:12)
    at Object.fs.close (fs.js:599:20)
    at /Users/exile/Projects/cloud9/node_modules/vfs-local/localfs.js:545:28
    at FSReqWrap.oncomplete (fs.js:135:15)

This impacts exsilium/vfs-local

Using without Node

Hello there.
I would like to use the Cloud9 editor, I don't mind modifying it or writing plugins.
Can I use it without Node? If so, how?

Thanks in advance for any help.

Bye, Ivano.

Where can i find terminal?

Hi,

I am new in cloud9 and i installed this version with terminal support. But i don't see tab "terminal". How can i activate it?

I see that terminal started

IDE server initialized. Listening on localhost:3131
[tty.js] Only accepting local connections.
[tty.js] Cloud9 terminal started, serving requests on port: 3131
[tty.js] 127.0.0.1 Session 127.0.0.1|Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/36.0.1985.125 Safari/537.36 created.

Thanks

which version node could work with 'terminal' branch?

Some guys saying node-0.8.8 is perfect version for cloud9.
I tried it with ajaxorg/cloud9, it works great.

But after I merge 'terminal' code for ajaxorg/cloud9.
I got below error:
uv.h: file not found.

I'm not sure which version nodejs should be used by 'terminal' code?
Any suggestions?

GET http://localhost:3131/static/ace/build/ace.js 404 (Not Found) Cloud9 v2

npm install really suck if your on the end of a wet string! So a couple of my installs just fail. Can not exactly see what is going wrong but it did kick some of my vagrant images filesystems into readonly mode(I think it is memory related).

I documented a example here of ace just being dodo:

https://gist.github.com/Morabaraba/51c6ac58218c58e5b9a4de13a7d3f9b6

I believe it is just a npm module dependency download that times out, and silently log the issue to some npm debug log I'm to stupid to find :P

Installation as a npm package fails

Installation of Pylon as a npm package fails due to the postinstall step and the different location of ace editor:

> [email protected] postinstall /Users/xxx/Projects/pylon_npm/node_modules/pln
> cd node_modules/ace; make clean pre_build; ./Makefile.dryice.js minimal; cd ../..; make worker

sh: line 0: cd: node_modules/ace: No such file or directory

Increase maximum upload file size

I went through the history of the limit and didn't find a reason for the limit. d08c2de

This task I think will involve testing different file sizes on different browsers/devices to see what can be handled successfully. I have successfully tested files less than 2GB in desktop chrome, larger files I think had problems and need to be investigated, I suspect an integer overflow.

It may also be determined whether or not this should be a user configurable setting, but that is not required.

The code that controls the limit is in https://github.com/pylonide/pylon/blob/master/plugins-client/ext.uploadfiles/uploadfiles.js

Win 10 Edge support

This is more a fyi because it does not affect me. But I wanted to test the ctrl+v with edge and c9v2 does not seem to load.

HTML1300: Navigation occurred.
localhost:3131
Current window: localhost
SCRIPT65535: Invalid calling object
apf_release.js (39885,5)
SCRIPT438: Object doesn't support property or method 'getXmlDom'
apf_release.js (57982,17)
SCRIPT438: Object doesn't support property or method 'getXmlDom'
apf_release.js (57982,17)
SCRIPT438: Object doesn't support property or method 'getStyle'
apf_release.js (1168,9)
```

Is the js console output. I have the same instance open on chrome that is tip top!

Project name change to Pylon IDE

Some background to give context on how Cloud9 and this maintenance fork came to be, where we are now and what will happen next.

Cloud9 IDE was spawned from Ajax.org and was one of the first companies to offer Development-as-a-Service (DaaS) tooling. Cloud9 was founded in 2010 and their development started at the time when Node.js had just released version v0.2.0. Wrapping their solution around the awesome ACE editor, they were clearly the trailblazers in their space and in uncharted territory at the time. They received $5.5 million in Series A funding from Accel Partners and Atlassian Software in 2011 and against all odds, they ended up releasing Cloud9 IDE v2 under the GPLv3 license. 🙌

As the popularity of Cloud9 increased, so did the tunnel vision development - features released in the cloud were no longer made available via the GitHub repository. Community grew a bit restless and also several GitHub issues were raised to address the future of Cloud9. One crucial feature that I myself was looking for, was a working terminal that I ended up integrating as a feature branch during summer of 2013. The developers at that time did hint that version 3.0 of Cloud9 is a major rewrite of the software and that we should all stay tuned for the eventual release and update in GitHub.

After awhile, in early 2015, it was announced that Cloud9 is changing to proprietary licensing due to business reasons to which an acquisition by Amazon followed in mid-2016. Today, The Internets seems to identify Cloud9 more as a professional multi-game esports organization, rather than a web based IDE. The original site for the product (c9.io) is being wound down and product itself assimilated to the AWS offering.

This is all great but where does it leave Cloud9v2? This maintenance fork grew out from the terminal branch organically as the original parent repository together with the issue tracker was deleted. The same happened to some of the dependencies that this project relies upon - APF being the most prominent one. As such, there was no "official" forking taking place but rather series of subconscious activities around the fact. Because the name of the project(s) were left unchanged, it was also challenging to publish them to sites like npm.

After all these years, I believe it's time to actually fork, rename and move forward with this project. After careful consideration, the new name will be Pylon IDE, or just Pylon. Due to the numerous dependency repositories, it's also a proper time to change the GitHub namespace to an organization so that it would allow better management of this project as a whole, covering all it's dependencies and plugins. Using a new namespace will allow a release to npm and will eliminate the constraint to eventually reach a major version bump to v3.0.0 and beyond.

What does it all mean?

A release of v2.2.2 will be done from this repository after which the active development will move to github.com/pylonide where the project will see further development with some (hopefully) bigger architecture changes included.

This is all done to encourage new people to try this solution out and contribute back where able, leaving the license to GPLv3, as it was originally meant to be.

Because of the eventual software entropy, I don't want to leave this specific repository in a limbo, nor in some obscure "archived" state hanging under my personal account. As such, the current plan is to:

  • Release Cloud9 v2.2.2
  • Transfer ownership of Cloud9 and dependency repositories under the new organization (pylonide)
  • Rename the project
  • Make the small changes required for the project to compile with minimal namespace changes
  • Bump the minor release version and Re-release as Pylon IDE v2.3.0 and also publish packages to npm
  • A new exsilium/cloud9 repo will be created for redirecting users, as I've seen the link published in HN and other places
  • Continue to build from there as an OSS project with it's own identity and encourage people to add features/improvements
  • The criteria for v3 release would be that Cloud9 is no longer referenced within the project as not to confuse nor clash with C9v3

If you have questions, concerns or want to share some ideas, please use this issue to do just that! Thanks & Cheers!

Sub-tasks

  • Transfer repository ownership of cloud9 and dependency projects to pylonide
  • Rename Cloud9 repository to pylon
  • Re-OAuth the pylonide organization to enable external integrations
  • Re-release as v2.3.0
  • Publish to NPM
  • Modify Wiki to reflect the name change

Search files here with show in console produces console warnings from ace

The following is shown when using the search files here function:

  • ace.js:3532 - Automatically scrolling cursor into view after selection change this will be disabled in the next version set editor.$blockScrolling = Infinity to disable this message
  • ace.js:6685 - Use of document.insertLines is deprecated. Use the insertFullLines method instead.

C9v3 Look option

While the C9v2 is the only OSS type of Cloud9, some of the people will be thrown away of the old UI. We should provide the classic C9v3 skins on C9v2 because it has a better UX, and the fact its easy to navigate to.

Uploads not canceling

I'm going to try and fix this myself but wanted to put this here to update status on it and in case anyone comes across this issue...

I've noticed a number of issues with canceling uploads, which turned out that the current upload is never actually canceled on the client side, rather only the UI is updated.

Easy way to reproduce is to upload a file, cancel mid upload and watch the file keep growing on the server. This causes other problems if you then try to upload again, the file becomes larger than it is supposed to be and can be corrupt.

I traced it down to some unimplemented code or possibly a bad merger. But the code in question is in this commit:

f4d17ae#diff-c182d692a529514070174c0f5f239013

Basically that commit updated uploadfiles.js by sending a 'cancelall' message and expecting a 'canceled' message back from uploadworker.js, but in that commit uploadworker.js was not updated with support for 'cancelall' or 'canceled'.

The commit says the code came from some hotfixes branch, but I was not able to find the branch (looked at several of them), so I have no idea if this is a bad merger that didn't include uploadworker.js or incomplete code.

As a result the solution may be just to implement the missing code.

cannot close opened image files

Dear Cloud9 maintainers:

If I opened an image file in editor, I can't close it anymore. Chrome console show below error messages:

image

This issue can be reproduced on master branch with latest Chrome 69, please refer to animated screenshot below, many thanks for your considerations:

1

all opened terminal is removed when refresh/connection drops out

Spec

  • ubuntu 16.04 (with build-essential)
  • node 8.11.2 npm 6.1.0 ( have tested with node 8.9.4, 6.14.5, 5.12.0 as well! same error)
  • serving over nginx with https termination
  • command: bin/cloud9.sh -l 0.0.0.0 -p 8181 --username=foo --password=bar
  • using IDE from chrome 66 (win 10)
0|cloud9   |     at /home/anand/cloud9/plugins-server/cloud9.ide.terminal/tty.js:233:7
0|cloud9   |     at Array.forEach (<anonymous>)
0|cloud9   |     at Timeout._onTimeout (/home/anand/cloud9/plugins-server/cloud9.ide.terminal/tty.js:232:11)
0|cloud9   |     at ontimeout (timers.js:498:11)
0|cloud9   |     at tryOnTimeout (timers.js:323:5)
0|cloud9   |     at Timer.listOnTimeout (timers.js:290:5)
0|cloud9   | Error: Usage: pty.resize(fd, cols, rows)
0|cloud9   |     at UnixTerminal.resize (/home/anand/cloud9/node_modules/node-pty/lib/unixTerminal.js:213:13)
0|cloud9   |     at /home/anand/cloud9/plugins-server/cloud9.ide.terminal/tty.js:223:12
0|cloud9   |     at /home/anand/cloud9/plugins-server/cloud9.ide.terminal/tty.js:233:7
0|cloud9   |     at Array.forEach (<anonymous>)
0|cloud9   |     at Timeout._onTimeout (/home/anand/cloud9/plugins-server/cloud9.ide.terminal/tty.js:232:11)
0|cloud9   |     at ontimeout (timers.js:498:11)
0|cloud9   |     at tryOnTimeout (timers.js:323:5)
0|cloud9   |     at Timer.listOnTimeout (timers.js:290:5)
  1. Is it that node-pty did not compile properly? pty.resize(...) signature is not correct

Change to xterm.js v3 branch

xterm.js v3 introduces considerable interface changes. Prior to tackling #36 it makes sense to align to v3 branch of xterm.js

setting breakpoint in editor window will confuse text input

Dear cloud9 maintainers,

If I open a file from IDE and click to set a breakpoint on any line, the text input will be messed and no longer work, I have to close the file and reopen it to make it work again. This issue can be reproduced on latest Chrome 69. Chrome console show below error messages. Is this a known issue of the IDE?

1

Below is a screenshot of the issue, thanks for your notice:

1

Cloud9 upper right logo removal

Currently the Cloud9 logo is prominently displayed and part of the IDE in the upper right corner. This is not an issue on desktop, but on iPad, the logo distracts the editing experience.

Some thoughts:

  • Remove the logo, leave the status led in a smaller rounded corner in the upper right. This will still provide the visual cue for save status and offline indication
  • In the future, the status led could be changed further into a square design and be part of the blue upper blue ribbon meshing into the overall design of the IDE, thus providing more distraction-less editing view.

To remove the logo:

  • change css in ext.main/style/skins.xml
  • edit c9-no-repeat.png to reduce the rounded corner

Depreciation warnings when building PPC

The following depreciation warning are given:

(node:3341) [DEP0027] DeprecationWarning: util.puts is deprecated. Use console.log instead.
(node:3341) [DEP0013] DeprecationWarning: Calling an asynchronous function without callback is deprecated.

Does not work behind ssl reverse proxy

Configuring Cloud9 to work behind ssl reverse proxy (e.g. nginx) produces the following:

c9_ssl_nginx

  1. Mixed content due to unsecured websocket connection ws:// (engine.io <-- tty)
  2. Invalid smith.io-ide requests (using the backend service port)

Discovered with 'origin/feature/connect-3.x'

Ace upgrade from 1.2.9 -> 1.3.1 breaks c9

Upgrading from 1.2.9 to 1.3.1 seems to break c9 due to the new undoManager implementation and underlying interface changes.

Here's the breaking commit

ajaxorg/ace@64d5077#diff-636b36d7e1fc09db855366c08876e490

undoManager.addSession(this);

The undoManager can be different type during load: apf.actiontracker {$supportedProperties: Array(6), $propHandlers: {…}, $booleanProperties: {…}, addEventListener: ƒ, $uniqueId: 761, …} in which case there's no such function as addSession();

The following calls also fail due to that. More investigation needed but most probably requires changes in apf.

this.$undoManager.add(delta, this.mergeUndoDeltas);
this.session.getUndoManager().addSelection(sel);

New functions introduced:

add: function() {},
addSelection: function() {},
startNewGroup: function() {},
addSession: function() {}

node v10.13.0 not working: TypeError [ERR_INVALID_CALLBACK]: Callback must be a function

air:pylon d-_-b$ bin/pylon.sh -w $HOME/prj
make: Nothing to be done for `worker'.
OSX
connect plugin start
Connect server listening at http://localhost:3131
While starting the '/Users/d-_-b/prj/pylon/configs/default':
/Users/d-_-b/prj/pylon/server.js:117
	       throw err;
	       ^

TypeError [ERR_INVALID_CALLBACK]: Callback must be a function
    at makeCallback (fs.js:137:11)
    at Object.mkdir (fs.js:719:14)
    at Object.startup [as setup] (/Users/d-_-b/prj/pylon/plugins-server/connect.session.file/session-ext.js:15:12)
    at startPlugins (/Users/d-_-b/prj/pylon/node_modules/architect/architect.js:474:24)
    at startPlugins (/Users/d-_-b/prj/pylon/node_modules/architect/architect.js:482:21)
    at register (/Users/d-_-b/prj/pylon/node_modules/architect/architect.js:513:13)
    at Server.<anonymous> (/Users/d-_-b/prj/pylon/plugins-server/connect/connect-plugin.js:86:13)
    at Object.onceWrapper (events.js:273:13)
    at Server.emit (events.js:182:13)
    at emitListeningNT (net.js:1320:10)
air:pylon d-_-b$ node -v
v10.13.0

Gives the same error for v11.1.0 works great with v4.9.1.

Congrats on the name change!

install help

Hi!
Can anyone help me with the install of Pylon? I can't manage to make it work :/

I'm trying to install pylon on Debian 9.9 (Strech). See the console response:

`npm WARN deprecated [email protected]: Old versions of Formidable are not compatible with the current Node.js; Upgrade to 1.2.0 or later
npm WARN lifecycle [email protected]install: cannot run in wd [email protected] node scripts/install.js (wd=/opt/bitnami/apache2/htdocs/pylon/node_modules/node-pty)
npm WARN lifecycle [email protected]
postinstall: cannot run in wd [email protected] node scripts/post-install.js (wd=/opt/bitnami/apache2/htdocs/pylon/node_modules/node-pty)

[email protected] postinstall /usr/lib/node_modules/pln
if [ -d 'node_modules/ace' ]; then cd node_modules/ace; else mkdir -p node_modules; ln -s ../../ace node_modules/ace; ln -s ../../treehugger node_modules/treehugger; cd ../a
ce; fi; make clean pre_build; ./Makefile.dryice.js minimal; cd ../..; make worker; if [ -L 'node_modules/ace' ]; then rm node_modules/ace; rm node_modules/treehugger; rmdir no
de_modules; fi
rm -rf build
rm: cannot remove 'build': Permission denied
Makefile:34: recipe for target 'clean' failed
make: *** [clean] Error 1
/opt/bitnami/apache2/htdocs/pylon/node_modules/architect-build/copy.js:121
throw e;
^
Error: EACCES: permission denied, open '/opt/bitnami/apache2/htdocs/pylon/node_modules/ace/lib/ace/snippets/apex.js'
at Object.openSync (fs.js:436:3)
at Object.writeFileSync (fs.js:1229:35)
at write (/opt/bitnami/apache2/htdocs/pylon/node_modules/architect-build/copy.js:110:16)
at Function.copy.file (/opt/bitnami/apache2/htdocs/pylon/node_modules/architect-build/copy.js:115:9)
at addSnippetFile (/opt/bitnami/apache2/htdocs/pylon/node_modules/ace/Makefile.dryice.js:611:14)
at /opt/bitnami/apache2/htdocs/pylon/node_modules/ace/Makefile.dryice.js:386:13
at Array.forEach ()
at buildAce (/opt/bitnami/apache2/htdocs/pylon/node_modules/ace/Makefile.dryice.js:384:15)
at main (/opt/bitnami/apache2/htdocs/pylon/node_modules/ace/Makefile.dryice.js:63:9)
at Object. (/opt/bitnami/apache2/htdocs/pylon/node_modules/ace/Makefile.dryice.js:678:5)
mkdir -p plugins-client/lib.ace/www/worker
mkdir: cannot create directory ‘plugins-client/lib.ace/www/worker’: Permission denied
Makefile:70: recipe for target 'plugins-client/lib.ace/www/worker/worker-language.js' failed
make: *** [plugins-client/lib.ace/www/worker/worker-language.js] Error 1`

My nodejs version is 12.2.0
My npm version is 6.9.0

Note: it is the first time I have tried some npm install. Sorry if my problem sounds a litte stupid.

There is some tutorial to install it? The instructions is too simple :/ on readme.

Thx in advance!

window.applicationCache is undefined in Chrome 70 / Firefox 63

Dear pylon maintainer:

An error occured after I upgraded to Chrome 70 today and re-launch pylon IDE. It said window.applicationCache is undefined. Firefox has similar issue. And in this case IDE cannot open or edit any files. This issue can be reproduced on latest pylon master branch.

It looks as if window.applicationCache feature has been turned off in newer browser releases. Very appreciated if you could take a look to this.

The error output on Chrome console looks like below:

1

iPad Pro basic compatibility

Ace has greatly improved the compatibility with iPad Pro devices with external keyboard:

Both of these additions are included in the v1.2.8 of Ace. It's, time to see if compatibility can be improved for cloud9 to make it usable with iPad.

Known issues:

  • file browser is not scrollable
  • opening a file with double-click
  • screen size is too big (can we scale back a notch?)
  • hardware keyboard does not work, due to not using default keyboard handler of ace
  • disable overscroll
  • investigate momentum scrolling for editor and tree view
  • full screen mode aka app-capable
  • terminal window does not accept space character 😕
  • arrows don't work in terminal

Aggressive socket throttling in modern browsers

Noticing some weird behaviour using modern browsers where sockets are disconnected when Pylon is in a background tab. Safari in MacOS seems to add additional throttling logic that makes usage unbearable.

Symptoms and behaviour are more detailed in socketio/socket.io#2924

Workarounds:

  • Use in a separate Safari window
  • Use Safari technology preview browser

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.