Compare commits

..
Author SHA1 Message Date
mlangkabel 70092378c2 test 2021-02-01 18:01:15 +01:00
mlangkabel f76c1773ae test 2021-02-01 17:12:51 +01:00
mlangkabel 997a0ff1e7 test 2021-02-01 15:22:47 +01:00
mlangkabel f0a143a85e test 2021-02-01 14:28:43 +01:00
mlangkabel 7b7c6f4794 add more logging 2021-02-01 13:56:43 +01:00
mlangkabel 9ad9fd8980 Revert "test"
This reverts commit 6ad1b1ce52.
2021-02-01 13:56:34 +01:00
mlangkabel 6ad1b1ce52 test 2021-01-27 22:25:54 +01:00
mlangkabel 4750791a6a test 2021-01-27 22:01:37 +01:00
mlangkabel 6894f9b608 test for ninja 2021-01-27 21:26:45 +01:00
mlangkabel c23dbfb9f9 test 2021-01-26 08:03:22 +01:00
mlangkabel 47fd6af759 install swig for building SourcetrailDB python bindings 2021-01-25 22:24:19 +01:00
mlangkabel 351399ee9e fetch submodule of submodule in appveyor script 2021-01-25 22:06:02 +01:00
mlangkabel 86b5efbd76 fetch submodules in appveyor script 2021-01-25 22:00:42 +01:00
mlangkabel b0c43ce94f remove download_python_indexer call from appveyor script 2021-01-25 21:48:15 +01:00
mlangkabel c28260a0fa update SourcetrailPythonIndexer submodule 2021-01-25 21:19:29 +01:00
mlangkabel b6a92d0825 fix python indexer call in tests 2021-01-25 21:18:08 +01:00
mlangkabel cd0f4e8fc0 fix cmake to copy correct files for python indexer 2021-01-25 20:43:50 +01:00
mlangkabel 146487b760 update SourcetrailPythonIndexer submodule 2021-01-25 20:43:21 +01:00
mlangkabel 197e127035 update usage of python indexer to call run.py 2021-01-25 20:43:00 +01:00
mlangkabel ecfa1b7920 split command line args for IndexerCommandCustom usages
* this seems to be required when using the new QProcess API.
* this also required to remove quotes that were added to path args because otherwise the Python indexer would mistake absolute paths for relative paths.
2021-01-25 20:36:42 +01:00
mlangkabel 093261232c create python environment instead of using pyinstaller 2021-01-25 18:45:27 +01:00
mlangkabel fd05f0fbc5 add SourcetrailPythonIndexer as submodule 2021-01-25 13:47:22 +01:00
256 changed files with 1436 additions and 1643 deletions
+1
View File
@@ -26,6 +26,7 @@ build-*
.DS_Store
.idea
.vscode
__pycache__
/ide_plugins/vs/vs2015/SourcetrailPlugin/SourcetrailExtension/bin
/ide_plugins/vs/vs2015/SourcetrailPlugin/SourcetrailExtension/obj
+3
View File
@@ -0,0 +1,3 @@
[submodule "submodules/SourcetrailPythonIndexer"]
path = submodules/SourcetrailPythonIndexer
url = https://github.com/CoatiSoftware/SourcetrailPythonIndexer.git
+15 -30
View File
@@ -1,21 +1,5 @@
### Changelog
#### 2021.1.30 (beta)
released 2021-03-15
* Java: Fixed Java path detection failures on linux ([#1138](https://github.com/CoatiSoftware/Sourcetrail/issues/1138))
* Java: Updated Java dependencies to add support for Java 13, 14 and 15 ([#1152](https://github.com/CoatiSoftware/Sourcetrail/issues/1152))
* C/C++: Fixed crash due to nullpointer access in indexer
* Python: Updated SourcetrailPythonIndexer to version 1.25.6 to fix issue when storing file content to database ([#1159](https://github.com/CoatiSoftware/Sourcetrail/issues/1159))
* Graph: Fixed multi-level inheritance edges when there are diamond structures ([#1142](https://github.com/CoatiSoftware/Sourcetrail/issues/1142))
* UI: hide news widget if no news are available ([#1160](https://github.com/CoatiSoftware/Sourcetrail/issues/1160))
* Windows: Ignore files where path exceeds character limit to avoid crash (issue [#1149](https://github.com/CoatiSoftware/Sourcetrail/issues/1149)) ([#1151](https://github.com/CoatiSoftware/Sourcetrail/issues/1151))
* Linux: Simplified symbolic link resolution in Linux Sourcetrail launch script ([#1134](https://github.com/CoatiSoftware/Sourcetrail/issues/1134))
* Docs: correct lots of spelling errors ([#1162](https://github.com/CoatiSoftware/Sourcetrail/issues/1162))
* Build: Switched from Qt to boost implementation of executeProcess ([#1145](https://github.com/CoatiSoftware/Sourcetrail/issues/1145))
* Build: make Windows CI build and test Java language support ([#1156](https://github.com/CoatiSoftware/Sourcetrail/issues/1156))
* Build: make Java tests run on Linux CI ([#1127](https://github.com/CoatiSoftware/Sourcetrail/issues/1127))
#### 2020.4.35
released 2021-01-06
@@ -32,6 +16,7 @@ released 2021-01-06
* Linux: Prevent word splitting within arguments passed to Sourcetrail.sh ([#1057](https://github.com/CoatiSoftware/Sourcetrail/issues/1057))
* C/C++: Support linking with LLVM/Clang Dylib instead of individual components ([#1044](https://github.com/CoatiSoftware/Sourcetrail/issues/1044))
#### 2020.2.43
released 2020-06-29
@@ -241,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 existing paths (issue [#640](https://github.com/CoatiSoftware/Sourcetrail/issues/640))
* C/C++: Fixed header path selection in Source Group setup also preselects non exsiting 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
@@ -307,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 overridden methods when clicking overriding method
* Code: Don't show list of overriden 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
@@ -492,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 explicitly open terminal when running on Linux (issue [#525](https://github.com/CoatiSoftware/Sourcetrail/issues/525))
* Linux: Don't explicitely 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
@@ -569,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 validation for compilation database source groups
* C/C++: Removed include check validataion 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)
@@ -737,7 +722,7 @@ released 2017-04-12
#### 0.11.15
released 2017-03-01
* Don't accept rich text in 'enter license' dialog field (issue [#207](https://github.com/CoatiSoftware/Sourcetrail/issues/207))
* Don't accept richt 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
@@ -802,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
* Infer some non-indexed node types by their edges
* Infere some non-indexed node types by their edges
#### 0.10.0
@@ -840,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 anonymous symbol name conflicts (issue [#241](https://github.com/CoatiSoftware/Sourcetrail/issues/241))
* Fixed anonymouse 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))
@@ -1018,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 compilation database to project setup
* Explain that the project stays up-to-date with the compilation database on refresh in project setup UI
* 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
* Disregard source extensions when loading from compilation database
* Removed error logs in name resolver
* Added plugin for VIM: https://github.com/CoatiSoftware/vim-coati
@@ -1027,7 +1012,7 @@ released 2016-06-15
#### 0.6.0.0
released 2016-04-27
* Added support for temporary test licenses and show error message when it expired
* Added suppport 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
@@ -1111,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 bundling to bundle more
* Improved graph view node bundeling 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
@@ -1126,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 positions in graph
* Fixed number postions 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
@@ -1142,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' without source location
* Fixed constructors and destructors using return type 'void' withou source location
* Parse errors will be displayed as they appear during analysis
* Redesigned the about window
* Installing prerequisites in Windows Installer
* Installing prerequisits in Windows Installer
* Added installer for Windows
* Introduced file endings .coatiproject and .coatidb for Coati's project files
* Removed Coati directory from Linux package
+47 -17
View File
@@ -56,14 +56,6 @@ 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 ----------------------------------------------------------------------
@@ -479,7 +471,7 @@ if (BUILD_JAVA_LANGUAGE_PACKAGE)
add_custom_command(
TARGET ${LIB_JAVA_PROJECT_NAME}
PRE_BUILD
COMMAND ${BASH} ${PROJECT_SOURCE_DIR}/script/update_java_indexer.sh
COMMAND ${PROJECT_SOURCE_DIR}/script/update_java_indexer.sh
COMMENT "updating java indexer jars"
)
@@ -490,10 +482,39 @@ else()
endif()
string(REGEX REPLACE "/" "\\\\" BACKSLASHED_CMAKE_BINARY_DIR ${CMAKE_BINARY_DIR})
string(REGEX REPLACE "/" "\\\\" BACKSLASHED_CMAKE_SOURCE_DIR ${CMAKE_SOURCE_DIR})
# Lib Python ---------------------------------------------------------------------
if (BUILD_PYTHON_LANGUAGE_PACKAGE)
file (STRINGS "${CMAKE_SOURCE_DIR}/submodules/SourcetrailPythonIndexer/SourcetrailDB/version.txt" VERSION_STRING)
string(REGEX REPLACE "v([0-9]+)\\..*" "\\1" INTERFACE_VERSION "${VERSION_STRING}")
string(REGEX REPLACE "v[0-9]+\\.db([0-9]+)\\..*" "\\1" DATABASE_VERSION "${VERSION_STRING}")
string(REGEX REPLACE "v[0-9]+\\.db[0-9]+\\.p([0-9]+).*" "\\1" PATCH_VERSION "${VERSION_STRING}")
set(VERSION_STRING_UNDERSCORE "v${INTERFACE_VERSION}_db${DATABASE_VERSION}_p${PATCH_VERSION}")
message(STATUS "SourcetrailDB Version: ${VERSION_STRING}")
message(STATUS "Interface Version: ${INTERFACE_VERSION}")
message(STATUS "Database Version: ${DATABASE_VERSION}")
message(STATUS "Patch Version: ${PATCH_VERSION}")
set(LIB_CORE_TARGET_NAME "SourcetrailDB_core_lib")
add_subdirectory(
"${CMAKE_SOURCE_DIR}/submodules/SourcetrailPythonIndexer/SourcetrailDB/core"
"${CMAKE_BINARY_DIR}/SourcetrailPythonIndexer/SourcetrailDB/core")
set(PYTHON_BINDING_TARGET_NAME "bindings_python")
set(PYTHON_BINDING_OUTPUT_DIR "")
add_subdirectory(
"${CMAKE_SOURCE_DIR}/submodules/SourcetrailPythonIndexer/SourcetrailDB/bindings_python"
"${CMAKE_BINARY_DIR}/SourcetrailPythonIndexer/SourcetrailDB/bindings_python")
add_library(${LIB_PYTHON_PROJECT_NAME} ${LIB_PYTHON_FILES})
create_source_groups(${LIB_PYTHON_FILES})
@@ -510,14 +531,26 @@ if (BUILD_PYTHON_LANGUAGE_PACKAGE)
#link_directories(${Boost_LIBRARY_DIRS})
target_link_libraries(${LIB_PYTHON_PROJECT_NAME} ${LIB_UTILITY_PROJECT_NAME} ${LIB_PROJECT_NAME})
add_dependencies(${LIB_PYTHON_PROJECT_NAME} _${PYTHON_BINDING_TARGET_NAME})
string(REGEX REPLACE "\\\\" "/" FORWARDSLASHED_PYTHON_INCLUDE_DIR ${PYTHON_INCLUDE_DIR})
set(PYTHON_ENVIRONMENT_DIR "${BACKSLASHED_CMAKE_SOURCE_DIR}\\bin\\app\\data\\python\\environment")
set(PYTHON_INDEXER_DIR "${BACKSLASHED_CMAKE_SOURCE_DIR}\\bin\\app\\data\\python\\indexer")
execute_process(
COMMAND "cmd.exe" "/k" "rmdir" "/s" "/q" "${PYTHON_ENVIRONMENT_DIR}" & "${PYTHON_INCLUDE_DIR}/../python.exe" "-m" "venv" "--clear" "--copies" "${PYTHON_ENVIRONMENT_DIR}" & "${PYTHON_ENVIRONMENT_DIR}/Scripts/pip" "install" "-r" "${CMAKE_SOURCE_DIR}/submodules/SourcetrailPythonIndexer/requirements.txt" & exit
)
execute_process(
COMMAND "cmd.exe" "/k" "rmdir" "/s" "/q" "${PYTHON_INDEXER_DIR}" & exit
)
add_custom_command(
TARGET ${LIB_PYTHON_PROJECT_NAME}
PRE_BUILD
COMMAND ${BASH} ${PROJECT_SOURCE_DIR}/script/download_python_indexer.sh
COMMENT "download python indexer"
COMMAND ${PROJECT_SOURCE_DIR}/script/update_python_indexer.sh
COMMENT "updating python indexer scripts"
)
else()
message(STATUS "Building the Python indexer will be skipped. You can enable building this target by setting 'BUILD_PYTHON_LANGUAGE_PACKAGE' to 'ON'.")
@@ -703,9 +736,6 @@ if (WIN32)
TARGET ${APP_PROJECT_NAME}
PROPERTY VS_DEBUGGER_WORKING_DIRECTORY
"${CMAKE_SOURCE_DIR}/bin/app")
string(REGEX REPLACE "/" "\\\\" BACKSLASHED_CMAKE_BINARY_DIR ${CMAKE_BINARY_DIR})
string(REGEX REPLACE "/" "\\\\" BACKSLASHED_CMAKE_SOURCE_DIR ${CMAKE_SOURCE_DIR})
else ()
add_executable(${APP_PROJECT_NAME} ${APP_FILES})
endif ()
@@ -872,7 +902,7 @@ if (UNIX)
COMMAND "${CMAKE_COMMAND}" "-E" "create_symlink" "${CMAKE_SOURCE_DIR}/bin/app/user" "${CMAKE_BINARY_DIR}/app/user"
COMMAND "${CMAKE_COMMAND}" "-E" "create_symlink" "${CMAKE_SOURCE_DIR}/bin/test/data" "${CMAKE_BINARY_DIR}/test/data"
)
elseif(WIN32)
elseif (WIN32)
foreach(OUTPUTCONFIG ${CMAKE_CONFIGURATION_TYPES})
if (EXISTS "${BACKSLASHED_CMAKE_BINARY_DIR}\\${OUTPUTCONFIG}")
execute_process(
+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 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.
* __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.
* __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_67_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_68_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_67_0> -DQt5_DIR=<path/to/Qt/version/platform/compiler/lib/cmake/Qt5> ../..
$ cmake -DCMAKE_BUILD_TYPE="Release" -DBOOST_ROOT=<path/to/boost_1_68_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 indexed source code, building and traversing an Abstract Syntax Tree and generating error messages.
* __Reason__: Used for running the preprocessor on the indexedes 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` environment variable and that the `JAVA_HOME` environment variable is set:
* __Remarks__: Make sure that `<jdk_root>/bin` is available in your `PATH` environmen 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` environment 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` environmen 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
+3 -6
View File
@@ -5,9 +5,7 @@ Sponsors [via Patreon](https://www.patreon.com/sourcetrail).
## Legendary Coatis
* Akinobu Fujii
* Chris Anderson
* Mario van Beek
* Tai-Wu Chiang
* Timothee Besset
## Super Coatis
@@ -15,8 +13,6 @@ Sponsors [via Patreon](https://www.patreon.com/sourcetrail).
* Alexis Jeandet
* Anshu Mathur
* Chris Morley
* dsp
* Georg Friedrich
* Konstantin Kirenko
* Louis St-Amour
* William Wold
@@ -27,7 +23,7 @@ Sponsors [via Patreon](https://www.patreon.com/sourcetrail).
* Andreas
* Anton
* Bicakci, Inc.
* Christian Hipp
* BJ
* Dio Lee
* Ferenc Fejes
* Frederic Simonis
@@ -36,6 +32,7 @@ Sponsors [via Patreon](https://www.patreon.com/sourcetrail).
* IndustrialRobot
* Jason Stevens
* John Borland
* Kikuchi Takanori
* MangerDesPates
* Matěj Týč
* Max Bruckner
@@ -48,7 +45,6 @@ Sponsors [via Patreon](https://www.patreon.com/sourcetrail).
* Rémi Cohen-Scali
* Rui Pires
* Ryo Koyama
* Saket Sinha
* Simon
* Sneakyferret
* Stephan Roslen
@@ -58,5 +54,6 @@ 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._
+25 -19
View File
@@ -2,25 +2,31 @@ version: 0.0.0.{build}
image: Visual Studio 2017
install:
############################################################################
# Install Ninja
############################################################################
- set NINJA_URL="https://github.com/ninja-build/ninja/releases/download/v1.9.0/ninja-win.zip"
- appveyor DownloadFile %NINJA_URL% -FileName ninja.zip
- 7z x ninja.zip -oC:\projects\deps\ninja > nul
- set PATH=C:\projects\deps\ninja;%PATH%
- ninja --version
############################################################################
# Install Ninja
############################################################################
- set NINJA_URL="https://github.com/ninja-build/ninja/releases/download/v1.9.0/ninja-win.zip"
- appveyor DownloadFile %NINJA_URL% -FileName ninja.zip
- 7z x ninja.zip -oC:\projects\deps\ninja > nul
- set PATH=C:\projects\deps\ninja;%PATH%
- ninja --version
# Install SWIG by Choco
- ps: choco install -y --no-progress swig --version 4.0.1
before_build:
- git submodule init
- git submodule update
- cd submodules/SourcetrailPythonIndexer
- git submodule init
- git submodule update
- cd ../..
- mkdir build
- cd build
- mkdir temp
- 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_JAVA_LANGUAGE_PACKAGE=ON -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_PYTHON_LANGUAGE_PACKAGE=ON -DCMAKE_BUILD_TYPE=Release ../../
- cd ../../
build_script:
@@ -28,11 +34,11 @@ build_script:
- ninja
- 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 ../../
artifacts:
- path: bin
name: bin
type: zip
- path: build
name: build
type: zip
+2 -2
View File
@@ -171,7 +171,7 @@
</hatching>
</default>
<!-- OPTIONAL: type specific node colors can be overridden by using the TEMPLATE within a type tag below -->
<!-- OPTIONAL: type specific node colors can be overriden 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 overridden by using the TEMPLATE within a type tag below -->
<!-- OPTIONAL: type specific edge colors can be overriden by using the TEMPLATE within a type tag below -->
<type_of></type_of>
<return_type></return_type>
<parameter_type></parameter_type>
@@ -49,7 +49,6 @@
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 input!\n")
stringOut("Wrong inpot!\n")
return False
elif not field.isEmpty(move):
stringOut("Is occupied!\n")
@@ -7,7 +7,7 @@
//------------------------------------------------------------------------------
//
// ANYTHING ELSE I SHOULD KNOW?
// ANYTING 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 - CONGRATULATIONS
// 9 - CONGRATULATONS
// 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,12 +1,6 @@
IndexerCommandCustom
SourceFilePath: "src/a.txt"
SourceFilePath: "src/a.txt"
Custom Command: "echo "Hello World""
Arguments:
IndexerCommandCustom
SourceFilePath: "src/b.txt"
SourceFilePath: "src/b.txt"
Custom Command: "echo "Hello World""
Arguments:
IndexerCommandCustom
SourceFilePath: "src/included/a.txt"
SourceFilePath: "src/included/a.txt"
Custom Command: "echo "Hello World""
Arguments:
@@ -1,12 +1,15 @@
IndexerCommandCustom
SourceFilePath: "src/a.txt"
Custom Command: "echo "Hello World""
Custom Command: "echo"
Arguments:
"Hello World"
IndexerCommandCustom
SourceFilePath: "src/b.txt"
Custom Command: "echo "Hello World""
Custom Command: "echo"
Arguments:
"Hello World"
IndexerCommandCustom
SourceFilePath: "src/included/a.txt"
Custom Command: "echo "Hello World""
Custom Command: "echo"
Arguments:
"Hello World"
@@ -1,5 +1,6 @@
#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
+23 -42
View File
@@ -1,20 +1,4 @@
#!/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.
#
#!/usr/bin/env bash
##############################################################################
##
@@ -44,16 +28,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='"-Xmx64m" "-Xms64m"'
DEFAULT_JVM_OPTS=""
# Use the maximum available, or set MAX_FD != -1 to use that value.
MAX_FD="maximum"
warn () {
warn ( ) {
echo "$*"
}
die () {
die ( ) {
echo
echo "$*"
echo
@@ -125,8 +109,8 @@ if $darwin; then
GRADLE_OPTS="$GRADLE_OPTS \"-Xdock:name=$APP_NAME\" \"-Xdock:icon=$APP_HOME/media/gradle.icns\""
fi
# For Cygwin or MSYS, switch paths to Windows format before running java
if [ "$cygwin" = "true" -o "$msys" = "true" ] ; then
# For Cygwin, switch paths to Windows format before running java
if $cygwin ; then
APP_HOME=`cygpath --path --mixed "$APP_HOME"`
CLASSPATH=`cygpath --path --mixed "$CLASSPATH"`
JAVACMD=`cygpath --unix "$JAVACMD"`
@@ -154,30 +138,27 @@ if [ "$cygwin" = "true" -o "$msys" = "true" ] ; then
else
eval `echo args$i`="\"$arg\""
fi
i=`expr $i + 1`
i=$((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
# Escape application args
save () {
for i do printf %s\\n "$i" | sed "s/'/'\\\\''/g;1s/^/'/;\$s/\$/' \\\\/" ; done
echo " "
# Split up the JVM_OPTS And GRADLE_OPTS values into an array, following the shell quoting and substitution rules
function splitJvmOpts() {
JVM_OPTS=("$@")
}
APP_ARGS=`save "$@"`
eval splitJvmOpts $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS
JVM_OPTS[${#JVM_OPTS[*]}]="-Dorg.gradle.appname=$APP_BASE_NAME"
# 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" "$@"
exec "$JAVACMD" "${JVM_OPTS[@]}" -classpath "$CLASSPATH" org.gradle.wrapper.GradleWrapperMain "$@"
@@ -1,19 +1,3 @@
@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
@@ -30,7 +14,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="-Xmx64m" "-Xms64m"
set DEFAULT_JVM_OPTS=
@rem Find java.exe
if defined JAVA_HOME goto findJavaFromJavaHome
@@ -65,6 +49,7 @@ 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.
@@ -75,6 +60,11 @@ 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
}
/**
* Rigorous Test :-)
* Rigourous 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 rectify 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 recitify 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,5 +1,6 @@
#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,20 +1,4 @@
#!/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.
#
#!/usr/bin/env bash
##############################################################################
##
@@ -44,16 +28,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='"-Xmx64m" "-Xms64m"'
DEFAULT_JVM_OPTS=""
# Use the maximum available, or set MAX_FD != -1 to use that value.
MAX_FD="maximum"
warn () {
warn ( ) {
echo "$*"
}
die () {
die ( ) {
echo
echo "$*"
echo
@@ -125,8 +109,8 @@ if $darwin; then
GRADLE_OPTS="$GRADLE_OPTS \"-Xdock:name=$APP_NAME\" \"-Xdock:icon=$APP_HOME/media/gradle.icns\""
fi
# For Cygwin or MSYS, switch paths to Windows format before running java
if [ "$cygwin" = "true" -o "$msys" = "true" ] ; then
# For Cygwin, switch paths to Windows format before running java
if $cygwin ; then
APP_HOME=`cygpath --path --mixed "$APP_HOME"`
CLASSPATH=`cygpath --path --mixed "$CLASSPATH"`
JAVACMD=`cygpath --unix "$JAVACMD"`
@@ -154,30 +138,27 @@ if [ "$cygwin" = "true" -o "$msys" = "true" ] ; then
else
eval `echo args$i`="\"$arg\""
fi
i=`expr $i + 1`
i=$((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
# Escape application args
save () {
for i do printf %s\\n "$i" | sed "s/'/'\\\\''/g;1s/^/'/;\$s/\$/' \\\\/" ; done
echo " "
# Split up the JVM_OPTS And GRADLE_OPTS values into an array, following the shell quoting and substitution rules
function splitJvmOpts() {
JVM_OPTS=("$@")
}
APP_ARGS=`save "$@"`
eval splitJvmOpts $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS
JVM_OPTS[${#JVM_OPTS[*]}]="-Dorg.gradle.appname=$APP_BASE_NAME"
# 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" "$@"
exec "$JAVACMD" "${JVM_OPTS[@]}" -classpath "$CLASSPATH" org.gradle.wrapper.GradleWrapperMain "$@"
@@ -1,19 +1,3 @@
@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
@@ -30,7 +14,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="-Xmx64m" "-Xms64m"
set DEFAULT_JVM_OPTS=
@rem Find java.exe
if defined JAVA_HOME goto findJavaFromJavaHome
@@ -65,6 +49,7 @@ 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.
@@ -75,6 +60,11 @@ 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
}
/**
* Rigorous Test :-)
* Rigourous Test :-)
*/
public void testApp()
{
@@ -29,7 +29,7 @@ public class AppTest
}
/**
* Rigorous Test :-)
* Rigourous Test :-)
*/
public void testApp()
{
@@ -29,7 +29,7 @@ public class AppTest
}
/**
* Rigorous Test :-)
* Rigourous 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>Detects the range of versions including the value in VersionMax.</summary>
<summary>Dectects 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 qualifiers for the component.</returns>
<returns>Enumeration of the qulifiers 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 parameter types
Checks if a method has the right return and paramater 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 committed when it is closed.
automatically commited 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 committed when it is
<see cref="F:Microsoft.Deployment.WindowsInstaller.DatabaseOpenMode.Direct" /> mode will be automatically commited 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 obsoleted by other patches.</summary>
<summary>Patches that are obsolesced 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 conflicts.
Gets a message that describes the merge conflits.
</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 parameter is ignored.</param>
in which case the logModes paraneter 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 parameter is ignored.</param>
in which case the logModes paraneter 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 superseded patches.
the product and accounts for obsolete and superceded 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 parameter of
Since the lpAttributes paramter 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 synchronization.
Gets an object that can be used internally for safe syncronization.
</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 obsolete.
Gets a value indicating whether this patch is marked as obsolte.
</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/msirecordclearedata.asp">MsiRecordClearData</a>
<a href="http://msdn.microsoft.com/library/en-us/msi/setup/msirecordcleardata.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 installLevel parameter,
If 0 or a negative number is passed in the ilnstallLevel 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 immediate session details.
Throws an exception if the custom action is not able to access immedate 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 property indicates the platform and language versions supported by the database.
The Template summary information propery 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 prompt. Aborting now."
echo "Unable to generate GUID. Make sure to run this script from the Visual Studio command propmt. 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 wasn't set, but the Sourcetrail wont run properly on a user machine
-installer would still build if the deploy flag wasnt 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
-...
General
Generel
-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 referred to within the wix project using this id
-Id: the directory will be refered 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 @@ General
-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% inseparable. 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% unseperable. 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 reference
-Id: id of the component you want to refere to
------------------
@@ -89,7 +89,7 @@ Version Number
-candle.exe -dprojectVersion="0.7.0" ...
-replace 0.7.0 with the desired version number
Minor upgrade (sourcetrail.wxs)
Minor upgrage (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 that's again done automatically
-package GUID changes too, but thats 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 2021.1</p>
<p>Documentation for version 2020.2</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 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>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>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 unforeseen exceptions while indexing.</td>
<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>
</tr>
<tr>
<th scope="row">Java Path</th>
@@ -821,7 +821,7 @@
<strong>Interactions:</strong>
<ul>
<li>Switch indexing mode by clicking a different option.</li>
<li>Swith 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 certain group of symbols.</p>
<p>Additionally the search view provides specific keywords that select a certein 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 search.</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 serach.</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 occurred during indexing.</p>
<p>This list shows errors occured durring 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 currently selected Source Group.</li>
<li>Clicking <code></code> beneath the Source Group list will duplicate the currenlty 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="#GettingStarted">QUICK START GUIDE</a> section 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="#Choosingtherightprojectsetup">QUCICK START GUIDE section</a> 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 exported <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 exportet <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 extension 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 extion 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 configure Sourcetrail or index a Sourcetrail project.</p>
<p>Currently you can use the command line to configue 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 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">--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">--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>Manually</li>
<li>Manuelly</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 Control</li>
<li>Package Controll</li>
<ol>
<li>If you don't have Package Control for Sublime go to https://packagecontrol.io and
<li>If you dont have Package Controll for Sublime go to https://packagecontrol.io and
install it</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>Open Command Pallete with <kbd>Ctrl</kbd> + <kbd>Shift</kbd> + <kbd>P</kbd></li>
<li>Select <code>Package Controll: 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 Palette(<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 Pallete(<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 Palette: <code>Sourcetrail: Send Location</code></p>
or type in the Command Pallete: <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 Compilation 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 Compilaton 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 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">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">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 Compilation 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 Compilaton 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 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>
<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>
<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. 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">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">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 information 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 informatin 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 separated 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 seperated 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>Separates the tokens of the message</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">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. Separate 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. Seperate 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 confidential source code?</h3>
<h3 class="panel-title">Can I use Sourcetrail on confidental 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 actually 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 actualy 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 confidential.</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>
</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>https://www.mvnrepository.com</url>
<url>http://www.mvnrepository.com</url>
</repository>
<repository>
<id>repo_gradle</id>
<name>repo_gradle</name>
<url>https://repo.gradle.org/gradle/libs-releases-local</url>
<url>http://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>6.7.1</version>
<version>4.2</version>
<scope>system</scope>
<systemPath>${basedir}/lib/gradle-tooling-api-6.7.1.jar</systemPath>
<systemPath>${basedir}/lib/gradle-tooling-api-4.2.jar</systemPath>
</dependency>
<dependency>
<groupId>org.eclipse.core</groupId>
<artifactId>org.eclipse.core.commands</artifactId>
<version>3.9.800</version>
<version>3.9.500</version>
<scope>system</scope>
<systemPath>${basedir}/lib/org.eclipse.core.commands-3.9.800.jar</systemPath>
<systemPath>${basedir}/lib/org.eclipse.core.commands-3.9.500.jar</systemPath>
</dependency>
<dependency>
<groupId>org.eclipse.core</groupId>
<artifactId>org.eclipse.core.contenttype</artifactId>
<version>3.7.800</version>
<version>3.7.400</version>
<scope>system</scope>
<systemPath>${basedir}/lib/org.eclipse.core.contenttype-3.7.800.jar</systemPath>
<systemPath>${basedir}/lib/org.eclipse.core.contenttype-3.7.400.jar</systemPath>
</dependency>
<dependency>
<groupId>org.eclipse.core</groupId>
<artifactId>org.eclipse.core.expressions</artifactId>
<version>3.7.0</version>
<version>3.6.500</version>
<scope>system</scope>
<systemPath>${basedir}/lib/org.eclipse.core.expressions-3.7.0.jar</systemPath>
<systemPath>${basedir}/lib/org.eclipse.core.expressions-3.6.500.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.700.jar</systemPath>
<systemPath>${basedir}/lib/org.eclipse.core.filesystem-1.7.500.jar</systemPath>
</dependency>
<dependency>
<groupId>org.eclipse.core</groupId>
<artifactId>org.eclipse.core.jobs</artifactId>
<version>3.10.1000</version>
<version>3.10.500</version>
<scope>system</scope>
<systemPath>${basedir}/lib/org.eclipse.core.jobs-3.10.1000.jar</systemPath>
<systemPath>${basedir}/lib/org.eclipse.core.jobs-3.10.500.jar</systemPath>
</dependency>
<dependency>
<groupId>org.eclipse.core</groupId>
<artifactId>org.eclipse.core.resources</artifactId>
<version>3.13.900</version>
<version>3.13.500</version>
<scope>system</scope>
<systemPath>${basedir}/lib/org.eclipse.core.resources-3.13.900.jar</systemPath>
<systemPath>${basedir}/lib/org.eclipse.core.resources-3.13.500.jar</systemPath>
</dependency>
<dependency>
<groupId>org.eclipse.core</groupId>
<artifactId>org.eclipse.core.runtime</artifactId>
<version>3.20.0</version>
<version>3.16.0</version>
<scope>system</scope>
<systemPath>${basedir}/lib/org.eclipse.core.runtime-3.20.0.jar</systemPath>
<systemPath>${basedir}/lib/org.eclipse.core.runtime-3.16.0.jar</systemPath>
</dependency>
<dependency>
<groupId>org.eclipse.equinox</groupId>
<artifactId>org.eclipse.equinox.app</artifactId>
<version>1.5.0</version>
<version>1.4.300</version>
<scope>system</scope>
<systemPath>${basedir}/lib/org.eclipse.equinox.app-1.5.0.jar</systemPath>
<systemPath>${basedir}/lib/org.eclipse.equinox.app-1.4.300.jar</systemPath>
</dependency>
<dependency>
<groupId>org.eclipse.equinox</groupId>
<artifactId>org.eclipse.equinox.common</artifactId>
<version>3.14.0</version>
<version>3.10.500</version>
<scope>system</scope>
<systemPath>${basedir}/lib/org.eclipse.equinox.common-3.14.0.jar</systemPath>
<systemPath>${basedir}/lib/org.eclipse.equinox.common-3.10.500.jar</systemPath>
</dependency>
<dependency>
<groupId>org.eclipse.equinox</groupId>
<artifactId>org.eclipse.equinox.preferences</artifactId>
<version>3.8.100</version>
<version>3.7.500</version>
<scope>system</scope>
<systemPath>${basedir}/lib/org.eclipse.equinox.preferences-3.8.100.jar</systemPath>
<systemPath>${basedir}/lib/org.eclipse.equinox.preferences-3.7.500.jar</systemPath>
</dependency>
<dependency>
<groupId>org.eclipse.equinox</groupId>
<artifactId>org.eclipse.equinox.registry</artifactId>
<version>3.10.0</version>
<version>3.8.500</version>
<scope>system</scope>
<systemPath>${basedir}/lib/org.eclipse.equinox.registry-3.10.0.jar</systemPath>
<systemPath>${basedir}/lib/org.eclipse.equinox.registry-3.8.500.jar</systemPath>
</dependency>
<dependency>
<groupId>org.eclipse.jdt</groupId>
<artifactId>org.eclipse.jdt.core</artifactId>
<version>3.24.0</version>
<version>3.19.0</version>
<scope>system</scope>
<systemPath>${basedir}/lib/org.eclipse.jdt.core-3.24.0.jar</systemPath>
<systemPath>${basedir}/lib/org.eclipse.jdt.core-3.19.0.jar</systemPath>
</dependency>
<dependency>
<groupId>org.eclipse</groupId>
<artifactId>org.eclipse.osgi</artifactId>
<version>3.16.100</version>
<version>3.15.0</version>
<scope>system</scope>
<systemPath>${basedir}/lib/org.eclipse.osgi-3.16.100.jar</systemPath>
<systemPath>${basedir}/lib/org.eclipse.osgi-3.15.0.jar</systemPath>
</dependency>
<dependency>
<groupId>org.eclipse</groupId>
<artifactId>org.eclipse.text</artifactId>
<version>3.10.400</version>
<version>3.9.0</version>
<scope>system</scope>
<systemPath>${basedir}/lib/org.eclipse.text-3.10.400.jar</systemPath>
<systemPath>${basedir}/lib/org.eclipse.text-3.9.0.jar</systemPath>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>1.7.28</version>
<version>1.7.10</version>
<scope>system</scope>
<systemPath>${basedir}/lib/slf4j-api-1.7.28.jar</systemPath>
<systemPath>${basedir}/lib/slf4j-api-1.7.10.jar</systemPath>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-simple</artifactId>
<version>1.7.30</version>
<version>1.7.10</version>
<scope>system</scope>
<systemPath>${basedir}/lib/slf4j-simple-1.7.30.jar</systemPath>
<systemPath>${basedir}/lib/slf4j-simple-1.7.10.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 != null && !binding.isRecovered())
if (!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 applicable
// record package symbol kind of current node if appliccable
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.JLS_Latest);
ASTParser parser = ASTParser.newParser(AST.JLS12);
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.DISABLED);
options.put(JavaCore.COMPILER_PB_ENABLE_PREVIEW_FEATURES, JavaCore.ENABLED);
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.JLS_Latest);
ASTParser parser = ASTParser.newParser(AST.JLS12);
parser.setKind(
ASTParser.K_COMPILATION_UNIT); // specify to parse the entire compilation unit
parser.setSource(fileContent.toCharArray());
@@ -209,14 +209,8 @@ public class JavaIndexer
case "11":
return JavaCore.VERSION_11;
case "12":
return JavaCore.VERSION_12;
case "13":
return JavaCore.VERSION_13;
case "14":
return JavaCore.VERSION_14;
case "15":
default:
return JavaCore.VERSION_15;
return JavaCore.VERSION_12;
}
}
@@ -7,7 +7,7 @@ import java.util.Optional;
public class NameHierarchy
{
private List<NameElement> m_elements = new ArrayList<>();
private char m_separator = '.';
private char m_separatpr = '.';
public NameHierarchy() {}
@@ -28,7 +28,7 @@ public class NameHierarchy
public void setSeparator(char separator)
{
m_separator = separator;
m_separatpr = separator;
}
public void push(NameElement element)
@@ -55,7 +55,7 @@ public class NameHierarchy
public String serialize()
{
String serialized = m_separator + "\tm";
String serialized = m_separatpr + "\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://sha256timestamp.ws.symantec.com/sha256/timestamp" //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://timestamp.verisign.com/scripts/timstamp.dll" //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://sha256timestamp.ws.symantec.com/sha256/timestamp" //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://timestamp.verisign.com/scripts/timstamp.dll" //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://sha256timestamp.ws.symantec.com/sha256/timestamp" //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://timestamp.verisign.com/scripts/timstamp.dll" //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://sha256timestamp.ws.symantec.com/sha256/timestamp" //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://timestamp.verisign.com/scripts/timstamp.dll" //d "Sourcetrail ${DOTTED_VERSION_STRING} Installer" //du "https://www.sourcetrail.com/" //v deployment/windows/wixSetup/bin/sourcetrail.msi
fi
-102
View File
@@ -1,102 +0,0 @@
#!/bin/bash
SOURCETRAIL_PYTHON_INDEXER_VERSION="v1_db25_p6"
# Determine current platform
PLATFORM='unknown'
if [ "$(uname)" == "Darwin" ]; then
PLATFORM='osx'
elif [ "$(expr substr $(uname -s) 1 5)" == "Linux" ]; then
PLATFORM='linux'
elif [ "$(expr substr $(uname -s) 1 10)" == "MINGW32_NT" ]; then
PLATFORM='windows'
elif [ "$(expr substr $(uname -s) 1 10)" == "MINGW64_NT" ]; then
PLATFORM='windows'
elif [ "$OSTYPE" == "msys" ]; then
PLATFORM='windows'
fi
PACKAGE_NAME="SourcetrailPythonIndexer_${SOURCETRAIL_PYTHON_INDEXER_VERSION}-${PLATFORM}"
PACKAGE_FILE_NAME="${PACKAGE_NAME}.zip"
PACKAGE_URL="https://github.com/CoatiSoftware/SourcetrailPythonIndexer/releases/download/${SOURCETRAIL_PYTHON_INDEXER_VERSION}/${PACKAGE_FILE_NAME}"
TEMP_PATH="build/temp"
TARGET_PATH="bin/app/data/python"
ABORT="\033[31mAbort:\033[00m"
SUCCESS="\033[32mSuccess:\033[00m"
INFO="\033[33mInfo:\033[00m"
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
SCRIPT_DIR="$( cd "$( dirname "$0" )" && pwd )"
fi
echo "This script is running in: $SCRIPT_DIR"
# Enter main directory
cd $SCRIPT_DIR/
cd ..
BINARY_PATH="$TARGET_PATH/SourcetrailPythonIndexer"
if [ $PLATFORM == "windows" ]; then
BINARY_PATH="${BINARY_PATH}.exe"
fi
if [ -e "${BINARY_PATH}" ]; then
echo -e $INFO "SourcetrailPythonIndexer already exists, checking version..."
INSTALLED_VERSION="$(${BINARY_PATH} --version)"
INSTALLED_VERSION=${INSTALLED_VERSION#* }
INSTALLED_VERSION="${INSTALLED_VERSION//./$'_'}"
if [ "$INSTALLED_VERSION" == "$SOURCETRAIL_PYTHON_INDEXER_VERSION" ]; then
echo -e $INFO "Nothing to update. Target version of SourcetrailPythonIndexer is already installed."
exit
fi
fi
mkdir -p $TEMP_PATH
echo -e $INFO "starting to download $PACKAGE_FILE_NAME"
if [ $PLATFORM == "linux" ]; then
wget -O $TEMP_PATH/$PACKAGE_FILE_NAME $PACKAGE_URL
elif [ $PLATFORM == "osx" ]; then
wget -O $TEMP_PATH/$PACKAGE_FILE_NAME $PACKAGE_URL
elif [ $PLATFORM == "windows" ]; then
certutil.exe -urlcache -split -f $PACKAGE_URL $TEMP_PATH/$PACKAGE_FILE_NAME
fi
echo -e $INFO "finished downloading $PACKAGE_FILE_NAME"
if [ $PLATFORM == "linux" ]; then
unzip -d $TEMP_PATH $TEMP_PATH/$PACKAGE_FILE_NAME
elif [ $PLATFORM == "osx" ]; then
unzip -d $TEMP_PATH $TEMP_PATH/$PACKAGE_FILE_NAME
elif [ $PLATFORM == "windows" ]; then
7z x $TEMP_PATH/$PACKAGE_FILE_NAME -o$TEMP_PATH
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
echo -e $INFO "clearing temporary data at $TEMP_PATH"
rm -rf $TEMP_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 uncommitted changes."
echo -e $ABORT "You have uncommited 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 uncommitted changes."
echo -e $ABORT "You have uncommited changes."
exit 1
fi
+8 -20
View File
@@ -11,33 +11,21 @@ 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'
elif [ "$(expr substr $(uname -s) 1 10)" == "MINGW64_NT" ]; then
PLATFORM='windows'
elif [ "$OSTYPE" == "msys" ]; then
PLATFORM='windows'
PLATFORM='Windows'
fi
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
if [ $PLATFORM == "Windows" ]; then
ORIGINAL_PATH_TO_SCRIPT="${0}"
CLEANED_PATH_TO_SCRIPT="${ORIGINAL_PATH_TO_SCRIPT//\\//}"
ROOT_DIR=`dirname "$CLEANED_PATH_TO_SCRIPT"`
else
SCRIPT_DIR="$( cd "$( dirname "$0" )" && pwd )"
ROOT_DIR="$( cd "$( dirname "$0" )" && pwd )"
fi
echo "This script is running in: $SCRIPT_DIR"
ROOT_DIR=$ROOT_DIR/..
# Enter main directory
cd $SCRIPT_DIR/
cd ..
cd $ROOT_DIR/
cd java_indexer
+70
View File
@@ -0,0 +1,70 @@
#!/bin/bash
# Determine current platform
PLATFORM='unknown'
if [ "$(uname)" == "Darwin" ]; then
PLATFORM='osx'
elif [ "$(expr substr $(uname -s) 1 5)" == "Linux" ]; then
PLATFORM='linux'
elif [ "$(expr substr $(uname -s) 1 10)" == "MINGW32_NT" ]; then
PLATFORM='windows'
elif [ "$(expr substr $(uname -s) 1 10)" == "MINGW64_NT" ]; then
PLATFORM='windows'
elif [ "$OSTYPE" == "msys" ]; then
PLATFORM='windows'
fi
INPUT_DIR="submodules/SourcetrailPythonIndexer"
OUTPUT_DIR="bin/app/data/python/indexer"
ABORT="\033[31mAbort:\033[00m"
SUCCESS="\033[32mSuccess:\033[00m"
INFO="\033[33mInfo:\033[00m"
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
SCRIPT_DIR="$( cd "$( dirname "$0" )" && pwd )"
fi
echo "This script is running in: $SCRIPT_DIR"
# Enter main directory
cd $SCRIPT_DIR/
cd ..
echo "create $OUTPUT_DIR"
if [ $PLATFORM == "windows" ]; then
mkdir "$OUTPUT_DIR"
dir
mkdir bin
cd bin
mkdir app
cd app
mkdir data
cd data
mkdir python
cd python
dir
mkdir indexer
cd ../../../../
else
mkdir -p $OUTPUT_DIR
fi
echo "Copy python indexer files to $OUTPUT_DIR"
cp $INPUT_DIR/_version.py $OUTPUT_DIR
cp $INPUT_DIR/run.py $OUTPUT_DIR
cp $INPUT_DIR/indexer.py $OUTPUT_DIR
cp $INPUT_DIR/shallow_indexer.py $OUTPUT_DIR
echo "Done updating Python indexer"
+11 -2
View File
@@ -1,7 +1,16 @@
#!/bin/sh
# Get the current directory in canonical form (resolve all the symlinks, if present)
SOURCETRAIL_PATH="$(dirname "$(readlink -f "$0")")"
# 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 )"
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 Building the Sourcetrail VS Solution
echo -e $INFO Builing 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 committing to a publish branch
# testing before commiting 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 "Committing to master is prohibited."
echo -e $ABORT "Commiting 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 don't delete the master"
echo -e $FAIL "seriously dont delete the master"
exit 1
else
echo "delete remote branch $remote_ref"
+2 -7
View File
@@ -93,11 +93,6 @@ 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)
@@ -207,8 +202,8 @@ int main(int argc, char* argv[])
ApplicationSettingsPrefiller::prefillPaths(ApplicationSettings::getInstance().get());
addLanguagePackages();
utility::loadFontsFromDirectory(ResourcePaths::getFontsDirectoryPath(), L".otf");
utility::loadFontsFromDirectory(ResourcePaths::getFontsDirectoryPath(), L".ttf");
utility::loadFontsFromDirectory(ResourcePaths::getFontsPath(), L".otf");
utility::loadFontsFromDirectory(ResourcePaths::getFontsPath(), L".ttf");
if (commandLineParser.hasError())
{
+5 -5
View File
@@ -74,8 +74,8 @@ int main(int argc, char* argv[])
logFilePath = argv[5];
}
AppPath::setSharedDataDirectoryPath(FilePath(appPath));
UserPaths::setUserDataDirectoryPath(FilePath(userDataPath));
AppPath::setSharedDataPath(FilePath(appPath));
UserPaths::setUserDataPath(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::getAppSettingsFilePath()));
appSettings->load(FilePath(UserPaths::getAppSettingsPath()));
LogManager::getInstance()->setLoggingEnabled(appSettings->getLoggingEnabled());
LOG_INFO(L"sharedDataPath: " + AppPath::getSharedDataDirectoryPath().wstr());
LOG_INFO(L"userDataPath: " + UserPaths::getUserDataDirectoryPath().wstr());
LOG_INFO(L"sharedDataPath: " + AppPath::getSharedDataPath().wstr());
LOG_INFO(L"userDataPath: " + UserPaths::getUserDataPath().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::getAppSettingsFilePath().wstr()).dispatch();
MessageStatus(L"Load settings: " + UserPaths::getAppSettingsPath().wstr()).dispatch();
std::shared_ptr<ApplicationSettings> settings = ApplicationSettings::getInstance();
settings->load(UserPaths::getAppSettingsFilePath());
settings->load(UserPaths::getAppSettingsPath());
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::getAppSettingsFilePath());
appSettings->save(UserPaths::getAppSettingsPath());
m_mainView->updateRecentProjectMenu();
}
+17 -19
View File
@@ -1,45 +1,43 @@
#include "AppPath.h"
#include "utilityApp.h"
FilePath AppPath::m_sharedDataPath(L"");
FilePath AppPath::m_cxxIndexerPath(L"");
FilePath AppPath::s_sharedDataDirectoryPath(L"");
FilePath AppPath::s_cxxIndexerDirectoryPath(L"");
FilePath AppPath::getSharedDataDirectoryPath()
FilePath AppPath::getSharedDataPath()
{
return s_sharedDataDirectoryPath;
return m_sharedDataPath;
}
bool AppPath::setSharedDataDirectoryPath(const FilePath& path)
bool AppPath::setSharedDataPath(const FilePath& path)
{
if (!path.empty())
{
s_sharedDataDirectoryPath = path;
m_sharedDataPath = path;
return true;
}
return false;
}
FilePath AppPath::getCxxIndexerFilePath()
FilePath AppPath::getCxxIndexerPath()
{
std::wstring cxxIndexerName(L"sourcetrail_indexer");
if (utility::getOsType() == OS_WINDOWS)
{
cxxIndexerName = L"sourcetrail_indexer.exe";
}
#if _WIN32
const std::wstring cxxIndexerName(L"sourcetrail_indexer.exe");
#else
const std::wstring cxxIndexerName(L"sourcetrail_indexer");
#endif
if (!s_cxxIndexerDirectoryPath.empty())
if (!m_cxxIndexerPath.empty())
{
return s_cxxIndexerDirectoryPath.getConcatenated(cxxIndexerName);
return m_cxxIndexerPath.getConcatenated(cxxIndexerName);
}
return s_sharedDataDirectoryPath.getConcatenated(cxxIndexerName);
return m_sharedDataPath.getConcatenated(cxxIndexerName);
}
bool AppPath::setCxxIndexerDirectoryPath(const FilePath& path)
bool AppPath::setCxxIndexerPath(const FilePath& path)
{
if (!path.empty())
{
s_cxxIndexerDirectoryPath = path;
m_cxxIndexerPath = path;
return true;
}
return false;
+6 -6
View File
@@ -6,15 +6,15 @@
class AppPath
{
public:
static FilePath getSharedDataDirectoryPath();
static bool setSharedDataDirectoryPath(const FilePath& path);
static FilePath getSharedDataPath();
static bool setSharedDataPath(const FilePath& path);
static FilePath getCxxIndexerFilePath();
static bool setCxxIndexerDirectoryPath(const FilePath& path);
static FilePath getCxxIndexerPath();
static bool setCxxIndexerPath(const FilePath& path);
private:
static FilePath s_sharedDataDirectoryPath;
static FilePath s_cxxIndexerDirectoryPath;
static FilePath m_sharedDataPath;
static FilePath m_cxxIndexerPath;
};
#endif // APP_PATH_H
+27 -27
View File
@@ -1,58 +1,58 @@
#include "ResourcePaths.h"
#include "AppPath.h"
#include "utilityApp.h"
FilePath ResourcePaths::getColorSchemesDirectoryPath()
FilePath ResourcePaths::getColorSchemesPath()
{
return AppPath::getSharedDataDirectoryPath().concatenate(L"data/color_schemes/");
return AppPath::getSharedDataPath().concatenate(L"data/color_schemes/");
}
FilePath ResourcePaths::getSyntaxHighlightingRulesDirectoryPath()
FilePath ResourcePaths::getSyntaxHighlightingRulesPath()
{
return AppPath::getSharedDataDirectoryPath().concatenate(L"data/syntax_highlighting_rules/");
return AppPath::getSharedDataPath().concatenate(L"data/syntax_highlighting_rules/");
}
FilePath ResourcePaths::getFallbackDirectoryPath()
FilePath ResourcePaths::getFallbackPath()
{
return AppPath::getSharedDataDirectoryPath().concatenate(L"data/fallback/");
return AppPath::getSharedDataPath().concatenate(L"data/fallback/");
}
FilePath ResourcePaths::getFontsDirectoryPath()
FilePath ResourcePaths::getFontsPath()
{
return AppPath::getSharedDataDirectoryPath().concatenate(L"data/fonts/");
return AppPath::getSharedDataPath().concatenate(L"data/fonts/");
}
FilePath ResourcePaths::getGuiDirectoryPath()
FilePath ResourcePaths::getGuiPath()
{
return AppPath::getSharedDataDirectoryPath().concatenate(L"data/gui/");
return AppPath::getSharedDataPath().concatenate(L"data/gui/");
}
FilePath ResourcePaths::getLicenseDirectoryPath()
FilePath ResourcePaths::getLicensePath()
{
return AppPath::getSharedDataDirectoryPath().concatenate(L"data/license/");
return AppPath::getSharedDataPath().concatenate(L"data/license/");
}
FilePath ResourcePaths::getJavaDirectoryPath()
FilePath ResourcePaths::getJavaPath()
{
return AppPath::getSharedDataDirectoryPath().concatenate(L"data/java/");
return AppPath::getSharedDataPath().concatenate(L"data/java/");
}
FilePath ResourcePaths::getPythonDirectoryPath()
FilePath ResourcePaths::getPythonEnvironmentFilePath()
{
return AppPath::getSharedDataDirectoryPath().concatenate(L"data/python/");
}
FilePath ResourcePaths::getCxxCompilerHeaderDirectoryPath()
{
return AppPath::getSharedDataDirectoryPath().concatenate(L"data/cxx/include/").getCanonical();
return ResourcePaths::getPythonPath().concatenate(L"environment/Scripts/python");
}
FilePath ResourcePaths::getPythonIndexerFilePath()
{
if (utility::getOsType() == OS_WINDOWS)
{
return getPythonDirectoryPath().concatenate(L"SourcetrailPythonIndexer.exe");
}
return getPythonDirectoryPath().concatenate(L"SourcetrailPythonIndexer");
return ResourcePaths::getPythonPath().concatenate(L"indexer/run.py");
}
FilePath ResourcePaths::getCxxCompilerHeaderPath()
{
return AppPath::getSharedDataPath().concatenate(L"data/cxx/include/").getCanonical();
}
FilePath ResourcePaths::getPythonPath()
{
return AppPath::getSharedDataPath().concatenate(L"data/python/");
}
+12 -9
View File
@@ -8,16 +8,19 @@
class ResourcePaths
{
public:
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 getColorSchemesPath();
static FilePath getSyntaxHighlightingRulesPath();
static FilePath getFallbackPath();
static FilePath getFontsPath();
static FilePath getGuiPath();
static FilePath getLicensePath();
static FilePath getJavaPath();
static FilePath getPythonEnvironmentFilePath();
static FilePath getPythonIndexerFilePath();
static FilePath getCxxCompilerHeaderPath();
private:
static FilePath getPythonPath();
};
#endif // RESOURCE_PATHS_H
+11 -11
View File
@@ -1,28 +1,28 @@
#include "UserPaths.h"
FilePath UserPaths::s_userDataDirectoryPath;
FilePath UserPaths::s_userDataPath;
FilePath UserPaths::getUserDataDirectoryPath()
FilePath UserPaths::getUserDataPath()
{
return s_userDataDirectoryPath;
return s_userDataPath;
}
void UserPaths::setUserDataDirectoryPath(const FilePath& path)
void UserPaths::setUserDataPath(const FilePath& path)
{
s_userDataDirectoryPath = path;
s_userDataPath = path;
}
FilePath UserPaths::getAppSettingsFilePath()
FilePath UserPaths::getAppSettingsPath()
{
return getUserDataDirectoryPath().concatenate(L"ApplicationSettings.xml");
return getUserDataPath().concatenate(L"ApplicationSettings.xml");
}
FilePath UserPaths::getWindowSettingsFilePath()
FilePath UserPaths::getWindowSettingsPath()
{
return getUserDataDirectoryPath().concatenate(L"window_settings.ini");
return getUserDataPath().concatenate(L"window_settings.ini");
}
FilePath UserPaths::getLogDirectoryPath()
FilePath UserPaths::getLogPath()
{
return getUserDataDirectoryPath().concatenate(L"log/");
return getUserDataPath().concatenate(L"log/");
}
+6 -6
View File
@@ -8,15 +8,15 @@
class UserPaths
{
public:
static FilePath getUserDataDirectoryPath();
static void setUserDataDirectoryPath(const FilePath& path);
static FilePath getUserDataPath();
static void setUserDataPath(const FilePath& path);
static FilePath getAppSettingsFilePath();
static FilePath getWindowSettingsFilePath();
static FilePath getLogDirectoryPath();
static FilePath getAppSettingsPath();
static FilePath getWindowSettingsPath();
static FilePath getLogPath();
private:
static FilePath s_userDataDirectoryPath;
static FilePath s_userDataPath;
};
#endif // USER_PATHS_H
@@ -16,7 +16,7 @@
#include "utility.h"
#include "utilityString.h"
const std::wstring BookmarkController::s_edgeSeparatorToken = L" => ";
const std::wstring BookmarkController::s_edgeSeperatorToken = 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_edgeSeparatorToken + targetDisplayName);
activeEdgeDisplayNames.push_back(sourceDisplayName + s_edgeSeperatorToken + targetDisplayName);
}
return activeEdgeDisplayNames;
}
@@ -120,7 +120,7 @@ private:
void update();
static const std::wstring s_edgeSeparatorToken;
static const std::wstring s_edgeSeperatorToken;
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) // overlapping
else if (oldSnippet.startLineNumber < start || oldSnippet.endLineNumber > end) // overlaping
{
newSnippet = CodeSnippetParams::merge(newSnippet, oldSnippet);
}

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