Skip to content

Commit

Permalink
Refactored CSV score/grade import/export into this repo
Browse files Browse the repository at this point in the history
  • Loading branch information
Dave St.Germain committed May 28, 2019
0 parents commit c5c914a
Show file tree
Hide file tree
Showing 66 changed files with 4,060 additions and 0 deletions.
19 changes: 19 additions & 0 deletions .annotation_safe_list.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
# This is a Code Annotations automatically-generated Django model safelist file.
# These models must be annotated as follows in order to be counted in the coverage report.
# See https://code-annotations.readthedocs.io/en/latest/safelist.html for more information.
#
# fake_app_1.FakeModelName:
# ".. no_pii::": "This model has no PII"
# fake_app_2.FakeModel2:
# ".. choice_annotation::": foo, bar, baz

auth.Group:
".. no_pii:": "This model has no PII"
auth.Permission:
".. no_pii:": "This model has no PII"
auth.User:
".. pii:": "Contains username, password, and email address, must be retired in the consumer of this app"
".. pii_types:" : username, email_address, password
".. pii_retirement:" : consumer_api
contenttypes.ContentType:
".. no_pii:": "This model has no PII"
10 changes: 10 additions & 0 deletions .coveragerc
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
[run]
branch = True
data_file = .coverage
source=bulk_grades
omit =
test_settings
*migrations*
*admin.py
*static*
*templates*
16 changes: 16 additions & 0 deletions .github/ISSUE_TEMPLATE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
* bulk-grades version:
* Django version:
* Python version:
* Operating System:

### Description

Describe what you were trying to get done.
Tell us what happened, what went wrong, and what you expected to happen.

### What I Did

```
Paste the command(s) you ran and the output.
If there was a crash, please include the traceback here.
```
39 changes: 39 additions & 0 deletions .github/PULL_REQUEST_TEMPLATE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
**Description:** Describe in a couple of sentences what this PR adds

**JIRA:** Link to JIRA ticket

**Dependencies:** dependencies on other outstanding PRs, issues, etc.

**Merge deadline:** List merge deadline (if any)

**Installation instructions:** List any non-trivial installation
instructions.

**Testing instructions:**

1. Open page A
2. Do thing B
3. Expect C to happen
4. If D happened instead - check failed.

**Reviewers:**
- [ ] tag reviewer
- [ ] tag reviewer

**Merge checklist:**
- [ ] All reviewers approved
- [ ] CI build is green
- [ ] Version bumped
- [ ] Changelog record added
- [ ] Documentation updated (not only docstrings)
- [ ] Commits are squashed

**Post merge:**
- [ ] Create a tag
- [ ] Check new version is pushed to PyPI after tag-triggered build is
finished.
- [ ] Delete working branch (if not needed anymore)

**Author concerns:** List any concerns about this PR - inelegant
solutions, hacks, quick-and-dirty implementations, concerns about
migrations, etc.
79 changes: 79 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,79 @@
*.py[cod]
__pycache__
.pytest_cache

# C extensions
*.so

# Packages
*.egg
*.egg-info
dist
build
eggs
parts
bin
var
sdist
develop-eggs
.installed.cfg
lib
lib64

# Installer logs
pip-log.txt

# Unit test / coverage reports
.cache/
.pytest_cache/
.coverage
.coverage.*
.tox
coverage.xml
htmlcov/

# PII annotation reports
pii_report

# Translations
*.mo

# IDEs and text editors
*~
*.swp
.idea/
.project
.pycharm_helpers/
.pydevproject

# The Silver Searcher
.agignore

# OS X artifacts
*.DS_Store

# Logging
log/
logs/
chromedriver.log
ghostdriver.log

# Complexity
output/*.html
output/*/index.html

# Sphinx
docs/_build
docs/modules.rst
docs/bulk_grades.rst
docs/bulk_grades.*.rst

# Private requirements
requirements/private.in
requirements/private.txt

# tox environment temporary artifacts
tests/__init__.py

# Development task artifacts
default.db
35 changes: 35 additions & 0 deletions .pii_annotations.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
source_path: ./
report_path: pii_report
safelist_path: .annotation_safe_list.yml
coverage_target: 100.0
annotations:
".. no_pii:":
"pii_group":
- ".. pii:":
- ".. pii_types:":
choices:
- id # Unique identifier for the user which is shared across systems
- name # Used for any part of the user’s name
- username
- password
- location # Used for any part of any type address or country stored
- phone_number # Used for phone or fax numbers
- email_address
- birth_date # Used for any part of a stored birth date
- ip # IP address
- external_service # Used for external service ids or links such as social media links or usernames, website links, etc.
- biography # Any type of free-form biography field
- gender
- sex
- image
- video
- other
- ".. pii_retirement:":
choices:
- retained # Intentionally kept for legal reasons
- local_api # An API exists in this repository for retiring this information
- consumer_api # The data's consumer must implement an API for retiring this information
- third_party # A third party API exists to retire this data
extensions:
python:
- py
49 changes: 49 additions & 0 deletions .travis.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
# Config file for automatic testing at travis-ci.org

language: python

python:
- 2.7
- 3.6

env:
- TOXENV=django18
- TOXENV=django111
- TOXENV=django20

matrix:
exclude:
- python: 2.7
env: TOXENV=django20
include:
- python: 3.6
env: TOXENV=quality
- python: 3.6
env: TOXENV=docs
- python: 3.6
env: TOXENV=pii_check

cache:
- pip

before_install:
- pip install --upgrade pip

install:
- pip install -r requirements/travis.txt

script:
- tox

after_success:
- codecov

# Set password via "travis encrypt --add deploy.password"; for details, see
# https://docs.travis-ci.com/user/deployment/pypi
deploy:
provider: pypi
user: edx
distributions: sdist bdist_wheel
on:
tags: true
condition: '$TOXENV = quality'
14 changes: 14 additions & 0 deletions .tx/config
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
[main]
host = https://www.transifex.com

[edx-platform.bulk-grades]
file_filter = bulk_grades/conf/locale/<lang>/LC_MESSAGES/django.po
source_file = bulk_grades/conf/locale/en/LC_MESSAGES/django.po
source_lang = en
type = PO

[edx-platform.bulk-grades-js]
file_filter = bulk_grades/conf/locale/<lang>/LC_MESSAGES/djangojs.po
source_file = bulk_grades/conf/locale/en/LC_MESSAGES/djangojs.po
source_lang = en
type = PO
25 changes: 25 additions & 0 deletions CHANGELOG.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
Change Log
----------

..
All enhancements and patches to bulk_grades will be documented
in this file. It adheres to the structure of http://keepachangelog.com/ ,
but in reStructuredText instead of Markdown (for ease of incorporation into
Sphinx documentation and the PyPI description).
This project adheres to Semantic Versioning (http://semver.org/).
.. There should always be an "Unreleased" section for changes pending release.
Unreleased
~~~~~~~~~~

*

[0.1.0] - 2019-05-24
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Added
_____

* First release on PyPI.
Loading

0 comments on commit c5c914a

Please sign in to comment.