summaryrefslogtreecommitdiffstatshomepage
path: root/bridge/gitlab
Commit message (Collapse)AuthorAge
* chore: gofmt simplify gitlab/export_test.go (#1392)Matěj Cepl2 days
|
* fix: use correct url for gitlab PATs (#1384)sudoforge4 days
| | | | Closes: #1268 Change-Id: Ifc029c7058b080b3d9859eaffaa4b9febd2d80b1
* fix: refactor how gitlab title changes are detected (#1370)sudoforge6 days
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This change refactors how issue title changes from gitlab events are detected, fixing an issue (due to upstream changing the format of the event body from markdown-esque to html), and improving on error handling. The error boiled down to a change in the issue title format. Gitlab changed this on April 17 2025 with the release of version 17.11 [0], although the only place a reference to this change exists is in the changelog [1], which is not linked to from the releases page. To account for the potential future in which other fields need to be parsed in this way, an internal parser library was introduced at `//bridge/gitlab/parser:parser.go` with initial support for parsing title change messages. An issue was opened with the Gitlab team discussing the fact that this was a breaking change [2]. This may lead to moving title changes (or maybe all changes) to `resource_*_events`, which would likely provide a smoother experience for our use case. Debugging this issue surfaced a few pain points with this bridge: - Errors are few and far between, and when they do exist and are managed, they are often not propagated, often existing as simple `fmt.Printf` calls - Inconsistent and uninformative logging structure when there _are_ errors, leading to challenges in debugging unexpected behavior - Fragility: we are parsing random text from event fields (for title changes and more). This will likely lead to future breakage should Gitlab change the format of other fields. Ideally, the gitlab SDK would start classifying notes and have fields like `type`, `old`, `new`... but this is unlikely to happen in the short term [0]: https://about.gitlab.com/releases/2025/04/17/gitlab-17-11-released/ [1]: https://gitlab.com/gitlab-org/gitlab/-/commit/b3e1fdcf45f8b18110a2f5217b9964a11616d316#ab09011fa121d0a2bb9fa4ca76094f2482b902b7_5_232 [2]: https://gitlab.com/gitlab-org/gitlab/-/issues/536827 Closes: #1367 Change-Id: I3bd7fa1c39a9e4dd2176d6e482e30ab68965f6e7
* deps(crypto): bump golang.org/x/crypto from v0.26.0 to v0.31.0 (fix for ↵Matěj Cepl2025-03-18
| | | | | | | | | CVE-2024-45337) (#1312) To avoid CVE-2024-45337 ("Misuse of ServerConfig.PublicKeyCallback may cause authorization bypass in golang.org/x/crypto") Related is also moving from the abandoned github.com/xanzy/go-gitlab to the maintained gitlab.com/gitlab-org/api/client-go.
* core: make label a common type, in a similar fashion as for status (#1252)Michael Muré2024-08-25
| | | This will be useful for Board, and likely code review support later
* feat: update references to the git-bug organization (#1249)sudoforge2024-08-24
| | | | | | | | The repository was recently moved to the git-bug organization on github. This change refactors references to the repository to ensure that they use the updated owner URI. Closes: #1243 Change-Id: I799712354c6ba25cdd8b06286275850c52efe6ff
* build(deps): bump github.com/xanzy/go-gitlab from 0.90.0 to 0.106.0 (#1167)dependabot[bot]2024-07-16
| | | | | | | | | | | | | | | | | | | | | | | | * build(deps): bump github.com/xanzy/go-gitlab from 0.90.0 to 0.106.0 Bumps [github.com/xanzy/go-gitlab](https://github.com/xanzy/go-gitlab) from 0.90.0 to 0.106.0. - [Changelog](https://github.com/xanzy/go-gitlab/blob/main/releases_test.go) - [Commits](https://github.com/xanzy/go-gitlab/compare/v0.90.0...v0.106.0) --- updated-dependencies: - dependency-name: github.com/xanzy/go-gitlab dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com> * migrate --------- Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: 6543 <6543@obermui.de>
* [DATALAD RUNCMD] Run codespell -wYaroslav Halchenko2023-01-23
| | | | | | | | | | | | | | === Do not change lines below === { "chain": [], "cmd": "codespell -w", "exit": 0, "extra_inputs": [], "inputs": [], "outputs": [], "pwd": "." } ^^^ Do not change lines above ^^^
* added EventMentionedInCommitHenrik Buestad2023-01-13
|
* make go1.19 fmt happyMichael Muré2023-01-11
|
* cache: fix some bugs after refactorMichael Muré2022-12-23
|
* cache: tie up the refactor up to compilingMichael Muré2022-12-21
|
* WIPMichael Muré2022-11-28
|
* core: bubble up the comment ID when created, or edited the first commentMichael Muré2022-11-13
|
* bug: have a type for combined ids, fix ↵Michael Muré2022-08-22
| | | | https://github.com/MichaelMure/git-bug/issues/653
* move bug.Status in entities/common for reuseMichael Muré2022-08-20
|
* move {bug,identity} to /entities, move input to /commandsMichael Muré2022-08-18
|
* entity/dag: proper base operation for simplified implementationMichael Muré2022-07-25
| | | | | | | | - reduce boilerplace necessary to implement an operation - consolidate what an operation is in the core, which in turn pave the way for a generic cache layer mechanism - avoid the previously complex unmarshalling process - support operation metadata from the core - simplified testing
* refactor(809): eliminate need to defer CleanupTestRepos()Steve Moyer2022-06-16
|
* Allow new gitlab PAT formatGaël James2022-03-31
|
* Merge pull request #571 from 5nord/add-new-gitlab-iteratorMichael Muré2022-02-01
|\ | | | | [gitlab] Add new iterator with state change events
| * gitlab: re-enable previously broken testMichael Muré2021-12-05
| |
| * gitlab: order events on the flyMichael Muré2021-12-05
| |
| * Add some documentation commentsMatthias Simon2021-04-23
| |
| * gitlab: Add new iterator with state change eventsMatthias Simon2021-04-23
| | | | | | | | | | | | | | | | | | Retrieving events is spread across various various Gitlab APIs. This makes importing and sorting Gitlab events by time quite complicated. This commit replaces the old iterators with a goroutine/channel-based iterator, which merges the individual Gitlab API streams into a single (sorted) event stream.
* | Bump github.com/xanzy/go-gitlab from 0.50.4 to 0.54.1 (#732)dependabot[bot]2022-01-05
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Bump github.com/xanzy/go-gitlab from 0.50.4 to 0.54.1 Bumps [github.com/xanzy/go-gitlab](https://github.com/xanzy/go-gitlab) from 0.50.4 to 0.54.1. - [Release notes](https://github.com/xanzy/go-gitlab/releases) - [Changelog](https://github.com/xanzy/go-gitlab/blob/master/releases_test.go) - [Commits](https://github.com/xanzy/go-gitlab/compare/v0.50.4...v0.54.1) --- updated-dependencies: - dependency-name: github.com/xanzy/go-gitlab dependency-type: direct:production update-type: version-update:semver-minor ... Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: 6543 <6543@obermui.de>
* | Update URL of GitLab access token settingsRemi Rampin2021-10-13
| |
* | Fix GitLab showing https:/../personal_access_tokenRemi Rampin2021-10-13
| | | | | | | | | | Using path.Join() to concatenate URLs doesn't really make sense, and in particular will change "//" to "/".
* | Bump github.com/xanzy/go-gitlab from 0.48.0 to 0.50.0dependabot[bot]2021-05-24
| | | | | | | | | | | | | | | | | | Bumps [github.com/xanzy/go-gitlab](https://github.com/xanzy/go-gitlab) from 0.48.0 to 0.50.0. - [Release notes](https://github.com/xanzy/go-gitlab/releases) - [Changelog](https://github.com/xanzy/go-gitlab/blob/master/releases_test.go) - [Commits](https://github.com/xanzy/go-gitlab/compare/v0.48.0...v0.50.0) Signed-off-by: dependabot[bot] <support@github.com>
* | CLI: Add non-interactive option to interactive commands (#651)Sascha2021-05-09
|/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Add option to skip the AvatarURL input request Using an empty string for the avatar cli flag e.g. `git-bug user create -a ""` will still result in a prompt. As the avatar URL is an optional option, it should be possible to skip asking for it entirely. Otherwise automated user creation via a script must make use of pipe hacks. * Add global --non-interactive cmdline option * Replace --skipAvatar for --non-interactive option * Cmd BugAdd: respect non-interactive option * Cmd bridge configure: respect non-interactive opt * Cmd CommentAdd: respect non-interactive option * Cmd CommentEdit: respect non-interactive option * Cmd TermUI: respect non-interactive option * Cmd TitleEdit: respect non-interactive option * Remove global non-interactive option * Cmd UserCreate: Use local non-interactive option * Cmd BugAdd: Use local non-interactive option * Cmd BridgeConfigure: Use local non-interactive option * Cmd CommentAdd: Use local non-interactive option * Cmd CommentEdit: Use local non-interactive option * Cmd TermUI: Drop non-interactive option It should be obviouse that the termui is an interactive command. * Cmd TitleEdit: Use local non-interactive option * Update docs * Bridge GitHub: respect non-interactive option * Bridge GitLab: respect non-interactive option * Bridge Jira: respect non-interactive and token opt * Fix failing compilation * Bridge launchpad: respect non-interactive option * bridge: isNonInteractive --> interactive Co-authored-by: Michael Muré <batolettre@gmail.com>
* make sure every text input is safe and validatedMichael Muré2021-04-17
| | | | fix #630
* bug: migrate to the DAG entity structure!Michael Muré2021-02-14
|
* identity: PR fixesMichael Muré2021-02-14
|
* deal with the previous changesMichael Muré2021-02-14
|
* Fix comparison mix-up in gitlab importerMatthias Simon2021-02-07
|
* cleanup title on gitlab importvince2020-10-28
|
* Vendor: updage xanzy/go-gitlab to v0.38.2 (#473)65432020-10-25
| | | | | * build(deps): bump github.com/xanzy/go-gitlab from 0.33.0 to 0.38.2 * migrate * refactor
* repo: use go-git in more places, fix pushMichael Muré2020-10-04
|
* bridge: store credentials in the Keyring instead of the git configMichael Muré2020-09-29
|
* gitlab: skip the broken test as "known broken" :(Michael Muré2020-07-26
|
* update go-gitlabMichael Muré2020-07-26
|
* repository: remove tie to Bug, improved and reusable testingMichael Muré2020-06-26
| | | | | | | | | - allow the creation of arbitrary Lamport clocks, freeing the way to new entities and removing Bug specific (upper layer) code. - generalize the memory-only and persisted Lamport clocks behind a common interface - rework the tests to provide reusable testing code for a Repo, a Clock, a Config, opening a path to add a new Repo implementation more easily - test previously untested components with those new tests Note: one problem found during this endeavor is that `identity.Version` also need to store one time + Lamport time for each other Entity (Bug, config, PR ...). This could possibly done without breaking change but it would be much easier to wait for https://github.com/MichaelMure/git-bug-migration to happen.
* bug: harmonize how time are used, fix some issues in command special formatsMichael Muré2020-06-25
| | | | This assume that the convertion from time.Time <--> Unix timestamp is lossless which seems to be.
* gitlab: fix iterator (paginate with first index 1) and avoid the trailing ↵Michael Muré2020-04-04
| | | | API call
* gitlab: refactor the iterator, fix bugsMichael Muré2020-03-28
| | | | Notably, properly reset sub iterators when changing to the next issue
* jira/gitlab: fix a bad login handling in the configuratorMichael Muré2020-03-28
|
* gitlab: match bugs on IDs + baseURL because the URL is not stableMichael Muré2020-03-28
|
* gitlab: fix bugs import urlamine2020-03-15
|
* identity: bring back the login to hold that info from bridges (purely ↵Michael Muré2020-02-25
| | | | informational)
* Merge pull request #341 from MichaelMure/bridges-default-loginMichael Muré2020-02-23
|\ | | | | bridge: record the login used during the configure and use it as default credential