Skip to content
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

gunicorn 21 #1195

Closed
1 of 8 tasks
benoitc opened this issue Jan 30, 2016 · 54 comments
Closed
1 of 8 tasks

gunicorn 21 #1195

benoitc opened this issue Jan 30, 2016 · 54 comments
Assignees

Comments

@benoitc
Copy link
Owner

benoitc commented Jan 30, 2016

meta issue to track changes needed to release the version 21. After the talk I gave at the FOSDEM I thought it would be interesting to track the different tasks we need for the new version. Feedback and help is more than welcome.

tasks

  • release imsg
  • add regression test to the supervision
  • replace the temporary file notification system by imsg
  • add/increase tests for the logging (if needed)
  • handle logging via a separate process coupled with imsg
  • add new Proc class
  • add HTTP 2 support
  • remove all python2 compatibility bits (PR: Drop support for Python 2 #1764)
@benoitc
Copy link
Owner Author

benoitc commented Jan 30, 2016

cc @berkerpeksag @tilgovi

@dstufft
Copy link

dstufft commented Jan 30, 2016

What does:

remove all python3 compatibility bits

Mean? That's not gunicorn dropping support for Python 3.x is it?

@benoitc
Copy link
Owner Author

benoitc commented Jan 30, 2016

@dstufft ah... fixed it. I meant python 2 of course :) Thanks!

@dstufft
Copy link

dstufft commented Jan 30, 2016

So, does that mean dropping support for Python 2.x then? :)

@benoitc
Copy link
Owner Author

benoitc commented Jan 30, 2016

@dstufft totally. New version will only support python 3. Python 2 will only have the maintenance updates on the 19.x branch.

@dstufft
Copy link

dstufft commented Jan 30, 2016

Cool. Thanks!

@Lukasa
Copy link

Lukasa commented Jan 30, 2016

@benoitc For HTTP/2, if you're interested in supporting it using hyper-h2 I may be able to spare some time to do help out with integration work.

@benoitc benoitc changed the title gunicorn 2.0 gunicorn 20 Jan 30, 2016
@benoitc
Copy link
Owner Author

benoitc commented Jan 30, 2016

@dstufft we talk about that last year in #1029 :)

@benoitc
Copy link
Owner Author

benoitc commented Jan 30, 2016

@Lukasa nice! It seems to have the exact level of abstraction needed for gunicorn. Maybe we could sync each others next week on IRC when I'm back from the FOSDEM? I will toy with it in the mean time :)

@Lukasa
Copy link

Lukasa commented Jan 30, 2016

@benoitc You bet! Come join us in #python-hyper on freenode whenever suits.

@tilgovi
Copy link
Collaborator

tilgovi commented Jan 30, 2016

👍

@athoune
Copy link

athoune commented Jan 31, 2016

and some abstractions for non http protocol, like Thrift-rpc? It's already doable with ugly hack with gunicorn 19.

@benoitc
Copy link
Owner Author

benoitc commented Feb 7, 2016

@Lukasa was busy last week. Let's try to discuss that on #gunicorn next week or your channel if you want to.

@athoune what would it requires?

@RyPeck
Copy link
Contributor

RyPeck commented May 30, 2016

@benoitc so gunicorn 20 will not support Python 2.7? Why not just drop 2.6?

@benoitc
Copy link
Owner Author

benoitc commented May 31, 2016

@RyPeck Support for 2.x is not dropped. What it means is that gunicorn 19.X will get maintenance updates but no more new features, while gunicorn 20.x and sup will continue to evolve, just like python 2.x is vs 3.x. There may be from time to time backports anyway.

At least that the plan :) Any opinion is welcome.

@RyPeck
Copy link
Contributor

RyPeck commented May 31, 2016

@benoitc good to know - if you could codify that plan somewhere more obvious that would be great! In the mean time I'll update my relevant requirements files to gunicorn<20 which should always get me the latest 19.x.y.

@wooparadog
Copy link
Contributor

@athoune

and some abstractions for non http protocol, like Thrift-rpc? It's already doable with ugly hack with gunicorn 19.

IMO, if the abstractions in gunicorn holds relatively the same, it won't be that dirty for non http protocols. See our https://github.com/eleme/gunicorn_thrift/ , we'll keep up with gunicorn 20 once it's released.

@Code0x58
Copy link
Contributor

It would be good to add to the README.md and docs of 19+ that 19.x is the last to support Python2 but will continue to be maintained.

@jimmywan
Copy link

Any news on a new release? Stumbled across this fix that I'd like to see released to the wild:
610596c

@berkerpeksag
Copy link
Collaborator

@jimmywan Gunicorn 20 is not ready yet but we can indeed make a new 19.x release.

