Commit Graph

460 Commits

Author SHA1 Message Date
Caleb Owens
1be0f43d7d
Merge pull request #3968 from gitbutlerapp/fix-There-is-no-default-target-error-on-adding-a-project
Services: Improved base branch handling
2024-06-03 14:42:24 +02:00
Caleb Owens
342159ddd4 Services: Improved base branch handling
Added a constant for the error message when no default target is set and updated the error handling to use this new message.
2024-06-03 13:31:38 +02:00
Kiril Videlov
3d925d9c53 applying a branch should use cherry rebase 2024-06-03 11:59:42 +02:00
Kiril Videlov
8ab770b15a move blame to repository extension trait 2024-06-03 01:40:41 +02:00
Kiril Videlov
bc16fadcc5 move commit signing to git2 extension trait 2024-06-03 01:04:14 +02:00
Kiril Videlov
4b6a273e80 remove unused function 2024-06-02 23:47:23 +02:00
Kiril Videlov
b2481f01e1 remove unnecessary checks in oplog commit
This little manouver costed us 150 milliseconds
2024-06-02 20:25:09 +02:00
Kiril Videlov
4f8adc487a
Merge pull request #3956 from gitbutlerapp/get-head-reference
remove core::git::Reference type
2024-06-02 19:14:49 +02:00
Kiril Videlov
4ae1847a28 remove core::git::Reference type 2024-06-02 19:03:03 +02:00
Kiril Videlov
879a07da64 remove core::git::Index 2024-06-02 17:57:18 +02:00
Caleb Owens
c7651d7c52 Enable moving by more than one commit at a time 2024-06-02 17:37:23 +02:00
Kiril Videlov
e18684fcdb remove the auto detect git flow
It was complex, buggy and slow
2024-06-02 15:48:15 +02:00
Kiril Videlov
5927ca4ac5 remove shell core::git::Config type 2024-06-02 14:26:09 +02:00
Kiril Videlov
5bb2dfb0b5 remove unused methods on repository 2024-06-01 23:36:56 +02:00
Kiril Videlov
1206a504c9 remote git::Remote shell type 2024-06-01 23:30:25 +02:00
Kiril Videlov
8084335bc5
Merge pull request #3946 from gitbutlerapp/rm-unused-file
remove unused file
2024-06-01 21:48:05 +02:00
Kiril Videlov
abe2d5458a
Merge pull request #3945 from gitbutlerapp/refname-from-git2-branch
remove shell type git::Branch
2024-06-01 21:38:24 +02:00
Sebastian Thiel
39b2b91916
Merge pull request #3942 from gitbutlerapp/dependabot/cargo/rust-updates-668fed6552
Bump the rust-updates group with 17 updates
2024-06-01 21:38:07 +02:00
Kiril Videlov
7f06d988d6 remove unused file 2024-06-01 21:34:37 +02:00
Kiril Videlov
428566492b remove shell type git::Branch 2024-06-01 21:25:27 +02:00
Kiril Videlov
a4afd0d0df notify of branch being unapplied only for these that we indeed applied before 2024-06-01 19:26:03 +02:00
dependabot[bot]
398558d063
Bump the rust-updates group with 17 updates
Bumps the rust-updates group with 17 updates:

