Skip to content

feat(clients): add missing guides #4457

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 5 commits into from
Feb 12, 2025
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions scripts/ci/codegen/pushToRepository.ts
Original file line number Diff line number Diff line change
Expand Up @@ -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<void> {
const pathToSpecs = toAbsolutePath(`${tempGitDir}/${spec.output}`);
Expand Down Expand Up @@ -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}`);
Expand Down
2 changes: 1 addition & 1 deletion scripts/ci/codegen/waitForAllReleases.ts
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,7 @@ async function fetchAllRuns(runs: Run[]): Promise<void> {
);
}

function sleep(ms: number): Promise<void> {
export function sleep(ms: number): Promise<void> {
return new Promise((resolve) => {
setTimeout(resolve, ms);
});
Expand Down
Original file line number Diff line number Diff line change
@@ -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 = "<YOUR_SEARCH_QUERY>",
Filters = $"date_timestamp > {dateTimestamp}"
}
);

{{#dynamicSnippet}}searchWithSearchParams{{/dynamicSnippet}};
} catch (Exception e) {
Console.WriteLine(e.Message);
}
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -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 = "<YOUR_SEARCH_QUERY>",
Filters = $"date_timestamp > {dateTimestamp}"
Filters = $"date_timestamp > {unixTime}"
}
);

Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
{{> snippets/import}}

void searchFuturePublishedBooks() async {
{{> snippets/init}}

final dateTimestamp = DateTime.now().millisecondsSinceEpoch;
final searchParams = SearchParamsObject(
query: "<YOUR_SEARCH_QUERY>",
filters: "date_timestamp > $dateTimestamp"
);

await {{#dynamicSnippet}}searchWithSearchParams{{/dynamicSnippet}};
}
Original file line number Diff line number Diff line change
Expand Up @@ -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: "<YOUR_SEARCH_QUERY>",
filters: "date_timestamp > $dateTimestamp"
Expand Down
26 changes: 26 additions & 0 deletions templates/go/guides/search/searchFuturePublishedBooks.mustache
Original file line number Diff line number Diff line change
@@ -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("<YOUR_SEARCH_QUERY>").
SetFilters(fmt.Sprintf("date_timestamp > %d", dateTimestamp)),
)

_, err = {{#dynamicSnippet}}searchWithSearchParams{{/dynamicSnippet}}
if err != nil {
panic(err)
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -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("<YOUR_SEARCH_QUERY>").
Expand Down
Original file line number Diff line number Diff line change
@@ -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("<YOUR_SEARCH_QUERY>")
.setFilters("date_timestamp > " + dateTimestamp);

{{#dynamicSnippet}}searchWithSearchParams{{/dynamicSnippet}};
} catch (Exception e) {
System.out.println("An error occurred: " + e.getMessage());
}
}
}
Original file line number Diff line number Diff line change
@@ -1,13 +1,16 @@
package com.algolia;

import java.time.ZoneOffset;
import java.time.ZonedDateTime;

{{> snippets/import}}

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("<YOUR_SEARCH_QUERY>")
.setFilters("date_timestamp > " + dateTimestamp);
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
{{> snippets/import}}
import type { SearchParams } from 'algoliasearch';

try {
{{> snippets/init}}

const dateTimestamp = Date.now();
const searchParams: SearchParams = {
query: "<YOUR_SEARCH_QUERY>",
filters: `date_timestamp > ${dateTimestamp}`
};

{{#dynamicSnippet}}searchWithSearchParams{{/dynamicSnippet}}
} catch (e: any) {
console.error(e);
}
Original file line number Diff line number Diff line change
Expand Up @@ -4,10 +4,10 @@ import type { SearchParams } from 'algoliasearch';
try {
{{> snippets/init}}

const dateTimestamp = Date.now();
const d = new Date();
const searchParams: SearchParams = {
query: "<YOUR_SEARCH_QUERY>",
filters: `date_timestamp > ${dateTimestamp}`
filters: `date_timestamp > ${Math.floor(d.setDate(d.getDate() - 365) / 1000)}`
};

{{#dynamicSnippet}}searchWithSearchParams{{/dynamicSnippet}}
Expand Down
Original file line number Diff line number Diff line change
@@ -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 = "<YOUR_SEARCH_QUERY>",
filters = "date_timestamp > $dateTimestamp"
)

client.{{#dynamicSnippet}}searchWithSearchParams{{/dynamicSnippet}}
}
Original file line number Diff line number Diff line change
@@ -1,12 +1,13 @@
import java.time.Instant
import java.time.temporal.ChronoUnit

{{> snippets/import}}
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 = "<YOUR_SEARCH_QUERY>",
filters = "date_timestamp > $dateTimestamp"
Expand Down
18 changes: 18 additions & 0 deletions templates/php/guides/search/searchFuturePublishedBooks.mustache
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
<?php

require __DIR__.'/../vendor/autoload.php';
{{> snippets/import}}
use Algolia\AlgoliaSearch\Model\Search\SearchParamsObject;

try {
{{> snippets/init}}

$dateTimestamp = time();
$searchParams = (new SearchParamsObject())
->setQuery('<YOUR_SEARCH_QUERY>')
->setFilters("date_timestamp > " . $dateTimestamp);

{{#dynamicSnippet}}searchWithSearchParams{{/dynamicSnippet}};
} catch (Exception $e) {
echo $e->getMessage() . PHP_EOL;
}
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ use Algolia\AlgoliaSearch\Model\Search\SearchParamsObject;
try {
{{> snippets/init}}

$dateTimestamp = time();
$dateTimestamp = strtotime('-1 years');
$searchParams = (new SearchParamsObject())
->setQuery('<YOUR_SEARCH_QUERY>')
->setFilters("date_timestamp > " . $dateTimestamp);
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
import time

{{> snippets/import}}


if __name__ == "__main__":
try:
_{{> snippets/init}}

date_timestamp = time.time() # Get current timestamp
search_params = {
"query": "<YOUR_SEARCH_QUERY>",
"filters": f"date_timestamp > {date_timestamp}"
}

{{#dynamicSnippet}}searchWithSearchParams{{/dynamicSnippet}}
except Exception as e:
print(f"Error: {e}")
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
import datetime
import time

{{> snippets/import}}
Expand All @@ -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": "<YOUR_SEARCH_QUERY>",
"filters": f"date_timestamp > {date_timestamp}"
Expand Down
Original file line number Diff line number Diff line change
@@ -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: "<YOUR_SEARCH_QUERY>",
filters: "date_timestamp > #{date_timestamp}"
)

{{#dynamicSnippet}}searchWithSearchParams{{/dynamicSnippet}}
Original file line number Diff line number Diff line change
Expand Up @@ -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: "<YOUR_SEARCH_QUERY>",
filters: "date_timestamp > #{date_timestamp}"
Expand Down
Original file line number Diff line number Diff line change
@@ -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("<YOUR_SEARCH_QUERY>"),
filters = Some(s"date_timestamp > $dateTimestamp")
)

{{#dynamicSnippet}}searchWithSearchParams{{/dynamicSnippet}}.map { response =>
println(response)
}.recover {
case ex: Exception =>
println(s"An error occurred: ${ex.getMessage}")
}
}
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
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

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("<YOUR_SEARCH_QUERY>"),
filters = Some(s"date_timestamp > $dateTimestamp")
Expand Down
Original file line number Diff line number Diff line change
@@ -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: "<YOUR_SEARCH_QUERY>", filters: "date_timestamp > \(dateTimestamp)")
)

let response: SearchResponse<Hit> = {{#dynamicSnippet}}searchWithSearchParams{{/dynamicSnippet}}
print(response)
} catch {
print(error)
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -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: "<YOUR_SEARCH_QUERY>", filters: "date_timestamp > \(dateTimestamp)")
)
Expand Down