-
-
Notifications
You must be signed in to change notification settings - Fork 5.6k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Check if missing/modified/unused deps in vendor and fix errors #1468
Conversation
e9f5321
to
e9aaf0a
Compare
This will catch import from other repos. (maybe by auto-import)
…ndor/github.com/blevesearch/bleve/index/store/boltdb
9b6130e
to
e4730f2
Compare
After looking further for change from github.com/boltdb/bolt base it's seems that changes were made to compile on specific platform like #1107. Don't really know what to do so .... Should we make a fork of bolt if we want a custom code and use it in vendor ? |
Could we simply use custom LDFLAGS for compilation like -X github.com/boltdb/bolt.maxMapSize=0x40000000 ? |
Yes I think we need a fork for modifications in dependencies. BTW: might be worth to put this check in its own Makefile rule so in case it'll be hard to enforce (ie: needs network access and can fail for external reasons) it could easily be removed from main |
8e12367
to
b25a53b
Compare
b25a53b
to
2e46744
Compare
The boltdb change was intentional until boltdb fixes the issue upstream. |
It makes sense to always reference an external repository with no changes, so that changes can be justified by separate development stream (tickets or what else). |
@tboerger I understand but there is no change since 3 month and It would be more cleaner that vendor use the same version as remote (in case of sync). So using a fork in the time of the hold in bolt repo is good tempory fix. It will be easy to return to parent repo and destroy temporary fork. It will permit to check vendor in further PR in gitea. |
Now that I am in gitea orgs can I create a repo to contain the modified version of bolt ? |
@sapk I'm sorry you cannot. In Gitea, all the maintainers has the permissions to agree or disagree the PRs. Nobody could push a commit directly. Only Owners and Team Maintainers could create repos and merge PRs. If a new repo is needed, I could create one and you can init it before we can set the branches protected. @tboerger @strk @sapk any idea? |
My idea is that all maintainer should have more power (merge, create
repos, etc.). Failing that, please owners create the bolt fork and let
@sapk send the needed PR there.
|
I do not think maintainers should be able to merge or create repos. In my opinion, reviewing code, writing code, and managing code are different things. Someone who wrote code may not know what to do in case of a merge conflict or a broken merge. Also, many people run gitea off master (including me), so it needs to remain working with less chance of breakage. Also, imo currently there are enough people with the ability to merge. |
@lunny I suggest that because actually on GitHub I have discovered that I have the right to create a repo under go-gitea (I don't know if it is a misconfiguration) but before doing that I would discuss it with the team members. The goal is just to have a fork of bolt with the same additional commit that sapk-fork/bolt@606636e to be able to built for mips systems. You can create it and I will update this PR to have this fork for bolt vendor. |
@strk too many people has merge permission make collaboration difficult that we had tried it. I would like less people has merge permission. Currently we have 6 people has merge permission, I think it's enough! Maintainers' main work is to write PR and review PR. According to our rule, if no maintainer review a PR, it could be merged. So every PR will be reviewed by almost 3 people. That will keep the master more stable I think. Of course we ever have some breakage on the master, so if you have better idea about how to organizate the collaboration please let's discuss it on gitter. |
@lunny thx I migrate to this repo. Everything should be good. Just maybe need a new sig for drone. |
@lunny like you suggest on gitter it should be better if github.com/go-gitea/bolt is a fork but not necessary. You can re-create it from github fork and I will re-add the commit. |
@sapk done. Thanks! |
@lunny I have not the right to push directly so I make a PR go-gitea/bolt#1 that could be merge. |
Ok good to go. Just need one L-G-T-M. |
There you are: LGTM |
Uhm, it needs one from someone else :/ |
build failed |
Sorry this was late, but any reason why "test-vendor" is not made a dependency of "test" ? (it would also have meant no change in .drone.yml...) |
You suggest to put it in own rule since it need internet to work. |
Now everything is green and drone.yml is signed. |
My suggestion was:
So was an open possibility for the future, but I still saw it as part of the "test" rule initially (ie: a dependency). Nothing that should stop this PR from being merged. |
LGTM |
let L-G-T-M work |
I was planning to add a check in makefile for Ci to check vendoring changes because it is difficult to check all import and validate vendoring in PR. For example, the change in makefile (test) would catch any missing vendoring or vendoring without editing vendor.json or any vendor that could be removed after a change.
Doing that I found that
govendor status +outside +unused
returns on master :So I am adding fix of vendor :
Remove github.com/boltdb/bolt unused depFetch github.com/boltdb/boltAfter rebasing and looking at failing drone I found that PR #1448 put to a5cb21c@go-xorm/xorm for files but vendor.json (https://github.com/go-gitea/gitea/blob/master/vendor/vendor.json#L460) to 7e70eb. So I update it and it is a good illustration of difficult to catch error. ^^