Commit Graph

1456 Commits

Author SHA1 Message Date
Kiril Videlov
30b5a88c63 CLI: add the ability to create series for a stack 2024-10-25 11:01:28 +02:00
Sebastian Thiel
42f632aaf4
avoid allocations for comparisons
Also avoid having an untyped comparison which is easy to get wrong.
2024-10-24 19:17:36 +02:00
Sebastian Thiel
7d12e0bcc7
avoid building doctests
This takes time, and typically there are none.
2024-10-24 19:03:29 +02:00
ndom91
670c7ca44b fix: use custom wix template to avoid update removing shortcuts 2024-10-24 17:39:54 +02:00
Mattias Granlund
8d3aabae1d Fix bug in hunk dependency calculations
- stacks need their own line shifts when combining them
2024-10-24 15:15:39 +02:00
Esteban Vega
a70de62f2e
Merge pull request #5295 from gitbutlerapp/e-branch-2
fix: Compare branches to the remote target branch
2024-10-24 15:15:23 +02:00
estib
4178fdd973 fix: Compare branches to the remote target branch
When getting the branch listings, compare the branches to the remote target branch.
This is necessary because of two reasons:
- GitButler doesn't really care about what your local target branch (e.g. main) does, and also doesn't update it as we merge upstream (e.g. origin/main).
- In some cases, a repository might not have a local branch pusgin to the remote target branch (especially in the cases in which branches are merged through a forge)
2024-10-24 14:32:19 +02:00
Mattias Granlund
5dfa719f51 Fix environment dependent test failure
- fixes `non_bare_without_worktree` test on mac with bash 3.2.57
2024-10-24 14:00:56 +02:00
estib
d2df87f1b2 Refname: Add custom comparator for BStr
Add a neat, nice little implementation for comparing Refnames to BStrs
2024-10-24 13:51:27 +02:00
estib
8a2943a11c list branches: Update tests 2024-10-24 12:06:37 +02:00
estib
bb72296a00 fix: Don't list the target branch
Don't list the target branch in the sidebar
2024-10-24 10:47:33 +02:00
Mattias Granlund
d9156fc00b Integrate new hunk dependency algorithm
- behind a project level feature flag
2024-10-23 22:42:46 +02:00
Mattias Granlund
c8a591505a Make context optional when getting commit diffs 2024-10-23 22:42:46 +02:00
Mattias Granlund
1fa97d4468 Fix clippy warnings after toolchain date bump 2024-10-23 22:42:46 +02:00
Mattias Granlund
b772146acc New crate for calculating hunk dependencies 2024-10-23 22:42:46 +02:00
Kiril Videlov
990d564625 Refactor list series for Stack 2024-10-23 17:12:31 +02:00
Kiril Videlov
abea43c5d4 Fixes a problem where re-applying a pushed branch creates a new reference rather than reusing the existing one
The most visible aspect to this issue was that the branch will not show any existing PRs afterwards
2024-10-23 11:47:53 +02:00
ndom91
9be297edbf fix: ensure anthropic api endpoint can be reached in nightly and release builds 2024-10-22 18:37:48 +02:00
Kiril Videlov
068833059d Remove stack extention trait - now it can be an impl block 2024-10-22 16:08:59 +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
Nico Domino
5d2f4436e4
Merge pull request #5264 from gitbutlerapp/fix-allow-renaming-branch-after-push-with-warning
fix: allow renaming already pushed branches
2024-10-22 14:36:01 +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
cb7c4ea486 refactor stack api
Make it not depend on RepoActionsExt
2024-10-22 13:29:37 +02:00
ndom91
dd098f1e53
fix: remove rust validation for branches already pushed 2024-10-22 13:25:48 +02:00
Kiril Videlov
56a4a4ac0d Adding an extra dedup step to absolutely prevent duplication
Duplicate keys crashes the UI
2024-10-22 02:02:12 +02:00
Kiril Videlov
adbc69a80d Fix - remove the assumption that a stack can only have one commit with a given change id
Having a change id being duplicated is a bad state but we must be able to handle it
2024-10-22 01:57:58 +02:00
Kiril Videlov
c843e5d7ec add large file protection for the UI on commits
If there are large non-binary files, it can lock up the UI. Add the same handling that we already apply for the uncommitted files
2024-10-21 19:09:38 +02:00
Kiril Videlov
6ed54349d0 Fix for branches incorrectly deleted
If a branch is being "unapplied' due to conflicts - dont delete the state
2024-10-21 14:42:24 +02:00
estib
6a64db6c29 PR details modal: Allow user to choose the PR template
User can select the PR template to use for each individual PR

Also: 
Improve the tests of the forge review crate
2024-10-18 18:22:19 +02:00
Kiril Videlov
2630dbbc1e fix a bug in marking commits as integrated
Match the implementation of the legacy commits, which check only up to the first integrated commit
2024-10-20 19:08:40 +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
Kiril Videlov
fc51c61bf0
refactor - move branch generation to a function 2024-10-20 12:48:07 +02:00
Kiril Videlov
d2d31644a1
remove unnecessary test 2024-10-20 00:32:06 +02:00
Kiril Videlov
dd93fc16db
fixes a bug in handling the remote name
Seems like projects that were created long time ago do not have the push_remote_name field set up. Add correct handling for all those situations
2024-10-20 00:22:57 +02:00
ndom91
101bb6be40 feat: add VSCode Insiders to "open in editor" options 2024-10-18 17:41:02 +02:00
estib
93786f931d Factor out the 'read PR template' content logic
Move the function that reads the PR template content to the `gitbutler-forge` crate.
The method will also verify that that's a valid PR template path for the project's forge type
2024-10-18 15:05:36 +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
1dda7c4455
Templated branch names - prefix with user initials 2024-10-18 14:08:20 +02:00
ndom91
ce3ac1a079 feat: update default stack name to 'Lane' 2024-10-18 13:57:33 +02:00
Kiril Videlov
74e35f86cf
fix - stack / requires force
Toggle on 'requires force push' if there are upstream only patches (so that they can be overriden)
2024-10-18 12:01:46 +02:00
Kiril Videlov
de6de23155
Stack api - small refactor
Remove duplications, typos etc
2024-10-17 20:03:13 +02:00
Kiril Videlov
6b3f80e157
Move a series converion function in branch-actions to separate module 2024-10-17 18:56:48 +02:00
Kiril Videlov
0aac619791
Stack: fix upstream commit listing 2024-10-17 18:51:25 +02:00
Caleb Owens
92c1188759 Patch stack creation 2024-10-17 12:59:14 +02:00
Caleb Owens
2c00d5f869 Listing series 2024-10-16 17:49:55 +02:00
Kiril Videlov
dd6d62cf42
Add tests for integrate_upstream_commits_for_series assuring same behavior 2024-10-17 11:30:07 +02:00
Kiril Videlov
169fe207ce
Reimplement integrate_upstream_commits_for_series to do a two-pass rebase 2024-10-17 11:29:43 +02:00
Kiril Videlov
6a056f9ad7
refactor integrate_upstream_commits_for_series 2024-10-16 22:09:59 +02:00