Notable changes:
- C++ indexer:
--ignore_unimplemented
now defaults totrue
.
Notable additions:
write_tables
: produce serving data for xrefs.CrossReferences methodwrite_tables
: add flags to tweak performance--compress_shards
: determines whether intermediate data written to disk should be compressed--max_shard_size
: maximum number of elements (edges, decoration fragments, etc.) to keep in-memory before flushing an intermediary data shard to disk--shard_io_buffer
: size of the reading/writing buffers for the intermediary data shards
Notable changes:
- Denormalize the serving table format
- xrefs.Decorations: only return Reference targets in DecorationsReply.Nodes
- Use proto3 JSON mapping for web requests: https://developers.google.com/protocol-buffers/docs/proto3#json
- Java indexer: report error when indexing from compilation's source root
- Consistently use corpus root relative paths in filetree API
- Java, C++ indexer: ensure file node VNames to be schema compliant
- Schema: File nodes should no longer have the
language
VName field set
Notable additions:
- Java indexer: emit (possibly multi-line) snippets over entire surrounding statement
- Java indexer: emit class node for static imports
Notable fixes:
- Java extractor: correctly parse @file arguments using javac CommandLine parser
- Java extractor: correctly parse/load -processor classes
- xrefs.Edges: correctly return empty page_token on last page (when filtering by edge kinds)
Notable changes:
- Java 8 is required for the Java extractor/indexer
Notable fixes:
write_tables
: don't crash when given a node without any edges- Java extractor: ensure output directory exists before writing kindex
Notable fixes:
- Bazel Java extractor: filter out Bazel-specific flags
- Java extractor/indexer: filter all unsupported options before yielding to the compiler
Notable additions:
- Java indexer: add
ref/doc
anchors for simple class references in JavaDoc - Java indexer: emit JavaDoc comments more consistently; emit enum documentation
Notable changes:
- C++ indexer: rename
/kythe/edge/defines
to/kythe/edge/defines/binding
- Java extractor: change failure to warning on detection of non-java sources
- Java indexer:
defines
anchors span an entire class/method/var definition (instead of just their identifier; see below fordefines/binding
anchors) - Add public protocol buffer API/message definitions
Notable additions:
- Java indexer:
ref
anchors span import packages - Java indexer:
defines/binding
anchors span a definition's identifier (identical behavior to previousdefines
anchors) http_server
: add--http_allow_origin
flag that adds theAccess-Control-Allow-Origin
header to each HTTP response
Notable additions:
- Java indexer: name node support for array types, builtins, files, and generics
Notable fixes:
- Java indexer: stop an exception from being thrown when a line contains multiple comments
Notable additions:
http_server
: support TLS HTTP2 server interface- Java indexer: broader
name
node coverage - Java indexer: add anchors for method/field/class definition comments
write_table
: add--max_edge_page_size
flag to control the sizes of each PagedEdgeSet and EdgePage written to the output table
Notable fixes:
entrystream
: prevent panic when given--entrysets
flag
Notable changes:
- xrefs.Decorations: nodes will not be populated unless given a fact filter
- xrefs.Decorations: each reference has its associated anchor start/end byte offsets
- Schema: loosened restrictions on VNames to permit hashing
Notable additions:
- dedup_stream: add
--cache_size
flag to limit memory usage - C++ indexer: hash VNames whenever permitted to reduce output size
Notable fixes:
- write_tables: avoid deadlock in case of errors
Notable additions:
- Java extractor: add JavaDetails to each CompilationUnit
- Release the indexer verifier tool (see http://www.kythe.io/docs/kythe-verifier.html)
Notable fixes:
- write_tables: ensure that all edges are scanned for FileDecorations
- kythe refs command: normalize locations within dirty buffer, if given one
Notable changes:
- Dependencies: updated minimum LLVM revision. Run tools/modules/update.sh.
- C++ indexer: index definitions and references to member variables.
- kwazthis: replace
--ignore_local_repo
behavior with--local_repo=NONE
Notable additions:
- kwazthis: if found, automatically send local file as
--dirty_buffer
- kwazthis: return
/kythe/edge/typed
target ticket for each node
Notable additions:
- kwazthis: allow
--line
and--column
info in place of a byte--offset
- kwazthis: the
--api
flag can now handle a local path to a serving table
Notable fixes:
- Java indexer: don't generate anchors for implicit constructors
Notable additions:
- Bazel
extra_action
extractors for C++ and Java - Implementation of DecorationsRequest.dirty_buffer in xrefs serving table
Notable changes:
kythe
tool: merge--serving_table
flag into--api
flag
Notable fixes:
- Allow empty requests in
http_server
's/corpusRoots
handler - Java extractor: correctly handle symlinks in KYTHE_ROOT_DIRECTORY
Notable changes:
- Go binaries no longer require shared libraries for libsnappy or libleveldb
- kythe tool:
--log_requests
global flag - Java indexer:
--print_statistics
flag
Notable changes:
- optimized binaries
- more useful CLI
--help
messages - remove sqlite3 GraphStore support
- kwazthis: list known definition locations for each node
- Java indexer: emit actual nodes for JDK classes
Initial release