backing store support
Maintainers usually reply within 1 day
Nobody has claimed this yet.
Assessment
- Difficulty
- 5/5
- Estimated time
- Over a week
- Newbie friendliness
- 28/100
Research direction
Start by comparing the Ruby abstractions and JSON serialization implementation with the linked Kiota .NET interfaces and implementations. Trace the existing parse-node factories and model abstractions before planning the backing store interfaces, in-memory implementation, singleton, event hooks, and proxy factories. Done means all listed TODO items are implemented with coverage for backing-store behavior and JSON hook handling.
Written by the indexing model from the issue text.
Description
One major feature of Kiota clients that hasn't been implemented in Ruby is the backing store.
The main idea is to store values behind the models in another memory space instead of using fields/properties.
This enables scenarios like dirty tracking, data sync with other data sources and much more.
More information can be found in our conceptual documentation
TODO:
- Add a backing store interface in the abstractions
- Add a backed model interface in the abstractions
- Add an in memory backing store implementation in the abstractions
- Add a backing store factory interface in the abstractions
- Implement the factory for the in memory backing store
- Add a singleton for the backing store factory in the abstractions
- Add event hooks for the json parse node (on before, on after, etc...)
- Call the hooks when provided in the JSON implementation
- Copy the hooks when provided in the JSON implementation
- Implement factories for proxy
- implement those factories for the backing store
- Dominant language
- Ruby
- Stars
- 5
- Forks
- 8
- Avg merge
- 19h 44m
- Merged PRs (30d)
- 25
Getting set up
- No Dockerfile or Docker Compose file
- No pull request template
- Read the contributing guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from microsoft/kiota-ruby
-
Difficulty 4/5 3-5 days Newbie friendliness 35/100
microsoft/kiota-ruby#74 ·
Maintainers usually reply within 1 day
-
help wanted ruby type:bug
Difficulty 4/5 3-5 days Newbie friendliness 35/100
microsoft/kiota-ruby#58 ·
Maintainers usually reply within 1 day
-
http - RetryHandler MUST respect retry-after: <date>Possibly taken @voidstackloop claimed this 18 days ago. Openenhancement help wanted type:enhancement
Difficulty 3/5 1-2 days Newbie friendliness 45/100
microsoft/kiota-ruby#126 · 3 comments ·
Maintainers usually reply within 1 day
-
enhancement help wanted type:enhancement
Difficulty 4/5 3-5 days Newbie friendliness 35/100
microsoft/kiota-ruby#127 ·
Maintainers usually reply within 1 day
-
enhancement
Difficulty 4/5 3-5 days Newbie friendliness 35/100
microsoft/kiota-ruby#46 ·
Maintainers usually reply within 1 day
All issues in microsoft/kiota-ruby
Similar issues
-
good first issue
Difficulty 2/5 1-3 hours Newbie friendliness 92/100
benbalter/jekyll-include-cache#55 ·
Maintainers usually reply within 1 day
-
security
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 84/100
grafana/pyroscope#5729 · 1 comment ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 65/100
rubygems/rubygems.org#6895 ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
samvera/hyku#3359 · 1 comment ·
Maintainers usually reply within 1 day