@benoitc
Copy link
Owner Author

benoitc commented Oct 16, 2017

@berkerpeksag i guess we can cut a release now. Then do some grooming Thoughts ? cc @tilgovi

@tilgovi
Copy link
Collaborator

tilgovi commented Nov 12, 2019

Would be great to rename this and get a milestone to track for 21.

@benoitc benoitc changed the title gunicorn 20 gunicorn 21 Nov 22, 2019
@benoitc
Copy link
Owner Author

benoitc commented Nov 22, 2019

@tilgovi done. I think we should open a project and assign a bunch of tickets for it.

@tilgovi
Copy link
Collaborator

tilgovi commented Nov 23, 2019

👍

@Svetlitski
Copy link

Is this issue dead? If so where is progress on HTTP/2 support being tracked now?

@ghost
Copy link

ghost commented Mar 4, 2020

I am also very interested in the http/2 feature. Will it ever come? Any ETA?

@tilgovi
Copy link
Collaborator

tilgovi commented Apr 21, 2020

Besides HTTP/2, what other big feature requests are there right now? Windows support is the other one I keep seeing, but no one has taken on that work, either.

@tilgovi
Copy link
Collaborator

tilgovi commented Apr 21, 2020

I started a milestone: https://github.com/benoitc/gunicorn/milestone/20

@Sharaf5
Copy link

Sharaf5 commented Apr 9, 2021

@benoitc I hope there is something for HTTP/2 or even an external addon [ version 20.0.4 ]

@124bit
Copy link

124bit commented Jun 7, 2021

HTTP/2 is very relevant request

@johnthagen
Copy link
Contributor

@tilgovi Since 20.1.0 has already been released, does this milestone need to be renamed?

@boompig
Copy link

boompig commented Aug 13, 2021

Hi all, it appears that this is the main tracking issue for adding HTTP/2 to gunicorn. As such, there doesn't appear to have been much progress for the past ~5 years. This is not meant as a criticism of the core team, just trying to read the issue history.

Are there any updates/work-arounds in terms of getting gunicorn ready for HTTP/2? Would it be helpful to have a separate issue tracking the HTTP/2 issue specifically?

@tilgovi
Copy link
Collaborator

tilgovi commented Aug 20, 2021

If there isn't already an HTTP/2 issue, please feel free to open one. Thanks!

@johnthagen
Copy link
Contributor

If there isn't already an HTTP/2 issue, please feel free to open one. Thanks!

#1688 was opened for HTTP/2 support, but was closed in favor of this issue.

@johnthagen
Copy link
Contributor

johnthagen commented Aug 20, 2021

Are there any updates/work-arounds in terms of getting gunicorn ready for HTTP/2?

Not sure what your deployment model is, but you can use HTTP/2 with a reverse proxy like NGINX, and run Gunicorn behind it over HTTP/1.1. This allows NGINX to handle the performance intensive side (HTTPS, HTTP/2, etc.) and proxy the actual data to Gunicorn. If you deploy your applications via containers, it ends up be fairly straightforward to add a NGINX container using the default image published on Docker Hub: https://hub.docker.com/_/nginx

Articles like this provide an example for how this can be done: https://testdriven.io/blog/dockerizing-django-with-postgres-gunicorn-and-nginx/

@ssill2
Copy link

ssill2 commented May 25, 2022

Hello, I've been looking on gunicorn.org and here for a list of versions that should be considered supported, and which should be considered EOL. Is there a general guideline that a major version will be supported for n months/years before being considered EOL?
Thanks!

@benoitc benoitc closed this as completed Oct 14, 2022
@benoitc
Copy link
Owner Author

benoitc commented Oct 14, 2022

@ssill2 new doc will describe the maintenance window and new cycle of updates.

@nog642
Copy link

nog642 commented May 7, 2024

Why was this closed? Is HTTP/2 support not going to be added?

@ViswanathB
Copy link

Looking for gunicorn http2, would this never be supported?

@benoitc
Copy link
Owner Author

benoitc commented May 10, 2024

@vikramarsid this shoudl be a separate ticket. Yes this will be suppoted. I will provide informatiosn next week with some updates about the project.

@stekole
Copy link

stekole commented Jun 14, 2024

@vikramarsid this shoudl be a separate ticket. Yes this will be suppoted. I will provide informatiosn next week with some updates about the project.

any updates?

@zaksel
Copy link

zaksel commented Jun 16, 2024

Hi @benoitc, support of http2 would be much appreciated! I'm running into issues with the max-connections-per-server limit set to 6 parallel connections on chrome and hope to avoid this by using http2.

Thank you to you and all the other contributors for the nice work :)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests