Welcome to the Subversion Repository Search Engine (SupoSE)¶
Overview¶
This is a Java based approach to do real searching within a complete Subversion repository. Based on performance issues and so on, I have decided not to do a real time scanning within the Repository. I have decided to do a scanning of the whole content of a Subversion repository. The result, called index can be used to do real searching. An other purpose of this approach is to be able to search through multiple repositories instead of one.
With the exception of binary files where no particular document handler exists, all files will be indexed. This means we do index Word, Excel and Powerpoint files (2007 Office variants as well).
This means we do not index only the trunk or the HEAD revision, we index all revisions on all paths within a whole Repository. Filename, path, log message, properties etc. are made searchable (see Fields for further details).
If you think for what you can search take a look at
the questions you never tried to ask your repository
Features / Usage¶
You can find a detailed description of the features etc. in the users guide.
Plan¶
Planned Features / Implemented features:Scan a whole repositorySearchable contents over all revisions not only on trunk etc.- Searchable document types:
- Source code (of course) (things like
Java, C, C++, PHP, Perl, Python code etc.)- May be we can do some statistics during the scan (e.g. LOC).
- It might be useful to do special scanning of source code files to extract
information like method names, class names etc.
- XML
- Microsoft Office files (
Word, Excel, Power Point, may be Access databases) OpenOfficefiles
- Source code (of course) (things like
Support of multiple RepositoriesCron like automation to scan repositories.- Configuration
- Configuration svn+ssh and https connections
- Create a Web based front end for querying the engine.
- The results should make links (revision, document, path) to the real repository
- Considering the permissions of a repository during search requests
- May be we would do, I'm not sure if this really needed. Suggestions are appreciated.
Extract the information from (jar, zip, tar.gz files)
An overview about the release plan and the currently existing can be found here.
Source Code¶
The requirements describe what is needed to build SupoSE from source code.
If you like to checkout the current state of development you can simply check the Subversion Repository
License¶
The source code and the application which i have written is licensed under the The GNU General Public License Version 2. Other parts of the application in particular the 3rd party libraries have different licenses.
Download¶
In the Download Area you find all current releases of the project.
Archive¶
In the archive you can find older releases if you like to take a look into.
Builds¶
Currently a nightly build can give you an up-to-date release before real delivery date.
Information about the changes which had been made can be seen at the bulletin board.
An overview about the releases can be found in the Release Notes.
Release Management¶
The release management is described on the ReleaseManagement page in detail.
Authentication¶
If you have any problems during a scan with the authentication you can use the following java settings:-Dsvnkit.http.methods=Basic,Digest,NTLMA detailed explanation can be found here.
Searching / Scanning¶
The searching and scanning of repositories is currently done by a command line interface (at the moment). The description
of the Command Line describe what you can do and which options are available. You can of course use
Luke too. Or take a look at the command line examples. For a detailed
description of the queries and features take a look at the users guide.
Requirements / Questions / Bugs¶
If you like to post feature requests, questions, suggestions, bugs or anything about SupoSE please use the ticket system to check if the bug might have been reported already or you if you like to report a new one just use the new issue area
or just write an email to me.
It would be nice if you give an email address so i can get in contact with to ask question etc.