janito 2.27.0__py3-none-any.whl → 2.27.1__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- janito/cli/chat_mode/session.py +37 -23
- janito/cli/chat_mode/shell/commands/__init__.py +2 -0
- janito/cli/chat_mode/shell/commands/help.py +6 -1
- janito/cli/chat_mode/shell/commands/provider.py +25 -0
- janito/cli/chat_mode/toolbar.py +15 -1
- janito/cli/cli_commands/enable_disable_plugin.py +64 -0
- janito/cli/cli_commands/list_plugins.py +20 -4
- janito/cli/core/getters.py +6 -0
- janito/cli/core/runner.py +15 -1
- janito/cli/core/setters.py +18 -6
- janito/cli/main_cli.py +4 -5
- janito/plugins/builtin.py +84 -0
- janito/plugins/discovery.py +83 -1
- janito/plugins/manager.py +2 -0
- janito/tools/adapters/local/ask_user.py +7 -1
- janito/tools/base.py +11 -0
- {janito-2.27.0.dist-info → janito-2.27.1.dist-info}/METADATA +3 -1
- {janito-2.27.0.dist-info → janito-2.27.1.dist-info}/RECORD +22 -23
- janito-2.27.1.dist-info/top_level.txt +1 -0
- janito-2.27.0.dist-info/top_level.txt +0 -2
- janito-coder/janito_coder/__init__.py +0 -9
- janito-coder/janito_coder/plugins/__init__.py +0 -27
- janito-coder/janito_coder/plugins/code_navigator.py +0 -618
- janito-coder/janito_coder/plugins/git_analyzer.py +0 -273
- janito-coder/pyproject.toml +0 -347
- {janito-2.27.0.dist-info → janito-2.27.1.dist-info}/WHEEL +0 -0
- {janito-2.27.0.dist-info → janito-2.27.1.dist-info}/entry_points.txt +0 -0
- {janito-2.27.0.dist-info → janito-2.27.1.dist-info}/licenses/LICENSE +0 -0
janito/tools/base.py
ADDED
@@ -0,0 +1,11 @@
|
|
1
|
+
class BaseTool:
|
2
|
+
"""Base class for all tools."""
|
3
|
+
tool_name: str = ""
|
4
|
+
|
5
|
+
def __init__(self):
|
6
|
+
if not self.tool_name:
|
7
|
+
self.tool_name = self.__class__.__name__.lower()
|
8
|
+
|
9
|
+
def run(self, *args, **kwargs) -> str:
|
10
|
+
"""Execute the tool."""
|
11
|
+
raise NotImplementedError
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.4
|
2
2
|
Name: janito
|
3
|
-
Version: 2.27.
|
3
|
+
Version: 2.27.1
|
4
4
|
Summary: A new Python package called janito.
|
5
5
|
Author-email: João Pinto <janito@ikignosis.org>
|
6
6
|
Project-URL: Homepage, https://github.com/ikignosis/janito
|
@@ -28,6 +28,8 @@ Requires-Dist: codespell==2.4.1; extra == "dev"
|
|
28
28
|
Requires-Dist: black; extra == "dev"
|
29
29
|
Requires-Dist: questionary>=2.0.1; extra == "dev"
|
30
30
|
Requires-Dist: setuptools_scm>=8.0; extra == "dev"
|
31
|
+
Provides-Extra: coder
|
32
|
+
Requires-Dist: janito-coder; extra == "coder"
|
31
33
|
Dynamic: license-file
|
32
34
|
|
33
35
|
# Janito, control you context
|
@@ -29,7 +29,7 @@ janito/cli/__init__.py,sha256=xaPDOrWphBbCR63Xpcx_yfpXSJIlCaaICc4j2qpWqrM,194
|
|
29
29
|
janito/cli/config.py,sha256=HkZ14701HzIqrvaNyDcDhGlVHfpX_uHlLp2rHmhRm_k,872
|
30
30
|
janito/cli/console.py,sha256=gJolqzWL7jEPLxeuH-CwBDRFpXt976KdZOEAB2tdBDs,64
|
31
31
|
janito/cli/main.py,sha256=s5odou0txf8pzTf1ADk2yV7T5m8B6cejJ81e7iu776U,312
|
32
|
-
janito/cli/main_cli.py,sha256=
|
32
|
+
janito/cli/main_cli.py,sha256=Esq8sa4DtBGFCSkP-V8ZfLjEYJkvsoIGSKi2UOQCSaE,16954
|
33
33
|
janito/cli/prompt_core.py,sha256=F68J4Xl6jZMYFN4oBBYZFj15Jp-HTYoLub4bw2XpNRU,11648
|
34
34
|
janito/cli/prompt_handler.py,sha256=SnPTlL64noeAMGlI08VBDD5IDD8jlVMIYA4-fS8zVLg,215
|
35
35
|
janito/cli/prompt_setup.py,sha256=1SSvvgS568-3BO_4Sw9A-QF_iLWiIXsNHT0JVqaLwkU,2120
|
@@ -40,14 +40,14 @@ janito/cli/chat_mode/bindings.py,sha256=odjc5_-YW1t2FRhBUNRNoBMoQIg5sMz3ktV7xG0A
|
|
40
40
|
janito/cli/chat_mode/chat_entry.py,sha256=RFdPd23jsA2DMHRacpjAdwI_1dFBaWrtnwyQEgb2fHA,475
|
41
41
|
janito/cli/chat_mode/prompt_style.py,sha256=vsqQ9xxmrYjj1pWuVe9CayQf39fo2EIXrkKPkflSVn4,805
|
42
42
|
janito/cli/chat_mode/script_runner.py,sha256=wOwEn4bgmjqHqjTqtfyaSOnRPsGf4ZVW-YAWhEeqxXU,6507
|
43
|
-
janito/cli/chat_mode/session.py,sha256
|
43
|
+
janito/cli/chat_mode/session.py,sha256=6Eg0qzi8Gvtw6yQSGMAA5ixBj2yrtmVOjdW-eqektTQ,16694
|
44
44
|
janito/cli/chat_mode/session_profile_select.py,sha256=23al0mw0unBlTqRg-ZI3RJa-XV8hdwVsizYJw_Lg2xY,6363
|
45
|
-
janito/cli/chat_mode/toolbar.py,sha256=
|
45
|
+
janito/cli/chat_mode/toolbar.py,sha256=VIcFaHU5VLJVNSqq2VcUozoT0lE-GMJuKDUFy4zEd5Q,3408
|
46
46
|
janito/cli/chat_mode/shell/autocomplete.py,sha256=lE68MaVaodbA2VfUM0_YLqQVLBJAE_BJsd5cMtwuD-g,793
|
47
47
|
janito/cli/chat_mode/shell/commands.bak.zip,sha256=I7GFjXg2ORT5NzFpicH1vQ3kchhduQsZinzqo0xO8wU,74238
|
48
48
|
janito/cli/chat_mode/shell/input_history.py,sha256=9620dKYSpXfGhdd2msbuqnkNW3Drv0dZ0eisWBaGKbg,2586
|
49
49
|
janito/cli/chat_mode/shell/session.bak.zip,sha256=m1GyO3Wy4G4D9sVgRO6ZDyC0VjclsmnEJsiQoer4LzI,5789
|
50
|
-
janito/cli/chat_mode/shell/commands/__init__.py,sha256=
|
50
|
+
janito/cli/chat_mode/shell/commands/__init__.py,sha256=27m5syilHSQlZX4AewgwIBpknQuf3hsuJhX2khVgZ6o,2464
|
51
51
|
janito/cli/chat_mode/shell/commands/_priv_check.py,sha256=OBPRMZlFlLSJSfbXrLqRCqD3ISKqR0QNzBJpa7g30Ro,206
|
52
52
|
janito/cli/chat_mode/shell/commands/_priv_status.py,sha256=WgCEK38Hllz3Bz4TgVgODdmo0BDaBey5t0uMyA3125k,478
|
53
53
|
janito/cli/chat_mode/shell/commands/bang.py,sha256=qVCUM8ZnGE1J3yG1hjYYw7upY4PR6bhNNYfJa-NfnI4,1860
|
@@ -55,13 +55,14 @@ janito/cli/chat_mode/shell/commands/base.py,sha256=I6-SVOcRd7q4PpoutLdrbhbqeUpJi
|
|
55
55
|
janito/cli/chat_mode/shell/commands/clear.py,sha256=wYEHGYcAohUoCJlbEhiXKfDbJvuzAVK4e9uirskIllw,422
|
56
56
|
janito/cli/chat_mode/shell/commands/conversation_restart.py,sha256=idPjWQ4Caps2vMOZ_tgTFOHr2U-cnf6Jqtt8wdyilGc,3848
|
57
57
|
janito/cli/chat_mode/shell/commands/execute.py,sha256=7I8uqSyRpIgOzx1mt1Pewdy6pJ2L1Yd3xnODe5d5hfs,2486
|
58
|
-
janito/cli/chat_mode/shell/commands/help.py,sha256=
|
58
|
+
janito/cli/chat_mode/shell/commands/help.py,sha256=XAUOTpm8ui7UX7hwGaJoSW9yKoTBWRPrFWVxgxSOT7k,1289
|
59
59
|
janito/cli/chat_mode/shell/commands/history_view.py,sha256=9dyxYpDHjT77LEIikjBQA03Ep3P2AmKXUwUnVsG0OQc,3584
|
60
60
|
janito/cli/chat_mode/shell/commands/lang.py,sha256=uIelDs3gPYDZ9X9gw7iDMmiwefT7TiBo32420pq2tW8,837
|
61
61
|
janito/cli/chat_mode/shell/commands/model.py,sha256=DrtQuqbac5VCpzBikpdu9vVgFVm_K9FYIjUOqmUztD4,1518
|
62
62
|
janito/cli/chat_mode/shell/commands/multi.py,sha256=HAAk0fAO3n8KFta3I4hT_scOAlz4SxWDyaNBUJBQ4nc,1985
|
63
63
|
janito/cli/chat_mode/shell/commands/privileges.py,sha256=pkTnteM8nURTaw2JzVIxLxADcBwOLW5cfu4tiTMvfvA,1121
|
64
64
|
janito/cli/chat_mode/shell/commands/prompt.py,sha256=6mj1oUO6bodyED19-_tJVO0x-l3REzYjKhp8OKFFWy4,1790
|
65
|
+
janito/cli/chat_mode/shell/commands/provider.py,sha256=CbIey75NECUxnKtrFCwau2D5YEsN9ipCs8Ud0XRJp7s,1141
|
65
66
|
janito/cli/chat_mode/shell/commands/read.py,sha256=3uKHkaIl6d4euS8rKGcYqUwVjvzVSwDjJgQTmt8nysw,2299
|
66
67
|
janito/cli/chat_mode/shell/commands/role.py,sha256=4Mt3okuNwOjqHbNhOFawcWB9KCLkpTDuLoDJFeXr3-E,1079
|
67
68
|
janito/cli/chat_mode/shell/commands/security_command.py,sha256=7Xgjb8Gunk9CjKxz1xwI-bAo1mOp_-VrqOhzuN2lcRw,1779
|
@@ -77,10 +78,11 @@ janito/cli/chat_mode/shell/commands/security/allowed_sites.py,sha256=dGiikM3VU8v
|
|
77
78
|
janito/cli/chat_mode/shell/session/__init__.py,sha256=uTYE_QpZFEn7v9QE5o1LdulpCWa9vmk0OsefbBGWg_c,37
|
78
79
|
janito/cli/chat_mode/shell/session/history.py,sha256=tYav6GgjAZkvWhlI_rfG6OArNqW6Wn2DTv39Hb20QYc,1262
|
79
80
|
janito/cli/chat_mode/shell/session/manager.py,sha256=MwD9reHsRaly0CyRB-S1JJ0wPKz2g8Xdj2VvlU35Hgc,1001
|
81
|
+
janito/cli/cli_commands/enable_disable_plugin.py,sha256=zTbFfLdGVMhEwuD96f_i5ly7rcAV77SBaHEKM3-UMhE,2786
|
80
82
|
janito/cli/cli_commands/list_config.py,sha256=oiQEGaGPjwjG-PrOcakpNMbbqISTsBEs7rkGH3ceQsI,1179
|
81
83
|
janito/cli/cli_commands/list_drivers.py,sha256=r2ENykUcvf_9XYp6LHd3RvLXGXyVUA6oe_Pr0dyv92I,5124
|
82
84
|
janito/cli/cli_commands/list_models.py,sha256=7Cyjfwht77nm6_h1DRY2A-Nkkm1Kiy0e339EYglVqEI,1619
|
83
|
-
janito/cli/cli_commands/list_plugins.py,sha256=
|
85
|
+
janito/cli/cli_commands/list_plugins.py,sha256=aVr4KQBrP37cBBw7kunGByiKpYzeOlQ_U69RlXf6Dy4,3766
|
84
86
|
janito/cli/cli_commands/list_profiles.py,sha256=Duonbhko9GmkT9odJerlYKg9fE1kHTTaU7P2W2_51qk,3557
|
85
87
|
janito/cli/cli_commands/list_providers.py,sha256=3ywm1Ohv7yVqV1E9hB-3Jz8BwzhyCScKxffq6iDI4nA,391
|
86
88
|
janito/cli/cli_commands/list_providers_region.py,sha256=qrMj_gtgEMty8UH0P_O5SgWCVJ9ZKxGUp_GdsE4_EH4,2548
|
@@ -93,10 +95,10 @@ janito/cli/cli_commands/show_config.py,sha256=UnitVtjYqR0XR2viAFaeiODqkfUwJA5xdk
|
|
93
95
|
janito/cli/cli_commands/show_system_prompt.py,sha256=YKOVHKzz6pzwvJGlqVEK2R4i98HGrUZHsrsFNvBBEd8,5898
|
94
96
|
janito/cli/core/__init__.py,sha256=YH95fhgY9yBX8RgqX9dSrEkl4exjV0T4rbmJ6xUpG-Y,196
|
95
97
|
janito/cli/core/event_logger.py,sha256=1X6lR0Ax7AgF8HlPWFoY5Ystuu7Bh4ooTo78vXzeGB0,2008
|
96
|
-
janito/cli/core/getters.py,sha256=
|
98
|
+
janito/cli/core/getters.py,sha256=ZiRbnphsf3WDonOv-jvylIa-fcrvJnRtgGXhFofTcFc,2867
|
97
99
|
janito/cli/core/model_guesser.py,sha256=jzkkiQ-J2buT2Omh6jYZHa8-zCJxqKQBL08Z58pe1_o,1741
|
98
|
-
janito/cli/core/runner.py,sha256=
|
99
|
-
janito/cli/core/setters.py,sha256=
|
100
|
+
janito/cli/core/runner.py,sha256=pSU3SgZmLIjYTl161xT0UdcMyyMOKiBej25FSUSpiiM,9077
|
101
|
+
janito/cli/core/setters.py,sha256=zpeeDcPYvBubEJ0LwwT_BLeBfGCLxC_AOo2wtuk0rPs,5376
|
100
102
|
janito/cli/core/unsetters.py,sha256=FEw9gCt0vRvoCt0kRSNfVB2tzi_TqppJIx2nHPP59-k,2012
|
101
103
|
janito/cli/single_shot_mode/__init__.py,sha256=Ct99pKe9tINzVW6oedZJfzfZQKWpXz-weSSCn0hrwHY,115
|
102
104
|
janito/cli/single_shot_mode/handler.py,sha256=d251ObY-5bkUyccV9NYkKDF0VCKrQTrGEnwt3mtj61w,5529
|
@@ -132,9 +134,10 @@ janito/llm/model.py,sha256=EioBkdgn8hJ0iQaKN-0KbXlsrk3YKmwR9IbvoEbdVTE,1159
|
|
132
134
|
janito/llm/provider.py,sha256=3FbhQPrWBSEoIdIi-5DWIh0DD_CM570EFf1NcuGyGko,7961
|
133
135
|
janito/plugins/__init__.py,sha256=7OGyRl_RUXDJE-7OwNMRDzH3RAb5p1j5oKp4ERfnye8,399
|
134
136
|
janito/plugins/base.py,sha256=rpCiASpEjvBngZmoq4pM9AkdR8hHPIOgNZjz1kh-rGU,4252
|
137
|
+
janito/plugins/builtin.py,sha256=fH3TsaZ2h5qeAWGQb3pJsNozsE0za1peOUl0wkMWJEI,2991
|
135
138
|
janito/plugins/config.py,sha256=ncenRCT0h3SyE2JCzuIDMnMSvdQKK7H0q0ZzZoydtKE,2449
|
136
|
-
janito/plugins/discovery.py,sha256=
|
137
|
-
janito/plugins/manager.py,sha256=
|
139
|
+
janito/plugins/discovery.py,sha256=znc-GnF2tIDFY32A8Y0O1wqW24J7pEPNXHocIavchqc,9990
|
140
|
+
janito/plugins/manager.py,sha256=9l_97QMLU7RpCxKU3WrHto12ZcX_Qhg2URsjnv_Ex_k,8454
|
138
141
|
janito/providers/__init__.py,sha256=SWXtbW3lU7ORi6d9Ro04qnGDDNJ2Cwq0hfbKdZeResg,530
|
139
142
|
janito/providers/dashscope.bak.zip,sha256=BwXxRmZreEivvRtmqbr5BR62IFVlNjAf4y6DrF2BVJo,5998
|
140
143
|
janito/providers/registry.py,sha256=Ygwv9eVrTXOKhv0EKxSWQXO5WMHvajWE2Q_Lc3p7dKo,730
|
@@ -179,6 +182,7 @@ janito/regions/provider_regions.py,sha256=QJdbsdgjg-WcTRqPLGtm3pHJAm2o0-Y9MgE_vN
|
|
179
182
|
janito/tools/DOCSTRING_STANDARD.txt,sha256=VLPwNgjxRVD_xZSSVvUZ4H-4bBwM-VKh_RyfzYQsYSs,1735
|
180
183
|
janito/tools/README.md,sha256=5HkLpF5k4PENJER7SlDPRXj0yo9mpHvAHW4uuzhq4ak,115
|
181
184
|
janito/tools/__init__.py,sha256=W1B39PztC2UF7PS2WyLH6el32MFOETMlN1-LurOROCg,1171
|
185
|
+
janito/tools/base.py,sha256=vo5Y0bg0qPplHPe3nww0Au0v0ctwRyI3NZsvWBqqylY,320
|
182
186
|
janito/tools/disabled_tools.py,sha256=Tx__16wtMWZ9z34cYLdH1gukwot5MCL-9kLjd5MPX6Y,2110
|
183
187
|
janito/tools/inspect_registry.py,sha256=Jo7PrMPRKLuR-j_mBAk9PBcTzeJf1eQrS1ChGofgQk0,538
|
184
188
|
janito/tools/loop_protection.py,sha256=DoOuQZ53PZ-Zmn7MD76KwOgjbd0esV2ESnXTDHV9IE4,4804
|
@@ -199,7 +203,7 @@ janito/tools/url_whitelist.py,sha256=bFUba5h4P0aXGbVRqwF_x4I5uzHtlLXnpb24BndOkCM
|
|
199
203
|
janito/tools/adapters/__init__.py,sha256=XKixOKtUJs1R-rGwGDXSLVLg5-Kp090gvWbsseWT4LI,92
|
200
204
|
janito/tools/adapters/local/__init__.py,sha256=8xJw8Qv3T_wwkiGBVVgs9p7pH1ONIAipccEUqY2II8A,2231
|
201
205
|
janito/tools/adapters/local/adapter.py,sha256=u4nLHTaYdwZXMi1J8lsKvlG6rOmdq9xjey_3zeyCG4k,8707
|
202
|
-
janito/tools/adapters/local/ask_user.py,sha256=
|
206
|
+
janito/tools/adapters/local/ask_user.py,sha256=4xY8SUndw_OYAPzeIRxugmihxxn7Y-b2v9xYT_LGdkY,3941
|
203
207
|
janito/tools/adapters/local/copy_file.py,sha256=SBJm19Ipe5dqRE1Mxl6JSrn4bNmfObVnDr5b1mcEu6c,3682
|
204
208
|
janito/tools/adapters/local/create_directory.py,sha256=LxwqQEsnOrEphCIoaMRRx9P9bu0MzidP3Fc5q6letxc,2584
|
205
209
|
janito/tools/adapters/local/create_file.py,sha256=Y3cSYg0nWt2HGPj0j4Ut25joSkecsXOcw3OUc28IZCg,3764
|
@@ -243,14 +247,9 @@ janito/tools/adapters/local/validate_file_syntax/ps1_validator.py,sha256=TeIkPt0
|
|
243
247
|
janito/tools/adapters/local/validate_file_syntax/python_validator.py,sha256=BfCO_K18qy92m-2ZVvHsbEU5e11OPo1pO9Vz4G4616E,130
|
244
248
|
janito/tools/adapters/local/validate_file_syntax/xml_validator.py,sha256=AijlsP_PgNuC8ZbGsC5vOTt3Jur76otQzkd_7qR0QFY,284
|
245
249
|
janito/tools/adapters/local/validate_file_syntax/yaml_validator.py,sha256=TgyI0HRL6ug_gBcWEm5TGJJuA4E34ZXcIzMpAbv3oJs,155
|
246
|
-
janito-2.27.
|
247
|
-
janito-
|
248
|
-
janito-
|
249
|
-
janito-
|
250
|
-
janito-
|
251
|
-
janito-
|
252
|
-
janito-2.27.0.dist-info/METADATA,sha256=sFUAedoBtF62qhiKZeA36nQsGKqUp0Qjpy3kV1Us2P8,16875
|
253
|
-
janito-2.27.0.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
254
|
-
janito-2.27.0.dist-info/entry_points.txt,sha256=wIo5zZxbmu4fC-ZMrsKD0T0vq7IqkOOLYhrqRGypkx4,48
|
255
|
-
janito-2.27.0.dist-info/top_level.txt,sha256=rL2_EzEekHIjO_EteQ1nOywm0B9Ywb0ZeqSKtzZMGUc,20
|
256
|
-
janito-2.27.0.dist-info/RECORD,,
|
250
|
+
janito-2.27.1.dist-info/licenses/LICENSE,sha256=GSAKapQH5ZIGWlpQTA7v5YrfECyaxaohUb1vJX-qepw,1090
|
251
|
+
janito-2.27.1.dist-info/METADATA,sha256=j3HjxFHnUUbvcLWSzSswWS67Lj9q3EQ3xSf-BOBBV24,16945
|
252
|
+
janito-2.27.1.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
253
|
+
janito-2.27.1.dist-info/entry_points.txt,sha256=wIo5zZxbmu4fC-ZMrsKD0T0vq7IqkOOLYhrqRGypkx4,48
|
254
|
+
janito-2.27.1.dist-info/top_level.txt,sha256=m0NaVCq0-ivxbazE2-ND0EA9Hmuijj_OGkmCbnBcCig,7
|
255
|
+
janito-2.27.1.dist-info/RECORD,,
|
@@ -0,0 +1 @@
|
|
1
|
+
janito
|
@@ -1,27 +0,0 @@
|
|
1
|
-
"""
|
2
|
-
Janito Coder plugins package.
|
3
|
-
"""
|
4
|
-
|
5
|
-
from .git_analyzer import GitAnalyzerPlugin
|
6
|
-
from .code_navigator import CodeNavigatorPlugin
|
7
|
-
from .dependency_analyzer import DependencyAnalyzerPlugin
|
8
|
-
from .code_formatter import CodeFormatterPlugin
|
9
|
-
from .test_runner import TestRunnerPlugin
|
10
|
-
from .linter import LinterPlugin
|
11
|
-
from .debugger import DebuggerPlugin
|
12
|
-
from .performance_profiler import PerformanceProfilerPlugin
|
13
|
-
from .security_scanner import SecurityScannerPlugin
|
14
|
-
from .documentation_generator import DocumentationGeneratorPlugin
|
15
|
-
|
16
|
-
__all__ = [
|
17
|
-
"GitAnalyzerPlugin",
|
18
|
-
"CodeNavigatorPlugin",
|
19
|
-
"DependencyAnalyzerPlugin",
|
20
|
-
"CodeFormatterPlugin",
|
21
|
-
"TestRunnerPlugin",
|
22
|
-
"LinterPlugin",
|
23
|
-
"DebuggerPlugin",
|
24
|
-
"PerformanceProfilerPlugin",
|
25
|
-
"SecurityScannerPlugin",
|
26
|
-
"DocumentationGeneratorPlugin",
|
27
|
-
]
|