leoniephiline / basispoort-sync-client Goto Github PK
View Code? Open in Web Editor NEWAn API client to help synchronize institution data with the Basispoort educational material SSO service.
License: Mozilla Public License 2.0
An API client to help synchronize institution data with the Basispoort educational material SSO service.
License: Mozilla Public License 2.0
Must be boxed. But is that the best way?
Should the large Error enum be split up?
Should there be one Error enum per module?
Should error source not be included?
Any existing crates fitting the simple needs here?
Simple validation of payload data before serialization for POST and PUT
This issue lists Renovate updates and detected dependencies. Read the Dependency Dashboard docs to learn more.
These updates are awaiting their schedule. Click on a checkbox to get an update now.
Cargo.toml
base64 0.22.0
bytes 1.6.0
chrono 0.4.38
reqwest 0.12.3
serde 1.0.198
serde_json 1.0.116
serde_urlencoded 0.7.1
thiserror 1.0.58
tokio 1.37.0
tracing 0.1.40
url 2.5.0
color-eyre 0.6.3
dotenvy 0.15.7
itertools 0.12.1
tokio 1.37.0
tracing-error 0.2.0
tracing-subscriber 0.3.18
.github/workflows/rust.yml
actions/checkout v4@b4ffde65f46336ab88eb53be808477a3936bae11
New in R2023
Use V2 right away, skip V1.X API for this implementation.
Base rest client is shared between hosted license provider API client and institutions API client.
Publishers using their own "Lika" do not need the hosted license provider API client.
=> Monorepo with 3 packages? (Base rest Client, hosted license provider API client, institutions API client.)
=> No, use features.
Are macros really such a bad idea? ๐
New in R2023.
New in R2023
Use V2 right away, skip V1.X API for this implementation.
Path.join with absolute paths only works by accident, since rest client's base url is without path.
Document crate, modules, structs and methods
Well it is more or less true:
A methode can either represent an application directly, or it can be a mere shell or container for producten, which then represent applications.
So a methode has two modi and is not necessarily an application in all situations.
New in R2023
Use V2 right away, skip V1.X API for this implementation.
A full synchronizer can be generic over an impl of a local user provider trait.
Hosted sites as cargo feature: Enables hosted sites API client (separate monorepo crate) and hosted sites synchronization (via cfg attrs).
Might add support for self-hosted sites ("Likas")?
Should tests share any non-test code? (Helpers)
Helpers themselves would need to be tested, too.
Is the clarity of tests muddied by macros and non-macro helpers?
New in R2023
Use V2 right away, skip V1.X API for this implementation.
What can be unit tested?
How can reqwest be mocked?
How can I refactor to make code more testable?
How should I structure integration tests?
Should they run against the real "test-rest" Basispoort endpoints (see current tests in lib.rs)
=> Yes.
Should all tests run sequentially or should they be created such that they can run in parallel? (Difficult if Basispoort endpoints are not mocked.)
=> Run sequentially per each service.
Can tests run in CI while not leaking client certificates in a public project?
=> ?
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.