Skip to content

[Bugfix:InstructorUI] Upload CSV parse Registration Subsection#12928

Merged
bmcutler merged 9 commits into
mainfrom
fix-upload-subsections-csv
Jun 23, 2026
Merged

[Bugfix:InstructorUI] Upload CSV parse Registration Subsection#12928
bmcutler merged 9 commits into
mainfrom
fix-upload-subsections-csv

Conversation

@roye2

@roye2 roye2 commented Jun 18, 2026

Copy link
Copy Markdown
Contributor

Why is this Change Important & Necessary?

Partially addresses #12927
The Upload CSV feature had some typos and therefore couldn't parse the Registration Subsection header.
Additionally, it was not configured to skip blank cells.

What is the New Behavior?

The Upload CSV feature is now compatible with the 'Registration Subsection' header.
Only students with a filled cell will receive a registration subsection.

Screenshots

image image

What steps should a reviewer take to reproduce or test the bug or new feature?

  1. Go to manage students page as instructor
  2. Download the existing CSV and add a column with header 'Registration Subsection'.
  3. Give some students registration subsections.
  4. Upload the file and confirm that the subsections were successfully applied.

Automated Testing & Documentation

There are no tests written for this feature, which could be added in a separate PR.

Other information

This is not a breaking change.

@github-project-automation github-project-automation Bot moved this to Seeking Reviewer in Submitty Development Jun 18, 2026
@roye2 roye2 changed the title [Bugfix:InstructorUI] Upload CSV parses Registration Subsections [Bugfix:InstructorUI] Upload CSV parse Registration Subsection Jun 18, 2026
@codecov

codecov Bot commented Jun 18, 2026

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 0% with 9 lines in your changes missing coverage. Please review.
✅ Project coverage is 21.49%. Comparing base (ed37322) to head (eae0cbf).

Additional details and impacted files

Impacted file tree graph

@@             Coverage Diff              @@
##               main   #12928      +/-   ##
============================================
- Coverage     21.49%   21.49%   -0.01%     
- Complexity     9896     9901       +5     
============================================
  Files           268      268              
  Lines         36992    36995       +3     
  Branches        495      495              
============================================
  Hits           7953     7953              
- Misses        28548    28551       +3     
  Partials        491      491              
Flag Coverage Δ
autograder 21.16% <ø> (ø)
js 2.01% <ø> (ø)
migrator 100.00% <ø> (ø)
php 20.54% <0.00%> (-0.01%) ⬇️
python_submitty_utils 80.08% <ø> (ø)
submitty_daemon_jobs 91.13% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@NicholasCiuica NicholasCiuica left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I downloaded the CSV of students from the Manage Students page and then added a Registration Subsection column. I tested adding subsections with alphanumerics, hyphens, underscores, and spaces using the CSV. I also tested that setting a student's subsection to null or blank does not change the student's subsection.

It seems that the subsection column works differently than other columns. For other columns, once a value is set it cannot be changed by the CSV upload. However, for the subsection column, once a value has been set, the student's subsection cannot be made blank, but its value can be set to something else. I think it's best that the subsection column behavior matches the rest of the table for now.

@github-project-automation github-project-automation Bot moved this from Seeking Reviewer to Work in Progress in Submitty Development Jun 19, 2026
@roye2

roye2 commented Jun 19, 2026

Copy link
Copy Markdown
Contributor Author

I downloaded the CSV of students from the Manage Students page and then added a Registration Subsection column. I tested adding subsections with alphanumerics, hyphens, underscores, and spaces using the CSV. I also tested that setting a student's subsection to null or blank does not change the student's subsection.

It seems that the subsection column works differently with other columns. For other columns, once a value is set it cannot be changed by the CSV upload. However, for the subsection column, once a value has been set, the student's subsection cannot be made blank, but its value can be set to something else. I think it's best that the subsection column behavior matches the rest of the table for now.

@NicholasCiuica The subsection can now not be changed if it was previously set.

@roye2
roye2 requested a review from NicholasCiuica June 19, 2026 15:42
@automateprojectmangement automateprojectmangement Bot moved this from Work in Progress to In Review in Submitty Development Jun 19, 2026
@roye2
roye2 force-pushed the fix-upload-subsections-csv branch from cd703a0 to d541d7d Compare June 19, 2026 20:28
@roye2
roye2 force-pushed the fix-upload-subsections-csv branch from f02a7b2 to a272a4f Compare June 22, 2026 16:16

@NicholasCiuica NicholasCiuica left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I tested this PR again and I approve this change. I was able to give students a subsection if they had none, change a subsection if they had one, or remove their subsection (using blank cell, null/NULL, or whitespace) using the CSV upload feature.

@github-project-automation github-project-automation Bot moved this from In Review to Awaiting Maintainer Review in Submitty Development Jun 23, 2026
@bmcutler
bmcutler merged commit 39a7323 into main Jun 23, 2026
25 of 27 checks passed
@bmcutler
bmcutler deleted the fix-upload-subsections-csv branch June 23, 2026 16:15
jndlansh pushed a commit to jndlansh/Submitty that referenced this pull request Jul 1, 2026
…tty#12928)

### Why is this Change Important & Necessary?
Partially addresses Submitty#12927 
The Upload CSV feature had some typos and therefore couldn't parse the
Registration Subsection header.
Additionally, it was not configured to skip blank cells. 

### What is the New Behavior?
The Upload CSV feature is now compatible with the 'Registration
Subsection' header.
Only students with a filled cell will receive a registration subsection.

### Screenshots
<img width="1660" height="596" alt="image"
src="https://github.com/user-attachments/assets/910a4172-7abd-4628-8bc3-ae4a40302bd4"
/>

<img width="1920" height="1033" alt="image"
src="https://github.com/user-attachments/assets/fdacdc42-4792-463d-a3ea-7f8e1226c4af"
/>


### What steps should a reviewer take to reproduce or test the bug or
new feature?
0. Go to manage students page as instructor
1. Download the existing CSV and add a column with header 'Registration
Subsection'.
2. Give some students registration subsections.
3. Upload the file and confirm that the subsections were successfully
applied.

### Automated Testing & Documentation
There are no tests written for this feature, which could be added in a
separate PR.

### Other information
This is not a breaking change.

---------

Co-authored-by: Nick Ciuica <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Archived in project

Development

Successfully merging this pull request may close these issues.

3 participants