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

Looking for maintainer / Version 2.0 #173

Open
nikic opened this Issue Sep 18, 2018 · 20 comments

Comments

Projects
None yet
@nikic
Owner

nikic commented Sep 18, 2018

Back when I wrote this library, it was intended as a small experiment in efficient routing. I certainly did not expect it to be as widely adopted as it was. The functionality and interfaces offered by this library are not enough for many use-cases. I think three common pain points are:

  • The weird dispatch return value, which is an ad-hoc variable length array. See also #171.
  • The lack of support for reverse routing / reconstructing a URL from parameters. See also #66, #139.
  • Caching being somewhat hard to use, in part because closures are not directly supported (#141). Because of this FastRoute is often used without caching, in which case it certainly is very far from fast (#140).

I think it is time to release a version 2.0 of this library, which addresses these and other issues by performing the necessary (backwards-incompatible) API changes.

However, I don't have the time, motivation and expertise to do this myself -- I'm not writing a lot of web-facing code nowadays and am probably not the best person to work on this type of library.

As such, I'm looking for a new maintainer for this library and in particular someone who is interested in bringing out an overhauled major version. Please comment if you're interested :)

@arhimede

This comment has been minimized.

arhimede commented Sep 18, 2018

Here at Apidemia we are interested in this one .
We are actively developing and using on a daily basis for past year or so an PSR-7 Middleware application @https://github.com/dotkernel, based on Zend Expressive 3.
The routing package we are using is hardcoded to fast-route, so its not only an option like in Zend Expressive.
We are several guys here which can contribute, maintain, test, develop a version 2.0
As we are completed commited to PHP, Zend and Middlewares.

Also almost all of us are ZCE's

@lcobucci

This comment has been minimized.

lcobucci commented Sep 18, 2018

I'll be glad to help 👍

@nicolas-grekas

This comment has been minimized.

nicolas-grekas commented Sep 18, 2018

What about directing ppl at symfony/routing >=4.1? It has all missing features + its faster already (thanks to you!)
If anything is missing from the package, we would happily accept suggestions!

@XedinUnknown

This comment has been minimized.

XedinUnknown commented Sep 19, 2018

Interested in helping out.

@XedinUnknown

This comment has been minimized.

XedinUnknown commented Sep 19, 2018

@nicolas-grekas, symfony/routing looks quite complex. As do many Symfony components. Even with all the missing or rough parts of FastRoute, I prefer it for smaller projects.

@7snovic

This comment has been minimized.

7snovic commented Sep 19, 2018

I'm so excited in helping out

@nicolas-grekas

This comment has been minimized.

nicolas-grekas commented Sep 19, 2018

@XedinUnknown I'm not sure the component has much unneeded complexity. For sure it handles more features than FastRoute v1. But this issue is basically about growing the feature set, thus adding complexity also. Also I don't wish anyone else to duplicate the effort that we put into the code to make it the fastest PHP router out there... so that sharing this effort might be better than having someone spend their free time on that... Of course as said in my first message, if one would like to propose some improvements to make the component better somehow, that'd be useful to everyone.

@kcloze

This comment has been minimized.

kcloze commented Sep 19, 2018

I am expecting that.

@lcobucci

This comment has been minimized.

lcobucci commented Sep 19, 2018

@nicolas-grekas although I understand your effort to have less "duplicated" tools in the ecosystem to allow people to focus, I'd say that it seems that FastRoute has users that don't plan to migrate to symfony/routing (TBQH I'm one of them - at least for now).

With that said I'd suggest us to keep the discussion on "call for maintainers" instead of "let's all use symfony/routing". We can discuss the reasons why people don't wan't to migrate in another place.

@Zvax

This comment has been minimized.

Zvax commented Sep 27, 2018

I would be happy to take on the work towards the overhauled version, and subsequent maintenance of Fast-Route.

I have been using it for a few years now and am dedicated to continue using and improve it. As a regular on SO php chat, I believe I am in a position to ask the needs of a large and diverse group of people in regard to moving forward.

I think Fast-Route has its own place in the routing ecosystem, and would see it evolve in parallel with other initiatives.

@dbpolito

This comment has been minimized.

dbpolito commented Sep 27, 2018

Maybe people from https://github.com/thephpleague/route would be interested, i think they are one of the most installed dependents of this project.

@philipobenito

This comment has been minimized.

philipobenito commented Sep 27, 2018

I think this all depends what you want it to become @nikic , you solved a problem here that many of us have very much appreciated. The feature set for routing imo needs nothing added, dispatching is a little different but also per use case, hence my additions in league/route, the additions in slim, etc. If your goal is for it to stay focused on routing, you’ve done that, just freeze the features, or make them a little friendlier and maintain that. Otherwise if you want it to grow further I’d certainly be interested in chatting with you about what your vision for it is and whether I’d be suited for taking the reigns, whether that be folding it in to league/route somehow or something else entirely.

@franzliedke

This comment has been minimized.

franzliedke commented Oct 3, 2018

Hi @nikic,

we're using FastRoute in @flarum and like it very much - thanks for the awesome project! That said, we would also like to see it maintained and would like to offer any help we can provide. We already built our own abstraction around URL generation, and would be happy to work on API improvements as well. :)

Have a great day!

@ldonis

This comment has been minimized.

ldonis commented Oct 3, 2018

Would be nice if we can create a community around this library then all of Us can work on improvements and new features also build some other tools for routing and dispatching for example.
my vote is for community.

@XedinUnknown

This comment has been minimized.

XedinUnknown commented Oct 3, 2018

IMO this is Github, and therefore already a community. Anybody can contribute to OSS projects here. This thread is about who the maintainers will be.

@ldonis

This comment has been minimized.

ldonis commented Oct 3, 2018

@XedinUnknown you're right, I meant "organization" then the library does not be owned by on single person

@XedinUnknown

This comment has been minimized.

XedinUnknown commented Oct 3, 2018

I think any project needs to be owned by a single person, but have multiple maintainers.

@SeaLife

This comment has been minimized.

SeaLife commented Oct 7, 2018

I can help doing somewhat in this Project.. Using this in my newly created app and i like this alot... Would also appreciata a function to determine a route by a accept-header :)

@JoeVieira

This comment has been minimized.

JoeVieira commented Oct 15, 2018

@nikic I'd take over maintainer role.

@XedinUnknown

This comment has been minimized.

XedinUnknown commented Nov 7, 2018

@SeaLife, that's an interesting idea. I would make a separate issue for this, if I were you. Also, there can be multiple ways to determine a route, so if I was to standardize this behind an interface, I would consider accepting a RequestInterface, and returning a route.

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