GithubHelp home page GithubHelp logo

activestate / openkomodoide Goto Github PK

View Code? Open in Web Editor NEW
553.0 20.0 129.0 144.79 MB

Open Komodo IDE is a fast and free multi-language code editor. Written in JS, Python, C++ and based on the Mozilla platform.

License: Other

Python 40.37% Perl 2.14% Batchfile 0.06% C 23.56% C++ 6.91% Clean 0.05% AMPL 0.01% JavaScript 14.59% CSS 0.54% HTML 7.79% Makefile 0.60% Shell 0.52% Ruby 1.40% Roff 0.85% Raku 0.01% Ragel 0.11% Objective-C 0.04% Objective-C++ 0.45% QMake 0.02% Lua 0.01%

openkomodoide's Introduction

ActiveState_logo

Komodo IDE

As we retire Komodo IDE, ActiveState has a renewed focus on being the go-to service for securing the open source software supply chain. Check out our Platform to find out more.

This readme explains how to get started building, using and developing with the Komodo IDE source base.

Whilst the main Komodo IDE source is hosted under this repository you may also want to check out the individual component/addon repositories under https://github.com/Komodo in case you only want to contribute to a specific component. This'll save you some time and hassle as you would not have to build the entire project.

Table of Contents

Screenshot

Screenshot

Download

You can download Komodo IDE installer here.

Help

There are several ways to get in contact with the Komodo devs:

Github: https://github.com/ActiveState/OpenKomodoIDE

Gitter: https://gitter.im/ActiveState/Komodo

Forums: http://community.komodoide.com/

Bug Tracker: https://github.com/ActiveState/OpenKomodoIDE/issues

IRC: irc://irc.mozilla.org/#komodo

Services

Komodo IDE has several remote services that are required to get the full functionality out of program.

Building Komodo

Note that these are simplified steps of the building process, for a more in-depth guide check (outdated) BUILD.txt.

Building on Windows

Prerequisites

  • Python >=2.7 (but not Python 3.x yet). You can install ActivePython from here.

  • Visual C++ 11.0 (aka Visual Studio 2012) and all the Platform SDKs for building Mozilla with vc11 as described here.

  • Install version 1.9.0 of "MozillaBuild-$ver.exe" package into the default dir (i.e. "C:\mozilla-build").

    • Once installed remove the wget and hg directories
    • Download version 2.2.0 and install it to a temp directory, then copy the wget directory from 2.2 to the 1.9 install directory
  • Install the Perl <= 5.22

  • Install Mercurial

See http://www.devdoc.net/web/developer.mozilla.org/en-US/docs/Windows_Build_Prerequisites.html for more details on Windows build prerequisites. However, following the above steps is meant to be sufficient to get Komodo building.

Building Steps

  • Checkout Komodo: git clone https://github.com/ActiveState/OpenKomodoIDE.git

  • Using the command line, enter your checkout directory and run:

     cd mozilla
     setenv-moz-msvc11.bat
     python build.py configure -k 11.10
     python build.py distclean all
    

    This will configure and build mozilla and can take anywhere from 30 minutes to several hours to complete (depending on your specs). For most modern machines it should be about an hour.

  • After mozilla is built successfully go back to the main repo directory and build komodo:

     cd ..
     set PATH=util\black;%PATH%
     bk configure -V 11.10.0-devel # --without-binary-dbgp-clients
     bk build
    

    This should take significantly less time than building Mozilla.

  • Once the build has completed you can simply run Komodo by executing bk run

Upon making any modifications to the source you will again have to run bk build, or simply bk build && bk run to quickly get back into Komodo. Subsequent builds should be a lot faster as much of the compiled data is cached.

Building on Mac

Mac Prerequisites

  • Python >=2.7 (but not Python 3.x yet). You can install ActivePython from here.

    If you prefer the Python builds from python.org should be sufficient as well.

  • Xcode 6.4(SDK 10.9 & 10.10). For 8.0 see below. You can get version 6.4 from the developer downloads site.

  • MacOSX10.10.sdk or older

  • IDE ONLY SDK 10.8 for Code Intel. Can be found in Xcode 5.1.1

  • If you have/need other versions of Xcode installed then you can use xcode-select to change the active Xcode:

    $ xcode-select -s /Path/To/Xcode\ 6.4.app/

  • Xcode Command Line Tools.

    Open the Xcode preferences, then in the Downloads tab, select and install the Command Line Tools.

  • MacPorts. (Note: Fink may work too but most of the build testing and instructions is done with MacPorts.)

  • autoconf v2.13. Once you have MacPorts installed you need just run sudo port install autoconf213

  • ensure you are using clang or gcc 4.2 (or higher)

See http://www.devdoc.net/web/developer.mozilla.org/en-US/docs/Mac_OS_X_Build_Prerequisites.html for more details on Mac OS X build prerequisites. However, following the above steps is meant to be sufficient to get Komodo building.

Xcode 8 Prerequisites

Officially we do not support Xcode 8, however it is possible to build Komodo under Xcode 8 using a new extra steps.

  • Copy over the 10.8 and 10.9 SDK's from an older XCode install, they should be in: Xcode.app/Contents/Developer/Platforms/macOSX.platform/
  • Set MinimumSDKVersion to 10.9 in Xcode.app/Contents/Developer/Platforms/macOSX.platform/Info.plist
  • Ensure you are using ccache 3.1 (later versions will break)
  • Configure Mozilla with --options=disable-webrtc

Building Steps

  • Checkout Komodo: git clone https://github.com/ActiveState/OpenKomodoIDE.git

  • Using the terminal, enter your checkout directory and run:

     1) cd komodo/mozilla
    
     2) python build.py configure -k 10.10
    
     3) python build.py all
    
        or
    
        python build.py distclean all
        (to delete and re-download Mozilla again)
    

    This will configure and build mozilla and can take anywhere from 30 minutes to several hours to complete (depending on your specs). For most modern machines it should be about an hour.

** Building with GCC 5.0 and higher **

If you are using GCC 5.0, the build may fail. If it does, there are changes that need to be made to two files. However, if you are running a clean build for the first time, you need to allow this part of the build to fail first. This is because the files are in the Mozilla part of the build which has to be downloaded first.

These files need to be changed:
  1. /Komodo/mozilla/build/moz3500-ko9.10/mozilla/configure.in
 @@ -7509,8 +7509,6 @@
 eval $(CXX="$CXX" HOST_CXX="$HOST_CXX" $PYTHON -m mozbuild.configure.libstdcxx)
 AC_SUBST(MOZ_LIBSTDCXX_TARGET_VERSION)
 AC_SUBST(MOZ_LIBSTDCXX_HOST_VERSION)
+   CXXFLAGS="$CXXFLAGS -D_GLIBCXX_USE_CXX11_ABI=0"
+   HOST_CXXFLAGS="$HOST_CXXFLAGS -D_GLIBCXX_USE_CXX11_ABI=0"
fi

See bug #1153109 in Mozilla's bug database for more information.

  1. /Komodo/mozilla/build/moz3500-ko9.10/mozilla/dom/ipc/Blob.cpp
@@ -3874,7 +3874,7 @@
// Make sure we can't overflow.
if (NS_WARN_IF(UINT64_MAX - aLength < aStart)) {
  ASSERT_UNLESS_FUZZING();
-    return nullptr;
+    return false;
}

ErrorResult errorResult;
@@ -3883,7 +3883,7 @@

if (NS_WARN_IF(aStart + aLength > blobLength)) {
  ASSERT_UNLESS_FUZZING();
-    return nullptr;
+    return false;
}

See Porting to GCC 5 for more information.

  • After mozilla is built successfully, go back to the main repo directory and build komodo:

     cd ..
     export PATH=`pwd`/util/black:$PATH   # Komodo's "bk" build tool
     git submodule update --init
     git submodule update --remote
     bk configure -V 10.10.0-devel
     bk build
    

    This should take significantly less time than building Mozilla.

  • Once the build has completed you can simply run Komodo by executing bk run

Upon making any modifications to the source you will again have to run bk build, or simply bk build && bk run to quickly get back into Komodo. Subsequent builds should be a lot faster as much of the compiled data is cached.

Building on Linux

Linux instructions

Building with Docker

The easiest way to get started is to use our Docker image, this will basically provide you with a Ubuntu 12.04 based build of Komodo.

