@@ -54,13 +54,9 @@ struct GithubAsset {
5454fn clean_version_name ( name : & str ) -> String {
5555 let name = name. trim ( ) . to_lowercase ( ) ;
5656
57- if name. starts_with ( 'v' ) {
58- name. trim_start_matches ( "v." )
59- . trim_start_matches ( "v" )
60- . to_string ( )
61- } else {
62- name. to_string ( )
63- }
57+ name. trim_start_matches ( "v." )
58+ . trim_start_matches ( "v" )
59+ . to_string ( )
6460}
6561
6662async fn run_inner ( state : State ) -> Result < ( ) , Box < dyn std:: error:: Error > > {
@@ -136,6 +132,8 @@ async fn run_inner(state: State) -> Result<(), Box<dyn std::error::Error>> {
136132
137133 if versions. len ( ) > extension. versions . len ( ) {
138134 versions. sort_unstable_by ( |a, b| a. created . cmp ( & b. created ) . reverse ( ) ) ;
135+ versions. dedup_by ( |a, b| a. name == b. name ) ;
136+
139137 extension. versions = versions;
140138 } else {
141139 for version in extension. versions . iter_mut ( ) {
@@ -237,6 +235,8 @@ async fn run_inner(state: State) -> Result<(), Box<dyn std::error::Error>> {
237235 versions. sort_unstable_by ( |a, b| {
238236 a. created . cmp ( & b. created ) . reverse ( )
239237 } ) ;
238+ versions. dedup_by ( |a, b| a. name == b. name ) ;
239+
240240 extension. versions = versions;
241241 } else {
242242 for version in extension. versions . iter_mut ( ) {
@@ -317,6 +317,8 @@ async fn run_inner(state: State) -> Result<(), Box<dyn std::error::Error>> {
317317
318318 if versions. len ( ) > extension. versions . len ( ) {
319319 versions. sort_unstable_by ( |a, b| a. created . cmp ( & b. created ) . reverse ( ) ) ;
320+ versions. dedup_by ( |a, b| a. name == b. name ) ;
321+
320322 extension. versions = versions;
321323 } else {
322324 for version in extension. versions . iter_mut ( ) {
0 commit comments