@simplysf/simply-gitlab-core 0.6.0 → 0.8.0

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.
@@ -45,6 +45,14 @@ export interface ListMergeRequestsOptions {
45
45
  readonly orderBy?: string;
46
46
  readonly sort?: 'asc' | 'desc';
47
47
  }
48
+ export interface ListMergeRequestNotesOptions {
49
+ /** By creation time. GitLab's default is `desc`, so a limit returns the latest comments. */
50
+ readonly sort?: 'asc' | 'desc';
51
+ /** Also return the notes GitLab writes itself ("added 3 commits"). Ignored with `codeOnly`. */
52
+ readonly includeSystem?: boolean;
53
+ /** Only comments on the diff: a line, a range of lines, or a whole file. */
54
+ readonly codeOnly?: boolean;
55
+ }
48
56
  export type JobScope = 'created' | 'pending' | 'running' | 'failed' | 'success' | 'canceled' | 'skipped' | 'waiting_for_resource' | 'manual';
49
57
  export interface ListJobsOptions {
50
58
  readonly scope?: readonly JobScope[];
@@ -121,6 +129,13 @@ export declare class GitLabClient {
121
129
  getMergeRequest(project: ProjectRef, iid: number): Promise<unknown>;
122
130
  createMergeRequest(project: ProjectRef, body: Record<string, unknown>): Promise<unknown>;
123
131
  updateMergeRequest(project: ProjectRef, iid: number, body: Record<string, unknown>): Promise<unknown>;
132
+ mergeMergeRequest(project: ProjectRef, iid: number, body: Record<string, unknown>): Promise<unknown>;
133
+ /**
134
+ * A merge request's comments, from the notes endpoint. System notes share that endpoint and its
135
+ * pagination, and it has no server-side filter for them, so they are dropped here and the limit
136
+ * counts what is kept. See docs/design/0009-merge-request-comments.md.
137
+ */
138
+ listMergeRequestNotes(project: ProjectRef, iid: number, options?: ListMergeRequestNotesOptions, limit?: number): Promise<ListResult>;
124
139
  listTags(project: ProjectRef, options?: ListTagsOptions, limit?: number): Promise<ListResult>;
125
140
  listJobs(project: ProjectRef, options?: ListJobsOptions, limit?: number): Promise<ListResult>;
126
141
  /** A job's trace is plain text, sometimes megabytes of it, and is never JSON. */
@@ -172,6 +187,10 @@ export declare class GitLabClient {
172
187
  * page, and reports which of the two happened. A caller that gets `complete: false` was cut
173
188
  * short by its own limit and knows more exists — the alternative, returning a short list with
174
189
  * no signal, is how a partial answer gets mistaken for the whole one.
190
+ *
191
+ * With `keep`, only the items it accepts are returned and the limit counts those. Every page is
192
+ * then asked for at full size, because how many of a page will be kept is unknown, and `total`
193
+ * is left undefined, because the instance's count includes the items that were dropped.
175
194
  */
176
195
  private collect;
177
196
  }
@@ -16,6 +16,7 @@
16
16
  import { buildAuthHeaders } from './auth.js';
17
17
  import { ConfigError } from './errors.js';
18
18
  import { HttpTransport } from './http.js';
19
+ import { keepComment } from './merge-request-comments.js';
19
20
  /** GitLab's own ceiling on `per_page`; asking for more is silently clamped to it. */
20
21
  const MAX_PER_PAGE = 100;
21
22
  /** How many pages one list call will follow before giving up, however small the page size. */
@@ -158,6 +159,23 @@ export class GitLabClient {
158
159
  mutating: true,
159
160
  });
160
161
  }
162
+ async mergeMergeRequest(project, iid, body) {
163
+ return this.request(`/projects/${segment(project)}/merge_requests/${iid}/merge`, {
164
+ method: 'PUT',
165
+ body,
166
+ mutating: true,
167
+ });
168
+ }
169
+ /**
170
+ * A merge request's comments, from the notes endpoint. System notes share that endpoint and its
171
+ * pagination, and it has no server-side filter for them, so they are dropped here and the limit
172
+ * counts what is kept. See docs/design/0009-merge-request-comments.md.
173
+ */
174
+ async listMergeRequestNotes(project, iid, options = {}, limit = 20) {
175
+ // Unfiltered only when every note is wanted, so that list keeps GitLab's own total.
176
+ const keepsAll = options.includeSystem === true && options.codeOnly !== true;
177
+ return this.collect(`/projects/${segment(project)}/merge_requests/${iid}/notes`, query({ sort: options.sort, order_by: 'created_at' }), limit, keepsAll ? undefined : (note) => keepComment(note, options));
178
+ }
161
179
  // --- Tags ---
