Compare commits

...
Author SHA1 Message Date
mlangkabel 532ecbfc73 docs: update documentation version and fix link 2021-03-14 08:36:53 +01:00
Josh SorefandGitHub 12bbce899e build: replace timestamp endpoint for Windows code signing (#1164)
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
2021-03-14 08:13:08 +01:00
Josh SorefandGitHub 3a75ef0df4 src: correct spelling errors (#1162) 2021-03-14 07:47:26 +01:00
Malte LangkabelandGitHub 5932e9f1e8 ui: hide news widget if no news are available (#1160) 2021-03-09 07:48:16 +01:00
Malte LangkabelandGitHub 804e564c8d update SourcetrailPythonIndexer to version 1.25.6 to fix TextAccess issue (#1159)
* before this update the SourcetrailPythonIndexer was saving indexed code to the database different than Sourcetrail, which could result in crashes
2021-03-09 07:43:27 +01:00
mlangkabel 7c30074165 res: Updated SPONSORS.md - March 2021 2021-03-08 22:13:28 +01:00
Malte LangkabelandGitHub 33e3f96283 build: make Windows CI build and test Java language support (#1156) 2021-03-03 07:33:29 +01:00
Rainer WinklerandGitHub f1686147c4 doc: Adapt cmake -DBOOST_ROOT path in README to reflect downgrade of boost (#1153)
With #775 Boost was downgraded to 1.67 (from 1.68).
With pull request #807 the readme file was corrected. But this correction was not complete. The example path for the -DBOOST_ROOT parameter of cmake was left unchanged.
2021-02-27 19:39:04 +01:00
Malte LangkabelandGitHub 220ac82681 data: update Java dependencies to add support for Java 13, 14 and 15 (#1152)
* updated java indexer dependencies
* replaced old gradle tooling jar that is shipped with Sourcetrail because it is not working for new JRE versions anymore
* fixed crash in Java indexer
* added language standard sleection for Java 13, 14 and 15
* fixed console logging for recent jdk versions
2021-02-25 18:28:17 +01:00
Malte LangkabelandGitHub 7cb232af86 remove call to boost::filesystem::canonical when preparing indexer (issue #1149) (#1151)
boost::filesystem::canonical causes issues on Windows and will throw an exception if path is too long. Now those paths will be ignored by the indexer because boost::filesystem::exists returns false.
2021-02-25 07:38:01 +01:00
mlangkabel 5a2b0fd591 test: add HierarchyCache test for diamond inheritance and fix cyclic inheritance test 2021-02-23 23:12:16 +01:00
Toni DietzeandGitHub 7d344fb08e logic: fix multi-level inheritance edges when there are diamonds (#1142)
The old implementation produces several multi-inheritance edges between
two classes if there are multiple inheritance paths between them due to
multiple inheritance diamonds. The new implementation produces only one
edge in such a case.

Also, the old implementation has performance issues when there is a huge
number of inheritance paths starting at the focused class. With a
pathological multiple inheritance class structure, the number of paths
can be exponential in the number of involved classes. The new
implementation solves this issue by considering subgraphs instead of
paths.

The following is a small problematic example, which does not show the
performance problem due to its small size. However, when focusing on
X::foo, the old implementation produces 4 different multi-level
inheritance edges from X to B1 while the new implementation produces
only one multi-level inheritance edge, which is basically the union of
the edges of the old implementation:

    struct B1 {
    	virtual void foo() = 0;
    };
    struct C1 : B1 {};
    struct D1 : B1 {};
    struct B2 : C1, D1 {};
    struct C2 : B2 {};
    struct D2 : B2 {};
    struct B3 : C2, D2 {};

    struct X : B3 {
    	void foo() override {};
    };

    int main () {
    	X x;
    	x.foo();
    	return 0;
    }
2021-02-23 23:04:18 +01:00
Malte LangkabelandGitHub 4b922ed103 src: specify if file or directory path is returned by helpers (#1146) 2021-02-22 21:55:30 +01:00
mlangkabel 6ab808852c test: make HierarchyCache tests independent of edge order 2021-02-22 18:22:51 +01:00
mlangkabel 4d35697f9e test: add inheritance edge tests for HierarchyCache 2021-02-22 17:04:16 +01:00
Malte LangkabelandGitHub 3c1638da25 src: switch from Qt to boost implementation of executeProcess (#1145)
* changed implementation of executeProcess
* unified all different implementations of executeProcess
* separated arg list from command for all calls of executeProcess (this also required to remove quotes that were added to path args because otherwise the Python indexer would mistake absolute paths for relative paths.)
* update expected output for custom command tests
2021-02-22 16:00:32 +01:00
mlangkabel 9a13c194df ui: remove "beta" notice for Python support 2021-02-17 07:30:30 +01:00
BenandGitHub be68740839 doc: markdown formatting of docker readme (#1140)
indented code snippets by 4 spaces
2021-02-16 08:22:48 +01:00
37b4bbb432 src: simplify symbolic link resolution in Linux Sourcetrail launch script (#1134)
Co-authored-by: Yakov Markovitch <yakov.spare@gmail.com>
2021-02-15 20:31:26 +01:00
midchildanandGitHub 64b42f1de4 src: fix java path detection failures on linux (#1138)
readlink was being invoked as "readlink" "-f path/to/java". It should've been "readlink" "-f" "path/to/java" instead.
2021-02-15 19:48:06 +01:00
mlangkabel 17cbe4619f res: Updated SPONSORS.md - February 2021 2021-02-15 16:35:28 +01:00
freddiiandGitHub b60eaa5b09 docs: fixed typos (#1131) 2021-02-08 13:18:25 +01:00
Malte LangkabelandGitHub b642929790 Revert "Revert "test: fix expected output for CXX indexer tests"" (#1137)
This reverts commit e3c0ed9349.
2021-02-08 12:47:08 +01:00
Malte LangkabelandGitHub a4e0296471 src: revert migration of QProcess::start() to QStringList (#1136)
* Revert "src: Migrate QProcess::start() to QStringList (#1107)"

This reverts commit 8b8c186697.

* Revert "fix escaping in mvn path detector (necessary after 8b8c1866)"

This reverts commit fcd2f33304.
2021-02-08 11:20:02 +01:00
mlangkabel 220b8bad0b logic: add nullpointer checks in CXX ast visitor 2021-01-25 22:02:16 +01:00
254 changed files with 1585 additions and 1224 deletions
+14 -14
View File
@@ -226,7 +226,7 @@ released 2018-12-18
* Fixed indexed source files not updated when clicking "show files" after other changes in project setup
* Linux: Fixed issue in sourcetrail.sh script (issue [#638](https://github.com/CoatiSoftware/Sourcetrail/issues/638))
* Inspect errors during indexing (issue [#235](https://github.com/CoatiSoftware/Sourcetrail/issues/235))
* C/C++: Fixed header path selection in Source Group setup also preselects non exsiting paths (issue [#640](https://github.com/CoatiSoftware/Sourcetrail/issues/640))
* C/C++: Fixed header path selection in Source Group setup also preselects non existing paths (issue [#640](https://github.com/CoatiSoftware/Sourcetrail/issues/640))
* Graph: Fixed graph node centering shows right end when node has greater width than view
* Code: Fixed multiple multiline comments within one line not correctly highlighted
* Code: Changed snippet style, removing per file frame and minimize/snippet buttons
@@ -292,7 +292,7 @@ released 2018-08-31
* Windows: Fixed policy for finding Windows user data folder (issue [#612](https://github.com/CoatiSoftware/Sourcetrail/issues/612))
* C/C++: Fixed recording of multiple cxx anonymous namespaces within the same file
* C/C++: Fixed files within indexed directories always refreshed in empty C/C++ source groups
* Code: Don't show list of overriden methods when clicking overriding method
* Code: Don't show list of overridden methods when clicking overriding method
* Code: Fixed local reference navigation not shown for edges when file content was not cached
* Fixed crash related to update check when app was opened with a project
* Tooltip: Fixed repeated signature name qualification and line breaks
@@ -477,7 +477,7 @@ released 2018-01-30
* Group include validation results by file and add line breaks for readability
* Fixed location pickers used system root directory when empty
* Graph: Add "bidirectional" to tooltip of bidirectional aggregation edges
* Linux: Don't explicitely open terminal when running on Linux (issue [#525](https://github.com/CoatiSoftware/Sourcetrail/issues/525))
* Linux: Don't explicitly open terminal when running on Linux (issue [#525](https://github.com/CoatiSoftware/Sourcetrail/issues/525))
* Fixed files and directories dialog to offer selection of files (issue [#521](https://github.com/CoatiSoftware/Sourcetrail/issues/521))
* C++: Fixed cases where references to members were recorded as usage instead of call
* Fixed crash when Start Screen is closed while checking for update
@@ -554,7 +554,7 @@ released 2017-10-25
* Code: Added indexing of qualifier source locations and allow symbol activation by clicking qualifiers
* Linux: Enabled Qt highDPI scaling to fix UI issues on high resolution screens
* Fixed handling of non-indexed files in Graph and Code
* C/C++: Removed include check validataion for compilation database source groups
* C/C++: Removed include check validation for compilation database source groups
* Graph: Bundle nested anonymous namespaces into anonymous namespace bundle in namespace overview (issue [#465](https://github.com/CoatiSoftware/Sourcetrail/issues/465))
* Search: Fixed vertical growth of search bar area when resizing window
* Visual Studio plugin: Lots off fixes, see changelog (https://github.com/CoatiSoftware/vs-sourcetrail/blob/master/CHANGELOG.md)
@@ -722,7 +722,7 @@ released 2017-04-12
#### 0.11.15
released 2017-03-01
* Don't accept richt text in 'enter license' dialog field (issue [#207](https://github.com/CoatiSoftware/Sourcetrail/issues/207))
* Don't accept rich text in 'enter license' dialog field (issue [#207](https://github.com/CoatiSoftware/Sourcetrail/issues/207))
* Updated EULA to include Test License and better clarify other license types
* Fixed icons in project setup dialogs blurry on highDPI screens
* Added link to additional downloadable pre-indexed projects to trial start screen
@@ -787,7 +787,7 @@ released 2017-03-01
* Code: Added single file view mode
* Code: Added navigation bar with mode toggle and buttons to navigate references
* Graph: Removed underscores in edge hover names
* Infere some non-indexed node types by their edges
* Infer some non-indexed node types by their edges
#### 0.10.0
@@ -825,7 +825,7 @@ released 2016-12-14
* Integrated Visual Studio Plugin with Coati Project creation and removed previous Visual Studio Solution parser
* Improved C++ indexer coverage: using decls, using directives, auto keyword, lambda signatures, symbol references inside lambda captures, template argument related elements
* Reduced size of .coatidb file by up to 50% for large projects
* Fixed anonymouse symbol name conflicts (issue [#241](https://github.com/CoatiSoftware/Sourcetrail/issues/241))
* Fixed anonymous symbol name conflicts (issue [#241](https://github.com/CoatiSoftware/Sourcetrail/issues/241))
* Preferences: Added Indexer Logging option to print AST information during indexing
* Search: Added second line to search autocompletion list showing namespace, package or filepath
* Made cells readonly in errors table to prevent editing (issue [#236](https://github.com/CoatiSoftware/Sourcetrail/issues/236))
@@ -1003,8 +1003,8 @@ released 2016-06-15
* Added Qt gif plugin to Mac Release so that loader gif in status bar is visible
* Added link to download page to start screen to remind users of updating once in a while
* Check if compilation database still exists before refreshing
* Added separate step for defining project name, project location and compiliation database to project setup
* Explain that the project stays up-to-date with the compilation databes on refresh in project setup UI
* Added separate step for defining project name, project location and compilation database to project setup
* Explain that the project stays up-to-date with the compilation database on refresh in project setup UI
* Disregard source extensions when loading from compilation database
* Removed error logs in name resolver
* Added plugin for VIM: https://github.com/CoatiSoftware/vim-coati
@@ -1012,7 +1012,7 @@ released 2016-06-15
#### 0.6.0.0
released 2016-04-27
* Added suppport for temporary test licenses and show error message when it expired
* Added support for temporary test licenses and show error message when it expired
* Increased search autocompletion performance to stay mostly below 100ms
* Increased project load performance
* Improved file clearing performance on project refresh
@@ -1096,7 +1096,7 @@ released 2016-02-25
* Show overview on project open with node bundles per type
* Added application move protection to reenter license key
* Improved log file names to be sorted chronologically
* Improved graph view node bundeling to bundle more
* Improved graph view node bundling to bundle more
* Display scope name at bottom of code snippet
* Added .coatiproject file associations with icon for Mac and Windows
* Return to last scroll position when going back in code view
@@ -1111,7 +1111,7 @@ released 2016-02-25
* Fixed cursor changing for resize and text interactions
* Added commandline option for project file
* Improved performance of token name saving
* Fixed number postions in graph
* Fixed number positions in graph
* Added shortcuts for font size resetting to View menu
* Added C support
* Added option to hide widget window title bars to View menu
@@ -1127,10 +1127,10 @@ released 2016-01-07
* Improved lambda handling in analysis
* Added help texts to project setup and preferences window
* Removed 'close window' action from menu
* Fixed constructors and destructors using return type 'void' withou source location
* Fixed constructors and destructors using return type 'void' without source location
* Parse errors will be displayed as they appear during analysis
* Redesigned the about window
* Installing prerequisits in Windows Installer
* Installing prerequisites in Windows Installer
* Added installer for Windows
* Introduced file endings .coatiproject and .coatidb for Coati's project files
* Removed Coati directory from Linux package
+10 -2
View File
@@ -56,6 +56,14 @@ else ()
set(PLATFORM_INCLUDE "includesLinux.h")
endif ()
set (BASH "")
if (WIN32)
execute_process(COMMAND CMD /c where bash OUTPUT_VARIABLE BASH)
string(REGEX REPLACE "\n$" "" BASH "${BASH}")
endif ()
message ("bash: '${BASH}'")
# Project ----------------------------------------------------------------------
@@ -471,7 +479,7 @@ if (BUILD_JAVA_LANGUAGE_PACKAGE)
add_custom_command(
TARGET ${LIB_JAVA_PROJECT_NAME}
PRE_BUILD
COMMAND ${PROJECT_SOURCE_DIR}/script/update_java_indexer.sh
COMMAND ${BASH} ${PROJECT_SOURCE_DIR}/script/update_java_indexer.sh
COMMENT "updating java indexer jars"
)
@@ -506,7 +514,7 @@ if (BUILD_PYTHON_LANGUAGE_PACKAGE)
add_custom_command(
TARGET ${LIB_PYTHON_PROJECT_NAME}
PRE_BUILD
COMMAND ${PROJECT_SOURCE_DIR}/script/download_python_indexer.sh
COMMAND ${BASH} ${PROJECT_SOURCE_DIR}/script/download_python_indexer.sh
COMMENT "download python indexer"
)
+1 -1
View File
@@ -2,7 +2,7 @@
If you like this project and want to get involved, there are lots of ways you can help:
* __Spread the word.__ The more people want this project to grow, the greater the motivation for the developers to get things done.
* __Fund the development.__ Further development and maintainance of this project is crowd funded via [Patreon](https://www.patreon.com/sourcetrail). If you would like Sourcetrail to grow and improve but cannot spare the time to contribute your self, please consider making a pledge.
* __Fund the development.__ Further development and maintenance of this project is crowd funded via [Patreon](https://www.patreon.com/sourcetrail). If you would like Sourcetrail to grow and improve but cannot spare the time to contribute your self, please consider making a pledge.
* __Test Sourcetrail.__ Run it on your own source code. If you find any issues, just report it here. Best, include some detailed step-by-step instructions that illustrate how to reproduce the issue, so that we can use it as a basis to craft a test case for our continuous integration and no one will ever break that case again.
* __Write some code.__ Don't be shy here. You can implement whole new features or fix some bugs, but you can also do some refactoring if you think that it benefits the readability or the maintainability of the code. Still, no matter if you just want to work on cosmetics or implement new features, it would be best if you create an issue here on the issue tracker before you actually start handing in pull requests, so that we can discuss those changes first and thus raise the probability that those changes will get pulled quickly.
+5 -5
View File
@@ -113,7 +113,7 @@ Building Sourcetrail requires several dependencies to be in place on your machin
$ cd Sourcetrail
$ mkdir -p build/win64
$ cd build/win64
$ cmake -G "Visual Studio 15 2017 Win64" -DBOOST_ROOT=<path/to/boost_1_68_0> -DQt5_DIR=<path/to/Qt/version/platform/compiler/lib/cmake/Qt5> ../..
$ cmake -G "Visual Studio 15 2017 Win64" -DBOOST_ROOT=<path/to/boost_1_67_0> -DQt5_DIR=<path/to/Qt/version/platform/compiler/lib/cmake/Qt5> ../..
```
_Hint: If you are using the CMake GUI, we recommend that you activate advanced mode. Also you may be required to add some of the defines via the "Add Entry" button._
@@ -126,7 +126,7 @@ Building Sourcetrail requires several dependencies to be in place on your machin
$ cd Sourcetrail
$ mkdir -p build/Release
$ cd build/Release
$ cmake -DCMAKE_BUILD_TYPE="Release" -DBOOST_ROOT=<path/to/boost_1_68_0> -DQt5_DIR=<path/to/Qt/version/platform/compiler/lib/cmake/Qt5> ../..
$ cmake -DCMAKE_BUILD_TYPE="Release" -DBOOST_ROOT=<path/to/boost_1_67_0> -DQt5_DIR=<path/to/Qt/version/platform/compiler/lib/cmake/Qt5> ../..
```
* Now start the build with:
```
@@ -143,7 +143,7 @@ Building Sourcetrail requires several dependencies to be in place on your machin
### Required dependencies
* __LLVM/Clang 11.0.0__
* __Reason__: Used for running the preprocessor on the indexedes source code, building and traversing an Abstract Syntax Tree and generating error messages.
* __Reason__: Used for running the preprocessor on the indexed source code, building and traversing an Abstract Syntax Tree and generating error messages.
* __Building__: Make sure to check out the correct tag: `git checkout llvmorg-11.0.0`
* __Building for Windows__: Follow [these steps](https://clang.llvm.org/get_started.html) to build the project. Run the cmake command exactly as described.
* __Building for Unix__: Follow this [installation guide](http://clang.llvm.org/docs/LibASTMatchersTutorial.html) to build the project. Make sure to build with `-DLLVM_ENABLE_RTTI=ON`.
@@ -163,14 +163,14 @@ Building Sourcetrail requires several dependencies to be in place on your machin
* __JDK 1.8__
* __Reason__: Used to build the Java indexer and make it callable from the C++ code via JNI.
* __Remarks__: Make sure that `<jdk_root>/bin` is available in your `PATH` environmen variable and that the `JAVA_HOME` environment variable is set:
* __Remarks__: Make sure that `<jdk_root>/bin` is available in your `PATH` environment variable and that the `JAVA_HOME` environment variable is set:
```
JAVA_HOME=<path/to/Java>/jdk1.x.x_xxx
```
* __Maven__
* __REASON__: Used within Sourcetrail's automated tests.
* __Remarks__: Make sure `.../apache-maven-x.x.x/bin` is available in your `PATH` environmen variable and that both `M2_HOME` and `MAVEN_HOME` environment variables are set:
* __Remarks__: Make sure `.../apache-maven-x.x.x/bin` is available in your `PATH` environment variable and that both `M2_HOME` and `MAVEN_HOME` environment variables are set:
```
M2_HOME=.../apache-maven-x.x.x
MAVEN_HOME=.../apache-maven-x.x.x
+6 -3
View File
@@ -5,7 +5,9 @@ Sponsors [via Patreon](https://www.patreon.com/sourcetrail).
## Legendary Coatis
* Akinobu Fujii
* Chris Anderson
* Mario van Beek
* Tai-Wu Chiang
* Timothee Besset
## Super Coatis
@@ -13,6 +15,8 @@ Sponsors [via Patreon](https://www.patreon.com/sourcetrail).
* Alexis Jeandet
* Anshu Mathur
* Chris Morley
* dsp
* Georg Friedrich
* Konstantin Kirenko
* Louis St-Amour
* William Wold
@@ -23,7 +27,7 @@ Sponsors [via Patreon](https://www.patreon.com/sourcetrail).
* Andreas
* Anton
* Bicakci, Inc.
* BJ
* Christian Hipp
* Dio Lee
* Ferenc Fejes
* Frederic Simonis
@@ -32,7 +36,6 @@ Sponsors [via Patreon](https://www.patreon.com/sourcetrail).
* IndustrialRobot
* Jason Stevens
* John Borland
* Kikuchi Takanori
* MangerDesPates
* Matěj Týč
* Max Bruckner
@@ -45,6 +48,7 @@ Sponsors [via Patreon](https://www.patreon.com/sourcetrail).
* Rémi Cohen-Scali
* Rui Pires
* Ryo Koyama
* Saket Sinha
* Simon
* Sneakyferret
* Stephan Roslen
@@ -54,6 +58,5 @@ Sponsors [via Patreon](https://www.patreon.com/sourcetrail).
* X. Xu
* Yacob Cohen-Arazi
* Yang, Wenbo
* 郝晨煜
_Note: This file will be updated at the beginning of each month._
+5 -4
View File
@@ -16,14 +16,11 @@ before_build:
- cd build
- mkdir temp
- cd ../
- cd script
- cmd: "\"C:/Program Files/Git/usr/bin/bash.exe\" download_python_indexer.sh"
- cd ../
- cd build
- mkdir win64
- cd win64
- call "C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Auxiliary\Build\vcvarsall.bat" amd64
- cmake -G "Ninja" -DBOOST_ROOT=C:/Libraries/boost_1_69_0 -DQt5_DIR=C:/Qt/5.12.6/msvc2017_64/lib/cmake/Qt5 -DBUILD_PYTHON_LANGUAGE_PACKAGE=ON -DCMAKE_BUILD_TYPE=Release ../../
- cmake -G "Ninja" -DBOOST_ROOT=C:/Libraries/boost_1_69_0 -DQt5_DIR=C:/Qt/5.12.6/msvc2017_64/lib/cmake/Qt5 -DBUILD_JAVA_LANGUAGE_PACKAGE=ON -DBUILD_PYTHON_LANGUAGE_PACKAGE=ON -DCMAKE_BUILD_TYPE=Release ../../
- cd ../../
build_script:
@@ -32,6 +29,10 @@ build_script:
- cd ../../
test_script:
- cd bin/app
- ..\..\build\win64\Release\app\Sourcetrail.exe config -j "C:/Program Files/Java/jdk1.8.0/jre/bin/server/jvm.dll"
- cd ../../
- ps: copy bin/app/user/ApplicationSettings.xml bin/test/data/TestSettings.xml
- cd bin/test
- ..\..\build\win64\Release\test\Sourcetrail_test.exe
- cd ../../
+2 -2
View File
@@ -171,7 +171,7 @@
</hatching>
</default>
<!-- OPTIONAL: type specific node colors can be overriden by using the TEMPLATE within a type tag below -->
<!-- OPTIONAL: type specific node colors can be overridden by using the TEMPLATE within a type tag below -->
<type></type>
<builtin_type></builtin_type>
<class></class>
@@ -211,7 +211,7 @@
<focus></focus> <!-- If not defined, the normal tag is used -->
</default>
<!-- OPTIONAL: type specific edge colors can be overriden by using the TEMPLATE within a type tag below -->
<!-- OPTIONAL: type specific edge colors can be overridden by using the TEMPLATE within a type tag below -->
<type_of></type_of>
<return_type></return_type>
<parameter_type></parameter_type>
@@ -49,6 +49,7 @@
color: black;
font-size: 12px;
font-weight: bold;
min-width: 200px;
}
#textField {
@@ -172,7 +172,7 @@ class HumanPlayer(Player):
def _check(self, field, move):
if not field.inRange(move):
stringOut("Wrong inpot!\n")
stringOut("Wrong input!\n")
return False
elif not field.isEmpty(move):
stringOut("Is occupied!\n")
@@ -7,7 +7,7 @@
//------------------------------------------------------------------------------
//
// ANYTING ELSE I SHOULD KNOW?
// ANYTHING ELSE I SHOULD KNOW?
// I'm glad that you asked. Take a look at the code below. You will notice two
// different highlights when hovering different symbols in that snippet. One
// is used for symbols that may be used everywhere throughout your code base
@@ -7,7 +7,7 @@
//------------------------------------------------------------------------------
//
// 9 - CONGRATULATONS
// 9 - CONGRATULATIONS
// You have completed the challenge of search.
// Oh, I almost forgot: You can only find nodes such as symbols via the search
// bar. It doesn't allow you to find edges like calls or inheritance. At least
@@ -1,6 +1,12 @@
SourceFilePath: "src/a.txt"
IndexerCommandCustom
SourceFilePath: "src/a.txt"
Custom Command: "echo "Hello World""
SourceFilePath: "src/b.txt"
Arguments:
IndexerCommandCustom
SourceFilePath: "src/b.txt"
Custom Command: "echo "Hello World""
SourceFilePath: "src/included/a.txt"
Arguments:
IndexerCommandCustom
SourceFilePath: "src/included/a.txt"
Custom Command: "echo "Hello World""
Arguments:
@@ -1,6 +1,12 @@
SourceFilePath: "src/a.txt"
IndexerCommandCustom
SourceFilePath: "src/a.txt"
Custom Command: "echo "Hello World""
SourceFilePath: "src/b.txt"
Arguments:
IndexerCommandCustom
SourceFilePath: "src/b.txt"
Custom Command: "echo "Hello World""
SourceFilePath: "src/included/a.txt"
Arguments:
IndexerCommandCustom
SourceFilePath: "src/included/a.txt"
Custom Command: "echo "Hello World""
Arguments:
@@ -1,6 +1,5 @@
#Thu Mar 01 09:01:25 CST 2018
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-6.0.1-bin.zip
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-4.6-bin.zip
+42 -23
View File
@@ -1,4 +1,20 @@
#!/usr/bin/env bash
#!/usr/bin/env sh
#
# Copyright 2015 the original author or authors.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# https://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#
##############################################################################
##
@@ -28,16 +44,16 @@ APP_NAME="Gradle"
APP_BASE_NAME=`basename "$0"`
# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
DEFAULT_JVM_OPTS=""
DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"'
# Use the maximum available, or set MAX_FD != -1 to use that value.
MAX_FD="maximum"
warn ( ) {
warn () {
echo "$*"
}
die ( ) {
die () {
echo
echo "$*"
echo
@@ -109,8 +125,8 @@ if $darwin; then
GRADLE_OPTS="$GRADLE_OPTS \"-Xdock:name=$APP_NAME\" \"-Xdock:icon=$APP_HOME/media/gradle.icns\""
fi
# For Cygwin, switch paths to Windows format before running java
if $cygwin ; then
# For Cygwin or MSYS, switch paths to Windows format before running java
if [ "$cygwin" = "true" -o "$msys" = "true" ] ; then
APP_HOME=`cygpath --path --mixed "$APP_HOME"`
CLASSPATH=`cygpath --path --mixed "$CLASSPATH"`
JAVACMD=`cygpath --unix "$JAVACMD"`
@@ -138,27 +154,30 @@ if $cygwin ; then
else
eval `echo args$i`="\"$arg\""
fi
i=$((i+1))
i=`expr $i + 1`
done
case $i in
(0) set -- ;;
(1) set -- "$args0" ;;
(2) set -- "$args0" "$args1" ;;
(3) set -- "$args0" "$args1" "$args2" ;;
(4) set -- "$args0" "$args1" "$args2" "$args3" ;;
(5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;;
(6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;;
(7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" ;;
(8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" ;;
(9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" "$args8" ;;
0) set -- ;;
1) set -- "$args0" ;;
2) set -- "$args0" "$args1" ;;
3) set -- "$args0" "$args1" "$args2" ;;
4) set -- "$args0" "$args1" "$args2" "$args3" ;;
5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;;
6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;;
7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" ;;
8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" ;;
9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" "$args8" ;;
esac
fi
# Split up the JVM_OPTS And GRADLE_OPTS values into an array, following the shell quoting and substitution rules
function splitJvmOpts() {
JVM_OPTS=("$@")
# Escape application args
save () {
for i do printf %s\\n "$i" | sed "s/'/'\\\\''/g;1s/^/'/;\$s/\$/' \\\\/" ; done
echo " "
}
eval splitJvmOpts $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS
JVM_OPTS[${#JVM_OPTS[*]}]="-Dorg.gradle.appname=$APP_BASE_NAME"
APP_ARGS=`save "$@"`
exec "$JAVACMD" "${JVM_OPTS[@]}" -classpath "$CLASSPATH" org.gradle.wrapper.GradleWrapperMain "$@"
# Collect all arguments for the java command, following the shell quoting and substitution rules
eval set -- $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS "\"-Dorg.gradle.appname=$APP_BASE_NAME\"" -classpath "\"$CLASSPATH\"" org.gradle.wrapper.GradleWrapperMain "$APP_ARGS"
exec "$JAVACMD" "$@"
@@ -1,3 +1,19 @@
@rem
@rem Copyright 2015 the original author or authors.
@rem
@rem Licensed under the Apache License, Version 2.0 (the "License");
@rem you may not use this file except in compliance with the License.
@rem You may obtain a copy of the License at
@rem
@rem https://www.apache.org/licenses/LICENSE-2.0
@rem
@rem Unless required by applicable law or agreed to in writing, software
@rem distributed under the License is distributed on an "AS IS" BASIS,
@rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
@rem See the License for the specific language governing permissions and
@rem limitations under the License.
@rem
@if "%DEBUG%" == "" @echo off
@rem ##########################################################################
@rem
@@ -14,7 +30,7 @@ set APP_BASE_NAME=%~n0
set APP_HOME=%DIRNAME%
@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
set DEFAULT_JVM_OPTS=
set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m"
@rem Find java.exe
if defined JAVA_HOME goto findJavaFromJavaHome
@@ -49,7 +65,6 @@ goto fail
@rem Get command-line arguments, handling Windows variants
if not "%OS%" == "Windows_NT" goto win9xME_args
if "%@eval[2+2]" == "4" goto 4NT_args
:win9xME_args
@rem Slurp the command line arguments.
@@ -60,11 +75,6 @@ set _SKIP=2
if "x%~1" == "x" goto execute
set CMD_LINE_ARGS=%*
goto execute
:4NT_args
@rem Get arguments from the 4NT Shell from JP Software
set CMD_LINE_ARGS=%$
:execute
@rem Setup the command line
@@ -29,7 +29,7 @@ public class AppTest
}
/**
* Rigourous Test :-)
* Rigorous Test :-)
*/
public void testApp()
{
+1 -1
View File
@@ -1,7 +1,7 @@
"If you're a researcher on this book thing and you were on Earth, you must have been gathering material on it."
"Well, I was able to extend the original entry a bit, yes."
"Let me see what it says in this edition, then. I've got to see it."
... "What? Harmless! Is that all it's got to say? Harmless! One word! ... Well, for God's sake I hope you managed to recitify that a bit."
... "What? Harmless! Is that all it's got to say? Harmless! One word! ... Well, for God's sake I hope you managed to rectify that a bit."
"Oh yes, well I managed to transmit a new entry off to the editor. He had to trim it a bit, but it's still an improvement."
"And what does it say now?" asked Arthur.
"Mostly harmless," admitted Ford with a slightly embarrassed cough.
@@ -1,6 +1,5 @@
#Thu Mar 01 09:01:25 CST 2018
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-6.0.1-bin.zip
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-4.6-bin.zip
@@ -1,4 +1,20 @@
#!/usr/bin/env bash
#!/usr/bin/env sh
#
# Copyright 2015 the original author or authors.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# https://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#
##############################################################################
##
@@ -28,16 +44,16 @@ APP_NAME="Gradle"
APP_BASE_NAME=`basename "$0"`
# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
DEFAULT_JVM_OPTS=""
DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"'
# Use the maximum available, or set MAX_FD != -1 to use that value.
MAX_FD="maximum"
warn ( ) {
warn () {
echo "$*"
}
die ( ) {
die () {
echo
echo "$*"
echo
@@ -109,8 +125,8 @@ if $darwin; then
GRADLE_OPTS="$GRADLE_OPTS \"-Xdock:name=$APP_NAME\" \"-Xdock:icon=$APP_HOME/media/gradle.icns\""
fi
# For Cygwin, switch paths to Windows format before running java
if $cygwin ; then
# For Cygwin or MSYS, switch paths to Windows format before running java
if [ "$cygwin" = "true" -o "$msys" = "true" ] ; then
APP_HOME=`cygpath --path --mixed "$APP_HOME"`
CLASSPATH=`cygpath --path --mixed "$CLASSPATH"`
JAVACMD=`cygpath --unix "$JAVACMD"`
@@ -138,27 +154,30 @@ if $cygwin ; then
else
eval `echo args$i`="\"$arg\""
fi
i=$((i+1))
i=`expr $i + 1`
done
case $i in
(0) set -- ;;
(1) set -- "$args0" ;;
(2) set -- "$args0" "$args1" ;;
(3) set -- "$args0" "$args1" "$args2" ;;
(4) set -- "$args0" "$args1" "$args2" "$args3" ;;
(5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;;
(6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;;
(7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" ;;
(8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" ;;
(9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" "$args8" ;;
0) set -- ;;
1) set -- "$args0" ;;
2) set -- "$args0" "$args1" ;;
3) set -- "$args0" "$args1" "$args2" ;;
4) set -- "$args0" "$args1" "$args2" "$args3" ;;
5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;;
6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;;
7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" ;;
8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" ;;
9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" "$args8" ;;
esac
fi
# Split up the JVM_OPTS And GRADLE_OPTS values into an array, following the shell quoting and substitution rules
function splitJvmOpts() {
JVM_OPTS=("$@")
# Escape application args
save () {
for i do printf %s\\n "$i" | sed "s/'/'\\\\''/g;1s/^/'/;\$s/\$/' \\\\/" ; done
echo " "
}
eval splitJvmOpts $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS
JVM_OPTS[${#JVM_OPTS[*]}]="-Dorg.gradle.appname=$APP_BASE_NAME"
APP_ARGS=`save "$@"`
exec "$JAVACMD" "${JVM_OPTS[@]}" -classpath "$CLASSPATH" org.gradle.wrapper.GradleWrapperMain "$@"
# Collect all arguments for the java command, following the shell quoting and substitution rules
eval set -- $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS "\"-Dorg.gradle.appname=$APP_BASE_NAME\"" -classpath "\"$CLASSPATH\"" org.gradle.wrapper.GradleWrapperMain "$APP_ARGS"
exec "$JAVACMD" "$@"
@@ -1,3 +1,19 @@
@rem
@rem Copyright 2015 the original author or authors.
@rem
@rem Licensed under the Apache License, Version 2.0 (the "License");
@rem you may not use this file except in compliance with the License.
@rem You may obtain a copy of the License at
@rem
@rem https://www.apache.org/licenses/LICENSE-2.0
@rem
@rem Unless required by applicable law or agreed to in writing, software
@rem distributed under the License is distributed on an "AS IS" BASIS,
@rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
@rem See the License for the specific language governing permissions and
@rem limitations under the License.
@rem
@if "%DEBUG%" == "" @echo off
@rem ##########################################################################
@rem
@@ -14,7 +30,7 @@ set APP_BASE_NAME=%~n0
set APP_HOME=%DIRNAME%
@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
set DEFAULT_JVM_OPTS=
set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m"
@rem Find java.exe
if defined JAVA_HOME goto findJavaFromJavaHome
@@ -49,7 +65,6 @@ goto fail
@rem Get command-line arguments, handling Windows variants
if not "%OS%" == "Windows_NT" goto win9xME_args
if "%@eval[2+2]" == "4" goto 4NT_args
:win9xME_args
@rem Slurp the command line arguments.
@@ -60,11 +75,6 @@ set _SKIP=2
if "x%~1" == "x" goto execute
set CMD_LINE_ARGS=%*
goto execute
:4NT_args
@rem Get arguments from the 4NT Shell from JP Software
set CMD_LINE_ARGS=%$
:execute
@rem Setup the command line
@@ -29,7 +29,7 @@ public class AppTest
}
/**
* Rigourous Test :-)
* Rigorous Test :-)
*/
public void testApp()
{
@@ -29,7 +29,7 @@ public class AppTest
}
/**
* Rigourous Test :-)
* Rigorous Test :-)
*/
public void testApp()
{
@@ -29,7 +29,7 @@ public class AppTest
}
/**
* Rigourous Test :-)
* Rigorous Test :-)
*/
public void testApp()
{
+15 -15
View File
@@ -5,20 +5,20 @@ Dockerfiles for Sourcetrail
Build docker images
-------------------
docker build -t <account>/<reponame>:<tag> <Dockerfile>
docker build -t <account>/<reponame>:<tag> <Dockerfile>
Upload docker images
--------------------
docker login
docker push <account>/<reponame>:<tag>
docker login
docker push <account>/<reponame>:<tag>
Run docker images
-----------------
docker run -it <image> /bin/bash
docker run -it <image> /bin/bash
Update Guide
@@ -26,28 +26,28 @@ Update Guide
# delete old docker images
$ docker image ls
$ docker rmi coatisoftware/centos7_64_qt_llvm:<tag>
$ docker rmi coatisoftware/centos7_32_qt_llvm:<tag>
$ docker image ls
$ docker rmi coatisoftware/centos7_64_qt_llvm:<tag>
$ docker rmi coatisoftware/centos7_32_qt_llvm:<tag>
# docker clean up
$ docker system prune
$ docker system prune
# change library version numbers in docker files
# build and upload docker images with new <tag> e.g. qt591-llvm500:
$ cd deployment/dockerfiles/linux/centos7_64
$ docker build -t coatisoftware/centos7_64_qt_llvm:<tag> .
$ cd deployment/dockerfiles/linux/centos7_64
$ docker build -t coatisoftware/centos7_64_qt_llvm:<tag> .
$ docker login
$ docker push coatisoftware/centos7_64_qt_llvm:<tag>
$ docker login
$ docker push coatisoftware/centos7_64_qt_llvm:<tag>
$ cd ../centos7_32
$ docker build -t coatisoftware/centos7_32_qt_llvm:<tag> .
$ cd ../centos7_32
$ docker build -t coatisoftware/centos7_32_qt_llvm:<tag> .
$ docker push coatisoftware/centos7_32_qt_llvm:<tag>
$ docker push coatisoftware/centos7_32_qt_llvm:<tag>
# update <tag> of linux images in .gitlab-ci.yml
@@ -776,7 +776,7 @@
<summary>Detects the range of versions including the value in VersionMin.</summary>
</member>
<member name="F:Microsoft.Deployment.WindowsInstaller.UpgradeAttributes.VersionMaxInclusive">
<summary>Dectects the range of versions including the value in VersionMax.</summary>
<summary>Detects the range of versions including the value in VersionMax.</summary>
</member>
<member name="F:Microsoft.Deployment.WindowsInstaller.UpgradeAttributes.LanguagesExclusive">
<summary>Detects all languages, excluding the languages listed in the Language column.</summary>
@@ -1115,7 +1115,7 @@
<summary>
Gets the set of registered qualifiers for the component.
</summary>
<returns>Enumeration of the qulifiers for the component.</returns>
<returns>Enumeration of the qualifiers for the component.</returns>
<exception cref="T:Microsoft.Deployment.WindowsInstaller.InstallerException">The installer configuration data is corrupt</exception>
<remarks><p>
Because qualifiers are not ordered, any new qualifier has an arbitrary index,
@@ -1438,7 +1438,7 @@
</member>
<member name="M:Microsoft.Deployment.WindowsInstaller.CustomActionProxy.MethodHasCustomActionSignature(System.Reflection.MethodInfo)">
<summary>
Checks if a method has the right return and paramater types
Checks if a method has the right return and parameter types
for a custom action, and that it is marked by a CustomActionAttribute.
</summary>
<param name="method">Method to be checked.</param>
@@ -1508,7 +1508,7 @@
needed, as leaving lots of unused handles open can degrade performance.
</p><p>
The database is opened in <see cref="F:Microsoft.Deployment.WindowsInstaller.DatabaseOpenMode.CreateDirect" /> mode, and will be
automatically commited when it is closed.
automatically committed when it is closed.
</p><p>
Win32 MSI API:
<a href="http://msdn.microsoft.com/library/en-us/msi/setup/msiopendatabase.asp">MsiOpenDatabase</a>
@@ -1532,7 +1532,7 @@
longer needed, as leaving lots of unused handles open can degrade performance.
</p><p>
A database opened in <see cref="F:Microsoft.Deployment.WindowsInstaller.DatabaseOpenMode.CreateDirect" /> or
<see cref="F:Microsoft.Deployment.WindowsInstaller.DatabaseOpenMode.Direct" /> mode will be automatically commited when it is
<see cref="F:Microsoft.Deployment.WindowsInstaller.DatabaseOpenMode.Direct" /> mode will be automatically committed when it is
closed. However a database opened in <see cref="F:Microsoft.Deployment.WindowsInstaller.DatabaseOpenMode.Create" /> or
<see cref="F:Microsoft.Deployment.WindowsInstaller.DatabaseOpenMode.Transact" /> mode must have the <see cref="M:Microsoft.Deployment.WindowsInstaller.Database.Commit" /> method
called before it is closed, otherwise no changes will be persisted.
@@ -2779,7 +2779,7 @@
<summary>Patches that are superseded by other patches.</summary>
</member>
<member name="F:Microsoft.Deployment.WindowsInstaller.PatchStates.Obsoleted">
<summary>Patches that are obsolesced by other patches.</summary>
<summary>Patches that are obsoleted by other patches.</summary>
</member>
<member name="F:Microsoft.Deployment.WindowsInstaller.PatchStates.Registered">
<summary>Patches that are registered to a product but not applied.</summary>
@@ -3340,7 +3340,7 @@
</member>
<member name="P:Microsoft.Deployment.WindowsInstaller.MergeException.Message">
<summary>
Gets a message that describes the merge conflits.
Gets a message that describes the merge conflicts.
</summary>
</member>
<member name="M:Microsoft.Deployment.WindowsInstaller.MergeException.GetObjectData(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
@@ -3471,7 +3471,7 @@
</summary>
<param name="logModes">One or more mode flags specifying the type of messages to log</param>
<param name="logFile">Full path to the log file. A null path disables logging,
in which case the logModes paraneter is ignored.</param>
in which case the logModes parameter is ignored.</param>
<exception cref="T:System.ArgumentException">an invalid log mode was specified</exception>
<remarks>This method takes effect on any new installation processes. Calling this
method from within a custom action will not start logging for that installation.</remarks>
@@ -3483,7 +3483,7 @@
</summary>
<param name="logModes">One or more mode flags specifying the type of messages to log</param>
<param name="logFile">Full path to the log file. A null path disables logging,
in which case the logModes paraneter is ignored.</param>
in which case the logModes parameter is ignored.</param>
<param name="append">If true, the log lines will be appended to any existing file content.
If false, the log file will be truncated if it exists. The default is false.</param>
<param name="flushEveryLine">If true, the log will be flushed after every line.
@@ -3846,7 +3846,7 @@
<summary>
Determines which patches apply to a specified product and in what sequence. If
the product is installed, this method accounts for patches that have already been applied to
the product and accounts for obsolete and superceded patches.
the product and accounts for obsolete and superseded patches.
</summary>
<param name="product">The product that is the target for the set of patches. This may be
either a ProductCode (GUID) of a product that is currently installed, or the path to a an
@@ -4267,7 +4267,7 @@
<a href="http://msdn.microsoft.com/library/en-us/msi/setup/msigetfeatureinfo.asp">MsiGetFeatureInfo</a>,
<a href="http://msdn.microsoft.com/library/en-us/msi/setup/msisetfeatureattributes.asp">MsiSetFeatureAttributes</a>
</p><p>
Since the lpAttributes paramter of
Since the lpAttributes parameter of
<a href="http://msdn.microsoft.com/library/en-us/msi/setup/msigetfeatureinfo.asp">MsiGetFeatureInfo</a>
does not contain an equivalent flag for <see cref="F:Microsoft.Deployment.WindowsInstaller.FeatureAttributes.UIDisallowAbsent"/>, this flag will
not be retrieved.
@@ -4453,7 +4453,7 @@
</member>
<member name="P:Microsoft.Deployment.WindowsInstaller.InstallerHandle.Sync">
<summary>
Gets an object that can be used internally for safe syncronization.
Gets an object that can be used internally for safe synchronization.
</summary>
</member>
<member name="M:Microsoft.Deployment.WindowsInstaller.InstallerHandle.Dispose(System.Boolean)">
@@ -4824,7 +4824,7 @@
</member>
<member name="P:Microsoft.Deployment.WindowsInstaller.PatchInstallation.IsObsoleted">
<summary>
Gets a value indicating whether this patch is marked as obsolte.
Gets a value indicating whether this patch is marked as obsolete.
</summary>
</member>
<member name="P:Microsoft.Deployment.WindowsInstaller.PatchInstallation.IsSuperseded">
@@ -5328,7 +5328,7 @@
</summary>
<remarks><p>
Win32 MSI API:
<a href="http://msdn.microsoft.com/library/en-us/msi/setup/msirecordcleardata.asp">MsiRecordClearData</a>
<a href="http://msdn.microsoft.com/library/en-us/msi/setup/msirecordclearedata.asp">MsiRecordClearData</a>
</p></remarks>
</member>
<member name="M:Microsoft.Deployment.WindowsInstaller.Record.IsNull(System.Int32)">
@@ -6085,7 +6085,7 @@
<item><description>The Select and Installed states for all features in the Feature table</description></item>
<item><description>The Action state of each component in the Component table, based on the new level</description></item>
</list>
If 0 or a negative number is passed in the ilnstallLevel parameter,
If 0 or a negative number is passed in the installLevel parameter,
the current installation level does not change, but all features are still
updated based on the current installation level.
</p><p>
@@ -6200,7 +6200,7 @@
</member>
<member name="M:Microsoft.Deployment.WindowsInstaller.Session.ValidateSessionAccess">
<summary>
Throws an exception if the custom action is not able to access immedate session details.
Throws an exception if the custom action is not able to access immediate session details.
</summary>
</member>
<member name="T:Microsoft.Deployment.WindowsInstaller.ShortcutTarget">
@@ -6605,7 +6605,7 @@
<member name="P:Microsoft.Deployment.WindowsInstaller.SummaryInfo.Template">
<summary>Gets or sets the Template summary information property.</summary>
<remarks><p>
The Template summary information propery indicates the platform and language versions supported by the database.
The Template summary information property indicates the platform and language versions supported by the database.
</p><p>
The syntax of the Template Summary property information is:
[platform property][,platform property][,...];[language id][,language id][,...]
+1 -1
View File
@@ -23,7 +23,7 @@ echo "installer version is $VERSION_STRING"
PRODUCT_GUID=$("uuidgen")
if [ -z "$PRODUCT_GUID" ]; then
echo "Unable to generate GUID. Make sure to run this script from the Visual Studio command propmt. Aborting now."
echo "Unable to generate GUID. Make sure to run this script from the Visual Studio command prompt. Aborting now."
exit 1
else
echo "$WIN_ARCH product guid is $PRODUCT_GUID"
+7 -7
View File
@@ -10,7 +10,7 @@ Build the installer
-I used stable version 3.10.3 for development
-make sure the WiX directory is in you OS path variable ('..\WiX Toolset v3.10\bin')
-Sourcetrail has to be built with the 'deploy' flag
-installer would still build if the deploy flag wasnt set, but the Sourcetrail wont run properly on a user machine
-installer would still build if the deploy flag wasn't set, but the Sourcetrail wont run properly on a user machine
-Execute build.bat
-This will build sourcetrail.msi file, all needed custom action dlls and the setup.exe file
@@ -41,10 +41,10 @@ Add new components (e.g. files) to the installation
-...
Generel
General
-to add a file create a <Component> element
-mind the <Directory> tags, they define where the component will be installed. Add new directories if necessary
-Id: the directory will be refered to within the wix project using this id
-Id: the directory will be referred to within the wix project using this id
-Name: the name of the folder that will be created on the user machine
-Id: is used to refer to the component within the wix project
-Guid: GUIDs are unique id's used by windows to identify and refer to installed files, applications and so on. You need to create a new GUID for every new component
@@ -55,7 +55,7 @@ Generel
-Name: the name that the file will have on the user machine, may be different from the file name on the source machine
-Source: the path and name to the file on the source machine, relative to the current .wxs file
-KeyPath: depends on where you want to install the file, see below in 'Add new file to...'
-usually there is one component for each single file. Multiple files can be added to a component, this might make sense if the files are considered 100% unseperable. The recommended way however is one file per component
-usually there is one component for each single file. Multiple files can be added to a component, this might make sense if the files are considered 100% inseparable. The recommended way however is one file per component
Add new file to the installation directory (installDir.wxs)
@@ -76,7 +76,7 @@ Not quite done yet! (sourcetrail.wxs)
-components need to be added to a feature (a feature is part of a software, consisting of components, that may or may not be installed during setup)
-right now we only have the Complete/Program feature, so no part of sourcetrail is optional right now
-to add a component to a feature use the <ComponentRef> tag
-Id: id of the component you want to refere to
-Id: id of the component you want to reference
------------------
@@ -89,7 +89,7 @@ Version Number
-candle.exe -dprojectVersion="0.7.0" ...
-replace 0.7.0 with the desired version number
Minor upgrage (sourcetrail.wxs)
Minor upgrade (sourcetrail.wxs)
-for when only a few files are to be updated
-update the version number in build.bat script
-do NOT change the product GUID
@@ -101,4 +101,4 @@ Major upgrade (sourcetrail.wxs)
-update the version number in build.bat script
-DO change the product GUID
-insert the same GUID into the uninstall_wix.bat script
-package GUID changes too, but thats again done automatically
-package GUID changes too, but that's again done automatically
+37 -37
View File
@@ -76,7 +76,7 @@
</div>
</div>
<div class="row" style="text-align:center; margin-top: 10px;">
<p>Documentation for version 2020.2</p>
<p>Documentation for version 2021.1</p>
</div>
<div class="row" style="height:20px;"></div>
@@ -197,7 +197,7 @@
<div class="row" style="height:20px;"></div>
<strong>Are you using CMake, Make or Qt Creator?</strong>
<p>If you are using <a href="https://cmake.org/">CMake</a> or <a href="https://www.gnu.org/software/make/">Make</a> as build environment you can export a <a href="https://clang.llvm.org/docs/JSONCompilationDatabase.html">clang JSON Compilaton Database</a> as <code>compile_commands.json</code> 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.</p>
<p>If you are using <a href="https://cmake.org/">CMake</a> or <a href="https://www.gnu.org/software/make/">Make</a> as build environment you can export a <a href="https://clang.llvm.org/docs/JSONCompilationDatabase.html">clang JSON Compilation Database</a> as <code>compile_commands.json</code> 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.</p>
<p>Exporting a Compilation Database:</p>
<ul>
@@ -753,7 +753,7 @@
</tr>
<tr>
<th scope="row">Multi process C/C++ indexing</th>
<td>Enable C/C++ indexer threads to run in a different process. This prevents the application from crashing due to unforseen exceptions while indexing.</td>
<td>Enable C/C++ indexer threads to run in a different process. This prevents the application from crashing due to unforeseen exceptions while indexing.</td>
</tr>
<tr>
<th scope="row">Java Path</th>
@@ -821,7 +821,7 @@
<strong>Interactions:</strong>
<ul>
<li>Swith indexing mode by clicking a different option.</li>
<li>Switch indexing mode by clicking a different option.</li>
<li>Clicking <var>Cancel</var> will abort indexing.</li>
<li>Clicking <var>Start</var> will start the file clearing and indexing.</li>
</ul>
@@ -1848,7 +1848,7 @@
</ul>
<h3>Keywords</h3>
<p>Additionally the search view provides specific keywords that select a certein group of symbols.</p>
<p>Additionally the search view provides specific keywords that select a certain group of symbols.</p>
<table class="table table-hover">
<thead>
<tr> <th>keyword</th> <th>effect</th> </tr>
@@ -1868,7 +1868,7 @@
</div>
<strong>Interactions:</strong>
<ul>
<li>Start a query with <code>?</code> or use the <a href="#FindText">Find Text</a> action to do a case-insensitive full text serach.</li>
<li>Start a query with <code>?</code> or use the <a href="#FindText">Find Text</a> action to do a case-insensitive full text search.</li>
<li>Start a query with <code>??</code> to do a case-sensitive full text search.</li>
</ul>
@@ -1960,7 +1960,7 @@
<div class="row" style="height:10px;"></div>
<h3>Errors Tab</h3>
<p>This list shows errors occured durring indexing.</p>
<p>This list shows errors occurred during indexing.</p>
<div class="row">
<div class="col-sm-10 col-sm-offset-1">
<img src="img/status_view_error.png" style="width:100%;">
@@ -2043,7 +2043,7 @@
<li>Clicking a <var>Source Group</var> will let you edit it's configuration and change it's name.</li>
<li>Clicking <code>+</code> beneath the Source Group list will take you to the creation of a new Source Group.</li>
<li>Clicking <code>-</code> beneath the Source Group list will delete the currently selected Source Group.</li>
<li>Clicking <code></code> beneath the Source Group list will duplicate the currenlty selected Source Group.</li>
<li>Clicking <code></code> beneath the Source Group list will duplicate the currently selected Source Group.</li>
<li>Clicking <var>Create</var> will close this window and create the new project.</li>
</ul>
@@ -2068,7 +2068,7 @@
<h2>Choose a Source Group Type</h2>
<p>When creating a new Source Group you can choose between different methods of setup depending on your project language. Please have a look at our <a href="#Choosingtherightprojectsetup">QUCICK START GUIDE section</a> for help on choosing the right Source Group type.</p>
<p>When creating a new Source Group you can choose between different methods of setup depending on your project language. Please have a look at our <a href="#GettingStarted">QUICK START GUIDE</a> section for help on choosing the right Source Group type.</p>
<div class="row">
<div class="col-sm-8 col-sm-offset-2">
@@ -2157,7 +2157,7 @@
<h2 id="CreateAProjectFromCompilationDatabase">C/C++ Source Group from Compilation Database</h2>
<p>If you are using <a href="https://cmake.org/">CMake</a> you can export compile commands by defining the <code>CMAKE_EXPORT_COMPILE_COMMANDS</code> flag and then use the exportet <code>.json</code> file for Sourcetrail project setup.</p>
<p>If you are using <a href="https://cmake.org/">CMake</a> you can export compile commands by defining the <code>CMAKE_EXPORT_COMPILE_COMMANDS</code> flag and then use the exported <code>.json</code> file for Sourcetrail project setup.</p>
<p>For non-CMake projects you can use <a href="https://github.com/rizsotto/Bear">Bear</a>. Bear generates a <code>.json</code> file during the simulated build process. Bear has been tested on FreeBSD, GNU/Linux and OS X.</p>
<p>C/C++ Source Groups from Compilation Database offer the following configuration options:</p>
@@ -2527,7 +2527,7 @@
</tr>
<tr>
<th scope="row">Source File Extensions</th>
<td>Define the valid extensions for source files including the dot e.g. <code>.ext</code>. Sourcetrail will only try to index files that match one of these extensions. If no extion is defined, any file extension is valid.</td>
<td>Define the valid extensions for source files including the dot e.g. <code>.ext</code>. Sourcetrail will only try to index files that match one of these extensions. If no extension is defined, any file extension is valid.</td>
</tr>
</tbody>
</table>
@@ -2537,7 +2537,7 @@
<h1>Command Line</h1>
<p>Currently you can use the command line to configue Sourcetrail or index a Sourcetrail project.</p>
<p>Currently you can use the command line to configure Sourcetrail or index a Sourcetrail project.</p>
<p>When no command is given</p>
<pre>sourcetrail [options...] </pre>
@@ -2572,7 +2572,7 @@
<tr> <th scope="row">--indexer-threads</th> <td>Number of threads used for indexing (0 means ideal thread count).</td> </tr>
<tr> <th scope="row">--use-processes</th> <td>Enable C/C++ indexer threads to run in different processes.</td> </tr>
<tr> <th scope="row">--logging-enabled</th> <td>Enable (true) or disable (false) file/console logging.</td> </tr>
<tr> <th scope="row">--verbose-indexer-logging-enabled</th> <td>Enable additaional log of abstract syntax tree during the indexing. Be careful with this, it slows down the indexing tremendously.</td> </tr>
<tr> <th scope="row">--verbose-indexer-logging-enabled</th> <td>Enable additional log of abstract syntax tree during the indexing. Be careful with this, it slows down the indexing tremendously.</td> </tr>
<tr> <th scope="row">--jvm-path</th> <td>Path to the location of the jvm library.</td> </tr>
<tr> <th scope="row">--jvm-max-memory</th> <td>Set the maximum amount of memory for the JVM indexer(-1 for using the JVM default settings).</td> </tr>
<tr> <th scope="row">--maven-path</th> <td>Path to the maven executable.</td> </tr>
@@ -2756,7 +2756,7 @@
<strong>Installation</strong>
<p><ul>
<li>Manuelly</li>
<li>Manually</li>
<ol>
<li>Download the sourcetrail.el from <a href="https://github.com/CoatiSoftware/emacs-sourcetrail">https://github.com/CoatiSoftware/emacs-sourcetrail</a></li>
<li>In Emacs press <kbd>M</kbd> + <kbd>x</kbd> and type in <code>package-install-file</code></li>
@@ -2806,12 +2806,12 @@
</li>
<li>restart Sublime</li>
</ol>
<li>Package Controll</li>
<li>Package Control</li>
<ol>
<li>If you dont have Package Controll for Sublime go to https://packagecontrol.io and
<li>If you don't have Package Control for Sublime go to https://packagecontrol.io and
install it</li>
<li>Open Command Pallete with <kbd>Ctrl</kbd> + <kbd>Shift</kbd> + <kbd>P</kbd></li>
<li>Select <code>Package Controll: Install Package</code></li>
<li>Open Command Palette with <kbd>Ctrl</kbd> + <kbd>Shift</kbd> + <kbd>P</kbd></li>
<li>Select <code>Package Control: Install Package</code></li>
<li>Install <code>sourcetrail</code></li>
</ol>
</ul></p>
@@ -2829,7 +2829,7 @@
<strong>Installation</strong>
<p>
<p>Please visit the <a href="https://github.com/CoatiSoftware/vim-sourcetrail">vim-sourcetrail</a> repository on Github for details.</p>
<p>Please visit the <a href="https://github.com/CoatiSoftware/vim-sourcetrail">vim-sourcetrail</a> repository on GitHub for details.</p>
</p>
<strong>Use</strong>
<p>If you want Vim to activate a certain element in Sourcetrail, go to the code location and use
@@ -2850,9 +2850,9 @@
</p>
<strong>Use</strong>
<p>To start the Tcp Server go to the Command Pallete(<kbd>Ctrl</kbd> + <kbd>Shift</kbd> + <kbd>P</kbd>) and type: <code>Sourcetrail: (Re)start server</code></p>
<p>To start the Tcp Server go to the Command Palette(<kbd>Ctrl</kbd> + <kbd>Shift</kbd> + <kbd>P</kbd>) and type: <code>Sourcetrail: (Re)start server</code></p>
<p>To send a location to Sourcetrail, place the cursor and right-click and select <code>Sourcetrail: Send Location</code>
or type in the Command Pallete: <code>Sourcetrail: Send Location</code></p>
or type in the Command Palette: <code>Sourcetrail: Send Location</code></p>
<h3>Visual Studio</h3>
<strong>Download, Reviews:</strong>
@@ -2903,19 +2903,19 @@
<tr> <th>Option</th> <th>Description</th> </tr>
</thead>
<tbody>
<tr> <th scope="row">Select Projects</th> <td>The list of C/C++ projects in your solution. Check all projects you want to be included in the generated JSON Compilaton Database file.</td> </tr>
<tr> <th scope="row">Select Projects</th> <td>The list of C/C++ projects in your solution. Check all projects you want to be included in the generated JSON Compilation Database file.</td> </tr>
<tr> <th scope="row">De/Select All</th> <td>Will select all projects if at least one project is not selected. If all projects are selected they will all be unselected.</td> </tr>
<tr> <th scope="row">Configuration</th> <td>A dropdown list of the available build configurations. The selected configuration affects include paths and compile flags for the Compilaton Database.</td> </tr>
<tr> <th scope="row">Platform</th> <td>A dropdown list of the available target platforms. The selected platform affects include paths and compile flags for the Compilaton Database.</td> </tr>
<tr> <th scope="row">Browse</th> <td>Opens a folder browser to select the directory where the Compilaton Database will be created in. By default it is the directory of your solution. Instead of using the folder browser you can also paste a path into the adjacent text field.</td> </tr>
<tr> <th scope="row">filename</th> <td>This is the name for the Compilaton Database file. By default it is the same name as your solution.</td> </tr>
<tr> <th scope="row">Configuration</th> <td>A dropdown list of the available build configurations. The selected configuration affects include paths and compile flags for the Compilation Database.</td> </tr>
<tr> <th scope="row">Platform</th> <td>A dropdown list of the available target platforms. The selected platform affects include paths and compile flags for the Compilation Database.</td> </tr>
<tr> <th scope="row">Browse</th> <td>Opens a folder browser to select the directory where the Compilation Database will be created in. By default it is the directory of your solution. Instead of using the folder browser you can also paste a path into the adjacent text field.</td> </tr>
<tr> <th scope="row">filename</th> <td>This is the name for the Compilation Database file. By default it is the same name as your solution.</td> </tr>
<tr> <th scope="row">C Standard</th> <td>A dropdown list of all C standards supported by Sourcetrail. If your projects contain C files select the appropriate standard.</td> </tr>
<tr> <th scope="row">Cancel</th> <td>Aborts the process and closes the wizard.</td> </tr>
<tr> <th scope="row">Create</th> <td>Creates the Compilaton Database using the specified options. Note that at least one project has to be selected to start creating.</td> </tr>
<tr> <th scope="row">Create</th> <td>Creates the Compilation Database using the specified options. Note that at least one project has to be selected to start creating.</td> </tr>
</tbody>
</table>
<p>Once the Compilaton Database was successfully created it can be found in the specified target directory. From this Compilaton Database you can create a Sourcetrail project as <a href="#CreateAProjectFromCompilationDatabase">described above</a>.</p>
<p>Once the Compilation Database was successfully created it can be found in the specified target directory. From this Compilation Database you can create a Sourcetrail project as <a href="#CreateAProjectFromCompilationDatabase">described above</a>.</p>
<strong>Settings</strong>
<p>Network settings and logging options can be changed in the plugin's Tools/Options entry.</p>
@@ -2941,8 +2941,8 @@
<tr> <th>Option</th> <th>Description</th> </tr>
</thead>
<tbody>
<tr> <th scope="row">File Logging</th> <td>Enable log output for the plugin. Additionaly to the output file, log messages will also be displayed in VS' </td> </tr>
<tr> <th Id="vsPluginOptionObfuscation" scope="row">Log Obfuscation</th> <td>Obfuscate project names and file names as well as directories in the log output. Note that already logged data <b>will not be obfuscated retroactively</b>. A dictionary, mapping obfuscated names to original names, will be created in a seperate file.</td> </tr>
<tr> <th scope="row">File Logging</th> <td>Enable log output for the plugin. Additionally to the output file, log messages will also be displayed in VS' </td> </tr>
<tr> <th Id="vsPluginOptionObfuscation" scope="row">Log Obfuscation</th> <td>Obfuscate project names and file names as well as directories in the log output. Note that already logged data <b>will not be obfuscated retroactively</b>. A dictionary, mapping obfuscated names to original names, will be created in a separate file.</td> </tr>
<tr> <th scope="row">Sourcetrail Port</th> <td>The port on which Sourcetrail will receive messages. Note that this must match the port setting in Sourcetrail itself.</td> </tr>
<tr> <th scope="row">Thread Count</th> <td>The number of threads used during creation of the Compilation Database</td> </tr>
<tr> <th scope="row">VS Port</th> <td>The port on which Visual Studio will receive messages. Note that this must match the port setting in Sourcetrail itself.</td> </tr>
@@ -2960,7 +2960,7 @@
</div>
<!-- Obfuscation -->
<p>Note that the logs will include project names and file names as well as directories specific to your project. If you wish to keep this informatin secret you can enable <a href="#vsPluginOptionObfuscation">log obfuscation</a>.</p>
<p>Note that the logs will include project names and file names as well as directories specific to your project. If you wish to keep this information secret you can enable <a href="#vsPluginOptionObfuscation">log obfuscation</a>.</p>
<p>Project- and file names as well as directories will be replaced by an alphanumeric sequence. The sequence has the form <code>a0, b0, c0,..., a1, b1, c1,...</code>. Note that after switching on obfuscation, already logged data <b>will not be obfuscated retroactively</b>. No log files will be send to Coati Software automatically. You can check any file you may want to send us for sensible information before sending it.</p>
<p>A dictionary, mapping obfuscated names to original names, will be created in your log folder if log obfuscation is switched on. When during the support process we refer to project items by their obfuscated name you can still make sense of it. <b>Do not send the dictionary to anybody else</b>.</p>
@@ -2980,7 +2980,7 @@
<h3>Message Structure</h3>
<p>The basic structure of the messages used by Sourcetrail plugins consists of a prefix to identify the message type, followed by no, one, or multiple parameters and ends with an 'end-of-message' token. Parameters and tokens are seperated by a 'divider' token.</p>
<p>The basic structure of the messages used by Sourcetrail plugins consists of a prefix to identify the message type, followed by no, one, or multiple parameters and ends with an 'end-of-message' token. Parameters and tokens are separated by a 'divider' token.</p>
<table class="table table-hover">
<thead>
@@ -2988,7 +2988,7 @@
</thead>
<tbody>
<tr> <th scope="row">messageType</th> <th><a href="#MessageTypes">see below</a></th> <td>A string that determines how the message will be interpreted by Sourcetrail or the plugin</td> </tr>
<tr> <th scope="row">divider</th> <th><code>>></code></th> <td>Seperates the tokens of the message</td> </tr>
<tr> <th scope="row">divider</th> <th><code>>></code></th> <td>Separates the tokens of the message</td> </tr>
<tr> <th scope="row">parameter</th> <th><a href="#MessageTypes">see below</a></th> <td>Typically an integer or string</td> </tr>
<tr> <th scope="row">endOfMessage</th> <th><code>&lt;EOM&gt;</code></th> <td>Helps to determine the end of a message</td> </tr>
</tbody>
@@ -3027,7 +3027,7 @@
</thead>
<tbody>
<tr> <th scope="row"><code>setActiveToken</code></th> <th>fileLocation: string<br>row: integer<br>column: integer</th> <td>Tells Sourcetrail to shift focus to the token located at the given position. Note that fileLocation is the absolute path and name of the target file.</td> </tr>
<tr> <th scope="row"><code>createCDBProject</code></th> <th>cdbPath: string<br>headerPaths: string</th> <td>If your plugin can provide a Compilation Database this message can prompt Sourcetrail to import it and display an appropriate dialog for the user. headerPaths is a list of the base project's header include paths. Seperate the single paths using the divider token. You can add as many paths as you need.</td> </tr>
<tr> <th scope="row"><code>createCDBProject</code></th> <th>cdbPath: string<br>headerPaths: string</th> <td>If your plugin can provide a Compilation Database this message can prompt Sourcetrail to import it and display an appropriate dialog for the user. headerPaths is a list of the base project's header include paths. Separate the single paths using the divider token. You can add as many paths as you need.</td> </tr>
<tr> <th scope="row"><code>ping</code></th> <th></th> <td>Your plugin may send this message to Sourcetrail to tell it it's listening.</td> </tr>
</tbody>
</table>
@@ -3038,7 +3038,7 @@
<div class="panel panel-default">
<div class="panel-heading">
<h3 class="panel-title">Can I use Sourcetrail on confidental source code?</h3>
<h3 class="panel-title">Can I use Sourcetrail on confidential source code?</h3>
</div>
<div class="panel-body">
Yes. Sourcetrail keeps the data completely offline and unless disabled, will only establish a connection to the internet to check if a more recent version is available.
@@ -3053,10 +3053,10 @@
<p>Sourcetrail does two things with the data collected during indexing:</p>
<ol>
<li>The data is stored in the <code>.srctrldb</code> file which is in the same directory as the <code>.srctrlprj</code> file. This database file is used by Sourcetrail to serve its purpose of letting you navigate your source code and also allowing Sourcetrail to re-open the project without re-indexing the source code each time.
<p><b> Note:</b> The <code> .srctrldb </code> file is actualy a <code> .sqlite </code> database file and can be inspected using the <a href="https://sqlitebrowser.org/">DB Browser for SQLite</a>.</p>
<p><b> Note:</b> The <code> .srctrldb </code> file is actually a <code> .sqlite </code> database file and can be inspected using the <a href="https://sqlitebrowser.org/">DB Browser for SQLite</a>.</p>
</li>
<li>If logging is enabled, some of the data gets logged into a log file saved in <a href="#Datafolder">data</a>/logs. These logs can be useful to us for fixing bugs. We may ask for log information on bug reports, but you should only provide it, if your source code is not confidental.</li>
<li>If logging is enabled, some of the data gets logged into a log file saved in <a href="#Datafolder">data</a>/logs. These logs can be useful to us for fixing bugs. We may ask for log information on bug reports, but you should only provide it, if your source code is not confidential.</li>
</ol>
</div>
</div>
+1 -1
View File
@@ -1,5 +1,5 @@
#atom-sourcetrail
The Atom plugin is hosted at Github.
The Atom plugin is hosted at GitHub.
Link to the repository: [atom-sourcetrail](https://github.com/CoatiSoftware/atom-sourcetrail).
+1 -1
View File
@@ -1,5 +1,5 @@
#eclipse-sourcetrail
The Eclipse plugin is hosted at Github.
The Eclipse plugin is hosted at GitHub.
Link to the repository: [eSourcetrail](https://github.com/CoatiSoftware/eSourcetrail).
+1 -1
View File
@@ -1,5 +1,5 @@
#emacs-sourcetrail
The Emacs plugin is hosted at Github.
The Emacs plugin is hosted at GitHub.
Link to the repository: [emacs-sourcetrail](https://github.com/CoatiSoftware/emacs-sourcetrail).
+1 -1
View File
@@ -1,5 +1,5 @@
#idea-sourcetrail
The CLion/IntelliJ plugin is hosted at Github.
The CLion/IntelliJ plugin is hosted at GitHub.
Link to the repository: [idea-sourcetrail](https://github.com/CoatiSoftware/idea-sourcetrail).
+1 -1
View File
@@ -1,6 +1,6 @@
#qtc-sourcetrail
The QtCreator plugin is hosted at Github.
The QtCreator plugin is hosted at GitHub.
Link to the repository: [qtc-sourcetrail](https://github.com/CoatiSoftware/qtc-sourcetrail).
+1 -1
View File
@@ -1,5 +1,5 @@
#sublime-sourcetrail
The Sublime plugin is hosted at Github.
The Sublime plugin is hosted at GitHub.
Link to the repository: [sublime-sourcetrail](https://github.com/CoatiSoftware/sublime-sourcetrail).
+1 -1
View File
@@ -1,5 +1,5 @@
#vim-sourcetrail
The Vim plugin is hosted at Github.
The Vim plugin is hosted at GitHub.
Link to the repository: [vim-sourcetrail](https://github.com/CoatiSoftware/vim-sourcetrail).
+1 -1
View File
@@ -1,6 +1,6 @@
#vs-sourcetrail
The Visual Studio extension source code is hosted at Github.
The Visual Studio extension source code is hosted at GitHub.
The extension is available in the Visual Studio Marketplace. To install this extension follow these steps:
* open Visual Studio
+1 -1
View File
@@ -1,6 +1,6 @@
#vsce-sourcetrail
The VS Code extension source code is hosted at Github.
The VS Code extension source code is hosted at GitHub.
The extension is available in the marketplace,
to install it simple use the marketplace inside VS Code
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
+35 -35
View File
@@ -28,12 +28,12 @@
<repository>
<id>mvnrepository</id>
<name>mvnrepository</name>
<url>http://www.mvnrepository.com</url>
<url>https://www.mvnrepository.com</url>
</repository>
<repository>
<id>repo_gradle</id>
<name>repo_gradle</name>
<url>http://repo.gradle.org/gradle/libs-releases-local</url>
<url>https://repo.gradle.org/gradle/libs-releases-local</url>
</repository>
</repositories>
@@ -41,121 +41,121 @@
<dependency>
<groupId>org.gradle</groupId>
<artifactId>gradle-tooling-api</artifactId>
<version>4.2</version>
<version>6.7.1</version>
<scope>system</scope>
<systemPath>${basedir}/lib/gradle-tooling-api-4.2.jar</systemPath>
<systemPath>${basedir}/lib/gradle-tooling-api-6.7.1.jar</systemPath>
</dependency>
<dependency>
<groupId>org.eclipse.core</groupId>
<artifactId>org.eclipse.core.commands</artifactId>
<version>3.9.500</version>
<version>3.9.800</version>
<scope>system</scope>
<systemPath>${basedir}/lib/org.eclipse.core.commands-3.9.500.jar</systemPath>
<systemPath>${basedir}/lib/org.eclipse.core.commands-3.9.800.jar</systemPath>
</dependency>
<dependency>
<groupId>org.eclipse.core</groupId>
<artifactId>org.eclipse.core.contenttype</artifactId>
<version>3.7.400</version>
<version>3.7.800</version>
<scope>system</scope>
<systemPath>${basedir}/lib/org.eclipse.core.contenttype-3.7.400.jar</systemPath>
<systemPath>${basedir}/lib/org.eclipse.core.contenttype-3.7.800.jar</systemPath>
</dependency>
<dependency>
<groupId>org.eclipse.core</groupId>
<artifactId>org.eclipse.core.expressions</artifactId>
<version>3.6.500</version>
<version>3.7.0</version>
<scope>system</scope>
<systemPath>${basedir}/lib/org.eclipse.core.expressions-3.6.500.jar</systemPath>
<systemPath>${basedir}/lib/org.eclipse.core.expressions-3.7.0.jar</systemPath>
</dependency>
<dependency>
<groupId>org.eclipse.core</groupId>
<artifactId>org.eclipse.core.filesystem</artifactId>
<version>1.7.500</version>
<scope>system</scope>
<systemPath>${basedir}/lib/org.eclipse.core.filesystem-1.7.500.jar</systemPath>
<systemPath>${basedir}/lib/org.eclipse.core.filesystem-1.7.700.jar</systemPath>
</dependency>
<dependency>
<groupId>org.eclipse.core</groupId>
<artifactId>org.eclipse.core.jobs</artifactId>
<version>3.10.500</version>
<version>3.10.1000</version>
<scope>system</scope>
<systemPath>${basedir}/lib/org.eclipse.core.jobs-3.10.500.jar</systemPath>
<systemPath>${basedir}/lib/org.eclipse.core.jobs-3.10.1000.jar</systemPath>
</dependency>
<dependency>
<groupId>org.eclipse.core</groupId>
<artifactId>org.eclipse.core.resources</artifactId>
<version>3.13.500</version>
<version>3.13.900</version>
<scope>system</scope>
<systemPath>${basedir}/lib/org.eclipse.core.resources-3.13.500.jar</systemPath>
<systemPath>${basedir}/lib/org.eclipse.core.resources-3.13.900.jar</systemPath>
</dependency>
<dependency>
<groupId>org.eclipse.core</groupId>
<artifactId>org.eclipse.core.runtime</artifactId>
<version>3.16.0</version>
<version>3.20.0</version>
<scope>system</scope>
<systemPath>${basedir}/lib/org.eclipse.core.runtime-3.16.0.jar</systemPath>
<systemPath>${basedir}/lib/org.eclipse.core.runtime-3.20.0.jar</systemPath>
</dependency>
<dependency>
<groupId>org.eclipse.equinox</groupId>
<artifactId>org.eclipse.equinox.app</artifactId>
<version>1.4.300</version>
<version>1.5.0</version>
<scope>system</scope>
<systemPath>${basedir}/lib/org.eclipse.equinox.app-1.4.300.jar</systemPath>
<systemPath>${basedir}/lib/org.eclipse.equinox.app-1.5.0.jar</systemPath>
</dependency>
<dependency>
<groupId>org.eclipse.equinox</groupId>
<artifactId>org.eclipse.equinox.common</artifactId>
<version>3.10.500</version>
<version>3.14.0</version>
<scope>system</scope>
<systemPath>${basedir}/lib/org.eclipse.equinox.common-3.10.500.jar</systemPath>
<systemPath>${basedir}/lib/org.eclipse.equinox.common-3.14.0.jar</systemPath>
</dependency>
<dependency>
<groupId>org.eclipse.equinox</groupId>
<artifactId>org.eclipse.equinox.preferences</artifactId>
<version>3.7.500</version>
<version>3.8.100</version>
<scope>system</scope>
<systemPath>${basedir}/lib/org.eclipse.equinox.preferences-3.7.500.jar</systemPath>
<systemPath>${basedir}/lib/org.eclipse.equinox.preferences-3.8.100.jar</systemPath>
</dependency>
<dependency>
<groupId>org.eclipse.equinox</groupId>
<artifactId>org.eclipse.equinox.registry</artifactId>
<version>3.8.500</version>
<version>3.10.0</version>
<scope>system</scope>
<systemPath>${basedir}/lib/org.eclipse.equinox.registry-3.8.500.jar</systemPath>
<systemPath>${basedir}/lib/org.eclipse.equinox.registry-3.10.0.jar</systemPath>
</dependency>
<dependency>
<groupId>org.eclipse.jdt</groupId>
<artifactId>org.eclipse.jdt.core</artifactId>
<version>3.19.0</version>
<version>3.24.0</version>
<scope>system</scope>
<systemPath>${basedir}/lib/org.eclipse.jdt.core-3.19.0.jar</systemPath>
<systemPath>${basedir}/lib/org.eclipse.jdt.core-3.24.0.jar</systemPath>
</dependency>
<dependency>
<groupId>org.eclipse</groupId>
<artifactId>org.eclipse.osgi</artifactId>
<version>3.15.0</version>
<version>3.16.100</version>
<scope>system</scope>
<systemPath>${basedir}/lib/org.eclipse.osgi-3.15.0.jar</systemPath>
<systemPath>${basedir}/lib/org.eclipse.osgi-3.16.100.jar</systemPath>
</dependency>
<dependency>
<groupId>org.eclipse</groupId>
<artifactId>org.eclipse.text</artifactId>
<version>3.9.0</version>
<version>3.10.400</version>
<scope>system</scope>
<systemPath>${basedir}/lib/org.eclipse.text-3.9.0.jar</systemPath>
<systemPath>${basedir}/lib/org.eclipse.text-3.10.400.jar</systemPath>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>1.7.10</version>
<version>1.7.28</version>
<scope>system</scope>
<systemPath>${basedir}/lib/slf4j-api-1.7.10.jar</systemPath>
<systemPath>${basedir}/lib/slf4j-api-1.7.28.jar</systemPath>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-simple</artifactId>
<version>1.7.10</version>
<version>1.7.30</version>
<scope>system</scope>
<systemPath>${basedir}/lib/slf4j-simple-1.7.10.jar</systemPath>
<systemPath>${basedir}/lib/slf4j-simple-1.7.30.jar</systemPath>
</dependency>
</dependencies>
</project>
@@ -410,7 +410,7 @@ public abstract class AstVisitor extends ASTVisitor
{
DeclName symbolName = DeclName.unsolved();
IBinding binding = node.resolveBinding();
if (!binding.isRecovered())
if (binding != null && !binding.isRecovered())
{
if (binding instanceof IPackageBinding)
{
@@ -453,7 +453,7 @@ public abstract class AstVisitor extends ASTVisitor
ReferenceKind.IMPORT, symbolName.toNameHierarchy(), context.toNameHierarchy(), range);
}
// record package symbol kind of current node if appliccable
// record package symbol kind of current node if applicable
if (binding instanceof IPackageBinding)
{
Optional<DeclName> packageName = BindingNameResolver.getQualifiedName(
@@ -58,7 +58,7 @@ public class JavaIndexer
Path path = Paths.get(filePath);
ASTParser parser = ASTParser.newParser(AST.JLS12);
ASTParser parser = ASTParser.newParser(AST.JLS_Latest);
parser.setResolveBindings(
true); // solve "bindings" like the declaration of the type used in a var decl
@@ -73,7 +73,7 @@ public class JavaIndexer
astVisitorClient.logInfo("using language standard " + convertedLanguageStandard);
Hashtable<String, String> options = JavaCore.getOptions();
options.put(JavaCore.COMPILER_PB_ENABLE_PREVIEW_FEATURES, JavaCore.ENABLED);
options.put(JavaCore.COMPILER_PB_ENABLE_PREVIEW_FEATURES, JavaCore.DISABLED);
options.put(JavaCore.COMPILER_PB_REPORT_PREVIEW_FEATURES, JavaCore.IGNORE);
options.put(JavaCore.COMPILER_SOURCE, convertedLanguageStandard);
options.put(JavaCore.COMPILER_CODEGEN_TARGET_PLATFORM, convertedLanguageStandard);
@@ -164,7 +164,7 @@ public class JavaIndexer
{
String packageName = "";
ASTParser parser = ASTParser.newParser(AST.JLS12);
ASTParser parser = ASTParser.newParser(AST.JLS_Latest);
parser.setKind(
ASTParser.K_COMPILATION_UNIT); // specify to parse the entire compilation unit
parser.setSource(fileContent.toCharArray());
@@ -209,8 +209,14 @@ public class JavaIndexer
case "11":
return JavaCore.VERSION_11;
case "12":
default:
return JavaCore.VERSION_12;
case "13":
return JavaCore.VERSION_13;
case "14":
return JavaCore.VERSION_14;
case "15":
default:
return JavaCore.VERSION_15;
}
}
@@ -7,7 +7,7 @@ import java.util.Optional;
public class NameHierarchy
{
private List<NameElement> m_elements = new ArrayList<>();
private char m_separatpr = '.';
private char m_separator = '.';
public NameHierarchy() {}
@@ -28,7 +28,7 @@ public class NameHierarchy
public void setSeparator(char separator)
{
m_separatpr = separator;
m_separator = separator;
}
public void push(NameElement element)
@@ -55,7 +55,7 @@ public class NameHierarchy
public String serialize()
{
String serialized = m_separatpr + "\tm";
String serialized = m_separator + "\tm";
for (int i = 0; i < m_elements.size(); i++)
{
+4 -4
View File
@@ -89,13 +89,13 @@ echo -e "$INFO Building the project"
if [ $RUN_CODE_SIGNING = true ]; then
echo -e "$INFO Signing the app"
signtool.exe sign //sha1 $CODE_SIGNING_THUMBPRINT //fd sha256 //t "http://timestamp.verisign.com/scripts/timstamp.dll" //d "Sourcetrail ${DOTTED_VERSION_STRING}" //du "https://www.sourcetrail.com/" //v build/Release/app/Sourcetrail.exe
signtool.exe sign //sha1 $CODE_SIGNING_THUMBPRINT //fd sha256 //t "http://sha256timestamp.ws.symantec.com/sha256/timestamp" //d "Sourcetrail ${DOTTED_VERSION_STRING}" //du "https://www.sourcetrail.com/" //v build/Release/app/Sourcetrail.exe
echo -e "$INFO Signing the indexer"
signtool.exe sign //sha1 $CODE_SIGNING_THUMBPRINT //fd sha256 //t "http://timestamp.verisign.com/scripts/timstamp.dll" //d "Sourcetrail Indexer ${DOTTED_VERSION_STRING}" //du "https://www.sourcetrail.com/" //v build/Release/app/sourcetrail_indexer.exe
signtool.exe sign //sha1 $CODE_SIGNING_THUMBPRINT //fd sha256 //t "http://sha256timestamp.ws.symantec.com/sha256/timestamp" //d "Sourcetrail Indexer ${DOTTED_VERSION_STRING}" //du "https://www.sourcetrail.com/" //v build/Release/app/sourcetrail_indexer.exe
echo -e "$INFO Signing the Python indexer"
signtool.exe sign //sha1 $CODE_SIGNING_THUMBPRINT //fd sha256 //t "http://timestamp.verisign.com/scripts/timstamp.dll" //d "Sourcetrail Python Indexer" //du "https://github.com/CoatiSoftware/SourcetrailPythonIndexer" //v bin/app/data/python/SourcetrailPythonIndexer.exe
signtool.exe sign //sha1 $CODE_SIGNING_THUMBPRINT //fd sha256 //t "http://sha256timestamp.ws.symantec.com/sha256/timestamp" //d "Sourcetrail Python Indexer" //du "https://github.com/CoatiSoftware/SourcetrailPythonIndexer" //v bin/app/data/python/SourcetrailPythonIndexer.exe
fi
@@ -151,7 +151,7 @@ cd ../../..
if [ $RUN_CODE_SIGNING = true ]; then
echo -e "$INFO Signing the 64 bit windows installer"
signtool.exe sign //sha1 $CODE_SIGNING_THUMBPRINT //fd sha256 //t "http://timestamp.verisign.com/scripts/timstamp.dll" //d "Sourcetrail ${DOTTED_VERSION_STRING} Installer" //du "https://www.sourcetrail.com/" //v deployment/windows/wixSetup/bin/sourcetrail.msi
signtool.exe sign //sha1 $CODE_SIGNING_THUMBPRINT //fd sha256 //t "http://sha256timestamp.ws.symantec.com/sha256/timestamp" //d "Sourcetrail ${DOTTED_VERSION_STRING} Installer" //du "https://www.sourcetrail.com/" //v deployment/windows/wixSetup/bin/sourcetrail.msi
fi
+2 -1
View File
@@ -1,6 +1,6 @@
#!/bin/bash
SOURCETRAIL_PYTHON_INDEXER_VERSION="v1_db25_p5"
SOURCETRAIL_PYTHON_INDEXER_VERSION="v1_db25_p6"
# Determine current platform
PLATFORM='unknown'
@@ -94,6 +94,7 @@ fi
echo -e $INFO "clearing $TARGET_PATH"
rm -rf $TARGET_PATH
mkdir -p $TARGET_PATH
echo -e $INFO "copying downloaded data to $TARGET_PATH"
cp -r $TEMP_PATH/$PACKAGE_NAME/* $TARGET_PATH
+1 -1
View File
@@ -18,7 +18,7 @@ echo -e $INFO "branch to commit: $PUBLISH_TO_BRANCH"
# check clean index
if [[ -n $(git diff HEAD) ]]
then
echo -e $ABORT "You have uncommited changes."
echo -e $ABORT "You have uncommitted changes."
exit 1
fi
+1 -1
View File
@@ -30,7 +30,7 @@ echo -e $INFO "Checking index"
if [[ -n $(git diff HEAD) ]]
then
echo -e $ABORT "You have uncommited changes."
echo -e $ABORT "You have uncommitted changes."
exit 1
fi
+20 -8
View File
@@ -11,21 +11,33 @@ if [ "$(uname)" == "Darwin" ]; then
elif [ "$(expr substr $(uname -s) 1 5)" == "Linux" ]; then
PLATFORM='Linux'
elif [ "$(expr substr $(uname -s) 1 10)" == "MINGW32_NT" ]; then
PLATFORM='Windows'
PLATFORM='windows'
elif [ "$(expr substr $(uname -s) 1 10)" == "MINGW64_NT" ]; then
PLATFORM='windows'
elif [ "$OSTYPE" == "msys" ]; then
PLATFORM='windows'
fi
if [ $PLATFORM == "Windows" ]; then
ORIGINAL_PATH_TO_SCRIPT="${0}"
CLEANED_PATH_TO_SCRIPT="${ORIGINAL_PATH_TO_SCRIPT//\\//}"
ROOT_DIR=`dirname "$CLEANED_PATH_TO_SCRIPT"`
if [ $PLATFORM == "windows" ]; then
SCRIPT=`realpath $0`
if [ "$SCRIPT" == "" ]; then
ORIGINAL_PATH_TO_SCRIPT="${0}"
CLEANED_PATH_TO_SCRIPT="${ORIGINAL_PATH_TO_SCRIPT//\\//}"
SCRIPT_DIR=${CLEANED_PATH_TO_SCRIPT%/*}
else
ORIGINAL_PATH_TO_SCRIPT=`dirname $SCRIPT`
SCRIPT_DIR="${ORIGINAL_PATH_TO_SCRIPT//\\//}"
fi
else
ROOT_DIR="$( cd "$( dirname "$0" )" && pwd )"
SCRIPT_DIR="$( cd "$( dirname "$0" )" && pwd )"
fi
ROOT_DIR=$ROOT_DIR/..
echo "This script is running in: $SCRIPT_DIR"
# Enter main directory
cd $ROOT_DIR/
cd $SCRIPT_DIR/
cd ..
cd java_indexer
+2 -11
View File
@@ -1,16 +1,7 @@
#!/bin/sh
# get the current directory
SOURCE="${0}"
while [ -h "$SOURCE" ]; do # resolve $SOURCE until the file is no longer a symlink
DIR="$( cd -P "$( dirname "$SOURCE" )" && pwd )"
SOURCE="$(readlink "$SOURCE")"
case $SOURCE in # if $SOURCE is a relative symlink, we need to resolve it relative to the path where the symlink file was located
/*) ;;
*) SOURCE="$DIR/$SOURCE" ;;
esac
done
SOURCETRAIL_PATH="$( cd -P "$( dirname "$SOURCE" )" && pwd )"
# Get the current directory in canonical form (resolve all the symlinks, if present)
SOURCETRAIL_PATH="$(dirname "$(readlink -f "$0")")"
export LD_LIBRARY_PATH="$SOURCETRAIL_PATH/lib:$LD_LIBRARY_PATH"
export QT_XKB_CONFIG_ROOT="/usr/share/X11/xkb:$QT_XKB_CONFIG_ROOT"
+3 -3
View File
@@ -38,7 +38,7 @@ function build_type {
echo -e $INFO Starting with buildtype: $1
if [ "$PLATFORM" == "Windows" ]
then
echo -e $INFO Builing the Sourcetrail VS Solution
echo -e $INFO Building the Sourcetrail VS Solution
cmake --build build/win32 --config $1
if [ $? -ne 0 ]
then
@@ -68,7 +68,7 @@ function run_tests {
cd $ROOTDIR
}
# testing before commiting to a publish branch
# testing before committing to a publish branch
if [[ ${BRANCH_NAME:0:9} == "_publish_" ]]
then
echo Try to publish
@@ -87,7 +87,7 @@ fi
if [ $BRANCH_NAME == "master" ]
then
echo -e $ABORT "Commiting to master is prohibited."
echo -e $ABORT "Committing to master is prohibited."
exit 1
fi
+1 -1
View File
@@ -13,7 +13,7 @@ do
then
if [ "$remote_ref" == "refs/heads/master" ]
then
echo -e $FAIL "seriously dont delete the master"
echo -e $FAIL "seriously don't delete the master"
exit 1
else
echo "delete remote branch $remote_ref"
+7 -2
View File
@@ -93,6 +93,11 @@ void addLanguagePackages()
int main(int argc, char* argv[])
{
// auto p = utility::executeProcessBoost(utility::searchPath(L"mvn") + L" --version", FilePath("/Users/ebsi/Documents/boost_1_67_0"), 3000);
// std::wcout << p.first << " " << p.second << std::endl;
// return 0;
QCoreApplication::addLibraryPath(QStringLiteral("."));
#pragma warning(push)
@@ -202,8 +207,8 @@ int main(int argc, char* argv[])
ApplicationSettingsPrefiller::prefillPaths(ApplicationSettings::getInstance().get());
addLanguagePackages();
utility::loadFontsFromDirectory(ResourcePaths::getFontsPath(), L".otf");
utility::loadFontsFromDirectory(ResourcePaths::getFontsPath(), L".ttf");
utility::loadFontsFromDirectory(ResourcePaths::getFontsDirectoryPath(), L".otf");
utility::loadFontsFromDirectory(ResourcePaths::getFontsDirectoryPath(), L".ttf");
if (commandLineParser.hasError())
{
+5 -5
View File
@@ -74,8 +74,8 @@ int main(int argc, char* argv[])
logFilePath = argv[5];
}
AppPath::setSharedDataPath(FilePath(appPath));
UserPaths::setUserDataPath(FilePath(userDataPath));
AppPath::setSharedDataDirectoryPath(FilePath(appPath));
UserPaths::setUserDataDirectoryPath(FilePath(userDataPath));
if (!logFilePath.empty())
{
@@ -85,11 +85,11 @@ int main(int argc, char* argv[])
suppressCrashMessage();
ApplicationSettings* appSettings = ApplicationSettings::getInstance().get();
appSettings->load(FilePath(UserPaths::getAppSettingsPath()));
appSettings->load(FilePath(UserPaths::getAppSettingsFilePath()));
LogManager::getInstance()->setLoggingEnabled(appSettings->getLoggingEnabled());
LOG_INFO(L"sharedDataPath: " + AppPath::getSharedDataPath().wstr());
LOG_INFO(L"userDataPath: " + UserPaths::getUserDataPath().wstr());
LOG_INFO(L"sharedDataPath: " + AppPath::getSharedDataDirectoryPath().wstr());
LOG_INFO(L"userDataPath: " + UserPaths::getUserDataDirectoryPath().wstr());
#if BUILD_CXX_LANGUAGE_PACKAGE
+3 -3
View File
@@ -109,10 +109,10 @@ std::string Application::getUUID()
void Application::loadSettings()
{
MessageStatus(L"Load settings: " + UserPaths::getAppSettingsPath().wstr()).dispatch();
MessageStatus(L"Load settings: " + UserPaths::getAppSettingsFilePath().wstr()).dispatch();
std::shared_ptr<ApplicationSettings> settings = ApplicationSettings::getInstance();
settings->load(UserPaths::getAppSettingsPath());
settings->load(UserPaths::getAppSettingsFilePath());
LogManager::getInstance()->setLoggingEnabled(settings->getLoggingEnabled());
Logger* logger = LogManager::getInstance()->getLoggerByType("FileLogger");
@@ -464,7 +464,7 @@ void Application::updateRecentProjects(const FilePath& projectSettingsFilePath)
}
appSettings->setRecentProjects(recentProjects);
appSettings->save(UserPaths::getAppSettingsPath());
appSettings->save(UserPaths::getAppSettingsFilePath());
m_mainView->updateRecentProjectMenu();
}
+20 -18
View File
@@ -1,43 +1,45 @@
#include "AppPath.h"
FilePath AppPath::m_sharedDataPath(L"");
FilePath AppPath::m_cxxIndexerPath(L"");
#include "utilityApp.h"
FilePath AppPath::getSharedDataPath()
FilePath AppPath::s_sharedDataDirectoryPath(L"");
FilePath AppPath::s_cxxIndexerDirectoryPath(L"");
FilePath AppPath::getSharedDataDirectoryPath()
{
return m_sharedDataPath;
return s_sharedDataDirectoryPath;
}
bool AppPath::setSharedDataPath(const FilePath& path)
bool AppPath::setSharedDataDirectoryPath(const FilePath& path)
{
if (!path.empty())
{
m_sharedDataPath = path;
s_sharedDataDirectoryPath = path;
return true;
}
return false;
}
FilePath AppPath::getCxxIndexerPath()
FilePath AppPath::getCxxIndexerFilePath()
{
#if _WIN32
const std::wstring cxxIndexerName(L"sourcetrail_indexer.exe");
#else
const std::wstring cxxIndexerName(L"sourcetrail_indexer");
#endif
if (!m_cxxIndexerPath.empty())
std::wstring cxxIndexerName(L"sourcetrail_indexer");
if (utility::getOsType() == OS_WINDOWS)
{
return m_cxxIndexerPath.getConcatenated(cxxIndexerName);
cxxIndexerName = L"sourcetrail_indexer.exe";
}
return m_sharedDataPath.getConcatenated(cxxIndexerName);
if (!s_cxxIndexerDirectoryPath.empty())
{
return s_cxxIndexerDirectoryPath.getConcatenated(cxxIndexerName);
}
return s_sharedDataDirectoryPath.getConcatenated(cxxIndexerName);
}
bool AppPath::setCxxIndexerPath(const FilePath& path)
bool AppPath::setCxxIndexerDirectoryPath(const FilePath& path)
{
if (!path.empty())
{
m_cxxIndexerPath = path;
s_cxxIndexerDirectoryPath = path;
return true;
}
return false;
+6 -6
View File
@@ -6,15 +6,15 @@
class AppPath
{
public:
static FilePath getSharedDataPath();
static bool setSharedDataPath(const FilePath& path);
static FilePath getSharedDataDirectoryPath();
static bool setSharedDataDirectoryPath(const FilePath& path);
static FilePath getCxxIndexerPath();
static bool setCxxIndexerPath(const FilePath& path);
static FilePath getCxxIndexerFilePath();
static bool setCxxIndexerDirectoryPath(const FilePath& path);
private:
static FilePath m_sharedDataPath;
static FilePath m_cxxIndexerPath;
static FilePath s_sharedDataDirectoryPath;
static FilePath s_cxxIndexerDirectoryPath;
};
#endif // APP_PATH_H
+28 -18
View File
@@ -1,48 +1,58 @@
#include "ResourcePaths.h"
#include "AppPath.h"
#include "utilityApp.h"
FilePath ResourcePaths::getColorSchemesPath()
FilePath ResourcePaths::getColorSchemesDirectoryPath()
{
return AppPath::getSharedDataPath().concatenate(L"data/color_schemes/");
return AppPath::getSharedDataDirectoryPath().concatenate(L"data/color_schemes/");
}
FilePath ResourcePaths::getSyntaxHighlightingRulesPath()
FilePath ResourcePaths::getSyntaxHighlightingRulesDirectoryPath()
{
return AppPath::getSharedDataPath().concatenate(L"data/syntax_highlighting_rules/");
return AppPath::getSharedDataDirectoryPath().concatenate(L"data/syntax_highlighting_rules/");
}
FilePath ResourcePaths::getFallbackPath()
FilePath ResourcePaths::getFallbackDirectoryPath()
{
return AppPath::getSharedDataPath().concatenate(L"data/fallback/");
return AppPath::getSharedDataDirectoryPath().concatenate(L"data/fallback/");
}
FilePath ResourcePaths::getFontsPath()
FilePath ResourcePaths::getFontsDirectoryPath()
{
return AppPath::getSharedDataPath().concatenate(L"data/fonts/");
return AppPath::getSharedDataDirectoryPath().concatenate(L"data/fonts/");
}
FilePath ResourcePaths::getGuiPath()
FilePath ResourcePaths::getGuiDirectoryPath()
{
return AppPath::getSharedDataPath().concatenate(L"data/gui/");
return AppPath::getSharedDataDirectoryPath().concatenate(L"data/gui/");
}
FilePath ResourcePaths::getLicensePath()
FilePath ResourcePaths::getLicenseDirectoryPath()
{
return AppPath::getSharedDataPath().concatenate(L"data/license/");
return AppPath::getSharedDataDirectoryPath().concatenate(L"data/license/");
}
FilePath ResourcePaths::getJavaPath()
FilePath ResourcePaths::getJavaDirectoryPath()
{
return AppPath::getSharedDataPath().concatenate(L"data/java/");
return AppPath::getSharedDataDirectoryPath().concatenate(L"data/java/");
}
FilePath ResourcePaths::getPythonPath()
FilePath ResourcePaths::getPythonDirectoryPath()
{
return AppPath::getSharedDataPath().concatenate(L"data/python/");
return AppPath::getSharedDataDirectoryPath().concatenate(L"data/python/");
}
FilePath ResourcePaths::getCxxCompilerHeaderPath()
FilePath ResourcePaths::getCxxCompilerHeaderDirectoryPath()
{
return AppPath::getSharedDataPath().concatenate(L"data/cxx/include/").getCanonical();
return AppPath::getSharedDataDirectoryPath().concatenate(L"data/cxx/include/").getCanonical();
}
FilePath ResourcePaths::getPythonIndexerFilePath()
{
if (utility::getOsType() == OS_WINDOWS)
{
return getPythonDirectoryPath().concatenate(L"SourcetrailPythonIndexer.exe");
}
return getPythonDirectoryPath().concatenate(L"SourcetrailPythonIndexer");
}
+10 -9
View File
@@ -8,15 +8,16 @@
class ResourcePaths
{
public:
static FilePath getColorSchemesPath();
static FilePath getSyntaxHighlightingRulesPath();
static FilePath getFallbackPath();
static FilePath getFontsPath();
static FilePath getGuiPath();
static FilePath getLicensePath();
static FilePath getJavaPath();
static FilePath getPythonPath();
static FilePath getCxxCompilerHeaderPath();
static FilePath getColorSchemesDirectoryPath();
static FilePath getSyntaxHighlightingRulesDirectoryPath();
static FilePath getFallbackDirectoryPath();
static FilePath getFontsDirectoryPath();
static FilePath getGuiDirectoryPath();
static FilePath getLicenseDirectoryPath();
static FilePath getJavaDirectoryPath();
static FilePath getPythonDirectoryPath();
static FilePath getCxxCompilerHeaderDirectoryPath();
static FilePath getPythonIndexerFilePath();
};
#endif // RESOURCE_PATHS_H
+11 -11
View File
@@ -1,28 +1,28 @@
#include "UserPaths.h"
FilePath UserPaths::s_userDataPath;
FilePath UserPaths::s_userDataDirectoryPath;
FilePath UserPaths::getUserDataPath()
FilePath UserPaths::getUserDataDirectoryPath()
{
return s_userDataPath;
return s_userDataDirectoryPath;
}
void UserPaths::setUserDataPath(const FilePath& path)
void UserPaths::setUserDataDirectoryPath(const FilePath& path)
{
s_userDataPath = path;
s_userDataDirectoryPath = path;
}
FilePath UserPaths::getAppSettingsPath()
FilePath UserPaths::getAppSettingsFilePath()
{
return getUserDataPath().concatenate(L"ApplicationSettings.xml");
return getUserDataDirectoryPath().concatenate(L"ApplicationSettings.xml");
}
FilePath UserPaths::getWindowSettingsPath()
FilePath UserPaths::getWindowSettingsFilePath()
{
return getUserDataPath().concatenate(L"window_settings.ini");
return getUserDataDirectoryPath().concatenate(L"window_settings.ini");
}
FilePath UserPaths::getLogPath()
FilePath UserPaths::getLogDirectoryPath()
{
return getUserDataPath().concatenate(L"log/");
return getUserDataDirectoryPath().concatenate(L"log/");
}
+6 -6
View File
@@ -8,15 +8,15 @@
class UserPaths
{
public:
static FilePath getUserDataPath();
static void setUserDataPath(const FilePath& path);
static FilePath getUserDataDirectoryPath();
static void setUserDataDirectoryPath(const FilePath& path);
static FilePath getAppSettingsPath();
static FilePath getWindowSettingsPath();
static FilePath getLogPath();
static FilePath getAppSettingsFilePath();
static FilePath getWindowSettingsFilePath();
static FilePath getLogDirectoryPath();
private:
static FilePath s_userDataPath;
static FilePath s_userDataDirectoryPath;
};
#endif // USER_PATHS_H
@@ -16,7 +16,7 @@
#include "utility.h"
#include "utilityString.h"
const std::wstring BookmarkController::s_edgeSeperatorToken = L" => ";
const std::wstring BookmarkController::s_edgeSeparatorToken = L" => ";
const std::wstring BookmarkController::s_defaultCategoryName = L"default";
BookmarkController::BookmarkController(StorageAccess* storageAccess)
@@ -509,7 +509,7 @@ std::vector<std::wstring> BookmarkController::getActiveEdgeDisplayNames() const
const StorageEdge activeEdge = m_storageAccess->getEdgeById(activeEdgeId);
const std::wstring sourceDisplayName = getNodeDisplayName(activeEdge.sourceNodeId);
const std::wstring targetDisplayName = getNodeDisplayName(activeEdge.targetNodeId);
activeEdgeDisplayNames.push_back(sourceDisplayName + s_edgeSeperatorToken + targetDisplayName);
activeEdgeDisplayNames.push_back(sourceDisplayName + s_edgeSeparatorToken + targetDisplayName);
}
return activeEdgeDisplayNames;
}
@@ -120,7 +120,7 @@ private:
void update();
static const std::wstring s_edgeSeperatorToken;
static const std::wstring s_edgeSeparatorToken;
static const std::wstring s_defaultCategoryName;
StorageAccess* m_storageAccess;
@@ -1333,7 +1333,7 @@ CodeFileParams* CodeController::addSourceLocations(std::shared_ptr<SourceLocatio
{
return nullptr;
}
else if (oldSnippet.startLineNumber < start || oldSnippet.endLineNumber > end) // overlaping
else if (oldSnippet.startLineNumber < start || oldSnippet.endLineNumber > end) // overlapping
{
newSnippet = CodeSnippetParams::merge(newSnippet, oldSnippet);
}
@@ -2151,7 +2151,7 @@ void GraphController::layoutToGrid(DummyNode* node) const
return;
}
// Increase size of nodes with visible chilren to cover full grid cells
// Increase size of nodes with visible children to cover full grid cells
size_t width = GraphViewStyle::toGridSize(node->size.x);
size_t height = GraphViewStyle::toGridSize(node->size.y);
@@ -2440,7 +2440,7 @@ void GraphController::createLegendGraph()
Node* main = addNode(NODE_CLASS, L"Class", Vec2i(x + 200, y + 130));
Node* derived = addNode(NODE_CLASS, L"Derived Class", Vec2i(x + 210, y + 380));
Node* user = addNode(NODE_TYPE, L"Referencing Type", Vec2i(x - 10, y + 220));
Node* usee = addNode(NODE_TYPE, L"Referenced Type", Vec2i(x + 410, y + 220));
Node* used = addNode(NODE_TYPE, L"Referenced Type", Vec2i(x + 410, y + 220));
addEdge(Edge::EDGE_INHERITANCE, main, base);
addEdge(Edge::EDGE_INHERITANCE, derived, main);
@@ -2457,7 +2457,7 @@ void GraphController::createLegendGraph()
}
{
Edge* edge = addEdge(Edge::EDGE_BUNDLED_EDGES, main, usee);
Edge* edge = addEdge(Edge::EDGE_BUNDLED_EDGES, main, used);
std::shared_ptr<TokenComponentBundledEdges> bundledEdgesComp =
std::make_shared<TokenComponentBundledEdges>();
for (size_t i = 0; i < 10; i++)
@@ -35,7 +35,7 @@ std::deque<SnippetMerger::Range> SnippetMerger::merge(std::vector<SnippetMerger:
// merge children
const int snippetMergeRange = 2 * snippetExpandRange +
1; // +1 since snippets that end/start with consequtive
1; // +1 since snippets that end/start with consecutive
// lines should be merged as well.
merged = Range::mergeAdjacent(merged, snippetMergeRange);
+1 -1
View File
@@ -553,7 +553,7 @@ GraphViewStyle::NodeStyle GraphViewStyle::getStyleOfBundleNode(bool isFocused)
return getStyleForNodeType(
NodeType::STYLE_BIG_NODE,
"bundle",
ResourcePaths::getGuiPath().concatenate(L"graph_view/images/bundle.png"),
ResourcePaths::getGuiDirectoryPath().concatenate(L"graph_view/images/bundle.png"),
true,
false,
isFocused,

Some files were not shown because too many files have changed in this diff Show More