Skip to content

Storage and fixes#423

Merged
jairovelasquez merged 6 commits intomasterfrom
storage-and-fixes
Oct 22, 2025
Merged

Storage and fixes#423
jairovelasquez merged 6 commits intomasterfrom
storage-and-fixes

Conversation

@jairovelasquez
Copy link
Collaborator

@jairovelasquez jairovelasquez commented Oct 22, 2025

Summary by CodeRabbit

  • New Features

    • Added instructor and student build variants via the TYPE parameter for flexible documentation builds
    • Added Make Instructor and Make Student commands to Codio menu
  • Documentation

    • Updated installation instructions with specific package versions
    • Added new build command documentation for instructor and student variants
  • Improvements

    • Enhanced search configuration structure

@coderabbitai
Copy link

coderabbitai bot commented Oct 22, 2025

Walkthrough

This PR updates configuration files, CI/CD workflows, build tooling, and documentation to support instructor and student-specific documentation builds. A new Python utility script for identifying unused images is added, and dependency versions are pinned in installation and build processes.

Changes

Cohort / File(s) Summary
Review & Development Configuration
.coderabbit.yaml, .codio
Updated CodeRabbit review profile from "chill" to "assertive"; added two new Codio menu commands (Make Instructor and Make Student) for building instructor and student-specific HTML documentation.
Build System & Documentation
Makefile, README.md
Introduced TYPE parameter (defaulting to "both") to support three build modes: student, instructor, and both. Updated README with pinned dependency versions and documented new build command variants.
CI/CD Pipeline
.github/workflows/deploy.yaml
Pinned specific versions for sphinx-docsearch, sphinx-sitemap, sphinx_code_tabs, and recommonmark in the Setup env step.
Search Configuration
algolia-config.json
Restructured Algolia configuration from nested .section selectors to flatter layout with explicit start_urls, updated selector queries for document structure (lvl0–lvl5), and expanded text selector scope.
Development Utilities
find_unused_images.py
New Python script for scanning and managing unused image files across Sphinx source roots, with CLI support for identifying, listing (as CSV), and optionally deleting unused images. Includes utility functions for path handling, .rst parsing, and file operations.

Estimated code review effort

🎯 4 (Complex) | ⏱️ ~60 minutes

The diff spans heterogeneous changes across multiple domains—configuration updates, build system modifications, CI/CD pinning, search configuration restructuring, and a substantial new utility script. The find_unused_images.py script introduces 11 functions with file system operations, regex-based .rst parsing, reference resolution logic, CSV handling, and CLI argument processing, requiring careful review of path normalization, edge cases, and I/O operations. Combined with the configuration restructuring in algolia-config.json and the build system logic in the Makefile, the variety and density of changes warrant elevated review effort.

Possibly related PRs

  • Adding CodeRabbit #400: Directly modifies .coderabbit.yaml configuration; this PR updates the same file's reviews.profile setting from "chill" to "assertive".

Suggested reviewers

  • shajason

Pre-merge checks and finishing touches

