From f7276c8a51fa2d209de7a14808055f3d9b955b3c Mon Sep 17 00:00:00 2001 From: rhigman <73792779+rhigman@users.noreply.github.com> Date: Mon, 3 Jan 2022 10:47:54 +0000 Subject: [PATCH 1/7] Correct ordering of contributor Name and ORCID elements (changed between ONIX 2.1 and 3) --- .../src/xml/onix21_ebsco_host.rs | 30 +++++++++---------- 1 file changed, 15 insertions(+), 15 deletions(-) diff --git a/thoth-export-server/src/xml/onix21_ebsco_host.rs b/thoth-export-server/src/xml/onix21_ebsco_host.rs index f198eb5e8..96642832c 100644 --- a/thoth-export-server/src/xml/onix21_ebsco_host.rs +++ b/thoth-export-server/src/xml/onix21_ebsco_host.rs @@ -543,21 +543,6 @@ impl XmlElementBlock for WorkContributions { })?; XmlElement::::xml_element(&self.contribution_type, w)?; - if let Some(orcid) = &self.contributor.orcid { - write_element_block("PersonNameIdentifier", w, |w| { - // 01 Proprietary - write_element_block("PersonNameIDType", w, |w| { - w.write(XmlEvent::Characters("01")).map_err(|e| e.into()) - })?; - write_element_block("IDTypeName", w, |w| { - w.write(XmlEvent::Characters("ORCID")).map_err(|e| e.into()) - })?; - write_element_block("IDValue", w, |w| { - w.write(XmlEvent::Characters(&orcid.to_string())) - .map_err(|e| e.into()) - }) - })?; - } if let Some(first_name) = &self.first_name { write_element_block("NamesBeforeKey", w, |w| { w.write(XmlEvent::Characters(first_name)) @@ -573,6 +558,21 @@ impl XmlElementBlock for WorkContributions { .map_err(|e| e.into()) })?; } + if let Some(orcid) = &self.contributor.orcid { + write_element_block("PersonNameIdentifier", w, |w| { + // 01 Proprietary + write_element_block("PersonNameIDType", w, |w| { + w.write(XmlEvent::Characters("01")).map_err(|e| e.into()) + })?; + write_element_block("IDTypeName", w, |w| { + w.write(XmlEvent::Characters("ORCID")).map_err(|e| e.into()) + })?; + write_element_block("IDValue", w, |w| { + w.write(XmlEvent::Characters(&orcid.to_string())) + .map_err(|e| e.into()) + }) + })?; + } Ok(()) }) } From 446da0055fdd6a2270d0d388aeb27a68e10336f1 Mon Sep 17 00:00:00 2001 From: rhigman <73792779+rhigman@users.noreply.github.com> Date: Fri, 14 Jan 2022 09:10:19 +0000 Subject: [PATCH 2/7] Fix new Clippy lints (redundant to_strings in format macros) under rustc 1.58.0 --- CHANGELOG.md | 2 ++ thoth-export-server/src/xml/onix21_ebsco_host.rs | 2 +- thoth-export-server/src/xml/onix3_jstor.rs | 2 +- thoth-export-server/src/xml/onix3_oapen.rs | 2 +- thoth-export-server/src/xml/onix3_project_muse.rs | 2 +- 5 files changed, 6 insertions(+), 4 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index c1cb290e8..343cfbcb3 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,6 +5,8 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). ## [Unreleased] +### Changed + - Removed redundant `to_string` calls to comply with [`rustc 1.58.0`](https://github.com/rust-lang/rust/releases/tag/1.58.0) ## [[0.7.0]](https://github.com/thoth-pub/thoth/releases/tag/v0.7.0) - 2022-01-11 ### Added diff --git a/thoth-export-server/src/xml/onix21_ebsco_host.rs b/thoth-export-server/src/xml/onix21_ebsco_host.rs index 6bfd9de2f..f41add410 100644 --- a/thoth-export-server/src/xml/onix21_ebsco_host.rs +++ b/thoth-export-server/src/xml/onix21_ebsco_host.rs @@ -56,7 +56,7 @@ impl XmlSpecification for Onix21EbscoHost { impl XmlElementBlock for Work { fn xml_element(&self, w: &mut EventWriter) -> ThothResult<()> { - let work_id = format!("urn:uuid:{}", self.work_id.to_string()); + let work_id = format!("urn:uuid:{}", self.work_id); let (main_isbn, isbns) = get_publications_data(&self.publications); // We only submit PDFs and EPUBs to EBSCO Host, so don't // generate ONIX for works which do not have either diff --git a/thoth-export-server/src/xml/onix3_jstor.rs b/thoth-export-server/src/xml/onix3_jstor.rs index 4f8fae8dd..2d1771ea2 100644 --- a/thoth-export-server/src/xml/onix3_jstor.rs +++ b/thoth-export-server/src/xml/onix3_jstor.rs @@ -62,7 +62,7 @@ impl XmlSpecification for Onix3Jstor { impl XmlElementBlock for Work { fn xml_element(&self, w: &mut EventWriter) -> ThothResult<()> { - let work_id = format!("urn:uuid:{}", self.work_id.to_string()); + let work_id = format!("urn:uuid:{}", self.work_id); let (main_isbn, isbns) = get_publications_data(&self.publications); // We can only generate the document if there's a PDF if let Some(pdf_url) = self diff --git a/thoth-export-server/src/xml/onix3_oapen.rs b/thoth-export-server/src/xml/onix3_oapen.rs index fe1751b56..51c652e66 100644 --- a/thoth-export-server/src/xml/onix3_oapen.rs +++ b/thoth-export-server/src/xml/onix3_oapen.rs @@ -62,7 +62,7 @@ impl XmlSpecification for Onix3Oapen { impl XmlElementBlock for Work { fn xml_element(&self, w: &mut EventWriter) -> ThothResult<()> { - let work_id = format!("urn:uuid:{}", self.work_id.to_string()); + let work_id = format!("urn:uuid:{}", self.work_id); let (main_isbn, isbns) = get_publications_data(&self.publications); // We can only generate the document if there's a PDF if let Some(pdf_url) = self diff --git a/thoth-export-server/src/xml/onix3_project_muse.rs b/thoth-export-server/src/xml/onix3_project_muse.rs index 4ee4e7541..c1ec7dbce 100644 --- a/thoth-export-server/src/xml/onix3_project_muse.rs +++ b/thoth-export-server/src/xml/onix3_project_muse.rs @@ -81,7 +81,7 @@ impl XmlElementBlock for Work { .and_then(|p| p.locations.iter().find(|l| l.canonical)) .and_then(|l| l.full_text_url.as_ref()) { - let work_id = format!("urn:uuid:{}", self.work_id.to_string()); + let work_id = format!("urn:uuid:{}", self.work_id); let (main_isbn, isbns) = get_publications_data(&self.publications); write_element_block("Product", w, |w| { write_element_block("RecordReference", w, |w| { From b64c1775d395384c18559ac6bbc98fd4dba983cc Mon Sep 17 00:00:00 2001 From: rhigman <73792779+rhigman@users.noreply.github.com> Date: Fri, 21 Jan 2022 12:00:10 +0000 Subject: [PATCH 3/7] Correct pricing logic following EBSCO feedback (omit all priced publications, always use 0.01 USD) --- .../src/xml/onix21_ebsco_host.rs | 107 +++++++++--------- 1 file changed, 51 insertions(+), 56 deletions(-) diff --git a/thoth-export-server/src/xml/onix21_ebsco_host.rs b/thoth-export-server/src/xml/onix21_ebsco_host.rs index 9a4268b9a..b4996a264 100644 --- a/thoth-export-server/src/xml/onix21_ebsco_host.rs +++ b/thoth-export-server/src/xml/onix21_ebsco_host.rs @@ -2,9 +2,8 @@ use chrono::Utc; use std::collections::HashMap; use std::io::Write; use thoth_client::{ - ContributionType, CurrencyCode, LanguageRelation, PublicationType, SubjectType, Work, - WorkContributions, WorkIssues, WorkLanguages, WorkPublications, WorkStatus, WorkSubjects, - WorkType, + ContributionType, LanguageRelation, PublicationType, SubjectType, Work, WorkContributions, + WorkIssues, WorkLanguages, WorkPublications, WorkStatus, WorkSubjects, WorkType, }; use xml::writer::{EventWriter, XmlEvent}; @@ -58,18 +57,26 @@ impl XmlElementBlock for Work { fn xml_element(&self, w: &mut EventWriter) -> ThothResult<()> { let work_id = format!("urn:uuid:{}", self.work_id); let (main_isbn, isbns) = get_publications_data(&self.publications); - // We only submit PDFs and EPUBs to EBSCO Host, so don't - // generate ONIX for works which do not have either + // EBSCO Host can only accept PDFs and EPUBs, and can only + // process them as Open Access if they are zero-priced let pdf_url = self .publications .iter() - .find(|p| p.publication_type.eq(&PublicationType::PDF) && !p.locations.is_empty()) + .find(|p| { + p.publication_type.eq(&PublicationType::PDF) + && !p.locations.is_empty() + && !p.prices.iter().any(|pr| pr.unit_price > 0.0) + }) .and_then(|p| p.locations.iter().find(|l| l.canonical)) .and_then(|l| l.full_text_url.as_ref()); let epub_url = self .publications .iter() - .find(|p| p.publication_type.eq(&PublicationType::EPUB) && !p.locations.is_empty()) + .find(|p| { + p.publication_type.eq(&PublicationType::EPUB) + && !p.locations.is_empty() + && !p.prices.iter().any(|pr| pr.unit_price > 0.0) + }) .and_then(|p| p.locations.iter().find(|l| l.canonical)) .and_then(|l| l.full_text_url.as_ref()); if pdf_url.is_some() || epub_url.is_some() { @@ -394,41 +401,14 @@ impl XmlElementBlock for Work { w.write(XmlEvent::Characters("Open access")) .map_err(|e| e.into()) })?; - // Works are distributed to EBSCO Host as combined PDF/EPUB - // "digital bundles" - PDF and EPUB may have different prices - // so give the higher of the two. If both are free, EBSCO Host - // request a price point of "0.01 USD" for Open Access titles. - let pdf_price = self - .publications - .iter() - .find(|p| p.publication_type.eq(&PublicationType::PDF)) - .and_then(|p| { - p.prices - .iter() - .find(|pr| pr.currency_code.eq(&CurrencyCode::USD)) - .map(|pr| pr.unit_price) - }) - .unwrap_or_default(); - let epub_price = self - .publications - .iter() - .find(|p| p.publication_type.eq(&PublicationType::EPUB)) - .and_then(|p| { - p.prices - .iter() - .find(|pr| pr.currency_code.eq(&CurrencyCode::USD)) - .map(|pr| pr.unit_price) - }) - .unwrap_or_default(); - let bundle_price = pdf_price.max(epub_price.max(0.01)); + // EBSCO Host require the price point for Open Access titles to be listed as "0.01 USD". write_element_block("Price", w, |w| { // 02 RRP including tax write_element_block("PriceTypeCode", w, |w| { w.write(XmlEvent::Characters("02")).map_err(|e| e.into()) })?; write_element_block("PriceAmount", w, |w| { - w.write(XmlEvent::Characters(&bundle_price.to_string())) - .map_err(|e| e.into()) + w.write(XmlEvent::Characters("0.01")).map_err(|e| e.into()) })?; write_element_block("CurrencyCode", w, |w| { w.write(XmlEvent::Characters("USD")).map_err(|e| e.into()) @@ -439,7 +419,7 @@ impl XmlElementBlock for Work { } else { Err(ThothError::IncompleteMetadataRecord( "onix_2.1::ebsco_host".to_string(), - "No PDF or EPUB URL".to_string(), + "No zero-priced PDF or EPUB URL".to_string(), )) } } @@ -644,9 +624,9 @@ mod tests { use thoth_api::model::Isbn; use thoth_api::model::Orcid; use thoth_client::{ - ContributionType, LanguageCode, LanguageRelation, LocationPlatform, PublicationType, - WorkContributionsContributor, WorkImprint, WorkImprintPublisher, WorkIssuesSeries, - WorkPublicationsLocations, WorkPublicationsPrices, WorkStatus, WorkType, + ContributionType, CurrencyCode, LanguageCode, LanguageRelation, LocationPlatform, + PublicationType, WorkContributionsContributor, WorkImprint, WorkImprintPublisher, + WorkIssuesSeries, WorkPublicationsLocations, WorkPublicationsPrices, WorkStatus, WorkType, }; use uuid::Uuid; @@ -904,7 +884,7 @@ mod tests { WorkPublications { publication_id: Uuid::from_str("00000000-0000-0000-AAAA-000000000001").unwrap(), publication_type: PublicationType::EPUB, - isbn: Some(Isbn::from_str("978-3-16-148410-0").unwrap()), + isbn: Some(Isbn::from_str("978-92-95055-02-5").unwrap()), prices: vec![], locations: vec![WorkPublicationsLocations { landing_page: Some("https://www.book.com/epub_landing".to_string()), @@ -917,6 +897,21 @@ mod tests { publication_id: Uuid::from_str("00000000-0000-0000-DDDD-000000000004").unwrap(), publication_type: PublicationType::PDF, isbn: Some(Isbn::from_str("978-1-56619-909-4").unwrap()), + prices: vec![WorkPublicationsPrices { + currency_code: CurrencyCode::USD, + unit_price: 0.0, + }], + locations: vec![WorkPublicationsLocations { + landing_page: Some("https://www.book.com/pdf_landing".to_string()), + full_text_url: Some("https://www.book.com/pdf_fulltext".to_string()), + location_platform: LocationPlatform::OTHER, + canonical: true, + }], + }, + WorkPublications { + publication_id: Uuid::from_str("00000000-0000-0000-AAAA-000000000001").unwrap(), + publication_type: PublicationType::PAPERBACK, + isbn: Some(Isbn::from_str("978-3-16-148410-0").unwrap()), prices: vec![ WorkPublicationsPrices { currency_code: CurrencyCode::EUR, @@ -931,12 +926,7 @@ mod tests { unit_price: 7.99, }, ], - locations: vec![WorkPublicationsLocations { - landing_page: Some("https://www.book.com/pdf_landing".to_string()), - full_text_url: Some("https://www.book.com/pdf_fulltext".to_string()), - location_platform: LocationPlatform::OTHER, - canonical: true, - }], + locations: vec![], }, ], subjects: vec![], @@ -1024,6 +1014,7 @@ mod tests { assert!(output.contains(r#" 15"#)); assert!(output.contains(r#" 9783161484100"#)); assert!(output.contains(r#" 9781566199094"#)); + assert!(output.contains(r#" 9789295055025"#)); assert!(output.contains(r#" "#)); assert!(output.contains(r#" OA Editions"#)); assert!(output.contains(r#" 09"#)); @@ -1033,7 +1024,7 @@ mod tests { .contains(r#" Open access"#)); assert!(output.contains(r#" "#)); assert!(output.contains(r#" 02"#)); - assert!(output.contains(r#" 7.99"#)); + assert!(output.contains(r#" 0.01"#)); assert!(output.contains(r#" USD"#)); // Remove some values to test non-output of optional blocks @@ -1048,8 +1039,16 @@ mod tests { test_work.landing_page = None; test_work.cover_url = None; test_work.imprint.publisher.publisher_url = None; - test_work.publications.pop(); // Remove second (PDF) publication + // Remove third (paperback) publication + test_work.publications.pop(); + // Give PDF publication a positive price point + test_work.publications[1].prices[0].unit_price = 7.99; let output = generate_test_output(&test_work); + // Paperback publication removed, so its ISBN no longer appears + // (either as the main ISBN or in RelatedProducts) + assert!(!output.contains(r#" 9783161484100"#)); + // PDF ISBN is used as main ISBN instead + assert!(output.contains(r#" 9781566199094"#)); // No DOI supplied assert!(!output.contains(r#" 06"#)); assert!(!output.contains(r#" 10.00001/BOOK.0001"#)); @@ -1063,12 +1062,10 @@ mod tests { r#" Publisher's website: web shop"# )); assert!(!output.contains(r#" https://www.book.com"#)); - // PDF publication removed, hence no PDF URL, - // no PDF RelatedProduct, and EpubType changes + // PDF publication price is now non-zero, hence no PDF URL, and EpubType changes assert!( !output.contains(r#" https://www.book.com/pdf_fulltext"#) ); - assert!(!output.contains(r#" 9781566199094"#)); assert!(!output.contains(r#" 002"#)); assert!(output.contains(r#" 029"#)); // No page count supplied @@ -1100,10 +1097,8 @@ mod tests { // No publication date supplied assert!(!output.contains(r#" 19991231"#)); assert!(!output.contains(r#" 1999"#)); - // No PDF or EPUB price supplied, so default of 0.01 USD is used - assert!(output.contains(r#" 0.01"#)); - // Remove the remaining (EPUB) publication's only location: error + // Remove the EPUB publication's only location: error test_work.publications[0].locations.clear(); // Can't use helper function for this as it assumes Ok rather than Err let mut buffer = Vec::new(); @@ -1121,7 +1116,7 @@ mod tests { let output = wrapped_output.unwrap_err().to_string(); assert_eq!( output, - "Could not generate onix_2.1::ebsco_host: No PDF or EPUB URL".to_string() + "Could not generate onix_2.1::ebsco_host: No zero-priced PDF or EPUB URL".to_string() ); } } From b471b22dabb03350fef9ee5660709fff894c12c5 Mon Sep 17 00:00:00 2001 From: rhigman <73792779+rhigman@users.noreply.github.com> Date: Mon, 24 Jan 2022 09:53:15 +0000 Subject: [PATCH 4/7] Update changelog --- CHANGELOG.md | 1 + 1 file changed, 1 insertion(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 343cfbcb3..fdf2ea9f0 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,6 +7,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] ### Changed - Removed redundant `to_string` calls to comply with [`rustc 1.58.0`](https://github.com/rust-lang/rust/releases/tag/1.58.0) + - [#329](https://github.com/thoth-pub/thoth/pull/329) - Update EBSCO Host ONIX pricing and contributor display logic ## [[0.7.0]](https://github.com/thoth-pub/thoth/releases/tag/v0.7.0) - 2022-01-11 ### Added From aa8de90b2ed1d977dbe90ad097c94a32030bf433 Mon Sep 17 00:00:00 2001 From: Javier Arias Date: Mon, 24 Jan 2022 10:03:39 +0000 Subject: [PATCH 5/7] Add workflow dispatch triger to docker action --- .github/workflows/docker_build.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/docker_build.yml b/.github/workflows/docker_build.yml index 805737e78..468557f9d 100644 --- a/.github/workflows/docker_build.yml +++ b/.github/workflows/docker_build.yml @@ -4,6 +4,7 @@ on: push: branches: - 'release/**' + workflow_dispatch: jobs: build_docker_image: From 497db3afd48c0ec979fdb5a002735fe9a9ce193c Mon Sep 17 00:00:00 2001 From: Javier Arias Date: Mon, 24 Jan 2022 10:53:41 +0000 Subject: [PATCH 6/7] Bump v0.7.1 --- Cargo.lock | 16 ++++++++-------- Cargo.toml | 12 ++++++------ thoth-api-server/Cargo.toml | 6 +++--- thoth-api/Cargo.toml | 4 ++-- thoth-app-server/Cargo.toml | 2 +- thoth-app/Cargo.toml | 6 +++--- thoth-app/manifest.json | 2 +- thoth-client/Cargo.toml | 6 +++--- thoth-errors/Cargo.toml | 2 +- thoth-export-server/Cargo.toml | 8 ++++---- 10 files changed, 32 insertions(+), 32 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index f6668753f..3863ac67c 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -3936,7 +3936,7 @@ dependencies = [ [[package]] name = "thoth" -version = "0.7.0" +version = "0.7.1" dependencies = [ "cargo-husky", "clap", @@ -3951,7 +3951,7 @@ dependencies = [ [[package]] name = "thoth-api" -version = "0.7.0" +version = "0.7.1" dependencies = [ "actix-web", "argon2rs", @@ -3980,7 +3980,7 @@ dependencies = [ [[package]] name = "thoth-api-server" -version = "0.7.0" +version = "0.7.1" dependencies = [ "actix-cors", "actix-identity", @@ -3995,7 +3995,7 @@ dependencies = [ [[package]] name = "thoth-app" -version = "0.7.0" +version = "0.7.1" dependencies = [ "anyhow", "chrono", @@ -4018,7 +4018,7 @@ dependencies = [ [[package]] name = "thoth-app-server" -version = "0.7.0" +version = "0.7.1" dependencies = [ "actix-cors", "actix-web", @@ -4027,7 +4027,7 @@ dependencies = [ [[package]] name = "thoth-client" -version = "0.7.0" +version = "0.7.1" dependencies = [ "chrono", "graphql_client", @@ -4041,7 +4041,7 @@ dependencies = [ [[package]] name = "thoth-errors" -version = "0.7.0" +version = "0.7.1" dependencies = [ "actix-web", "csv", @@ -4056,7 +4056,7 @@ dependencies = [ [[package]] name = "thoth-export-server" -version = "0.7.0" +version = "0.7.1" dependencies = [ "actix-cors", "actix-web", diff --git a/Cargo.toml b/Cargo.toml index 446f6dad4..890338d61 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "thoth" -version = "0.7.0" +version = "0.7.1" authors = ["Javier Arias ", "Ross Higman "] edition = "2018" license = "Apache-2.0" @@ -16,11 +16,11 @@ maintenance = { status = "actively-developed" } members = ["thoth-api", "thoth-api-server", "thoth-app", "thoth-app-server", "thoth-client", "thoth-errors", "thoth-export-server"] [dependencies] -thoth-api = { version = "0.7.0", path = "thoth-api", features = ["backend"] } -thoth-api-server = { version = "0.7.0", path = "thoth-api-server" } -thoth-app-server = { version = "0.7.0", path = "thoth-app-server" } -thoth-errors = { version = "0.7.0", path = "thoth-errors" } -thoth-export-server = { version = "0.7.0", path = "thoth-export-server" } +thoth-api = { version = "0.7.1", path = "thoth-api", features = ["backend"] } +thoth-api-server = { version = "0.7.1", path = "thoth-api-server" } +thoth-app-server = { version = "0.7.1", path = "thoth-app-server" } +thoth-errors = { version = "0.7.1", path = "thoth-errors" } +thoth-export-server = { version = "0.7.1", path = "thoth-export-server" } clap = "2.33.3" dialoguer = "0.7.1" dotenv = "0.9.0" diff --git a/thoth-api-server/Cargo.toml b/thoth-api-server/Cargo.toml index 8568caa82..0edaa86a6 100644 --- a/thoth-api-server/Cargo.toml +++ b/thoth-api-server/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "thoth-api-server" -version = "0.7.0" +version = "0.7.1" authors = ["Javier Arias ", "Ross Higman "] edition = "2018" license = "Apache-2.0" @@ -9,8 +9,8 @@ repository = "https://github.com/thoth-pub/thoth" readme = "README.md" [dependencies] -thoth-api = { version = "0.7.0", path = "../thoth-api", features = ["backend"] } -thoth-errors = { version = "0.7.0", path = "../thoth-errors" } +thoth-api = { version = "0.7.1", path = "../thoth-api", features = ["backend"] } +thoth-errors = { version = "0.7.1", path = "../thoth-errors" } actix-web = "3.3.2" actix-cors = "0.5.4" actix-identity = "0.3.1" diff --git a/thoth-api/Cargo.toml b/thoth-api/Cargo.toml index a36ec1f01..5566f3ae8 100644 --- a/thoth-api/Cargo.toml +++ b/thoth-api/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "thoth-api" -version = "0.7.0" +version = "0.7.1" authors = ["Javier Arias ", "Ross Higman "] edition = "2018" license = "Apache-2.0" @@ -16,7 +16,7 @@ maintenance = { status = "actively-developed" } backend = ["diesel", "diesel-derive-enum", "diesel_migrations", "futures", "actix-web"] [dependencies] -thoth-errors = { version = "0.7.0", path = "../thoth-errors" } +thoth-errors = { version = "0.7.1", path = "../thoth-errors" } actix-web = { version = "3.3.2", optional = true } argon2rs = "0.2.5" isbn2 = "0.4.0" diff --git a/thoth-app-server/Cargo.toml b/thoth-app-server/Cargo.toml index c436a4583..52bf3eaa6 100644 --- a/thoth-app-server/Cargo.toml +++ b/thoth-app-server/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "thoth-app-server" -version = "0.7.0" +version = "0.7.1" authors = ["Javier Arias ", "Ross Higman "] edition = "2018" license = "Apache-2.0" diff --git a/thoth-app/Cargo.toml b/thoth-app/Cargo.toml index b4eb17ae7..bd69a69c4 100644 --- a/thoth-app/Cargo.toml +++ b/thoth-app/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "thoth-app" -version = "0.7.0" +version = "0.7.1" authors = ["Javier Arias ", "Ross Higman "] edition = "2018" license = "Apache-2.0" @@ -33,5 +33,5 @@ serde = { version = "1.0.115", features = ["derive"] } serde_json = "1.0" url = "2.1.1" uuid = { version = "0.7", features = ["serde", "v4"] } -thoth-api = { version = "0.7.0", path = "../thoth-api" } -thoth-errors = { version = "0.7.0", path = "../thoth-errors" } +thoth-api = { version = "0.7.1", path = "../thoth-api" } +thoth-errors = { version = "0.7.1", path = "../thoth-errors" } diff --git a/thoth-app/manifest.json b/thoth-app/manifest.json index a786a888a..a6be5b6e3 100644 --- a/thoth-app/manifest.json +++ b/thoth-app/manifest.json @@ -9,7 +9,7 @@ "start_url": "/?homescreen=1", "background_color": "#ffffff", "theme_color": "#ffdd57", - "version": "0.7.0", + "version": "0.7.1", "icons": [ { "src": "\/android-icon-36x36.png", diff --git a/thoth-client/Cargo.toml b/thoth-client/Cargo.toml index 5d9c86ff5..35aeabc9c 100644 --- a/thoth-client/Cargo.toml +++ b/thoth-client/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "thoth-client" -version = "0.7.0" +version = "0.7.1" authors = ["Javier Arias ", "Ross Higman "] edition = "2018" license = "Apache-2.0" @@ -9,8 +9,8 @@ repository = "https://github.com/thoth-pub/thoth" readme = "README.md" [dependencies] -thoth-api = {version = "0.7.0", path = "../thoth-api" } -thoth-errors = {version = "0.7.0", path = "../thoth-errors" } +thoth-api = {version = "0.7.1", path = "../thoth-api" } +thoth-errors = {version = "0.7.1", path = "../thoth-errors" } graphql_client = "0.9.0" chrono = { version = "0.4", features = ["serde"] } reqwest = { version = "0.10", features = ["json"] } diff --git a/thoth-errors/Cargo.toml b/thoth-errors/Cargo.toml index 6faff1037..e9db7fc23 100644 --- a/thoth-errors/Cargo.toml +++ b/thoth-errors/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "thoth-errors" -version = "0.7.0" +version = "0.7.1" authors = ["Javier Arias ", "Ross Higman "] edition = "2018" license = "Apache-2.0" diff --git a/thoth-export-server/Cargo.toml b/thoth-export-server/Cargo.toml index 88ce794d6..e22116c0c 100644 --- a/thoth-export-server/Cargo.toml +++ b/thoth-export-server/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "thoth-export-server" -version = "0.7.0" +version = "0.7.1" authors = ["Javier Arias ", "Ross Higman "] edition = "2018" license = "Apache-2.0" @@ -9,9 +9,9 @@ repository = "https://github.com/thoth-pub/thoth" readme = "README.md" [dependencies] -thoth-api = { version = "0.7.0", path = "../thoth-api" } -thoth-errors = { version = "0.7.0", path = "../thoth-errors" } -thoth-client = { version = "0.7.0", path = "../thoth-client" } +thoth-api = { version = "0.7.1", path = "../thoth-api" } +thoth-errors = { version = "0.7.1", path = "../thoth-errors" } +thoth-client = { version = "0.7.1", path = "../thoth-client" } actix-web = "3.3.2" actix-cors = "0.5.4" chrono = { version = "0.4", features = ["serde"] } From 6a2dbfac60bdcccbd3c6cd28bd80056db791a2f5 Mon Sep 17 00:00:00 2001 From: Javier Arias Date: Mon, 24 Jan 2022 10:54:49 +0000 Subject: [PATCH 7/7] Update changelog --- CHANGELOG.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index fdf2ea9f0..2fac43a40 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,9 +5,12 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). ## [Unreleased] + +## [[0.7.1]](https://github.com/thoth-pub/thoth/releases/tag/v0.7.1) - 2022-01-24 ### Changed - Removed redundant `to_string` calls to comply with [`rustc 1.58.0`](https://github.com/rust-lang/rust/releases/tag/1.58.0) - [#329](https://github.com/thoth-pub/thoth/pull/329) - Update EBSCO Host ONIX pricing and contributor display logic + - Allow building docker image manually in actions ## [[0.7.0]](https://github.com/thoth-pub/thoth/releases/tag/v0.7.0) - 2022-01-11 ### Added