Filesystem KVS with Roster source `all` is broken

Open
#191 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
4/5
Estimated time
3-5 days
Newbie friendliness
35/100
Issue type
Bug
Clarity
Needs clarification
Activity status
Stale
Tech stack
python
Domain
database

Research direction

Start at learning_observer/rosters.py:all_students and inspect the filesystem KVS implementation and its .keys() behavior; compare the stored filename keys with the comma-splitting logic. Done means the all roster source extracts existing student IDs from filesystem-backed KVS data and no longer produces an empty class.

Written by the indexing model from the issue text.

Description

bug good first issue python

When using the filesystem KVS, the , in the key strings are converted to - to remain as a valid filename. The all roster source fetches all available keys and extracts student ids by splitting on ,.

Even if students exist in the filesystem, their IDs are not being properly extracted and thus, we end up with an empty class.

We could:

  1. Warn the user that these are incompatible setting
  2. Create an edge case learning_observer/rosters.py:all_students that checks the KVS type and extracts students based on that
  3. Modify the FileSystem KVS to use the appropriate key string when returning .keys()
Dominant language
Python
Stars
12
Forks
11
PR merge metrics
No merged PRs in 30d

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from ArgLab/writing_observer

All issues in ArgLab/writing_observer

Similar issues

More Python issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.