Commit Graph

1430 Commits

Author SHA1 Message Date
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
Kiril Videlov
a2506177f1
Use new integrate upstream in stacked up 2024-10-16 12:22:14 +02:00
Kiril Videlov
b6ec442a4a
Implement integrate upstream commits for the stacked flow
refactor integrate upstream code for the stacked flow
fix semantics
2024-10-16 12:03:20 +02:00
Kiril Videlov
c5f20160bc
Stack - optimize getting commit by change id
Pass the merge base instead of computing it every time
refactor stack
2024-10-16 20:55:50 +02:00
Kiril Videlov
5fbf242f86
Update virtual.rs 2024-10-16 20:25:08 +02:00
Kiril Videlov
98c537f5ec
stack: improvve computing of upstream only commits
It is necessary to compare against commits from either side of merge commits
2024-10-16 20:22:37 +02:00
Kiril Videlov
64fd3b893d
Merge pull request #5165 from Byron/fixup-5089
Some improvements on top of #5089
2024-10-16 19:19:46 +02:00
Kiril Videlov
d8f10e1513
fix comment on a test assertion 2024-10-16 18:55:06 +02:00
Kiril Videlov
64d2641e70
fix an missed call site 2024-10-16 18:46:01 +02:00
Kiril Videlov
99ebced634
fix correct test expectations 2024-10-16 18:36:12 +02:00
Kiril Videlov
3bd4428f35
When revwalking only get the commits from the first parent
Also adding an option for getting all
2024-10-16 18:28:32 +02:00
Kiril Videlov
5cd9d77fec
Merge pull request #5173 from gitbutlerapp/fix-issues-with-series-listing
Stack - correctly flag remote commits when no changeid
2024-10-16 17:34:30 +02:00
Kiril Videlov
b3313fb60b
make it compile lol 2024-10-16 17:27:21 +02:00
Caleb Owens
10b7ab9471
Fix issue where incoming commit headers were caried into merge commit headers 2024-10-16 16:58:33 +02:00
Sebastian Thiel
f7d5380687
Some improvements on top of #5089
The PR was merged earlier to not hold it after a passed review,
yet I personally feel strongly enough about the backend portions
to give it another round of polish.
2024-10-16 16:35:06 +02:00
Kiril Videlov
055a653979
Stack - correctly flag remote commits when no changeid 2024-10-16 15:53:56 +02:00
Sebastian Thiel
22f0e4ab36
Merge pull request #5089 from Zamoca42/feat/parse-binary-file
feat: Parse & display binary files
2024-10-16 11:36:28 +02:00
Ali Houssain Sareini
caf1b92b89
Merge branch 'master' into master 2024-10-15 18:33:23 -04:00
Kiril Videlov
55b91a484f GC branch entries on fetch 2024-10-15 16:22:10 +02:00
Kiril Videlov
5b39495062 implement GC for branch entries
Garbage collects branches that are not in the workspace and hold no changes:
   1. They do not have a WIP commit
   2. They have no regular commits
2024-10-15 16:21:40 +02:00
Kiril Videlov
a20c2304df unapply_without_saving of a (v)branch now also delete persisted state 2024-10-15 15:03:43 +02:00
Kiril Videlov
be24f64c12 Stack - improved automatic reference names
Now the template for new references is "branch-n"
2024-10-15 16:40:51 +02:00
estib
44c376e48d fix: Move any commit from branch to branch
Move any commit won't duplicate the commit in both virtual branches.
Also:
- Also add tests to catch this
2024-10-15 14:28:56 +02:00
Chooooooo
f178c4fed4
Update read_file_from_workspace logic
- Refactor `read_file_from_workspace` to separate `HEAD^{tree}` lookup logic
- Add new `read_file_from_tree` function to handle both `HEAD^{tree}` and specific commit lookups
- Add edge case handling for querying files from a specific commit in `read_file_from_workspace`
- Add conditions to handle modified or deleted files in worktree
- Improve file status handling with new `FileStatus` enum
- Update `FileInfo` struct to include file status information
2024-10-15 21:26:39 +09:00
Ali Houssain Sareini
4daeb53dba feat: Add support for the 'zed' URL scheme 2024-10-14 19:36:51 -04:00
Kiril Videlov
d168588596 change default stack series reference to match the virtual branch legacy one if set
This is only applicable during the migration period - when a virtual branch has been pushed, and therefore there is a reference set. If that is the case, this will make the default series reference match that reference name
2024-10-14 20:49:49 +02:00
Chooooooo
e789eb1a55
Add preview support for untracked binary files 2024-10-15 03:31:28 +09:00