All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
- Improved test coverage.
- Add Contact note, saythanks.io badge to README.
- Add currently unimplemented select_student/take_student_selection functions mirroring similar class selection functionality.
- Select class/student dialogues will now take exact name of class/student (as well as integer).
- Bugfixes
- Fix path for default_avatar.
- Fix cwd set in TestDataFolder.test_generate_data_path_defaults to draw from ROOT_DIR.
- Fix bug - essentially blank (eg '_') chart name caused infinite loop.
- Add '.png' to save filename, as it is not otherwise appended.
- Major refactor of chart display and saving code.
- Fixes major bugs where blank image would be saved, app would hang indefinitely.
- Chart image now saves to app_data. Saved image is then displayed using Tkinter with a 'Save as' button. When this is pressed, image window disappears and os 'save as' dialogue is spawned, user can save where and as they choose.
- Pillow is used to process the image, resize it for display.
- Refactor UI elements into dedicated functions and scripts in UI_menus.
- Add Pillow dependency, remove as yet unused numpy.
- Move converting int to str responsibility to UI functions taking input rather than doing so in function creating enumerated dict.
- Save chart dialogue.
- OS native 'save as' dialogue.
- Starting default folder to class folder in dionysus charts ie dionysus_charts/class_name.
- Default filename provided is sanitised user supplied chart name.
- User can save chart in user selected location with user supplied filename.
- Copy of image also saved in app_data/class_data/class_name/chart_data along with the chart data.
- User defined location for dionysus_charts folder.
- Prompt to set location on startup, default location in application parent directory if user declines to set location.
- Charts for each class will by default save in sub-folders for each class in dionysus_charts folder.
- OS native prompt for location selection.
- Add user settings, settings menu.
- User can configure, reconfigure dionysus_charts save folder location.
Changing location moves current folder and contents.
- User can configure, reconfigure dionysus_charts save folder location.
- Add "not implemented" message when "Edit a classlist" is selected from main menu.
- CI/Testing
- Travis CI
- Use Xenial distribution for Python 3.7 to build on Travis.
- circleci
- Add Python 3.7 testing via circleci.
- circleci badge added to README.
- Code Climate
- Connect dionysus to Code Climate
- Add Code Climate Maintainability badge to README.
- Codebeat
- Add Codebeat code quality checker.
- Add .codebeatignore to ignore test code from code quality metrics
- Codeship
- Add Codeship CI, badge to README.
- Travis CI
- Charts save to correct location in dionysus_charts rather than in app_home folder.
- Reorganise menus/UI scripts into folder UI_menus.
- Moved app initialisation code to initialise_app.py. - data_folder_check moved here.
- REGISTRY variable moved to definitions.py.
- CI/Testing
- Move testing/development dependencies to requirements_dev.txt.
- Coveralls
- Correct coverage calculation to only include project code (not testing or python env code).
- Travis CI
- Install testing dependencies from requirements_dev.txt rather than manually.
- Require passing tests Python 3.7 on Linux for successful build.
- app_data/image_data folder.
- Unnecessary as saving images to external folder, and to class_data/*/chart_data folder.
- class_registry.py.
- REGISTRY variable moved to definitions.py.
- OS native file select dialogue
- Add
select_file_dialogue
GUI using Tkinter. - Implement GUI dialogue for avatar selection. Resolves #79.
- Add this CHANGELOG.md.
- Add
- Avatar image file now copied to app-data folder.
- Add
file_copy
function. - Implement in
copy_avatar_to_app_data
func. Resolves #67.
- Add
- Fix bug student with no score passed to chart generator, causing error.
- Removed TODO file depreciated in favour of using issues, implementing a CHANGELOG.md.
- Add installation, version docs.
- Minor UI refinements
- Prompt to hit enter after entering student name.
- May enter 'N' instead of 'None' to skip avatar entry.
- Prompt to press enter after entering student scores.
- Docs, dev changes
- Exclude test code from Codacy analysis.
- Separate dev from prod dependency requirements, update CI config accordingly.
- TODO file - underutilised/un-updated
- Track TODOs/issues in github repo Issues, Projects, and other plans in the Wiki.
- Changes will be tracked in this CHANGELOG.md.
- Remove in next release.
Initial alpha release! Dionysus will take class lists, and successfully produce charts with the default avatar.
- setup.py is boilerplate and untested.
- User supplied avatar does not copy to app data folder and thus does not work in app.
- No indication of chart save location and not saving in desired/intended location in app_data/image_data/
- Need to cut and paste/type user supplied avatar location is too awkward.
- Preview/display of created chart does not reflect generated image accurately.