RustDT is an Eclipse based IDE for the Rust programming language:

Related tags

IDEs rust eclipse ide
Overview

Project website: http://rustdt.github.io/

As of 2017, RustDT is no longer actively maintained, see this blog post for more information. If you are interested in contributing, you can for now fork the project - and there should be enough information here detailing how to build, test, release, etc.

--

Build Status Gitter

Developers Guide

Building the IDE:

You will need Maven for building RustDT.

  • To build, run mvn clean verify at the root of the repository. This will run the test suite, and afterwards produce a p2 repository (an Eclipse Software Site) at bin-maven/features.repository/repository.
  • To just build without running tests, invoke mvn clean package.

Setting up a development environment:

  • You need Eclipse PDE to develop Eclipse plugins. Download and start it.
  • Clone the Git repository.
  • In Eclipse, click "File / Import... ", and then "General / Existing projects into workspace". Select the Git repository folder as the "root directory", enable "Search for nested projects", and select all the Eclipse projects that show up. Click finish to import those projects.

  • Note: The actual project names will be different from those in the screenshot above.
    • Note: Java compiler settings will be automatically configured, since Eclipse compiler settings are stored in source version control.
  • Setup the target platform. Unfortunately due to limitations in Tycho/PDE tooling (more info) some manual steps are required:
    1. Open a shell on target-platform/ and run mvn package. This should create a deps-repository/repository directory.
    2. Copy the target platform file: target-platform/IDE-base.target to target-platform/IDE-gen.target. (this last filename is already git-ignored).
    3. Open target-platform/IDE-gen.target in Eclipse, so that it opens under the PDE editor.
    4. Click "Add", then select "Software Site".
    5. On the "Add Software Site" dialog, click "Add...", then "Local...", navigate to Git repo directory, then choose the target-platform/deps-repository/repository directory.
    6. On the "Add Software Site" dialog, the new repository should be selected. Click "Select All" to select all deps, then click "Finish". It should look more or less like this:
  1. Then finally click "Set as Target Platform".
  • Build the workspace ( "Project / Build All"). Everything should build fine now, there should be no errors.
  • To start the IDE from your workspace: Open "Run / Run Configurations ...". Click on "Eclipse Application" to create a new launch for the plugins in your workspace. The default new configuration that is created should already be ready to be launched.
  • Additional tip: Locate the bin-maven folder in the top-level project, open its Properties from the Project Explorer context menu, and mark that directory as "Derived" in the "Resources" property page. This will prevent those folder resources to appear in UI operations such as "Open Resource" for example.

Creating and deploying a new release:

A release is a web site with an Eclipse p2 update site. The website may contain no web pages at all, rather it can be just the p2 site. To create and deploy a new release:

  1. Ensure the version numbers of all plugins/features/etc. are properly updated, if they haven't been already.
  2. Run mvn clean verify to perform the Tycho build (see section above). Ensure all tests pass.
  • To create a signed release the sign-build Maven profile must be activated, and the required properties set.
  1. Create and push a new release tag for the current release commit.
  2. Go to the Github releases page and edit the newly present release. Add the corresponding (ChangeLog.md) entries to the release notes.
  3. Locally, run ant -f releng/ CreateProjectSite. This last step will prepare the project web site under bin-maven/ProjectSite.
  4. To actually publish the project site, run ant -f releng/ PublishProjectSite -DreleaseTag=<tagName>. What happens here is that the whole project site will be pushed into a Git repository, to then be served in some way (for example Github Pages). If projectSiteGitURL is not specified, the default value in releng-build.properties will be used.
  • For more info on the Release Engineering script, run ant -f releng/, this will print the help.
  1. A branch or tag named latest should also be created in Github, pointing to the latest release commit. The previous latest tag can be deleted/overwritten. The documentation pages use this tag/branch in their links.

Project design info and notes

LangEclipseIDE

This project uses the LangEclipseIDE framework, which is designed to have its source embedded in the host IDE. See this section for more info on how this should be managed.

Extensive Compile-Time type and contract checking

See https://github.com/bruno-medeiros/MelnormeEclipse/wiki/Extensive-Compile-Time-Checking for more info on this principle.

Code style:

  • Indent with tabs (tab size is 4 spaces)
  • Max line width: 120
  • Block style:
    if(foo.blah()) {
        doThis();
    }
  • Indentation for function arguments: 1 indent unit (= 1 tab):
    foo(one, two, three,
        four, five, six);

There is also an Eclipse formatter profile settings file you can use, although you are not obliged to format with all rules of that formatter settings. If you make a minor source change, don't format the whole file, but only around the changes you are contributing.

Unit tests double-method wrapper:

This code idiom is often used in this project's JUnit tests:

