Sebastian Thiel
b38d736685
Use version without cutoff as last-resort only.
...
The implementation is a bit more complex to be sure that
the cutoff is still used where possible.
The GitLab repository for instance has such complex
graphs that somehow... the first mergebase often isn't
enough to stop the traversal in time, leading to 100k commits to be traversed.
2024-10-30 15:49:28 +01:00
Sebastian Thiel
14ab092adc
fix: do not cutoff traversals by date for branch details ( #1650 ).
...
We already found the merge-base and know that this will naturally
be the end of the traversal. Thus there is no need to additionally
set a cut-off date, which is the documented default.
With such a cutoff, it's very possible that certain operations on the branches
change the date of the base to lie in the future, which is when no traversal
would be able to happen anymore.
2024-10-30 15:38:41 +01:00
Kiril Videlov
bd10692afb
Only show non-archived branches in the UI
2024-10-30 12:52:55 +01:00
Kiril Videlov
94e345aeb0
Change pruning of integrated heads in the stack to just flag them as archived
2024-10-30 12:26:34 +01:00
Kiril Videlov
8f4cb6160f
replace a Vec of Forge Identifers with an Option instead
...
Likely we wont need multiple
2024-10-30 10:32:44 +01:00
Kiril Videlov
1384e90345
Integration test asserting setting and reading forge ids
2024-10-29 23:44:07 +01:00
Kiril Videlov
70f7d82f14
Update create_virtual_branch_from_branch to take forge_id
2024-10-29 23:25:14 +01:00
Kiril Videlov
88729a858c
Add API endpoint for setting the forge ids
...
Plus frontend medthod in branchController for calling it
2024-10-29 22:54:54 +01:00
Kiril Videlov
4bba0dd2b9
expose forge ids on the branches stream api
2024-10-29 21:52:57 +01:00
Kiril Videlov
22310e018c
introduce a new ForgeIdentifier type to be persisted
2024-10-29 21:21:09 +01:00
Kiril Videlov
c0c6c8d13b
Merge pull request #5342 from gitbutlerapp/kv-branch-1
...
Test stack reorder shifting last in series to previous
2024-10-28 21:24:42 +01:00
Kiril Videlov
39f5b2e9a8
Test stack reorder shifting last in series to previous
2024-10-28 21:13:48 +01:00
Mattias Granlund
4b77cf4074
Default to experimental locking
...
- changing the name of the field since existing projects would have an explicit false value already
2024-10-28 21:08:59 +01:00
Kiril Videlov
dc07cd1ce3
Prune integrated heads upon inegrating upstream
2024-10-28 17:51:19 +01:00
Kiril Videlov
3d4f1657d1
Fix - prevent pushing of already integrated branches when in a stack
2024-10-28 16:10:28 +01:00
Kiril Videlov
94e205d6b9
reordering - handle empty series correctlly
2024-10-27 22:50:35 +01:00
Kiril Videlov
b639859a65
fix reordering of series heads
2024-10-27 22:17:50 +01:00
Kiril Videlov
52929459e4
fix reordering series heads
2024-10-26 17:21:09 +02:00
Kiril Videlov
c24888e16c
fix test script
2024-10-26 15:11:35 +02:00
Kiril Videlov
a3933bae68
more tests
2024-10-26 14:53:30 +02:00
Kiril Videlov
6ba560aa6b
make reorder tests a bit more succinct
2024-10-26 13:33:58 +02:00
Kiril Videlov
327a570e45
Fix stack reorder implementation
2024-10-26 00:33:22 +02:00
Kiril Videlov
382c6251a0
Integration test setup for reordering
2024-10-25 22:05:45 +02:00
Kiril Videlov
9a61a6d64d
fix reorder list sorting
2024-10-25 22:05:22 +02:00
Kiril Videlov
7e1a5c54f2
Implement new stackign api
2024-10-24 16:27:35 +02:00
Kiril Videlov
16135675bc
Reorder stack API stub
2024-10-21 11:28:57 +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
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
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
Kiril Videlov
990d564625
Refactor list series for Stack
2024-10-23 17:12:31 +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
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
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
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
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
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