@@ -48,7 +48,7 @@ default = ["max-performance-safe", "comfort", "basic", "extras"]
48
48
# ! Bundles are for convenience only and bear no further meaning beyond the cargo manifest file.
49
49
50
50
# # More fundamental components that most will be able to make good use of.
51
- basic = [" blob-diff" , " revision" ]
51
+ basic = [" blob-diff" , " revision" , " index " ]
52
52
53
53
# # Various additional features and capabilities that are not necessarily part of what most users would need.
54
54
extras = [" worktree-stream" , " worktree-archive" , " revparse-regex" , " mailmap" , " excludes" , " attributes" , " worktree-mutation" , " credentials" ]
@@ -61,6 +61,9 @@ comfort = ["gix-features/progress-unit-bytes", "gix-features/progress-unit-human
61
61
# ! A component is a distinct feature which may be comprised of one or more methods around a particular topic.
62
62
# ! Providers of libraries should only activate the components they need.
63
63
64
+ # # Access to `.git/index` files.
65
+ index = [" dep:gix-index" ]
66
+
64
67
# # Access to credential helpers, which provide credentials for URLs.
65
68
# Note that `gix-negotiate` just piggibacks here, as 'credentials' is equivalent to 'fetch & push' right now.
66
69
credentials = [" dep:gix-credentials" , " dep:gix-prompt" , " dep:gix-negotiate" ]
@@ -69,7 +72,7 @@ credentials = ["dep:gix-credentials", "dep:gix-prompt", "dep:gix-negotiate"]
69
72
worktree-mutation = [" attributes" , " dep:gix-worktree-state" ]
70
73
71
74
# # Retrieve a worktree stack for querying exclude information
72
- excludes = [" dep:gix-ignore" , " dep:gix-worktree" ]
75
+ excludes = [" dep:gix-ignore" , " dep:gix-worktree" , " index " ]
73
76
74
77
# # Query attributes and excludes. Enables access to pathspecs, worktree checkouts, filter-pipelines and submodules.
75
78
attributes = [" excludes" , " dep:gix-filter" , " dep:gix-pathspec" , " dep:gix-attributes" , " dep:gix-submodule" , " gix-worktree?/attributes" ]
@@ -78,7 +81,7 @@ attributes = ["excludes", "dep:gix-filter", "dep:gix-pathspec", "dep:gix-attribu
78
81
mailmap = [" dep:gix-mailmap" ]
79
82
80
83
# # Make revspec parsing possible, as well describing revision.
81
- revision = [" gix-revision/describe" ]
84
+ revision = [" gix-revision/describe" , " index " ]
82
85
83
86
# # If enabled, revspecs now support the regex syntax like `@^{/^.*x}`. Otherwise, only substring search is supported.
84
87
# # This feature does increase compile time for niche-benefit, but is required for fully git-compatible revspec parsing.
@@ -165,7 +168,7 @@ serde = [ "dep:serde",
165
168
" gix-transport?/serde" ,
166
169
" gix-ref/serde" ,
167
170
" gix-odb/serde" ,
168
- " gix-index/serde" ,
171
+ " gix-index? /serde" ,
169
172
" gix-mailmap?/serde" ,
170
173
" gix-url/serde" ,
171
174
" gix-attributes?/serde" ,
@@ -218,7 +221,7 @@ gix-trace = { version = "^0.1.3", path = "../gix-trace" }
218
221
gix-glob = { version = " ^0.11.0" , path = " ../gix-glob" }
219
222
gix-credentials = { version = " ^0.18.0" , path = " ../gix-credentials" , optional = true }
220
223
gix-prompt = { version = " ^0.6.0" , path = " ../gix-prompt" , optional = true }
221
- gix-index = { version = " ^0.23.1" , path = " ../gix-index" }
224
+ gix-index = { version = " ^0.23.1" , path = " ../gix-index" , optional = true }
222
225
gix-attributes = { version = " ^0.17.0" , path = " ../gix-attributes" , optional = true }
223
226
gix-ignore = { version = " ^0.6.0" , path = " ../gix-ignore" , optional = true }
224
227
gix-worktree = { version = " ^0.25.0" , path = " ../gix-worktree" , optional = true , default-features = false }
0 commit comments