Joseph Schorr
227aa8ab8c
Ensure that search doesn't make extra SQL lookups
...
Before this change, we were accessing the `.kind` on the repository object, which caused peewee to make an extra lookup for each result
2017-05-04 13:08:09 -04:00
Joseph Schorr
e9ffe0e27b
Implement new search UI
...
We now have both autocomplete-based searching for quick results, as well as a full search page for a full listing of results
2017-04-28 13:57:28 -04:00
Joseph Schorr
d42ec4e585
Abstract out constant scores into constants
2017-03-10 14:06:39 -05:00
Joseph Schorr
b5bb76cdea
Optimize repository search by changing our lookup strategy
...
Previous to this change, repositories were looked up unfiltered in six different queries, and then filtered using the permissions model, which issued a query per repository found, making search incredibly slow. Instead, we now lookup a chunk of repositories unfiltered and then filter them via a single query to the database. By layering the filtering on top of the lookup, each as queries, we can minimize the number of queries necessary, without (at the same time) using a super expensive join.
Other changes:
- Remove the 5 page pre-lookup on V1 search and simply return that there is one more page available, until there isn't. While technically not correct, it is much more efficient, and no one should be using pagination with V1 search anyway.
- Remove the lookup for repos without entries in the RAC table. Instead, we now add a new RAC entry when the repository is created for *the day before*, with count 0, so that it is immediately searchable
- Remove lookup of results with a matching namespace; these aren't very relevant anyway, and it overly complicates sorting
2017-03-09 19:47:55 -05:00
Joseph Schorr
3203fd6de1
Fix external auth returns for query_user calls
...
Adds the missing field on the query_user calls, updates the external auth tests to ensure it is returned properly, and adds new end-to-end tests which call the external auth engines via the *API*, to ensure this doesn't break again
2016-12-07 14:28:42 -05:00
Joseph Schorr
ccb5bc8f1b
Add external auth emails to entity search
...
Fixes #1791
2016-10-27 16:08:07 -04:00
Joseph Schorr
d145222812
Add support for linking to external users in entity search
2016-10-27 15:42:03 -04:00
Joseph Schorr
ff0a292548
Handle unicode in entity search
...
Fixes #1934
2016-10-04 21:56:47 +03:00
Jake Moshenko
fe2cd240bc
Revert "Remove old search API which is no longer in use"
2016-03-07 10:07:41 -05:00
Joseph Schorr
1887dc879c
Remove old search API which is no longer in use
2016-02-10 15:02:27 +02:00
Jake Moshenko
018bf8c5ad
Refactor how parsed_args are passed to methods
2016-01-26 16:27:36 -05:00
Joseph Schorr
8ca92d6828
Remove old search API and switch V1 search to use the new search system
2015-10-05 14:36:43 -04:00
Jake Moshenko
3efaa255e8
Accidental refactor, split out legacy.py into separate sumodules and update all call sites.
2015-07-17 11:56:15 -04:00
Joseph Schorr
0bc1c29dff
Switch the Python side to Swagger v2
2015-05-14 16:47:38 -04:00
Joseph Schorr
62770674d4
Switch to a 0.5 modifier
2015-04-20 13:00:56 -04:00
Joseph Schorr
ae55b8dd0e
Make the search action not return scores of zero if there is no character matching
2015-04-20 13:00:38 -04:00
Joseph Schorr
16e05e83b1
Score based on the robot short name
2015-04-20 12:51:47 -04:00
Joseph Schorr
1df025b57e
Change search to use a set of queries for repo lookup rather than a single monolithic query, in the hopes that this will make things significantly faster and actually useable. The individual queries have been tested by hand on MySQL, but the real test will be staging
2015-04-10 15:27:37 -04:00
Joseph Schorr
0be0aed17d
Move the repo sorting by pull count into the main matching query, to both make it more accurate and make the search faster
2015-04-09 14:41:59 -04:00
Joseph Schorr
396cba64e6
Fix search to return better results by searching for robots and namespaces in different queries.
2015-04-09 12:57:20 -04:00
Joseph Schorr
4f4bb05621
Fix search SQL issues
2015-04-08 17:41:08 -04:00
Joseph Schorr
d09f2f6e22
Get the new context-sensitive new menu working
2015-04-07 18:33:43 -04:00
Joseph Schorr
40a6892a49
Add search tests
2015-04-07 14:05:12 -04:00
Joseph Schorr
1b56567268
Make sure also include teams from organizations that the user admins
2015-04-07 13:45:49 -04:00
Joseph Schorr
a34d56045f
Add scoring based on the string distance
2015-04-07 12:32:23 -04:00
Joseph Schorr
951b0cbab8
Start on new interactive search
2015-04-06 19:17:18 -04:00
Joseph Schorr
27a9b84587
Switch avatars to be built out of CSS and only overlayed with the gravatar when a non-default exists
2015-03-30 17:55:04 -04:00
Jimmy Zelinskie
f3259c862b
Merge branch 'koh'
...
Conflicts:
auth/scopes.py
requirements-nover.txt
requirements.txt
static/css/quay.css
static/directives/namespace-selector.html
static/js/app.js
static/partials/manage-application.html
templates/oauthorize.html
2014-12-01 12:30:09 -08:00
Joseph Schorr
7bf96c506f
Merge branch 'bees' into koh
2014-11-24 19:25:53 -05:00
Joseph Schorr
e9cac407df
Add a configurable avatar system and add an internal avatar system for enterprise
2014-11-24 19:25:13 -05:00
Jimmy Zelinskie
716d7a737b
Strip whitespace from ALL the things.
2014-11-24 16:07:38 -05:00
Joseph Schorr
1d8ec59362
Merge branch master into bees
2014-10-02 15:08:32 -04:00
Jake Moshenko
03190efde3
Phase 2 of migrating repo namespaces to referencing user objects, backfilling the rows without a value for namespace_user, and changing all accesses to go through the namespace_user object. All tests are passing, manual testing still required.
2014-09-24 18:01:35 -04:00
Joseph Schorr
53fb7f4136
Add documentation for all path parameters
2014-08-19 19:05:28 -04:00
Joseph Schorr
54ee94754e
- Add support for orgs in the entity search and the notification system
...
- Fix the titles/names of the different notification types
- Fix the styling of the options buttons on the notifications
2014-07-22 13:39:41 -04:00
jakedt
8fefe239b5
Fix public repository permissions checking.
2014-03-26 15:56:51 -04:00
jakedt
41cfadac23
Protect the search and repository list endpoints appropriately. Add more differentiating data to some need types. Remove the notification about password change from the user admin page. Select the dependent models for the visible repo list.
2014-03-25 17:26:45 -04:00
jakedt
f2d0a2f479
Split out organization repo roles and org management roles.
2014-03-19 14:36:56 -04:00
jakedt
6f39e158d6
Eliminate all of the exceptions when running the tests.
2014-03-18 15:58:37 -04:00
jakedt
e475e9809d
Port over webhooks, search, and builds.
2014-03-13 16:31:37 -04:00