diff --git a/README.md b/README.md index 86610f60..9d90de4d 100644 --- a/README.md +++ b/README.md @@ -147,9 +147,14 @@ gifsicle --resize-height 18 trans.gif > loader.gif ### Changelog -#### 1.0 (beta) -released 2017-06-07 +#### 2017.2 +released 2017-06-21 +* Fixed crash when using shortcuts containing letters with focus on the graph on macOS (issue #390) +* Improved Visual Studio plugin performance +* Updated End User License Agreement and have users accept on first run on macOS and Linux +* Fixed memory issues when using large Compilation Database files (issue #396) +* Updated to JavaParser and JavaSymbolSolver * Fixed issue where black borders appeared around dialogs for some Linux window managers (issue #376) * Use platform default window decorations for UI dialogs * Code: Made snippet minimize/maximize buttons more interactive by showing hover states diff --git a/web/documentation/img/eula_window.png b/web/documentation/img/eula_window.png new file mode 100644 index 00000000..04cdebfd Binary files /dev/null and b/web/documentation/img/eula_window.png differ diff --git a/web/documentation/img/history_list.png b/web/documentation/img/history_list.png new file mode 100644 index 00000000..3b4b2aea Binary files /dev/null and b/web/documentation/img/history_list.png differ diff --git a/web/documentation/img/license_key_window.png b/web/documentation/img/license_key_window.png index 15c04f1f..456abcd3 100644 Binary files a/web/documentation/img/license_key_window.png and b/web/documentation/img/license_key_window.png differ diff --git a/web/documentation/img/main_screen.png b/web/documentation/img/main_screen.png index 9b0a36c3..6642a7db 100644 Binary files a/web/documentation/img/main_screen.png and b/web/documentation/img/main_screen.png differ diff --git a/web/documentation/img/main_window.png b/web/documentation/img/main_window.png index d78901b8..e4483535 100644 Binary files a/web/documentation/img/main_window.png and b/web/documentation/img/main_window.png differ diff --git a/web/documentation/img/path_list_box_edit.png b/web/documentation/img/path_list_box_edit.png index 992657a1..7b258776 100644 Binary files a/web/documentation/img/path_list_box_edit.png and b/web/documentation/img/path_list_box_edit.png differ diff --git a/web/documentation/img/preferences_screen.png b/web/documentation/img/preferences_screen.png index aa9fef83..994cb11b 100644 Binary files a/web/documentation/img/preferences_screen.png and b/web/documentation/img/preferences_screen.png differ diff --git a/web/documentation/img/project_setup_wizard_advanced.png b/web/documentation/img/project_setup_wizard_advanced.png index bcc9bffb..91264111 100644 Binary files a/web/documentation/img/project_setup_wizard_advanced.png and b/web/documentation/img/project_setup_wizard_advanced.png differ diff --git a/web/documentation/img/project_setup_wizard_advanced_java.png b/web/documentation/img/project_setup_wizard_advanced_java.png index c33389b4..d6eec256 100644 Binary files a/web/documentation/img/project_setup_wizard_advanced_java.png and b/web/documentation/img/project_setup_wizard_advanced_java.png differ diff --git a/web/documentation/img/project_setup_wizard_compilation_data.png b/web/documentation/img/project_setup_wizard_compilation_data.png deleted file mode 100644 index c7b67b7d..00000000 Binary files a/web/documentation/img/project_setup_wizard_compilation_data.png and /dev/null differ diff --git a/web/documentation/img/project_setup_wizard_compilation_header.png b/web/documentation/img/project_setup_wizard_compilation_header.png index 4f8fd4bf..c3b69158 100644 Binary files a/web/documentation/img/project_setup_wizard_compilation_header.png and b/web/documentation/img/project_setup_wizard_compilation_header.png differ diff --git a/web/documentation/img/project_setup_wizard_empty_framework_paths.png b/web/documentation/img/project_setup_wizard_empty_framework_paths.png index 61845709..f92d7882 100644 Binary files a/web/documentation/img/project_setup_wizard_empty_framework_paths.png and b/web/documentation/img/project_setup_wizard_empty_framework_paths.png differ diff --git a/web/documentation/img/project_setup_wizard_empty_include_paths.png b/web/documentation/img/project_setup_wizard_empty_include_paths.png index 687d4d22..7d9c9049 100644 Binary files a/web/documentation/img/project_setup_wizard_empty_include_paths.png and b/web/documentation/img/project_setup_wizard_empty_include_paths.png differ diff --git a/web/documentation/img/project_setup_wizard_empty_meta.png b/web/documentation/img/project_setup_wizard_empty_meta.png deleted file mode 100644 index 4469a37d..00000000 Binary files a/web/documentation/img/project_setup_wizard_empty_meta.png and /dev/null differ diff --git a/web/documentation/img/project_setup_wizard_empty_meta_java.png b/web/documentation/img/project_setup_wizard_empty_meta_java.png index bcb2a3d1..9285b01d 100644 Binary files a/web/documentation/img/project_setup_wizard_empty_meta_java.png and b/web/documentation/img/project_setup_wizard_empty_meta_java.png differ diff --git a/web/documentation/img/project_setup_wizard_empty_project_paths.png b/web/documentation/img/project_setup_wizard_empty_project_paths.png index f92479b9..4acab5d0 100644 Binary files a/web/documentation/img/project_setup_wizard_empty_project_paths.png and b/web/documentation/img/project_setup_wizard_empty_project_paths.png differ diff --git a/web/documentation/img/project_setup_wizard_empty_project_paths_java.png b/web/documentation/img/project_setup_wizard_empty_project_paths_java.png index a858c8a2..df68e011 100644 Binary files a/web/documentation/img/project_setup_wizard_empty_project_paths_java.png and b/web/documentation/img/project_setup_wizard_empty_project_paths_java.png differ diff --git a/web/documentation/img/project_setup_wizard_empty_standard.png b/web/documentation/img/project_setup_wizard_empty_standard.png new file mode 100644 index 00000000..105aecc8 Binary files /dev/null and b/web/documentation/img/project_setup_wizard_empty_standard.png differ diff --git a/web/documentation/img/project_setup_wizard_empty_standard_java.png b/web/documentation/img/project_setup_wizard_empty_standard_java.png new file mode 100644 index 00000000..1c1d30b8 Binary files /dev/null and b/web/documentation/img/project_setup_wizard_empty_standard_java.png differ diff --git a/web/documentation/img/project_setup_wizard_java_maven.png b/web/documentation/img/project_setup_wizard_java_maven.png index bf159713..9285b01d 100644 Binary files a/web/documentation/img/project_setup_wizard_java_maven.png and b/web/documentation/img/project_setup_wizard_java_maven.png differ diff --git a/web/documentation/img/project_setup_wizard_source_group_type.png b/web/documentation/img/project_setup_wizard_source_group_type.png new file mode 100644 index 00000000..4243fc76 Binary files /dev/null and b/web/documentation/img/project_setup_wizard_source_group_type.png differ diff --git a/web/documentation/img/project_setup_wizard_start.png b/web/documentation/img/project_setup_wizard_start.png index 062cca15..2a297f21 100644 Binary files a/web/documentation/img/project_setup_wizard_start.png and b/web/documentation/img/project_setup_wizard_start.png differ diff --git a/web/documentation/img/project_setup_wizard_start_cdb.png b/web/documentation/img/project_setup_wizard_start_cdb.png index e41c0b40..36e72e76 100644 Binary files a/web/documentation/img/project_setup_wizard_start_cdb.png and b/web/documentation/img/project_setup_wizard_start_cdb.png differ diff --git a/web/documentation/img/project_setup_wizard_start_java_empty.png b/web/documentation/img/project_setup_wizard_start_java_empty.png index 72de4151..2f34a571 100644 Binary files a/web/documentation/img/project_setup_wizard_start_java_empty.png and b/web/documentation/img/project_setup_wizard_start_java_empty.png differ diff --git a/web/documentation/img/project_setup_wizard_start_java_maven.png b/web/documentation/img/project_setup_wizard_start_java_maven.png index 5d1aa257..70da1b53 100644 Binary files a/web/documentation/img/project_setup_wizard_start_java_maven.png and b/web/documentation/img/project_setup_wizard_start_java_maven.png differ diff --git a/web/documentation/img/project_setup_wizard_start_vs.png b/web/documentation/img/project_setup_wizard_start_vs.png index e5c124d1..1ba5e9a2 100644 Binary files a/web/documentation/img/project_setup_wizard_start_vs.png and b/web/documentation/img/project_setup_wizard_start_vs.png differ diff --git a/web/documentation/img/project_setup_wizard_visual_studio.png b/web/documentation/img/project_setup_wizard_visual_studio.png index 7a0a18e6..38b33c85 100644 Binary files a/web/documentation/img/project_setup_wizard_visual_studio.png and b/web/documentation/img/project_setup_wizard_visual_studio.png differ diff --git a/web/documentation/img/search_view.png b/web/documentation/img/search_view.png index 80651160..1bce46c9 100644 Binary files a/web/documentation/img/search_view.png and b/web/documentation/img/search_view.png differ diff --git a/web/documentation/img/search_view_completion.png b/web/documentation/img/search_view_completion.png index d9299779..83a871e7 100644 Binary files a/web/documentation/img/search_view_completion.png and b/web/documentation/img/search_view_completion.png differ diff --git a/web/documentation/img/start_window.png b/web/documentation/img/start_window.png index 6cff3948..ea366815 100644 Binary files a/web/documentation/img/start_window.png and b/web/documentation/img/start_window.png differ diff --git a/web/documentation/img/undo_redo_buttons.png b/web/documentation/img/undo_redo_buttons.png index 637bf8db..def0cefc 100644 Binary files a/web/documentation/img/undo_redo_buttons.png and b/web/documentation/img/undo_redo_buttons.png differ diff --git a/web/documentation/index.html b/web/documentation/index.html index 77be85a9..a273171d 100644 --- a/web/documentation/index.html +++ b/web/documentation/index.html @@ -21,6 +21,7 @@ })(window,document,'script','https://www.google-analytics.com/analytics.js','ga'); ga('create', 'UA-64108586-2', 'auto'); + ga('set', 'anonymizeIp', true); ga('send', 'pageview'); --> @@ -76,7 +77,7 @@
Documentation for version 0.12
+Documentation for version 2017.2
When creating a new Sourcetrail project you will use the project setup wizard. This wizard splits the setup process into several subsequent steps. Depending on your projects structure and the used build system there are different types for project setup. Choosing the right setup method is important and can make the setup process a lot easier.
+When creating a new Sourcetrail project you will use the Project Setup Wizard. This wizard splits the setup process into several subsequent steps. Depending on your project's structure and the used build system there are different types for project setup. Choosing the right setup method is important and can make the setup process a lot easier.
+ +In the first step of the project setup you will just need to specify name and location of your Sourcetrail project.
Sourcetrail projects consist of multiple Source Groups. Each Source Group uses a certain language, a set of files and all configurations to index these files. There are different types of Source Groups for each supported programming language. Creating a single Source Group is sufficient for most projects.
+ +
+ The project setup types for C & C++ are the same.
+The Source Group setup types for C & C++ are the same.
Are you using CMake or Make?If you are using CMake or Make as build environment you can export a clang JSON Compilaton Database as compile_commands.json file. A Compilation Database holds all information necessary for building the project, such as source files, include paths and compiler flags. Having a Compilation Database makes project setup within Sourcetrail a lot easier. We recommend using this approach if possible.
compile_commands.json file during a simulated build process. Bear has been tested on FreeBSD, GNU/Linux and OS X.If you managed to export a compile_commands.json file, then please continue at Create a project from Compilation Database and come back after you finished creating the project.
If you managed to export a compile_commands.json file, then please continue at Create a Source Group from Compilation Database and come back after you finished creating the project.
If you are using Visual Studio you can continue at Project creation from Visual Studio and export a Compilation Database with our Visual Studio Plugin.
+If you are using Visual Studio you can continue at Source Group creation from Visual Studio and export a Compilation Database with our Visual Studio Plugin.
If none of the above options apply to your project then please continue at Create an Empty C/C++ Project and come back here as soon as the project is created.
+If none of the above options apply to your project then please continue at Create an empty C/C++ Source Group and come back here as soon as the project is created.
+
If you are using Maven you can continue at Project creation from Maven to automatically setup your project using your Maven configuration.
+If you are using Maven you can continue at Source Group creation from Maven to automatically setup your Source Group using your Maven configuration.
As already mentioned Sourcetrail's user interface is split into three main views. Their arrangement can be changed however you wish, you can even detach them from the main window and put them on different screens (see Window Widgets).
The Project Setup Wizard consists of a sequence of windows that let you create a new Sourcetrail project. After selecting the programming language for your project Sourcetrail offers several ways for you to provide all the required information.
+The Project Setup Wizard lets you create a new Sourcetrail project. It allows for defining name and location of your project Sourcetrail and adding several Source Groups, that define which source files will be indexed. There are several ways to create Source Groups. It is sufficient to add only one Source Group for most projects.
+ +After you added Source Groups to your project you can edit all their configurations within this dialog, remove them or duplicate them.
+ +This window is also used when editing the project.
+
This is the way to go if you just have some source files you want to index. In case you have a build instructions file, you might want to check out one of the other options for project setup described below.
- - Project Meta Data -In the first step you need to enter meta information about the project.
-
- | Setting | Description |
|---|---|
| Sourcetrail Project Name | The name of the project. This will also be the name of the .srctrlprj file generated by Sourcetrail. |
| Sourcetrail Project Location | Choose the location of the project file from the dialog. |
+ beneath the Source Group list will take you to the creation of a new Source Group.- beneath the Source Group list will delete the currently selected Source Group.☐ beneath the Source Group list will duplicate the currenlty selected Source Group.When creating a new Source Group you can choose different methods of setup depending on your project language. Please have a look at our QUCICK START GUIDE section for help on choosing the right Source Group type.
+ +
+ This is the way to go if you just have some C/C++ source files you want to index. In case you have a build instructions file, you might want to check out one of the other options for Source Group setup described below.
+ + Language Standard +In the first step you need to choose the desired standard.
+
+ | Setting | Description |
|---|---|
| Standard | Select the language standard that should be used for indexing your project. Usually the most recent language standard is preselected here. (See Language Support) |
Provide the paths that contain your project's files. Sourcetrail will index all the source and header files in the specified paths, including subdirectories.
+Provide the paths that contain your source files you want to index. Sourcetrail will index all the source and header files in the specified paths, including subdirectories.
@@ -834,50 +889,24 @@
Interactions:
After this step the New Project Summary will appear as last step in the project creation proccess.
+After this step you will return to the Project Setup Wizard.
If you are using CMake you can export compile commands by defining the CMAKE_EXPORT_COMPILE_COMMANDS flag and then use the exportet .json file for Sourcetrail project setup.
For non-CMake projects you can use Bear. Bear generates a .json file during the simulated build process. Bear has been tested on FreeBSD, GNU/Linux and OS X.
In the first step you need to enter meta information about the project and define the compilation database.
-
- | Setting | Description |
|---|---|
| Sourcetrail Project Name | The name of the project. This will also be the name of the .srctrlprj file generated by Sourcetrail. |
| Sourcetrail Project Location | Choose the location of the project file from the dialog. |
| Compilation Database | Select the compilation database .json for the project. Sourcetrail will index the project based on the compile commands in this file. If the compilation database changes you can Refresh Sourcetrail to the new files. |
In the next step you can see which source files are in the compilation database and define the locations of the corresponding header files.
+ Compilation Database file and Indexed Headers +In the first step you need to enter the path to your Compilation Database file. Then you can see which source files are in the Compilation Database and define the locations of the corresponding header files.
Header files will only be indexed if they are included in one of the source files.
.json for the project. Sourcetrail will index the project based on the compile commands in this file. If the compilation database changes you can Refresh Sourcetrail to the new files.If you are using Visual Studio you can export a Compilation Database with out Visual Studio Plugin and use it to create a project with Sourcetrail.
+If you are using Visual Studio you can export a Compilation Database with our Visual Studio Plugin and use it to create a project with Sourcetrail.
@@ -920,19 +951,19 @@
After finishing the export process within Visual Studio the project setup will continue using the same steps as creating a project directly from Compilation Database.
+After finishing the export process within Visual Studio the Source Group setup uses the same steps as creating a Source Group directly from Compilation Database.
Choose this option if you want to use Sourcetrail on a Java code base.
+Choose this option if you want to index Java files using Sourcetrail.
- Project Meta Data -In the first step you need to enter meta information about the project.
+ Language Standard +In the first step you need to set the Java standard for the source files.
+
| Setting | Description |
|---|---|
| Sourcetrail Project Name | The name of the project. This will also be the name of the .srctrlprj file generated by Sourcetrail. |
| Sourcetrail Project Location | Choose the location of the project file from the dialog. |
| Standard | Select the language standard that should be used for indexing your project. We currently only support Java 8 |
| Standard | Select the language standard that should be used for indexing your the Source Group. We currently only support Java 8. |
.jar file that is required for the project to compile. You can also add the root path of the class files your project depends on, or add a mixture if you have class files for some of the dependencies and jar files for the rest of them.After this step the New Project Summary will appear as last step in the project creation proccess.
+After this step you will return to the Project Setup Wizard.
If you are using a Maven configuration to manage and build your project use this approach to create a Sourcetrail project.
- - Maven Project Meta Data -In the first step you need to enter meta information about the project.
-
- | Setting | Description |
|---|---|
| Sourcetrail Project Name | The name of the project. This will also be the name of the .srctrlprj file generated by Sourcetrail. |
| Sourcetrail Project Location | Choose the location of the project file from the dialog. |
| Standard | Select the language standard that should be used for indexing your project. We currently only support Java 8 |
If you are using a Maven configuration to manage and build your project use this approach to create a Sourcetrail Source Group.
Maven Project Indexed Paths -In the first step you need to enter meta information about the project.
+In the first step you need to choose your Maven pom.xml file and select a directory where the dependencies get stored.
@@ -1083,48 +1086,11 @@
After this step the New Project Summary will appear as last step in the project creation proccess.
+After this step you will return to the Project Setup Wizard.
This window appears at the end of the Project Setup Wizard to summarize all the information entered before. It is the same as the Edit Project Window.
- -
- If you are following the Quick Start Guide then please continue at Source Indexing after pressing Create.
-This window displays all the information relevant for your Sourcetrail project. Please have a look at the Project Setup Wizard for descriptions on each setting.
-
- The Enter License Window appears on your first start of Sourcetrail and is used to enter and check your Sourcetrail license key.
Shows Sourcetrail's End User License Agreement. On macOs and Linux you will be promted to accept it on your first run of the application.
+
+ These dialogs will be used while Sourcetrail indexes your project. The whole user interface will be frozen as long as these dialogs are visible.
@@ -1245,20 +1221,6 @@The left Backward button lets you undo your last navigation actions (see Back) and the right Forward button lets you redo your undone navigation actions again (see Forward). Both buttons are only enabled when the respective actions are available at the moment.
+The middle button shows a list of the recently active symbol stack. Select a symbol to activate it.
+ The communication between Sourcetrail and the code editor is achieved using a local TCP connection. Sourcetrail uses the port 6667 to listen for incoming messages. Outgoing messages will be sent to the port 6666. The port numbers can be edited in the Preferences Window.
Outgoing messages are in the form: