Commit Graph
67 Commits
Author SHA1 Message Date
Eberhard Graether f9e4afda77 logic: Added indexing mode to reindex incomplete files (issue #493, #496)
* added radio buttons to start indexing dialog
* don't block task scheduler thread while start indexing dialog is visible
* don't force whole project refresh on settings change
* added help button to start indexing dialog explaining indexing modes
* disable unavailable modes when project needs full refresh
* improved label texts on indexing dialogs
* added --incomplete flag to index command of commandline API
* fixed deletion of window stack elements
2017-12-03 22:30:09 +01:00
mlangkabel 952ea1651f src: renamed recording methods 2017-11-19 13:44:10 +01:00
mlangkabel 634601b4b6 logic: fixed crash when specifying an unknown text encoding in appsettings
* also: updated jar dependencies
2017-11-17 13:03:05 +01:00
Eberhard Graether ead9f9a634 logic: Allow duplicate indexing of source files if the indexer command is different 2017-11-09 17:24:28 +01:00
Eberhard Graether a2d412ccfa logic: add contained symlinked directories to indexed and excluded paths 2017-11-07 13:43:50 +01:00
mlangkabel 6fad9eea84 logic: added all previous java version to Java language standard selection 2017-11-06 18:49:29 +01:00
mlangkabel 8dbfa61234 logic: minor gradle project setup fix 2017-10-31 17:12:37 +01:00
mlangkabel 0d993011d8 data: updated eclipse dependencies for java indexing
* updated java indexer to use org.eclipse.jdt.core version 3.13.0.
* added test that checks if all jar dependencies can be found.
2017-10-18 14:52:14 +02:00
Eberhard Graether a7363b329b logic: Use sizeof(SharedMemory::String) in shared memory size estimation instead of std::string (issue #471) 2017-10-13 12:26:45 +02:00
mlangkabel cf984ca245 logic: name qualifiers of symbols are clickable now 2017-10-11 11:08:01 +02:00
mlangkabel 798944ff38 ui: implemented showing gradle errors in UI 2017-10-03 16:19:07 +02:00
mlangkabel e604d24c40 logic: added Gradle project setup (issue #379)
* added implementation for Gradle project setup (icon is still missing)
* refactored project loading/saving and SourceGroupSettings
* removed long deprecated Cxx UseSourcePathsForHeaderSearch option

fortune cookie message = There is true and sincere friendship between you and your friends.
2017-10-02 18:43:59 +02:00
mlangkabel 5c614c77e2 src: moved Java indexer from JavaSymbolSolver to Eclipse JDT
* added some more tests
* changed 3rd party licenses respectively

fortune cookie message = Your present plans are going to succeed.
2017-09-07 12:40:34 +02:00
mlangkabel 64efa00054 logic: improved Maven timeout policy (issue #449)
* only timeout if Maven did not generate output during the last 60 seconds
2017-08-29 14:15:11 +02:00
malte_langkabel 70997adc9c logic: greatly improved Java indexing performance
* about 120% faster now
* also fixed minor synchronization issues
2017-08-17 13:28:00 +02:00
Andreas Stallinger 37ead804bf src: clazy compiler warnings
get rid of most clazy warnings (https://github.com/KDE/clazy)
* range loop use refs
* qcolor ctor with ints
* missing Q_OBJECT macro
* use .constfirst instead of .first

enabled ccache for unix systems for fasterr recompiling
* if ccache is in path we use it now
2017-08-10 09:45:55 +02:00
Eberhard Graether 2e375112e6 data: Save command line info for CXX indexer commands to errors and show within errors table (issue #351)
bug id = 351
2017-08-09 12:16:16 +02:00
Eberhard Graether 2305a74e6c logic: Added cross-compilation UI to CXX source group setup (issue #370)
Allows for defining specific target triple of architecture, vendor, OS and environment as set of dropdown lists
in CXX source group setup.

bug id = 370
2017-08-08 16:00:32 +02:00
malte_langkabel 2d6d554cb1 logic: implemented interrupting AST visiting of Java indexer
* also reverting names of unsolved symbols and unsolved types
2017-08-07 16:02:06 +02:00
malte_langkabel 0a1fdee998 logic: add lots of Java indexing fixes
* update JavaSymbolSolver to version 0.6.0
* moved to Javaparser 3.3.0
* fixed solving type parameter names in symbols solved in jar files
* implemented ignoring name contexts in javassist and jre based method signatures to break infinite recursion
2017-08-04 13:40:56 +02:00
Eberhard Graether d80b1fc848 logic: removed preprocessor only option when indexing CXX source groups 2017-08-03 16:54:41 +02:00
malte_langkabel 2e117c4b6d build: switch to Maven configuration for JavaIndexer 2017-07-27 13:16:57 +02:00
malte_langkabel 3f19a0393a logic: fix issue where Maven project did not show any source files (issue #428)
* fixed extraction of generated effective-pom from command line output
2017-07-26 14:41:15 +02:00
malte_langkabel 9bcde198a5 logic: add auto-detection for JRE System Library
* fixed error columns are not saved to database correctly
* implemented setting JRE System Library paths in app settings
* added detector for JRE System Library that not use Java Runtime specified in AppSettings but detects JRE on its own by reusing the JavaPathDetector.
* added option to use JRE System Library in JavaSourceGroup
2017-07-10 18:12:52 +02:00
malte_langkabel 8370caf705 logic: add logging for jars used by maven project setup 2017-06-28 11:55:23 +02:00
Andreas Stallinger 68affaa4bc fix: fix putenv in utilityMaven
* include cstdlib
* const cast to char*
2017-06-27 12:32:57 +02:00
Andreas Stallinger ea047cde78 Update utilityMaven.cpp 2017-06-27 10:17:51 +00:00
malte_langkabel 5d35455492 logic: Maven fixes regarding JAVA_HOME variable (issue #405)
* setting value for JAVA_HOME variable automatically before executing Maven if not found in system environment.
* show error dialog when maven encounters an error while fetching source directories from pom
* added logging when fetching maven source directories from pom
2017-06-27 11:41:44 +02:00
malte_langkabel e6c5ffa97a logic: apply some shared memory fixes
* corrections in estimating size of intermediate indexer commands
* avoided clearing and refilling the indexed files list every time files get added
* changed memory growth policy of InterprocessIndexingStatusManager to double allocated memory when it gets full
* added potential to grow memory when adding crashed file paths
2017-06-19 16:24:01 +02:00
Eberhard Graether f760b873b4 logic: Fixed source files indexed multiple times when in multiple source groups 2017-05-30 12:17:18 +02:00
Eberhard Graether 9256618f7c ui: Extended project setup to support creation and editing of Source Groups (issue #230)
* Turned QtProjectWizzard into window for Source Group ui
* Clicking into FilePicker when empty will open dialog right away
* Fixed environment variable use throughout all Source Group path values
* Moved Preferences to QtPreferencesWindow

bug id = 230

fortune cookie message = Zwischen dir und deinen Freunden besteht echte Freundschaft.
2017-05-29 17:08:28 +02:00
malte_langkabel 6cb2119cce src: remove unused includes 2017-05-17 12:10:22 +02:00
malte_langkabel 4d140e396a src: add IndexerCommandType that will be used instead of string 2017-05-16 15:29:46 +02:00
malte_langkabel c551c9a1dd logic: add name delimiter to NameHierarchy
* NameHierarchy now looks like this: <delimiter>\tm<all the rest>
* made new baseclasses for SettingsMigration and SettingsMigrator
* Use the migration system for SqliteBookmarkStorage as well
2017-05-16 13:08:12 +02:00
malte_langkabel 40157039b4 src: use FilePath in FileSystem::getFileNamesFromDirectory 2017-05-11 16:30:14 +02:00
malte_langkabel 8a92453d60 logic: fix update of Java indexer to new version of Java dependencies
* reapplied previous reverts
* added cache for TypeSolvers in Java code
2017-05-10 17:54:21 +02:00
Eberhard Graether bb8c2ae5a9 data: Set correct name delimiter per language in parsers 2017-05-09 16:25:58 +02:00
Eberhard Graether 14fa67b909 logic: Limit multi process indexing to projects with C/C++ source groups 2017-05-08 14:45:37 +02:00
Eberhard Graether ad1a48bce4 Revert "logic: update java indexer to new version of Java dependencies"
This reverts commit da2b44bd25.
2017-05-08 14:17:22 +02:00
malte_langkabel da2b44bd25 logic: update java indexer to new version of Java dependencies
* JavaSymbolSolver: Commit fac13d99
* JavaParser: Tag 3.2.0
2017-05-04 17:06:28 +02:00
Eberhard Graether 706119ebcc data: indexer processes
* TaskBuildIndex starts seperate indexer processes and communicates via shared memory
* indexer processes get restarted if they fail
* indexer processes are killed when the app closes or crashes
* added utility class SharedMemory to allocate and access shared memory, providing basic data structures
* added SharedMemoryGarbageCollector for keeping track of running instances and cleaning up shared memory in case of a crash
* show errors for source files that crashed during indexing
* added basic exception handling to task scheduling
* added option to turn off processes and use threads in preferences, but still use shared memory

fortune cookie message = Good news from someone dear is coming soon.
2017-05-04 15:50:59 +02:00
malte_langkabel 054b8fab17 logic: reduce access to filesystem while indexing
* use canonical filepath cache in cxx indexer
* made constructors of FilePath explicit
* use FilePath at more places instead of string
* forward declares FilePath wherever possible
2017-05-04 10:55:16 +02:00
Eberhard Graether 9d718d6a87 logic: Show unknown progress dialog when refreshing (issue 341)
* refactored dialog handling
* Application always provides a DialogView instance

bug id = 341
2017-04-19 13:04:46 +02:00
Eberhard Graether 63087913bd data: Option to run only C/C++ preprocessor when indexing (issue 297)
* Added as checkbox to indexing start dialog
* Only shown for C/C++ projects
* Files will be marked incomplete
2017-04-18 22:11:20 +02:00
Eberhard Graether 8dc5ac7cbe data: stop indexing of files with fatal errors and store them as incomplete (issue 358)
* avoid AST traversial for CXX translation units with fatal errors
* save all files within those translation units as incomplete
* show number of complete files in finished indexing dialog and overview stats
* display incomplete files hatched in graph view
* display incomplete file titles hatched in code view
* mention file incompleteness in tooltips
* removed derived Indexer classes and set ParserType via template parameter instead
* moved getSourceFileFromCDB from IndexerCxxCdb to IndexerCommandCxxCdb

bug id = 358
2017-04-15 01:02:09 +02:00
malte_langkabel 6e342fa87c logic: terminating all running tasks before closing the application (issue #343) 2017-04-12 10:46:56 +02:00
Andreas Stallinger 045a259b2e build: renaming to sourcetrail 2017-04-07 13:19:09 +02:00
malte_langkabel 9947e83846 logic: allow usage of blank spaces in maven path 2017-04-03 10:10:16 +02:00
malte_langkabel 7b30ac18de logic: source groups for project settings
* project can not have multiple source groups with different types
* language of a project is now inferred from source groups
* setting global NameHierarchy delimiter of first sourceGroup in project
* added project settings migrations for source groups
* Add Settings Migration classes (MoveKey, DeleteKey, Lambda)
* Update sample projects with migrations
* added method to config to retrieve sublevel key names
* implemented recursive removing of keys in settings
* moved project files out of top level
* removed solution parsing code as it is not used anymore

fortune cookie message = The secret of getting ahead is getting started.
2017-03-31 16:11:37 +02:00
Andreas Stallinger c8404aa83d fix: no dialogs in headless mode 2017-03-14 18:22:46 +01:00