After cloning the repository simply navigate into {repo}/util/docker and check out ./docklet --help

To use the docker image you need to of course have Docker installed as well as have X11 forwarding enabled in your SSH client (should work by default on most linux distros).

Prepare Docker Image

  • Build the docker image: ./util/docker/docklet image
  • Start your container: ./util/docker/docklet start
  • SSH into your container to start working: ./util/docker/docklet ssh

Your project files will be mounted at /komodo/dev

NOTE - if you are updating from a previous version where your project files were at /root/komodo you will need to fix permissions on your Komodo project and profile folders. Ie:

chown -R <my-username>:<my-group> <my-project-location>
chown -R <my-username>:<my-group> ~/.komodoide

You will also need to redo your build (distclean mozilla and komodo).

Building Steps

Once your image is prepared you can follow the building steps for linux as described above. You will be running these from the docker container, so ssh into it using the command above and then run the commands from /komodo/dev

Running

Once your build is complete you exit out of the container (exit) and can then run Komodo with

./util/docker/docklet run

To rebuild Komodo (after making changes) and run it again you can use

./util/docker/docklet build run

If your changes are not being reflected you may need to clean your build, to do this use

./util/docker/docklet clean

Or to do it all at once (clean, build and run)

./util/docker/docklet clean build run

Building Complications

If any errors occur during your first built-time and it is not obvious how to fix the issue on your own please refer to the Help section on how to get in contact with us.

Note that if building complications arise after you updated your repo with the latest changes you might need to clear your local cache as it might be conflicting with the new changes, to do this run bk distclean before running your build steps.

Pro-Tips

Build a single piece

Sometimes bk build is too much and bk build quick isn't enough. If bk build quick doesn't appear to pickup your changes, try pointing bk build at the piece in question.

Example

bk build build/release/modules/places #this will build the places module only

NOTE: Do not rely on this method as bk build quick is faster and in some cases does some steps that the above example won't perform. Use it as a last ditch effort before you try bk distclean && bk build.


openkomodoide's People

Contributors

andrewd-activestate avatar naatan avatar th3coop avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

openkomodoide's Issues

Unexpected "Value Error" error message in build.py

Specs:

OS: Pop!_OS 20.04 LTS x86_64
Host: HP Pavilion Laptop 15-cs3xxx
Kernel: 5.17.5-76051705-generic
Uptime: 1 hour, 37 mins
Packages: 3481 (dpkg), 23 (flatpak), 17 (snap)
Shell: bash 5.0.17
Resolution: 1920x1080
DE: GNOME
WM: Mutter
WM Theme: Pop
Theme: Pop-dark [GTK2/3]
Icons: Pop [GTK2/3]
Terminal: gnome-terminal
CPU: Intel i7-1065G7 (8) @ 3.900GHz
GPU: Intel Iris Plus Graphics G7
GPU: NVIDIA GeForce MX250
Memory: 3582MiB / 15785MiB

After cloning the repository and attempting to run the build.py script in mozilla/, I get this error message:

>>python build.py configure --gcc gcc --gxx g++-4.9 -k 12.10

