Repository navigation
Commit 28494bc
authored
Refactor: Standardize
This pull request introduces a new `GetPackagesOptions` interface to
support additional options (such as cache bypassing) when retrieving
Python packages from a given environment. It updates the relevant APIs,
interfaces, and implementations to accept this new options parameter,
and refactors the pip package manager logic to support cache skipping
and code simplification. The changes are applied consistently across the
main codebase and sample/example files.
**API and Interface Enhancements:**
* Added a new `GetPackagesOptions` interface, allowing callers to
specify options (currently `skipCache`) when retrieving packages. This
is now accepted by `getPackages` methods in `PackageManager` and
`PythonPackageGetterApi` interfaces.
[[1]](diffhunk://#diff-76f83d8de3cb4a7f1a0369f39eee530dc18986c8cabbb2bfb40ccc4bf1baad8eR680-R683)
[[2]](diffhunk://#diff-76f83d8de3cb4a7f1a0369f39eee530dc18986c8cabbb2bfb40ccc4bf1baad8eR798-R808)
[[3]](diffhunk://#diff-76f83d8de3cb4a7f1a0369f39eee530dc18986c8cabbb2bfb40ccc4bf1baad8eR1040-R1043)
[[4]](diffhunk://#diff-d5d7aa293bc97d0d8070d1d44893b3ba0c028df6025dd573772ed7bbf5bdd528R614-R617)
[[5]](diffhunk://#diff-d5d7aa293bc97d0d8070d1d44893b3ba0c028df6025dd573772ed7bbf5bdd528R718-R728)
[[6]](diffhunk://#diff-769911c416ccf8514d8fd941ae0abe8fb5c606ade0c218e22151a5f5f9f3d700R674-R677)
[[7]](diffhunk://#diff-769911c416ccf8514d8fd941ae0abe8fb5c606ade0c218e22151a5f5f9f3d700R792-R802)
[[8]](diffhunk://#diff-769911c416ccf8514d8fd941ae0abe8fb5c606ade0c218e22151a5f5f9f3d700R1034-R1037)
* Updated all usages and implementations of `getPackages` to accept the
new optional `options` parameter, including in
`PythonEnvironmentApiImpl`, `InternalPackageManager`, and related
example/sample APIs.
[[1]](diffhunk://#diff-efc92694367c1c8ab2ba06c997294e0070c38a467ce161aec3deb26ad70e8f0cR13)
[[2]](diffhunk://#diff-efc92694367c1c8ab2ba06c997294e0070c38a467ce161aec3deb26ad70e8f0cL260-R267)
[[3]](diffhunk://#diff-0b6e4234e1d1be57c31de2504ec4720d77b624f100e70fcc324aff4f815aaab5R12)
[[4]](diffhunk://#diff-0b6e4234e1d1be57c31de2504ec4720d77b624f100e70fcc324aff4f815aaab5L370-R372)
**Pip Package Manager Refactoring and Improvements:**
* Renamed `pipManager.ts` to `pipPackageManager.ts` and updated imports
accordingly.
* Refactored the pip package manager to support cache bypassing: if
`options.skipCache` is set, it fetches a fresh package list instead of
using the cache. Also simplified the logic for managing and refreshing
packages, delegating change notification to a new shared utility.
[[1]](diffhunk://#diff-bd7813d2ba80cb1d4b12c11a3b1e5832dbe0b65a1a68963ae95ca78e0a325291R14-L36)
[[2]](diffhunk://#diff-bd7813d2ba80cb1d4b12c11a3b1e5832dbe0b65a1a68963ae95ca78e0a325291L88-R86)
[[3]](diffhunk://#diff-bd7813d2ba80cb1d4b12c11a3b1e5832dbe0b65a1a68963ae95ca78e0a325291L117-R123)
* Removed redundant code for change detection and replaced with a shared
`updatePackagesAndNotify` utility.
[[1]](diffhunk://#diff-bd7813d2ba80cb1d4b12c11a3b1e5832dbe0b65a1a68963ae95ca78e0a325291R14-L36)
[[2]](diffhunk://#diff-bd7813d2ba80cb1d4b12c11a3b1e5832dbe0b65a1a68963ae95ca78e0a325291L88-R86)
[[3]](diffhunk://#diff-bd7813d2ba80cb1d4b12c11a3b1e5832dbe0b65a1a68963ae95ca78e0a325291L117-R123)
**Utilities and Supporting Changes:**
* Refactored pip package refresh utilities: replaced the raw refresh
logic with a more flexible function (`execPipList`) that supports
additional arguments, and removed now-unnecessary helper functions.
[[1]](diffhunk://#diff-06761af556051e7c3570fc796d9c69f15004c387e5095a909a9a5f9c270511d2L188-R193)
[[2]](diffhunk://#diff-06761af556051e7c3570fc796d9c69f15004c387e5095a909a9a5f9c270511d2L231-R235)
[[3]](diffhunk://#diff-06761af556051e7c3570fc796d9c69f15004c387e5095a909a9a5f9c270511d2L246-R251)
[[4]](diffhunk://#diff-06761af556051e7c3570fc796d9c69f15004c387e5095a909a9a5f9c270511d2L313-L314)
**Code Style and Minor Cleanups:**
* Minor formatting and code style updates across example/sample API
files for consistency.
[[1]](diffhunk://#diff-d5d7aa293bc97d0d8070d1d44893b3ba0c028df6025dd573772ed7bbf5bdd528L918-R931)
[[2]](diffhunk://#diff-d5d7aa293bc97d0d8070d1d44893b3ba0c028df6025dd573772ed7bbf5bdd528R965-R968)
[[3]](diffhunk://#diff-d5d7aa293bc97d0d8070d1d44893b3ba0c028df6025dd573772ed7bbf5bdd528L987-R1002)
[[4]](diffhunk://#diff-d5d7aa293bc97d0d8070d1d44893b3ba0c028df6025dd573772ed7bbf5bdd528L1206-R1221)
[[5]](diffhunk://#diff-d5d7aa293bc97d0d8070d1d44893b3ba0c028df6025dd573772ed7bbf5bdd528L1258-R1271)
[[6]](diffhunk://#diff-efc92694367c1c8ab2ba06c997294e0070c38a467ce161aec3deb26ad70e8f0cL99-R102)
[[7]](diffhunk://#diff-450a068335039323c00b342cbfbff615ecf1cda7bd9d73aaed6b8e13d2d9d7f5L66-R66)
These changes improve the flexibility and maintainability of the package
management APIs and their implementations, preparing the codebase for
future enhancements and better cache control.PackageManager (#1538)1 parent bac9000 commit 28494bc
14 files changed
Lines changed: 403 additions & 197 deletions
File tree
- api/src
- examples/sample1/src
- src
- features
- managers
- builtin
- common
- conda
- poetry
- test
- features
- managers/common
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
677 | 677 | | |
678 | 678 | | |
679 | 679 | | |
| 680 | + | |
680 | 681 | | |
681 | 682 | | |
682 | | - | |
| 683 | + | |
683 | 684 | | |
684 | 685 | | |
685 | 686 | | |
| |||
794 | 795 | | |
795 | 796 | | |
796 | 797 | | |
| 798 | + | |
| 799 | + | |
| 800 | + | |
| 801 | + | |
| 802 | + | |
| 803 | + | |
| 804 | + | |
| 805 | + | |
| 806 | + | |
| 807 | + | |
| 808 | + | |
797 | 809 | | |
798 | 810 | | |
799 | 811 | | |
| |||
1025 | 1037 | | |
1026 | 1038 | | |
1027 | 1039 | | |
| 1040 | + | |
1028 | 1041 | | |
1029 | 1042 | | |
1030 | | - | |
| 1043 | + | |
1031 | 1044 | | |
1032 | 1045 | | |
1033 | 1046 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
611 | 611 | | |
612 | 612 | | |
613 | 613 | | |
| 614 | + | |
614 | 615 | | |
615 | 616 | | |
616 | | - | |
| 617 | + | |
617 | 618 | | |
618 | 619 | | |
619 | 620 | | |
| |||
714 | 715 | | |
715 | 716 | | |
716 | 717 | | |
| 718 | + | |
| 719 | + | |
| 720 | + | |
| 721 | + | |
| 722 | + | |
| 723 | + | |
| 724 | + | |
| 725 | + | |
| 726 | + | |
| 727 | + | |
| 728 | + | |
717 | 729 | | |
718 | 730 | | |
719 | 731 | | |
| |||
915 | 927 | | |
916 | 928 | | |
917 | 929 | | |
918 | | - | |
| 930 | + | |
| 931 | + | |
919 | 932 | | |
920 | 933 | | |
921 | 934 | | |
| |||
949 | 962 | | |
950 | 963 | | |
951 | 964 | | |
| 965 | + | |
952 | 966 | | |
953 | 967 | | |
954 | | - | |
| 968 | + | |
955 | 969 | | |
956 | 970 | | |
957 | 971 | | |
| |||
984 | 998 | | |
985 | 999 | | |
986 | 1000 | | |
987 | | - | |
| 1001 | + | |
| 1002 | + | |
988 | 1003 | | |
989 | 1004 | | |
990 | 1005 | | |
| |||
1203 | 1218 | | |
1204 | 1219 | | |
1205 | 1220 | | |
1206 | | - | |
1207 | | - | |
1208 | | - | |
1209 | | - | |
| 1221 | + | |
1210 | 1222 | | |
1211 | 1223 | | |
1212 | 1224 | | |
| |||
1255 | 1267 | | |
1256 | 1268 | | |
1257 | 1269 | | |
1258 | | - | |
| 1270 | + | |
| 1271 | + | |
1259 | 1272 | | |
1260 | 1273 | | |
1261 | 1274 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
671 | 671 | | |
672 | 672 | | |
673 | 673 | | |
| 674 | + | |
674 | 675 | | |
675 | 676 | | |
676 | | - | |
| 677 | + | |
677 | 678 | | |
678 | 679 | | |
679 | 680 | | |
| |||
788 | 789 | | |
789 | 790 | | |
790 | 791 | | |
| 792 | + | |
| 793 | + | |
| 794 | + | |
| 795 | + | |
| 796 | + | |
| 797 | + | |
| 798 | + | |
| 799 | + | |
| 800 | + | |
| 801 | + | |
| 802 | + | |
791 | 803 | | |
792 | 804 | | |
793 | 805 | | |
| |||
1019 | 1031 | | |
1020 | 1032 | | |
1021 | 1033 | | |
| 1034 | + | |
1022 | 1035 | | |
1023 | 1036 | | |
1024 | | - | |
| 1037 | + | |
1025 | 1038 | | |
1026 | 1039 | | |
1027 | 1040 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
10 | 10 | | |
11 | 11 | | |
12 | 12 | | |
| 13 | + | |
13 | 14 | | |
14 | 15 | | |
15 | 16 | | |
| |||
96 | 97 | | |
97 | 98 | | |
98 | 99 | | |
99 | | - | |
100 | | - | |
101 | | - | |
| 100 | + | |
| 101 | + | |
| 102 | + | |
102 | 103 | | |
103 | 104 | | |
104 | 105 | | |
| |||
257 | 258 | | |
258 | 259 | | |
259 | 260 | | |
260 | | - | |
| 261 | + | |
261 | 262 | | |
262 | 263 | | |
263 | 264 | | |
264 | 265 | | |
265 | 266 | | |
266 | | - | |
| 267 | + | |
267 | 268 | | |
268 | 269 | | |
269 | 270 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
9 | 9 | | |
10 | 10 | | |
11 | 11 | | |
| 12 | + | |
12 | 13 | | |
13 | 14 | | |
14 | 15 | | |
| |||
367 | 368 | | |
368 | 369 | | |
369 | 370 | | |
370 | | - | |
371 | | - | |
| 371 | + | |
| 372 | + | |
372 | 373 | | |
373 | 374 | | |
374 | 375 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
4 | 4 | | |
5 | 5 | | |
6 | 6 | | |
7 | | - | |
| 7 | + | |
8 | 8 | | |
9 | 9 | | |
10 | 10 | | |
| |||
60 | 60 | | |
61 | 61 | | |
62 | 62 | | |
63 | | - | |
| 63 | + | |
64 | 64 | | |
65 | | - | |
66 | | - | |
| 65 | + | |
| 66 | + | |
67 | 67 | | |
68 | 68 | | |
69 | 69 | | |
| |||
Lines changed: 21 additions & 27 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
11 | 11 | | |
12 | 12 | | |
13 | 13 | | |
| 14 | + | |
14 | 15 | | |
15 | 16 | | |
16 | | - | |
17 | 17 | | |
18 | 18 | | |
19 | 19 | | |
20 | 20 | | |
21 | 21 | | |
| 22 | + | |
22 | 23 | | |
23 | | - | |
| 24 | + | |
24 | 25 | | |
25 | 26 | | |
26 | | - | |
27 | | - | |
28 | | - | |
29 | | - | |
30 | | - | |
31 | | - | |
32 | | - | |
33 | | - | |
34 | | - | |
35 | | - | |
36 | | - | |
37 | 27 | | |
38 | 28 | | |
39 | 29 | | |
| |||
85 | 75 | | |
86 | 76 | | |
87 | 77 | | |
88 | | - | |
89 | | - | |
90 | | - | |
91 | | - | |
92 | | - | |
| 78 | + | |
| 79 | + | |
| 80 | + | |
| 81 | + | |
| 82 | + | |
| 83 | + | |
| 84 | + | |
| 85 | + | |
| 86 | + | |
93 | 87 | | |
94 | 88 | | |
95 | 89 | | |
| |||
114 | 108 | | |
115 | 109 | | |
116 | 110 | | |
117 | | - | |
118 | | - | |
119 | | - | |
120 | | - | |
121 | | - | |
| 111 | + | |
122 | 112 | | |
123 | | - | |
| 113 | + | |
124 | 114 | | |
125 | 115 | | |
126 | 116 | | |
127 | | - | |
128 | | - | |
129 | | - | |
| 117 | + | |
| 118 | + | |
| 119 | + | |
| 120 | + | |
| 121 | + | |
| 122 | + | |
| 123 | + | |
130 | 124 | | |
131 | 125 | | |
132 | 126 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
185 | 185 | | |
186 | 186 | | |
187 | 187 | | |
188 | | - | |
| 188 | + | |
189 | 189 | | |
190 | 190 | | |
191 | 191 | | |
192 | 192 | | |
193 | | - | |
| 193 | + | |
194 | 194 | | |
195 | 195 | | |
196 | 196 | | |
| |||
228 | 228 | | |
229 | 229 | | |
230 | 230 | | |
231 | | - | |
| 231 | + | |
232 | 232 | | |
233 | 233 | | |
234 | 234 | | |
235 | | - | |
| 235 | + | |
236 | 236 | | |
237 | 237 | | |
238 | 238 | | |
| |||
243 | 243 | | |
244 | 244 | | |
245 | 245 | | |
246 | | - | |
247 | | - | |
248 | | - | |
249 | | - | |
250 | | - | |
251 | | - | |
252 | | - | |
253 | | - | |
254 | | - | |
255 | 246 | | |
256 | 247 | | |
257 | 248 | | |
258 | | - | |
259 | 249 | | |
260 | 250 | | |
261 | | - | |
| 251 | + | |
262 | 252 | | |
263 | 253 | | |
264 | 254 | | |
| |||
310 | 300 | | |
311 | 301 | | |
312 | 302 | | |
313 | | - | |
314 | | - | |
315 | 303 | | |
316 | 304 | | |
317 | 305 | | |
| |||
0 commit comments