Skip to main content

Computing score of a given student assignment

Project description

Score

PyPI version PyPI downloads Python CI codecov License GitHub repo size GitHub issues GitHub last commit

Compute the final score of an assignment based on the criteria.yml file.

This small package is an helper to sum the points of programming assignments.

Usage

Simply use score inside an assignment folder

$ score -v
Got 7 points + 2 points out of 10 points
4.5
$ score
4.5
$ score check criteria.yml
OK, schema version 2

You can use the porcelain command score json to get the detailed score report in JSON format:

$ score json [file]

Criteria file format

Criteria files now use the version 2 schema which is more explicit and easier to validate. The root object must contain a schema_version: 2 field and a criteria mapping. Each section can provide an optional description and nested criteria items. A leaf item uses descriptive keys such as description, awarded_points, and either max_points (regular points) or bonus_points (bonus points).

---
schema_version: 2
criteria:
  testing:
    description: Automated testing
    build:
      description: The program builds correctly
      awarded_points: -2
      max_points: -4
    unit:
      description: Unit test suite covers the critical paths
      awarded_points: 4
      max_points: 4
  code:
    description: Code quality
    implementation:
      description: Smart pointers are used correctly
      awarded_points: 4
      max_points: 4
    duplication:
      description: No repeated code
      awarded_points: -1
      max_points: -5
  bonus:
    description: Extra credit
    extension:
      description: Program goes beyond the scope of the assignment
      awarded_points: 2
      bonus_points: 3

Use score check to validate a criteria file and score update to migrate an older version 1 definition to the version 2 schema.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

studentscore-0.6.0.tar.gz (48.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

studentscore-0.6.0-py3-none-any.whl (13.7 kB view details)

Uploaded Python 3

File details

Details for the file studentscore-0.6.0.tar.gz.

File metadata

  • Download URL: studentscore-0.6.0.tar.gz
  • Upload date:
  • Size: 48.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for studentscore-0.6.0.tar.gz
Algorithm Hash digest
SHA256 7c77ec7ce54a8ef9ec1c62fd2ee2cf9ea4c7559d4538648f9b4694e02055ac1e
MD5 9be40f8d0f63d23c2a400ca9bf25da4e
BLAKE2b-256 8e38f57bf70b17c3cd87f9d5e438ddec0b045642254759d4b0da00765f114fc0

See more details on using hashes here.

Provenance

The following attestation bundles were made for studentscore-0.6.0.tar.gz:

Publisher: ci.yml on heig-tin-info/score

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file studentscore-0.6.0-py3-none-any.whl.

File metadata

  • Download URL: studentscore-0.6.0-py3-none-any.whl
  • Upload date:
  • Size: 13.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for studentscore-0.6.0-py3-none-any.whl
Algorithm Hash digest
SHA256 9f196b622a0810e91bd7bd1eaf5ae228eaa79117cff55c3e3833a0267bd566d2
MD5 3162d9ba4929788da1858bdf37dee2b4
BLAKE2b-256 51ea92c44bd0e153fb6900b29a041c65d464571c7b22b25761c99496961f6438

See more details on using hashes here.

Provenance

The following attestation bundles were made for studentscore-0.6.0-py3-none-any.whl:

Publisher: ci.yml on heig-tin-info/score

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page