diff --git a/scripts/ci/codegen/pushToRepository.ts b/scripts/ci/codegen/pushToRepository.ts index f184356e123..d4c9d26b3fc 100644 --- a/scripts/ci/codegen/pushToRepository.ts +++ b/scripts/ci/codegen/pushToRepository.ts @@ -20,6 +20,7 @@ import { pushToRepositoryConfiguration } from './types.ts'; import { getClientsConfigField } from '../../config.ts'; import { commitStartRelease } from './text.ts'; +import { sleep } from './waitForAllReleases.ts'; async function handleSpecFiles(spec: SpecsToPush, tempGitDir: string): Promise { const pathToSpecs = toAbsolutePath(`${tempGitDir}/${spec.output}`); @@ -158,6 +159,9 @@ async function pushToRepository(repository: string, config: RepositoryConfigurat head: task.prBranch, }); + // the graphql api of gh might have some cache so we need to wait a bit + await sleep(10_000); + await run(`gh pr merge ${data.number} --auto`); console.log(`Pull request created on ${OWNER}/${repository}`); diff --git a/scripts/ci/codegen/waitForAllReleases.ts b/scripts/ci/codegen/waitForAllReleases.ts index 6d71443621e..eb07258a5b0 100644 --- a/scripts/ci/codegen/waitForAllReleases.ts +++ b/scripts/ci/codegen/waitForAllReleases.ts @@ -44,7 +44,7 @@ async function fetchAllRuns(runs: Run[]): Promise { ); } -function sleep(ms: number): Promise { +export function sleep(ms: number): Promise { return new Promise((resolve) => { setTimeout(resolve, ms); }); diff --git a/templates/csharp/guides/search/searchFuturePublishedBooks.mustache b/templates/csharp/guides/search/searchFuturePublishedBooks.mustache new file mode 100644 index 00000000000..090c91ef8e2 --- /dev/null +++ b/templates/csharp/guides/search/searchFuturePublishedBooks.mustache @@ -0,0 +1,30 @@ +namespace Algolia; + +using System; +using System.Text.Json; +using System.Net.Http; +using System.Collections.Generic; + +{{> snippets/import}} + +class SearchFuturePublishedBooks { + + async Task Main(string[] args) + { + + try { + {{> snippets/init}} + var dateTimestamp = DateTimeOffset.UtcNow.ToUnixTimeMilliseconds(); + var searchParams = new SearchParams(new SearchParamsObject + { + Query = "", + Filters = $"date_timestamp > {dateTimestamp}" + } + ); + + {{#dynamicSnippet}}searchWithSearchParams{{/dynamicSnippet}}; + } catch (Exception e) { + Console.WriteLine(e.Message); + } + } +} diff --git a/templates/csharp/guides/search/searchRecentlyPublishedBooks.mustache b/templates/csharp/guides/search/searchRecentlyPublishedBooks.mustache index 206d98e2b45..4eb03d793db 100644 --- a/templates/csharp/guides/search/searchRecentlyPublishedBooks.mustache +++ b/templates/csharp/guides/search/searchRecentlyPublishedBooks.mustache @@ -14,11 +14,13 @@ class SearchRecentlyPublishedBooks { try { {{> snippets/init}} - var dateTimestamp = DateTimeOffset.UtcNow.ToUnixTimeMilliseconds(); + var date = DateTime.UtcNow.AddYears(-1); + var sTime = new DateTime(1970, 1, 1, 0, 0, 0, DateTimeKind.Utc); + var unixTime = (long)(date - sTime).TotalSeconds; var searchParams = new SearchParams(new SearchParamsObject { Query = "", - Filters = $"date_timestamp > {dateTimestamp}" + Filters = $"date_timestamp > {unixTime}" } ); diff --git a/templates/dart/guides/search/searchFuturePublishedBooks.mustache b/templates/dart/guides/search/searchFuturePublishedBooks.mustache new file mode 100644 index 00000000000..84aa55f8713 --- /dev/null +++ b/templates/dart/guides/search/searchFuturePublishedBooks.mustache @@ -0,0 +1,13 @@ +{{> snippets/import}} + +void searchFuturePublishedBooks() async { + {{> snippets/init}} + + final dateTimestamp = DateTime.now().millisecondsSinceEpoch; + final searchParams = SearchParamsObject( + query: "", + filters: "date_timestamp > $dateTimestamp" + ); + + await {{#dynamicSnippet}}searchWithSearchParams{{/dynamicSnippet}}; +} \ No newline at end of file diff --git a/templates/dart/guides/search/searchRecentlyPublishedBooks.mustache b/templates/dart/guides/search/searchRecentlyPublishedBooks.mustache index 0e91a3e0060..1f71f610aa0 100644 --- a/templates/dart/guides/search/searchRecentlyPublishedBooks.mustache +++ b/templates/dart/guides/search/searchRecentlyPublishedBooks.mustache @@ -3,7 +3,7 @@ void searchRecentlyPublishedBooks() async { {{> snippets/init}} - final dateTimestamp = DateTime.now().millisecondsSinceEpoch; + final dateTimestamp = DateTime.now().subtract(Duration(days: 365)).millisecondsSinceEpoch; final searchParams = SearchParamsObject( query: "", filters: "date_timestamp > $dateTimestamp" diff --git a/templates/go/guides/search/searchFuturePublishedBooks.mustache b/templates/go/guides/search/searchFuturePublishedBooks.mustache new file mode 100644 index 00000000000..35479ee66b3 --- /dev/null +++ b/templates/go/guides/search/searchFuturePublishedBooks.mustache @@ -0,0 +1,26 @@ +package main + +import ( + "encoding/json" + "fmt" + "net/http" + "time" +) + +{{> snippets/import}} + +func searchFuturePublishedBooks() { + {{> snippets/init}} + + dateTimestamp := time.Now().UnixMilli() + searchParams := search.SearchParamsObjectAsSearchParams( + search.NewSearchParamsObject(). + SetQuery(""). + SetFilters(fmt.Sprintf("date_timestamp > %d", dateTimestamp)), + ) + + _, err = {{#dynamicSnippet}}searchWithSearchParams{{/dynamicSnippet}} + if err != nil { + panic(err) + } +} diff --git a/templates/go/guides/search/searchRecentlyPublishedBooks.mustache b/templates/go/guides/search/searchRecentlyPublishedBooks.mustache index f31106cbfc9..c48af8f4d27 100644 --- a/templates/go/guides/search/searchRecentlyPublishedBooks.mustache +++ b/templates/go/guides/search/searchRecentlyPublishedBooks.mustache @@ -12,7 +12,7 @@ import ( func searchRecentlyPublishedBooks() { {{> snippets/init}} - dateTimestamp := time.Now().UnixMilli() + dateTimestamp := time.Now().AddDate(-1, 0, 0).Unix() searchParams := search.SearchParamsObjectAsSearchParams( search.NewSearchParamsObject(). SetQuery(""). diff --git a/templates/java/guides/search/searchFuturePublishedBooks.mustache b/templates/java/guides/search/searchFuturePublishedBooks.mustache new file mode 100644 index 00000000000..920916f2495 --- /dev/null +++ b/templates/java/guides/search/searchFuturePublishedBooks.mustache @@ -0,0 +1,20 @@ +package com.algolia; + +{{> snippets/import}} + +public class searchFuturePublishedBooks { + + public static void main(String[] args) throws Exception { + + try ({{> snippets/init}}) { + long dateTimestamp = System.currentTimeMillis(); + SearchParams searchParams = new SearchParamsObject() + .setQuery("") + .setFilters("date_timestamp > " + dateTimestamp); + + {{#dynamicSnippet}}searchWithSearchParams{{/dynamicSnippet}}; + } catch (Exception e) { + System.out.println("An error occurred: " + e.getMessage()); + } + } +} diff --git a/templates/java/guides/search/searchRecentlyPublishedBooks.mustache b/templates/java/guides/search/searchRecentlyPublishedBooks.mustache index 095345180da..7ec1b0a6a53 100644 --- a/templates/java/guides/search/searchRecentlyPublishedBooks.mustache +++ b/templates/java/guides/search/searchRecentlyPublishedBooks.mustache @@ -1,5 +1,8 @@ package com.algolia; +import java.time.ZoneOffset; +import java.time.ZonedDateTime; + {{> snippets/import}} public class searchRecentlyPublishedBooks { @@ -7,7 +10,7 @@ public class searchRecentlyPublishedBooks { public static void main(String[] args) throws Exception { try ({{> snippets/init}}) { - long dateTimestamp = System.currentTimeMillis(); + long dateTimestamp = ZonedDateTime.now(ZoneOffset.UTC).plusYears(-1).toEpochSecond(); SearchParams searchParams = new SearchParamsObject() .setQuery("") .setFilters("date_timestamp > " + dateTimestamp); diff --git a/templates/javascript/guides/search/searchFuturePublishedBooks.mustache b/templates/javascript/guides/search/searchFuturePublishedBooks.mustache new file mode 100644 index 00000000000..8d0688a2bf8 --- /dev/null +++ b/templates/javascript/guides/search/searchFuturePublishedBooks.mustache @@ -0,0 +1,16 @@ +{{> snippets/import}} +import type { SearchParams } from 'algoliasearch'; + +try { + {{> snippets/init}} + + const dateTimestamp = Date.now(); + const searchParams: SearchParams = { + query: "", + filters: `date_timestamp > ${dateTimestamp}` + }; + + {{#dynamicSnippet}}searchWithSearchParams{{/dynamicSnippet}} +} catch (e: any) { + console.error(e); +} diff --git a/templates/javascript/guides/search/searchRecentlyPublishedBooks.mustache b/templates/javascript/guides/search/searchRecentlyPublishedBooks.mustache index 8d0688a2bf8..8a1fd7050f8 100644 --- a/templates/javascript/guides/search/searchRecentlyPublishedBooks.mustache +++ b/templates/javascript/guides/search/searchRecentlyPublishedBooks.mustache @@ -4,10 +4,10 @@ import type { SearchParams } from 'algoliasearch'; try { {{> snippets/init}} - const dateTimestamp = Date.now(); + const d = new Date(); const searchParams: SearchParams = { query: "", - filters: `date_timestamp > ${dateTimestamp}` + filters: `date_timestamp > ${Math.floor(d.setDate(d.getDate() - 365) / 1000)}` }; {{#dynamicSnippet}}searchWithSearchParams{{/dynamicSnippet}} diff --git a/templates/kotlin/guides/search/searchFuturePublishedBooks.mustache b/templates/kotlin/guides/search/searchFuturePublishedBooks.mustache new file mode 100644 index 00000000000..dcda6db22f2 --- /dev/null +++ b/templates/kotlin/guides/search/searchFuturePublishedBooks.mustache @@ -0,0 +1,16 @@ +import java.time.Instant + +{{> snippets/import}} +import com.algolia.client.model.search.* + +suspend fun searchFuturePublishedBooks() { + {{> snippets/init}} + + val dateTimestamp = Instant.now().epochSecond + val searchParams = SearchParamsObject( + query = "", + filters = "date_timestamp > $dateTimestamp" + ) + + client.{{#dynamicSnippet}}searchWithSearchParams{{/dynamicSnippet}} +} \ No newline at end of file diff --git a/templates/kotlin/guides/search/searchRecentlyPublishedBooks.mustache b/templates/kotlin/guides/search/searchRecentlyPublishedBooks.mustache index 1f76a496bb5..b891248ec6c 100644 --- a/templates/kotlin/guides/search/searchRecentlyPublishedBooks.mustache +++ b/templates/kotlin/guides/search/searchRecentlyPublishedBooks.mustache @@ -1,4 +1,5 @@ import java.time.Instant +import java.time.temporal.ChronoUnit {{> snippets/import}} import com.algolia.client.model.search.* @@ -6,7 +7,7 @@ import com.algolia.client.model.search.* suspend fun searchRecentlyPublishedBooks() { {{> snippets/init}} - val dateTimestamp = Instant.now().epochSecond + val dateTimestamp = Instant.now().minus(365, ChronoUnit.DAYS).epochSecond val searchParams = SearchParamsObject( query = "", filters = "date_timestamp > $dateTimestamp" diff --git a/templates/php/guides/search/searchFuturePublishedBooks.mustache b/templates/php/guides/search/searchFuturePublishedBooks.mustache new file mode 100644 index 00000000000..2fa8038c8c9 --- /dev/null +++ b/templates/php/guides/search/searchFuturePublishedBooks.mustache @@ -0,0 +1,18 @@ + snippets/import}} +use Algolia\AlgoliaSearch\Model\Search\SearchParamsObject; + +try { + {{> snippets/init}} + + $dateTimestamp = time(); + $searchParams = (new SearchParamsObject()) + ->setQuery('') + ->setFilters("date_timestamp > " . $dateTimestamp); + + {{#dynamicSnippet}}searchWithSearchParams{{/dynamicSnippet}}; +} catch (Exception $e) { + echo $e->getMessage() . PHP_EOL; +} \ No newline at end of file diff --git a/templates/php/guides/search/searchRecentlyPublishedBooks.mustache b/templates/php/guides/search/searchRecentlyPublishedBooks.mustache index 2fa8038c8c9..f794eff795e 100644 --- a/templates/php/guides/search/searchRecentlyPublishedBooks.mustache +++ b/templates/php/guides/search/searchRecentlyPublishedBooks.mustache @@ -7,7 +7,7 @@ use Algolia\AlgoliaSearch\Model\Search\SearchParamsObject; try { {{> snippets/init}} - $dateTimestamp = time(); + $dateTimestamp = strtotime('-1 years'); $searchParams = (new SearchParamsObject()) ->setQuery('') ->setFilters("date_timestamp > " . $dateTimestamp); diff --git a/templates/python/guides/search/searchFuturePublishedBooks.mustache b/templates/python/guides/search/searchFuturePublishedBooks.mustache new file mode 100644 index 00000000000..20ac0c8b551 --- /dev/null +++ b/templates/python/guides/search/searchFuturePublishedBooks.mustache @@ -0,0 +1,18 @@ +import time + +{{> snippets/import}} + + +if __name__ == "__main__": + try: + _{{> snippets/init}} + + date_timestamp = time.time() # Get current timestamp + search_params = { + "query": "", + "filters": f"date_timestamp > {date_timestamp}" + } + + {{#dynamicSnippet}}searchWithSearchParams{{/dynamicSnippet}} + except Exception as e: + print(f"Error: {e}") diff --git a/templates/python/guides/search/searchRecentlyPublishedBooks.mustache b/templates/python/guides/search/searchRecentlyPublishedBooks.mustache index 20ac0c8b551..1748bda0a14 100644 --- a/templates/python/guides/search/searchRecentlyPublishedBooks.mustache +++ b/templates/python/guides/search/searchRecentlyPublishedBooks.mustache @@ -1,3 +1,4 @@ +import datetime import time {{> snippets/import}} @@ -7,7 +8,8 @@ if __name__ == "__main__": try: _{{> snippets/init}} - date_timestamp = time.time() # Get current timestamp + date = datetime.datetime.now() - datetime.timedelta(days=365) + date_timestamp = int(time.mktime(date.timetuple())) search_params = { "query": "", "filters": f"date_timestamp > {date_timestamp}" diff --git a/templates/ruby/guides/search/searchFuturePublishedBooks.mustache b/templates/ruby/guides/search/searchFuturePublishedBooks.mustache new file mode 100644 index 00000000000..9865d28eea0 --- /dev/null +++ b/templates/ruby/guides/search/searchFuturePublishedBooks.mustache @@ -0,0 +1,13 @@ +import time + +{{> snippets/import}} + +{{> snippets/init}} + +date_timestamp = Time.now.to_i # Get current timestamp +search_params = Algolia::Search::SearchParamsObject.new( + query: "", + filters: "date_timestamp > #{date_timestamp}" +) + +{{#dynamicSnippet}}searchWithSearchParams{{/dynamicSnippet}} diff --git a/templates/ruby/guides/search/searchRecentlyPublishedBooks.mustache b/templates/ruby/guides/search/searchRecentlyPublishedBooks.mustache index 9865d28eea0..8a79bea0fa0 100644 --- a/templates/ruby/guides/search/searchRecentlyPublishedBooks.mustache +++ b/templates/ruby/guides/search/searchRecentlyPublishedBooks.mustache @@ -4,7 +4,7 @@ import time {{> snippets/init}} -date_timestamp = Time.now.to_i # Get current timestamp +date_timestamp = Time.now.to_i - 60 * 60 * 24 * 365 search_params = Algolia::Search::SearchParamsObject.new( query: "", filters: "date_timestamp > #{date_timestamp}" diff --git a/templates/scala/guides/search/searchFuturePublishedBooks.mustache b/templates/scala/guides/search/searchFuturePublishedBooks.mustache new file mode 100644 index 00000000000..f18ac3f6b89 --- /dev/null +++ b/templates/scala/guides/search/searchFuturePublishedBooks.mustache @@ -0,0 +1,23 @@ +import scala.concurrent.ExecutionContext.Implicits.global +import scala.concurrent.Future +import java.time.Instant + +{{> snippets/import}} +import algoliasearch.search.SearchParamsObject + +def searchFuturePublishedBooks(): Future[Unit] = { + {{> snippets/init}} + + val dateTimestamp = Instant.now.getEpochSecond + val searchParams = SearchParamsObject( + query = Some(""), + filters = Some(s"date_timestamp > $dateTimestamp") + ) + + {{#dynamicSnippet}}searchWithSearchParams{{/dynamicSnippet}}.map { response => + println(response) + }.recover { + case ex: Exception => + println(s"An error occurred: ${ex.getMessage}") + } +} \ No newline at end of file diff --git a/templates/scala/guides/search/searchRecentlyPublishedBooks.mustache b/templates/scala/guides/search/searchRecentlyPublishedBooks.mustache index 40e2858524d..62ef2421af4 100644 --- a/templates/scala/guides/search/searchRecentlyPublishedBooks.mustache +++ b/templates/scala/guides/search/searchRecentlyPublishedBooks.mustache @@ -1,6 +1,6 @@ import scala.concurrent.ExecutionContext.Implicits.global import scala.concurrent.Future -import java.time.Instant +import java.time.{Instant, LocalDateTime, ZoneOffset} {{> snippets/import}} import algoliasearch.search.SearchParamsObject @@ -8,7 +8,7 @@ import algoliasearch.search.SearchParamsObject def searchRecentlyPublishedBooks(): Future[Unit] = { {{> snippets/init}} - val dateTimestamp = Instant.now.getEpochSecond + val dateTimestamp = LocalDateTime.now().minusYears(1).toInstant(ZoneOffset.UTC).getEpochSecond val searchParams = SearchParamsObject( query = Some(""), filters = Some(s"date_timestamp > $dateTimestamp") diff --git a/templates/swift/guides/search/searchFuturePublishedBooks.mustache b/templates/swift/guides/search/searchFuturePublishedBooks.mustache new file mode 100644 index 00000000000..f4b292012bc --- /dev/null +++ b/templates/swift/guides/search/searchFuturePublishedBooks.mustache @@ -0,0 +1,23 @@ +import Foundation +#if os(Linux) // For linux interop + import FoundationNetworking +#endif + +import Core +{{> snippets/import}} + +func searchFuturePublishedBooks() async throws { + do { + {{> snippets/init}} + + let dateTimestamp = Int(Date().timeIntervalSince1970) + let searchParams = SearchSearchParams.searchSearchParamsObject( + SearchSearchParamsObject(query: "", filters: "date_timestamp > \(dateTimestamp)") + ) + + let response: SearchResponse = {{#dynamicSnippet}}searchWithSearchParams{{/dynamicSnippet}} + print(response) + } catch { + print(error) + } +} \ No newline at end of file diff --git a/templates/swift/guides/search/searchRecentlyPublishedBooks.mustache b/templates/swift/guides/search/searchRecentlyPublishedBooks.mustache index bd77f64c9cf..501fbbe69f5 100644 --- a/templates/swift/guides/search/searchRecentlyPublishedBooks.mustache +++ b/templates/swift/guides/search/searchRecentlyPublishedBooks.mustache @@ -10,7 +10,7 @@ func searchRecentlyPublishedBooks() async throws { do { {{> snippets/init}} - let dateTimestamp = Int(Date().timeIntervalSince1970) + let dateTimestamp = Int(Date().timeIntervalSince1970) - 365 * 24 * 60 * 60 let searchParams = SearchSearchParams.searchSearchParamsObject( SearchSearchParamsObject(query: "", filters: "date_timestamp > \(dateTimestamp)") )