/usr/lib/python3/dist-packages/requests/__init__.py:89: RequestsDependencyWarning: urllib3 (1.26.9) or chardet (3.0.4) doesn't match a supported version!
  warnings.warn("urllib3 ({}) or chardet ({}) doesn't match a supported "
  File "build.py", line 120
    except ValueError, ex:
                     ^
SyntaxError: invalid syntax

Docker Build Not Working?

On Kubuntu 22.04 I ran:

 chmod +x ./util/docker/docklet
 ./util/docker/docklet image

Then I saw:
...

Step 11/21 : RUN easy_install pyOpenSSL ndg-httpsclient pyasn1
---> Running in 2c6744131a1b
Searching for pyOpenSSL
Reading https://pypi.python.org/simple/pyOpenSSL/
Couldn't find index page for 'pyOpenSSL' (maybe misspelled?)
Scanning index of all packages (this may take a while)
Reading https://pypi.python.org/simple/
No local packages or working download links found for pyOpenSSL
error: Could not find suitable distribution for Requirement.parse('pyOpenSSL')
The command '/bin/sh -c easy_install pyOpenSSL ndg-httpsclient pyasn1' returned a non-zero code: 1

C:\Program Files (x86)\ActiveState Komodo IDE 12\lib\support\dbgp\bin\py3_dbgp.py:179: DeprecationWarning: Use setlocale(), getencoding() and getlocale() instead codeset = locale.getdefaultlocale()[1] C:\Program Files (x86)\ActiveState Komodo IDE 12\lib\support\dbgp\bin\py3_dbgp.py:148: DeprecationWarning: Use setlocale(), getencoding() and getlocale() instead codeset = locale.getdefaultlocale()[1]

Hi There,

Setting up Komodo IDE 12 on a new Win11 PC and get this warning in the output window of a python3 "hello world."

C:\Program Files (x86)\ActiveState Komodo IDE 12\lib\support\dbgp\bin\py3_dbgp.py:179: DeprecationWarning: Use setlocale(), getencoding() and getlocale() instead
  codeset = locale.getdefaultlocale()[1]
C:\Program Files (x86)\ActiveState Komodo IDE 12\lib\support\dbgp\bin\py3_dbgp.py:148: DeprecationWarning: Use setlocale(), getencoding() and getlocale() instead
  codeset = locale.getdefaultlocale()[1]

Any way to solve or silence this nuisance error?

Randy

windows installer broken

MSI throws error dialog: This installation package could not be opened. Contact application vendor to verify that this is a valid Windows installer package.

OSX Build Error: OSError: error running 'unzip -q -d macosx macosx.zip': 9

When following the readme's instructions to build on my mac i get an error during build.py configure where it is unable to unzip the prebuilt zip because the files seem to be git LFS pointers. The readme does not mention any lfs requirement or steps to download those zipfiles. How can I download those zipfiles so I can build komodo?

Steps to reproduce

  • python2.7 build.py configure -k 10.10

Exception

target: configure
/bin/sh: svnversion: command not found
build: warning: Failed to get changenum, using 0 instead
unzipping prebuilt python in `prebuilt/python2.7/macosx'
[macosx.zip]
  End-of-central-directory signature not found.  Either this file is not
  a zipfile, or it constitutes one disk of a multi-part archive.  In the
  latter case the central directory and zipfile comment will be found on
  the last disk(s) of this archive.
unzip:  cannot find zipfile directory in one of macosx.zip or
        macosx.zip.zip, and cannot find macosx.zip.ZIP, period.
Traceback (most recent call last):
  File "build.py", line 2910, in <module>
    sys.exit( main(sys.argv) )
  File "build.py", line 2906, in main
    return build(args)
  File "build.py", line 2730, in build
    newArgv = targetFunc(argv)
  File "build.py", line 1297, in target_configure
    dirname(prebuiltDir), log.debug)
  File "build.py", line 214, in _run_in_dir
    _run(cmd, logstream=None)
  File "build.py", line 196, in _run
    raise OSError("error running '%s': %r" % (cmd, status))
OSError: error running 'unzip -q -d macosx macosx.zip': 9

corrupted remote file names - a date appended in front of file/directory name

Hello Support,

I have moved today from Mojave/KomodoEdit6.1 to Catalina/KomodoEdit12.0

Unfortunately when i use the new version of KomodoEdit I have no more access to remote files on the remote server because a date is appended to files names.
The 12.0 version Komodo is still able to access the remote directory using the default path (/home/www/htdocs) and that version is still able to list the directory content. So the communication with the server is OK.
The problem is : the name of files or subdirectories listed are corrupted (not correct) !
A date/time is concatenated before the expected name.

Do you know how to fix that ?

Here is a screen dump showing the problem.
Capture d’écran 2024-01-16 à 16 50 04

For example, as you can see:
i get a time and a name such as “11:13 wapiSnif” instead of what i am expecting “wapiSnif”
or i get a year and a name such as “2015 callnshare” instead of “callnshare”

If have searched on a remote terminal and it appears to me that the appended date is corresponding to the previous field of the filename in the ls command !!!
Below is what I can collect from a terminal on the remote server:

ls -al |grep -e wapiSnif -e callnshare
drwxrwxr-x 5 www www 4096 27 nov. 2015 callnshare
drwxr-xr-x 6 www www 4096 7 nov. 11:13 wapiSnif

Thank you for helping.

"Login failed, it appears you are offline." on first startup when logging in

I just installed Komodo and on first startup, it requires me to log in.

When entering my user and password, I get the message shown below ("Login failed, it appears you are offline.").

image

The log under C:\Users\<user>\AppData\Local\ActiveState\KomodoIDE\12.0\pystderr.log shows:

The certificate is not trusted because the issuer certificate is unknown.

I am behind a corporate firewall & proxy with a corporate root CA certificate.

I am including pystderr.log here (with sensitive information stripped out):

pystderr.log

"Let's Get Started" hung at launch

Mac OS 13 and 13.1, Komodo IDE 12 build 91869 - can't get past the welcome screen, it's just transparent and the menu is empty.
I'm not familiar with debugging on Mac but I found an error in the console.

RBSStateCapture remove item called for untracked item 579-544-1652 (target:[app<application.com.activestate.KomodoIDE.20343506.20345614(501)>:3466])

image

Ruby Interactive Shell

The Ruby interactive shell crushes. It seems that ruby cannot find "ruby-debug-base" package.

On MacOS X Ventura Komodo windows are transparent

I downloaded Komodo-IDE-12.0.1-91869-macosx-x86_64.dmg and installed Komodo from scratch.

When I launch it under MacOS X Ventura 13.1 all Komodo windows are transparent. Am I the only one having this problem?

2023-01-31_10-18-52

Komodo/codeintel repo doesn't exist anymore

I'm doing some experimentation in creating a Flatpak out this, but found a roadblock.

One of the git submodules critical to build the IDE listed on .gitmodules does not exist anymore: [email protected]:Komodo/codeintel.git

I found that someone ported the codeintel to a standalone pylib, but does not know if that is meant to replace this git submodule from ActiveState or not, or if it works with the codeintel from KomodoEdit repo, that happens not to be a submodule anymore.

Right now, the build system as is, is broken.

Demanding Activestate Development Platform but won't allow login

Just tried to install on a new machine. On first use it demands that I sign into my Activestate development platform. Not sure why that is since this is no longer an Activestate product. But I created and account, then tried to sign in and it said I was apparently not online. However, I am online as proved by the fact that I am sending this message. What to do?

State Tool Error

When opening a file, I get the error State tool install failed. Please contact ActiveState support or review your logs. also getting the error Update XML file malformed (200) when checking for updates

image

image

Can't build/install on Ubuntu

I am trying to follow the installation instructions:
I've installed prerequisites for Ubuntu (Ubuntu 20.04.5 LTS).
Then, rand the python build configure command and it gives me an error.
I've found linux-x86_64.zip in the repo dir, tried to "unzip -t linux-x86_64.zip" but it gave me an error, so I've looked inside of it: "less linux-x86_64.zip" and it has only text "Archive: prebuilt/python2.7/linux-x86_64.zip" inside.

How can I solve it?

user:/tmp/1/OpenKomodoIDE/mozilla$ python2 build.py configure -k 10.10
target: configure
/bin/sh: 1: svnversion: not found
build: warning: Failed to get changenum, using 0 instead
unzipping prebuilt python in `prebuilt/python2.7/linux-x86_64'
[linux-x86_64.zip]
  End-of-central-directory signature not found.  Either this file is not
  a zipfile, or it constitutes one disk of a multi-part archive.  In the
  latter case the central directory and zipfile comment will be found on
  the last disk(s) of this archive.
unzip:  cannot find zipfile directory in one of linux-x86_64.zip or
        linux-x86_64.zip.zip, and cannot find linux-x86_64.zip.ZIP, period.
Traceback (most recent call last):
  File "build.py", line 2910, in <module>
    sys.exit( main(sys.argv) )
  File "build.py", line 2906, in main
    return build(args)
  File "build.py", line 2730, in build
    newArgv = targetFunc(argv)
  File "build.py", line 1297, in target_configure
    dirname(prebuiltDir), log.debug)
  File "build.py", line 214, in _run_in_dir
    _run(cmd, logstream=None)
  File "build.py", line 196, in _run
    raise OSError("error running '%s': %r" % (cmd, status))
OSError: error running 'unzip -q -d linux-x86_64 linux-x86_64.zip': 9

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.