All notable changes to this project will be documented in this file.
- Fixed duplicate javascript included on page #1050).
- Updated rails from 5.2.3 to 5.2.4.4 #1050),#1051).
- Updated puma from 3.12.2 to 3.12.6 #1050).
- Updated administrate from 0.10.0 to 0.14.0 #1050).
- Updated json from 2.2.0 to 2.3.1 #1050).
- Replaced deprecated sass-rails with sassc-rails #1050).
- Updated foundation-rails from 6.3.0 to 6.5.3 #1050).
- Updated sprockets from 3.7.2 to 4.0.2 and removed sprockets-es6 #1050).
- Updated puma from 3.12.6 to 4.3.5 #1050).
- Removed rails_stdout_logging gem #1050).
- Remove the codeclimate pipeline and split out a bundle audit pipeline. (#1040).
- Clean up gemfile and remove extraneous gems (#1041).
- Update language on the Terms of Service page (#1042).
- Fixed misconfigured rack-timeoutable gem in production environment (#1045).
- Fixed bug in SuitesOutsideSuiteSelectionQuery (#1048).
- Add foreign key contraints to schema and dependency handling for all associations (#406).
- Add blank template suite import file (#706).
- Add 'About Us' page (#591).
- Update feature specs to use navigation ([#399] (https://gitlab.com/yale-sdmp/vesta/issues/399)).
- Add a suite decorator ([#581] (https://gitlab.com/yale-sdmp/vesta/issues/581)).
- Add ability to reassign suite in the suite selection or results phase ([#969] (https://gitlab.com/yale-sdmp/vesta/issues/969)).
- Add masquerading to allow admins to impersonate other users (#147).
- Add information about pending group requests to user dashboard (#696).
- Add building abbreviations (#570).
- Assign Suites button still visible when no possible suites to assign (#976).
- [Admin Dashboard] Add spec for draws create (#1006).
- [Admin Dashboard] Add spec for draws index (#1003).
- [Admin Dashboard] Add spec for draws index, show, create, update, and destroy (#1014).
- [Admin Dashboard] Add spec for colleges index, show, create, update, and destroy (#1010).
- [Admin Dashboard] Add spec for draw_memberships index, show, create, update, and destroy (#1004).
- [Admin Dashboard] Add spec for building index, show, create, update, and destroy (#1012).
- [Admin Dashboard] Add spec for memberships index, show, create, update, and destroy (#1008).
- [Admin Dashboard] Add spec for lottery assignments index, show, create, update, destroy (#1016).
- [Admin Dashboard] Add spec for clips index, show, create, update, and destroy (#1018).
- [Admin Dashboard] Test and fix Room, add RoomAssignment (#1015).
- [Admin Dashboard] Add spec for suite index, show, create, update, and destroy; repaired create and update (#1024).
- [Admin Dashboard] Add spec for user index, show, create, update, and destroy; repaired create and update (#1029).
- [Admin Dashboard] Add spec for group index, show, create, update, and destroy; repaired create and update (#1031).
- [Admin Dashboard] Test RoomAssignment (#1032).
- Change form cancel operation to standardize redirects to page referrer (#979).
- Sort groups in results and suite selection tables by lottery number (#968).
- Create method for lock_and_email (#945).
- Hide the login link in the nav when a user is not in a specific college (#909).
- Hide the draws dropdown if there are no draws (#884).
- Change login and logout to log in and log out when they are used as verbs (#955).
- Make oversubscription handling notify unlucky groups (#964).
- Create query object for users by intent and add a model method to Draw (#870).
- Create GroupWithoutSuites query object for GroupsReport (#627).
- Remove User non-essential display methods (#852).
- Change DrawPolicy#group_actions to remove policy check against draft stage of the draw (#722).
- Hide the Terms of Service link when user is not logged in (#978).
- Allow export of all group members' emails (no longer restricted to group leaders only) (888).
- Remove date restrictions on the intent_reminder? and lock_reminder? policies for draws (711).
- Update to ruby 2.6.5 (1025).
- Update to rails 5.2.3 (1026).
- Make sure view partials don't reference instance variables (288).
- Prevent browsing of archived data through the front-end (896).
- Scope users to the current college on the admin dashboard (#886).
- Fix AdminDashboard membership creation failure (#971).
- Fix NoMethodError thrown by AdminDashboard Draw#show (#965).
- Remove deprecated User name attribute (#962).
- Refactor code to remove unused CSS styles (#738).
- Add links to Vesta in the intent and group reminder emails. (#931).
- Fix NoMethodError caused when importing suites with no csv file chosen (#975).
- Fix broken Code Quality CI job (#908).
- Fix building names not appearing for students in suites but without rooms (#882).
- Fix bug that allowed a user to acccept their own request to join a group (#1021).
- Fix bug that caused error when creating a special group with no leader set (#981).
- Fix bugs in draw#students_with_intent (#1027, #1034).
- Make lottery notification e-mail more reliable (#939).
- Fix broken partial reference in Suites#show (#1036).
- Add SID to users (#669).
- Add new scope associations to room so that only non-archived data can be retrieved (#960).
- Add timeoutable to users and expiration date to cookies (#963).
- Update RoomAssignmentForm to only query for active draw memberships (#956).
- Fix race condition allowing for orphaned lottery assignments (#958).
- Allow leaders to be selected from the checklist of users and the dropdown in drawless group creation (#957).
- Prevent users from being able to enter room assignments twice (#950).
- Fix DrawlessGroupsController not correctly redirecting if the group has a draw (#920).
- Fix typos in e-mails (#953).
- Add DrawDuplicator service object to copy suite associations in draws without user data (#668).
- Allow editing of room numbers and room type on Suites#show page (#547).
- Add emails to csvs (#889).
- Add college name to the attribute types and show page attributes (#932).
- Update eager loading (#876).
- Fix inactive draw_memberships from interfering with special group formation (#941).
- Make widths of lottery forms consistent across multiple sizes (#890).
- Fix archived draws appearing to be assigned to suites (#902).
- Fix issue with duplicate available suites appearing (#952).
- Fix Suite.available scope to properly return only available suites (#948).
- Fix issue with passing dates to queued e-mails (#943).
- Fix selectable validation for suites to check for archived status in draws (#951).
- Rename group size locking to restrict size locking (811).
- Association of draw to draw_membership has been changed to have matching "active" states. (#928).
- Remove code from drawStudentsUpdate to manually add students by username (900).
- Remove stale records of DrawMemberships (933).
- Change viewing and indexing policies for Rooms and Buildings to restrict to admin and up (937).
- Fix issue with queued emails changing based on draw updates (935).
- Add custom Administrate field EnumField (#891).
- Fix the display of archived group links on the student dashboard (#907).
- Fix the drawless suites query (#901).
- Add the ability to assign lottery numbers by size (#848).
- Add admins to all bulk user emails (#887).
- Add ability to reset terms of service acceptance (#904).
- Scope the results view and export to only return active students in the current college (#885).
- Ensure that suites are properly treated as available after archiving old groups (#895).
- Fix the results by student view to only show active draw information (#897).
- Ensure that students not already in draws can be individually added to other draws (#898).
- Add a uniqueness constraint to draw_suites that prevents duplicate entries (#899).
- Add DrawMembership join model to allow users to have many-to-many relationship with draws (#813), (#814), (#815), (#816), (#817).
- Add ability to archive draws (#869).
- Add ability to archive active special groups (#871).
- Add the ability to archive all draws, special groups, and draw memberships all at once (#865).
- Modify front end for user experience updates (#875).
- Make draws bypass the intent phase if intent is locked (#881).
- Update Terms of Service text (#903).
- Update version number appropriately for the footer (#878)
- Make sure that intent locking in a draw blocks all intent-related emails (#542)
- Refactor model validations and callbacks (#202), (#828), (#829), (#830), (#831), (#832), (#833), (#834), (#835).
- Make SuiteImport more restful with create controller action (#423).
- Make DrawStudentAssignmentForm use a robust query attribute that dynamically chooses username or NetID (#772).
- Add room generation functionality to SuiteGenerator (#119).
- Updated multitenancy to allow for all users of all tenants to be held in one canonical table in one shared schema #802, #803, #804, #805, #806.
- Bulk user add instructions are now auth-dependent and no longer Yale specific (#157).
- Rename DrawReport#ungrouped_students to #ungrouped_students_by_intent (#793).
- Remove login workarounds from suite_selection_spec.rb (#122).
- Make sure all relevant links are behind authorization checks (#553).
- Fix Results#export eager loading (#794).
- Refactor policies with User#leader_of? (#417).
- Include building as a column in results views(#572).
- Restrict intent actions to draft or pre-lottery phases of a draw (740).
- Upgrade FactoryGirl to FactoryBot (676).
- Move emails from model callbacks to service objects (777).
- Memberships unlock when a user leaves a group (#872).
- Add flash to warn of oversubscription in suite update (#670).
- Add dependent: :destroy for group in draw model (#687).
- Remove db hit from DrawSuitesUpdate#find_suites_to_remove (#206).
- Prevent admins from assigning special groups to suites that are in a draw in suite selection(#548).
- Add LotteryAssignments and Clips to the superuser dashboard (#768).
- Add separate RoomAssignments model (#690).
- Add error messages to throw_abort (#792).
- Add a new DrawStudentsController to handle actions that involve student enrollment in draws (#620).
- Add group#cleanup! (#808).
- Add button to lock all groups on the admin view for a draw (#786)
- Allow users to edit their passwords (#131).
- Create separate memberships controller for invitations / requests / other membership actions (#333).
- Add ARIA labels and update forms(#747]).
- Add intent-selection phase to draws and change pre-lottery phase to group-formation phase (#818).
- Add graceful error handling when record is not found (#328).
- Adding ability to limit clipping to groups of the same size in a given draw (#844).
- Allow admins to send groups to the "back of the line" during suite selection (#771)
- Add SuiteAssignment join model to allow groups to have many-to-many relationship with suites (#861).
- Intent and locking deadline cannot be in the past (#600).
- Loading users no longer fails because of missing class year (#601).
- Remediate all tables for accessibility (#745).
- Unmerging suites no longer fails if the merged suite had the same name as one of its constituent suites (#790).
- Fix updating groups through the superuser dashboard (#775).
- Bulk user enrollment no longer fails silently when users exist and now flashes an error message (#156).
- Admins can add users to groups even if users have pending invitations (#773).
- Unhidden table caption is now hidden (#800).
- Fix NoMethodError in creating new user in admin dashboard (#810).
- Properly handle a failed result in IDRProfileQuerier (#689).
- Fix sorting students by draw in Administrate (#700).
- Fix simple_form buttons not being focused (821).
- Fix duplicate flash message in application(#603).
- Clarify error message when trying to add a student that doesn't exist to a draw (#490).
- Fix search error for user in admin dashboard(#846)
- Add a rake task that creates a shared schema in preparation for the multitenancy update (#806).
- Groups of locked sizes can now finalize (#788).
- Add more attributes to the results export (#789).
- Fix room assignment nullification when groups disband (#784).
- Add restrictions to make sure lottery assignments don't exist without groups (#780).
- Make converting groups to special groups more robust (#783, #781).
- Fix Draw#oversubscribed? to check only available suites #779).
- Add suite assignment to group export for draw (#785).
- Add notification e-mails for group invitations and requests (#767).
- Make UngroupedStudentsQuery sort by last name (#756).
- Add TOS Acceptance to administrate dashboard (#760).
- Rename home link in nav (#753).
- Prevent deadline information from showing after pre-lottery (#765).
- Allow admins to disband groups during selection regardless of suite availability (#769).
- Fix performance issues in certain views (#764).
- Allow admins to change intent in draft draws (#754).
- Prevent suite selection e-mails from going out if admin selection is being used (#752).
- Add confirmation to Activate Draw button (#757).
- Add Edit Students and Edit Suites buttons to the draw edit page (#758).
- Fix incorrect references to College.first (#741).
- Fix colleges#index not sorting alphabetically (#741).
- Fix accessibility issues with group creation and flash messages (#744).
- Fix heading hierarchies for better accessibility (#743).
- Fix broken e-mail due to deserialization error (#749).
- Make seed script create draws in three stages (#530
- Re-enable student suite selection (#502).
- Update to Ruby v2.4.1 (#607).
- Fix intent reminder emails so they only go to students who haven't set intent (#588).
- Rename :object key to :redirect_object in service object return hash (#176).
- Modularize service object class methods (#140).
- Update to Rails 5.1 (#608).
- Make suites and rooms nested resources (#431).
- DrawsController#lock_all_sizes should use Updater (#610)
- Remove students and suites from Draw strong params (#282).
- Extract Group#remove_members (#280)
- Refactor Draw reporting (#619)
- Fix error handling in service objects (#241)
- Make error handling more consistent across service objects (#602)
- Clean up ReminderQueuer (#625)
- Rename the 'full' status to 'closed' (#240)
- Move DrawSuite actions to DrawSuites controller (#199)
- Switch :try with :& (#217)
- Create query objects for queries in Draw Report (#626)
- Make Building > Suite > Room nesting shallow (#618)
- Modify user update functionality so admins cannot demote themselves (#529)
- Rename Group Finalizing to Group Locking (#352)
- Add new traits to group factories to allow for more flexible testing (#665).
- Allow new students to be added to group when increasing group size (#556)
- Refactor suite import to properly set room names and flag medical suites (#658).
- Add an "Allow Clipping" option for draws (#716).
- Add automatic room assignment for students assigned to singles (#703).
- Prevent changes to suites and students in a draw after the pre-lottery phase (#704).
- Force HTTPS in production environments.
- Automatically drop database schemas when destroying a college (#730).
- Remove duplication of email text and html files (#420).
- Prevent non-admins from seeing the suite import form (#576).
- Pass overrides properly in seed script generators (#616).
- Fixed definition inconsistencies in policy files (#216).
- Fix n+3 query in suites summary partial (#567).
- Fix intermittent test failure in lottery number removal (#532).
- Fix seed script to persist lottery numbers (#637).
- Fix typo in confirmation message (#630).
- Fix broken draw suites migration(#638).
- Fix user counts on pre-lottery draw dashboards (#628).
- Fix broken pathing in suite removal form (#632).
- Fix disband button not showing during suite selection (#640).
- Fix draw results not showing after finishing suite selection (#631).
- Correct housing sidebar counts (#629).
- Fix issues with seed script (#657).
- Update security vulnerability in YARD (#682).
- Fix searching for users in admin dashboard (#699).
- Fix config file to properly eager load files (#708).
- Fix 404 issue with font files (#720).
- Fix redirect on DrawSuite update failure (#710).
- Fix handling of students without accounts logging in via CAS (#717).
- Fix race condition in the testing suite (#732).
- Fix CORS issue with assets requested from root host (#734).
- Humanize intents for display on intent form and user page (#735).
- Prevent student intent from being modified if they are in a group (#718).
- Fix user import when not using CAS (#736).
- Fix 'Begin Locking Process for Group' button policy (#728).
- Fix minor front-end issues (#707).
- Make adding users more flexible for non-CAS uses (#737).
- Fix mislabeled accordions on draw#show (#739).
- Add suite unmerging (#257).
- Add superuser role (#642).
- Add superuser dashboard (#604).
- Allow admins to automatically resolve oversubscription (#195, #697, #698).
- Add multi-tenancy (#641).
- Add securely random automatic lottery number generation (#361, #698).
- Add an e-mail to all on-campus students notifying them of their lottery number (#702).
- Add a terms of service page for new users (#719).
- Add Rake tasks for college setup and user management (#726).
- Allow admins to specify student roles when importing (#731).
- Add CSV export functionality for intents and lottery numbers (#701).
- Add CSV import functionality for intents (#729).
- Add version number to footer (#510).
- Fix broken group confirmation e-mails (#555).
- Fix 404 page title (#579).
- Permit students to view the draw page during suite selection (#584).
- Allow admins to do group CRUD regardless of draw state (#585).
- Humanize the intent report content (#597).
- Add intent counts to the intent report (#539).
- Add building names to suite labels where appropriate (#561).
- Allow duplicate room numbers in different suites (#261).
- Allow the draw page to be viewed during the lottery (#544).
- Permit reps to view the draw page during suite selection (#545).
- Allow reps to view the group report in all draw phases. (#546).
- Add HTTP --> HTTPS redirect for all traffic when deploying to AWS Elastic Beanstalk (#535).
- Prevent group disbanding during suite selection when there are still suites left (#563).
- Fix nav bar for special group members (#474).
- Ensure that all group reports display correctly (#487).
- Ensure that NextGroupsQuery ignores groups with no lottery number set (#504).
- Create secondary draws to handle ungrouped students after suite selection (#162).
- Allow reps to handle oversubscription and lock sizes (#496).
- Allow students to easily navigate to the draw index (#519).
- Ensure that unlocking a group removes the finalizing status (#527).
- Improve display of ungrouped and undeclared users on draw page (#531).
- Allow group lottery number removal (#486).
- Remove accidental ERB closing tags from joined group e-mail (#520).
- Remove user action buttons from the draw student summary (#489).
- Allow reps to view the draw intent report (#495).
- Remove validation on the number of beds being greater or equal to the number of students from draw activation (#494).
- Add several tweaks / improvements to the student experience (#207).
- Destroy pending memberships on invitation and request acceptance (#513).
- Downgrade Ruby to v2.3.1 (#506).
- Prevent students from performing suite selection (#501).
- Downgrade Ruby to v2.3.3 (#493).
Initial Release