thunderbird-patch-review
Simple email patch review tool for Thunderbird
git clone git://mccd.space/thunderbird-patch-review| Log | Files | Refs | README | LICENSE | Mail | Artifacts |
schema.json (3552B)
1 [
2 {
3 "namespace": "patchHost",
4 "description": "Privileged helper behind Apply series, Browse... and Open editor: runs git am, shows a native directory chooser, and launches the editor.",
5 "functions": [
6 {
7 "name": "ping",
8 "type": "function",
9 "async": true,
10 "description": "Report whether git is reachable; resolves to {ok, git, version}.",
11 "parameters": []
12 },
13 {
14 "name": "describe",
15 "type": "function",
16 "async": true,
17 "description": "Resolve a path to its repository name and current branch; resolves to {ok, repo, name, branch} or {ok:false, error}.",
18 "parameters": [
19 { "name": "repo", "type": "string" }
20 ]
21 },
22 {
23 "name": "apply",
24 "type": "function",
25 "async": true,
26 "description": "Run git am on the raw patch messages in the given repository; resolves to {ok, output}.",
27 "parameters": [
28 { "name": "repo", "type": "string" },
29 {
30 "name": "strategy",
31 "type": "string",
32 "description": "\"am3\" for git am --3way (the default), \"am\" for plain git am."
33 },
34 {
35 "name": "patches",
36 "type": "array",
37 "items": { "type": "string" },
38 "description": "Raw RFC822 patch messages, in series order."
39 },
40 {
41 "name": "noHooks",
42 "type": "boolean",
43 "optional": true,
44 "default": false,
45 "description": "True to suppress the user's git hooks for this apply (applypatch-msg, pre-applypatch, post-applypatch) by pointing git at an empty hooks dir; false (the default) runs hooks as a normal git am would. Use true for untrusted content."
46 }
47 ]
48 },
49 {
50 "name": "check",
51 "type": "function",
52 "async": true,
53 "description": "Classify the patches against the repository without applying: resolves to {ok, status, output} where status is \"applicable\", \"applied\", \"dirty\", or \"conflict\".",
54 "parameters": [
55 { "name": "repo", "type": "string" },
56 {
57 "name": "strategy",
58 "type": "string",
59 "description": "Mirrors apply()'s strategy argument; currently only documented for API symmetry."
60 },
61 {
62 "name": "patches",
63 "type": "array",
64 "items": { "type": "string" },
65 "description": "Raw RFC822 patch messages, in series order."
66 }
67 ]
68 },
69 {
70 "name": "pickDir",
71 "type": "function",
72 "async": true,
73 "description": "Open a native directory chooser; resolves to {ok, output} or {ok, cancelled}.",
74 "parameters": [
75 {
76 "name": "start",
77 "type": "string",
78 "description": "Directory the chooser starts in; may be empty."
79 }
80 ]
81 },
82 {
83 "name": "openEditor",
84 "type": "function",
85 "async": true,
86 "description": "Launch the editor command from the repository with the given files as arguments.",
87 "parameters": [
88 { "name": "repo", "type": "string" },
89 {
90 "name": "editor",
91 "type": "string",
92 "description": "Shell command line; empty means $EDITOR, then a platform opener on the repository."
93 },
94 { "name": "files", "type": "array", "items": { "type": "string" } }
95 ]
96 }
97 ]
98 }
99 ]