❌ Failed checks (1 warning, 1 inconclusive)
Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 36.36% which is insufficient. The required threshold is 80.00%. You can run @coderabbitai generate docstrings to improve docstring coverage.
Title Check ❓ Inconclusive The title "Storage and fixes" is too vague and generic to clearly communicate the primary focus of this changeset. While the PR includes multiple significant changes—such as introducing a new utility script for managing unused images (find_unused_images.py), reorganizing Algolia search configuration, adding build mode variants for student and instructor documentation, and pinning dependency versions—the title uses non-descriptive terms that obscure rather than clarify the main intent. A reader scanning the commit history would struggle to understand what specifically was changed or why without reviewing the full diff. Consider revising the title to be more specific about the primary change. For example, if the main objective is introducing the new image utility, the title could be "Add image management utility and update build configurations." If reorganizing search indexing is primary, "Reorganize Algolia search config and add build variants" would be clearer. A more descriptive title will help maintainers quickly understand the changeset's purpose.
✅ Passed checks (1 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
✨ Finishing touches
  • 📝 Generate docstrings

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

Copy link

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 10

📜 Review details

Configuration used: Path: .coderabbit.yaml

Review profile: ASSERTIVE

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between a20d7ef and 2c16d8d.

⛔ Files ignored due to path filters (293)
  • plag-button.png is excluded by !**/*.png, !**/*.png
  • prefs-account-gh1.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/CodioLibTags.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/access-bower.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/accessgrades.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/account_billing.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/account_password.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/account_settings.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/actionarea.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/addFromLib.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/adjusted.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/anon-create.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/assessment.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/assessmentpoints.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/assessmenttoken.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/assign-module.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/authtoken.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/auto-transfer-total.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/autoComplete.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/autograde-test.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/bloomsTax.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/book-permissions.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/book_publish.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/book_stack_modified.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/book_stack_newstack.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/book_stack_newversion.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/book_stack_notmodified.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/bookmapping.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/bookpages.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/booksettings.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/booksettingspage.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/bookshowallpages.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/bookslist.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/bookupdate.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/bookupdate1.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/bookversion.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/bower-components-tree.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/bower-installable.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/bower-installed.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/bower-remove.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/bower-update.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/box_info.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/build.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/buildkeys.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/buildset2.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/buildsettings.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/ca-annotations-file.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/ca-collapse-after.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/ca-collapse-before.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/ca-embed-ide.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/ca-explore.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/ca-files.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/ca-overview.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/ca-popup-window.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/ca-readme.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/ca-video.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/changereleasegrades.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/chromecookies.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/class-releasegrades.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/class_add_module.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/class_addstudents.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/class_addteachers.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/class_administration/addteachers/invitation.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/class_administration/addteachers/myschoolorg.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/class_administration/asignmentsettings.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/class_administration/createanorganization/classteststudents.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/class_administration/createanorganization/completeform.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/class_administration/createanorganization/createorg.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/class_administration/createanorganization/org_teams.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/class_administration/createanorganization/studentlogin.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/class_administration/createanorganization/test-student-view.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/class_administration/editassignment.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/class_administration/editunit.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/class_administration/grading/anongrading.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/class_administration/grading/classroom.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/class_administration/grading/grading-template.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/class_administration/grading/set-template.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/class_administration/grading/template-example.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/class_administration/grading/templates.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/class_administration/indunitupdate.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/class_administration/modulesettings.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/class_administration/navigatingcodio/myclassroom.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/class_administration/orgbilling.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/class_administration/profilepic.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/class_administration/projectupdateunit.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/class_administration/stackupdate.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/class_administration/unit-settings-1.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/class_administration/unit-settings-2.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/class_administration/unit-settings-dd.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/class_administration/unit-settings-ddORIG.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/class_administration/updatedunits.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/class_administration/updateunit.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/class_administration/updateunitadhoc.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/class_administration/upgradecourse.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/class_administration/upgradecoursedialog.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/class_courses.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/class_create.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/class_dashboard.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/class_delete.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/class_export.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/class_exportlinks.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/class_grade.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/class_join.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/class_list.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/class_lti_export.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/class_projects.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/class_recent.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/class_releasegrades.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/class_setgrade.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/class_start.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/class_students.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/class_studentstab.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/class_view.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/class_viewcode.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/classcontacturl.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/classunitsettings.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/clone-settings-warning.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/clone-settings.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/code-folding.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/codeplayback/CodePlayback1.gif is excluded by !**/*.gif
  • source/_static/img/codeplayback/CodePlayback2.gif is excluded by !**/*.gif
  • source/_static/img/codesolution.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/codiofeedback.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/codioignore.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/codiomenu.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/color-preview.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/command-bar.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/commentcode.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/compiled-files.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/complexLayoutIcon.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/config.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/consent.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/console-create.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/console-createbutton.png is excluded by !**/*.png, !**/*.png
  • source/_static/img/console-find.png is excluded by !**/*.png, !**/*.png
  • source/img/CodioLibTags.png is excluded by !**/*.png, !**/*.png
  • source/img/CreateAssessment.png is excluded by !**/*.png, !**/*.png
  • source/img/EditAssessmsent.png is excluded by !**/*.png, !**/*.png
  • source/img/access-bower.png is excluded by !**/*.png, !**/*.png
  • source/img/account_password.png is excluded by !**/*.png, !**/*.png
  • source/img/account_settings.png is excluded by !**/*.png, !**/*.png
  • source/img/add-extension-button.png is excluded by !**/*.png, !**/*.png
  • source/img/add-extension-url.png is excluded by !**/*.png, !**/*.png
  • source/img/addFromLib.png is excluded by !**/*.png, !**/*.png
  • source/img/assessment.png is excluded by !**/*.png, !**/*.png
  • source/img/assign-module.png is excluded by !**/*.png, !**/*.png
  • source/img/assignment-batch-update-setting.png is excluded by !**/*.png, !**/*.png
  • source/img/authtoken.png is excluded by !**/*.png, !**/*.png
  • source/img/auto-transfer-total.png is excluded by !**/*.png, !**/*.png
  • source/img/book-permissions.png is excluded by !**/*.png, !**/*.png
  • source/img/book_id.png is excluded by !**/*.png, !**/*.png
  • source/img/book_publish.png is excluded by !**/*.png, !**/*.png
  • source/img/book_stack_modified.png is excluded by !**/*.png, !**/*.png
  • source/img/book_stack_newstack.png is excluded by !**/*.png, !**/*.png
  • source/img/book_stack_newversion.png is excluded by !**/*.png, !**/*.png
  • source/img/book_stack_notmodified.png is excluded by !**/*.png, !**/*.png
  • source/img/bookmapping.png is excluded by !**/*.png, !**/*.png
  • source/img/bookpages.png is excluded by !**/*.png, !**/*.png
  • source/img/booksettings.png is excluded by !**/*.png, !**/*.png
  • source/img/booksettingspage.png is excluded by !**/*.png, !**/*.png
  • source/img/bookshowallpages.png is excluded by !**/*.png, !**/*.png
  • source/img/bookupdate.png is excluded by !**/*.png, !**/*.png
  • source/img/bookupdate1.png is excluded by !**/*.png, !**/*.png
  • source/img/bookversion.png is excluded by !**/*.png, !**/*.png
  • source/img/bower-components-tree.png is excluded by !**/*.png, !**/*.png
  • source/img/bower-installable.png is excluded by !**/*.png, !**/*.png
  • source/img/bower-installed.png is excluded by !**/*.png, !**/*.png
  • source/img/bower-remove.png is excluded by !**/*.png, !**/*.png
  • source/img/bower-update.png is excluded by !**/*.png, !**/*.png
  • source/img/build.png is excluded by !**/*.png, !**/*.png
  • source/img/buildkeys.png is excluded by !**/*.png, !**/*.png
  • source/img/buildset2.png is excluded by !**/*.png, !**/*.png
  • source/img/buildsettings.png is excluded by !**/*.png, !**/*.png
  • source/img/bulk-setting-area.png is excluded by !**/*.png, !**/*.png
  • source/img/ca-annotations-file.png is excluded by !**/*.png, !**/*.png
  • source/img/ca-collapse-after.png is excluded by !**/*.png, !**/*.png
  • source/img/ca-collapse-before.png is excluded by !**/*.png, !**/*.png
  • source/img/ca-embed-ide.png is excluded by !**/*.png, !**/*.png
  • source/img/ca-explore.png is excluded by !**/*.png, !**/*.png
  • source/img/ca-files.png is excluded by !**/*.png, !**/*.png
  • source/img/ca-overview.png is excluded by !**/*.png, !**/*.png
  • source/img/ca-popup-window.png is excluded by !**/*.png, !**/*.png
  • source/img/ca-readme.png is excluded by !**/*.png, !**/*.png
  • source/img/ca-video.png is excluded by !**/*.png, !**/*.png
  • source/img/chromecookies.png is excluded by !**/*.png, !**/*.png
  • source/img/class-releasegrades.png is excluded by !**/*.png, !**/*.png
  • source/img/class_add_module.png is excluded by !**/*.png, !**/*.png
  • source/img/class_addstudents.png is excluded by !**/*.png, !**/*.png
  • source/img/class_addteachers.png is excluded by !**/*.png, !**/*.png
  • source/img/class_administration/addteachers/invitation.png is excluded by !**/*.png, !**/*.png
  • source/img/class_administration/createanorganization/classteststudents.png is excluded by !**/*.png, !**/*.png
  • source/img/class_administration/createanorganization/completeform.png is excluded by !**/*.png, !**/*.png
  • source/img/class_administration/createanorganization/createorg.png is excluded by !**/*.png, !**/*.png
  • source/img/class_administration/createanorganization/org_teams.png is excluded by !**/*.png, !**/*.png
  • source/img/class_administration/createanorganization/studentlogin.png is excluded by !**/*.png, !**/*.png
  • source/img/class_administration/createanorganization/test-student-view.png is excluded by !**/*.png, !**/*.png
  • source/img/class_administration/editassignment.png is excluded by !**/*.png, !**/*.png
  • source/img/class_administration/editunit.png is excluded by !**/*.png, !**/*.png
  • source/img/class_administration/grading/classroom.png is excluded by !**/*.png, !**/*.png
  • source/img/class_administration/grading/set-template.png is excluded by !**/*.png, !**/*.png
  • source/img/class_administration/indunitupdate.png is excluded by !**/*.png, !**/*.png
  • source/img/class_administration/navigatingcodio/myclassroom.png is excluded by !**/*.png, !**/*.png
  • source/img/class_administration/profilepic.png is excluded by !**/*.png, !**/*.png
  • source/img/class_administration/projectupdateunit.png is excluded by !**/*.png, !**/*.png
  • source/img/class_administration/stackupdate.png is excluded by !**/*.png, !**/*.png
  • source/img/class_administration/unit-settings-1.png is excluded by !**/*.png, !**/*.png
  • source/img/class_administration/unit-settings-2.png is excluded by !**/*.png, !**/*.png
  • source/img/class_administration/unit-settings-dd.png is excluded by !**/*.png, !**/*.png
  • source/img/class_administration/unit-settings-ddORIG.png is excluded by !**/*.png, !**/*.png
  • source/img/class_administration/updatedunits.png is excluded by !**/*.png, !**/*.png
  • source/img/class_administration/updateunit.png is excluded by !**/*.png, !**/*.png
  • source/img/class_administration/updateunitadhoc.png is excluded by !**/*.png, !**/*.png
  • source/img/class_administration/upgradecourse.png is excluded by !**/*.png, !**/*.png
  • source/img/class_administration/upgradecoursedialog.png is excluded by !**/*.png, !**/*.png
  • source/img/class_courses.png is excluded by !**/*.png, !**/*.png
  • source/img/class_create.png is excluded by !**/*.png, !**/*.png
  • source/img/class_dashboard.png is excluded by !**/*.png, !**/*.png
  • source/img/class_grade.png is excluded by !**/*.png, !**/*.png
  • source/img/class_join.png is excluded by !**/*.png, !**/*.png
  • source/img/class_list.png is excluded by !**/*.png, !**/*.png
  • source/img/class_projects.png is excluded by !**/*.png, !**/*.png
  • source/img/class_recent.png is excluded by !**/*.png, !**/*.png
  • source/img/class_releasegrades.png is excluded by !**/*.png, !**/*.png
  • source/img/class_setgrade.png is excluded by !**/*.png, !**/*.png
  • source/img/class_start.png is excluded by !**/*.png, !**/*.png
  • source/img/class_students.png is excluded by !**/*.png, !**/*.png
  • source/img/class_studentstab.png is excluded by !**/*.png, !**/*.png
  • source/img/class_view.png is excluded by !**/*.png, !**/*.png
  • source/img/class_viewcode.png is excluded by !**/*.png, !**/*.png
  • source/img/classunitsettings.png is excluded by !**/*.png, !**/*.png
  • source/img/clone-settings-warning.png is excluded by !**/*.png, !**/*.png
  • source/img/clone-settings.png is excluded by !**/*.png, !**/*.png
  • source/img/coach-extensions-repo.png is excluded by !**/*.png, !**/*.png
  • source/img/coach-publish-release.png is excluded by !**/*.png, !**/*.png
  • source/img/coach-release-repo.png is excluded by !**/*.png, !**/*.png
  • source/img/code-folding.png is excluded by !**/*.png, !**/*.png
  • source/img/codesolution.png is excluded by !**/*.png, !**/*.png
  • source/img/codiomenu.png is excluded by !**/*.png, !**/*.png
  • source/img/compiled-files.png is excluded by !**/*.png, !**/*.png
  • source/img/complexLayoutIcon.png is excluded by !**/*.png, !**/*.png
  • source/img/config.png is excluded by !**/*.png, !**/*.png
  • source/img/console-create.png is excluded by !**/*.png, !**/*.png
  • source/img/console-createbutton.png is excluded by !**/*.png, !**/*.png
  • source/img/console-find.png is excluded by !**/*.png, !**/*.png
  • source/img/console-screen-desc.png is excluded by !**/*.png, !**/*.png
  • source/img/console-screen.png is excluded by !**/*.png, !**/*.png
  • source/img/console-screen1.png is excluded by !**/*.png, !**/*.png
  • source/img/contactus.png is excluded by !**/*.png, !**/*.png
  • source/img/course_create.png is excluded by !**/*.png, !**/*.png
  • source/img/course_edit.png is excluded by !**/*.png, !**/*.png
  • source/img/coursepermissions.png is excluded by !**/*.png, !**/*.png
  • source/img/courses.png is excluded by !**/*.png, !**/*.png
  • source/img/courses_recommend.png is excluded by !**/*.png, !**/*.png
  • source/img/courses_small.png is excluded by !**/*.png, !**/*.png
  • source/img/coursestab.png is excluded by !**/*.png, !**/*.png
  • source/img/cp-basic.png is excluded by !**/*.png, !**/*.png
  • source/img/cp-custom.png is excluded by !**/*.png, !**/*.png
  • source/img/cp-filetree.png is excluded by !**/*.png, !**/*.png
  • source/img/create-sftp.png is excluded by !**/*.png, !**/*.png
  • source/img/createorg.png is excluded by !**/*.png, !**/*.png
  • source/img/crosssitetracking.png is excluded by !**/*.png, !**/*.png
  • source/img/curriculum_mapped_content/autoassessments/autoexample.png is excluded by !**/*.png, !**/*.png
  • source/img/curriculum_mapped_content/courses.png is excluded by !**/*.png, !**/*.png
  • source/img/customisecodio.png is excluded by !**/*.png, !**/*.png
  • source/img/dashboard.png is excluded by !**/*.png, !**/*.png
  • source/img/deadlineadjust.png is excluded by !**/*.png, !**/*.png
  • source/img/deletetab.png is excluded by !**/*.png, !**/*.png
  • source/img/deleteunit.png is excluded by !**/*.png, !**/*.png
  • source/img/deploy-basepath.png is excluded by !**/*.png, !**/*.png
  • source/img/deploy-button.png is excluded by !**/*.png, !**/*.png
  • source/img/deploy-deploy.png is excluded by !**/*.png, !**/*.png
  • source/img/deploy-details.png is excluded by !**/*.png, !**/*.png
  • source/img/deploy-ftp.png is excluded by !**/*.png, !**/*.png
  • source/img/deploy-history.png is excluded by !**/*.png, !**/*.png
  • source/img/deploy-menu.png is excluded by !**/*.png, !**/*.png
  • source/img/deploy-nj.png is excluded by !**/*.png, !**/*.png
  • source/img/deploy-rsync.png is excluded by !**/*.png, !**/*.png
  • source/img/deploy-sftp.png is excluded by !**/*.png, !**/*.png
  • source/img/deploy-specific.png is excluded by !**/*.png, !**/*.png
  • source/img/descriptiontext.png is excluded by !**/*.png, !**/*.png
  • source/img/disable_enable_module.png is excluded by !**/*.png, !**/*.png
  • source/img/docmenu.png is excluded by !**/*.png, !**/*.png
  • source/img/dot-icon-16x16.png is excluded by !**/*.png, !**/*.png
  • source/img/doubleTags2.png is excluded by !**/*.png, !**/*.png
  • source/img/download.png is excluded by !**/*.png, !**/*.png
  • source/img/downloadcsv_module.png is excluded by !**/*.png, !**/*.png
  • source/img/downloadcsv_unit.png is excluded by !**/*.png, !**/*.png
  • source/img/dyslexic.png is excluded by !**/*.png, !**/*.png
  • source/img/editsettings.png is excluded by !**/*.png, !**/*.png
  • source/img/edu.png is excluded by !**/*.png, !**/*.png
  • source/img/exsistinguserowner.png is excluded by !**/*.png, !**/*.png
  • source/img/firefoxcookies.png is excluded by !**/*.png, !**/*.png
  • source/img/flodesolution.png is excluded by !**/*.png, !**/*.png
📒 Files selected for processing (7)
  • .coderabbit.yaml (1 hunks)
  • .codio (1 hunks)
  • .github/workflows/deploy.yaml (1 hunks)
  • Makefile (1 hunks)
  • README.md (2 hunks)
  • algolia-config.json (1 hunks)
  • find_unused_images.py (1 hunks)
🧰 Additional context used
🪛 Ruff (0.14.1)
find_unused_images.py

8-8: Shebang is present but file is not executable

(EXE001)


8-8: Shebang should be at the beginning of the file

(EXE005)


46-46: Do not catch blind exception: Exception

(BLE001)


68-68: Consider moving this statement to an else block

(TRY300)


73-73: Boolean default positional argument in function definition

(FBT002)


93-93: Unnecessary list() call around sorted()

Remove unnecessary list() call

(C413)


119-119: Consider moving this statement to an else block

(TRY300)


139-139: Consider moving this statement to an else block

(TRY300)


146-146: Boolean default positional argument in function definition

(FBT002)


176-176: Unnecessary list() call around sorted()

Remove unnecessary list() call

(C413)


189-189: Boolean default positional argument in function definition

(FBT002)


203-203: Do not catch blind exception: Exception

(BLE001)

🔇 Additional comments (3)
.coderabbit.yaml (1)

9-9: Profile change looks good

Switching reviews.profile to "assertive" is valid per schema and consistent with stated tone goals. No further action.

.codio (1)

6-7: Codio commands align with Makefile TYPE

New menu entries map correctly to TYPE=instructor/student builds.

find_unused_images.py (1)

21-23: Consider including SVGs

If logos/icons are in SVG, add ".svg" back to IMAGE_EXTS to avoid false “unused” reports.

@jairovelasquez jairovelasquez enabled auto-merge (squash) October 22, 2025 18:29
@jairovelasquez jairovelasquez merged commit 9aeb774 into master Oct 22, 2025
1 check passed
@jairovelasquez jairovelasquez deleted the storage-and-fixes branch October 22, 2025 18:29
@coderabbitai coderabbitai bot mentioned this pull request Oct 27, 2025
@coderabbitai coderabbitai bot mentioned this pull request Nov 18, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants