summaryrefslogtreecommitdiffstats
path: root/vendor/modules.txt
AgeCommit message (Collapse)Author
2024-06-01Return errors from blameDeletedLines instead of just logging themStefan Haller
I guess when I originally wrote this code I just didn't know how to do that...
2024-05-19Add default lazygit config generator for Config.md from JSON schemaKarim Khaleel
2024-04-22Switch git-todo-parser from fsmiamoto original repo to stefanhaller's forkStefan Haller
Sometimes it takes a while to get PRs accepted upstream, and this blocks our progress. Since I'm pretty much the only one making changes there anyway, it makes sense to point to my fork directly.
2024-04-18Bump gocuiStefan Haller
In Gui.onWorker we only make the minimum possible change to get things to compile after the API-breaking change of the gocui update; we'll make this cleaner later in this branch.
2024-03-29Remove our yaml forkStefan Haller
Switch back to the official go-yaml package.
2024-03-09Bump gocuiStefan Haller
2024-03-03Bump gocuiStefan Haller
This resolves the regression from the last gocui bump that strikethrough no longer worked.
2024-03-01Bump gocuiStefan Haller
The main change here is to bump tcell to v2.7.1, which should fix problems with multibyte characters on Windows.
2024-02-18Switch to github.com/adrg/xdgChing Pei Yang
2024-01-30Use slimmer scrollbarsJesse Duffield
The previous scrollbars were too chunky and encroached too much on a view's content. The new ones are slim and right-aligned so they encroach into dead space between views which is much better
2024-01-19Add range selection ability on list contextsJesse Duffield
This adds range select ability in two ways: 1) Sticky: like what we already have with the staging view i.e. press v then use arrow keys 2) Non-sticky: where you just use shift+up/down to expand the range The state machine works like this: (no range, press 'v') -> sticky range (no range, press arrow) -> no range (no range, press shift+arrow) -> nonsticky range (sticky range, press 'v') -> no range (sticky range, press arrow) -> sticky range (sticky range, press shift+arrow) -> nonsticky range (nonsticky range, press 'v') -> no range (nonsticky range, press arrow) -> no range (nonsticky range, press shift+arrow) -> nonsticky range
2024-01-10Bump gocuiStefan Haller
... and switch back from stefanhaller's tcell fork to the official tcell. This basically reverts 7ccb871a459.
2023-12-09Bump gocuiStefan Haller
2023-12-02Add invopop/jsonschema forkKarim Khaleel
2023-09-25Don't select current search result when showing search statusJesse Duffield
Previously there was no way to render a view's search status without also moving the cursor to the current search match. This caused issues where we wanted to display the status after leaving the view and coming back, or when beginning a new search from within the view. This commit separates the two use cases so we only move the cursor when we're actually selecting the next search match
2023-09-11Provide a simple way to debug an integration testStefan Haller
2023-09-09Bump gocuiStefan Haller
2023-08-15Bump gocuiStefan Haller
2023-08-07Add a Click() primitive to the integration test librarySimon Whitaker
2023-08-06Bump gocuiStefan Haller
... and import stefanhaller's tcell fork for real rather than just replacing it This solves the problem that people trying to "go install github.com/jesseduffield/lazygit@latest" would get the error go: github.com/jesseduffield/lazygit@latest (in github.com/jesseduffield/lazygit@v0.40.0): The go.mod file for the module providing named packages contains one or more replace directives. It must not contain directives that would cause it to be interpreted differently than if it were the main module.
2023-08-02Remove file watcher codeJesse Duffield
Now that we refresh upon focus, we can scrap this file watching code. Stefan says few git UIs use file watching, and I understand why: the reason this code was problematic in the first place is that watching files is expensive and if you have too many open file handles that can cause problems. Importantly: this code that's being removed was _already_ dead.
2023-08-02Bump gocuiStefan Haller
2023-08-02Point tcell at stefanhaller's forkStefan Haller
This is temporary as long as https://github.com/gdamore/tcell/pull/599 is not merged. Once that PR is merged, we can revert this.
2023-07-30Remove secureexec packageJesse Duffield
From the go 1.19 release notes: Command and LookPath no longer allow results from a PATH search to be found relative to the current directory. This removes a common source of security problems but may also break existing programs that depend on using, say, exec.Command("prog") to run a binary named prog (or, on Windows, prog.exe) in the current directory. See the os/exec package documentation for information about how best to update such programs.
2023-07-30Standardise on using lo for slice functionsJesse Duffield
We've been sometimes using lo and sometimes using my slices package, and we need to pick one for consistency. Lo is more extensive and better maintained so we're going with that. My slices package was a superset of go's own slices package so in some places I've just used the official one (the methods were just wrappers anyway). I've also moved the remaining methods into the utils package.
2023-07-30Write unit tests with the help of aferoJesse Duffield
Afero is a package that lets you mock out a filesystem with an in-memory filesystem. It allows us to easily create the files required for a given test without worrying about a cleanup step or different tests tripping on eachother when run in parallel. Later on I'll standardise on using afero over the vanilla os package
2023-07-26bring back yaml library forkhatredholder
2023-07-23Better word wrapJesse Duffield
Word wrapping has been pretty bad so far so let's fix that.
2023-07-19Add integration test for accordion modeJesse Duffield
2023-07-19Fix accordion issueJesse Duffield
This fixes the issue in accordion mode where the current line wasn't in the viewport upon focus. It doesn't perfectly fix it: the current line always appears at the top of the view. But it's good enough to cut a new release. The proper fix is to only focus the line after the view has had its height adjusted.
2023-07-10Use an interface for tasks instead of a concrete structJesse Duffield
By using an interface for tasks we can use a fake implementation in tests with extra methods
2023-07-09Use first class task objects instead of global counterJesse Duffield
The global counter approach is easy to understand but it's brittle and depends on implicit behaviour that is not very discoverable. With a global counter, if any goroutine accidentally decrements the counter twice, we'll think lazygit is idle when it's actually busy. Likewise if a goroutine accidentally increments the counter twice we'll think lazygit is busy when it's actually idle. With the new approach we have a map of tasks where each task can either be busy or not. We create a new task and add it to the map when we spawn a worker goroutine (among other things) and we remove it once the task is done. The task can also be paused and continued for situations where we switch back and forth between running a program and asking for user input. In order for this to work with `git push` (and other commands that require credentials) we need to obtain the task from gocui when we create the worker goroutine, and then pass it along to the commands package to pause/continue the task as required. This is MUCH more discoverable than the old approach which just decremented and incremented the global counter from within the commands package, but it's at the cost of expanding some function signatures (arguably a good thing). Likewise, whenever you want to call WithWaitingStatus or WithLoaderPanel the callback will now have access to the task for pausing/ continuing. We only need to actually make use of this functionality in a couple of places so it's a high price to pay, but I don't know if I want to introduce a WithWaitingStatusTask and WithLoaderPanelTask function (open to suggestions).
2023-07-08Bump gocuiJesse Duffield
This includes new gocui logic for tracking busy/idle program state
2023-07-03View filtering (#2680)Jesse Duffield
2023-07-02Bump gocuiJesse Duffield
2023-07-02Bump git-todo-parserGustavo Krieger
2023-06-01Add integration test for commit highlighting on focusJesse Duffield
A better refactor would be to allow matchers to assert against either a string or a slice of cells, so that I could have the same ergonomics that I have elsewhere, but this is a start.
2023-05-30Merge pull request #2490 from ↵Jesse Duffield
jesseduffield/dependabot/go_modules/golang.org/x/net-0.7.0
2023-05-30Merge pull request #2508 from Ryooooooga/remove-jesseduffield-yamlJesse Duffield
2023-04-29Bump github.com/fsmiamoto/git-todo-parser to latest versionStefan Haller
2023-04-24bump clipboard package for WSL supportAndre Mueller
2023-04-15Bump github.com/fsmiamoto/git-todo-parser to latest main versionStefan Haller
2023-03-24remove old integration test recording codeJesse Duffield
2023-03-19bump gocui to fix race conditionJesse Duffield
2023-03-19Bump golang.org/x/net from 0.0.0-20220722155237-a158d28d115b to 0.7.0dependabot[bot]
Bumps [golang.org/x/net](https://github.com/golang/net) from 0.0.0-20220722155237-a158d28d115b to 0.7.0. - [Release notes](https://github.com/golang/net/releases) - [Commits](https://github.com/golang/net/commits/v0.7.0) --- updated-dependencies: - dependency-name: golang.org/x/net dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com>
2023-03-19Better escape code parsing (thanks to Ryooooooga) (#2514)Jesse Duffield
2023-03-17build: remove `github.com/jesseduffield/yaml` packageRyooooooga
2023-02-25Improve staging panel integration testsJesse Duffield
2023-02-21build: bump tcell versionRyooooooga
2023-02-19show snapshot of lazygit when test fails for easier investigationJesse Duffield