Autogenerate CHANGELOG links to lints in wiki

This commit is contained in:
mcarton 2016-04-14 17:56:46 +02:00
parent 3511297330
commit d81481bd0d
2 changed files with 140 additions and 3 deletions

View file

@ -34,7 +34,7 @@ All notable changes to this project will be documented in this file.
## 0.0.56 — 2016-03-23
* Update to *rustc 1.9.0-nightly (0dcc413e4 2016-03-22)*
* New lint: [`non_expressive_names`]
* New lints: [`many_single_char_names`] and [`similar_names`]
## 0.0.55 — 2016-03-21
* Update to *rustc 1.9.0-nightly (02310fd31 2016-03-19)*
@ -67,22 +67,150 @@ All notable changes to this project will be documented in this file.
[configuration file]: ./rust-clippy#configuration
<!-- begin autogenerated links to wiki -->
[`absurd_extreme_comparisons`]: https://github.com/Manishearth/rust-clippy/wiki#absurd_extreme_comparisons
[`almost_swapped`]: https://github.com/Manishearth/rust-clippy/wiki#almost_swapped
[`approx_constant`]: https://github.com/Manishearth/rust-clippy/wiki#approx_constant
[`bad_bit_mask`]: https://github.com/Manishearth/rust-clippy/wiki#bad_bit_mask
[`blacklisted_name`]: https://github.com/Manishearth/rust-clippy/wiki#blacklisted_name
[`block_in_if_condition_expr`]: https://github.com/Manishearth/rust-clippy/wiki#block_in_if_condition_expr
[`block_in_if_condition_stmt`]: https://github.com/Manishearth/rust-clippy/wiki#block_in_if_condition_stmt
[`bool_comparison`]: https://github.com/Manishearth/rust-clippy/wiki#bool_comparison
[`box_vec`]: https://github.com/Manishearth/rust-clippy/wiki#box_vec
[`boxed_local`]: https://github.com/Manishearth/rust-clippy/wiki#boxed_local
[`cast_possible_truncation`]: https://github.com/Manishearth/rust-clippy/wiki#cast_possible_truncation
[`cast_possible_wrap`]: https://github.com/Manishearth/rust-clippy/wiki#cast_possible_wrap
[`cast_precision_loss`]: https://github.com/Manishearth/rust-clippy/wiki#cast_precision_loss
[`cast_sign_loss`]: https://github.com/Manishearth/rust-clippy/wiki#cast_sign_loss
[`char_lit_as_u8`]: https://github.com/Manishearth/rust-clippy/wiki#char_lit_as_u8
[`chars_next_cmp`]: https://github.com/Manishearth/rust-clippy/wiki#chars_next_cmp
[`clone_double_ref`]: https://github.com/Manishearth/rust-clippy/wiki#clone_double_ref
[`clone_on_copy`]: https://github.com/Manishearth/rust-clippy/wiki#clone_on_copy
[`cmp_nan`]: https://github.com/Manishearth/rust-clippy/wiki#cmp_nan
[`cmp_owned`]: https://github.com/Manishearth/rust-clippy/wiki#cmp_owned
[`collapsible_if`]: https://github.com/Manishearth/rust-clippy/wiki#collapsible_if
[`crosspointer_transmute`]: https://github.com/Manishearth/rust-clippy/wiki#crosspointer_transmute
[`cyclomatic_complexity`]: https://github.com/Manishearth/rust-clippy/wiki#cyclomatic_complexity
[`deprecated_semver`]: https://github.com/Manishearth/rust-clippy/wiki#deprecated_semver
[`derive_hash_xor_eq`]: https://github.com/Manishearth/rust-clippy/wiki#derive_hash_xor_eq
[`doc_markdown`]: https://github.com/Manishearth/rust-clippy/wiki#doc_markdown
[`drop_ref`]: https://github.com/Manishearth/rust-clippy/wiki#drop_ref
[`duplicate_underscore_argument`]: https://github.com/Manishearth/rust-clippy/wiki#duplicate_underscore_argument
[`empty_loop`]: https://github.com/Manishearth/rust-clippy/wiki#empty_loop
[`enum_clike_unportable_variant`]: https://github.com/Manishearth/rust-clippy/wiki#enum_clike_unportable_variant
[`enum_glob_use`]: https://github.com/Manishearth/rust-clippy/wiki#enum_glob_use
[`enum_variant_names`]: https://github.com/Manishearth/rust-clippy/wiki#enum_variant_names
[`eq_op`]: https://github.com/Manishearth/rust-clippy/wiki#eq_op
[`expl_impl_clone_on_copy`]: https://github.com/Manishearth/rust-clippy/wiki#expl_impl_clone_on_copy
[`explicit_counter_loop`]: https://github.com/Manishearth/rust-clippy/wiki#explicit_counter_loop
[`explicit_iter_loop`]: https://github.com/Manishearth/rust-clippy/wiki#explicit_iter_loop
[`extend_from_slice`]: https://github.com/Manishearth/rust-clippy/wiki#extend_from_slice
[`filter_next`]: https://github.com/Manishearth/rust-clippy/wiki#filter_next
[`float_cmp`]: https://github.com/Manishearth/rust-clippy/wiki#float_cmp
[`for_kv_map`]: https://github.com/Manishearth/rust-clippy/wiki#for_kv_map
[`for_loop_over_option`]: https://github.com/Manishearth/rust-clippy/wiki#for_loop_over_option
[`for_loop_over_result`]: https://github.com/Manishearth/rust-clippy/wiki#for_loop_over_result
[`identity_op`]: https://github.com/Manishearth/rust-clippy/wiki#identity_op
[`if_not_else`]: https://github.com/Manishearth/rust-clippy/wiki#if_not_else
[`if_same_then_else`]: https://github.com/Manishearth/rust-clippy/wiki#if_same_then_else
[`ifs_same_cond`]: https://github.com/Manishearth/rust-clippy/wiki#ifs_same_cond
[`indexing_slicing`]: https://github.com/Manishearth/rust-clippy/wiki#indexing_slicing
[`ineffective_bit_mask`]: https://github.com/Manishearth/rust-clippy/wiki#ineffective_bit_mask
[`inline_always`]: https://github.com/Manishearth/rust-clippy/wiki#inline_always
[`invalid_regex`]: https://github.com/Manishearth/rust-clippy/wiki#invalid_regex
[`invalid_upcast_comparisons`]: https://github.com/Manishearth/rust-clippy/wiki#invalid_upcast_comparisons
[`items_after_statements`]: https://github.com/Manishearth/rust-clippy/wiki#items_after_statements
[`iter_next_loop`]: https://github.com/Manishearth/rust-clippy/wiki#iter_next_loop
[`len_without_is_empty`]: https://github.com/Manishearth/rust-clippy/wiki#len_without_is_empty
[`len_zero`]: https://github.com/Manishearth/rust-clippy/wiki#len_zero
[`let_and_return`]: https://github.com/Manishearth/rust-clippy/wiki#let_and_return
[`let_unit_value`]: https://github.com/Manishearth/rust-clippy/wiki#let_unit_value
[`linkedlist`]: https://github.com/Manishearth/rust-clippy/wiki#linkedlist
[`logic_bug`]: https://github.com/Manishearth/rust-clippy/wiki#logic_bug
[`manual_swap`]: https://github.com/Manishearth/rust-clippy/wiki#manual_swap
[`many_single_char_names`]: https://github.com/Manishearth/rust-clippy/wiki#many_single_char_names
[`map_clone`]: https://github.com/Manishearth/rust-clippy/wiki#map_clone
[`map_entry`]: https://github.com/Manishearth/rust-clippy/wiki#map_entry
[`match_bool`]: https://github.com/Manishearth/rust-clippy/wiki#match_bool
[`match_overlapping_arm`]: https://github.com/Manishearth/rust-clippy/wiki#match_overlapping_arm
[`match_ref_pats`]: https://github.com/Manishearth/rust-clippy/wiki#match_ref_pats
[`match_same_arms`]: https://github.com/Manishearth/rust-clippy/wiki#match_same_arms
[`min_max`]: https://github.com/Manishearth/rust-clippy/wiki#min_max
[`modulo_one`]: https://github.com/Manishearth/rust-clippy/wiki#modulo_one
[`mut_mut`]: https://github.com/Manishearth/rust-clippy/wiki#mut_mut
[`mutex_atomic`]: https://github.com/Manishearth/rust-clippy/wiki#mutex_atomic
[`mutex_integer`]: https://github.com/Manishearth/rust-clippy/wiki#mutex_integer
[`needless_bool`]: https://github.com/Manishearth/rust-clippy/wiki#needless_bool
[`needless_lifetimes`]: https://github.com/Manishearth/rust-clippy/wiki#needless_lifetimes
[`needless_range_loop`]: https://github.com/Manishearth/rust-clippy/wiki#needless_range_loop
[`needless_return`]: https://github.com/Manishearth/rust-clippy/wiki#needless_return
[`needless_update`]: https://github.com/Manishearth/rust-clippy/wiki#needless_update
[`new_ret_no_self`]: https://github.com/Manishearth/rust-clippy/wiki#new_ret_no_self
[`new_without_default`]: https://github.com/Manishearth/rust-clippy/wiki#new_without_default
[`non_expressive_names`]: https://github.com/Manishearth/rust-clippy/wiki#non_expressive_names
[`no_effect`]: https://github.com/Manishearth/rust-clippy/wiki#no_effect
[`non_ascii_literal`]: https://github.com/Manishearth/rust-clippy/wiki#non_ascii_literal
[`nonminimal_bool`]: https://github.com/Manishearth/rust-clippy/wiki#nonminimal_bool
[`nonsensical_open_options`]: https://github.com/Manishearth/rust-clippy/wiki#nonsensical_open_options
[`ok_expect`]: https://github.com/Manishearth/rust-clippy/wiki#ok_expect
[`option_map_unwrap_or`]: https://github.com/Manishearth/rust-clippy/wiki#option_map_unwrap_or
[`option_map_unwrap_or_else`]: https://github.com/Manishearth/rust-clippy/wiki#option_map_unwrap_or_else
[`option_unwrap_used`]: https://github.com/Manishearth/rust-clippy/wiki#option_unwrap_used
[`or_fun_call`]: https://github.com/Manishearth/rust-clippy/wiki#or_fun_call
[`out_of_bounds_indexing`]: https://github.com/Manishearth/rust-clippy/wiki#out_of_bounds_indexing
[`overflow_check_conditional`]: https://github.com/Manishearth/rust-clippy/wiki#overflow_check_conditional
[`panic_params`]: https://github.com/Manishearth/rust-clippy/wiki#panic_params
[`precedence`]: https://github.com/Manishearth/rust-clippy/wiki#precedence
[`print_stdout`]: https://github.com/Manishearth/rust-clippy/wiki#print_stdout
[`ptr_arg`]: https://github.com/Manishearth/rust-clippy/wiki#ptr_arg
[`range_step_by_zero`]: https://github.com/Manishearth/rust-clippy/wiki#range_step_by_zero
[`range_zip_with_len`]: https://github.com/Manishearth/rust-clippy/wiki#range_zip_with_len
[`redundant_closure`]: https://github.com/Manishearth/rust-clippy/wiki#redundant_closure
[`redundant_closure_call`]: https://github.com/Manishearth/rust-clippy/wiki#redundant_closure_call
[`redundant_pattern`]: https://github.com/Manishearth/rust-clippy/wiki#redundant_pattern
[`regex_macro`]: https://github.com/Manishearth/rust-clippy/wiki#regex_macro
[`result_unwrap_used`]: https://github.com/Manishearth/rust-clippy/wiki#result_unwrap_used
[`reverse_range_loop`]: https://github.com/Manishearth/rust-clippy/wiki#reverse_range_loop
[`search_is_some`]: https://github.com/Manishearth/rust-clippy/wiki#search_is_some
[`shadow_reuse`]: https://github.com/Manishearth/rust-clippy/wiki#shadow_reuse
[`shadow_same`]: https://github.com/Manishearth/rust-clippy/wiki#shadow_same
[`shadow_unrelated`]: https://github.com/Manishearth/rust-clippy/wiki#shadow_unrelated
[`should_implement_trait`]: https://github.com/Manishearth/rust-clippy/wiki#should_implement_trait
[`similar_names`]: https://github.com/Manishearth/rust-clippy/wiki#similar_names
[`single_char_pattern`]: https://github.com/Manishearth/rust-clippy/wiki#single_char_pattern
[`single_match`]: https://github.com/Manishearth/rust-clippy/wiki#single_match
[`single_match_else`]: https://github.com/Manishearth/rust-clippy/wiki#single_match_else
[`str_to_string`]: https://github.com/Manishearth/rust-clippy/wiki#str_to_string
[`string_add`]: https://github.com/Manishearth/rust-clippy/wiki#string_add
[`string_add_assign`]: https://github.com/Manishearth/rust-clippy/wiki#string_add_assign
[`string_lit_as_bytes`]: https://github.com/Manishearth/rust-clippy/wiki#string_lit_as_bytes
[`string_to_string`]: https://github.com/Manishearth/rust-clippy/wiki#string_to_string
[`suspicious_assignment_formatting`]: https://github.com/Manishearth/rust-clippy/wiki#suspicious_assignment_formatting
[`suspicious_else_formatting`]: https://github.com/Manishearth/rust-clippy/wiki#suspicious_else_formatting
[`temporary_assignment`]: https://github.com/Manishearth/rust-clippy/wiki#temporary_assignment
[`temporary_cstring_as_ptr`]: https://github.com/Manishearth/rust-clippy/wiki#temporary_cstring_as_ptr
[`too_many_arguments`]: https://github.com/Manishearth/rust-clippy/wiki#too_many_arguments
[`toplevel_ref_arg`]: https://github.com/Manishearth/rust-clippy/wiki#toplevel_ref_arg
[`transmute_ptr_to_ref`]: https://github.com/Manishearth/rust-clippy/wiki#transmute_ptr_to_ref
[`trivial_regex`]: https://github.com/Manishearth/rust-clippy/wiki#trivial_regex
[`type_complexity`]: https://github.com/Manishearth/rust-clippy/wiki#type_complexity
[`unicode_not_nfc`]: https://github.com/Manishearth/rust-clippy/wiki#unicode_not_nfc
[`unit_cmp`]: https://github.com/Manishearth/rust-clippy/wiki#unit_cmp
[`unnecessary_mut_passed`]: https://github.com/Manishearth/rust-clippy/wiki#unnecessary_mut_passed
[`unneeded_field_pattern`]: https://github.com/Manishearth/rust-clippy/wiki#unneeded_field_pattern
[`unstable_as_mut_slice`]: https://github.com/Manishearth/rust-clippy/wiki#unstable_as_mut_slice
[`unstable_as_slice`]: https://github.com/Manishearth/rust-clippy/wiki#unstable_as_slice
[`unused_collect`]: https://github.com/Manishearth/rust-clippy/wiki#unused_collect
[`unused_label`]: https://github.com/Manishearth/rust-clippy/wiki#unused_label
[`unused_lifetimes`]: https://github.com/Manishearth/rust-clippy/wiki#unused_lifetimes
[`use_debug`]: https://github.com/Manishearth/rust-clippy/wiki#use_debug
[`used_underscore_binding`]: https://github.com/Manishearth/rust-clippy/wiki#used_underscore_binding
[`useless_format`]: https://github.com/Manishearth/rust-clippy/wiki#useless_format
[`useless_transmute`]: https://github.com/Manishearth/rust-clippy/wiki#useless_transmute
[`useless_vec`]: https://github.com/Manishearth/rust-clippy/wiki#useless_vec
[`while_let_loop`]: https://github.com/Manishearth/rust-clippy/wiki#while_let_loop
[`while_let_on_iterator`]: https://github.com/Manishearth/rust-clippy/wiki#while_let_on_iterator
[`wrong_pub_self_convention`]: https://github.com/Manishearth/rust-clippy/wiki#wrong_pub_self_convention
[`wrong_self_convention`]: https://github.com/Manishearth/rust-clippy/wiki#wrong_self_convention
[`zero_divided_by_zero`]: https://github.com/Manishearth/rust-clippy/wiki#zero_divided_by_zero
[`zero_width_space`]: https://github.com/Manishearth/rust-clippy/wiki#zero_width_space
<!-- end autogenerated links to wiki -->

View file

@ -135,7 +135,7 @@ def main(print_only=False, check=False):
return
# collect all lints from source files
for root, dirs, files in os.walk('src'):
for root, _, files in os.walk('src'):
for fn in files:
if fn.endswith('.rs'):
collect(lints, deprecated_lints, os.path.join(root, fn))
@ -156,6 +156,15 @@ def main(print_only=False, check=False):
lambda: ['There are %d lints included in this crate:\n' % len(lints)],
write_back=not check)
# update the links in the CHANGELOG
changed |= replace_region(
'CHANGELOG.md',
"<!-- begin autogenerated links to wiki -->",
"<!-- end autogenerated links to wiki -->",
lambda: ["[`{0}`]: {1}#{0}\n".format(l[1], wiki_link) for l in
sorted(lints + deprecated_lints, key=lambda l: l[1])],
replace_start=False, write_back=not check)
# update the `pub mod` list
changed |= replace_region(
'src/lib.rs', r'begin lints modules', r'end lints modules',