| Package | From | To |
| --- | --- | --- |
| [serde](https://github.com/serde-rs/serde) | `1.0.199` | `1.0.203` |
| [thiserror](https://github.com/dtolnay/thiserror) | `1.0.59` | `1.0.61` |
| [tokio](https://github.com/tokio-rs/tokio) | `1.37.0` | `1.38.0` |
| [toml](https://github.com/toml-rs/toml) | `0.8.12` | `0.8.13` |
| [anyhow](https://github.com/dtolnay/anyhow) | `1.0.82` | `1.0.86` |
| [backtrace](https://github.com/rust-lang/backtrace-rs) | `0.3.71` | `0.3.72` |
| [itertools](https://github.com/rust-itertools/itertools) | `0.12.1` | `0.13.0` |
| [serde_json](https://github.com/serde-rs/json) | `1.0.116` | `1.0.117` |
| [open](https://github.com/Byron/open-rs) | `5.1.2` | `5.1.3` |
| [tauri-build](https://github.com/tauri-apps/tauri) | `1.5.1` | `1.5.2` |
| [sysinfo](https://github.com/GuillaumeGomez/sysinfo) | `0.30.11` | `0.30.12` |
| [nix](https://github.com/nix-rust/nix) | `0.28.0` | `0.29.0` |
| [tokio-util](https://github.com/tokio-rs/tokio) | `0.7.10` | `0.7.11` |
| [parking_lot](https://github.com/Amanieu/parking_lot) | `0.12.1` | `0.12.3` |
| [crossbeam-channel](https://github.com/crossbeam-rs/crossbeam) | `0.5.12` | `0.5.13` |
| [mock_instant](https://github.com/museun/mock_instant) | `0.3.2` | `0.4.0` |
| [rstest](https://github.com/la10736/rstest) | `0.18.2` | `0.20.0` |


Updates `serde` from 1.0.199 to 1.0.203
- [Release notes](https://github.com/serde-rs/serde/releases)
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.199...v1.0.203)

Updates `thiserror` from 1.0.59 to 1.0.61
- [Release notes](https://github.com/dtolnay/thiserror/releases)
- [Commits](https://github.com/dtolnay/thiserror/compare/1.0.59...1.0.61)

Updates `tokio` from 1.37.0 to 1.38.0
- [Release notes](https://github.com/tokio-rs/tokio/releases)
- [Commits](https://github.com/tokio-rs/tokio/compare/tokio-1.37.0...tokio-1.38.0)

Updates `toml` from 0.8.12 to 0.8.13
- [Commits](https://github.com/toml-rs/toml/compare/toml-v0.8.12...toml-v0.8.13)

Updates `anyhow` from 1.0.82 to 1.0.86
- [Release notes](https://github.com/dtolnay/anyhow/releases)
- [Commits](https://github.com/dtolnay/anyhow/compare/1.0.82...1.0.86)

Updates `backtrace` from 0.3.71 to 0.3.72
- [Release notes](https://github.com/rust-lang/backtrace-rs/releases)
- [Commits](https://github.com/rust-lang/backtrace-rs/compare/0.3.71...0.3.72)

Updates `itertools` from 0.12.1 to 0.13.0
- [Changelog](https://github.com/rust-itertools/itertools/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rust-itertools/itertools/compare/v0.12.1...v0.13.0)

Updates `serde_json` from 1.0.116 to 1.0.117
- [Release notes](https://github.com/serde-rs/json/releases)
- [Commits](https://github.com/serde-rs/json/compare/v1.0.116...v1.0.117)

Updates `open` from 5.1.2 to 5.1.3
- [Release notes](https://github.com/Byron/open-rs/releases)
- [Changelog](https://github.com/Byron/open-rs/blob/main/changelog.md)
- [Commits](https://github.com/Byron/open-rs/compare/v5.1.2...v5.1.3)

Updates `tauri-build` from 1.5.1 to 1.5.2
- [Release notes](https://github.com/tauri-apps/tauri/releases)
- [Commits](https://github.com/tauri-apps/tauri/compare/tauri-build-v1.5.1...tauri-build-v1.5.2)

Updates `sysinfo` from 0.30.11 to 0.30.12
- [Changelog](https://github.com/GuillaumeGomez/sysinfo/blob/master/CHANGELOG.md)
- [Commits](https://github.com/GuillaumeGomez/sysinfo/commits)

Updates `nix` from 0.28.0 to 0.29.0
- [Changelog](https://github.com/nix-rust/nix/blob/master/CHANGELOG.md)
- [Commits](https://github.com/nix-rust/nix/compare/v0.28.0...v0.29.0)

Updates `tokio-util` from 0.7.10 to 0.7.11
- [Release notes](https://github.com/tokio-rs/tokio/releases)
- [Commits](https://github.com/tokio-rs/tokio/compare/tokio-util-0.7.10...tokio-util-0.7.11)

Updates `parking_lot` from 0.12.1 to 0.12.3
- [Changelog](https://github.com/Amanieu/parking_lot/blob/master/CHANGELOG.md)
- [Commits](https://github.com/Amanieu/parking_lot/compare/0.12.1...0.12.3)

Updates `crossbeam-channel` from 0.5.12 to 0.5.13
- [Release notes](https://github.com/crossbeam-rs/crossbeam/releases)
- [Changelog](https://github.com/crossbeam-rs/crossbeam/blob/master/CHANGELOG.md)
- [Commits](https://github.com/crossbeam-rs/crossbeam/compare/crossbeam-channel-0.5.12...crossbeam-channel-0.5.13)

Updates `mock_instant` from 0.3.2 to 0.4.0
- [Commits](https://github.com/museun/mock_instant/compare/v0.3.2...v0.4.0)

Updates `rstest` from 0.18.2 to 0.20.0
- [Release notes](https://github.com/la10736/rstest/releases)
- [Changelog](https://github.com/la10736/rstest/blob/master/CHANGELOG.md)
- [Commits](https://github.com/la10736/rstest/compare/v0.18.2...v0.20.0)

---
updated-dependencies:
- dependency-name: serde
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: rust-updates
- dependency-name: thiserror
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: rust-updates
- dependency-name: tokio
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: rust-updates
- dependency-name: toml
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: rust-updates
- dependency-name: anyhow
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: rust-updates
- dependency-name: backtrace
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: rust-updates
- dependency-name: itertools
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: rust-updates
- dependency-name: serde_json
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: rust-updates
- dependency-name: open
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: rust-updates
- dependency-name: tauri-build
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: rust-updates
- dependency-name: sysinfo
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: rust-updates
- dependency-name: nix
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: rust-updates
- dependency-name: tokio-util
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: rust-updates
- dependency-name: parking_lot
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: rust-updates
- dependency-name: crossbeam-channel
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: rust-updates
- dependency-name: mock_instant
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: rust-updates
- dependency-name: rstest
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: rust-updates
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-06-01 15:38:43 +00:00
Sebastian Thiel
83893a9db3
review error docs to fit the latest changes 2024-06-01 15:24:59 +02:00
Sebastian Thiel
567a077582
simplify core::errors and remove all the cruft 2024-06-01 14:37:41 +02:00
Sebastian Thiel
0ef944ed25
Switch thiserror with anyhow based errors in application code
This should simplify most code.
2024-06-01 14:36:08 +02:00
Sebastian Thiel
a10b19ed2c
reomve all thiserror based errors from controllers 2024-06-01 14:36:08 +02:00
Sebastian Thiel
939624f725
Remove all custom errors from virtual branches module.
In order to do that, errors from other modules have to go as well.
2024-06-01 14:36:05 +02:00
Sebastian Thiel
f82d25741e
use Marker in place of Code::ProjectInvalid
That way, the frontend doesn't see internals.
2024-06-01 14:34:16 +02:00
Sebastian Thiel
e7c1d6033a
Remove all errors that don't trigger a custom code or context 2024-06-01 14:34:16 +02:00
Sebastian Thiel
c0fc0cfde5
Remove BranchNotFound struct 2024-06-01 14:34:16 +02:00
Sebastian Thiel
a95c48a6cf
remove DefaultTargetNotSet in favor of a utility function 2024-06-01 14:34:16 +02:00
Sebastian Thiel
61a53c6346
Another pass at removing ProjectConflict
As this causes quite a lot of changes, there is this commit to capture them.
2024-06-01 14:34:13 +02:00
Sebastian Thiel
1dc52a44c0
restore detection of project conflicts
Previously that variant was removed even though we need it now to
easily detect this case.
2024-06-01 14:32:27 +02:00
Sebastian Thiel
20d84247e9
Prune Code to only what's used by the UI
Also adjust the `Code` documentation to clarify this - otherwise
we will have more and more variants and nobody actually cares.

The frontend code is adjusted as well, as its `Code` counterpart
contained unsused variants which are now removed.
2024-06-01 14:32:27 +02:00
Sebastian Thiel
d689f36e7f
various refactors
Also

- add tests for ref-log file to assure it's not zero (but something more sensible)
- remove generic for convenience on most callsites
2024-06-01 14:32:19 +02:00
Kiril Videlov
d164457299 update_base_branch returns unapplied branches list
If merge conflicts caused branches to become unapplied, return them as a list
2024-06-01 13:11:53 +02:00
Mattias Granlund
97dfa93bda Remove error logging related to blame
- blame range can include commits not in vbranch
- lookup returning none expected behavior
2024-05-31 02:37:47 +02:00
Mattias Granlund
b47a947398 Fix blame merge base
- use the merge base of the first commits on active branches
2024-05-31 01:57:59 +02:00
Kiril Videlov
4b8d97a500 save error on undo commit snapshot 2024-05-30 23:59:30 +02:00
Kiril Videlov
0f482934c8 save error on unapply branch snapshot 2024-05-30 23:44:58 +02:00
Kiril Videlov
618c7adedc save error on apply branch snapshot 2024-05-30 22:31:16 +02:00
Kiril Videlov
d7ae4d85f1 first stab at saving errors in snapshots 2024-05-30 22:07:02 +02:00
Kiril Videlov
088eb23f8e feat: Show merge base of virtual branch in commit list 2024-05-30 18:41:40 +02:00
Mattias Granlund
10df1621a7 Keep change id when amending a commit 2024-05-30 19:09:18 +02:00
Kiril Videlov
909894149f fix a small thing 2024-05-30 17:51:27 +02:00
Kiril Videlov
8550965d14 oopsie 2024-05-30 16:33:28 +02:00
Kiril Videlov
3af46b3cae handle merge commits 2024-05-30 16:23:40 +02:00
Kiril Videlov
7c06114ab2 list_remote_commit_files: on merge commit dont show wrong diffs
Right now it's not possible to show the correct diff because libgit2 doesn't have a `git diff-tree --cc` equivalent
2024-05-30 15:29:27 +02:00
Mattias Granlund
ed0663ce10 Fix invalid commit range in blame operation
- fixes commit_to_branch related errors
- fixes big performance problem when force push disallowed
2024-05-30 16:15:12 +02:00
Caleb Owens
251424d567 Fix origin/master showing in sidebar 2024-05-30 13:56:39 +02:00