162
180
  async listTags(project, options = {}, limit = 20) {
163
181
  return this.collect(`/projects/${segment(project)}/repository/tags`, query({ search: options.search, order_by: options.orderBy, sort: options.sort }), limit);
@@ -305,8 +323,12 @@ export class GitLabClient {
305
323
  * page, and reports which of the two happened. A caller that gets `complete: false` was cut
306
324
  * short by its own limit and knows more exists — the alternative, returning a short list with
307
325
  * no signal, is how a partial answer gets mistaken for the whole one.
326
+ *
327
+ * With `keep`, only the items it accepts are returned and the limit counts those. Every page is
328
+ * then asked for at full size, because how many of a page will be kept is unknown, and `total`
329
+ * is left undefined, because the instance's count includes the items that were dropped.
308
330
  */
309
- async collect(path, params, limit) {
331
+ async collect(path, params, limit, keep) {
310
332
  if (!Number.isInteger(limit) || limit < 1) {
311
333
  throw new ConfigError(`A limit must be a positive whole number, got ${limit}.`);
312
334
  }
@@ -320,23 +342,29 @@ export class GitLabClient {
320
342
  const response = await this.transport.jsonPaged({
321
343
  method: 'GET',
322
344
  path: `${API_BASE}${path}`,
323
- query: { ...params, per_page: Math.min(MAX_PER_PAGE, limit - items.length), page },
345
+ query: {
346
+ ...params,
347
+ per_page: keep === undefined ? Math.min(MAX_PER_PAGE, limit - items.length) : MAX_PER_PAGE,
348
+ page,
349
+ },
324
350
  });
325
351
  pages += 1;
326
- total = response.pagination.total ?? total;
352
+ if (keep === undefined)
353
+ total = response.pagination.total ?? total;
327
354
  // Every list endpoint answers with a JSON array. A non-array here means the route matched
328
355
  // something else — a redirect to a sign-in page, most often — and slicing it would produce
329
356
  // a confidently empty list rather than an error.
330
357
  if (!Array.isArray(response.data)) {
331
358
  throw new ConfigError(`GET ${path} did not return a list. Check that the URL points at a GitLab instance.`);
332
359
  }
333
- items.push(...response.data);
360
+ items.push(...(keep === undefined ? response.data : response.data.filter(keep)));
334
361
  const nextPage = response.pagination.nextPage;
335
362
  // No next-page header, an empty page, or a cursor that fails to advance all mean the same
336
363
  // thing: this was the last page. The last of the three matters because a misconfigured
337
364
  // reverse proxy that strips or pins the header would otherwise loop until MAX_PAGES.
338
365
  if (response.data.length === 0 || nextPage === undefined || nextPage <= page) {
339
- return { items: items.slice(0, limit), total, pages, complete: true };
366
+ // A filtered last page can still hold more than the limit; that is a cut, not the end.
367
+ return { items: items.slice(0, limit), total, pages, complete: items.length <= limit };
340
368
  }
341
369
  page = nextPage;
342
370
  }
@@ -1 +1 @@
1
- {"version":3,"file":"gitlab-client.js","sourceRoot":"","sources":["../src/gitlab-client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"gitlab-client.js","sourceRoot":"","sources":["../src/gitlab-client.ts"],"names":[],"mappings":"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"}
package/lib/index.d.ts CHANGED
@@ -3,16 +3,17 @@ export { DEFAULT_URL, resolveGitLabConfig, TOKEN_ENV, URL_ENV, type ConfigOverri
3
3
  export { loadEnvFile, parseEnvFile } from './env-file.js';
4
4
  export { AuthError, CliError, ConfigError, HttpError, NetworkError } from './errors.js';
5
5
  export { HttpTransport, type JsonCall, type Paged, type Pagination, type QueryValue, type TransportTarget, } from './http.js';
6
- export { GitLabClient, type CommitAction, type FileOptions, type JobScope, type ListBranchesOptions, type ListCommitsOptions, type ListEnvironmentsOptions, type ListJobsOptions, type ListMergeRequestsOptions, type ListProjectsOptions, type ListResult, type ListTagsOptions, type MergeRequestState, type ProjectRef, type SearchOptions, type SearchScope, type WriteFileInput, } from './gitlab-client.js';
6
+ export { GitLabClient, type CommitAction, type FileOptions, type JobScope, type ListBranchesOptions, type ListCommitsOptions, type ListEnvironmentsOptions, type ListJobsOptions, type ListMergeRequestNotesOptions, type ListMergeRequestsOptions, type ListProjectsOptions, type ListResult, type ListTagsOptions, type MergeRequestState, type ProjectRef, type SearchOptions, type SearchScope, type WriteFileInput, } from './gitlab-client.js';
7
7
  export { stripControl, stripControlOneLine } from './text.js';
8
8
  export { assertWritesAllowed, isReadOnly, READ_ONLY_ENV } from './write-safety.js';
9
9
  export { collectSecrets, redactSecrets, sanitiseDeep, SECRET_ENV, secretValues } from './redaction.js';
10
10
  export { assertNotEmpty, mergeBody, parseBodyInput, readTextFile } from './json-input.js';
11
11
  export { formatKeyValue, formatTable, type Column, type Pair } from './output.js';
12
- export { branchColumns, commitColumns, environmentColumns, jobColumns, mergeRequestColumns, projectColumns, releaseColumns, tagColumns, variableColumns, type Row, } from './tables.js';
12
+ export { branchColumns, commentColumns, commitColumns, environmentColumns, jobColumns, mergeRequestColumns, projectColumns, releaseColumns, tagColumns, variableColumns, type Row, } from './tables.js';
13
13
  export { HIDDEN, maskVariables, tailLog } from './cicd.js';
14
14
  export { buildCommitBody, parseActionsInput, parseCommitActions, type CommitInput } from './commits.js';
15
- export { assertIid, buildMergeRequestCreateBody, buildMergeRequestUpdateBody, mergeRequestUrl, type MergeRequestCreateInput, type MergeRequestUpdateInput, } from './merge-requests.js';
15
+ export { assertIid, assertSkipTrainAllowed, buildMergeBody, buildMergeRequestCreateBody, buildMergeRequestUpdateBody, describeMergeOutcome, executeMerge, mergeRequestUrl, prepareMerge, type MergeInput, type MergeOutcome, type MergeOutcomeKind, type MergeRequestCreateInput, type MergeRequestUpdateInput, type PreparedMerge, } from './merge-requests.js';
16
+ export { commentLocation, commentType, keepComment, type CommentType } from './merge-request-comments.js';
16
17
  export { buildProjectCreateBody, prepareProjectCreate, resolveGroupId, resolveNamespaceId, resolveProjectId, type ProjectCreateInput, type ProjectCreateRefs, type ProjectVisibility, } from './projects.js';
17
18
  export { buildFileWrite, decodeFileContent, type DecodedFile, type FilePayload, type FileWriteInput, } from './repository-files.js';
18
19
  export { ADVANCED_SCOPES, BASIC_SCOPES, needsAdvancedSearch, searchColumns } from './search.js';
package/lib/index.js CHANGED
@@ -36,11 +36,12 @@ export { collectSecrets, redactSecrets, sanitiseDeep, SECRET_ENV, secretValues }
36
36
  // --- Shared input handling and rendering ---
37
37
  export { assertNotEmpty, mergeBody, parseBodyInput, readTextFile } from './json-input.js';
38
38
  export { formatKeyValue, formatTable } from './output.js';
39
- export { branchColumns, commitColumns, environmentColumns, jobColumns, mergeRequestColumns, projectColumns, releaseColumns, tagColumns, variableColumns, } from './tables.js';
39
+ export { branchColumns, commentColumns, commitColumns, environmentColumns, jobColumns, mergeRequestColumns, projectColumns, releaseColumns, tagColumns, variableColumns, } from './tables.js';
40
40
  // --- Operations: what each command does between parsing its input and rendering its result ---
41
41
  export { HIDDEN, maskVariables, tailLog } from './cicd.js';
42
42
  export { buildCommitBody, parseActionsInput, parseCommitActions } from './commits.js';
43
- export { assertIid, buildMergeRequestCreateBody, buildMergeRequestUpdateBody, mergeRequestUrl, } from './merge-requests.js';
43
+ export { assertIid, assertSkipTrainAllowed, buildMergeBody, buildMergeRequestCreateBody, buildMergeRequestUpdateBody, describeMergeOutcome, executeMerge, mergeRequestUrl, prepareMerge, } from './merge-requests.js';
44
+ export { commentLocation, commentType, keepComment } from './merge-request-comments.js';
44
45
  export { buildProjectCreateBody, prepareProjectCreate, resolveGroupId, resolveNamespaceId, resolveProjectId, } from './projects.js';
45
46
  export { buildFileWrite, decodeFileContent, } from './repository-files.js';
46
47
  export { ADVANCED_SCOPES, BASIC_SCOPES, needsAdvancedSearch, searchColumns } from './search.js';
package/lib/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,gGAAgG;AAChG,+EAA+E;AAC/E,gGAAgG;AAChG,8FAA8F;AAC9F,sEAAsE;AACtE,EAAE;AACF,iGAAiG;AACjG,8FAA8F;AAC9F,+FAA+F;AAE/F,mDAAmD;AACnD,OAAO,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAC7C,OAAO,EACL,WAAW,EACX,mBAAmB,EACnB,SAAS,EACT,OAAO,GAIR,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC1D,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,WAAW,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AACxF,OAAO,EACL,aAAa,GAMd,MAAM,WAAW,CAAC;AACnB,OAAO,EACL,YAAY,GAiBb,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,YAAY,EAAE,mBAAmB,EAAE,MAAM,WAAW,CAAC;AAE9D,yFAAyF;AACzF,OAAO,EAAE,mBAAmB,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AACnF,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,YAAY,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAEvG,8CAA8C;AAC9C,OAAO,EAAE,cAAc,EAAE,SAAS,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC1F,OAAO,EAAE,cAAc,EAAE,WAAW,EAA0B,MAAM,aAAa,CAAC;AAClF,OAAO,EACL,aAAa,EACb,aAAa,EACb,kBAAkB,EAClB,UAAU,EACV,mBAAmB,EACnB,cAAc,EACd,cAAc,EACd,UAAU,EACV,eAAe,GAEhB,MAAM,aAAa,CAAC;AAErB,gGAAgG;AAChG,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAC3D,OAAO,EAAE,eAAe,EAAE,iBAAiB,EAAE,kBAAkB,EAAoB,MAAM,cAAc,CAAC;AACxG,OAAO,EACL,SAAS,EACT,2BAA2B,EAC3B,2BAA2B,EAC3B,eAAe,GAGhB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,sBAAsB,EACtB,oBAAoB,EACpB,cAAc,EACd,kBAAkB,EAClB,gBAAgB,GAIjB,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,cAAc,EACd,iBAAiB,GAIlB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,eAAe,EAAE,YAAY,EAAE,mBAAmB,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAEhG,gFAAgF;AAChF,OAAO,EACL,cAAc,EACd,gBAAgB,EAChB,QAAQ,EACR,UAAU,EACV,aAAa,EACb,iBAAiB,EACjB,mBAAmB,EACnB,gBAAgB,EAChB,eAAe,EACf,kBAAkB,EAClB,sBAAsB,GAWvB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,cAAc,EAAE,cAAc,EAA6C,MAAM,uBAAuB,CAAC;AAClH,OAAO,EACL,UAAU,EACV,QAAQ,EACR,SAAS,EACT,WAAW,GAOZ,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,mBAAmB,EACnB,QAAQ,EACR,OAAO,EACP,OAAO,EACP,SAAS,GAIV,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,aAAa,EAAE,SAAS,EAAE,WAAW,EAAuC,MAAM,qBAAqB,CAAC;AACjH,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAC3E,OAAO,EACL,mBAAmB,EACnB,YAAY,EACZ,aAAa,GAGd,MAAM,sBAAsB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,26 @@
1
+ /**
2
+ * What kind of note a merge request note is. GitLab returns all four from one endpoint, and most
3
+ * of a busy merge request's notes are `system` ones ("added 3 commits") that nobody wrote.
4
+ *
5
+ * A `comment` is a plain top-level comment (`type: null`). A `thread` note sits in a discussion
6
+ * that is not attached to the diff (`DiscussionNote`). A `code` note is on the diff — a line, a
7
+ * range of lines, or a whole file (`DiffNote`); replies in a code thread are `DiffNote`s too, and
8
+ * carry the same position. A `system` note is one GitLab wrote itself, whatever its `type`.
9
+ */
10
+ export type CommentType = 'comment' | 'thread' | 'code' | 'system';
11
+ export declare function commentType(note: unknown): CommentType;
12
+ /**
13
+ * Where on the diff a code comment sits, as `path:line`, or `undefined` for a note that is not on
14
+ * the diff.
15
+ *
16
+ * A comment on an added or unchanged line has a `new_line`; one on a removed line has only an
17
+ * `old_line`, and is located in the old file, because that is the only place the line exists. A
18
+ * comment on a range reports the line it was anchored to, which is the last line of the range —
19
+ * `position.line_range` in the payload has both ends. A comment on a whole file has no line.
20
+ */
21
+ export declare function commentLocation(note: unknown): string | undefined;
22
+ /** Whether a comment is one that "include system" and "code only" selected. */
23
+ export declare function keepComment(note: unknown, options: {
24
+ includeSystem?: boolean;
25
+ codeOnly?: boolean;
26
+ }): boolean;
@@ -0,0 +1,59 @@
1
+ /*
2
+ * Copyright (c) 2026, SimplySF.
3
+ *
4
+ * Licensed under the Apache License, Version 2.0 (the "License");
5
+ * you may not use this file except in compliance with the License.
6
+ * You may obtain a copy of the License at
7
+ *
8
+ * http://www.apache.org/licenses/LICENSE-2.0
9
+ *
10
+ * Unless required by applicable law or agreed to in writing, software
11
+ * distributed under the License is distributed on an "AS IS" BASIS,
12
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ * See the License for the specific language governing permissions and
14
+ * limitations under the License.
15
+ */
16
+ export function commentType(note) {
17
+ if (typeof note !== 'object' || note === null)
18
+ return 'comment';
19
+ const { system, type } = note;
20
+ if (system === true)
21
+ return 'system';
22
+ if (type === 'DiffNote')
23
+ return 'code';
24
+ if (type === 'DiscussionNote')
25
+ return 'thread';
26
+ return 'comment';
27
+ }
28
+ /**
29
+ * Where on the diff a code comment sits, as `path:line`, or `undefined` for a note that is not on
30
+ * the diff.
31
+ *
32
+ * A comment on an added or unchanged line has a `new_line`; one on a removed line has only an
33
+ * `old_line`, and is located in the old file, because that is the only place the line exists. A
34
+ * comment on a range reports the line it was anchored to, which is the last line of the range —
35
+ * `position.line_range` in the payload has both ends. A comment on a whole file has no line.
36
+ */
37
+ export function commentLocation(note) {
38
+ if (typeof note !== 'object' || note === null)
39
+ return undefined;
40
+ const position = note.position;
41
+ if (typeof position !== 'object' || position === null)
42
+ return undefined;
43
+ const at = position;
44
+ const newPath = typeof at.new_path === 'string' ? at.new_path : undefined;
45
+ const oldPath = typeof at.old_path === 'string' ? at.old_path : undefined;
46
+ if (typeof at.new_line === 'number' && newPath !== undefined)
47
+ return `${newPath}:${at.new_line}`;
48
+ if (typeof at.old_line === 'number' && oldPath !== undefined)
49
+ return `${oldPath}:${at.old_line}`;
50
+ return newPath ?? oldPath;
51
+ }
52
+ /** Whether a comment is one that "include system" and "code only" selected. */
53
+ export function keepComment(note, options) {
54
+ const type = commentType(note);
55
+ if (options.codeOnly === true)
56
+ return type === 'code';
57
+ return options.includeSystem === true || type !== 'system';
58
+ }
59
+ //# sourceMappingURL=merge-request-comments.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"merge-request-comments.js","sourceRoot":"","sources":["../src/merge-request-comments.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAaH,MAAM,UAAU,WAAW,CAAC,IAAa;IACvC,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,IAAI;QAAE,OAAO,SAAS,CAAC;IAChE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,IAA4C,CAAC;IACtE,IAAI,MAAM,KAAK,IAAI;QAAE,OAAO,QAAQ,CAAC;IACrC,IAAI,IAAI,KAAK,UAAU;QAAE,OAAO,MAAM,CAAC;IACvC,IAAI,IAAI,KAAK,gBAAgB;QAAE,OAAO,QAAQ,CAAC;IAC/C,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,eAAe,CAAC,IAAa;IAC3C,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,IAAI;QAAE,OAAO,SAAS,CAAC;IAChE,MAAM,QAAQ,GAAI,IAA+B,CAAC,QAAQ,CAAC;IAC3D,IAAI,OAAO,QAAQ,KAAK,QAAQ,IAAI,QAAQ,KAAK,IAAI;QAAE,OAAO,SAAS,CAAC;IAExE,MAAM,EAAE,GAAG,QAAmC,CAAC;IAC/C,MAAM,OAAO,GAAG,OAAO,EAAE,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC;IAC1E,MAAM,OAAO,GAAG,OAAO,EAAE,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC;IAC1E,IAAI,OAAO,EAAE,CAAC,QAAQ,KAAK,QAAQ,IAAI,OAAO,KAAK,SAAS;QAAE,OAAO,GAAG,OAAO,IAAI,EAAE,CAAC,QAAQ,EAAE,CAAC;IACjG,IAAI,OAAO,EAAE,CAAC,QAAQ,KAAK,QAAQ,IAAI,OAAO,KAAK,SAAS;QAAE,OAAO,GAAG,OAAO,IAAI,EAAE,CAAC,QAAQ,EAAE,CAAC;IACjG,OAAO,OAAO,IAAI,OAAO,CAAC;AAC5B,CAAC;AAED,+EAA+E;AAC/E,MAAM,UAAU,WAAW,CAAC,IAAa,EAAE,OAAwD;IACjG,MAAM,IAAI,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC;IAC/B,IAAI,OAAO,CAAC,QAAQ,KAAK,IAAI;QAAE,OAAO,IAAI,KAAK,MAAM,CAAC;IACtD,OAAO,OAAO,CAAC,aAAa,KAAK,IAAI,IAAI,IAAI,KAAK,QAAQ,CAAC;AAC7D,CAAC"}
@@ -1,3 +1,4 @@
1
+ import type { GitLabClient, ProjectRef } from './gitlab-client.js';
1
2
  /**
2
3
  * Merge requests are addressed by their per-project `iid`, not the instance-wide `id`, and both
3
4
  * are bare integers that appear side by side in every payload. Passing the wrong one does not
@@ -38,3 +39,47 @@ export interface MergeRequestUpdateInput {
38
39
  export declare function buildMergeRequestUpdateBody(input: MergeRequestUpdateInput): Record<string, unknown>;
39
40
  /** The web URL of a created or updated merge request, when the payload carries one. */
40
41
  export declare function mergeRequestUrl(payload: unknown): string | undefined;
42
+ export interface MergeInput {
43
+ /** The source branch head the caller reviewed. GitLab refuses with 409 if the branch has moved. */
44
+ readonly sha?: string;
45
+ /** Merge once checks pass; on a project with merge trains, this joins the train. */
46
+ readonly autoMerge?: boolean;
47
+ /** GitLab's experimental "merge immediately without restarting the merge train". */
48
+ readonly skipMergeTrain?: boolean;
49
+ readonly squash?: boolean;
50
+ readonly removeSourceBranch?: boolean;
51
+ readonly mergeCommitMessage?: string;
52
+ readonly squashCommitMessage?: string;
53
+ }
54
+ /** What a merge did, which is not always "merged": auto-merge and the train both defer it. */
55
+ export type MergeOutcomeKind = 'merged' | 'autoMerge' | 'mergeTrain' | 'accepted';
56
+ export interface MergeOutcome {
57
+ readonly kind: MergeOutcomeKind;
58
+ /** The merge request as GitLab returned it, or as read back after a 405. */
59
+ readonly mergeRequest: unknown;
60
+ /** True when a 405 was answered by reading the merge request back and finding it merged as asked. */
61
+ readonly confirmedByReadBack: boolean;
62
+ }
63
+ export interface PreparedMerge {
64
+ readonly iid: number;
65
+ readonly body: Record<string, unknown>;
66
+ /** Read from the project only when it changes what happens; undefined otherwise. */
67
+ readonly mergeTrainsEnabled?: boolean;
68
+ }
69
+ export declare function buildMergeBody(input: MergeInput): Record<string, unknown>;
70
+ /**
71
+ * Refuses `--skip-merge-train` on a project that cannot honour it, naming the setting to change.
72
+ *
73
+ * Only an attribute the instance reports as off counts. One it does not report at all, on an older
74
+ * instance or with the feature flag turned off on Self-Managed, is left for GitLab to answer.
75
+ */
76
+ export declare function assertSkipTrainAllowed(project: unknown): void;
77
+ /**
78
+ * Builds the request and runs the reads that decide whether it can be sent. Separate from
79
+ * {@link executeMerge} so a dry run makes the same refusals a real run would.
80
+ */
81
+ export declare function prepareMerge(client: GitLabClient, project: ProjectRef, iid: number, input: MergeInput): Promise<PreparedMerge>;
82
+ /** Sends a prepared merge and turns GitLab's bare refusals into reasons. */
83
+ export declare function executeMerge(client: GitLabClient, project: ProjectRef, prepared: PreparedMerge): Promise<MergeOutcome>;
84
+ /** The one line a person reads after a merge. The caller prints it through `logSafe`. */
85
+ export declare function describeMergeOutcome(outcome: MergeOutcome): string;
@@ -13,8 +13,9 @@
13
13
  * See the License for the specific language governing permissions and
14
14
  * limitations under the License.
15
15
  */
16
- import { ConfigError } from './errors.js';
16
+ import { ConfigError, HttpError } from './errors.js';
17
17
  import { assertNotEmpty, mergeBody } from './json-input.js';
18
+ import { stripControlOneLine } from './text.js';
18
19
  /**
19
20
  * Merge requests are addressed by their per-project `iid`, not the instance-wide `id`, and both
20
21
  * are bare integers that appear side by side in every payload. Passing the wrong one does not
@@ -86,4 +87,187 @@ export function mergeRequestUrl(payload) {
86
87
  const url = payload.web_url;
87
88
  return typeof url === 'string' ? url : undefined;
88
89
  }
90
+ /** A full commit sha: 40 hex characters, or 64 in a SHA-256 repository. */
91
+ const FULL_SHA = /^(?:[0-9a-f]{40}|[0-9a-f]{64})$/i;
92
+ export function buildMergeBody(input) {
93
+ if (input.autoMerge === true && input.skipMergeTrain === true) {
94
+ throw new ConfigError('Pass either --auto-merge or --skip-merge-train, not both: skipping the train merges now, and ' +
95
+ 'GitLab defines no meaning for skipping it later.');
96
+ }
97
+ if (input.sha !== undefined && !FULL_SHA.test(input.sha)) {
98
+ throw new ConfigError(`--sha must be the full commit sha of the source branch head, got ${JSON.stringify(input.sha)}. ` +
99
+ 'It is the "Head" line of mr view, or the "sha" field of its payload.');
100
+ }
101
+ // The train exists so nothing merges untested. Skipping it is a bet on one commit, so the caller
102
+ // names that commit, and a push made after the decision fails with 409 instead of riding along.
103
+ if (input.skipMergeTrain === true && input.sha === undefined) {
104
+ throw new ConfigError('--skip-merge-train needs --sha: the head you reviewed, so that nothing pushed since then ' +
105
+ 'merges without the train testing it.');
106
+ }
107
+ // `merge_when_pipeline_succeeds` is deliberately never sent: GitLab deprecated it in 17.11.
108
+ const body = {
109
+ sha: input.sha,
110
+ auto_merge: input.autoMerge === true ? true : undefined,
111
+ skip_merge_train: input.skipMergeTrain === true ? true : undefined,
112
+ squash: input.squash,
113
+ should_remove_source_branch: input.removeSourceBranch,
114
+ merge_commit_message: input.mergeCommitMessage,
115
+ squash_commit_message: input.squashCommitMessage,
116
+ };
117
+ return Object.fromEntries(Object.entries(body).filter(([, value]) => value !== undefined));
118
+ }
119
+ /**
120
+ * Refuses `--skip-merge-train` on a project that cannot honour it, naming the setting to change.
121
+ *
122
+ * Only an attribute the instance reports as off counts. One it does not report at all, on an older
123
+ * instance or with the feature flag turned off on Self-Managed, is left for GitLab to answer.
124
+ */
125
+ export function assertSkipTrainAllowed(project) {
126
+ const settings = asRecord(project);
127
+ if (settings.merge_trains_enabled === false) {
128
+ throw new ConfigError('This project does not use merge trains, so there is no train to skip. Merge without --skip-merge-train.');
129
+ }
130
+ if (settings.merge_trains_skip_train_allowed === false) {
131
+ throw new ConfigError('This project does not allow skipping the merge train. A Maintainer can turn on "Merge immediately ' +
132
+ 'without restarting the merge train" under Settings > Merge requests > Merge options ' +
133
+ '(merge_trains_skip_train_allowed).');
134
+ }
135
+ if (settings.merge_method === 'ff' || settings.merge_method === 'rebase_merge') {
136
+ throw new ConfigError('GitLab does not support skipping the merge train with the fast-forward or semi-linear merge ' +
137
+ `method, and this project uses ${settings.merge_method === 'ff' ? 'fast-forward' : 'semi-linear'}.`);
138
+ }
139
+ }
140
+ /**
141
+ * Builds the request and runs the reads that decide whether it can be sent. Separate from
142
+ * {@link executeMerge} so a dry run makes the same refusals a real run would.
143
+ */
144
+ export async function prepareMerge(client, project, iid, input) {
145
+ const body = buildMergeBody(input);
146
+ if (input.skipMergeTrain !== true && input.autoMerge !== true)
147
+ return { iid, body };
148
+ const settings = asRecord(await client.getProject(project));
149
+ if (input.skipMergeTrain === true)
150
+ assertSkipTrainAllowed(settings);
151
+ const trains = settings.merge_trains_enabled;
152
+ return { iid, body, mergeTrainsEnabled: typeof trains === 'boolean' ? trains : undefined };
153
+ }
154
+ /** `detailed_merge_status` in words, for the statuses a caller can do something about. */
155
+ const MERGE_BLOCKERS = {
156
+ not_approved: 'it needs approval',
157
+ requested_changes: 'a reviewer has requested changes',
158
+ ci_must_pass: 'its pipeline must pass first, or pass --auto-merge to merge when it does',
159
+ ci_still_running: 'its pipeline is still running; pass --auto-merge to merge when it passes',
160
+ draft_status: 'it is a draft',
161
+ discussions_not_resolved: 'it has unresolved threads',
162
+ conflict: 'it has merge conflicts',
163
+ need_rebase: 'it needs a rebase onto the target branch',
164
+ not_open: 'it is not open',
165
+ blocked_status: 'it is blocked by another merge request',
166
+ checking: 'GitLab is still checking whether it can merge; try again shortly',
167
+ unchecked: 'GitLab has not yet checked whether it can merge; try again shortly',
168
+ external_status_checks: 'an external status check has not passed',
169
+ jira_association_missing: 'its title or description must reference a Jira issue',
170
+ security_policy_violations: 'a security policy blocks it',
171
+ merge_time: 'it is scheduled to merge later',
172
+ locked_paths: 'it changes a locked path',
173
+ locked_lfs_files: 'it changes a locked LFS file',
174
+ title_regex: 'its title does not match the pattern the project requires',
175
+ commits_status: 'its source branch has no commits',
176
+ };
177
+ function explainNotMergeable(iid, current, trainsEnabled) {
178
+ const status = current.detailed_merge_status ?? current.merge_status;
179
+ if ((status === 'mergeable' || status === 'can_be_merged') && trainsEnabled !== false) {
180
+ // Mergeable, yet refused: the usual reason is merge train enforcement, which only lets a merge
181
+ // request in through the train.
182
+ return `!${iid} cannot be merged directly. If this project enforces merge trains, pass --auto-merge to join the train.`;
183
+ }
184
+ if (typeof status !== 'string')
185
+ return `!${iid} cannot be merged, and GitLab did not say why.`;
186
+ return `!${iid} cannot be merged: ${MERGE_BLOCKERS[status] ?? `GitLab reports "${stripControlOneLine(status)}"`}.`;
187
+ }
188
+ /**
189
+ * A 405 that might be our own merge, reported back by a retry. It counts as a success only when
190
+ * the merged head is the one the caller asked for; otherwise someone else may have merged first,
191
+ * and the caller cannot know whose merge it was.
192
+ */
193
+ function assertMergedAsAsked(iid, current, sha) {
194
+ if (sha !== undefined && typeof current.sha === 'string' && current.sha.toLowerCase() === sha.toLowerCase())
195
+ return;
196
+ const by = asRecord(current.merged_by ?? current.merge_user).username;
197
+ const who = typeof by === 'string' ? ` by ${stripControlOneLine(by)}` : '';
198
+ const when = typeof current.merged_at === 'string' ? ` at ${stripControlOneLine(current.merged_at)}` : '';
199
+ const head = typeof current.sha === 'string' ? stripControlOneLine(current.sha) : 'not reported';
200
+ const why = sha === undefined
201
+ ? 'Without --sha there is no telling whether that was this merge.'
202
+ : `Its head was ${head}, not ${sha}.`;
203
+ throw new HttpError(`!${iid} is already merged${who}${when}. ${why}`, 405, current);
204
+ }
205
+ function explainFailure(error, iid, sha) {
206
+ if (error.status === 400 && /sha/i.test(error.message)) {
207
+ return new HttpError('This group or instance requires --sha to merge. Pass the head you reviewed: the "Head" line of mr view. ' +
208
+ `(${error.message})`, error.status, error.body);
209
+ }
210
+ if (error.status === 409) {
211
+ return new HttpError(`The source branch of !${iid} has moved since ${sha ?? 'the sha you passed'}. Review the new head, ` +
212
+ 'then pass its sha.', error.status, error.body);
213
+ }
214
+ if (error.status === 422) {
215
+ return new HttpError(`GitLab tried to merge !${iid} and could not, usually because of a conflict or a server hook. ` +
216
+ `(${error.message})`, error.status, error.body);
217
+ }
218
+ return error;
219
+ }
220
+ function outcomeKind(merged, prepared) {
221
+ if (merged.state === 'merged')
222
+ return 'merged';
223
+ if (prepared.body.auto_merge === true)
224
+ return prepared.mergeTrainsEnabled === true ? 'mergeTrain' : 'autoMerge';
225
+ return 'accepted';
226
+ }
227
+ /** Sends a prepared merge and turns GitLab's bare refusals into reasons. */
228
+ export async function executeMerge(client, project, prepared) {
229
+ const { iid, body } = prepared;
230
+ const sha = typeof body.sha === 'string' ? body.sha : undefined;
231
+ try {
232
+ const merged = await client.mergeMergeRequest(project, iid, body);
233
+ return { kind: outcomeKind(asRecord(merged), prepared), mergeRequest: merged, confirmedByReadBack: false };
234
+ }
235
+ catch (error) {
236
+ if (!(error instanceof HttpError))
237
+ throw error;
238
+ if (error.status !== 405)
239
+ throw explainFailure(error, iid, sha);
240
+ // 405 covers every reason a merge request cannot merge and names none of them. The merge
241
+ // request itself knows, and if a retried merge had already succeeded, it says that too.
242
+ const current = asRecord(await client.getMergeRequest(project, iid));
243
+ if (current.state === 'merged') {
244
+ assertMergedAsAsked(iid, current, sha);
245
+ return { kind: 'merged', mergeRequest: current, confirmedByReadBack: true };
246
+ }
247
+ throw new HttpError(explainNotMergeable(iid, current, prepared.mergeTrainsEnabled), 405, error.body);
248
+ }
249
+ }
250
+ /** The one line a person reads after a merge. The caller prints it through `logSafe`. */
251
+ export function describeMergeOutcome(outcome) {
252
+ const mr = asRecord(outcome.mergeRequest);
253
+ const ref = `!${typeof mr.iid === 'number' ? mr.iid : '?'}`;
254
+ const target = typeof mr.target_branch === 'string' ? mr.target_branch : 'its target branch';
255
+ switch (outcome.kind) {
256
+ case 'merged': {
257
+ const commit = mr.merge_commit_sha ?? mr.squash_commit_sha;
258
+ const short = typeof commit === 'string' ? ` (${commit.slice(0, 8)})` : '';
259
+ const note = outcome.confirmedByReadBack ? ' Confirmed by reading it back after GitLab refused a retry.' : '';
260
+ return `Merged ${ref} into ${target}${short}.${note}`;
261
+ }
262
+ case 'mergeTrain':
263
+ return `${ref} joined the merge train for ${target}.`;
264
+ case 'autoMerge':
265
+ return `${ref} will merge into ${target} when its checks pass.`;
266
+ case 'accepted':
267
+ return `GitLab accepted the merge of ${ref} into ${target} but has not finished it. Check with mr view.`;
268
+ }
269
+ }
270
+ function asRecord(value) {
271
+ return (typeof value === 'object' && value !== null ? value : {});
272
+ }
89
273
  //# sourceMappingURL=merge-requests.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"merge-requests.js","sourceRoot":"","sources":["../src/merge-requests.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"merge-requests.js","sourceRoot":"","sources":["../src/merge-requests.ts"],"names":[],"mappings":"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"}
package/lib/tables.d.ts CHANGED
@@ -15,6 +15,7 @@ export declare const branchColumns: ReadonlyArray<Column<Row>>;
15
15
  export declare const tagColumns: ReadonlyArray<Column<Row>>;
16
16
  export declare const commitColumns: ReadonlyArray<Column<Row>>;
17
17
  export declare const mergeRequestColumns: ReadonlyArray<Column<Row>>;
18
+ export declare const commentColumns: ReadonlyArray<Column<Row>>;
18
19
  export declare const jobColumns: ReadonlyArray<Column<Row>>;
19
20
  export declare const variableColumns: ReadonlyArray<Column<Row>>;
20
21
  export declare const environmentColumns: ReadonlyArray<Column<Row>>;
package/lib/tables.js CHANGED
@@ -13,6 +13,7 @@
13
13
  * See the License for the specific language governing permissions and
14
14
  * limitations under the License.
15
15
  */
16
+ import { commentLocation, commentType } from './merge-request-comments.js';
16
17
  /** Reads a nested field without asserting a shape on server JSON. */
17
18
  function at(row, ...path) {
18
19
  let cursor = row;
@@ -73,6 +74,25 @@ export const mergeRequestColumns = [
73
74
  { header: 'UPDATED', value: (row) => day(row.updated_at) },
74
75
  { header: 'TITLE', value: (row) => row.title },
75
76
  ];
77
+ /** How much of a comment's first line a table shows before cutting it. */
78
+ const BODY_WIDTH = 80;
79
+ /** The first line of a comment, cut to fit a table row. `--json` has the whole body. */
80
+ function firstLine(value) {
81
+ if (typeof value !== 'string')
82
+ return value;
83
+ const line = value.trimStart().split('\n', 1)[0]?.trimEnd() ?? '';
84
+ return line.length > BODY_WIDTH ? `${line.slice(0, BODY_WIDTH - 1)}…` : line;
85
+ }
86
+ export const commentColumns = [
87
+ { header: 'ID', value: (row) => row.id },
88
+ { header: 'AUTHOR', value: (row) => at(row, 'author', 'username') },
89
+ { header: 'CREATED', value: (row) => day(row.created_at) },
90
+ { header: 'TYPE', value: (row) => commentType(row) },
91
+ { header: 'LOCATION', value: (row) => commentLocation(row) },
92
+ // Only a resolvable note can be resolved; anything else is a dash, not a "no".
93
+ { header: 'RESOLVED', value: (row) => (row.resolvable === true ? flag(row.resolved) : undefined) },
94
+ { header: 'BODY', value: (row) => firstLine(row.body) },
95
+ ];
76
96
  export const jobColumns = [
77
97
  { header: 'ID', value: (row) => row.id },
78
98
  { header: 'STATUS', value: (row) => row.status },
package/lib/tables.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"tables.js","sourceRoot":"","sources":["../src/tables.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tables.js","sourceRoot":"","sources":["../src/tables.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@simplysf/simply-gitlab-core",
3
3
  "description": "Configuration, authentication, HTTP client, and shared logic for working with GitLab",
4
- "version": "0.6.0",
4
+ "version": "0.8.0",
5
5
  "author": "@ClayChipps",
6
6
  "homepage": "https://github.com/SimplySF/simply-gitlab",
7
7
  "bugs": "https://github.com/SimplySF/simply-gitlab/issues",
@@ -127,5 +127,5 @@
127
127
  "output": []
128
128
  }
129
129
  },
130
- "gitHead": "4bcb59a3a8f17ef92426e5f0cf7f7a9a30da23c8"
130
+ "gitHead": "fae77a07bb11a4f17afe3ff00a216c3ac100e308"
131
131
  }