Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Add stream Actor and Tag structs and complete StreamItem. | Harald Eilertsen | 2024-01-13 | 4 | -0/+121 |
| | |||||
* | Add some more fields to the StreamItem struct. | Harald Eilertsen | 2024-01-13 | 2 | -1/+15 |
| | |||||
* | Add stream::DateTime struct | Harald Eilertsen | 2024-01-13 | 4 | -0/+107 |
| | | | | | | | As the date and time returned in the json data from the zot stream api's neither contains any timezone information, nor follow the RFC3339 format expected by Chrono, we need to make our own date time type, and handle deserialization ourselves. | ||||
* | Move streamitem tests to streamitem module. | Harald Eilertsen | 2024-01-13 | 2 | -88/+97 |
| | |||||
* | Refactor stream API, move StreamItem and Verb to modules. | Harald Eilertsen | 2024-01-12 | 3 | -96/+136 |
| | |||||
* | Make channel_stream return error on auth failure | Harald Eilertsen | 2024-01-12 | 4 | -331/+369 |
| | | | | Also reenables the relevant tests. | ||||
* | Add high level stream API. | Harald Eilertsen | 2024-01-08 | 3 | -1/+253 |
| | |||||
* | Implement channel API's. | Harald Eilertsen | 2023-04-01 | 2 | -5/+55 |
| | | | | | These just output the result as json for now, that's not what we want in the end, but it's where we start. | ||||
* | Add version API. | Harald Eilertsen | 2023-04-01 | 2 | -0/+19 |
| | |||||
* | Another reqrite... | Harald Eilertsen | 2023-03-29 | 13 | -502/+98 |
| | | | | | | | | | | | | | | | | | | Third time must be where it sits I hope. I felt the API was getting a bit too distracted by unnecessary constructs and abstractions, so I'm trying to simplify it by making it more straight forward. The idea now is to have one main API class (ZotApi), and all the various remote API's as public methods on this basic class. Iow, the ZotApi class is mainly based on the existing `Client` class, which is then being phased out. And instead of having each API tied to the data type they return, I'm just adding methods that will return the respective data types. This should reduce coupling between the returned data, and the API calls themselves. | ||||
* | Update some dependencies.dev | Harald Eilertsen | 2023-03-28 | 2 | -2/+2 |
| | |||||
* | Fix license header on new files. | Harald Eilertsen | 2023-03-28 | 2 | -0/+32 |
| | |||||
* | Update gitignore to ignore sub-targets. | Harald Eilertsen | 2023-03-27 | 1 | -1/+1 |
| | |||||
* | Add ZotAPI trait and derive macro. | Harald Eilertsen | 2023-03-27 | 10 | -25/+52 |
| | | | | | | | | | The idea is to try to generate more of the boilerplate code, but for now we only do the `z()` method definition. There are also some we're not quite able to replace yet (like XChanRequest) since it also has life times. It's a start anyways :) | ||||
* | Implement "verify" API.HEADmaster | Harald Eilertsen | 2023-03-26 | 3 | -0/+184 |
| | | | | | | | The verify API call returns a full channel object, including the corresponding xchan. I've added the xchan as a field in the Channel object, instead of having all the fields in one object like it is returned from the API. | ||||
* | Move to Rust 2021 edition. | Harald Eilertsen | 2023-03-26 | 1 | -1/+1 |
| | | | | | Doesn't seem like anything is changing re our code, but might as well just stay with the lates. | ||||
* | Make abook output prettier. | Harald Eilertsen | 2023-03-26 | 1 | -1/+3 |
| | | | | | | Only print the most relevant information from the returned data. Output it as CSV (but we don't do any sort of escaping yet). This will probably not stay this way, but works as a demonstration for now. | ||||
* | Include XChan in the Abook struct. | Harald Eilertsen | 2023-03-26 | 1 | -3/+16 |
| | | | | | | I feel this is a better representation than what is coming directly from the API where it's all returned as one json object with fieldnames prefixed with abook or xchan respectively. | ||||
* | Add generix API error which is a string. | Harald Eilertsen | 2023-03-26 | 1 | -0/+7 |
| | |||||
* | Fetch abook and xchan directly from api. | Harald Eilertsen | 2023-03-26 | 7 | -135/+163 |
| | | | | We don't really need the intermediate layer in the binary module. | ||||
* | Update reqwest and make async. | Harald Eilertsen | 2021-07-05 | 17 | -110/+135 |
| | | | | | | | | This means adding the full tokio as a dependency. While there isn't much gain to going async in the current cli demo app, a full fledged app may have more to gain by it. First foray into async rust, so I might not do it right... | ||||
* | Update dependencies | Harald Eilertsen | 2021-07-05 | 1 | -5/+5 |
| | |||||
* | Fix tests an update for newer rust. | Harald Eilertsen | 2021-07-04 | 2 | -4/+4 |
| | |||||
* | bin/zot: Clean up channel stream output somewhat. | Your Name | 2020-05-03 | 1 | -9/+18 |
| | | | | Not really easy to find a goot pure text representation of this, though. | ||||
* | Promote example app to proper command line client. | Your Name | 2020-05-03 | 10 | -5/+5 |
| | |||||
* | zotcli: Don't dump raw json response after post item. | Your Name | 2020-05-02 | 3 | -6/+44 |
| | |||||
* | zotcli: take item body as a file rather than string. | Your Name | 2020-05-02 | 2 | -2/+8 |
| | |||||
* | xchan: update internal api and parse results into struct. | Your Name | 2020-05-02 | 4 | -21/+105 |
| | |||||
* | xchan: rename request object type to XChanRequest. | Your Name | 2020-05-02 | 1 | -12/+12 |
| | | | | We want to have the XChan type for actial XChan data. | ||||
* | Update Mockito | Your Name | 2020-05-01 | 1 | -1/+1 |
| | |||||
* | Update abook with struct and request object. | Harald Eilertsen | 2020-02-14 | 4 | -31/+109 |
| | |||||
* | tests: Make default mock return empty array. | Harald Eilertsen | 2020-02-14 | 1 | -1/+1 |
| | | | | Most API's return an arrya, so this should be ok with most of them. | ||||
* | tests: No need to check response returned by mock. | Harald Eilertsen | 2020-02-14 | 1 | -4/+2 |
| | |||||
* | Refactor how ABConfigs are fetched. | Harald Eilertsen | 2020-02-13 | 4 | -20/+25 |
| | | | | | | | Introduce a `z()` menber function that creates the request object that we use for further configuring the requset. This eliminates the need to two fetch functions, and is meant to provide a consistent way of doing these requests. | ||||
* | Let api access client request object directly. | Harald Eilertsen | 2020-02-13 | 2 | -5/+13 |
| | | | | | This simplifies things a bit, as we don't need to buffer query params and such outside of the request itself. | ||||
* | Add fetching ABConfig for only a given contact. | Harald Eilertsen | 2020-02-13 | 2 | -0/+48 |
| | |||||
* | abconfig: reorg + parse result into struct. | Harald Eilertsen | 2020-01-04 | 6 | -15/+65 |
| | |||||
* | Cargo fmt | Harald Eilertsen | 2020-01-03 | 9 | -35/+10 |
| | |||||
* | Move client constructor fn to submodule. | Harald Eilertsen | 2020-01-03 | 3 | -14/+10 |
| | |||||
* | Make channel and network stream behave like the rest. | Harald Eilertsen | 2020-01-03 | 7 | -13/+75 |
| | |||||
* | Move Client out of the api objects. | Harald Eilertsen | 2020-01-03 | 13 | -137/+105 |
| | | | | Also make constructor functions in the zotapi namespace. | ||||
* | Use Url crate and move paths to submodules. | Harald Eilertsen | 2020-01-03 | 7 | -33/+26 |
| | |||||
* | Cargo fmt | Harald Eilertsen | 2020-01-02 | 16 | -190/+201 |
| | |||||
* | No need for extern crate in Rust 2018. | Harald Eilertsen | 2020-01-02 | 3 | -9/+0 |
| | |||||
* | zotcli: Limit post to one or more groups. | Harald Eilertsen | 2020-01-01 | 2 | -0/+7 |
| | |||||
* | Allow limiting a new item to one or more privacy groups. | Harald Eilertsen | 2020-01-01 | 2 | -12/+80 |
| | |||||
* | Replace serde_urlencoded with serde_qs. | Harald Eilertsen | 2020-01-01 | 6 | -36/+24 |
| | | | | Simplifies serialization of various types quite a bit. | ||||
* | Update deps. | Harald Eilertsen | 2020-01-01 | 2 | -3/+3 |
| | |||||
* | tests: Verify authorization properly. | Harald Eilertsen | 2020-01-01 | 2 | -15/+15 |
| | |||||
* | Update to Mockito 0.19 for smoother tests. | Harald Eilertsen | 2019-07-29 | 2 | -13/+12 |
| | | | | | Provides matching against query params, so we don't need the ugly regexes anymore. |