-
-
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
Discussion of Gitea roadmap #6998
Comments
A plugin (including theme) solution for extending gitea. |
Would it be possible add proper OS packages to the build process? I have been trying to put something together for fedora but go seems kind of a mess to package. #31 kind of talks about this but still seems to be open. |
We are using ansible to deploy the tarball on Debian system, this is not very handy but it works. Repositories for the most common distros would be nice, but it needs to be put in place and maintained. |
A few suggestions:
|
Federated pull requests / issues / forks |
Maybe not federated in the Fediverse sense of the word (ActivityPub, OStatus, diaspora*, etc.) but I would like the ability to interact with remote instances from one's own implemented in whatever way fits the project best. It might also be cool to have teams and organisations made of users from across multiple instances, though that would likely be incredibly difficult to implement. |
Two suggestions from the POV of an end user with minimal coding skills who tries to help open source projects I use by reporting bugs and giving UX feedback:
|
The ability to reply to tickets by email would be a big step forward for usability |
Allow the edition of all the config from the UI (and maybe change the config file format during the process) |
Maybe store majority of config within database and provide proper cli and api for it |
@sapk @tboerger I'd say we should switch to viper for config, that way we could get rid of ini (and some of the bugs we had with it) and get stuff like reloading the config while Gitea is running and proper env variables. I'd be willing to tackle this, but I'm not sure if I'll find the time in the nearer future. |
I am for Viper too. I was trying to do it 2 years ago, but had no time to finish it... but I can try it again :) |
I'm for getting a more minimal config file... A lot of these settings doesn't need to be set via a static config file and could be easily added to the db and and get cached for performance reasons. |
I think we could at first add a database config table and move most changeable config items there from ini file and only left items which need to reload. |
@lunny and all: agree moving many settings to the database and letting them be configured in the Web interface (either site wide or repo wide) feels like a good step forward. It would also then be easy to have a tool like tea or gitea itself be able to change those values from the command line, so you could still script a default setup. |
Module system sounds great. I believe there are many people out there willing to add new functionality to gitea. |
@belliash @sapk IMO plugins/modules cannot be implemented efficiently without refactoring the models package completely and adding more abstraction. I've tested multiple technologies like the native plugin support of Go. The result was giant binaries which are hard-depended on the Gitea binary. I think improving webhook support and adding custom pages by webhooks is more realistic to become implemented since we already have a quiet mature API that can be used for database operations. |
@jonasfranz I'd be very much in favour of refactoring models to remove a lot of its dependencies.
reveals 98 (!) direct imports. 50 of which are non-go core.
reveals 437 (!!) transitive dependencies. (304 of which are non-go core) |
Look at the drone source, there we got a lot of pluggable stuff based on webhooks. Beside that a plugin model like packer makes sense, a grpc-based plugin system. |
@tboerger Can you provide a example from drone's pluggable stuff? Do you mean the plugin system based on docker images? |
I'm talking about the extensions for configs, secrets and so on, the interfaces should be defined at https://github.com/drone/drone/tree/master/plugin |
I agree with you, Gitea's next big step should be plugin system. I'm also thinking this these days. I will give the plugin system a try. I think it should be similar with drone's plugin system but have more. We have to allow a plugin have a UI and should login with Gitea's OAuth2 automatically. And we should have some security policy on the plugins. and etc. |
I want to share a comparison table we made in circa 2016 to decide which hosting platform to choose for the Open Source Geospatial Foundation. In that table we listed features that were important for us. Gitea is in one of the columns: https://wiki.osgeo.org/wiki/GitInfrastructureComparison You will see that an important feature which was missing in 2016 is still missing today: reply-by-mail (comment/reply) --- some others have been implemented as of today. |
@strk tool to |
Need mail template customization |
So there's quite a bit of template customisation already possible - the subject line is the only thing I don't think we have. What we really should be doing however is enabling i18n for email and the git serv hook messages. |
Reverting a pull request needed. |
Full support of tags in the UI. Create, assign, change, delete, etc. I really miss this feature. |
Feature parity with github! Or, at the very least, an up-to-date list on the wiki, which shows all those features we still need before we achieve parity. This would be a good way to structure future development efforts. |
@lonix1 take a look at https://docs.gitea.io/en-us/comparison/ for that list |
@kolaente looks like we have almost all the tick marks! yeah! |
I am very new here, but a willing coder too; I would love it if gitea supported gists. That's one of the biggest holes for my usage. Easily enough worked around, but I'd rather just have a gist system in place. |
I think the issue for gists would be #693 (linking as it doesn't seem to be referenced from here yet). |
Add also |
@bagasme help can not be taken from github, that would be copyright violation. Someone will have to write Gitea help from zero |
If more people start adopting self-hosting for sharing their open-source projects, there needs to be a way for non-registered users to submit issues without having to create an account on each instance (most people are extremely unlikely to register for a bug report).
2a. Container registry UI tab and auth.
|
Some kind of plugin / extension system. Most of the suggestions are good, but they'll create problems in the core codebase. It would be best to have official (and unofficial) plugins. This would also mean that plugin authors could release more frequently. |
@lonix1 Well, git hooks, webhooks and the Swagger API can be considered plugin connect points. I'm all for more plugin support, but stating a list with specifics could help. For example, I'd like support for a command-line equivalent of webhooks. |
@guillep2k For example all the project management features discussed above. Those would be very useful - but they probably touch so many parts of the codebase that 1) they might cause issues even for those who don't use those features, and 2) because of that, such development is very slow because those responsible for merging new features know that this scenario is possible, so they are cautious. If these new features could be released separately, they could be tried by willing users before being merged into the main branch. And there are other examples of these sort of big new features, just scroll up. |
@brandonkal GPG signing of auto generated commits is now possible with the merging of #7631 |
I guess the roadmap should be divided into those four categories (I added some example issues — it should be obvious that it's far from complete 😉): Basic functionalityThere are still some basic functions that aren't working properly.
SecurityThere are also some security issues:
IntegrationI guess integration with other applications/services are a good thing in general. Those two issues would improve interoperability a lot:
Also generic webhooks would avoid the need of having other people knowing the internals of gitea. @guillep2k had a wonderful idea that an "external command" integration could be done similar to the generic webhook integration. On-top-featuresFurthermore there are obviously some nice features in competing applications (i.e. Git[Hub/Lab]) (most of them are probably rather nice to have):
|
May be use Oracle Database as option? If it possible technically. |
@DemiusAcademius If xorm supports oracle better, I think that's possbile. |
More and more people are starting to use Gitea, e.g. also caused by the recent GitLab tracker announcement. But GitHub/GitLab still have the network effect on their side. Federation would be a big driver to improve the ability to collaborate between users of different Gitea instances and thereby increase the whole Gitea network: #1612 |
That's a huge limitation. IMO everything @alexanderadam listed above pales in comparison to this. If I can't review large diffs by commenting inline in the code, that's a big problem. |
W/R/T the anger at Microsoft and Github that caused many projects to migrate and caused high demand for federation--Gitlab has recently proposed banning employees in China and Russia, 2 of the world's largest countries by land mass and economy. The US military has shifted focus to China and Russia (among others) to weaken the barriers they pose to US imperial expansion/interests. Propaganda and financial incentives have brought Microsoft (Github, Azure), Amazon, Google, Atlassian (Trello, Jira) and even Gitlab into the industries of war, espionage, propaganda and surveillance in an offensive role. I bring this up to give my thanks to those working on highly available open source remote repositories with few short-comings to the corporate and Pentagon-linked services we use and still rely on now--and to bring to your attention that quickly alternatives are disappearing for those who wish to use the Internet and technology as far away from history's most powerful and hostile empire. Perhaps the topic is big enough for a separate section of the official website to track progress on this feature, along with a separate fund-raising campaign to capture this demand. Including ForgeFed in the fundraising may be beneficial and fair, seeing their work so far. It's been 17 months to the day since Microsoft bout Github, and I hope in another 17 moths we can be using federated Gitea, or have remaining parts of the 'net worth building on. |
Please do not discuss politics here, let's keep to the subject - improving Gitea for everyone |
@lafriks Improving Gitea means defining a niche--something unmet by substitute goods. Marketing is the process of finding external opportunities, "political" being 1 of 4 main categories of marketing analysis. A wise brand appeals to people's values equally as much as they deliver features, specs and price. There is a values-based ("political") draw to alternatives like Gitea, and failing to underline and maintain it would be a failure to understand your consumer and the market opportunity. "Political" as a term has become a thought-terminating cliché, extinguishing discussion of racism, violence and exploitation. I simply came here to thank folks for continuing work on alternatives not associated with US concentration camps, drag-net surveillance and other imperialists interests the majority of our industry is actively aiding in. If you're saying these are not qualities Gitea stands by, I got you wrong and I'll be leaving. |
Note to @OKNoah Marketing 101 for an open-source project:
If GitLab.com's transparency offends you, you can self-host GitLab-FOSS. It's an extremely good all-in-one product. But if you want a simple install or require lower memory usage compared to GitLab or GitHub Enterprise, Gitea is a good option for the basic web features. This thread is about discussing features that can help close that gap without compromising on simplicity. |
My 2 cents - I think this thread became too long, and it's time to open a new issue summarizing any ideas already expressed here. And close this one. |
This is not what is being said. What is being said is that this thread is the place for discussing what changes/improvements to Gitea can be made (specifically technical ones). These discussions are more than welcome, but not in this specific thread. As one of the leads I will be locking this thread, as @XVilka said it right, we have solicited a lot of feedback, and it should now be evaluated for next steps. |
We could change path to FHS compliance for v2. It is already possible with flags but it should be the default for v2. |
Close as we have a plan for every release. |
@go-gitea/maintainers
After #1029 closed, I think we should make a new plan about next big step. Any idea about that?
The text was updated successfully, but these errors were encountered: