Commit Graph

426 Commits

Author SHA1 Message Date
Mattias Granlund
b772146acc New crate for calculating hunk dependencies 2024-10-23 22:42:46 +02:00
Kiril Videlov
ccec1868f8 Refactor - join stack and stack api crates
Separation was previously needed due to cycle dependency with the repo crate. 
The stack_ext is to be refactored as an impl on stack
2024-10-22 15:26:53 +02:00
Kiril Videlov
95d4fc15d0 Refactor - move commit signature code out of branch crate 2024-10-22 14:41:35 +02:00
Kiril Videlov
cea0e219a5 Remove unnecessary deps from gitbutler-repository 2024-10-22 13:55:50 +02:00
Kiril Videlov
4ef288f60d Move RepoActionsExt out of gitbutler-repository
This is a higher level trait with lots of dependencies
2024-10-22 13:44:04 +02:00
Kiril Videlov
2cd5ff24b6
Merge pull request #5233 from gitbutlerapp/better-error-message
mention ref-name when reference isn't found
2024-10-20 19:14:55 +02:00
Kiril Videlov
de9dbbd34f
fix - when generating initials, handle accents etc correctly
The branch name needs to be ascii
2024-10-20 16:39:35 +02:00
Sebastian Thiel
fe70427931
upgrade to latest version of gitoxide for better error message when reference is not found. (#5229)
Now it will include the name of the reference that wasn't found, which should help with debugging.
2024-10-20 09:38:10 +02:00
estib
4ee01031f6 gitbulter-forge crate
Create a centralized crate for forge actions that is provider agnostic.
Move the logic behind fetching the PR templates to it.
2024-10-17 18:15:08 +02:00
Kiril Videlov
de6de23155
Stack api - small refactor
Remove duplications, typos etc
2024-10-17 20:03:13 +02:00
Caleb Owens
92c1188759 Patch stack creation 2024-10-17 12:59:14 +02:00
Chooooooo
e789eb1a55
Add preview support for untracked binary files 2024-10-15 03:31:28 +09:00
Chooooo
b4c84fdfd8
Merge branch 'master' into feat/parse-binary-file 2024-10-15 00:07:28 +09:00
Navtoj Chahal
1e59bb412c
enable opening URLs with the default browser 2024-10-13 19:44:26 -07:00
Sebastian Thiel
9175e60e60
re-enable now working test thanks to gitoxide fix 2024-10-11 18:59:38 +02:00
Chooooooo
3c9eb56a37
Add parsing for binary files 2024-10-10 19:04:36 +09:00
Caleb Owens
5071cc40ff LIst conflicted files in commit files list 2024-10-09 20:21:57 +02:00
Kiril Videlov
9cc51ff84a
Merge pull request #5065 from gitbutlerapp/dependabot/cargo/tauri-plugin-context-menu-8d5854f
Bump tauri-plugin-context-menu from `1cdd3b5` to `8d5854f`
2024-10-09 14:59:03 +02:00
dependabot[bot]
e414d3d360
Bump tauri-plugin-context-menu from 1cdd3b5 to 8d5854f
Bumps [tauri-plugin-context-menu](https://github.com/c2r0b/tauri-plugin-context-menu) from `1cdd3b5` to `8d5854f`.
- [Commits](1cdd3b5567...8d5854f186)

---
updated-dependencies:
- dependency-name: tauri-plugin-context-menu
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-09 09:36:08 +00:00
Kiril Videlov
87a4c61b9f Consistent setting of stack head updating the series 2024-10-08 22:25:19 +02:00
Kiril Videlov
f172855c61 Adds a new method to StackActions 2024-10-08 16:12:21 +02:00
Kiril Videlov
9e9f3255a8 Remove some types out of the stack crate
Seems i can get away without adding it
2024-10-08 15:44:59 +02:00
Kiril Videlov
7ec59f8489 extract the Branch types to crate gitbutler-stack 2024-10-08 15:27:16 +02:00
Kiril Videlov
d78ebbe176 rename crate gitbutler-stack to gitbutler-stack-api
This is needed to free up the name gitbutler-stack
2024-10-08 14:53:23 +02:00
Kiril Videlov
5b7109e8ee refactor(Branch): implement set_head() and make field private
This allows us to control the head setting and update the stack `heads` field accordingly
2024-10-08 12:21:57 +02:00
Caleb Owens
3f37e5aaf9 Use random names in commit_tree testing utility 2024-10-02 14:55:33 +02:00
Kiril Videlov
0122bb5dba
Merge pull request #5014 from gitbutlerapp/dependabot/cargo/tauri-plugin-single-instance-0b59bc7
Bump tauri-plugin-single-instance from `677bade` to `0b59bc7`
2024-10-03 01:16:17 +02:00
Kiril Videlov
4cd93a6733
Merge pull request #5020 from gitbutlerapp/dependabot/cargo/cargo-22a2db0795
Bump tonic from 0.12.1 to 0.12.3 in the cargo group
2024-10-03 01:15:48 +02:00
dependabot[bot]
69752599be
Bump the rust-updates group across 1 directory with 13 updates
Bumps the rust-updates group with 13 updates in the / directory:

| Package | From | To |
| --- | --- | --- |
| [serde](https://github.com/serde-rs/serde) | `1.0.209` | `1.0.210` |
| [thiserror](https://github.com/dtolnay/thiserror) | `1.0.63` | `1.0.64` |
| [backtrace](https://github.com/rust-lang/backtrace-rs) | `0.3.73` | `0.3.74` |
| [once_cell](https://github.com/matklad/once_cell) | `1.19.0` | `1.20.1` |
| [reqwest](https://github.com/seanmonstar/reqwest) | `0.12.7` | `0.12.8` |
| [serde_json](https://github.com/serde-rs/json) | `1.0.127` | `1.0.128` |
| [pretty_assertions](https://github.com/rust-pretty-assertions/rust-pretty-assertions) | `1.4.0` | `1.4.1` |
| [tempfile](https://github.com/Stebalien/tempfile) | `3.12.0` | `3.13.0` |
| [tauri-build](https://github.com/tauri-apps/tauri) | `1.5.4` | `1.5.5` |
| [tokio-util](https://github.com/tokio-rs/tokio) | `0.7.11` | `0.7.12` |
| [rstest](https://github.com/la10736/rstest) | `0.22.0` | `0.23.0` |
| [clap](https://github.com/clap-rs/clap) | `4.5.16` | `4.5.19` |
| [regex](https://github.com/rust-lang/regex) | `1.10.6` | `1.11.0` |



Updates `serde` from 1.0.209 to 1.0.210
- [Release notes](https://github.com/serde-rs/serde/releases)
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.209...v1.0.210)

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

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

Updates `once_cell` from 1.19.0 to 1.20.1
- [Changelog](https://github.com/matklad/once_cell/blob/master/CHANGELOG.md)
- [Commits](https://github.com/matklad/once_cell/compare/v1.19.0...v1.20.1)

Updates `reqwest` from 0.12.7 to 0.12.8
- [Release notes](https://github.com/seanmonstar/reqwest/releases)
- [Changelog](https://github.com/seanmonstar/reqwest/blob/master/CHANGELOG.md)
- [Commits](https://github.com/seanmonstar/reqwest/compare/v0.12.7...v0.12.8)

Updates `serde_json` from 1.0.127 to 1.0.128
- [Release notes](https://github.com/serde-rs/json/releases)
- [Commits](https://github.com/serde-rs/json/compare/1.0.127...1.0.128)

Updates `pretty_assertions` from 1.4.0 to 1.4.1
- [Release notes](https://github.com/rust-pretty-assertions/rust-pretty-assertions/releases)
- [Changelog](https://github.com/rust-pretty-assertions/rust-pretty-assertions/blob/main/CHANGELOG.md)
- [Commits](https://github.com/rust-pretty-assertions/rust-pretty-assertions/compare/v1.4.0...v1.4.1)

Updates `tempfile` from 3.12.0 to 3.13.0
- [Changelog](https://github.com/Stebalien/tempfile/blob/master/CHANGELOG.md)
- [Commits](https://github.com/Stebalien/tempfile/compare/v3.12.0...v3.13.0)

Updates `tauri-build` from 1.5.4 to 1.5.5
- [Release notes](https://github.com/tauri-apps/tauri/releases)
- [Commits](https://github.com/tauri-apps/tauri/compare/tauri-build-v1.5.4...tauri-build-v1.5.5)

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

Updates `rstest` from 0.22.0 to 0.23.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.22.0...v0.23.0)

Updates `clap` from 4.5.16 to 4.5.19
- [Release notes](https://github.com/clap-rs/clap/releases)
- [Changelog](https://github.com/clap-rs/clap/blob/master/CHANGELOG.md)
- [Commits](https://github.com/clap-rs/clap/compare/clap_complete-v4.5.16...clap_complete-v4.5.19)

Updates `regex` from 1.10.6 to 1.11.0
- [Release notes](https://github.com/rust-lang/regex/releases)
- [Changelog](https://github.com/rust-lang/regex/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rust-lang/regex/compare/1.10.6...1.11.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: backtrace
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: rust-updates
- dependency-name: once_cell
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: rust-updates
- dependency-name: reqwest
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: rust-updates
- dependency-name: serde_json
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: rust-updates
- dependency-name: pretty_assertions
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: rust-updates
- dependency-name: tempfile
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: rust-updates
- dependency-name: tauri-build
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: rust-updates
- dependency-name: tokio-util
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: rust-updates
- dependency-name: rstest
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: rust-updates
- dependency-name: clap
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: rust-updates
- dependency-name: regex
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: rust-updates
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-02 22:37:53 +00:00
Kiril Videlov
b8f69d9406 Wire up v2 stacking api as Tauri commands 2024-10-02 20:47:50 +02:00
Kiril Videlov
89960f6bfc Make stack initialization more forgiving 2024-10-02 19:28:29 +02:00
dependabot[bot]
7ca8d91923
Bump tonic from 0.12.1 to 0.12.3 in the cargo group
Bumps the cargo group with 1 update: [tonic](https://github.com/hyperium/tonic).


Updates `tonic` from 0.12.1 to 0.12.3
- [Release notes](https://github.com/hyperium/tonic/releases)
- [Changelog](https://github.com/hyperium/tonic/blob/master/CHANGELOG.md)
- [Commits](https://github.com/hyperium/tonic/compare/v0.12.1...v0.12.3)

---
updated-dependencies:
- dependency-name: tonic
  dependency-type: indirect
  dependency-group: cargo
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-02 09:27:48 +00:00
Kiril Videlov
03659e4731 Add tests for Stack method push_series 2024-10-02 01:49:12 +02:00
dependabot[bot]
374085a52d
Bump tauri-plugin-single-instance from 677bade to 0b59bc7
Bumps [tauri-plugin-single-instance](https://github.com/tauri-apps/plugins-workspace) from `677bade` to `0b59bc7`.
- [Release notes](https://github.com/tauri-apps/plugins-workspace/releases)
- [Commits](677bade908...0b59bc7096)

---
updated-dependencies:
- dependency-name: tauri-plugin-single-instance
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-01 16:04:23 +00:00
Kiril Videlov
3742349a22
Merge pull request #4999 from icorbrey-contrib/master
chore: Bump `git2-hooks`
2024-09-30 19:00:56 +02:00
Isaac Corbrey
7045f1c365 chore: Bump git2-hooks 2024-09-30 11:54:34 -04:00
Caleb Owens
511ca5212e Support executable blobs 2024-09-30 17:34:20 +02:00
Kiril Videlov
3ba6f7238a Tests for Stack trait implementation 2024-09-30 00:22:35 +02:00
Kiril Videlov
f6ec80d8ce Adds a trait Stack with an implementation for Branch
This provides a well defined interface for interacting with Stacks. It is implemented for gitbutler_branch::Branch, and it is specifically meant to operate on and update the `heads` field of Branch
This facilitates creating, updating, removing, pushing and listing of "stacked branches" within the Stack (formerly the virtual branch).
2024-09-29 19:26:39 +02:00
Kiril Videlov
a2aafd919b Introduce PatchReference and a heads field on Branch
- The PatchReference type represents a "reference" that is entirely managed by GitButler. It can either point to a commit or a GitButler change (which itself points to a commit)
- The Branch type (as persisted in virtual_branches.toml) now has a `heads` fields with a list of PatchReferences. This list is not to be meant to be manipulated directly, but with the `Stack` trait
2024-09-28 12:34:29 +02:00
Caleb Owens
8a84753e92
Merge branch 'master' into Testing-rebase 2024-09-24 20:00:38 +02:00
Caleb Owens
bbbf81c4c1 Start to introduce index resolution tests 2024-09-24 17:01:38 +02:00
Sebastian Thiel
fe7d5d92e7
add crate to keep gitoxide conversions to prevent duplication 2024-09-24 15:54:07 +02:00
ndom91
ad2290dc7a fix: bump tauri@1.8.0 in preparation for v2 upgrade 2024-09-17 17:10:45 +02:00
Kiril Videlov
57c3e8b5d2
Merge pull request #4900 from Byron/better-locking
ignore lock-errors on filesystems that lack support
2024-09-16 10:22:51 +02:00
Sebastian Thiel
31626b726b
Edit trees directly when running create_wd_tree() to bypass the index. 2024-09-14 18:48:01 +02:00
Sebastian Thiel
099ac50f5d
update gix to get tree-editing capabilities 2024-09-14 15:35:08 +02:00
Sebastian Thiel
6285d9177e
fix: ignore lock-failures on filesystems that don't support it (#4895)
Just like `cargo` does.
2024-09-14 08:48:17 +02:00
ndom91
e842b282ae fix: merge conflicts 2024-09-13 11:15:06 +02:00
Caleb Owens
191686ec4d
Ahhh, don't loose shit 2024-09-11 11:23:20 +02:00