Commit graph

566 commits

Author SHA1 Message Date
Christoph Rüßler
6a024b9c54 Use gitoxide in get_commits_info 2025-10-30 09:14:13 +01:00
Christoph Rüßler
f40ce7bfb3 Use gix_repo in get_tags 2025-10-30 09:14:13 +01:00
extrawurst
2374e00302
validate path on startup for gix aswell (#2768)
so far we only try to open using the legacy libgit2 based one
2025-10-29 22:07:46 +01:00
extrawurst
58490961c5
update log (#2766) 2025-10-29 15:27:28 +01:00
extrawurst
1032cccd55
cleanup format strings (#2765) 2025-10-29 13:58:27 +01:00
extrawurst
6bb216c0d4
fix warnings and deny deprecated (#2753)
* fix gitoxide warning

* do not allow deprecated fn
2025-10-28 18:03:19 +01:00
linkmauve
88ace76db5
Fix typos (#2740)
Thanks to typos for finding those!

Co-authored-by: extrawurst <776816+extrawurst@users.noreply.github.com>
2025-10-28 16:35:05 +01:00
linkmauve
26a38183cf
Fix all mismatched_lifetime_syntaxes warnings (#2727) 2025-10-28 16:34:42 +01:00
dependabot[bot]
5f23781c10
Bump the cargo-minor group across 1 directory with 8 updates (#2750)
Bumps the cargo-minor group with 7 updates in the / directory:

| Package | From | To |
| --- | --- | --- |
| [bitflags](https://github.com/bitflags/bitflags) | `2.9.1` | `2.10.0` |
| [bytesize](https://github.com/bytesize-rs/bytesize) | `2.0.1` | `2.1.0` |
| [indexmap](https://github.com/indexmap-rs/indexmap) | `2.9.0` | `2.12.0` |
| [notify](https://github.com/notify-rs/notify) | `8.0.0` | `8.2.0` |
| [rayon-core](https://github.com/rayon-rs/rayon) | `1.12.1` | `1.13.0` |
| [syntect](https://github.com/trishume/syntect) | `5.2.0` | `5.3.0` |
| [rayon](https://github.com/rayon-rs/rayon) | `1.10.0` | `1.11.0` |



Updates `bitflags` from 2.9.1 to 2.10.0
- [Release notes](https://github.com/bitflags/bitflags/releases)
- [Changelog](https://github.com/bitflags/bitflags/blob/main/CHANGELOG.md)
- [Commits](https://github.com/bitflags/bitflags/compare/2.9.1...2.10.0)

Updates `bytesize` from 2.0.1 to 2.1.0
- [Release notes](https://github.com/bytesize-rs/bytesize/releases)
- [Changelog](https://github.com/bytesize-rs/bytesize/blob/master/CHANGELOG.md)
- [Commits](https://github.com/bytesize-rs/bytesize/compare/bytesize-v2.0.1...bytesize-v2.1.0)

Updates `indexmap` from 2.9.0 to 2.12.0
- [Changelog](https://github.com/indexmap-rs/indexmap/blob/main/RELEASES.md)
- [Commits](https://github.com/indexmap-rs/indexmap/compare/2.9.0...2.12.0)

Updates `notify` from 8.0.0 to 8.2.0
- [Release notes](https://github.com/notify-rs/notify/releases)
- [Changelog](https://github.com/notify-rs/notify/blob/main/CHANGELOG.md)
- [Commits](https://github.com/notify-rs/notify/compare/notify-8.0.0...notify-8.2.0)

Updates `rayon-core` from 1.12.1 to 1.13.0
- [Changelog](https://github.com/rayon-rs/rayon/blob/main/RELEASES.md)
- [Commits](https://github.com/rayon-rs/rayon/compare/rayon-core-v1.12.1...rayon-core-v1.13.0)

Updates `serde` from 1.0.219 to 1.0.228
- [Release notes](https://github.com/serde-rs/serde/releases)
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.219...v1.0.228)

Updates `syntect` from 5.2.0 to 5.3.0
- [Release notes](https://github.com/trishume/syntect/releases)
- [Changelog](https://github.com/trishume/syntect/blob/master/CHANGELOG.md)
- [Commits](https://github.com/trishume/syntect/compare/v5.2.0...v5.3.0)

Updates `rayon` from 1.10.0 to 1.11.0
- [Changelog](https://github.com/rayon-rs/rayon/blob/main/RELEASES.md)
- [Commits](https://github.com/rayon-rs/rayon/compare/rayon-core-v1.10.0...rayon-core-v1.11.0)

---
updated-dependencies:
- dependency-name: bitflags
  dependency-version: 2.10.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: cargo-minor
- dependency-name: bytesize
  dependency-version: 2.1.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: cargo-minor
- dependency-name: indexmap
  dependency-version: 2.12.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: cargo-minor
- dependency-name: notify
  dependency-version: 8.2.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: cargo-minor
- dependency-name: rayon-core
  dependency-version: 1.13.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: cargo-minor
- dependency-name: serde
  dependency-version: 1.0.228
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: cargo-minor
- dependency-name: syntect
  dependency-version: 5.3.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: cargo-minor
- dependency-name: rayon
  dependency-version: 1.11.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: cargo-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: extrawurst <776816+extrawurst@users.noreply.github.com>
2025-10-28 16:34:17 +01:00
Christoph Rüßler
dd475801ae
Restore default for showUntrackedFiles (#2751)
This restores the behaviour of `gitui` <= 0.27.
2025-10-28 15:59:03 +01:00
Christoph Rüßler
db211e5ac7
Update gix from 0.71.0 to 0.74.1 (#2745)
* Update gix from 0.71.0 to 0.74.1

* Bump MSRC from 1.81 to 1.82

This is required by `gitoxide` 0.74.

* Address clippy issues

* Add getrandom and rustix to deny.toml

* Document reasons for ignoring duplicates
2025-10-27 18:37:30 +01:00
Christoph Rüßler
60912c0b47
Derive Default per clippy recommendation (#2712) 2025-09-08 16:49:15 +02:00
Christoph Rüßler
fd46b9a0c1
Use gitoxide for get_tags (#2664) 2025-08-06 14:26:19 -07:00
Christoph Rüßler
fdd5a19d20
Extract GixError (#2687) 2025-08-05 12:55:59 -07:00
Christoph Rüßler
6685f9adb3
Use gitoxide in get_status (#2673) 2025-07-28 19:28:02 +02:00
Peer Sommerlund
6d0a2ec115
Minimal docs at module level (#2639) 2025-06-24 09:23:02 +02:00
extrawurst
69fd7e664c bump git2-hooks version 2025-05-26 23:22:26 +02:00
Christoph Rüßler
2d7d1730ba
Use gitoxide in get_commit_info (#2654)
* Implement From<gix::ObjectId> for CommitId

* Use gitoxide in get_commit_info
2025-05-26 23:06:36 +02:00
Christoph Rüßler
7625277953
Have cargo-sort 2.0.1 sort Cargo.toml's (#2653) 2025-05-24 22:14:26 +02:00
extrawurst
3453e4624d fix nightly 2025-04-30 10:37:38 +02:00
Johannes Agricola
e08d954573
Clean up a few #[allow]s (#2614) 2025-04-16 10:45:08 +02:00
Johannes Agricola
7f88934d05
Bump msrv to 1.81 (#2613)
Co-authored-by: Naseschwarz <naseschwarz@0x53a.de>
2025-04-16 09:21:06 +02:00
Joshix-1
711210b97b
Run git-hooks more correctly (#2483) 2025-04-15 15:01:39 +02:00
extrawurst
9781608584
upgrade dirs (#2569) 2025-04-15 09:22:50 +02:00
extrawurst
eeebb0a647
fix cargo deny advisory warning (#2598) 2025-04-07 18:02:34 +02:00
extrawurst
cc907996f4
fix latest clippy (#2597) 2025-04-07 16:06:00 +02:00
Johannes Agricola
7f75307f6e
Resolve core.hooksPath relative to GIT_WORK_TREE (#2571)
* Resolve core.hooksPath relative to GIT_WORK_TREE

git supports relative values in core.hooksPath.

`man git-config`:

> A relative path is taken as relative to the directory where the hooks are
> run (see the "DESCRIPTION" section of githooks[5]).

`man githooks`:

> Before Git invokes a hook, it changes its working directory to either
> $GIT_DIR in a bare repository or the root of the working tree in a >
> non-bare repository.

I.e. relative paths in core.hooksPath in non-bare repositories are always
relative to GIT_WORK_TREE.

There is a further exception; I believe this is not considered for path
resolution:

> An exception are hooks triggered during a push (pre-receive, update,
> post-receive, post-update, push-to-checkout) which are always executed
> in $GIT_DIR.

* Favor Repository::workdir() over path().parent()

This more clearly errors in case of bare repositories instead of using
the parent directory of the bare repository.

---------

Co-authored-by: Naseschwarz <naseschwarz@0x53a.de>
Co-authored-by: extrawurst <776816+extrawurst@users.noreply.github.com>
2025-04-04 15:28:44 +02:00
Johannes Agricola
89f73d2ec2
Disable dotted range commit yanking (#2577)
The algorithm for computing marked_consecutive assumes that commits are
consecutive in the commit graph if they are consecutive in the
linearized log used in` commitlist.rs`. That is not universally correct,
as siblings may also be displayed consecutively in this list.

For now, this just removes generating commit lists in dotted range
notation.

Co-authored-by: Naseschwarz <naseschwarz@0x53a.de>
2025-04-04 15:27:50 +02:00
Lena
92ef9f6fde
Respect .mailmap (#2485) 2025-03-19 14:44:02 +01:00
vlad-anger
979fa68837
Push with refspec (#2542)
* push: respect `branch.*.merge` when push default is upstream
2025-03-18 18:35:39 +01:00
Johannes Agricola
a91132d187
Bump git2 from 0.20.0 to 0.20.1 (#2567)
* Bump git2 from 0.20.0 to 0.20.1

Bumps [git2](https://github.com/rust-lang/git2-rs) from 0.20.0 to 0.20.1.
- [Changelog](https://github.com/rust-lang/git2-rs/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rust-lang/git2-rs/compare/git2-0.20.0...git2-0.20.1)

---
updated-dependencies:
- dependency-name: git2
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

* Avoid passing reference into struct

git2-rs changed the lifetime of the result of Patch::hunk() to reference
the patch struct:
https://github.com/rust-lang/git2-rs/pull/1141

Thus, returning a patch struct and a reference into it is flagged by the
borrow checker upon move when returning.

This patch avoids returning both alltogether by separating retrieving
and retrieving the patch.

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Naseschwarz <naseschwarz@0x53a.de>
2025-03-18 09:09:11 +01:00
Vasley
4031b0d1a7
Change links to point to gitui-org instead of extrawurst (#2538) 2025-03-16 15:33:28 +01:00
dependabot[bot]
58b4e2c21e
Bump gix from 0.69.1 to 0.70.0 (#2492)
Bumps [gix](https://github.com/GitoxideLabs/gitoxide) from 0.69.1 to 0.70.0.
- [Release notes](https://github.com/GitoxideLabs/gitoxide/releases)
- [Changelog](https://github.com/GitoxideLabs/gitoxide/blob/main/CHANGELOG.md)
- [Commits](https://github.com/GitoxideLabs/gitoxide/compare/gix-v0.69.1...gix-v0.70.0)

---
updated-dependencies:
- dependency-name: gix
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-01-21 12:07:56 +01:00
extrawurst
7ec62279e8
prepare for rc (#2479) 2025-01-13 22:26:14 +01:00
extrawurst
01ad0615b2
git2 upgrade (#2473) 2025-01-10 15:28:52 +01:00
extrawurst
89db83839d
Gix upgrade (#2472) 2025-01-10 14:19:27 +01:00
extrawurst
d72617f5c2
some cargo upgrades (#2471) 2025-01-10 12:55:30 +01:00
extrawurst
66af52ae70 rust 1.84 update 2025-01-09 17:38:44 +01:00
extrawurst
640bf333fc
Fix ci (#2447) 2024-12-10 09:44:01 +01:00
dependabot[bot]
809cb41668
Bump serial_test from 3.1.1 to 3.2.0 (#2428)
Bumps [serial_test](https://github.com/palfrey/serial_test) from 3.1.1 to 3.2.0.
- [Release notes](https://github.com/palfrey/serial_test/releases)
- [Commits](https://github.com/palfrey/serial_test/compare/v3.1.1...v3.2.0)

---
updated-dependencies:
- dependency-name: serial_test
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-11-15 10:40:20 +01:00
Christoph Rüßler
b49bacfac1
Bump gix from 0.66.0 to 0.67.0 and adapt to API changes (#2422)
* Bump gix from 0.66.0 to 0.67.0

Bumps [gix](https://github.com/GitoxideLabs/gitoxide) from 0.66.0 to 0.67.0.
- [Release notes](https://github.com/GitoxideLabs/gitoxide/releases)
- [Changelog](https://github.com/GitoxideLabs/gitoxide/blob/main/CHANGELOG.md)
- [Commits](https://github.com/GitoxideLabs/gitoxide/compare/gix-v0.66.0...gix-v0.67.0)

---
updated-dependencies:
- dependency-name: gix
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* Adapt to API changes

* Update backtrace

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-11-08 09:53:43 +01:00
Christoph Rüßler
9c4bd29fc8
Improve test for env variables (#2409)
* Add test for AsyncLog respecting GIT_DIR

* Mark test as serial

* Mark additional test as serial

* Unwrap result to get more info in error case

---------

Co-authored-by: extrawurst <776816+extrawurst@users.noreply.github.com>
2024-10-29 09:42:25 +01:00
extrawurst
d7765c4239 fix doc comments to please new rust version lints 2024-10-18 18:02:02 +02:00
extrawurst
c4f517acb5 Revert "Add test for AsyncLog respecting GIT_DIR (#2387)"
This reverts commit 9c433b4de3.
2024-10-17 11:28:40 +02:00
dependabot[bot]
15e444ee3a
Bump ssh-key from 0.6.6 to 0.6.7 (#2390)
Bumps [ssh-key](https://github.com/RustCrypto/SSH) from 0.6.6 to 0.6.7.
- [Commits](https://github.com/RustCrypto/SSH/compare/ssh-key/v0.6.6...ssh-key/v0.6.7)

---
updated-dependencies:
- dependency-name: ssh-key
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-16 11:19:36 +02:00
Christoph Rüßler
9c433b4de3
Add test for AsyncLog respecting GIT_DIR (#2387) 2024-10-15 20:20:03 +02:00
extrawurst
f52586885e git2-hooks version bump 2024-09-30 11:24:06 +02:00
Robin
d4f9400e04
Remotes popup (#2350)
Co-authored-by: extrawurst <mail@rusticorn.com>
Co-authored-by: extrawurst <776816+extrawurst@users.noreply.github.com>
2024-09-18 16:31:21 +02:00
Christoph Rüßler
2b8ef40289
Fix log crashing in subdirectories (#2301)
* Fix log crashing in subdirectories
Replace `gix::open` by `gix::discover`. `gix::open` errors when the
passed directory is not a git repository.
* Add test for AsyncLog in sub-directory
* Respect env variables when discovering repo

---------

Co-authored-by: extrawurst <776816+extrawurst@users.noreply.github.com>
2024-09-17 11:37:52 +02:00
extrawurst
0f5cf893f7 fix fmt 2024-09-11 22:24:32 +02:00