git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [PATCH] gitweb: add pf= to limit project list to a subdirectory

From
Jakub Narebski <jnareb@gmail.com>
Date
Jan 28, 2012, 16:03 UTC
Message-ID
<201201281703.07313.jnareb@gmail.com>
In-Reply-To
<20120128153750.GB3397@server.brlink.eu>
On Sat, 28 Jan 2012, Bernhard R. Link wrote:
> * Jakub Narebski <jnareb@gmail.com> [120128 15:53]:
> > On Sat, 28 Jan 2012, Bernhard R. Link wrote:
Show 18 quoted lines
> > > The project list takes often a very long time and searching in that list
> > > takes the same time (and would also show projects not starting with the
> > > text).
> >
> > There are at least two ways to speed up getting projects list page.
> 
> There are other ways, but they are both limited and quite backward:
> Instead of showing me the information I want (what is in that
> directory), I guess to search in the larger pool of information needing
> all sort of half-working tricks causing all kinds of other problems
> working around the issue that much more information never used must be
> collected first.
> 
> Subversion's ViewVC for example only shows what is in some directory
> directory and available subdirectories. (That of course has the
> disadvantage to make it harder to find a project one does not know
> the subdirectory it is in, but why shouldn't gitweb offer the best of
> both worlds?)

Well, ViewVC follows Subversion concepts... including broken-by-design branching by copying ;-)

Anyway, I think I am getting convinced that supporting project filtering by subdirectory, in a way similar to existing support for forks (and reusing it implementation) could be a good idea.

The one serious disadvantage of "pf=" is that it is not solution for a faster gitweb homepage. It works _only_ when you have pf=subdirectory/ link.

And I'd rather it worked with strict export, correctly and safely,
if "pf=" is to be included in gitweb.
 
Show 8 quoted lines
> > First is to limit number of projects shown, like e.g. http://repo.or.cz
> > which shows only search form and tag cloud, but no projects, or at least
> > paginate (divide into pages of e.g. 100 projects) list of projects.
> 
> But a page showing all projects (as long as it is possible) is something
> I'd quite miss if it is gone. What I want is some way to have that and
> to also be able to look at some subset interesting to me directly in an
> effective way.

The http://repo.or.cz homepage has 'Show all projects' link, but it is at explicit request.

Show 5 quoted lines
> > Second solution would be to finally add caching support to gitweb,
> 
> But caching also means new projects or changes will take some time to
> show up. And again it would not be a solution to by original problem.
> (Showing effectively what is in some directory).
Well, it would solve "The project list takes often a very long time"
part of your problem.  Though very large list of projects can cause
performance problems rendering on client side, I guess...
 
Show 23 quoted lines
> > > I'd for example like to be able to place a link to all projects shown
> > > at http://anonscm.debian.org/gitweb/ which are below mirrorer/ and get
> > > a not having to wait for description information being extracted for all
> > > the other projects.
> >
> > I would prefer instead of introducing yet another arbitrary parameter
> > extend project searching, so that you can specify that you want to
> > search project names only (IIRC I have a patch for that, or beginnings
> > of one, in my StGit stack), and use prefix search by the way of regexp
> > search.
> >
> > So
> >
> >   pf=mirrorer/
> >
> > would be
> >
> >   s=^mirrorer/;sr=1;st=project_name
> 
> That might be a workaround, but still need to look at quite some amount
> of unecessary data (i.e. it would need to run at least as long as a
> http://anonscm.debian.org/gitweb/?a=project_index would not to load,
> wouldn't it?)
Not with 'gitweb: Faster project search' from this series of commits
  # gitweb: Allow underscore in $searchtype ('st')
  # gitweb: Improve projects search form
  # gitweb: Option for filling only specified info in fill_project_list_info
  # gitweb: Faster project search
  # gitweb: Highlight matched part of project name when searching projects
  # gitweb: Highlight matched part of project description when searching projects

which does not search for description nor check for latest changes in repository for repositories it doesn't show.

-- 
Jakub Narebski
Poland
Previous: Bernhard R. Link
Message 6 of 6 in “gitweb: add pf= to limit project list to a subdirectory”
  1. gitweb: add pf= to limit project list to a subdirectoryBernhard R. Link, Jan 26, 2012
  2. Jakub NarebskiJan 27, 2012
  3. Bernhard R. LinkJan 27, 2012
  4. Jakub NarebskiJan 28, 2012
  5. Bernhard R. LinkJan 28, 2012
  6. Jakub NarebskiJan 28, 2012

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.