version 0.60.3
30/05/2018
	- improved user authentication by using authentication filter for authorization code request (margaretha)
	- limited client authentication to client id checking in authorization code request (margaretha)
	- added user_id in the oauth2_access_token database table (margaretha)
	- implemented OAuth2Authentication provider for token context management (margaretha)
	- added parameter checking for authorization DAO (margaretha)
	- added controller tests using OAuth2 access token (margaretha)
	
version 0.60.2
03/05/2018
	- implemented OAuth2 client registration (margaretha)
	- implemented OAuth2 client authentication (margaretha)
	- changed virtual corpus search to retrieval (margaretha)
	- implemented public client deregistration task (margaretha)
	- added client registration and deregistration tests (margaretha)
	- implemented confidential client deregistration task (margaretha)
	- fixed storing client secret (margaretha)
	- implemented OAuth2 response handler (margaretha)
	- implemented OAuth2 request access token with client credentials grant (margaretha)
	- implemented OAuth2 request access token with resource owner password grant (margaretha)
	- implemented OAuth2 authorization code request (margaretha)
	- added OAuth2 error codes (margaretha)
	- added OAuth2 authorization, scope and access token tables for SQLite (margaretha)
	- implemented OAuth2 authorization, scope and access token DAO (margaretha)
	- implemented OAuth2 request access token with authorization code grant (margaretha)
	- added setting default scopes in the config file (margaretha)
	- fixed loading spring config multiple times in the test suite (margaretha)
	- added SQLite created_date trigger for access token (margaretha)  
	- added a join table for access token scopes (margaretha)
	- added access scopes handling (margaretha)
	- added tests about request token with authorization code (margaretha)
	
version 0.60.1
28/03/2018
	- added admin-related SQL codes (margaretha)
	- updated AdminDao (margaretha)
	- added optional username query parameter to group list controller (margaretha) 
	- fixed non hierarchical URI of kustvakt conf files (margaretha)
	- added delete group member triggers (margaretha)
	- added list user-group by username and status for system admin (margaretha)
	- added user-group status in user-group DTO (margaretha)
	- added check for hidden groups in user-group tests (margaretha)
	- added database trigger test on deleting members when deleting group (margaretha)
	- renamed VC type PREDEFINED to SYSTEM (margaretha)
	- added VC list controller for system admin (margaretha)
	- added VC controller tests with for system admin (margaretha) 
	- added hidden access removal when deleting published VC (margaretha)
	- added check for hidden groups in VC controller tests (margaretha)
	- added search user-group controller (margaretha)
	- removed createdBy from VirtualCorpusJson (margaretha)
	- moved member role setting from the invitation phase to the after-subscription phase (margaretha)
	- added member role removal after deleting members (margaretha)
	- added add and delete member role controllers (margaretha)
	
version 0.60
14/03/2018
	- set up mail settings using localhost port 25 (margaretha)
	- added mail template in kustvakt configuration (margaretha)
	- added mail settings to readme (margaretha)
	- disabled email notification for auto group (margaretha)
	- added metadata retrieval (diewald)
	- enabled custom implementation for email address retrieval (margaretha)
	- removed old policy and deprecated code (margaretha)
	- moved authentication related code to /full (margaretha)
	- added userRoles attribute to UserGroupDto. (margaretha)
	- fixed sqlite trigger (margaretha)
	- fixed member exist error message (margaretha)
	- fixed member invitation to join deleted group (margaretha)
	- added checking deleted group (margaretha)

version 0.59.10	
20/02/2018 
	- added sort VC by id (margaretha)
	- added test cases regarding VC sharing (margaretha)
	- implemented withdraw VC from publication (margaretha)
	- added Changes file (margaretha)
	- implemented add/invite users to group (margaretha)
	- implemented delete user-group and member tasks (margaretha)
	- added userMemberStatus in group lists (margaretha)
	- updated and added SQL test data (margaretha)
	- added user group related tests (margaretha)
	- implemented custom configuration for deleting user groups and members (margaretha)
	- updated library versions and java environment (margaretha)
	- added expiration time check for member invitation (margaretha)
	- moved .properties files (margaretha) 
	- merged changelog file to Changes (margaretha)
	- updated status codes and error messages to be more detailed (margaretha)
	- testing mail implementation using embedded jetty jndi (margaretha)
	- fixed collection rewrite regarding OR operation with other fields (margaretha)
	- implemented sending mail using spring injection and removed jetty jndi (margaretha)
	- fixed unrecognized application/json (margaretha)
	- fixed and updated velocity template (margaretha)
	
version 0.59.9 
19/01/2018
	- restructured basic authentication (margaretha)
	- fixed AuthenticationException to include authentication scheme (margaretha)
	- fixed rewrite redundancy in collection rewrite (margaretha)
	- fixed foundry rewrite for constituents (margaretha)
	- introduced authentication methods, schemes and tokens (margaretha)
	- implemented collection rewrite with multiple licenses (margaretha)
	- fixed foundry rewrite for korap span without wrap node (margaretha)
	- implemented list user group (margaretha)
	- implemented delete VC task (margaretha)
	- implemented create user-group, subscribe to user-groups, unsubscribe to user-groups tasks(margaretha)
	- fixed handling JSON mapping exception for missing enums (margaretha)
    - implemented list VC task (margaretha)
    - added KoralQuery in VC lists (margaretha)
	- implemented edit VC task (margaretha)
	- implemented publish VC task (margaretha)
    - implemented share VC task (margaretha)
    - implemented list only owned VC task (margaretha) 
    - implemented list VC access task (margaretha)
    - implemented search VC by id task (margaretha)
    - implemented delete VC access (margaretha)
    - implemented search for project VC (margaretha)
    - added search VC related tests (margaretha)
    - removed PredefinedUserGroup.ALL and related codes (margaretha)
    - implemented search for published VC (margaretha)
    
version 0.59.8 
21/09/2017
	- restructured statistics service (margaretha)
	- removed deprecated loader codes and tests (margaretha)
	- removed old Spring java configurations (margaretha)
	- implemented entity classes for the new database (margaretha)
	- added MySQL codes regarding VC and for testing (margaretha)
	- added dao methods regarding VC (margaretha)
	- added similar SQL codes (to MySQL) for sqlite (margaretha)
	- added dao methods regarding user groups (margaretha)
	- restructured web-service codes into controller and logic/business-service(margaretha)
	- implemented user role and privilege, and added tests (margaretha)
	- prepared test suite using new database (margaretha)
	- implemented UserGroupDao and tests (margaretha)
	- fixed missing exceptions in JsonUtils (margaretha)
	- restructured web filters and authentication codes (margaretha)
	- implemented create/store VC (margaretha)
	- fixed collection rewrite bug regarding availability with operation or (margaretha)    

version 0.59.7
13/10/2016
    - MOD: updated search to use new siglen (diewald)
    - MOD: fixed matchinfo retrieval in light service (diewald)

05/05/2015
    - ADD: rest test suite for user service (hanl)
    - MOD: setup parameter modification (hanl)
    - ADD: oauth2 client unique constraint (hanl)
