Commit 055aafda8233152dfc42bdd8daf083be8c415c77
optmz: indexed user repo reads
noffle committed on 5/12/2018, 4:48:22 AMParent: f2a29c8443af6d8b2826e9119cc208e19479f015
Files changed
lib/users.js | changed |
lib/users.js | ||
---|---|---|
@@ -60,22 +60,41 @@ | ||
60 | 60 … | |
61 | 61 … | U.serveUserRepos = function (req, feedId) { |
62 | 62 … | var self = this |
63 | 63 … | var title = req._t('UsersRepos', {name: '%{name}'}) |
64 | - return self.renderUserPage(req, feedId, 'repos', title, pull( | |
65 | - cat([ | |
66 | - self.web.ssb.messagesByType({ | |
67 | - type: 'git-update', | |
68 | - reverse: true | |
64 … | + | |
65 … | + // use git index, if present | |
66 … | + var source | |
67 … | + if (self.web.ssb.git) { | |
68 … | + source = pull( | |
69 … | + self.web.ssb.git.author({ | |
70 … | + lt: '9999999999999', | |
71 … | + values: true, | |
72 … | + reverse: true, | |
73 … | + id: feedId | |
69 | 74 … | }), |
70 | - self.web.ssb.messagesByType({ | |
71 | - type: 'git-repo', | |
72 | - reverse: true | |
75 … | + pull.map(function (msg) { return msg.value }), | |
76 … | + ) | |
77 … | + } else { | |
78 … | + source = pull( | |
79 … | + cat([ | |
80 … | + self.web.ssb.messagesByType({ | |
81 … | + type: 'git-update', | |
82 … | + reverse: true | |
83 … | + }), | |
84 … | + self.web.ssb.messagesByType({ | |
85 … | + type: 'git-repo', | |
86 … | + reverse: true | |
87 … | + }) | |
88 … | + ]), | |
89 … | + pull.filter(function (msg) { | |
90 … | + return msg.value.author == feedId | |
73 | 91 … | }) |
74 | - ]), | |
75 | - pull.filter(function (msg) { | |
76 | - return msg.value.author == feedId | |
77 | - }), | |
92 … | + ) | |
93 … | + } | |
94 … | + | |
95 … | + return self.renderUserPage(req, feedId, 'repos', title, pull( | |
96 … | + source, | |
78 | 97 … | pull.unique(function (msg) { |
79 | 98 … | return msg.value.content.repo || msg.key |
80 | 99 … | }), |
81 | 100 … | paramap(function (msg, cb) { |
Built with git-ssb-web