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

redirect to unstable by default #69

Open
anarcat opened this issue Apr 11, 2017 · 2 comments
Open

redirect to unstable by default #69

anarcat opened this issue Apr 11, 2017 · 2 comments

Comments

@anarcat
Copy link
Contributor

anarcat commented Apr 11, 2017

My understanding of the redirector code is that it prioritizes stable when a manpage is found in multiple suites (according to #68 anyways). I understand the reasoning behind redirect to stable by default - i am guessing it's assuming most people run stable and want to see the relevant manpages.

But I would argue that it would be better to redirect to unstable by default, for the following reasons:

  1. it would improve SEO (Search Engine Optimization): in the current configuration, all redirection links will change at every stable release, which will actually break those redirections, if cached
  2. it would fix redirect bpf to bpf.2, not bpf.4freebsd #68 - newer manpages would override older conflicting pages
  3. newer bugfixes and latest manpages improvements would show up first

An argument against the change is that it may show features that are not present in stable, but then I would argue that people looking for up to date manpages can load manpages on their local system already. It's actually nice that they hit more recent versions: that way they can quickly see if there are major changes with their local manpages...

dman (#57) should look for manpages in the right suite, so that's irrelevant as well.

@stapelberg
Copy link
Contributor

My understanding of the redirector code is that it prioritizes stable when a manpage is found in multiple suites (according to #68 anyways)

Correct, see

const defaultSuite = "jessie"

it would improve SEO (Search Engine Optimization): in the current configuration, all redirection links will change at every stable release, which will actually break those redirections, if cached

I’m not worried about this: we use HTTP 307 status codes for our redirects, and RFC2616 specifies:

The requested resource resides temporarily under a different URI. Since the redirection MAY be altered on occasion, the client SHOULD continue to use the Request-URI for future requests. This response is only cacheable if indicated by a Cache-Control or Expires header field.

So, in order to harm our ranking, search engines would need to violate the RFC. That’s not impossible, but I’m relatively confident we can get this fixed for the bigger ones.

An argument against the change is that it may show features that are not present in stable

That’s actually a pretty significant argument. Looking at the site traffic, I can see that we have a lot more hits during the week than on the weekends, implying that people largely use this service in a work context as opposed to a spare time context. I expect most business users of Debian to run stable, so that seems like the natural choice here.

I also understand where you’re coming from, though. If you’re accessing manpages.d.o via a keyword search in your address bar (which is the most convenient way, at least in Chrome), I’d recommend you reconfigure your keyword to send unstable/%s instead of %s.

@anarcat
Copy link
Contributor Author

anarcat commented Apr 21, 2017

Looking at the site traffic, I can see that we have a lot more hits during the week than on the weekends, implying that people largely use this service in a work context as opposed to a spare time context. I expect most business users of Debian to run stable, so that seems like the natural choice here.

The underlying assumption here is that people are running stable at work and need stable manpages output. However, I'd be tempted to think otherwise: first, some people may not be running stable, or even Debian, for that matter. Many users are probably looking for generic manpages and may want the latest in greatest, especially for user-facing commands.

Another assumption is that newer manpages are not backwards-compatible with older releases of software. That is not necessarily the case: a manpage may specifically document in which version a particular flag was introduced, for example.

If this was just a nitpicking, "i want a pony" wishlist item, I'd be tempted to discard this request as well and just move on. But the current behavior actually breaks some manpages because they may be missing in older versions. #68 is the canonical example of newer manpages (that do apply to stable releases!) simply missing because the redirect forces you to go to unstable.

Anyways, it's your call really - but I don't quite see that one argument for forcing stable as convincing...

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

No branches or pull requests

2 participants