@Test
public void testXXX() throws Exception { testXXX$(); }
public void testXXX$() throws Exception {

This is donely solely as an aid when debugging code, so that the "Drop to frame" functionality can be used on the unit-test method. It seems the Eclipse debugger (or the JVM) cannot drop-to-frame to a method that is invoked dynamically (such as the unit-test method). So we wrap the unit-test method on another one. So while we now cannot drop-to-frame in testXXX, we can do it in testXXX$, which basically allows us to restart the unit-test.

TODO: investigate if there is an alternate way to achieve the same. I haven't actually checked that.

Comments
  • Can't build project (Could not execute process `rustc -vV` (never executed))

    Can't build project (Could not execute process `rustc -vV` (never executed))

    Hello! I am having a problem on build:

    ************  Building Rust workspace  ************
    -------   Building Rust project: krpc-rs  -------
    >> Running: /usr/local/bin/cargo build
    Could not execute process `rustc -vV` (never executed)
    
    Caused by:
      No such file or directory (os error 2)
      ^^^ Terminated, exit code: 101 ^^^
    ************  Build terminated.  ************
    

    I think cargo can't see rustc, which is strange, because they are in the same directory. Any ideas on how fix this? :disappointed:

    opened by idmitrievsky 41
  • unable to create run or debug configurations

    unable to create run or debug configurations

    Using RustDT 0.2.0.v201504232210

    After creating a new rust project and pressing the "Run" or "Debug" button I get a message dialog that there is no configuration:

    Unable To Launch
    The selecton cannot be launched, and there are no recent launches.
    

    Since RustDT is using cargo anyways it could just create a configuration just calling cargo run. For "Debug" it should start a debugger.

    When I manually try to create a run configuration there is the field "Program path" where I should add an existing file. I have several problems with that:

    1. I cannot enter an absolute path e.g. to /usr/local/bin/cargo. Only project relative paths are allowed.
    2. It only accepts executable files. But I don't have executable files in my project (yet).
    opened by genodeftest 20
  • Dubugging with RustDT + Windows 7 64Bit + TDM-GCC-64 GDB

    Dubugging with RustDT + Windows 7 64Bit + TDM-GCC-64 GDB

    Hi, im trying to start developing with Rust/Eclipse. Until now i have used Visual Studio (C#) and MPLAB X (C).

    I have following Setup -Windows 7 64Bit -Eclipse IDE for Java Developers 4.5.0 -rust-1.3.0-x86_64 + Source -jre-8u60-windows-x64 -racer-master compiled on a different pc because issues with cargo source downloads -Recent RustDT (last couple of days) from Install new software http://rustdt.github.io/releases/

    Rust Installation: Directory: C:\Program Files\Rust stable 1.3
    SRC: C:\RustProjects\rustc-1.3.0\src Racer Executable: D:\Toolchains\Rust\racer-master\target\release\racer.exe

    Debug Configuration: GDB debugger: C:\TDM-GCC-64\bin\gdb.exe

    PATH Variable: C:\ProgramData\Oracle\Java\javapath;............;"C:\Program Files\Rust stable 1.3\bin";C:\MinGW\bin

    (I have MinGW and TDM (32 Bit + 64 Bit) installed, but TDM is not in the PATH, MinGW is 32Bit Version I think)

    Problem: I can create a new project, code completion works, I can compile and start it. As soon as I try to start to debug once, I get:

    ==================== Starting Rust build ==================== ************ Building Rust project: RustTest ************

    Running: "C:\Program Files\Rust stable 1.3\bin\cargo.exe" build ^^^ Terminated, exit code: 0 ^^^ Running: "C:\Program Files\Rust stable 1.3\bin\cargo.exe" test --no-run ^^^ Terminated, exit code: 0 ^^^ ************ Build terminated. ************

    once that has happened Running Build without debugging will also not work anymore until reboot.

    opened by accept86 17
  • Rust error format updates and IDE support

    Rust error format updates and IDE support

    We've been working to create a new error output format. These initial tests have gone well, and we're currently discussing making this the default error format. Once this switch is thrown, there are still some weeks before this gets released in a stable release. We hope to make the transition as smooth as possible for IDE plugins.

    The PR mentioned above also enables a supported JSON output mode that contains the information used in the error message. We're hoping this mode will give plugins more options to choose from for how the support errors.

    Feel free to jump in on the thread if this impacts your plugin, and let us know how we can help.

    opened by jntrnr 16
  • feature request: support `cargo test`

    feature request: support `cargo test`

    to run cargo test you need to add an external tool and give it the exact path to cargo.exe. It would be very comfortable to have a Rust Test target that can be created like an Rust Application target.

    opened by oli-obk 12
  • Debugging not working on Eclipse 4.5 Mars

    Debugging not working on Eclipse 4.5 Mars

    Install: Windows 7 x64 Eclipse 4.5 x64 Cygwin x64 with gdb 7.8 Add cygwin bin folder to PATH

    Steps

    1. Create hello world project 'rust1' (C:\Users\okushnir\Desktop\workspace_tst\rust1):
    2. Add file src/main.rs with code:
    // This code is editable and runnable!
    fn main() {
        // A simple integer calculator:
        // `+` or `-` means add or subtract by 1
        // `*` or `/` means multiply or divide by 2
    
        let program = "+ + * - /";
        let mut accumulator = 0;
    
        for token in program.chars() {
            match token {
                '+' => accumulator += 1,
                '-' => accumulator -= 1,
                '*' => accumulator *= 2,
                '/' => accumulator /= 2,
                _ => { /* ignore everything else */ }
            }
        }
    
        println!("The program \"{}\" calculates the value {}",
                  program, accumulator);
    }
    
    
    1. Build project, add breakpoint to line 8
    2. Run application in the debug mode

    Actual result:

    In Console view:

    GNU gdb (GDB) 7.8 Copyright (C) 2014 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later http://gnu.org/licenses/gpl.html This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. Type "show copying" and "show warranty" for details. This GDB was configured as "x86_64-pc-cygwin". Type "show configuration" for configuration details. For bug reporting instructions, please see: http://www.gnu.org/software/gdb/bugs/. Find the GDB manual and other documentation resources online at: http://www.gnu.org/software/gdb/documentation/. For help, type "help". Type "apropos word" to search for commands related to "word". No source file named C:\Users\okushnir\Desktop\workspace_tst\rust1\src\main.rs. [New Thread 1152.0x3fb8]

    Temporary breakpoint 2, 0x0000000000401dc8 in main ()

    In Debug view:

    1. Threads tree is closed
    2. When I'm clicking on app node 'rust1' then error appear:

    An internal error has occurred. org.eclipse.cdt.dsf.gdb.internal.ui.actions.GdbRestartCommand.>(Lorg/eclipse/cdt/dsf/service/DsfSession;Lorg/eclipse/cdt/dsf/gdb/launching/GdbLaunch;)V

    In GDB traces console view:

    467,885 2-gdb-version
    467,887 ~"GNU gdb (GDB) 7.8\n"
    467,887 ~"Copyright (C) 2014 Free Software Foundation, Inc.\n"
    467,887 ~"License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>\nThis is fre\
    e software: you are free to change and redistribute it.\nThere is NO WARRANTY, to the extent permitt\
    ed by law.  Type \"show copying\"\nand \"show warranty\" for details.\n"
    467,887 ~"This GDB was configured as \"x86_64-pc-cygwin\".\nType \"show configuration\" for configur\
    ation details."
    467,887 ~"\nFor bug reporting instructions, please see:\n"
    467,888 ~"<http://www.gnu.org/software/gdb/bugs/>.\n"
    467,888 ~"Find the GDB manual and other documentation resources online at:\n<http://www.gnu.org/soft\
    ware/gdb/documentation/>.\n"
    467,888 ~"For help, type \"help\".\n"
    467,888 ~"Type \"apropos word\" to search for commands related to \"word\".\n"
    467,888 2^done
    467,888 (gdb) 
    467,889 3-environment-cd C:/Users/okushnir/Desktop/workspace_tst/rust1
    467,890 3^done
    467,890 (gdb) 
    467,890 4-gdb-set breakpoint pending on
    467,891 4^done
    467,891 (gdb) 
    467,891 5-gdb-set detach-on-fork on
    467,892 5^done
    467,892 (gdb) 
    467,892 6-enable-pretty-printing
    467,893 6^done
    467,893 (gdb) 
    467,893 7-gdb-set python print-stack none
    467,894 7^done
    467,894 (gdb) 
    467,894 8-gdb-set print object on
    467,895 8^done
    467,895 (gdb) 
    467,895 9-gdb-set print sevenbit-strings on
    467,896 9^done
    467,896 (gdb) 
    467,896 10-gdb-set host-charset UTF-8
    467,897 10^done
    467,897 (gdb) 
    467,897 11-gdb-set target-charset WINDOWS-1251
    467,898 11^done
    467,898 (gdb) 
    467,898 12-gdb-set target-wide-charset UTF-16
    467,899 12^done
    467,899 (gdb) 
    467,899 13-gdb-set dprintf-style call
    467,900 13^done
    467,900 (gdb) 
    467,900 14source .gdbinit
    467,901 &"source .gdbinit\n"
    467,901 &".gdbinit: No such file or directory.\n"
    467,901 14^error,msg=".gdbinit: No such file or directory."
    467,901 (gdb) 
    467,902 15-gdb-set target-async off
    467,903 15^done
    467,903 (gdb) 
    467,903 16-gdb-set auto-solib-add on
    467,904 16^done
    467,904 (gdb) 
    467,904 17-file-exec-and-symbols --thread-group i1 C:/Users/okushnir/Desktop/workspace_tst/rust1/tar\
    get/debug/calc.exe
    467,952 17^done
    467,952 (gdb) 
    467,953 18-gdb-show --thread-group i1 language
    467,954 18^done,value="auto"
    467,954 (gdb) 
    467,954 19-gdb-set --thread-group i1 language c
    467,955 19^done
    467,955 (gdb) 
    467,955 20-interpreter-exec --thread-group i1 console "p/x (char)-1"
    467,956 ~"$1 = 0xff\n"
    467,957 20^done
    467,957 (gdb) 
    467,957 21-data-evaluate-expression --thread-group i1 "sizeof (void*)"
    467,958 21^done,value="8"
    467,958 (gdb) 
    467,958 22-gdb-set --thread-group i1 language auto
    467,959 22^done
    467,959 (gdb) 
    467,959 23-interpreter-exec --thread-group i1 console "show endian"
    467,960 ~"The target endianness is set automatically (currently little endian)\n"
    467,960 23^done
    467,960 (gdb) 
    467,961 24-list-thread-groups
    467,962 24^done,groups=[{id="i1",type="process",executable="/cygdrive/c/Users/okushnir/Desktop/works\
    pace_tst/rust1/target/debug/calc.exe"}]
    467,962 (gdb) 
    467,962 25-break-insert -f C:\\Users\\okushnir\\Desktop\\workspace_tst\\rust1\\src\\main.rs:7
    467,965 &"No source file named C:\\\\Users\\\\okushnir\\\\Desktop\\\\workspace_tst\\\\rust1\\\\src\\\
    \\main.rs.\n"
    467,965 25^done,bkpt={number="1",type="breakpoint",disp="keep",enabled="y",addr="<PENDING>",pending=\
    "C:\\\\Users\\\\okushnir\\\\Desktop\\\\workspace_tst\\\\rust1\\\\src\\\\main.rs:7",times="0",origina\
    l-location="C:\\\\Users\\\\okushnir\\\\Desktop\\\\workspace_tst\\\\rust1\\\\src\\\\main.rs:7"}
    467,965 (gdb) 
    467,966 26-break-insert -t -f main
    467,967 26^done,bkpt={number="2",type="breakpoint",disp="del",enabled="y",addr="0x0000000000401dc8",\
    at="<main+8>",thread-groups=["i1"],times="0",original-location="main"}
    467,967 (gdb) 
    467,970 27-exec-run --thread-group i1
    467,975 =thread-group-started,id="i1",pid="2244"
    467,976 28-list-thread-groups --available
    467,976 =thread-created,id="1",group-id="i1"
    467,976 ~"[New Thread 2244.0x5394]\n"
    467,976 27^running
    467,976 *running,thread-id="all"
    467,976 (gdb) 
    467,996 =library-loaded,id="/cygdrive/c/Windows/SYSTEM32/ntdll.dll",target-name="/cygdrive/c/Windows\
    /SYSTEM32/ntdll.dll",host-name="/cygdrive/c/Windows/SYSTEM32/ntdll.dll",symbols-loaded="0",thread-gr\
    oup="i1"
    467,997 =library-loaded,id="/cygdrive/c/Windows/system32/kernel32.dll",target-name="/cygdrive/c/Wind\
    ows/system32/kernel32.dll",host-name="/cygdrive/c/Windows/system32/kernel32.dll",symbols-loaded="0",\
    thread-group="i1"
    467,998 =library-loaded,id="/cygdrive/c/Windows/system32/KERNELBASE.dll",target-name="/cygdrive/c/Wi\
    ndows/system32/KERNELBASE.dll",host-name="/cygdrive/c/Windows/system32/KERNELBASE.dll",symbols-loade\
    d="0",thread-group="i1"
    467,998 =library-loaded,id="/cygdrive/c/Windows/system32/ADVAPI32.dll",target-name="/cygdrive/c/Wind\
    ows/system32/ADVAPI32.dll",host-name="/cygdrive/c/Windows/system32/ADVAPI32.dll",symbols-loaded="0",\
    thread-group="i1"
    467,998 =library-loaded,id="/cygdrive/c/Windows/system32/msvcrt.dll",target-name="/cygdrive/c/Window\
    s/system32/msvcrt.dll",host-name="/cygdrive/c/Windows/system32/msvcrt.dll",symbols-loaded="0",thread\
    -group="i1"
    467,998 =library-loaded,id="/cygdrive/c/Windows/SYSTEM32/sechost.dll",target-name="/cygdrive/c/Windo\
    ws/SYSTEM32/sechost.dll",host-name="/cygdrive/c/Windows/SYSTEM32/sechost.dll",symbols-loaded="0",thr\
    ead-group="i1"
    467,999 =library-loaded,id="/cygdrive/c/Windows/system32/RPCRT4.dll",target-name="/cygdrive/c/Window\
    s/system32/RPCRT4.dll",host-name="/cygdrive/c/Windows/system32/RPCRT4.dll",symbols-loaded="0",thread\
    -group="i1"
    467,999 =library-loaded,id="/cygdrive/c/Windows/system32/SHELL32.dll",target-name="/cygdrive/c/Windo\
    ws/system32/SHELL32.dll",host-name="/cygdrive/c/Windows/system32/SHELL32.dll",symbols-loaded="0",thr\
    ead-group="i1"
    467,999 =library-loaded,id="/cygdrive/c/Windows/system32/SHLWAPI.dll",target-name="/cygdrive/c/Windo\
    ws/system32/SHLWAPI.dll",host-name="/cygdrive/c/Windows/system32/SHLWAPI.dll",symbols-loaded="0",thr\
    ead-group="i1"
    468,000 =library-loaded,id="/cygdrive/c/Windows/system32/GDI32.dll",target-name="/cygdrive/c/Windows\
    /system32/GDI32.dll",host-name="/cygdrive/c/Windows/system32/GDI32.dll",symbols-loaded="0",thread-gr\
    oup="i1"
    468,000 =library-loaded,id="/cygdrive/c/Windows/system32/USER32.dll",target-name="/cygdrive/c/Window\
    s/system32/USER32.dll",host-name="/cygdrive/c/Windows/system32/USER32.dll",symbols-loaded="0",thread\
    -group="i1"
    468,001 =library-loaded,id="/cygdrive/c/Windows/system32/LPK.dll",target-name="/cygdrive/c/Windows/s\
    ystem32/LPK.dll",host-name="/cygdrive/c/Windows/system32/LPK.dll",symbols-loaded="0",thread-group="i\
    1"
    468,001 =library-loaded,id="/cygdrive/c/Windows/system32/USP10.dll",target-name="/cygdrive/c/Windows\
    /system32/USP10.dll",host-name="/cygdrive/c/Windows/system32/USP10.dll",symbols-loaded="0",thread-gr\
    oup="i1"
    468,002 =library-loaded,id="/cygdrive/c/Windows/system32/USERENV.dll",target-name="/cygdrive/c/Windo\
    ws/system32/USERENV.dll",host-name="/cygdrive/c/Windows/system32/USERENV.dll",symbols-loaded="0",thr\
    ead-group="i1"
    468,002 =library-loaded,id="/cygdrive/c/Windows/system32/profapi.dll",target-name="/cygdrive/c/Windo\
    ws/system32/profapi.dll",host-name="/cygdrive/c/Windows/system32/profapi.dll",symbols-loaded="0",thr\
    ead-group="i1"
    468,002 =library-loaded,id="/cygdrive/c/Windows/system32/WS2_32.dll",target-name="/cygdrive/c/Window\
    s/system32/WS2_32.dll",host-name="/cygdrive/c/Windows/system32/WS2_32.dll",symbols-loaded="0",thread\
    -group="i1"
    468,003 =library-loaded,id="/cygdrive/c/Windows/system32/NSI.dll",target-name="/cygdrive/c/Windows/s\
    ystem32/NSI.dll",host-name="/cygdrive/c/Windows/system32/NSI.dll",symbols-loaded="0",thread-group="i\
    1"
    468,085 =library-loaded,id="/cygdrive/c/Windows/system32/IMM32.DLL",target-name="/cygdrive/c/Windows\
    /system32/IMM32.DLL",host-name="/cygdrive/c/Windows/system32/IMM32.DLL",symbols-loaded="0",thread-gr\
    oup="i1"
    468,095 =library-loaded,id="/cygdrive/c/Windows/system32/MSCTF.dll",target-name="/cygdrive/c/Windows\
    /system32/MSCTF.dll",host-name="/cygdrive/c/Windows/system32/MSCTF.dll",symbols-loaded="0",thread-gr\
    oup="i1"
    468,100 =breakpoint-modified,bkpt={number="2",type="breakpoint",disp="del",enabled="y",addr="0x00000\
    00000401dc8",at="<main+8>",thread-groups=["i1"],times="1",original-location="main"}
    468,100 ~"\nTemporary breakpoint "
    468,100 ~"2, 0x0000000000401dc8 in main ()\n"
    468,100 *stopped,reason="breakpoint-hit",disp="del",bkptno="2",frame={addr="0x0000000000401dc8",func\
    ="main",args=[]},thread-id="1",stopped-threads="all"
    468,100 =breakpoint-deleted,id="2"
    468,100 (gdb) 
    468,100 28^error,msg="Can not fetch data now."
    468,100 (gdb) 
    
    opened by fduch-stranger 10
  • [GDB] Breakpoints don't work -

    [GDB] Breakpoints don't work - "warning: can't find symbol"

    I'm tring RustDT to build a hellow world rust program. After followed the RustDT installation document instructions step by step, all staffs working well but set each break point in source file will cause a "No source file named /xxx/xxx/xxx/xxx.rs" message in the debugger console and debugger don't break. The file is actually exists in the path reported by console message.

    I have searched around 2 hours to find the same condition but there are no related information.

    Environment IS:

    • RustDT version:0.8.1.
    • Eclipse IDE for C/C++ Developers version: Neon.2 Release (4.6.2) Build id: 20161208-0600.
    • GDB version 7.12.1.

    Detailed outputs in application console:

    Running: /Users/charleslai/.cargo/bin/parse_describe RUST_PARSE_DESCRIBE 1.0 { MESSAGES { } Function { "main" { 2:0 6:1 } {} "()" {} } } ^^^ Terminated, exit code: 0 ^^^

    ************ Building Rust project: mytest ************

    Running build with: /usr/local/bin/cargo build Finished debug [unoptimized + debuginfo] target(s) in 0.0 secs ^^^ Terminated, exit code: 0 ^^^ ************ Build terminated. ************

    (exit value:0) mytest[Rust Application] mytest Hello, world 1!

    Detailed outputs in debugger console:

    GNU gdb (GDB) 7.12.1 Copyright (C) 2017 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later http://gnu.org/licenses/gpl.html This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. Type "show copying" and "show warranty" for details. This GDB was configured as "x86_64-apple-darwin15.6.0". Type "show configuration" for configuration details. For bug reporting instructions, please see: http://www.gnu.org/software/gdb/bugs/. Find the GDB manual and other documentation resources online at: http://www.gnu.org/software/gdb/documentation/. For help, type "help". Type "apropos word" to search for commands related to "word". warning: `/Volumes/Work/eclipse/rsprojects/mytest/target/debug/deps/mytest-5bd867ff21cd2ee4.0.o': can't open to read symbols: No such file or directory. warning: can't find symbol 'je_in_valgrind' in minsymtab warning: can't find symbol 'je_chunk_alloc_dss' in minsymtab warning: can't find symbol 'je_chunk_dss_boot' in minsymtab warning: can't find symbol 'je_chunk_dss_postfork_child' in minsymtab warning: can't find symbol 'je_chunk_dss_postfork_parent' in minsymtab warning: can't find symbol 'extent_tree_ad_destroy' in minsymtab warning: can't find symbol 'extent_tree_ad_destroy_recurse' in minsymtab warning: can't find symbol 'extent_tree_szad_destroy' in minsymtab warning: can't find symbol 'extent_tree_szad_destroy_recurse' in minsymtab warning: can't find symbol 'je_extent_tree_ad_empty' in minsymtab warning: can't find symbol 'je_extent_tree_ad_first' in minsymtab warning: can't find symbol 'je_bt_init' in minsymtab warning: can't find symbol 'je_opt_lg_prof_interval' in minsymtab warning: can't find symbol 'je_opt_lg_prof_sample' in minsymtab warning: can't find symbol 'je_opt_prof' in minsymtab warning: can't find symbol 'je_opt_prof_accum' in minsymtab warning: can't find symbol 'je_opt_prof_active' in minsymtab warning: can't find symbol 'je_opt_prof_final' in minsymtab warning: can't find symbol 'je_opt_prof_gdump' in minsymtab warning: can't find symbol 'je_opt_prof_leak' in minsymtab warning: can't find symbol 'je_opt_prof_thread_active_init' in minsymtab warning: can't find symbol 'je_prof_active_get' in minsymtab warning: can't find symbol 'je_prof_active_set' in minsymtab warning: can't find symbol 'je_prof_alloc_rollback' in minsymtab warning: can't find symbol 'je_prof_backtrace' in minsymtab warning: can't find symbol 'je_prof_boot0' in minsymtab warning: can't find symbol 'je_prof_boot1' in minsymtab warning: can't find symbol 'je_prof_boot2' in minsymtab warning: can't find symbol 'je_prof_free_sampled_object' in minsymtab warning: can't find symbol 'je_prof_gdump' in minsymtab warning: can't find symbol 'je_prof_gdump_get' in minsymtab warning: can't find symbol 'je_prof_gdump_set' in minsymtab warning: can't find symbol 'je_prof_idump' in minsymtab warning: can't find symbol 'je_prof_interval' in minsymtab warning: can't find symbol 'je_prof_lookup' in minsymtab warning: can't find symbol 'je_prof_malloc_sample_object' in minsymtab warning: can't find symbol 'je_prof_mdump' in minsymtab warning: can't find symbol 'je_prof_postfork_child' in minsymtab warning: can't find symbol 'je_prof_postfork_parent' in minsymtab warning: can't find symbol 'je_prof_prefork' in minsymtab warning: can't find symbol 'je_prof_reset' in minsymtab warning: can't find symbol 'je_prof_sample_threshold_update' in minsymtab warning: can't find symbol 'je_opt_prof_prefix' in minsymtab warning: can't find symbol 'je_prof_gdump_val' in minsymtab warning: can't find symbol 'lg_prof_sample' in minsymtab warning: can't find symbol 'prof_active' in minsymtab warning: can't find symbol 'je_quarantine' in minsymtab warning: can't find symbol 'je_quarantine_alloc_hook_work' in minsymtab warning: can't find symbol 'ZN104$LT$$RF$$u27$b$u20$collections..string..String$u20$as$u20$core..str..pattern..Pattern$LT$$u27$a$GT$$GT$13into_searcher17h001149ca228e5ff7E' in minsymtab warning: can't find symbol 'ZN116$LT$collections..borrow..Cow$LT$$u27$a$C$$u20$str$GT$$u20$as$u20$core..ops..AddAssign$LT$$RF$$u27$a$u20$str$GT$$GT$10add_assign17h08c07e59c1a1c919E' in minsymtab warning: can't find symbol '_ZN11collections3fmt6format17h8e988ed0004880beE' in minsymtab warning: can't find symbol 'ZN11collections3str21$LT$impl$u20$str$GT$10trim_right17hf61516de135a2d45E' in minsymtab warning: can't find symbol 'ZN11collections3str21$LT$impl$u20$str$GT$11into_string17h84ad0b6783cfd6c0E' in minsymtab warning: can't find symbol 'ZN11collections3str21$LT$impl$u20$str$GT$12encode_utf1617haa4d5e79bde00b63E' in minsymtab warning: can't find symbol 'ZN11collections3str21$LT$impl$u20$str$GT$12escape_debug17h7fd0030fb383c329E' in minsymtab warning: can't find symbol 'ZN11collections3str21$LT$impl$u20$str$GT$12to_lowercase17hb5e9fc99c651607cE' in minsymtab warning: can't find symbol 'ZN11collections3str21$LT$impl$u20$str$GT$12to_uppercase17h9a79ca7127cf9b79E' in minsymtab warning: can't find symbol 'ZN11collections3str21$LT$impl$u20$str$GT$14escape_default17hd80a7c6ae8b484e2E' in minsymtab warning: can't find symbol 'ZN11collections3str21$LT$impl$u20$str$GT$14escape_unicode17hfbaf6d3c9a311aeeE' in minsymtab warning: can't find symbol 'ZN11collections3str21$LT$impl$u20$str$GT$4trim17h73d4627899e2f40cE' in minsymtab warning: can't find symbol 'ZN11collections3str21$LT$impl$u20$str$GT$6repeat17h3bc37661b067de82E' in minsymtab warning: can't find symbol 'ZN11collections3str21$LT$impl$u20$str$GT$9trim_left17h437e2eaad23854a6E' in minsymtab warning: can't find symbol 'ZN11collections5btree3map16unwrap_unchecked28$u7b$$u7b$closure$u7d$$u7d$14_MSG_FILE_LINE17h402bb214ee960ef7E' in minsymtab warning: can't find symbol '_ZN11collections5slice10merge_sort14_MSG_FILE_LINE17h8919915b6c0c92cdE' in minsymtab warning: can't find symbol '_ZN11collections6string6String10insert_str14_MSG_FILE_LINE17hb26354a518e2fadeE' in minsymtab warning: can't find symbol '_ZN11collections6string6String6insert14_MSG_FILE_LINE17h29f684cd53ae250bE' in minsymtab warning: can't find symbol '_ZN11collections6string6String6remove14_MSG_FILE_LINE17h196556ec489745baE' in minsymtab warning: can't find symbol '_ZN11collections6string6String8truncate14_MSG_FILE_LINE17h104ff35344ce888bE' in minsymtab warning: can't find symbol '_ZN11collections6string6String9split_off14_MSG_FILE_LINE17h04442031fe852d86E' in minsymtab warning: can't find symbol '_ZN11collections8enum_set3bit10_FILE_LINE17ha97464ef34d3b363E' in minsymtab warning: can't find symbol '_ZN11collections8enum_set3bit15__STATIC_FMTSTR17h73e4ec96394ce8cfE' in minsymtab warning: can't find symbol '_ZN11collections9vec_deque10wrap_index14_MSG_FILE_LINE17h3c44503ad4a2881aE' in minsymtab warning: can't find symbol 'ZN165$LT$collections..btree..node..NodeRef$LT$collections..btree..node..marker..Mut$LT$$u27$a$GT$$C$$u20$K$C$$u20$V$C$$u20$collections..btree..node..marker..Leaf$GT$$GT$10push_front14_MSG_FILE_LINE17hc6634d71ef1ca786E' in minsymtab warning: can't find symbol 'ZN165$LT$collections..btree..node..NodeRef$LT$collections..btree..node..marker..Mut$LT$$u27$a$GT$$C$$u20$K$C$$u20$V$C$$u20$collections..btree..node..marker..Leaf$GT$$GT$4push14_MSG_FILE_LINE17h1cfb113bcb9b5484E' in minsymtab warning: can't find symbol 'ZN169$LT$collections..btree..node..NodeRef$LT$collections..btree..node..marker..Mut$LT$$u27$a$GT$$C$$u20$K$C$$u20$V$C$$u20$collections..btree..node..marker..Internal$GT$$GT$10push_front14_MSG_FILE_LINE17hcf8a6d15bce17d55E' in minsymtab warning: can't find symbol 'ZN169$LT$collections..btree..node..NodeRef$LT$collections..btree..node..marker..Mut$LT$$u27$a$GT$$C$$u20$K$C$$u20$V$C$$u20$collections..btree..node..marker..Internal$GT$$GT$10push_front14_MSG_FILE_LINE17he617f25f84d11dc5E' in minsymtab warning: can't find symbol 'ZN169$LT$collections..btree..node..NodeRef$LT$collections..btree..node..marker..Mut$LT$$u27$a$GT$$C$$u20$K$C$$u20$V$C$$u20$collections..btree..node..marker..Internal$GT$$GT$4push14_MSG_FILE_LINE17h26869f6de1d3e8d4E' in minsymtab warning: can't find symbol 'ZN169$LT$collections..btree..node..NodeRef$LT$collections..btree..node..marker..Mut$LT$$u27$a$GT$$C$$u20$K$C$$u20$V$C$$u20$collections..btree..node..marker..Internal$GT$$GT$4push14_MSG_FILE_LINE17h635701583ab53bddE' in minsymtab warning: can't find symbol 'ZN175$LT$collections..btree..node..NodeRef$LT$collections..btree..node..marker..Mut$LT$$u27$a$GT$$C$$u20$K$C$$u20$V$C$$u20$collections..btree..node..marker..LeafOrInternal$GT$$GT$3pop14_MSG_FILE_LINE17h8cd71706f3780bcbE' in minsymtab warning: can't find symbol 'ZN175$LT$collections..btree..node..NodeRef$LT$collections..btree..node..marker..Mut$LT$$u27$a$GT$$C$$u20$K$C$$u20$V$C$$u20$collections..btree..node..marker..LeafOrInternal$GT$$GT$9pop_front14_MSG_FILE_LINE17h6ec0966d7a9f7ae9E' in minsymtab warning: can't find symbol 'ZN178$LT$collections..btree..node..Handle$LT$collections..btree..node..NodeRef$LT$BorrowType$C$$u20$K$C$$u20$V$C$$u20$NodeType$GT$$C$$u20$collections..btree..node..marker..KV$GT$$GT$6new_kv14_MSG_FILE_LINE17hcb85ed60744b4a33E' in minsymtab warning: can't find symbol 'ZN180$LT$collections..btree..node..Handle$LT$collections..btree..node..NodeRef$LT$BorrowType$C$$u20$K$C$$u20$V$C$$u20$NodeType$GT$$C$$u20$collections..btree..node..marker..Edge$GT$$GT$8new_edge14_MSG_FILE_LINE17hcc8444ecd3a2d24dE' in minsymtab warning: can't find symbol 'ZN251$LT$collections..btree..node..Handle$LT$collections..btree..node..NodeRef$LT$collections..btree..node..marker..Mut$LT$$u27$a$GT$$C$$u20$K$C$$u20$V$C$$u20$collections..btree..node..marker..Leaf$GT$$C$$u20$collections..btree..node..marker..Edge$GT$$GT$10insert_fit14_MSG_FILE_LINE17hac73a31fda4263d4E' in minsymtab warning: can't find symbol 'ZN253$LT$collections..btree..node..Handle$LT$collections..btree..node..NodeRef$LT$collections..btree..node..marker..Mut$LT$$u27$a$GT$$C$$u20$K$C$$u20$V$C$$u20$collections..btree..node..marker..Internal$GT$$C$$u20$collections..btree..node..marker..KV$GT$$GT$15bulk_steal_left14_MSG_FILE_LINE17ha19f3ccf54c6931cE' in minsymtab warning: can't find symbol 'ZN253$LT$collections..btree..node..Handle$LT$collections..btree..node..NodeRef$LT$collections..btree..node..marker..Mut$LT$$u27$a$GT$$C$$u20$K$C$$u20$V$C$$u20$collections..btree..node..marker..Internal$GT$$C$$u20$collections..btree..node..marker..KV$GT$$GT$15bulk_steal_left14_MSG_FILE_LINE17hac3a69c90b8db6ecE' in minsymtab warning: can't find symbol 'ZN253$LT$collections..btree..node..Handle$LT$collections..btree..node..NodeRef$LT$collections..btree..node..marker..Mut$LT$$u27$a$GT$$C$$u20$K$C$$u20$V$C$$u20$collections..btree..node..marker..Internal$GT$$C$$u20$collections..btree..node..marker..KV$GT$$GT$15bulk_steal_left14_MSG_FILE_LINE17hb9761d5e0493d13eE' in minsymtab warning: can't find symbol 'ZN253$LT$collections..btree..node..Handle$LT$collections..btree..node..NodeRef$LT$collections..btree..node..marker..Mut$LT$$u27$a$GT$$C$$u20$K$C$$u20$V$C$$u20$collections..btree..node..marker..Internal$GT$$C$$u20$collections..btree..node..marker..KV$GT$$GT$16bulk_steal_right14_MSG_FILE_LINE17h2d736c1d21752de1E' in minsymtab warning: can't find symbol 'ZN253$LT$collections..btree..node..Handle$LT$collections..btree..node..NodeRef$LT$collections..btree..node..marker..Mut$LT$$u27$a$GT$$C$$u20$K$C$$u20$V$C$$u20$collections..btree..node..marker..Internal$GT$$C$$u20$collections..btree..node..marker..KV$GT$$GT$16bulk_steal_right14_MSG_FILE_LINE17h9271fa20148d4281E' in minsymtab warning: can't find symbol 'ZN253$LT$collections..btree..node..Handle$LT$collections..btree..node..NodeRef$LT$collections..btree..node..marker..Mut$LT$$u27$a$GT$$C$$u20$K$C$$u20$V$C$$u20$collections..btree..node..marker..Internal$GT$$C$$u20$collections..btree..node..marker..KV$GT$$GT$16bulk_steal_right14_MSG_FILE_LINE17he46b251b9b4fb963E' in minsymtab warning: can't find symbol 'ZN253$LT$collections..btree..node..Handle$LT$collections..btree..node..NodeRef$LT$collections..btree..node..marker..Mut$LT$$u27$a$GT$$C$$u20$K$C$$u20$V$C$$u20$collections..btree..node..marker..Internal$GT$$C$$u20$collections..btree..node..marker..KV$GT$$GT$5merge14_MSG_FILE_LINE17hfa6b1df8b6824080E' in minsymtab warning: can't find symbol 'ZN255$LT$collections..btree..node..Handle$LT$collections..btree..node..NodeRef$LT$collections..btree..node..marker..Mut$LT$$u27$a$GT$$C$$u20$K$C$$u20$V$C$$u20$collections..btree..node..marker..Internal$GT$$C$$u20$collections..btree..node..marker..Edge$GT$$GT$10insert_fit14_MSG_FILE_LINE17h7701d90cfdf6af12E' in minsymtab warning: can't find symbol 'ZN255$LT$collections..btree..node..Handle$LT$collections..btree..node..NodeRef$LT$collections..btree..node..marker..Mut$LT$$u27$a$GT$$C$$u20$K$C$$u20$V$C$$u20$collections..btree..node..marker..Internal$GT$$C$$u20$collections..btree..node..marker..Edge$GT$$GT$10insert_fit14_MSG_FILE_LINE17hbfd525aee9950d4eE' in minsymtab warning: can't find symbol 'ZN255$LT$collections..btree..node..Handle$LT$collections..btree..node..NodeRef$LT$collections..btree..node..marker..Mut$LT$$u27$a$GT$$C$$u20$K$C$$u20$V$C$$u20$collections..btree..node..marker..Internal$GT$$C$$u20$collections..btree..node..marker..Edge$GT$$GT$6insert14_MSG_FILE_LINE17h952d5f323fbf90d5E' in minsymtab warning: can't find symbol 'ZN261$LT$collections..btree..node..Handle$LT$collections..btree..node..NodeRef$LT$collections..btree..node..marker..Mut$LT$$u27$a$GT$$C$$u20$K$C$$u20$V$C$$u20$collections..btree..node..marker..LeafOrInternal$GT$$C$$u20$collections..btree..node..marker..Edge$GT$$GT$11move_suffix14_MSG_FILE_LINE17h3ef271614b5810b9E' in minsymtab warning: can't find symbol 'ZN261$LT$collections..btree..node..Handle$LT$collections..btree..node..NodeRef$LT$collections..btree..node..marker..Mut$LT$$u27$a$GT$$C$$u20$K$C$$u20$V$C$$u20$collections..btree..node..marker..LeafOrInternal$GT$$C$$u20$collections..btree..node..marker..Edge$GT$$GT$11move_suffix14_MSG_FILE_LINE17h6331815a861aa2daE' in minsymtab warning: can't find symbol 'ZN261$LT$collections..btree..node..Handle$LT$collections..btree..node..NodeRef$LT$collections..btree..node..marker..Mut$LT$$u27$a$GT$$C$$u20$K$C$$u20$V$C$$u20$collections..btree..node..marker..LeafOrInternal$GT$$C$$u20$collections..btree..node..marker..Edge$GT$$GT$11move_suffix14_MSG_FILE_LINE17haef2c0905f9415b8E' in minsymtab No source file named /Volumes/Work/eclipse/rsprojects/mytest/src/main.rs. No source file named /Volumes/Work/eclipse/rsprojects/mytest/src/main.rs. [Inferior 1 (process 1696) exited normally]

    opened by ly2000k 8
  • Auto-format on save repeatedly displays error popup while typing

    Auto-format on save repeatedly displays error popup while typing

    Hello everyone,

    I really appreciate the inclusion of rustfmt into RustDT. Thanks for that! It helped me a lot keeping the code base cleaner.

    I also think it is a good idea to have the auto-format on save feature available for Rust code. However, it seems to me that this feature is not working properly.

    The problem: While I am editing a Rust source file RustDT keeps on automatically saving that file at some rate, say every 5 keystrokes. (I guess this is necessary to get real-time feedback by Rainicorn?) With the auto-format on save feature enabled, this will consequently launch rustfmt at the same rate. In most cases rustfmt will fail as the code is in an unfinished state. Unfortunately, RustDT reports the failure to the Eclipse user each time showing a popup saying rustfmt completed with non-zero exit value...

    Looking at the Eclipse and rustfmt configuration I did not find any way to make Eclipse ignore rustfmt's return value or to make rustfmt ignore broken files.

    I could try to fix this issue once it is clear what the intended behavior should be. In case I missed some configuration option, we should at least communicate to the Eclipse user that he has to perform some additional action like adapting rustfmt.toml, etc.

    Cheers, Woyten

    opened by Woyten 7
  • gdb is not working on ubuntu 14:04 -

    gdb is not working on ubuntu 14:04 - "Error disabling address space randomization"

    I followed the steps. why does it say '-Registering Rust pretty-printers for Windows' .....when I am running it on linux?

    see this below? 143,863 14^error,msg="/tmp/rustdt_gdbinit_windows_811009088743949151:6: Error in sourced command fil
    e:\nError while executing Python code."

    143,848 2-gdb-version 143,853 ~"GNU gdb (Ubuntu 7.7.1-0ubuntu5~14.04.2) 7.7.1\n" 143,857 ~"Copyright (C) 2014 Free Software Foundation, Inc.\n" 143,857 ~"License GPLv3+: GNU GPL version 3 or later http://gnu.org/licenses/gpl.html\nThis is fre
    e software: you are free to change and redistribute it.\nThere is NO WARRANTY, to the extent permitt
    ed by law. Type "show copying"\nand "show warranty" for details.\n" 143,857 ~"This GDB was configured as "x86_64-linux-gnu".\nType "show configuration" for configur
    ation details." 143,857 ~"\nFor bug reporting instructions, please see:\n" 143,857 ~"http://www.gnu.org/software/gdb/bugs/.\n" 143,857 ~"Find the GDB manual and other documentation resources online at:\nhttp://www.gnu.org/soft ware/gdb/documentation/.\n" 143,857 ~"For help, type "help".\n" 143,857 ~"Type "apropos word" to search for commands related to "word".\n" 143,857 2^done 143,857 (gdb) 143,858 3-environment-cd /othello/othello 143,859 3^done 143,859 (gdb) 143,859 4-gdb-set breakpoint pending on 143,859 4^done 143,859 (gdb) 143,859 5-gdb-set detach-on-fork on 143,860 5^done 143,860 (gdb) 143,860 6-enable-pretty-printing 143,860 6^done 143,860 (gdb) 143,860 7-gdb-set python print-stack none 143,860 7^done 143,860 (gdb) 143,860 8-gdb-set print object on 143,861 8^done 143,861 (gdb) 143,861 9-gdb-set print sevenbit-strings on 143,861 9^done 143,861 (gdb) 143,861 10-gdb-set host-charset UTF-8 143,861 10^done 143,861 (gdb) 143,862 11-gdb-set target-charset US-ASCII 143,862 11^done 143,862 (gdb) 143,862 12-gdb-set target-wide-charset UTF-32 143,862 12^done 143,862 (gdb) 143,862 13-gdb-set dprintf-style call 143,862 13^done 143,862 (gdb) 143,863 14source /tmp/rustdt_gdbinit_windows_811009088743949151 143,863 &"source /tmp/rustdt_gdbinit_windows_811009088743949151\n" 143,863 &" File "", line 1\n" 143,863 &" print "--Registering Rust pretty-printers for Windows--"\n" 143,863 &" ^\n" 143,863 &"SyntaxError: Missing parentheses in call to 'print'\n" 143,863 &"/tmp/rustdt_gdbinit_windows_811009088743949151:6: Error in sourced command file:\n" 143,863 &"Error while executing Python code.\n" 143,863 14^error,msg="/tmp/rustdt_gdbinit_windows_811009088743949151:6: Error in sourced command fil
    e:\nError while executing Python code." 143,863 (gdb) 143,863 15source .gdbinit 143,863 &"source .gdbinit\n" 143,864 16-gdb-set target-async off 143,865 &".gdbinit: No such file or directory.\n" 143,866 15^error,msg=".gdbinit: No such file or directory." 143,866 (gdb) 143,866 16^done 143,866 (gdb) 143,869 17-gdb-set auto-solib-add on 143,870 17^done 143,870 (gdb) 143,870 18-file-exec-and-symbols --thread-group i1 /othello/othello/target/debug/hello_world 143,973 19-list-thread-groups 144,027 &"warning: Missing auto-load scripts referenced in section .debug_gdb_scripts\nof file /othe
    llo/othello/target/debug/hello_world\nUse `info auto-load python-scripts [REGEXP]' to list them." 144,027 &"\n" 144,027 18^done 144,027 (gdb) 144,027 19^done,groups=[{id="i1",type="process",executable="/othello/othello/target/debug/hello_worl
    d"}] 144,027 (gdb) 144,035 20-gdb-show --thread-group i1 language 144,035 20^done,value="auto" 144,035 (gdb) 144,036 21-gdb-set --thread-group i1 language c 144,036 21^done 144,036 (gdb) 144,038 22-interpreter-exec --thread-group i1 console "p/x (char)-1" 144,049 ~"$1 = 0xff\n" 144,050 22^done 144,050 (gdb) 144,050 23-data-evaluate-expression --thread-group i1 "sizeof (void*)" 144,050 23^done,value="8" 144,050 (gdb) 144,051 24-gdb-set --thread-group i1 language auto 144,051 24^done 144,051 (gdb) 144,051 25-interpreter-exec --thread-group i1 console "show endian" 144,051 ~"The target endianness is set automatically (currently little endian)\n" 144,051 25^done 144,051 (gdb) 144,055 26-break-insert -f /othello/othello/src/main.rs:6 144,198 26^done,bkpt={number="1",type="breakpoint",disp="keep",enabled="y",addr="0x00000000000048b9"
    ,func="hello_world::main",file="src/main.rs",fullname="/othello/othello/src/main.rs",line="6",thread
    -groups=["i1"],times="0",original-location="/othello/othello/src/main.rs:6"} 144,198 (gdb) 144,203 27-break-insert -t -f main 144,204 27^done,bkpt={number="2",type="breakpoint",disp="del",enabled="y",addr="0x0000000000004aa0",
    at="

    ",thread-groups=["i1"],times="0",original-location="main"} 144,204 (gdb) 144,205 28-inferior-tty-set --thread-group i1 /dev/pts/0 144,205 28^done 144,205 (gdb) 144,225 29-exec-run --thread-group i1 144,247 &"warning: Error disabling address space randomization: Operation not permitted\n" 144,253 =thread-group-started,id="i1",pid="819" 144,254 =thread-created,id="1",group-id="i1" 144,255 30-list-thread-groups --available 144,311 31-list-thread-groups 144,316 =thread-exited,id="1",group-id="i1" 144,316 =thread-group-exited,id="i1" 144,321 29^error,msg="During startup program exited normally." 144,321 (gdb) 144,321 30^done,groups=[{id="1",type="process",description="/bin/bash",user="root",cores=["0"]},{id=
    "14",type="process",description="eclipse",user="root",cores=["0"]},{id="15",type="process",descripti
    on="/opt/jdk1.8.0_73/jre/bin/java -Dosgi.requiredJavaVersion=1.7 -XX:MaxPermSize=256m -Xms256m -Xmx1
    024m -jar /opt/eclipse//plugins/org.eclipse.equinox.launcher_1.3.100.v20150511-1540.jar -os linux -w
    s gtk -arch x86_64 -showsplash /opt/eclipse//plugins/org.eclipse.platform_4.5.2.v20160212-1500/splas
    h.bmp -launcher /opt/eclipse/eclipse -name Eclipse --launcher.library /opt/eclipse//plugins/org.ecli
    pse.equinox.launcher.gtk.linux.x86_64_1.1.300.v20150602-1417/eclipse_1612.so -startup /opt/eclipse//
    plugins/org.eclipse.equinox.launcher_1.3.100.v20150511-1540.jar --launcher.appendVmargs -exitdata 0
    -product org.eclipse.epp.package.cpp.product -vm /opt/jdk1.8.0_73/jre/bin/java -vmargs -Dosgi.requir
    edJavaVersion=1.7 -XX:MaxPermSize=256m -Xms256m -Xmx1024m -jar /opt/eclipse//plugins/org.eclipse.equ
    inox.launcher_1.3.100.v20150511-1540.jar",user="root",cores=["0"]},{id="804",type="process",descript
    ion="gdb --interpreter mi2 --nx",user="root",cores=["0"]}] 144,322 (gdb) 144,322 31^done,groups=[{id="i1",type="process",executable="/othello/othello/target/debug/hello_worl
    d"}] 144,322 (gdb) 144,376 32-gdb-exit 144,382 32^exit

    opened by eddiechristian 7
  • "Unknown line format: END" on autocompletion

    After updating to rust 1.2 (together with sourcecode downloading and racer update) I get annoying " "Unknown line format: END" each time I push ctrl+enter for autocompletion

    opened by antonkulaga 7
  • Content Assist not function

    Content Assist not function

    I have installed 0.2.0.v201504232210

    set these config: Directory: E:\Rust Rust 'src' Directory: E:\rustc-nightly Executable: E:\racer.exe

    When I type 'std' '::' or anything, no Content Assist displayed. But I can use F3 to jump to the code declare.

    When build the project, eclipse often blocked at Building Workspace: (0%) (Build all... Invoking 'Rust builder' on '/Project'.),any other operation can't contiune include exit eclipse(I have to kill the eclipse executable)


    Edit: Content Assist can now displayed with 'Alt + /'

    May I suggest RustDT add function to display Content Assist when click any key?

    opened by sbant 7
  • RustDT does not work with Java 9

    RustDT does not work with Java 9

    RustDT 0.8.1.v201612291856 com.github.rustdt.feature.group github.com/RustDT Windows10 64bit Eclipse Oxygen java 9.0.1 Java(TM) SE Runtime Environment (build 9.0.1+11) Java HotSpot(TM) 64-Bit Server VM (build 9.0.1+11, mixed mode)

    After installing JDK 9, RustDT says that: "Could not start rustdt because java version is: 0 version 8 is required"

    opened by leeopop 1
  • Support for non MinGW Windows binaries debugging

    Support for non MinGW Windows binaries debugging

    I am develop WinApi wrapper in Rust. I have installed RustDT plugin. Cargo on Windows uses Visual Studio linking and in subdirectory deps make .pdb files. Unfortunately RustDT requires only Gnu Debugger from MinGW, not cdb.exe (because of --version).

    opened by borneq 0
  • Cannot find generated executables

    Cannot find generated executables

    Fresh project, main.rs:

    fn main() {
    	println!("Hello, world!");
    }
    
    #[test]
    fn demo_test() {
    	println!("easy test");
    }
    

    Cargo.toml:

    [package]
    name = "Rustish"
    version = "0.1.0"
    authors = ["Phlosioneer <*************>"]
    
    [dependencies]
    

    Output of Clean target: (all is good)

    ************  Building Rust project: Rustish  ************
    >> Running `clean` with: C:\Users\Phlosioneer\.rustup\toolchains\nightly-x86_64-pc-windows-msvc\bin\cargo.exe clean
      ^^^ Terminated, exit code: 0 ^^^
    ************  Build terminated.  ************
    

    Output of Check target:

    ************  Building Rust project: Rustish  ************
    >> Running `check` with: C:\Users\Phlosioneer\.rustup\toolchains\nightly-x86_64-pc-windows-msvc\bin\cargo.exe check --message-format=json
       Compiling Rustish v0.1.0 (file:///C:/Users/Phlosioneer/workspace_rust/Rustish)
    {"message":{"children":[{"children":[],"code":null,"level":"note","message":"#[warn(non_snake_case)] on by default","rendered":null,"spans":[]}],"code":null,"level":"warning","message":"crate `Rustish` should have a snake case name such as `rustish`","rendered":null,"spans":[]},"package_id":"Rustish 0.1.0 (path+file:///C:/Users/Phlosioneer/workspace_rust/Rustish)","reason":"compiler-message","target":{"crate_types":["bin"],"kind":["bin"],"name":"Rustish","src_path":"C:\\Users\\Phlosioneer\\workspace_rust\\Rustish\\src\\main.rs"}}
    {"features":[],"filenames":[],"fresh":false,"package_id":"Rustish 0.1.0 (path+file:///C:/Users/Phlosioneer/workspace_rust/Rustish)","profile":{"debug_assertions":true,"debuginfo":2,"opt_level":"0","overflow_checks":true,"test":false},"reason":"compiler-artifact","target":{"crate_types":["bin"],"kind":["bin"],"name":"Rustish","src_path":"C:\\Users\\Phlosioneer\\workspace_rust\\Rustish\\src\\main.rs"}}
        Finished dev [unoptimized + debuginfo] target(s) in 0.8 secs
      ^^^ Terminated, exit code: 0 ^^^
    ************  Build terminated.  ************
    

    Output of Build target:

    ************  Building Rust project: Rustish  ************
    >> Running `build` with: C:\Users\Phlosioneer\.rustup\toolchains\nightly-x86_64-pc-windows-msvc\bin\cargo.exe test --no-run --message-format=json
    {"features":[],"filenames":["C:\\Users\\Phlosioneer\\workspace_rust\\Rustish\\target\\debug\\Rustish-0dac745a3e1c1bf0.exe"],"fresh":true,"package_id":"Rustish 0.1.0 (path+file:///C:/Users/Phlosioneer/workspace_rust/Rustish)","profile":{"debug_assertions":true,"debuginfo":2,"opt_level":"0","overflow_checks":true,"test":true},"reason":"compiler-artifact","target":{"crate_types":["bin"],"kind":["bin"],"name":"Rustish","src_path":"C:\\Users\\Phlosioneer\\workspace_rust\\Rustish\\src\\main.rs"}}
        Finished dev [unoptimized + debuginfo] target(s) in 0.0 secs
      ^^^ Terminated, exit code: 0 ^^^
    ************  Build terminated.  ************
    
    

    Output of Run (in console):

    ************  Building Rust project: Rustish  ************
    >> Running `build` with: C:\Users\Phlosioneer\.rustup\toolchains\nightly-x86_64-pc-windows-msvc\bin\cargo.exe test --no-run --message-format=json
    {"features":[],"filenames":["C:\\Users\\Phlosioneer\\workspace_rust\\Rustish\\target\\debug\\Rustish-0dac745a3e1c1bf0.exe"],"fresh":true,"package_id":"Rustish 0.1.0 (path+file:///C:/Users/Phlosioneer/workspace_rust/Rustish)","profile":{"debug_assertions":true,"debuginfo":2,"opt_level":"0","overflow_checks":true,"test":true},"reason":"compiler-artifact","target":{"crate_types":["bin"],"kind":["bin"],"name":"Rustish","src_path":"C:\\Users\\Phlosioneer\\workspace_rust\\Rustish\\src\\main.rs"}}
        Finished dev [unoptimized + debuginfo] target(s) in 0.0 secs
      ^^^ Terminated, exit code: 0 ^^^
    ************  Build terminated.  ************
    

    Run error (in dialog):

    Executable file (C:\Users\Phlosioneer\workspace_rust\Rustish\target\debug\Rustish.exe) doesnt exist.
    

    Structure of Rustish\target\debug directory:

    .fingerprint (folder)
    build (folder)
    deps (folder)
    examples (folder)
    incremental (folder)
    native (folder)
    .cargo-lock
    librustish.d
    Rustish-0dac745a3e1c1bf0.d
    Rustish-0dac745a3e1c1bf0.exe <-- this should be "Rustish.exe"
    

    Temporary fix / workaround for the "doesn't exist" error: Configure build targets -> build -> build command: change from

    ${CARGO_TOOL_PATH} test --no-run --message-format=json
    

    to

    ${CARGO_TOOL_PATH} build --message-format=json
    

    Will now generate and run the Rustish.exe file correctly when the build command happens, and running it works too; using

    ${CARGO_TOOL_PATH} test --message-format=json
    

    Will now run the tests, when the build command happens, but won't generate Rustish.exe and running doesn't work.

    Clean installation of RustDT 0.8.1, eclipse log is a ton of copies of this:

    !ENTRY com.github.rustdt.ide.core 4 0 2017-08-02 17:16:11.464
    !MESSAGE Executable file (C:\Users\Phlosioneer\workspace_rust\Rustish\target\debug\Rustish.exe) doesnt exist.
    
    opened by Phlosioneer 4
  • Master branch tests failed

    Master branch tests failed

    I try to make mvn clean verify in just downloaded master branch. Build is broken by failed tests with common error:

    melnorme.lang.ide.core.text.TextSourceUtil_Test  Time elapsed: 0.002 sec  <<< ERROR!
    java.lang.NoClassDefFoundError: Could not initialize class melnorme.lang.ide.core.tests.CommonCoreTest
            at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
            at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
            at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
            at java.lang.reflect.Method.invoke(Unknown Source)
    

    Full logs: https://gist.github.com/leonidv/29e06233a253b2b2a211bbf268afa67c mvn info:

    > mvn --version
    Apache Maven 3.5.0 (ff8f5e7444045639af65f6095c62210b5713f426; 2017-04-03T22:39:06+03:00)
    Maven home: D:\apps\apache-maven-3.5.0\bin\..
    Java version: 1.8.0_121, vendor: Oracle Corporation
    Java home: C:\Program Files\Java\jre1.8.0_121
    Default locale: ru_RU, platform encoding: Cp1251
    OS name: "windows 10", version: "10.0", arch: "amd64", family: "windows"
    
    opened by leonidv 3
  • resolved errors not cleared in editor window

    resolved errors not cleared in editor window

    RustDT 0.8.1.v201612291856 Eclipse Neon.3 Release (4.6.3) Build id: 20170314-1500 rustc 1.17.0 (56124baa9 2017-04-24)

    When building the project RustDT marks errors in the editor window. But when the errors are resolved, the error markers in the editor window are not removed. It is possible to clear them out with Project -> Clean... but that is inconvenient.

    opened by nwyatt 4
Releases(0.8.0)
  • 0.8.0(Dec 28, 2016)

    • Added support for Cargo's JSON output, with --message-format=json. (#138)
    • Invoking a build operation for a project now immediately cancels the pending build operation for that project, if any.
      • (this greatly improves user experience)
    • Added syntax coloring support for ? operator, and macro_rules!.
    • More lenient with rustfmt exit code 3, don't treat those warnings as a failure. (#144)
    • Build target check now defaults to cargo check --message-format=json.
      • Note: As of the time of this release, cargo check only available in nightly Rust.
    • Added: Cargo clean Build Target.
    • Fixed: "Member def_site_span is not an Object" error. (#146)
    • Fixed: Creating an Eclipse project (with "Use cargo init" disabled) in a location with an existing crate no longer creates a Hello World src/main.rs.
    Source code(tar.gz)
    Source code(zip)
  • 0.7.0(Nov 1, 2016)

    • Added support for Rust 1.12 new error message format. (#130)
      • Please upgrade to Rust 1.12 or later because the previous Rust toolchain versions are no longer supported in RustDT.
      • (Thanks to https://github.com/PieterPenninckx for the contribution)
      • Note: be aware of this Cargo issue which might sometimes prevent errors to be parsed by RustDT. This will be addressed in a future RustDT release (see https://github.com/RustDT/RustDT/issues/138)
    • Improved syntax highlighting for macro invocations (foo!=bar no longer highlights foo! as a macro)
    • Added more extensive doc code snippet.
    • Added matchRes and matchOpt code snippets.
    • Default setting for "auto-insert" of Code Snippets is now false.
    • Added --force to Cargo tool "Download" button in toolchain preferences page.
    • Fixed: finding Build Target executables for crates that have a dash ('-') in the name. (the dash is converted to an underscore).
    • Fixed stale validation message for location field in New Project Wizard.
    • Fixed stale validation message for Build Command field in Build Targets property page and Launch Configurations dialog.
    • Fixed editor NPE when opening files from a non-workspace VCS revision.
    • Fixed: "IllegalStateException: Invalid table definition" during Cargo manifest parsing. (#129)
    Source code(tar.gz)
    Source code(zip)
  • v0.6.2(Jul 2, 2016)

    • Updated minimum CDT to version 9.0 (Eclipse Neon).
    • Added: validation of crate name for Rust Project Wizard. (#119)
    • Removed preference "Show error dialog if Racer failures occur" as it's no longer necessary.
      • Content Assist will now distinguish between setup errors (errors that the user can fix, which are related to configuration and not the source) and other tool errors. For setup errors, a dialog will always be shown. For the other errors, if Content Assist was invoked manually, a dialog will also be shown, but if it was activated automatically the error will only be displayed in the editor status line.
    • Fixed: Eclipse variables not being substituted in environment-variables settings of launch configurations.
    • Fixed: NPE when invoking Content Assist inside a comment, string or character.
    Source code(tar.gz)
    Source code(zip)
  • v0.6.1(Jun 1, 2016)

    • Improved the default names for automatically created launch configuration.
    • Added error display notification for Outline operation failures.
    • Fixed: Progress dialog never showing up when "Ok" pressed in LANG_NAME project properties page.
    • Fixed: Eclipse variables not being substituted in environment-variable values.
    • Fixed regression: Cargo not able to find rustc. (#113)
    Source code(tar.gz)
    Source code(zip)
  • v0.6.0(May 12, 2016)

    • Added customization of the build command for Build Targets: It's now possible to specify a command other than the default one (the Cargo tool).
      • Note however that RustDT still expects the command output (the compiler error messages) to be in the same format as the default tool.
    • Added support for invoking a specific Build Target when a Rust editor is saved. This is called "auto-check", and is intended for build commands that only check for compilation errors, but don't produce artifacts. This has the potential to be faster than a regular build.
      • Default is rustc --lib -- -Zno-trans.
      • The goal for the future is to enable invoking this command on-the-fly (as the user types), although for this to be useful in practice it will likely require the compiler to support incremental compilation (or be super fast otherwise).
      • Added Building section to documentation.
    • Added support for modifying the environment variables of a Build Target's build command. (#72)
    • RustDT no longer needs to save the editor before invoking Racer.
    • New Cargo project can now initialize project using cargo init. (#106)
    • Added some new code snippets: enum, at and aq, if, ifl, whl, fn, fnr, test, macro. (#109)

    • Fixed "IllegalStateException: The service has been unregistered" on Mars.2 when Eclipse is closed.
    • Fixed: Running Targets from "crate#tests" failed in OS X due to ".dSYM" dir. (#96)
    • Fixed: Format tool (rustfmt) is invoked when an editor is saved automatically due to code completion. (#101)
    • Fixed: Pressing Tab key does not indent according to Editor indentation preferences. (#99)
    • Fixed: syntax highlighting for the character literal '\"'.
    Source code(tar.gz)
    Source code(zip)
  • v0.5.1(Feb 25, 2016)

    • Added support for source formatting using rustfmt (Ctrl+Shift+F).
      • Added Format Crate (cargo fmt) command to Project context menu.
      • Added "Format automatically on editor save." option.
    • Added signing to releases.
    • Fixed incorrect icon for errors and warnings in preference page status.
    • Fixed: can't save preference pages with empty fields.
    • Fixed: Preferences "Download..." button not working in Windows if HOME env-var not set (now uses %UserProfile% instead).
      • Also, "Download..." button now tries to download to the existing location in the preferences field, if it's a valid one.
    • Fixed: debugging won't find the Rust installation sources (the standard library), if the configured src path is any other than $SDK_PATH/src.
    Source code(tar.gz)
    Source code(zip)
  • v0.5.0(Feb 25, 2016)

    • Added support for Outline, Quick-Outline, and on-the-fly parser errors, using the Rainicorn tool.
    • Added download operation to the Racer preferences (uses cargo install), as well as to the Rainicorn preferences.
    • Added "match", "matchb", "apl", and "main" code snippets.
    • Added: The title of a Rust editor for "mod.rs" files is now "[foo]", where foo is the name of the parent directory (this should be the same as the module name). The objective is obviously to disambiguate editors when you have several "mod.rs" files open.

    • Fixed: Dirty editors are now automatically saved if a build is invoked directly from a Build Target in the Project Explorer. (if the workspace "Save automatically before build" option is enabled).
    • Fixed workspace resource locking when a build is invoked directly from a Build Target in the Project Explorer.
    • Fixed regression: Console view always activates when a build is invoked.
    • Fixed bug with Content Assist snippets using the ${word_selection} variable.
    Source code(tar.gz)
    Source code(zip)
  • v0.4.2(Nov 27, 2015)

  • v0.4.1(Nov 25, 2015)

    Debugging:

    • The source lookup path for the Rust standard library modules is now configured properly.
    • Fixed toggling breakpoints on and off for files that are outside the workspace.
    • Fixed opening source files that are are outside the workspace.
    • On Windows, the Rust GDB pretty printers are automatically configured when debugging, if they are found in ${RUST_ROOT}/bin/rustlib/etc/.
    • Minimum and recommended CDT version is now 8.8.

    Other changes:

    • Pressing F2 in the editor now shows information popup for the problem under the cursor (same popup as the mouse-over hover).
    • Project builder is no longer invoked when the workspace "Build Automatically" setting is enabled and a file is saved. (this was considered a misfeature anyways)
    • After building, Cargo.toml syntax errors are now also displayed inside the editor.
    • Improvement to Auto-Indent when Enter pressed before a closing brace. (Fixes #76)
    • Added Racer preference to enable/disable showing the error dialog if failures occur during Content Assist. (#74)

    • Fixed: Project Build Targets settings page shows wrong default for Program Path field.
    • Fixed: Editor syntax highlighting of raw strings.
    • Fixed: Breakpoint icon alignment and transparency.
    Source code(tar.gz)
    Source code(zip)
  • v0.4.0(Oct 27, 2015)

    • Added support for Eclipse dark theme. Namely:
      • Syntax/source coloring now have different settings for dark theme.
      • Fixed Tools Console colors, as well as content assist pop-up colors.
    • Added number literals source highlighting. (#55)
    • Added macro invocation source highlighting.
    • Syntax highlighting now works on the source compare editor/viewer.
    • Added per-project Rust Installation preferences. (fixes #63)
    • Added Content Assist support of name-only proposal insertion by pressing Ctrl+Enter. (only applicable to proposals that insert arguments)
    • Changed: newly created launch configurations now have the debug option "Stop on startup at:" set to false by default. This way debugging won't stop on the C main, which is essentially useless outside of C/C++.
    • Added: cargo update action to Project explorer context menu. (#17)

    • Fixed: Properly implemented editor highlighting of Rust attributes with strings in them. (#24)
    • Fixed: AssertionFailureException pressing Enter after source with more closing braces than opening ones.
    • Fixed: Unindent (Shift-Tab) broken, does nothing after empty lines in selection.
    • Fixed "Unknown line format: " when invoking autocompletion with racer. (#68)
    Source code(tar.gz)
    Source code(zip)
  • v0.3.0(Aug 26, 2015)

    • Added support for Build Targets, based on Cargo build targets.
      • Available Build Targets are displayed in the Project Explorer. You can configure which targets are enabled or not for a workspace build. Or run/debug a specific target.
      • Top-level Build Targets are: crate#no-tests and crate#tests. You can run/debug specific Cargo binaries or tests from the context menu of the Build Targets.
      • Added Project Build Configuration property page to configure Build Target options.
    • Added specific Project Explorer icons for Rust crate elements: the src, test, target folders; the Cargo.toml file.
    • Added Project Explorer element with Cargo dependency references.
    • Added: launch shortcut for a Rust project and Rust integration tests. This is a quick way to create a launch from the Project Explorer context-menu, by selecting either a project, or a Rust test source file in tests/, and selecting "Run As" or "Debug As".
    • Added new Configuration section in the User Guide. (#46)
    • Added UserGuide note about using Homebrew GDB in OS X.

    Fixes:

    • Fixed: if build tool reports many error messages, the Eclipse project build will take too long to finish. (#26)
    • Fixed: Properly parse Racer "END" line syntax, don't show error when this occurs. (#57)
    • Fixed: when invoking Rust tools like Cargo, add tool directory to beginning of PATH, not end. (#59)
    • Fixed: Don't show error dialog when Racer fails. Only the editor status line is updated now. (#41)
    • Fixed: Occasional AssertionFailure when creating new projects in nested locations (project would not show up in Explorer).
    • Fixed: Arguments field in launch configuration is not multi-line.
    Source code(tar.gz)
    Source code(zip)
  • v0.2.2(Jul 13, 2015)

    ▶ Recommended/tested CDT version is now 8.7

    • Fixed #44: Debugging not working on Eclipse 4.5 Mars (CDT 8.7), for certain platform/GDB combinations.
    • Fixed #43: PATH of external tools bungled if original PATH not set (Windows).
    • Doc: added note about Cygwin GDB not being recommended for debugging.
    Source code(tar.gz)
    Source code(zip)
  • v0.2.1(Jun 11, 2015)

    • Added Content Assist preference page, with auto-activation options (#23).
    • Improved transparency/aliasing of content assist icons - this improves them for dark themes.
    • Upgraded minimum Java version to Java 8
      • Added: Show error message dialog if starting Eclipse with a Java version below the minimum.
    • Added: Content Assist proposal list now shows a popup on the right with a small description of the selected proposal.
      • However, this is based on information provided by Racer, which at the moment is fairly limited.

    Fixes:

    • Fixed #31: Added workaround to fix OS X issue "Could not execute process rustc -vV".
    • Fixed #27: the preference pages are now searchable in the Preferences dialog search field, by means of relevant keywords.
    • Fixed #39: Unable to parse multiline rustc error messages
    • Fixed #37: No editor problem underlining for macro expansion errors
    • Fixed #36: Autocompletion error Unknown line format: on std::process::Command.
    • Fixed: snippets Content Assist preview information hover not showing up.
    • Fixed: Tab policy: "Spaces Only" preference ignored when pressing TAB to indent.
    Source code(tar.gz)
    Source code(zip)
  • v0.2.0(Apr 23, 2015)

    • Added: Open Definition functionality using Racer.
    • Added: Content Assist functionality using Racer.
      • Added: Content Assist auto-insert of function arguments for function proposals.
      • Added: Content Assist code snippet proposals. Configurable in Preferences/Rust/Editor/Code Snippets. (needs more defaults)
      • [Doc] Added Content Assist / Open Definition section.
    • Added: Automatically set up Rust GDB pretty-printers for debug launches. (#6)
      • [Doc] Added GDB pretty-printers section.
      • Note: I couldn't get this to work on any Windows GDB (Cygwin, TDM-GCC, MinGW-w64).
    • Upgraded minimum CDT version to 8.6.0.
    • [Doc] Added Editor auto-indentation section.
    Source code(tar.gz)
    Source code(zip)
  • v0.1.1(Apr 10, 2015)

    • Added: Source menu with shift right/left operations.
    • Added: Toggle Comment action (shortcut: Ctrl+/) to Source Menu.
    • Added: Editor Go To Matching Bracket action (shortcut: Ctrl+Shift+P).
    • Fixed #2: Lifetimes are incorrectly highlighted as char
    • Fixed: "Attribute" syntax highlighting option missing from Source Coloring preference page.
    • Added: Syntax highlighting for lifetime token.
    • Added: Syntax highlighting for strings inside attribute region.
    • Fixed minor bug with block comments syntax highlighting.
    • [Doc] Fixed: missing UserGuide screenshot of debug launch configuration.
    • [Doc] Added: Installation guide note for users in China.
    Source code(tar.gz)
    Source code(zip)
  • v0.1.0(Feb 25, 2015)

    • Added: Rust source code editor, with:
      • Syntax highlighting. Configurable in Preferences/Rust/Editor/Source Coloring.
      • Automatic indent/de-indent and brace completion on certain keypresses (Enter, Backspace). Configurable in Preferences/Rust/Editor/Typing.
    • Added: Rust/Cargo Project wizard.
    • Added: Rust/Cargo project builder.
      • With in-editor build errors reporting.
    • Added: Debugging support using CDT's GDB integration.
    Source code(tar.gz)
    Source code(zip)
Owner
The RustDT Eclipse IDE, as well as several Rust tools and libraries
null
Rust IDE support for Atom, powered by the Rust Language Server (RLS)

IDE-Rust Rust language support for Atom-IDE, powered by rust-analyzer. Features Auto-completion Diagnostics (errors and warnings from rustc) Document

The Rust Programming Language 239 Dec 14, 2022
IDE tools for writing pest grammars, using the Language Server Protocol for Visual Studio Code, Vim and other editors

Pest IDE Tools IDE support for Pest, via the LSP. This repository contains an implementation of the Language Server Protocol in Rust, for the Pest par

pest 20 Apr 8, 2023
Rust IDE

This branch contains the development of a "new ride" that maintain a small impact on the ui library. This is for a few reasons. Can customize the colo

Gustav Jansson 171 Dec 24, 2022
An IDE for Rust

Introduction SolidOak is a simple IDE for Rust. See the website for binary releases. It has the following features: An embedded copy of Neovim as its

Zach Oakes 907 Dec 29, 2022
Flowistry: Powerful IDE Tools for Rust

Flowistry - a VSCode extension that helps you understand Rust programs with program analysis.

Will Crichton 1.4k Dec 29, 2022
The official Sublime Text 3 package for the Rust Programming Language

Rust Enhanced About This is a Sublime Text 3 package which supports Rust starting with version 1.0, it makes no attempt at supporting earlier incompat

The Rust Programming Language 704 Jan 7, 2023
Experimental treesiter based language server, let's see how far this goes 😆.

tsls Tree-sitter based language server for general languages. Warning: It's in active development right now, and bug is expected. Features Go To Defin

Keyv Chan 16 Sep 11, 2022
rust-analyzer is a modular compiler frontend for the Rust language

rust-analyzer is a modular compiler frontend for the Rust language. It is a part of a larger rls-2.0 effort to create excellent IDE support for Rust.

null 11.2k Jan 8, 2023
Rust language support in Atom - LOOKING FOR MAINTAINER, see #144

Rust language support in Atom Adds syntax highlighting and snippets to Rust files in Atom. Install Install the package language-rust in Atom (Preferen

Andreas Neuhaus 118 Oct 11, 2022
Repository for the Rust Language Server (aka RLS)

Rust Language Server (RLS) The RLS provides a server that runs in the background, providing IDEs, editors, and other tools with information about Rust

The Rust Programming Language 3.6k Dec 30, 2022
Kakoune Language Server Protocol Client

Kakoune Language Server Protocol Client kak-lsp is a Language Server Protocol client for Kakoune implemented in Rust. Installation Note kak-lsp.toml d

null 495 Dec 17, 2022
Language Server Protocol (LSP) support for vim and neovim.

For legacy python implementation, see branch master. LanguageClient-neovim Language Server Protocol support for vim and neovim. More recordings at Upd

Junfeng Li 3.5k Dec 29, 2022
An experimental proofreading and linting language server for markdown files ✍️

prosemd is an experimental proofreading and linting language server for markdown files. It aims to provide helpful and smart diagnostics when writing

Phil Pluckthun 132 Dec 14, 2022
AIDL Language Server Protocol (LSP) server

AIDL Language Server Protocol (LSP) server Experimental AIDL LSP server based on rust-aidl-parser. Features: diagnostics workspace symbols (Ctrl+T in

Benoit Walter 0 Jan 9, 2022
A LSP (Language Server Protocol) server for OpenSCAD.

openscad-LSP A LSP (Language Server Protocol) server for OpenSCAD. inspired by dzhu/openscad-language-server Tested with VSCode on Mac and Windows. Te

Leathong 20 Dec 15, 2022
Fennel language server protocol (LSP) support.

fennel-language-server Fennel language server protocol (LSP) support. fennel-language-server is currently in a very early stage and unreliable. Use it

null 68 Dec 27, 2022
impl LSP (Language Server Protocol) Server for librime

rime-ls 为 rime 输入法核心库 librime (的部分功能) 实现 LSP 协议, 从而通过编辑器的代码补全功能输入汉字. 项目还处在早期阶段, 各方面都非常不成熟. 目标是提供 rime + LSP 的通用解决方案, 在不同编辑器内实现与其他 rime 前端类似的输入体验. Feat

zilch40 55 Jan 22, 2023
A brand-new language server for Typst, plus a VS Code extension

Typst LSP A brand-new language server for Typst. Features Syntax highlighting, error reporting, code completion, and function signature help Compiles

Nathan Varner 414 Apr 17, 2023
WIP: Asynchronous Language Server Protocol framework

async-lsp Asynchronous Language Server Protocol (LSP) framework based on tower. ⚠️ This project serves as a proof-of-concept for LSP with middlewares

null 9 Apr 11, 2023