Hacktoberfest 2026: the issues maintainers tagged for October, open and beginner-friendly. Browse Hacktoberfest issues

[Import/Export] Reject cancelled CRNs and derive course IDs

Open Beginner friendly
#842 0 comments 0 reactions 0 assignees View on GitHub

Maintainers usually reply within 11 days

Nobody has claimed this yet.

Assessment

Difficulty
2/5
Estimated time
1-3 hours
Newbie friendliness
78/100
Issue type
Feature
Clarity
Clearly specified
Activity status
Active
Tech stack
typescript
Domain
backend

Research direction

Start from src/lib/planFile/resolve.ts, the file issue #841 extended, and the existing validated result shape; src/server/actions/get-plan-offerings.ts shows how rows are read. Add the cancelled-row rejection after the preceding checks, then return distinct courseId values as courseIds:number[]. Cover the example in src/lib/planFile/resolve.test.ts — two rows with courseId 9 yield one id, a cancelled row errors — then run pnpm test -- src/lib/planFile/resolve.test.ts, pnpm lint and pnpm typecheck.

Written by the indexing model from the issue text.

Description

import-export

What to build

Reject imported cancelled sections and collect the course IDs needed to restore the plan. The accepted result should contain the checked sections and a list of distinct course IDs.

Files

Steps

  1. After the preceding checks pass, reject any row with cancelled=true using “A class in this plan was cancelled.”
  2. Collect the rows’ courseId values, remove duplicates and return them as courseIds alongside the checked rows.
  3. Test two accepted sections from the same course: they remain two rows but produce one course ID. A cancelled row must not produce a savable result.

Example

Rows12345+23456 bothcourseId9 → courseIds[9]; cancelled row → error.

Check it works

In src/lib/planFile/resolve.test.ts, check the example above and the failure or limit described in the steps. Run pnpm test -- src/lib/planFile/resolve.test.ts, pnpm lint and pnpm typecheck.

Before starting

  • #841 — Reject absent or wrong-term imported CRNs

References

Assign yourself before starting, or comment to claim the issue. Project setup.

Dominant language
TypeScript
Stars
19
Forks
94
PR merge metrics
No merged PRs in 30d

Getting set up

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 DevDogsUGA/DogDays

All issues in DevDogsUGA/DogDays

Similar issues

More TypeScript issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.