Commit Graph

464 Commits

Author SHA1 Message Date
Alexandru Macovei
6b5745f6c2
Fix Clippy Lints (#1390)
* apply latest nigtly clippy lints
* temporarily disable const fn lints due to nigh false positive count on nightly
2022-10-19 13:45:12 +02:00
extrawurst
16a537c102
Persist all options (#1342)
closes #1340
2022-09-20 08:23:04 +02:00
Jakub Jirutka
f69460cccf
Allow to build without vendored openssl, allow to build syntect with regex-onig (#1323)
* allow to build syntect with regex-onig

Syntect supports two regex engines:

* regex-fancy: a pure-rust regex engine based on the fancy-regex
* regex-onig: a regex engine based on the oniguruma C library

From the syntect's Readme:

> The advantage of fancy-regex is that it does not require the onig
> crate which requires building and linking the Oniguruma C library.
> Many users experience difficulty building the onig crate, especially
> on Windows and Webassembly.

> As far as our tests can tell this new engine is just as correct, but
> it hasn't been tested as extensively in production. It also currently
> seems to be about half the speed of the default Oniguruma engine

Oniguruma engine is faster than the fancy-regex engine and the syntect
project chose the latter as the default only to avoid difficulties with
linking Oniguruma (C library) on some platforms. This is not an issue
for linux distributions - linking against system-provided shared
library is preferred to bundled libraries.

Moreover, gitui built with Oniguruma instead of fancy-regex is by 25%
smaller.

This commit adds two cargo features, regex-fancy and regex-onig, to
enable respective syntect features. The former is enabled by default.

* allow to build without vendored openssl

Vendoring (bundling) openssl library is very bad for security and
Linux distributions forbid it. The aim of this change is to simplify
packaging gitui in linux distros.

Co-authored-by: extrawurst <776816+extrawurst@users.noreply.github.com>
2022-09-18 15:02:01 +02:00
dependabot[bot]
1020346217 Bump url from 2.2.2 to 2.3.0
Bumps [url](https://github.com/servo/rust-url) from 2.2.2 to 2.3.0.
- [Release notes](https://github.com/servo/rust-url/releases)
- [Commits](https://github.com/servo/rust-url/compare/v2.2.2...v2.3.0)

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

Signed-off-by: dependabot[bot] <support@github.com>
2022-09-08 06:51:31 +02:00
extrawurst
0ddec47611 cleanup 2022-09-03 10:22:24 +02:00
extrawurst
4249a278b6 nightly clippy fixes 2022-09-02 09:09:29 +02:00
extrawurst
4e0da37230
Support updating submodules (#1305) 2022-08-31 11:40:52 +02:00
extrawurst
986d34a5ac
support opening submodule (#1298) 2022-08-31 10:51:08 +02:00
extrawurst
8c32ec53ee pretty_assertions migrated away from ansi-termi
this closes #1290
2022-08-30 13:46:06 +02:00
extrawurst
ef3ece552d
PoC list submodules (#1090) 2022-08-27 17:55:06 +02:00
dependabot[bot]
d6a84c1bd2 Bump easy-cast from 0.4.4 to 0.5.0
Bumps [easy-cast](https://github.com/kas-gui/easy-cast) from 0.4.4 to 0.5.0.
- [Release notes](https://github.com/kas-gui/easy-cast/releases)
- [Changelog](https://github.com/kas-gui/easy-cast/blob/master/CHANGELOG.md)
- [Commits](https://github.com/kas-gui/easy-cast/compare/0.4.4...0.5.0)

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

Signed-off-by: dependabot[bot] <support@github.com>
2022-08-22 08:49:51 +02:00
extrawurst
0e2262882b fix some clippy workarounds 2022-08-20 11:52:13 +02:00
Stephan D
4a0e58ae15
msrv 160 (#1279)
* bump edition
* msrv 160
* upgrade clap and more deps
2022-08-17 16:30:54 +02:00
Chigozie Joshua
edf798b91b
Refactor async tags (follow up PR) (#1245)
* AsyncTags
* Verify hash of last hash
* Make default Tags notification 'FinishUnchanged'
* fixed bug preventing tags from displaying

Co-authored-by: Martijn van Eijk <mfveijk@gmail.com>
Co-authored-by: extrawurst <mail@rusticorn.com>
2022-07-04 10:45:26 +02:00
extrawurst
1985fd2dbc clippy nighytly fix 2022-07-04 10:43:30 +02:00
extrawurst
c1cb868c4b fix nightly clippy 2022-07-02 08:17:15 +02:00
extrawurst
cce49a34b7 Revert "Change diff renamed files (#1040)"
This reverts commit 5f466ff983.
2022-04-24 22:30:40 +02:00
Gleb Davydov
5f466ff983
Change diff renamed files (#1040) 2022-04-24 19:25:50 +02:00
Stephan D
2a578889f3
switch focus to index after staging last file (#1170) 2022-03-10 00:50:37 +01:00
extrawurst
b0eaca72cb cargup update 2022-02-25 21:04:07 +01:00
dependabot[bot]
02170ee280 Bump serial_test from 0.5.1 to 0.6.0
Bumps [serial_test](https://github.com/palfrey/serial_test) from 0.5.1 to 0.6.0.
- [Release notes](https://github.com/palfrey/serial_test/releases)
- [Commits](https://github.com/palfrey/serial_test/compare/v0.5.1...v0.6.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>
2022-02-22 01:04:41 +01:00
extrawurst
77472d086f change author name 2022-02-21 23:33:07 +01:00
Stephan Dilly
4f3ecfcd7c
fix left arrow closing popup (#1121)
* fix left arrow closing popup
* fix pageup/down being borked
* adhere to global diff options
* fix build for rust 1.50
* show revision count in header
* allow blaming any specific file revision
* show blame command
* allow opening history from blame
2022-01-31 20:56:59 +01:00
Stephan Dilly
f2b09d39c6 clippy nightly fixes 2022-01-30 19:28:45 +01:00
Christoph Rüßler
b622ceef94
Add popup for file history (#841) 2022-01-30 18:50:50 +01:00
Stephan Dilly
53e855e488 use auto proxy option 2022-01-26 09:54:48 +01:00
Stephan Dilly
bfba218fb4 bump versions 2022-01-26 00:35:05 +01:00
Stephan Dilly
317b245ba0
fix credential.helper config usage inside repo (#1091) 2022-01-24 00:36:58 +01:00
Stephan Dilly
9653545c81 debug print sideband progress 2022-01-22 18:53:59 +01:00
Stephan Dilly
614040b854 add note 2022-01-22 18:50:51 +01:00
Stephan Dilly
12fbfa0946 prepare for v0.20 release 2022-01-22 01:27:20 +01:00
Stephan Dilly
166826f5ea allow inspecting tag annotation 2022-01-22 01:21:15 +01:00
Stephan Dilly
435de9cda3
support hookspath (#1054) 2022-01-17 15:06:54 +01:00
Stephan Dilly
13b6b2fdc6
support deleting tag on remote (#1079) 2022-01-16 22:56:39 +01:00
Stephan Dilly
132559ea7f
support annotated tags (#1073) 2022-01-12 12:44:34 +01:00
Stephan Dilly
d5d36de01e
implement reverting commit from revlog (#1057) 2021-12-29 16:40:22 +01:00
Stephan Dilly
d790b48f5d fix nightly clippy 2021-12-19 21:05:05 +01:00
Stephan Dilly
10b4704662
run hooks in correct pwd (#1049)
see #1046
2021-12-17 00:46:08 +01:00
Stephan Dilly
55b9877e93 use .git path instead of workdir finding hooks
fixes #1046
2021-12-15 15:33:09 +01:00
Martin Kühl
5550415e3c
cred: check pushurl before checking url (#967)
* cred: check pushurl before checking url

if a remote has both a pushurl and a url, need_username_password should check the pushurl before checking the url since we might not need credentials for the former
2021-12-09 22:47:27 +01:00
Stephan Dilly
6249491484
keep commit msg on hook-fail (#1036)
fixes #1035
2021-12-09 21:12:31 +01:00
Stephan Dilly
cd639b29c0
release 0.19 (#1033) 2021-12-08 23:24:01 +01:00
Stephan Dilly
eddc703fb8 fix windows build 2021-12-08 22:24:56 +01:00
Stephan Dilly
a947ce35e7
fix status fetch hanging on bare repos w/o worktree (#1032)
closes #1029
2021-12-08 22:00:55 +01:00
Stephan Dilly
006cdd6373
support bare repos (#1028) 2021-12-05 00:35:45 +01:00
Stephan Dilly
f4ee24055b Add debug log 2021-11-29 23:28:36 +01:00
Stephan Dilly
74c3d6f21c fetch all branches fetches tags aswell 2021-11-28 16:54:37 +01:00
Stephan Dilly
26318c10e9 cargo updates 2021-11-28 14:41:23 +01:00
Stephan Dilly
444e14631d cargo-sort 2021-11-28 13:38:48 +01:00
Stephan Dilly
9038b1d07d pull gets tags on current branch (closes #1013) 2021-11-28 13:37:36 +01:00
Stephan Dilly
33ac72c8e7
fetch/prune branches (#1000) 2021-11-23 22:14:37 +01:00
Stephan Dilly
a55dcf62a3
blame: fixup windows paths (#984)
closes #981
2021-11-12 15:52:29 +01:00
Stephan Dilly
3c8eb7e049
improve files in diff speed (#979)
closes #976
2021-11-11 13:36:17 +01:00
Stephan Dilly
c42c9f900a nightly clippy fix 2021-11-09 14:00:41 +01:00
Stephan Dilly
389bd75d46 honor options in stage_all command (see #933) 2021-10-23 15:34:49 +02:00
R0nd
153c79a828
support pull from remote (#945)
closes #920
2021-10-13 15:34:58 +02:00
dm9pZCAq
31f677187b
add trace-libgit feature (#905) 2021-10-13 15:32:17 +02:00
Stephan Dilly
d1dcdab288 version bumps 2021-10-11 11:25:50 +02:00
Stephan Dilly
c6abbaf4d4
fix hirarchical branch names (#931) 2021-10-06 10:50:57 +02:00
R0nd
48f9331b0d
Use git_message_prettify (#924) 2021-09-30 23:20:43 +02:00
Stephan Dilly
e4c7867564
allow rebase with conflicts (#897) 2021-09-29 18:55:47 +02:00
Stephan Dilly
9f8fc6b907 cleanup 2021-09-29 17:38:26 +02:00
Stephan Dilly
23516f1a41 docs 2021-09-29 17:35:47 +02:00
Stephan Dilly
f8bad7d541 cleanup 2021-09-29 17:07:59 +02:00
dependabot[bot]
8030ac8867 Bump pretty_assertions from 0.7.2 to 1.0.0
Bumps [pretty_assertions](https://github.com/colin-kiegel/rust-pretty-assertions) from 0.7.2 to 1.0.0.
- [Release notes](https://github.com/colin-kiegel/rust-pretty-assertions/releases)
- [Changelog](https://github.com/colin-kiegel/rust-pretty-assertions/blob/main/CHANGELOG.md)
- [Commits](https://github.com/colin-kiegel/rust-pretty-assertions/compare/v0.7.2...v1.0.0)

---
updated-dependencies:
- dependency-name: pretty_assertions
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-09-29 07:46:42 +02:00
Stephan Dilly
d2bdec43a1 cleanup 2021-09-26 10:40:55 +02:00
Stephan Dilly
fa051e9226 nightly clippy fixes 2021-09-17 09:14:28 +00:00
Stephan Dilly
a12180e2e2 version bumps 2021-09-09 10:14:16 +02:00
Stephan Dilly
f27227af41
Conflict free rebase (#896)
* unittest for rebasing with conflicts
* hide branchlist after rebase
2021-09-07 00:04:54 +02:00
Stephan Dilly
cfea72d709 rebase returns generated commit + unittest 2021-09-06 21:20:45 +02:00
Stephan Dilly
6be4da873b version bumps 2021-09-05 10:46:27 +02:00
Stephan Dilly
40e03ba7de allow async jobs to set intermediate progress 2021-09-02 18:29:03 +02:00
Stephan Dilly
0454e2a1cd asyncjob supports sending arbitrary notifications
this is used to send progress reports during work on the job
2021-09-02 13:14:36 +02:00
Stephan Dilly
b9e4631ff4 allow async job to return dynamic notification 2021-09-02 11:36:46 +02:00
Stephan Dilly
e5688e3b8b make async test even more resilient 2021-09-02 10:38:37 +02:00
Stephan Dilly
8905fd22ea make test more stable 2021-09-01 23:02:08 +02:00
Stephan Dilly
777d362dfc less unneeded sleep 2021-08-31 18:12:09 +02:00
Stephan Dilly
9c7ac0f84d some more immutable string optimizations
and precompute diff line trimming (newlines)
2021-08-27 09:40:45 +02:00
Stephan Dilly
8353dfdd36 use less memory per hunk (immutable string) 2021-08-27 09:31:31 +02:00
Stephan Dilly
a8654329ec allow rebase of a branch (#816) 2021-08-26 20:31:37 +02:00
Stephan Dilly
eef1a79375 prepare release 2021-08-21 16:23:06 +02:00
Stephan Dilly
81924fb9f8 show subject line of commits compared 2021-08-21 16:11:33 +02:00
Stephan Dilly
5672cfd033
compare two commits (#860) 2021-08-21 15:49:39 +02:00
jedel1043
13a0f4e9e2
Display mark for remote branches with tracking branches (#861) 2021-08-20 13:03:02 +02:00
Stephan Dilly
7cc19f673a
support options for the way we calculate the status (#849) 2021-08-19 02:19:36 +02:00
Stephan Dilly
dad8e8d43d cargo fmt: use hardtabs
since it does not support hard-whitespaces its the only way to make whitespaces consisitent and checked
2021-08-17 14:24:25 +02:00
Stephan Dilly
0b48e6f4ff
fix tags being fetched every scroll in revlog (#851) 2021-08-17 13:35:59 +02:00
zcorniere
56502ad3fd
ability to delete remote branch (#838)
* added ability to delete remote branch (closes #622)
2021-08-15 17:44:55 +02:00
Stephan Dilly
62ea1dea04 fix progress 0/0 panic 2021-08-15 17:42:25 +02:00
Stephan Dilly
d42b00389c
check branch name validity while typing (#842)
closes #559
2021-08-15 15:14:35 +02:00
Stephan Dilly
e16dfcaee7
hook into libgit2 tracing (#822) 2021-08-15 14:24:20 +02:00
Stephan Dilly
71e3d9a9b8 get_commit_diff on commit with unknown parent (#836) 2021-08-11 13:25:38 +02:00
Stephan Dilly
29f71f50d4 do not allow to ignore gitignore (fixes #825) 2021-08-03 23:47:41 +02:00
Stephan Dilly
19f2fd03cf
app has its own async notifications now (#813)
* app has its own async notifications now
2021-07-11 13:24:19 +02:00
Stephan Dilly
aacc7a3211 version bumps 2021-07-10 14:49:18 +02:00
Stephan Dilly
23944dc608
error if force push was rejected (#810)
* error if force push was rejected
2021-07-10 14:11:01 +02:00
Stephan Dilly
3a1bcb74a2 try fix ci 2021-07-05 11:18:22 +02:00
Stephan Dilly
c2e6f9ff7e filetree paniced on non utf8 files/paths 2021-07-05 00:26:32 +02:00
Christoph Rüßler
bce652ecca Add filter to AsyncLog
This is a small change that makes it possible to reuse the logic in
`AsyncLog` for the file history view. `AsyncLog` passes the filter to
`FileLogWalker` unchanged.
2021-06-26 13:07:03 +02:00
Christoph Rüßler
f132722272 Add filter to LogWalker
This is the first step towards adding a file history view. The filter
itself is not related to files specifically, though. It could also be
used for different purposes.
2021-06-14 00:18:10 +02:00