gtk-rs/gtk4 54
GTK 4 bindings and wrappers for Rust (Development)
WebKit2 bindings and wrappers for Rust
Testing GTK UI
sourceview binding for Rust
JavaScriptCore bindings and wrappers for Rust
GTK 4 Rust examples (development)
Bindings for the pangocairo library
GDK 4 bindings and wrappers for Rust (Development)
Atk binding in rust
gtk-rs/webkit2gtk-webextension-rs 5
WebKit2GTK+ Web Extensions bindings and wrappers for Rust
push eventGuillaumeGomez/rust-GSL
commit sha c5cb452dc7fcb234f0037a2abae56e74b47da6e6
ntuples
push time in 2 hours
push eventGuillaumeGomez/rust
commit sha 423d323d01813985f37a725bdb3c70f6850deb58
Add `unclosed_html_tags` lint
commit sha c53ff813186b50e312800575789251a1bcfc583e
Add doc for invalid_html_tag lint
commit sha 6d8e95a76d678d0e7031f3dc25a05cab55773f3a
Add test for unclosed_html_tag lint
push time in 5 hours
push eventGuillaumeGomez/rust
commit sha 6f84988ee7f5dcd7506876e5ea1f94dcb0210dee
Add `unclosed_html_tags` lint
commit sha a9edde6d4c9395480fdadc835bf19d4e8a09f153
Add doc for invalid_html_tag lint
commit sha 87aac2eda3d457a48b7edae0bd8c8bfcde9dde84
Add test for unclosed_html_tag lint
push time in 5 hours
pull request commentrust-lang/rust
Use adaptive SVG favicon for rustdoc like other rust sites
Thanks!
@bors: r+ rollup
comment created time in 10 hours
Pull request review commentrust-lang/rust
+use super::{span_of_attrs, Pass};+use crate::clean::*;+use crate::core::DocContext;+use crate::fold::DocFolder;+use crate::html::markdown::opts;+use rustc_hir::hir_id::HirId;+use rustc_session::lint;+use rustc_span::Span;+use pulldown_cmark::{Event, Parser};++pub const CHECK_UNCLOSED_HTML_TAGS: Pass = Pass {+ name: "check-unclosed-html-tags",+ run: check_unclosed_html_tags,+ description: "detects unclosed HTML tags in doc comments",+};++struct UnclosedHtmlTagsLinter<'a, 'tcx> {+ cx: &'a DocContext<'tcx>,+}++impl<'a, 'tcx> UnclosedHtmlTagsLinter<'a, 'tcx> {+ fn new(cx: &'a DocContext<'tcx>) -> Self {+ UnclosedHtmlTagsLinter { cx }+ }+}++pub fn check_unclosed_html_tags(krate: Crate, cx: &DocContext<'_>) -> Crate {+ let mut coll = UnclosedHtmlTagsLinter::new(cx);++ coll.fold_crate(krate)+}++const ALLOWED_UNCLOSED: &[&str] = &[+ "area", "base", "br", "col", "embed", "hr", "img", "input", "keygen", "link", "meta", "param",+ "source", "track", "wbr",+];++fn drop_tag(cx: &DocContext<'_>, tags: &mut Vec<String>, tag_name: String, hir_id: HirId, sp: Span) {+ // In case the tag wasn't in the queue, I guess it's not really an issue...+ if let Some(pos) = tags.iter().position(|t| *t == tag_name) {+ for _ in pos + 1..tags.len() {
If the tags are after pos, it means they're unclosed and so we should warn.
comment created time in 10 hours
Pull request review commentrust-lang/rust
+use super::{span_of_attrs, Pass};+use crate::clean::*;+use crate::core::DocContext;+use crate::fold::DocFolder;+use crate::html::markdown::opts;+use rustc_hir::hir_id::HirId;+use rustc_session::lint;+use rustc_span::Span;+use pulldown_cmark::{Event, Parser};++pub const CHECK_UNCLOSED_HTML_TAGS: Pass = Pass {+ name: "check-unclosed-html-tags",+ run: check_unclosed_html_tags,+ description: "detects unclosed HTML tags in doc comments",+};++struct UnclosedHtmlTagsLinter<'a, 'tcx> {+ cx: &'a DocContext<'tcx>,+}++impl<'a, 'tcx> UnclosedHtmlTagsLinter<'a, 'tcx> {+ fn new(cx: &'a DocContext<'tcx>) -> Self {+ UnclosedHtmlTagsLinter { cx }+ }+}++pub fn check_unclosed_html_tags(krate: Crate, cx: &DocContext<'_>) -> Crate {+ let mut coll = UnclosedHtmlTagsLinter::new(cx);++ coll.fold_crate(krate)+}++const ALLOWED_UNCLOSED: &[&str] = &[+ "area", "base", "br", "col", "embed", "hr", "img", "input", "keygen", "link", "meta", "param",+ "source", "track", "wbr",+];++fn drop_tag(cx: &DocContext<'_>, tags: &mut Vec<String>, tag_name: String, hir_id: HirId, sp: Span) {+ // In case the tag wasn't in the queue, I guess it's not really an issue...+ if let Some(pos) = tags.iter().position(|t| *t == tag_name) {+ for _ in pos + 1..tags.len() {+ if ALLOWED_UNCLOSED.iter().find(|&at| at == &tags[pos + 1]).is_some() {+ continue;+ }+ cx.tcx.struct_span_lint_hir(+ lint::builtin::UNCLOSED_HTML_TAGS,+ hir_id,+ sp,+ |lint| lint.build(&format!("Unclosed HTML tag `{}`", tags[pos])).emit(),
:+1:
comment created time in 20 hours
Pull request review commentrust-lang/rust
+use super::{span_of_attrs, Pass};+use crate::clean::*;+use crate::core::DocContext;+use crate::fold::DocFolder;+use crate::html::markdown::opts;+use rustc_hir::hir_id::HirId;+use rustc_session::lint;+use rustc_span::Span;+use pulldown_cmark::{Event, Parser};++pub const CHECK_UNCLOSED_HTML_TAGS: Pass = Pass {+ name: "check-unclosed-html-tags",+ run: check_unclosed_html_tags,+ description: "detects unclosed HTML tags in doc comments",+};++struct UnclosedHtmlTagsLinter<'a, 'tcx> {+ cx: &'a DocContext<'tcx>,+}++impl<'a, 'tcx> UnclosedHtmlTagsLinter<'a, 'tcx> {+ fn new(cx: &'a DocContext<'tcx>) -> Self {+ UnclosedHtmlTagsLinter { cx }+ }+}++pub fn check_unclosed_html_tags(krate: Crate, cx: &DocContext<'_>) -> Crate {+ let mut coll = UnclosedHtmlTagsLinter::new(cx);++ coll.fold_crate(krate)+}++const ALLOWED_UNCLOSED: &[&str] = &[+ "area", "base", "br", "col", "embed", "hr", "img", "input", "keygen", "link", "meta", "param",+ "source", "track", "wbr",+];++fn drop_tag(cx: &DocContext<'_>, tags: &mut Vec<String>, tag_name: String, hir_id: HirId, sp: Span) {+ // In case the tag wasn't in the queue, I guess it's not really an issue...+ if let Some(pos) = tags.iter().position(|t| *t == tag_name) {+ for _ in pos + 1..tags.len() {
Absolutely, it's the goal! I'll add a test for them as well then.
comment created time in 20 hours
Pull request review commentrust-lang/rust
+use super::{span_of_attrs, Pass};+use crate::clean::*;+use crate::core::DocContext;+use crate::fold::DocFolder;+use crate::html::markdown::opts;+use rustc_hir::hir_id::HirId;+use rustc_session::lint;+use rustc_span::Span;+use pulldown_cmark::{Event, Parser};++pub const CHECK_UNCLOSED_HTML_TAGS: Pass = Pass {+ name: "check-unclosed-html-tags",+ run: check_unclosed_html_tags,+ description: "detects unclosed HTML tags in doc comments",+};++struct UnclosedHtmlTagsLinter<'a, 'tcx> {+ cx: &'a DocContext<'tcx>,+}++impl<'a, 'tcx> UnclosedHtmlTagsLinter<'a, 'tcx> {+ fn new(cx: &'a DocContext<'tcx>) -> Self {+ UnclosedHtmlTagsLinter { cx }+ }+}++pub fn check_unclosed_html_tags(krate: Crate, cx: &DocContext<'_>) -> Crate {+ let mut coll = UnclosedHtmlTagsLinter::new(cx);++ coll.fold_crate(krate)+}++const ALLOWED_UNCLOSED: &[&str] = &[+ "area", "base", "br", "col", "embed", "hr", "img", "input", "keygen", "link", "meta", "param",+ "source", "track", "wbr",+];++fn drop_tag(cx: &DocContext<'_>, tags: &mut Vec<String>, tag_name: String, hir_id: HirId, sp: Span) {+ // In case the tag wasn't in the queue, I guess it's not really an issue...+ if let Some(pos) = tags.iter().position(|t| *t == tag_name) {+ for _ in pos + 1..tags.len() {+ if ALLOWED_UNCLOSED.iter().find(|&at| at == &tags[pos + 1]).is_some() {+ continue;+ }+ cx.tcx.struct_span_lint_hir(+ lint::builtin::UNCLOSED_HTML_TAGS,+ hir_id,+ sp,+ |lint| lint.build(&format!("Unclosed HTML tag `{}`", tags[pos])).emit(),+ );+ tags.remove(pos + 1);
Explanation in the comment above. ;)
I should maybe add a comment explaining what's going on if it's troublesome though!
comment created time in 20 hours
Pull request review commentrust-lang/rust
+use super::{span_of_attrs, Pass};+use crate::clean::*;+use crate::core::DocContext;+use crate::fold::DocFolder;+use crate::html::markdown::opts;+use rustc_hir::hir_id::HirId;+use rustc_session::lint;+use rustc_span::Span;+use pulldown_cmark::{Event, Parser};++pub const CHECK_UNCLOSED_HTML_TAGS: Pass = Pass {+ name: "check-unclosed-html-tags",+ run: check_unclosed_html_tags,+ description: "detects unclosed HTML tags in doc comments",+};++struct UnclosedHtmlTagsLinter<'a, 'tcx> {+ cx: &'a DocContext<'tcx>,+}++impl<'a, 'tcx> UnclosedHtmlTagsLinter<'a, 'tcx> {+ fn new(cx: &'a DocContext<'tcx>) -> Self {+ UnclosedHtmlTagsLinter { cx }+ }+}++pub fn check_unclosed_html_tags(krate: Crate, cx: &DocContext<'_>) -> Crate {+ let mut coll = UnclosedHtmlTagsLinter::new(cx);++ coll.fold_crate(krate)+}++const ALLOWED_UNCLOSED: &[&str] = &[+ "area", "base", "br", "col", "embed", "hr", "img", "input", "keygen", "link", "meta", "param",+ "source", "track", "wbr",+];++fn drop_tag(cx: &DocContext<'_>, tags: &mut Vec<String>, tag_name: String, hir_id: HirId, sp: Span) {+ // In case the tag wasn't in the queue, I guess it's not really an issue...+ if let Some(pos) = tags.iter().position(|t| *t == tag_name) {+ for _ in pos + 1..tags.len() {+ if ALLOWED_UNCLOSED.iter().find(|&at| at == &tags[pos + 1]).is_some() {
I use the vec as a queue, therefore, all items coming after pos are included into it. In this case, I go top to bottom to the included tags.
comment created time in 20 hours
Pull request review commentrust-lang/rust
+use super::{span_of_attrs, Pass};+use crate::clean::*;+use crate::core::DocContext;+use crate::fold::DocFolder;+use crate::html::markdown::opts;+use rustc_hir::hir_id::HirId;+use rustc_session::lint;+use rustc_span::Span;+use pulldown_cmark::{Event, Parser};++pub const CHECK_UNCLOSED_HTML_TAGS: Pass = Pass {+ name: "check-unclosed-html-tags",+ run: check_unclosed_html_tags,+ description: "detects unclosed HTML tags in doc comments",+};++struct UnclosedHtmlTagsLinter<'a, 'tcx> {+ cx: &'a DocContext<'tcx>,+}++impl<'a, 'tcx> UnclosedHtmlTagsLinter<'a, 'tcx> {+ fn new(cx: &'a DocContext<'tcx>) -> Self {+ UnclosedHtmlTagsLinter { cx }+ }+}++pub fn check_unclosed_html_tags(krate: Crate, cx: &DocContext<'_>) -> Crate {+ let mut coll = UnclosedHtmlTagsLinter::new(cx);++ coll.fold_crate(krate)+}++const ALLOWED_UNCLOSED: &[&str] = &[+ "area", "base", "br", "col", "embed", "hr", "img", "input", "keygen", "link", "meta", "param",+ "source", "track", "wbr",+];++fn drop_tag(cx: &DocContext<'_>, tags: &mut Vec<String>, tag_name: String, hir_id: HirId, sp: Span) {+ // In case the tag wasn't in the queue, I guess it's not really an issue...
Then we need to update the lint name to reflect it. What about invalid_html_tag?
comment created time in 20 hours
Pull request review commentrust-lang/rust
+use super::{span_of_attrs, Pass};+use crate::clean::*;+use crate::core::DocContext;+use crate::fold::DocFolder;+use crate::html::markdown::opts;+use rustc_hir::hir_id::HirId;+use rustc_session::lint;+use rustc_span::Span;+use pulldown_cmark::{Event, Parser};++pub const CHECK_UNCLOSED_HTML_TAGS: Pass = Pass {+ name: "check-unclosed-html-tags",+ run: check_unclosed_html_tags,+ description: "detects unclosed HTML tags in doc comments",+};++struct UnclosedHtmlTagsLinter<'a, 'tcx> {+ cx: &'a DocContext<'tcx>,+}++impl<'a, 'tcx> UnclosedHtmlTagsLinter<'a, 'tcx> {+ fn new(cx: &'a DocContext<'tcx>) -> Self {+ UnclosedHtmlTagsLinter { cx }+ }+}++pub fn check_unclosed_html_tags(krate: Crate, cx: &DocContext<'_>) -> Crate {+ let mut coll = UnclosedHtmlTagsLinter::new(cx);++ coll.fold_crate(krate)+}++const ALLOWED_UNCLOSED: &[&str] = &[+ "area", "base", "br", "col", "embed", "hr", "img", "input", "keygen", "link", "meta", "param",+ "source", "track", "wbr",+];++fn drop_tag(cx: &DocContext<'_>, tags: &mut Vec<String>, tag_name: String, hir_id: HirId, sp: Span) {+ // In case the tag wasn't in the queue, I guess it's not really an issue...+ if let Some(pos) = tags.iter().position(|t| *t == tag_name) {+ for _ in pos + 1..tags.len() {+ if ALLOWED_UNCLOSED.iter().find(|&at| at == &tags[pos + 1]).is_some() {+ continue;+ }+ cx.tcx.struct_span_lint_hir(+ lint::builtin::UNCLOSED_HTML_TAGS,+ hir_id,+ sp,+ |lint| lint.build(&format!("Unclosed HTML tag `{}`", tags[pos])).emit(),+ );+ tags.remove(pos + 1);+ }+ tags.remove(pos);+ }+}++fn extract_tag(cx: &DocContext<'_>, tags: &mut Vec<String>, text: &str, hir_id: HirId, sp: Span) {+ let mut iter = text.chars().peekable();++ while let Some(c) = iter.next() {+ if c == '<' {+ let mut tag_name = String::new();+ let mut is_closing = false;+ while let Some(&c) = iter.peek() {+ if c == '/' && tag_name.is_empty() {+ is_closing = true;+ } else if c.is_ascii_alphanumeric() && !c.is_ascii_uppercase() {+ tag_name.push(c);
No, it can also be </script>.
comment created time in 20 hours
Pull request review commentrust-lang/rust
+use super::{span_of_attrs, Pass};+use crate::clean::*;+use crate::core::DocContext;+use crate::fold::DocFolder;+use crate::html::markdown::opts;+use rustc_hir::hir_id::HirId;+use rustc_session::lint;+use rustc_span::Span;+use pulldown_cmark::{Event, Parser};++pub const CHECK_UNCLOSED_HTML_TAGS: Pass = Pass {+ name: "check-unclosed-html-tags",+ run: check_unclosed_html_tags,+ description: "detects unclosed HTML tags in doc comments",+};++struct UnclosedHtmlTagsLinter<'a, 'tcx> {+ cx: &'a DocContext<'tcx>,+}++impl<'a, 'tcx> UnclosedHtmlTagsLinter<'a, 'tcx> {+ fn new(cx: &'a DocContext<'tcx>) -> Self {+ UnclosedHtmlTagsLinter { cx }+ }+}++pub fn check_unclosed_html_tags(krate: Crate, cx: &DocContext<'_>) -> Crate {+ let mut coll = UnclosedHtmlTagsLinter::new(cx);++ coll.fold_crate(krate)+}++const ALLOWED_UNCLOSED: &[&str] = &[+ "area", "base", "br", "col", "embed", "hr", "img", "input", "keygen", "link", "meta", "param",+ "source", "track", "wbr",+];++fn drop_tag(cx: &DocContext<'_>, tags: &mut Vec<String>, tag_name: String, hir_id: HirId, sp: Span) {+ // In case the tag wasn't in the queue, I guess it's not really an issue...+ if let Some(pos) = tags.iter().position(|t| *t == tag_name) {+ for _ in pos + 1..tags.len() {+ if ALLOWED_UNCLOSED.iter().find(|&at| at == &tags[pos + 1]).is_some() {+ continue;+ }+ cx.tcx.struct_span_lint_hir(+ lint::builtin::UNCLOSED_HTML_TAGS,+ hir_id,+ sp,+ |lint| lint.build(&format!("Unclosed HTML tag `{}`", tags[pos])).emit(),+ );+ tags.remove(pos + 1);+ }+ tags.remove(pos);+ }+}++fn extract_tag(cx: &DocContext<'_>, tags: &mut Vec<String>, text: &str, hir_id: HirId, sp: Span) {+ let mut iter = text.chars().peekable();++ while let Some(c) = iter.next() {+ if c == '<' {+ let mut tag_name = String::new();+ let mut is_closing = false;+ while let Some(&c) = iter.peek() {+ if c == '/' && tag_name.is_empty() {+ is_closing = true;+ } else if c.is_ascii_alphanumeric() && !c.is_ascii_uppercase() {+ tag_name.push(c);+ } else {+ break;+ }+ iter.next();+ }+ if tag_name.is_empty() {+ // Not an HTML tag presumably...
Like I said to you, currently, if there is an HTML tag, it returns the whole line as being HTML, meaning you definitely can have < in the line even though it's not an HTML tag.
comment created time in 20 hours
Pull request review commentrust-lang/rust
+use super::{span_of_attrs, Pass};+use crate::clean::*;+use crate::core::DocContext;+use crate::fold::DocFolder;+use crate::html::markdown::opts;+use rustc_hir::hir_id::HirId;+use rustc_session::lint;+use rustc_span::Span;+use pulldown_cmark::{Event, Parser};++pub const CHECK_UNCLOSED_HTML_TAGS: Pass = Pass {+ name: "check-unclosed-html-tags",+ run: check_unclosed_html_tags,+ description: "detects unclosed HTML tags in doc comments",+};++struct UnclosedHtmlTagsLinter<'a, 'tcx> {+ cx: &'a DocContext<'tcx>,+}++impl<'a, 'tcx> UnclosedHtmlTagsLinter<'a, 'tcx> {+ fn new(cx: &'a DocContext<'tcx>) -> Self {+ UnclosedHtmlTagsLinter { cx }+ }+}++pub fn check_unclosed_html_tags(krate: Crate, cx: &DocContext<'_>) -> Crate {+ let mut coll = UnclosedHtmlTagsLinter::new(cx);++ coll.fold_crate(krate)+}++const ALLOWED_UNCLOSED: &[&str] = &[+ "area", "base", "br", "col", "embed", "hr", "img", "input", "keygen", "link", "meta", "param",+ "source", "track", "wbr",+];++fn drop_tag(cx: &DocContext<'_>, tags: &mut Vec<String>, tag_name: String, hir_id: HirId, sp: Span) {+ // In case the tag wasn't in the queue, I guess it's not really an issue...+ if let Some(pos) = tags.iter().position(|t| *t == tag_name) {+ for _ in pos + 1..tags.len() {+ if ALLOWED_UNCLOSED.iter().find(|&at| at == &tags[pos + 1]).is_some() {+ continue;+ }+ cx.tcx.struct_span_lint_hir(+ lint::builtin::UNCLOSED_HTML_TAGS,+ hir_id,+ sp,+ |lint| lint.build(&format!("Unclosed HTML tag `{}`", tags[pos])).emit(),+ );+ tags.remove(pos + 1);+ }+ tags.remove(pos);+ }+}++fn extract_tag(cx: &DocContext<'_>, tags: &mut Vec<String>, text: &str, hir_id: HirId, sp: Span) {
I guess it could. But then it would need to instead of having just Html(&str), something more complicated like HtmlOpenTag(&str) and HtmlCloseTag(&str). But that seems doable. I can add it there if that seems fine to you.
comment created time in 20 hours
Pull request review commentrust-lang/rust
+use super::{span_of_attrs, Pass};+use crate::clean::*;+use crate::core::DocContext;+use crate::fold::DocFolder;+use crate::html::markdown::opts;+use rustc_hir::hir_id::HirId;+use rustc_session::lint;+use rustc_span::Span;+use pulldown_cmark::{Event, Parser};++pub const CHECK_UNCLOSED_HTML_TAGS: Pass = Pass {+ name: "check-unclosed-html-tags",+ run: check_unclosed_html_tags,+ description: "detects unclosed HTML tags in doc comments",+};++struct UnclosedHtmlTagsLinter<'a, 'tcx> {+ cx: &'a DocContext<'tcx>,+}++impl<'a, 'tcx> UnclosedHtmlTagsLinter<'a, 'tcx> {+ fn new(cx: &'a DocContext<'tcx>) -> Self {+ UnclosedHtmlTagsLinter { cx }+ }+}++pub fn check_unclosed_html_tags(krate: Crate, cx: &DocContext<'_>) -> Crate {+ let mut coll = UnclosedHtmlTagsLinter::new(cx);++ coll.fold_crate(krate)+}++const ALLOWED_UNCLOSED: &[&str] = &[+ "area", "base", "br", "col", "embed", "hr", "img", "input", "keygen", "link", "meta", "param",+ "source", "track", "wbr",+];++fn drop_tag(cx: &DocContext<'_>, tags: &mut Vec<String>, tag_name: String, hir_id: HirId, sp: Span) {
I always write the code this way: "includes"/"declarations" then I use them in the code at the bottom.
comment created time in 20 hours
issue commentGuillaumeGomez/sysinfo
get_components() returning a empty array on Windows
The issue remains, so let's keep it open until it's fixed.
comment created time in 20 hours
Pull request review commentrust-lang/rust
+#![deny(unclosed_html_tags)]++/// <script>+//~^ ERROR Unclosed HTML tag `unknown`+//~^^ ERROR Unclosed HTML tag `script`
Like said above, it's currently only showing the doc comment location, not the faulty content location.
comment created time in 20 hours
Pull request review commentrust-lang/rust
+#![deny(unclosed_html_tags)]++/// <script>+//~^ ERROR Unclosed HTML tag `unknown`
No, currently it always points to the doc comment, not the location. It's not great in that regard...
comment created time in 20 hours
Pull request review commentrust-lang/rust
declare_lint! { "detects code samples in docs of private items not documented by rustdoc" } +declare_lint! {+ /// The `private_doc_tests` lint detects code samples in docs of private+ /// items not documented by `rustdoc`. This is a `rustdoc` only lint, see+ /// the documentation in the [rustdoc book].+ ///+ /// [rustdoc book]: ../../../rustdoc/lints.html#private_doc_tests
Oh damn, I forgot all the doc part. :o
comment created time in 20 hours
issue commentGuillaumeGomez/sysinfo
get_components() returning a empty array on Windows
To be honest, the component part on windows is tricky and strongly under-developed because of all the issues I encountered along the way. I know there are other APIs that might allow to remove the current limitations but I don't really have time or motivation to look into them. If you're interested, it'd be a great add. :)
comment created time in 21 hours
push eventGuillaumeGomez/rust
commit sha 45f17735afa9fbf2d5d01269f14e2e120eed5917
Add `unclosed_html_tags` lint
commit sha 0f0632fffe1bca079ccdbde795050905797e6b47
Add test for unclosed_html_tag lint
push time in a day
PR opened rust-lang/rust
Fixes #67799.
I think @ollie27 will be interested (@Manishearth too since they opened the issue ;) ).
r? @jyn514
pr created time in a day
push eventGuillaumeGomez/pulldown-cmark
commit sha 49c7fb38af78d55bbe2b320882d0288bbd777456
Some clippy assisted cleanups
commit sha f84f54eda1059d22e6ae7e851a7e20d8f9a10d83
Add GFM's tasklist spec and tests
commit sha 7244feb515cae7ba8d132cefde74c8499745325d
Implement GFM's tasklist spec
commit sha 96684a74fd3a7dae6ad31df278cb7d5b13c695a5
Use memchr crate to speed up scanning specific chars
commit sha 86eb0c74c839bf70b2979694e0393707a7abc3f4
Implement an event iterator that includes source offsets
commit sha b1e23959bc7ff448ea631488a7402c3df45e86c5
Merge pull request #226 from GuillaumeGomez/missing-display Add missing Display impl
commit sha 85b17bdebee60e9e6041b79fd44ffb255f2c36a8
Use Range in offset_iter API
commit sha 805544699033794709bede83e51d8af0b12adf4a
Bump version to 0.4
commit sha e360e928a4fb76a3414b14bf2851e20cc51475aa
Merge pull request #222 from marcusklaas/offset-iter Implement an event iterator that includes source offsets
commit sha 7afbde65ed7c76964f1f4af3885baa6017519db8
Check right option for tasklist extension
commit sha 37248c71710009561b4b7fd08ddc97f4c32a4a60
Enable tasklist extension for tests
commit sha 8bb7e6a2f848af259afeffa2af82016fab1c9377
Merge pull request #220 from marcusklaas/tasklists2 Implement GFM's task lists spec
commit sha 168e1efbc84892afb5f7a93ff09eb307ad594916
Merge pull request #221 from marcusklaas/memchr Use memchr crate to speed up scanning specific chars
commit sha b12de96c0e1ec230b9f9781b63a7ff65b171afca
Use explicitly elided lifetimes in paths
commit sha bf6eff2ba071fca09382a897d3c4be843bd2aa1b
Merge remote-tracking branch 'upstream/master' into clipyp
commit sha 3d4d9684029c09b95a79ababae96d66c0cab72a8
Fix one more elided lifetime in path
commit sha dcf620cc4713e158b30b305a1436902050e1e773
Cleanup table parsing code
commit sha 81c5d04345eac8afd102f26eb7cf3bd858d4994a
Merge pull request #227 from marcusklaas/0.4-release Bump version to 0.4
commit sha c622fd5799b1252a9657cd70666b779a7278de4d
Dereference u8 in iterator pattern in get_html_end_tag
commit sha 3e4ef167f4169ce1f384fd648e40396fa32ee290
Merge pull request #208 from marcusklaas/clippy Some clippy assisted cleanups
push time in a day
push eventgtk-rs/gtk
commit sha 3a7c6972d6448a116685bb8a94ec53f49749d98d
Subclassing: ListBox and ListBoxRow
commit sha f41dffc62acbf61aa641b06cd90534ba6ac4cfad
Merge pull request #1059 from kavanmevada/list_box Subclassing: ListBox and ListBoxRow
push time in a day
PR merged gtk-rs/gtk
pr closed time in a day
push eventGuillaumeGomez/rust-GSL
commit sha 3572c7b386b68dec6ed1dbf7018e1f11b9ea6797
End of integration
push time in 2 days
issue openedGuillaumeGomez/c_vec-rs
Add CSliceMut to allow non mutable slices
created time in 2 days
create barnchGuillaumeGomez/rust
branch : missing-code-examples-slice-iter
created branch time in 2 days
pull request commentsdroege/ebur128
Implement Ftz around a FnOnce closure to prevent the possibility to p…
cc @nox
comment created time in 2 days
Pull request review commentrust-lang/rust
Use adaptive SVG favicon for rustdoc like other rust sites
pub fn render<T: Print, S: Print>( keywords = page.keywords, favicon = if layout.favicon.is_empty() { format!(- r#"<link rel="shortcut icon" href="{static_root_path}favicon{suffix}.ico">"#,+ r##"<link rel="alternate icon" type="image/png" href="{static_root_path}favicon-16x16{suffix}.png">+<link rel="alternate icon" type="image/png" href="{static_root_path}favicon-32x32{suffix}.png">+<link rel="icon" type="image/svg+xml" href="{static_root_path}favicon{suffix}.svg">"##,
Thanks! ;)
comment created time in 2 days
Pull request review commentrust-lang/rust
Use adaptive SVG favicon for rustdoc like other rust sites
pub fn render<T: Print, S: Print>( keywords = page.keywords, favicon = if layout.favicon.is_empty() { format!(- r#"<link rel="shortcut icon" href="{static_root_path}favicon{suffix}.ico">"#,+ r##"<link rel="alternate icon" type="image/png" href="{static_root_path}favicon-16x16{suffix}.png">+<link rel="alternate icon" type="image/png" href="{static_root_path}favicon-32x32{suffix}.png">+<link rel="icon" type="image/svg+xml" href="{static_root_path}favicon{suffix}.svg">"##,
From the code you showed, non-alternate comes first. ;)
comment created time in 2 days
pull request commentrust-lang/rust
Use adaptive SVG favicon for rustdoc like other rust sites
Just a nit/question but otherwise looks good to me.
comment created time in 2 days
Pull request review commentrust-lang/rust
Use adaptive SVG favicon for rustdoc like other rust sites
pub fn render<T: Print, S: Print>( keywords = page.keywords, favicon = if layout.favicon.is_empty() { format!(- r#"<link rel="shortcut icon" href="{static_root_path}favicon{suffix}.ico">"#,+ r##"<link rel="alternate icon" type="image/png" href="{static_root_path}favicon-16x16{suffix}.png">+<link rel="alternate icon" type="image/png" href="{static_root_path}favicon-32x32{suffix}.png">+<link rel="icon" type="image/svg+xml" href="{static_root_path}favicon{suffix}.svg">"##,
Shouldn't the order be the "icon" first and the "alternate" then?
comment created time in 2 days
push eventGuillaumeGomez/rust
commit sha 143557ec56124c246d6cf4c37398e657f84536e1
Add missing examples on Vec iter types
push time in 2 days
pull request commentrust-lang/rust
Add missing examples on Vec iter types
@pickfire And like I said in the other PR, the examples here are focused on how to get this type, not how to use it (which is showed in the original function). All public items should have code examples.
comment created time in 2 days
Pull request review commentrust-lang/rust
extern "C" { #[ffi_const] // ok! pub fn strlen(s: *const i8) -> i32; }++#[ffi_pure]+extern "C" pub fn foo() {} // ok!
I don't see what it's adding. :-/
comment created time in 2 days
push eventGuillaumeGomez/rust-GSL
commit sha 4aa8990664d610e7e40206dc5a6d2f33b22ec5e0
Work in progress for integration
push time in 3 days
push eventGuillaumeGomez/rust-GSL
commit sha 4986004ffcbaecebd5daf72a906c9f9c3bc5b488
Clean up return types
push time in 3 days
pull request commentrust-lang/rust
Let's go again!
@bors: r=jyn514 rollup
comment created time in 3 days
push eventGuillaumeGomez/rust
commit sha 9daf8fd5b1d369cd2f91ac919dc5d17f4fd43c0c
inliner: Emit storage markers for introduced arg temporaries When introducing argument temporaries during inlining, emit storage marker statements just before the assignment and in the beginning of the return block. This ensures that such temporaries will not be considered live across yield points after inlining inside a generator.
commit sha 4df64905ea74f9732cb1448c14f72b17d3f32abc
Link & primitive using relative link
commit sha ccf41dd5eb42730b1de6a4bc9d95c03dca0a8143
Rename IsJoint -> Spacing To match better naming from proc-macro
commit sha 4b132eefb48880a7a3781efe844d13845b070c07
Initial commit
commit sha 8d9187597a5e8ebcf17acba6b234884252b1a543
Update to use multipart suggestion Nice.
commit sha 96bb2c86f2cfe03ad870d12b3b838e8b75eb1978
Add further tests and liberalize type checking
commit sha af133382f20b2e506b9e14b93e714fb76c7f6902
Check test/example/benchmark on x.py check Often when modifying compiler code you'll miss that you've changed an API used by unit tests, since x.py check didn't previously catch that. It's also useful to have this for editing with rust-analyzer and similar tooling where editing tests previously didn't notify you of errors in test files.
commit sha 2278c7255a1423b12d0efee3de43b23fa0d5b892
Remove vec-to_str.rs, merge the remaining test in with vec
commit sha ccf1f580812b25eda231d4f2ac2e20c445fe7b62
rustdoc: fix min_const_generics with ty::Param
commit sha a2e077e405f9538b42d32e18082d50d0102d2334
Make `Ipv4Addr` and `Ipv6Addr` const tests unit tests under `library` These tests are about the standard library, not the compiler itself, thus should live in `library`, see #76268.
commit sha 09d3db2e590030de8ae7d00589f8a174e5f51f03
Optimize Cursor::look_ahead Cloning a tt is cheap, but not free (there's Arc inside).
commit sha 8c93125c17aeb9e9252054d4ddd0095ff4e60a2e
Address review comments on `Peekable::next_if`
commit sha 7b823df489e89d0ba3f6acd1cb788d3d8fbbf1e7
Link to `#capacity-and-reallocation` when using with_capacity
commit sha 787b2707a77fa1a98f512a4905662a1a16daf13c
Move const tests for `Result` to `library\core` Part of #76268
commit sha 79d563c819483eaf6e67b6aaaef9d0ca6030337d
Move const tests for `Ordering` to `library\core` Part of #76268
commit sha cbc396fdfb411b4963131889aeae5c675f4512a2
inliner: Check for target features compatibility
commit sha 326b772609c4cfbd09026c534be4cbfda36fbcf4
inliner: Check for no_sanitize attribute compatibility
commit sha c23151bdb1b242d96d545cfe4c5f3314b6ef448c
inliner: Add mir-opt tests for codegen attributes compatibility
commit sha b54386ab7a9da8a4f22db3a35a9ec7b0f2b98b6c
Detect overflow in proc_macro_server subspan
commit sha d98bac4e4e3cc87ec9b848c173d570ebe2aa30b6
Add tests for overflow in Vec::drain
push time in 3 days
pull request commentrust-lang/rust
Not, it was E0755, not this one. ;)
comment created time in 3 days
Pull request review commentgtk-rs/gtk
Subclassing: ListBox and ListBoxRow
+use glib::subclass::prelude::*;
We shouldn't. My thinking here is that it makes the code harder (and eventually slower to compile) in the location where it shouldn't. The crate provides the API, so we should make clear what it uses. I can update the other places if needed.
comment created time in 3 days
push eventGuillaumeGomez/rust-GSL
commit sha 7856d279ce85475bcc039a767e7e2acfb26065d9
Fix some constants' type
commit sha b52cd62334f3d75ee7548c652a600bec51323158
Clean enums
push time in 3 days
Pull request review commentgtk-rs/gtk
Subclassing: ListBox and ListBoxRow
++use glib::translate::*;++use glib::subclass::prelude::*;
No wildcard card import please.
comment created time in 3 days
Pull request review commentgtk-rs/gtk
Subclassing: ListBox and ListBoxRow
++use glib::translate::*;
No wildcard card import please.
comment created time in 3 days
Pull request review commentgtk-rs/gtk
Subclassing: ListBox and ListBoxRow
+use glib::subclass::prelude::*;
Also, please don't use wildcard import in the crate directly.
comment created time in 3 days
Pull request review commentgtk-rs/gtk
Subclassing: ListBox and ListBoxRow
+use glib::subclass::prelude::*;
Missing header.
comment created time in 3 days
Pull request review commentgtk-rs/gtk
Subclassing: ListBox and ListBoxRow
+
Missing header (take a look at the other files and copy/paste it).
comment created time in 3 days
pull request commentrust-lang/rust
Add --no-source option flag to rustdoc
It's not a new feature, that's why I asked if it required to go through an unstable phase since it's only providing a command-line flag for an already stable attribute. So this is a different issue in my opinion: this PR is about adding a command-line flag for a stable attribute. If the attribute itself has issues, then it should be fixed in another PR. What do you think @ollie27 ?
comment created time in 3 days
pull request commentrust-lang/rust
Add --no-source option flag to rustdoc
@bors: r=jyn514
comment created time in 3 days
push eventGuillaumeGomez/rust
commit sha 3fa8e8edc2cb2309361500280f4762ffeac39a49
Add --no-source option flag to rustdoc
commit sha 5b5e260b1b5620157fca7e44de1e09e6c9f9acc6
Add test for --no-source option flag
commit sha a867bd9a5389caa854103fd20221e2de354eaaa8
Add documentation for rustdoc --no-source flag
push time in 3 days
pull request commentrust-lang/rust
Add --no-source option flag to rustdoc
Added the documentation.
comment created time in 3 days
push eventGuillaumeGomez/rust
commit sha 92290d1631c0c0d87610cee842cc0d03fb95d6d0
Auto merge of #75463 - CDirkx:ordering-const, r=CDirkx Make some Ordering methods const Constify the following methods of `core::cmp::Ordering`: - `reverse` - `then` Possible because of #49146 (Allow `if` and `match` in constants). Tracking issue: #76113
commit sha af24bdbd96120d34f36595127376a3bf2800a7b6
Make `cow_is_borrowed` methods const Constify the following methods of `alloc::borrow::Cow`: - `is_borrowed` - `is_owned` These methods are still unstable under `cow_is_borrowed`. Possible because of #49146 (Allow if and match in constants). Tracking issue: #65143
commit sha d9208665b5eef883c025f44717f8c76afa871a94
Add `-Z proc-macro-backtrace` to allow showing proc-macro panics Fixes #75050 Previously, we would unconditionally suppress the panic hook during proc-macro execution. This commit adds a new flag -Z proc-macro-backtrace, which allows running the panic hook for easier debugging.
commit sha 3b4a346de72c3fa12b69dbcdc12116ba865ab50e
Fix incorrect wording for `verbose-tests` This info was lost in https://github.com/rust-lang/rust/pull/74334.
commit sha d983873cff7467e457bb5b3904ae7c238ffc2d38
Document the defaults for `codegen-units`
commit sha 41c13826f89665a4cf05c2e7ae470cb38fc699bc
Mention why you'd want codegen-units = 0 (other than running out of RAM)
commit sha db6cbfc49ca655739ba8caae43ebd7c77c8a1179
tidy: add new exceptions and remove std from skip list Also doing fmt inplace as requested.
commit sha a4e926daeeaedc9178846711daf1f4cb6ce505fb
std: move "mod tests/benches" to separate files Also doing fmt inplace as requested.
commit sha fbb367333190128015d35c0211877d71796f8deb
Make more Ipv4Addr methods const Constify the following methods of `std::net::Ipv4Addr`: - `octets` - `is_loopback` - `is_private` - `is_link_local` - `is_shared` - `is_ietf_protocol_assignment` - `is_benchmarking` - `is_multicast` - `is_documentation` Also insta-stabilizes these methods as const. Possible because of the stabilization of const integer arithmetic and control flow.
commit sha e98f0632bbec24b196dbd6fc820537f6f3724807
Auto merge of #75082 - Aaron1011:feature/proc-macro-backtrace, r=petrochenkov Add `-Z proc-macro-backtrace` to allow showing proc-macro panics Fixes #75050 Previously, we would unconditionally suppress the panic hook during proc-macro execution. This commit adds a new flag `-Z proc-macro-backtrace`, which allows running the panic hook for easier debugging.
commit sha 9f268de644df40c0ea9b323c475772d0ec2dc5b4
Address review comments - Use prettier syntax for codegen-units defaults - Remove comment about parallelism that only made sense for specific values of codegen-units - Be more specific about what `verbose-tests` does
commit sha 8ed5cb56b5e5cc216eb6820a44dd4f7ef65107b0
Auto merge of #76027 - davidtwco:issue-61139-remove-obsolete-pretty-printer, r=eddyb ty: remove obsolete pretty printer Fixes #61139. This PR removes the obsolete printer and replaces all uses of it with `FmtPrinter`. Of the replaced uses, all but one use was in `debug!` logging, two cases were notable: - `MonoItem::to_string` is used in `-Z print-mono-items` and therefore affects the output of all codegen-units tests (which have been updated). - `DefPathBasedNames` was used in `librustc_codegen_llvm/type_of.rs` with `LLVMStructCreateNamed` and that'll now get different values, but nothing will break as a result of this. cc @eddyb (whom I've discussed this with)
commit sha c88b167f1518370833c9216706d09735d1e2d697
Additional assumption to elide bounds check
commit sha 1d157ce797dddcee16a577796199b1144b4f7f34
Add codegen tests
commit sha 6c44bcc4ffeb0ee8059c2c167388c69dedf1ea44
Auto merge of #75926 - camelid:patch-5, r=jonas-schievink Fix typo in release notes
commit sha ec0924f9649ea472782df6d21595714cb594f038
do not apply DerefMut on union field
commit sha 44defaea3a2dd2e7e40336d3609df12b83db424a
also detect DerefMut in nested union fields
commit sha 97974e3cabefe725b6bea24c20e5fb9709e08a02
only emit error for ManuallyDrop derefs
commit sha 66b340f5003910bd8b46f6675cd9a491809aa9fe
test more ways of mutably accessing a place
commit sha 8bfe289886af727150c1b9ec502cbfd7bbf425e8
Auto merge of #75932 - Amjad50:intra-doc-core-slice, r=jyn514 Use intra-doc links for `core/src/slice.mod.rs` partial help in #75080 r? @jyn514 - most are using primitive types links, which cannot be used with intra links at the moment - also `std` cannot be referenced in any link, `std::ptr::NonNull` and `std::slice` could not be referenced
push time in 3 days
pull request commentrust-lang/rust
Add check for doc alias attribute at crate level
Updated!
comment created time in 3 days
push eventGuillaumeGomez/rust
commit sha 73e27b3e18dcbbef3a36620c4a44306e2bbdcd13
deny(unsafe_op_in_unsafe_fn) in libstd/process.rs
commit sha a7468705cbf0fb551b8b1d8b420123262f7d92b2
Use translated variable for test string Test should be educative, added english translation and pronounciation.
commit sha ba4c4988161abbe58e973b792c7e271785b4bc4d
Add more info for Vec Drain doc See its documentation for more
commit sha 71484121001b69aefdc41fd7192b7095250517a7
Vec slice example fix style and show type elision
commit sha ea5dc0909ea1ed4135f1bdecbaa3423051be578d
Make some Ordering methods const Constify the following methods of `core::cmp::Ordering`: - `reverse` - `then` Stabilizes these methods as const under the `const_ordering` feature. Also adds a test for these methods in a const context. Possible because of #49146 (Allow `if` and `match` in constants).
commit sha a80d39041e2d5cd58a846c9ef9e01ee9d691a7ed
Use inline(never) instead of cold inline(never) is better way to avoid optimizer to inline the function instead of cold.
commit sha 0b5e681f5af0d3989b49121969f09cf29f029263
Improve SGX RWLock initializer test
commit sha 9daf8fd5b1d369cd2f91ac919dc5d17f4fd43c0c
inliner: Emit storage markers for introduced arg temporaries When introducing argument temporaries during inlining, emit storage marker statements just before the assignment and in the beginning of the return block. This ensures that such temporaries will not be considered live across yield points after inlining inside a generator.
commit sha ccf1f580812b25eda231d4f2ac2e20c445fe7b62
rustdoc: fix min_const_generics with ty::Param
commit sha 79d563c819483eaf6e67b6aaaef9d0ca6030337d
Move const tests for `Ordering` to `library\core` Part of #76268
commit sha b54386ab7a9da8a4f22db3a35a9ec7b0f2b98b6c
Detect overflow in proc_macro_server subspan
commit sha d98bac4e4e3cc87ec9b848c173d570ebe2aa30b6
Add tests for overflow in Vec::drain
commit sha f8cfb2f5ad847b871399dfef9b8b8ff4e84a75cb
Add tests for overflow in String / VecDeque operations using ranges
commit sha 01510612ee20d14a3397427891a4042a34d53956
NRVO: Allow occurrences of the return place in var debug info The non-use occurrence of the return place in var debug info does not currently inhibit NRVO optimization, but it will fail assertion in `visit_place` when optimization is performed. Relax assertion check to allow the return place in var debug info. This case might be impossible to hit in optimization pipelines as of now, but can be encountered in customized mir-opt-level=2 pipeline with copy propagation disabled. For example in: ``` pub fn b(s: String) -> String { a(s) } #[inline] pub fn a(s: String) -> String { let x = s; let y = x; y } ```
commit sha 941dca8ed238a04a55741127165e9ad80671ed8a
Add Arith Tests in Library
commit sha dc37b553accd4fb2f8d0c59f69c701b524361cc2
Minor refactoring
commit sha 7d834c87d2ebb3d8dd4895bc5fabc4d44a1d2b52
Move Various str tests in library
commit sha 4efe97a3d9a5f2d295bc2fa9bd2bb90edf1986d5
Check placement of more attributes
commit sha f745b34960b2146dbaa7337856e7c5461cca29d5
Emit warnings for misplaced attributes used by some crates
commit sha 0c62ef08bd1a1860c4d6d1c22489d287a9359129
Allow #[cold], #[track_caller] on closures. Fix whitespace in error messages.
push time in 3 days
pull request commentrust-lang/rfcs
And I just thought, instead of "values", shouldn't we call them "items" instead? It seems more generic to me, meaning that v.name.html would therefore becomes i.name.hml. What do you think?
comment created time in 3 days
pull request commentrust-lang/rfcs
@danielhenrymantilla I think that we should keep v.name.html for values for consistency with other URLs.
comment created time in 3 days
Pull request review commentrust-lang/rust
Add check for doc alias attribute at crate level
fn is_c_like_enum(item: &Item<'_>) -> bool { fn check_mod_attrs(tcx: TyCtxt<'_>, module_def_id: LocalDefId) { tcx.hir() .visit_item_likes_in_module(module_def_id, &mut CheckAttrVisitor { tcx }.as_deep_visitor());+ if tcx.hir().local_def_id(CRATE_HIR_ID) == module_def_id {
:+1:
comment created time in 3 days
pull request commentrust-lang/rust
@bors: r=jyn514 rollup
comment created time in 3 days
push eventGuillaumeGomez/rust
commit sha f72fc26cddb9255aa8a7fb12107fc41abe27879f
Add explanation for E0756
push time in 3 days
push eventGuillaumeGomez/rust
commit sha be3d8e5d6cc6833963c00404ec48a7f8f4a0c606
Add missing code examples on HashMap types
push time in 3 days
issue commentGuillaumeGomez/sysinfo
get_components() returning a empty array on Windows
There is an important note on Windows:
/// Please note that on Windows, you need to have Administrator priviledges to get this
/// information.
Maybe try with Admin priviledges?
comment created time in 3 days
Pull request review commentgtk-rs/glib
Proposal: support for logging through the log crate
v2_58 = ["v2_56", "glib-sys/v2_58", "gobject-sys/v2_58"] v2_60 = ["v2_58", "glib-sys/v2_60"] v2_62 = ["v2_60", "glib-sys/v2_62", "gobject-sys/v2_62"] v2_64 = ["v2_62", "glib-sys/v2_64"]-dox = ["glib-sys/dox", "gobject-sys/dox"]+bridged_logging = ["log"]+bridged_logging_domain_macros = ["bridged_logging", "log"]
Sounds good to me!
comment created time in 3 days