{"id":15654623,"url":"https://github.com/spk/rust-sidekiq","last_synced_at":"2025-04-14T19:12:05.098Z","repository":{"id":45578883,"uuid":"59435638","full_name":"spk/rust-sidekiq","owner":"spk","description":"Rust Sidekiq Client","archived":false,"fork":false,"pushed_at":"2023-04-06T00:57:40.000Z","size":187,"stargazers_count":26,"open_issues_count":1,"forks_count":8,"subscribers_count":3,"default_branch":"master","last_synced_at":"2024-03-23T11:03:47.562Z","etag":null,"topics":["async","client","job","queue","rust","sidekiq"],"latest_commit_sha":null,"homepage":"https://docs.rs/sidekiq/","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/spk.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2016-05-22T21:40:12.000Z","updated_at":"2024-07-07T14:43:15.686Z","dependencies_parsed_at":"2024-07-07T14:43:09.391Z","dependency_job_id":"2d3d2ac2-da3f-4d77-ae92-49ab04e7ff8c","html_url":"https://github.com/spk/rust-sidekiq","commit_stats":null,"previous_names":[],"tags_count":24,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/spk%2Frust-sidekiq","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/spk%2Frust-sidekiq/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/spk%2Frust-sidekiq/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/spk%2Frust-sidekiq/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/spk","download_url":"https://codeload.github.com/spk/rust-sidekiq/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248943458,"owners_count":21186958,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["async","client","job","queue","rust","sidekiq"],"created_at":"2024-10-03T12:52:53.585Z","updated_at":"2025-04-14T19:12:05.080Z","avatar_url":"https://github.com/spk.png","language":"Rust","readme":"# Rust Sidekiq Client\n\n[Sidekiq](https://github.com/mperham/sidekiq) client allowing to push jobs.\nUsing the [Sidekiq job\nformat](https://github.com/mperham/sidekiq/wiki/Job-Format) as reference.\n\n## Dependencies\n\n* [rand](https://github.com/rust-random/rand)\n* [redis](https://github.com/mitsuhiko/redis-rs)\n* [serde_json](https://github.com/serde-rs/json)\n\n## Installation\n\n``` toml\n[dependencies]\nsidekiq = \"0.12\"\n```\n\n## Default environment variables\n\n* REDIS_URL=\"redis://127.0.0.1/\"\n\n## Used by\n\n* \u003chttps://github.com/jkcclemens/paste\u003e\n* \u003chttps://github.com/spk/maman\u003e\n\n\n## Examples\n\n```rust\nuse sidekiq::{Job, Value};\nuse sidekiq::{Client, ClientOpts, create_redis_pool};\nuse time::{OffsetDateTime, Duration};\n\nlet ns = \"test\";\nlet client_opts = ClientOpts {\n    namespace: Some(ns.to_string()),\n    ..Default::default()\n};\nlet pool = create_redis_pool().unwrap();\nlet client = Client::new(pool, client_opts);\nlet class = \"MyClass\".to_string();\n\n// basic job\nlet job = Job::new(class, vec![sidekiq::Value::Null], Default::default());\nmatch client.push(job) {\n    Ok(_) =\u003e {},\n    Err(err) =\u003e {\n        println!(\"Sidekiq push failed: {}\", err);\n    },\n}\n\n// scheduled-jobs (perform_in)\nlet job = Job::new(class, vec![sidekiq::Value::Null], Default::default());\nlet interval = Duration::hours(1);\nmatch client.perform_in(interval, job) {\n    Ok(_) =\u003e {},\n    Err(err) =\u003e {\n        println!(\"Sidekiq push failed: {}\", err);\n    },\n}\n\n// scheduled-jobs (perform_at)\nlet job = Job::new(class, vec![sidekiq::Value::Null], Default::default());\nlet start_at = OffsetDateTime::now_utc().checked_add(Duration::HOUR).unwrap();\nmatch client.perform_at(start_at, job) {\n    Ok(_) =\u003e {},\n    Err(err) =\u003e {\n        println!(\"Sidekiq push failed: {}\", err);\n    },\n}\n```\n\n## REFERENCES\n\n* \u003chttp://julienblanchard.com/2015/using-resque-with-rust/\u003e\n* \u003chttps://github.com/d-unseductable/rust_sidekiq\u003e\n\n## LICENSE\n\nThe MIT License\n\nCopyright (c) 2016-2021 Laurent Arnoud \u003claurent@spkdev.net\u003e\n\n---\n[![Build](https://img.shields.io/github/workflow/status/spk/rust-sidekiq/CI/master.svg)](https://github.com/spk/rust-sidekiq/actions)\n[![Version](https://img.shields.io/crates/v/sidekiq.svg)](https://crates.io/crates/sidekiq)\n[![Documentation](https://img.shields.io/badge/doc-rustdoc-blue.svg)](https://docs.rs/sidekiq/)\n[![License](https://img.shields.io/badge/license-MIT-blue.svg)](https://opensource.org/licenses/MIT \"MIT\")\n[![Dependency status](https://deps.rs/repo/github/spk/rust-sidekiq/status.svg)](https://deps.rs/repo/github/spk/rust-sidekiq)\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fspk%2Frust-sidekiq","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fspk%2Frust-sidekiq","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fspk%2Frust-sidekiq/lists"}