Congratulations on the big release!

On Sun, Aug 25, 2019 at 4:15 AM Jessica B. Hamrick <
[email protected]> wrote:

> Dear all,
>
> I am delighted to announce that after far too long of a delay (my fault!),
> nbgrader has a new major release! Huge thanks to everybody who made this
> happen, especially the participants of the Edinburgh Hackathon in May, who
> contributed most of the major new features!
>
> *Important*: Users updating from 0.5.x to 0.6.0 should be aware that they
> will need to do the following (please make sure to back up your files
> before doing so, just in case anything goes wrong!):
>
> * Update their nbgrader database using ``nbgrader db upgrade``.
> * Update the metadata in their assignments using ``nbgrader update``.
> * Reinstall the nbgrader extensions (see :doc:`/user_guide/installation`).
>
> Please see below for the release notes.
>
> Cheers,
> Jess
>
> nbgrader version 0.6.0 includes over 100 PRs and 60 issues. This includes
> many bug fixes, various enhancements, and improved docs. The major new
> features include:
>
> - Better support for multiple classes with JupyterHub. In particular, a
> new "Course List" extension has been added which provides instructors
> access to separate formgrader instances for all the classes they can
> manage. Additionally, JupyterHub authentication is used to control which
> students have access to which assignments.
> - Better LMS integration (for example, adding a ``lms_user_id`` column in
> the ``Student`` table of the database).
> - Better support for feedback. In particular, there is now the ability to
> generate and return feedback to students through nbgrader with the
> ``generate_feedback`` and ``release_feedback`` commands, and the ability
> for students to fetch feedback with the ``fetch_feedback`` command. This
> functionality is also available through the formgrader and Assignment List
> extensions.
> - Instructions for how to do grading inside a Docker container, for
> increased protection against malicious code submitted by students.
> - A new type of nbgrader cell called a "task" cell which supports more
> open-ended solutions which may span multiple cells.
>
> Please also note that some of the nbgrader commands have been renamed, for
> consistency with the new feedback commands:
>
> * ``nbgrader assign`` is now ``nbgrader generate_assignment``
> * ``nbgrader release`` is now ``nbgrader release_assignment``
> * ``nbgrader fetch`` is now ``nbgrader fetch_assignment``
>
> The full list of PRs is:
>
> - PR #1191: Allow access to formgrader when not using JuptyerHub auth
> - PR #1190: Add JupyterHub demos
> - PR #1186: Remove student_id and change root to cache, permission check
> to only execute
> - PR #1184: Move the fetch feedback API from formgrader to assignment_list
> - PR #1183: Feedback: update fetch_feedback command line help
> - PR #1180: Fix versions of pytest and nbconvert
> - PR #1179: Add CourseDir.student_id_exclude option to exclude students
> - PR #1169: Fix minor typo in js extension helper text
> - PR #1164: assignment_dir: Add into several missing places
> - PR #1152: Rename 'nbgrader fetch' to 'nbgrader fetch_assignment'
> - PR #1151: Rename 'nbgrader release' to 'nbgrader release_assignment'
> - PR #1147: Add test to ensure that db upgrade succeeds before running
> assign
> - PR #1145: Rename nbgrader feedback to nbgrader generate_feedback
> - PR #1140: A few more updates to the docs for multiple classes
> - PR #1139: Additional docs sanitization
> - PR #1138: Ensure that cell type changes result in valid nbgrader metadata
> - PR #1137: Rename "nbgrader assign" to "nbgrader generate_assignment"
> - PR #1135: section on grading in docker container
> - PR #1131: Better support for multiple classes
> - PR #1127: Better documentation of nbgrader_config.py
> - PR #1126: Remove the third party resources page
> - PR #1125: Check that the course directory is a subdirectory of the
> notebook dir
> - PR #1124: Only run nbextensions tests on oldest and newest versions of
> python
> - PR #1123: Ensure course directory root path has no trailing slashes
> - PR #1122: Fix incorrect usage of Exchange.course_id
> - PR #1121: Fix logfile
> - PR #1120: Integrate feedback distribution within nbgrader
> - PR #1119: added a sanatizing step to the doc creation.
> - PR #1118: Integrate course_id into the api and apps
> - PR #1116: Autograde & Assign: create missing students/assignments by
> default
> - PR #1115: Fix typo in tmp filename prefix in conftest.py
> - PR #1114: Documentation for multiple classes
> - PR #1113: Add a course list extension that shows all courses an
> instructor can manage
> - PR #1112: Locate all configurable classes for generate_config subcommand
> - PR #1111: Optional consistency check between owner and student_id upon
> collect
> - PR #1110: Systematic use of utils.get_username instead of $USER
> - PR #1109: naming the temporary directories in tests
> - PR #1108: Extended support for filtering files copied in the exchange
> - PR #1106: Remove testing of python 3.4
> - PR #1105: Remove extra keys in nbgrader metadata and better schema
> mismatch errors
> - PR #1102: Only build docs with one version of python
> - PR #1101: Add jupyter education book to third party resources
> - PR #1100: Run test in the `python` group in parallel using pytest-xdist
> - PR #1099: Add course table, add course_id column to assignment
> - PR #1098: Customizable student ID in `nbgrader submit`
> - PR #1094: Update license
> - PR #1093: Add authentication plugin support
> - PR #1090: partial credit for autograde test cells
> - PR #1088: Remove version requirement from urllib3
> - PR #1084: Fix miscellaneous bugs
> - PR #1080: compatibility with SQLAlchemy 1.3+
> - PR #1075: Give ExecutePreprocessor the Traitlets config during validation
> - PR #1071: student and assignment selection in exportapp implemented
> - PR #1064: Validate all cells
> - PR #1061: Set env var NBGRADER_VALIDATING when validating
> - PR #1054: Raise error when executed task fails
> - PR #1053: Remove changes to sitecustomize.py and dependency on invoke
> - PR #1051: Remove spellcheck and enchant dependency
> - PR #1040: Restrict access for students to different courses
> - PR #1036: Add a general lms user id column to the student table
> - PR #1032: fix: return info of reper function is wrong in api.py
> - PR #1029: Documentation fix to add info re: timeout errors.
> - PR #1028: Some improvements to the contributor list script
> - PR #1026: Mark test_same_part_navigation as flaky
> - PR #1025: Fixing failing tests, take 2
> - PR #1024: Fix deprecation warning with timezones
> - PR #1023: Ensure nbgrader list still works with random strings
> - PR #1021: Fix tests, all of which are failing :(
> - PR #1019: Make nbgrader quickstart work with existing directories
> - PR #1018: Add missing close > for url to display correctly
> - PR #1017: Fix all redirection
> - PR #1014: a mistake in comment
> - PR #1005: Add random string to submission filenames for better hiding
> - PR #1002: Change to notebook directory when validating (repeat of #880)
> - PR #1001: Allow setting a different assignment dir for students than the
> root notebook directory
> - PR #1000: Allow instructors to share files via shared group id
> - PR #994: Add link to jupyter in education map
> - PR #991: Fix broken documentation
> - PR #990: Include section on mocking (autograding resources)
> - PR #989: Update developer installation instructions
> - PR #984: Adding global graded tasks
> - PR #975: Fix the link to the activity magic
> - PR #972: Use mathjax macro for formgrader
> - PR #967: Added note in FAQ about changing cell ids
> - PR #964: Added "if __name__ == "__main__":"
> - PR #963: Add third party resources to the documentation
> - PR #962: Add grant_extension method to the gradebook
> - PR #959: Allow apps to use -f and --force
> - PR #958: Do some amount of fuzzy problem set name matching
> - PR #957: Remove underscores from task names
> - PR #955: Ignore .pytest_cache in .gitignore
> - PR #954: Fix bug in find_all_files that doesn't properly ignore
> directories
> - PR #953: update log.warn (deprecated) to log.warning
> - PR #948: Move config file generation to a separate app
> - PR #947: Exclude certain assignment files from being overwritten during
> autograding
> - PR #946: Fix failing tests
> - PR #937: Strip whitespace from assignment, student, and course ids
> - PR #936: Switch from PhamtomJS to Firefox
> - PR #934: Skip filtering notebooks when ExchangeSubmit.strict == True
> - PR #933: Fix failing tests
> - PR #932: Prevent assignments from being created with invalid names
> - PR #911: Update installation.rst
> - PR #909: Friendlier error messages when encountering a schema mismatch
> - PR #908: Better validation errors when cell type changes
> - PR #906: Resolves issues with UTF-8
> - PR #905: Update changelog and rebuild docs from 0.5.4
> - PR #900: Improve issue template to explain logic behind filling it out
> - PR #899: Help for csv import
> - PR #897: Give more details on how to use formgrader and jupyterhub
> - PR #892: Format code blocks in installation instructions
> - PR #886: Add nbval for non-Windows tests/CI
> - PR #877: Create issue_template.md
> - PR #871: Fix NbGraderAPI.timezone handling
> - PR #870: added java, matlab, and octave codestubs to clearsolutions.py
> - PR #853: Update changelog from 0.5.x releases
> - PR #838: Fetch multiple assignments in one command
>
> Huge thanks to the following users who submitted PRs or reported issues
> that were merged or fixed for the 0.6.0 release:
>
> - 00Kai0
> - Alexanderallenbrown
> - aliandra
> - amellinger
> - BertR
> - Carreau
> - cdvv7788
> - Ciemaar
> - consideRatio
> - damianavila
> - danielmaitre
> - DavidNemeskey
> - davidpwilliamson
> - davis68
> - ddbourgin
> - ddland
> - dechristo
> - destitutus
> - dsblank
> - edouardtheron
> - fenwickipedia
> - fm75
> - FranLucchini
> - gertingold
> - hcastilho
> - JanBobolz
> - jedbrown
> - jhamrick
> - jnak12
> - kcranston
> - kthyng
> - lgpage
> - liffiton
> - mikezawitkowski
> - mozebdi
> - mpacer
> - nabriis
> - nthiery
> - perllaghu
> - QuantumEntangledAndy
> - rgerkin
> - rkdarst
> - Ruin0x11
> - rwest
> - ryanlovett
> - samhinshaw
> - Sefriol
> - sigurdurb
> - slel
> - soldis
> - swarnava
> - takluyver
> - thotypous
> - vahtras
> - VETURISRIRAM
> - vidartf
> - willingc
> - yangkky
> - zonca
>
> --
> You received this message because you are subscribed to the Google Groups
> "Project Jupyter" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected].
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/jupyter/CALUXcByaynEm0E_5MOrQMJyqy2QamAbRGse%2B0npMX%3Dm%3DFtaPvQ%40mail.gmail.com
> <https://groups.google.com/d/msgid/jupyter/CALUXcByaynEm0E_5MOrQMJyqy2QamAbRGse%2B0npMX%3Dm%3DFtaPvQ%40mail.gmail.com?utm_medium=email&utm_source=footer>
> .
>

-- 
You received this message because you are subscribed to the Google Groups 
"Project Jupyter" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/jupyter/CAJF6vz6q90Spi%2B3%3DxnWRikpgB0xi5hEj1sPuJL4E8BoDFrmcvQ%40mail.gmail.com.

Reply via email to