summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKornel <kornel@geekhood.net>2020-02-28 18:53:29 +0000
committerKornel <kornel@geekhood.net>2020-02-28 18:53:29 +0000
commit4ecf9e46ace52c3d0a2349be4a5e30deab40ce8d (patch)
tree4390b363c34d3fd5a1e47033ea3cfbdfeedeac2b
parentba9ffff97e85f0df74c24785ffaa7706a7c9af7f (diff)
Ugc attr
-rw-r--r--front_end/Cargo.toml2
-rw-r--r--front_end/src/crate_page.rs9
-rw-r--r--front_end/src/front_end.rs3
-rw-r--r--front_end/src/install_page.rs3
-rw-r--r--ranking/Cargo.toml2
-rw-r--r--ranking/src/lib_ranking.rs2
-rw-r--r--reindex/src/bin/reindex_crates.rs3
m---------render_readme0
-rw-r--r--rich_crate/Cargo.toml2
-rw-r--r--server/Cargo.toml2
10 files changed, 18 insertions, 10 deletions
diff --git a/front_end/Cargo.toml b/front_end/Cargo.toml
index 29f1361..8889b9b 100644
--- a/front_end/Cargo.toml
+++ b/front_end/Cargo.toml
@@ -15,7 +15,7 @@ ructe = "0.9"
[dependencies]
kitchen_sink = { path = "../kitchen_sink", version = "0.9" }
rich_crate = { path = "../rich_crate" }
-render_readme = { git = "https://gitlab.com/crates.rs/render_readme.git", version = "0.6.0" }
+render_readme = { git = "https://gitlab.com/crates.rs/render_readme.git", version = "0.7.0" }
categories = { path = "../categories" }
udedokei = { path = "../udedokei" }
search_index = { path = "../search_index" }
diff --git a/front_end/src/crate_page.rs b/front_end/src/crate_page.rs
index 50e1c5e..47a5210 100644
--- a/front_end/src/crate_page.rs
+++ b/front_end/src/crate_page.rs
@@ -14,6 +14,7 @@ use kitchen_sink::DepInfMap;
use kitchen_sink::{DepTy, KitchenSink, Origin};
use locale::Numeric;
use render_readme::Renderer;
+use render_readme::Links;
use rich_crate::Readme;
use rich_crate::RepoHost;
use rich_crate::RichCrate;
@@ -269,9 +270,13 @@ impl<'a> CratePage<'a> {
templates::Html(html)
}
- pub fn nofollow(&self) -> bool {
+ pub fn nofollow(&self) -> Links {
// TODO: take multiple factors into account, like # of contributors, author reputation, dependents
- self.block(self.kitchen_sink.downloads_per_month_or_equivalent(self.all.origin())).ok().and_then(|x| x).unwrap_or(0) < 50
+ if self.block(self.kitchen_sink.downloads_per_month_or_equivalent(self.all.origin())).ok().and_then(|x| x).unwrap_or(0) < 100 {
+ Links::Ugc
+ } else {
+ Links::FollowUgc
+ }
}
fn block<O>(&self, f: impl Future<Output = O>) -> O {
diff --git a/front_end/src/front_end.rs b/front_end/src/front_end.rs
index dffb190..24ea176 100644
--- a/front_end/src/front_end.rs
+++ b/front_end/src/front_end.rs
@@ -30,6 +30,7 @@ use kitchen_sink::KitchenSink;
use kitchen_sink::{stopped, KitchenSinkErr};
use render_readme::Markup;
use render_readme::Renderer;
+use render_readme::Links;
use rich_crate::RichCrate;
use rich_crate::RichCrateVersion;
use semver::Version as SemVer;
@@ -259,7 +260,7 @@ pub fn render_static_page(out: &mut impl Write, title: String, page: &Markup, re
Err(KitchenSinkErr::Stopped)?;
}
- let (html, warnings) = renderer.page(page, Some(("https://lib.rs", "https://lib.rs")), false, None);
+ let (html, warnings) = renderer.page(page, Some(("https://lib.rs", "https://lib.rs")), Links::Trusted, None);
if !warnings.is_empty() {
eprintln!("static: {:?}", warnings);
}
diff --git a/front_end/src/install_page.rs b/front_end/src/install_page.rs
index ad712d5..0c48fdc 100644
--- a/front_end/src/install_page.rs
+++ b/front_end/src/install_page.rs
@@ -2,6 +2,7 @@ use crate::templates;
use crate::Page;
use kitchen_sink::KitchenSink;
use render_readme::Renderer;
+use render_readme::Links;
use rich_crate::Readme;
use rich_crate::RichCrateVersion;
@@ -53,7 +54,7 @@ impl<'a> InstallPage<'a> {
(Some(l), None) => Some((l.as_str(), l.as_str())),
_ => None,
};
- let (html, warnings) = self.markup.page(&readme.markup, urls, true, Some(self.ver.short_name()));
+ let (html, warnings) = self.markup.page(&readme.markup, urls, Links::Ugc, Some(self.ver.short_name()));
if !warnings.is_empty() {
eprintln!("{} readme: {:?}", self.ver.short_name(), warnings);
}
diff --git a/ranking/Cargo.toml b/ranking/Cargo.toml
index f95b1ae..a1a8803 100644
--- a/ranking/Cargo.toml
+++ b/ranking/Cargo.toml
@@ -12,5 +12,5 @@ path = "src/lib_ranking.rs"
rich_crate = { path = "../rich_crate" }
chrono = "0.4.10"
cargo_toml = "0.8.0"
-render_readme = { git = "https://gitlab.com/crates.rs/render_readme.git", version = "0.6.1" }
+render_readme = { git = "https://gitlab.com/crates.rs/render_readme.git", version = "0.7" }
semver = "0.9.0"
diff --git a/ranking/src/lib_ranking.rs b/ranking/src/lib_ranking.rs
index c9d6655..2621050 100644
--- a/ranking/src/lib_ranking.rs
+++ b/ranking/src/lib_ranking.rs
@@ -368,7 +368,7 @@ code
* list
* items
-".into()), None, false, None);
+".into()), None, render_readme::Links::Ugc, None);
let mut p = Default::default();
fill_props(&dom, &mut p, false);
assert_eq!(p.images, 1);
diff --git a/reindex/src/bin/reindex_crates.rs b/reindex/src/bin/reindex_crates.rs
index b74ddae..e0c5966 100644
--- a/reindex/src/bin/reindex_crates.rs
+++ b/reindex/src/bin/reindex_crates.rs
@@ -10,6 +10,7 @@ use rand::{seq::SliceRandom, thread_rng};
use ranking::CrateTemporalInputs;
use ranking::CrateVersionInputs;
use render_readme::Renderer;
+use render_readme::Links;
use search_index::*;
use std::collections::HashSet;
use std::sync::mpsc;
@@ -179,7 +180,7 @@ async fn crate_overall_score(crates: &KitchenSink, all: &RichCrate, k: &RichCrat
versions: all.versions(),
description: k.description().unwrap_or(""),
readme: k.readme().map(|readme| {
- renderer.page_node(&readme.markup, None, false, None)
+ renderer.page_node(&readme.markup, None, Links::Ugc, None)
}).as_ref(),
owners: all.owners(),
authors: k.authors(),
diff --git a/render_readme b/render_readme
-Subproject 90b6dee02e393d6149d53eb6477cff797d00026
+Subproject 8778c7bb274185745693d40b51d6c796f989133
diff --git a/rich_crate/Cargo.toml b/rich_crate/Cargo.toml
index f89ed07..8d3288c 100644
--- a/rich_crate/Cargo.toml
+++ b/rich_crate/Cargo.toml
@@ -8,7 +8,7 @@ license = "Apache-2.0 OR MIT"
[dependencies]
crates_io_client = { path = "../crates_io_client", version = "0.8.2" }
-render_readme = { git = "https://gitlab.com/crates.rs/render_readme.git", version = "0.6.0" }
+render_readme = { git = "https://gitlab.com/crates.rs/render_readme.git", version = "0.7" }
categories = { path = "../categories" }
udedokei = { path = "../udedokei" }
cargo_author = "1.0.2"
diff --git a/server/Cargo.toml b/server/Cargo.toml
index c046be5..7f148de 100644
--- a/server/Cargo.toml
+++ b/server/Cargo.toml
@@ -19,7 +19,7 @@ assets = [
actix-web = "2"
env_logger = "0.7"
log = "0.4.6"
-render_readme = { git = "https://gitlab.com/crates.rs/render_readme.git", version = "0.6.1" }
+render_readme = { git = "https://gitlab.com/crates.rs/render_readme.git", version = "0.7" }
search_index = { path = "../search_index" }
repo_url = { path = "../repo_url" }
kitchen_sink = { path = "../kitchen_sink", version = "0.9" }