Skip to content

AMY release v1.6.0

After about 12 days of delay and 7 days of postponing, we finally closed and released AMY v1.6.0. It packs a whole lot of changes and bugfixes!

New features

  • Piotr implemented a Data-Carpentry form for submitting requests for running self-organized workshops.
  • Piotr added a histogram into frequency of instructors teaching report page.
  • Aditya added "Contact all" button on the all persons page.
  • Aditya continued W. Trevor King's work on the Language model and now we can accurately track languages amongst multiple forms and related models (e.g. events and persons).
  • Aditya added a summary of tasks per role on person's details page.
  • Chris added an application form for individuals wanting to become instructors.
  • Piotr added Language support in additional forms (original PR was missing language support in some forms).
  • Big: Chris worked hard to bring GitHub authentication into AMY (with success!). There are some caveats, but we'll smoothen them out for the next release. This work included opening AMY to other users (a move we were afraid of), and tests for each and every test to ensure we got the permissions right.
  • In the same PR, Chris added an AutoUpdateProfileForm used by users (who can log in from GitHub) to self-populate their profiles.
  • Aditya defined sorting of tasks on the person's details page.

Bug fixes

  • Piotr fixed a bug that caused IntegrityError when people with similar tasks (task has a role, person, and an event; tasks for these people were the same except person was different) were being merged. IntegrityError means that a uniqueness constraint was violated (ie. after the merge there were two Task(role, personA, event), which is prohibited).
  • Chris fixed interpolation on some of our charts that looked like the data was swinging, while in reality it wasn't.
  • Aditya fixed default field values on the "All activities over time" page; now the fields have meaningful default values and the datetime inputs have a proper calendar widget.
  • Aditya reworked teaching frequency report to eliminate bug that duplicated numbers for people simultaneously marked as SWC and DC instructors.
  • Piotr fixed some corner cases in event validation (behavior for required or optional tags/metadata (see below)).
  • Piotr fixed a bug resulting in 500 Server error when accessing weblink to a non-existing Host.
  • Chris added one small migrations missing from the codebase.
  • Greg fixed a bug in API that prevented list from working on the generator objects for some renderers (CSV and Yaml).
  • Prerit Garg fixed a specific bug preventing saving a permissions form when person's email field is empty.
  • Chris fixed a TrainingRequest form that display additional fields (that weren't supposed to appear).


  • Chris refactored "tags" to "metadata"; tags as key-value pairs describing workshops' date, times, location, instructors and helpers. We changed the naming to "metadata" to not confuse with Tag model.
  • Chris sped up our tests by changing hashing algorithm to a slower one, which -- surprisingly -- is one of suggested test speedup suggestions by Django development team.