Skip to content

Releases: unipoll/api

v0.12.2

08 Dec 18:02
Compare
Choose a tag to compare

v0.12.2 (2023-12-08)

Chore

  • chore: Fixed mypy linting (42e6e4a)

Ci

  • ci: Fixed file name (66b2835)

  • ci: Changed artifact download path (15c2f41)

  • ci: Added trigger on changelog update (3197245)

  • ci: Updated changelog workflow (4c98e25)

  • ci: update (f8cd7b3)

  • ci: update (7d897f9)

  • ci: updated git installation step (04f002c)

  • ci: fixed needs (4f552fb)

  • ci: Changed test ci (acd9969)

  • ci: Changed workflow name (1c6a2e6)

  • ci: Added workflow to test (442fa8f)

  • ci: Update docs job (73f6975)

  • ci: app_id and private_key deprecated (3e3692d)

Fix

  • fix: Fixed get and create polls actions (b9bdc72)

Refactor

  • refactor: Resolved mypy issues caused by original_field (73aa72b)

  • refactor: Changed Poll document

Replace workspace Link with BackLink, removed redundant declarations (394a16e)

Style

  • style: Fixed flake8 errors (5390021)

  • style: Removed extra spaces (1531b13)

Unknown

  • Merge branch 'main' of github.com:unipoll/API (ff0de73)

v0.12.1

23 Oct 04:39
Compare
Choose a tag to compare

v0.12.1 (2023-10-23)

Fix

  • fix: Changed policy_holder_type for new policies

The policy_holder_type was set to "member", updated the method to use type of policy_holder via get_document_type() method (6f595ff)

Refactor

  • refactor: Changed argument type in ErrorWhileRemovingMember

Changed user: Account to member: Member (4301c36)

Unknown

  • Merge pull request #78 from unipoll/members

Patch Policies (a5100c0)

v0.12.0

23 Oct 03:45
Compare
Choose a tag to compare

v0.12.0 (2023-10-23)

Feature

  • feat: Added Member document (8199204)

Fix

  • fix: Removed PathOperations import (1cbfc93)

  • fix: Updated group request to get policies

Updated route get_group_policies to find member using dependency and use it for get_policies action (c16a981)

Refactor

  • refactor: Fixed mypy issues (d6ec5b8)

  • refactor: Added get_document_type classmethod

Added classmethod to Beanie Document get_document_type which returns Document type as a string (cfeebf7)

  • refactor: Updated to accommodate member update (73e4017)

  • refactor: Deleted obsolete path_operations file

This file included functions to read actions for building permissions and check permissions based on operation_id, both functions are not obsolete (095c103)

Style

  • style: flake8 (b08c103)

  • style: Updated comments

Changed account to member (d29213a)

Test

  • test: Updated tests to use new member document (8f7f352)

  • test: Updated workspace tests due to member update (af1dd25)

Unknown

  • Merge pull request #77 from unipoll/members

Updated Members (102afff)

  • Update README.md

Fixed link to developer wiki (a521dac)

v0.11.3

17 Oct 04:48
Compare
Choose a tag to compare

v0.11.3 (2023-10-17)

Ci

  • ci: Added job to trigger docs workflow

On release, the api release workflow will trigger workflow in the docs repository with event update_api_changelog (c68bd48)

Fix

  • fix: Fixed delete actions of Workspace/Group

Due to changed to policies, upon deletion of Workspace/Group the related Policies could not be fetched and therefore deleted. Using DBref, the updated actions find and delete policies without even fetching them first (764cd57)

  • fix: Updated policy as a workaround for #75

A workaround for issue #75, the parent_resource was converted to the Link type, which is manually populated using create_link() method. Since Beanie cannot/struggles to fetch links of multiple types, two new class methods were added: get_parent_resource() uses link reference to find and return parent document(Workspace/Group/Poll), and get_policy_holder() finds and returns document of policy holder(Account/Group). (7ac8180)

  • fix: Changed the default permission for new group

Replaced GROUP_BASIC_PERMISSIONS with WORKSPACE_BASIC_PERMISSIONS (ff0a65f)

Refactor

  • refactor: Fixed mypy issues (8cb2916)

  • refactor: Changed remove_policy method

Renamed remove_policy to remove_member_policy, and added new remove_policy method which takes policy as an argument (ddfe048)

Style

  • style: Fixed resource spelling (6ffa917)

Test

  • test: Styling

Provided query parameter using params argument instead of passing as a part of url string (d4f986c)

  • test: Fixed set_permission_test

Added account_id parameter when checking account permissions (b68a4b1)

Unknown

  • Merge pull request #76 from unipoll/development

Policies Patch (697406d)

  • Untrack .vscode (3885ec1)

  • Update README.md

Updated Postman Documentation link (9d17121)

  • Merge branch 'main' of github.com:unipoll/API (f60d80b)

v0.11.2

15 Oct 05:15
Compare
Choose a tag to compare

v0.11.2 (2023-10-15)

Fix

  • fix: Fixed routes to get/update policies

Updated Policy endpoints in Workspace and Group routes: Added account_id query parameter to GET resource/{resource_id}/policies, deleted GET resource/{resource_id}/policy, changed PUT resource/{resource_id}/policy to resource/{resource_id}/policies/{policy_id} and removed all the conditions inside (3404c17)

Test

  • test: Updated policies in workspace/group tests

Updated tests to accomodate workspace/group route changes to get/update policies (b65dc01)

Unknown

  • Merge pull request #74 from unipoll/development

Updated get/update policies routes (6a950e6)

v0.11.1

13 Oct 23:42
Compare
Choose a tag to compare

v0.11.1 (2023-10-13)

Ci

  • ci: Update postman.yaml

Changed vars.POSTMAN_API_ID to secrets.POSTMAN_API_ID (9c34ea9)

Fix

  • fix: Added comma to workspace permission list (166184d)

  • fix: Updated set policy routes

Added case when user does not provide account_id in update_policy request, with the else statement, the route will find current user's policy (f072769)

  • fix: Replace required permission for update_policy

Changed old permission set_policy to the new update_policies (edccfa9)

  • fix: updated get_policies_from_resource

check_permissions does not return anything but raises an exception in case user does not have the required permission, so the check must be made using try-catch block (c116990)

  • fix: Changed required permission

Changed required permissions from add_members to get_members (785b889)

  • fix: Resolved issue with not getting group

check_permissions raises UserNotAuthorized from ResourceExceptions, so even though the permission is checked inside workspace, it will not raise WorkspaceExceptions (97808c3)

  • fix: Resolved circular import (e5eb703)

Refactor

  • refactor: resolved mypy issues (762fa14)

  • refactor: Added permission check to actions

Added permission check to actions using new check_permission function (3b83508)

  • refactor: Updated dependencies functions

Removed permission check dependencies, added http wrapper for resource accessors (05db0f0)

  • refactor: Updated Permissions

Updated permission names, added utility function check_permissions which checks if user has required permissions based on provided resource and permission requirements, renamed check_permission to compare_permissions (4451376)

  • refactor: Removed permission check based on operation_id (5bd9b3b)

Style

Test

  • test: Change group test

The new policy action will return the users policy even if the user does not have permission to get_policies (d4d7980)

Unknown

  • Merge pull request #73 from unipoll/permissions

Overhaul of Permission System (5e0ed7d)

v0.11.0

12 Oct 01:46
Compare
Choose a tag to compare

v0.11.0 (2023-10-12)

Feature

  • feat: Added dependency to get policy by ID (0bfeb6d)

  • feat: Moved policy related actions to a separate file (5129fbe)

  • feat: Added new routes to get and create groups

Added new route to get list of groups, by default returns all groups which a user has permission to view, the endpoint also accepts query parameters to filter list of groups by name, workspace, or account (ff9aa02)

Fix

  • fix: Typing errors (9d9cc23)

  • fix: Resolved typing errors (9a852b3)

  • fix: Delete policies when group is deleted (a157480)

  • fix: Fixed groups not deleting (504b92f)

Refactor

  • refactor: Added request schema for new group route

Added GroupCreateRequest for new POST /groups endpoint that will replace workspace/{id}/groups (f74f844)

  • refactor: Add permission check to get_policy (924e462)

  • refactor: Changed imports (dd7ba5a)

  • refactor: Moved create poll action (2664b7a)

  • refactor: Changed Member Actions

Moved Members related actions to a separate module. The old routes use new actions to view, add, remove members from Group/Workspace (3bd5363)

  • refactor: Moved group actions

Moved actions to get list of groups and create new group to GroupActions (6fdd25e)

Style

Unknown

  • Merge pull request #72 from unipoll/actions_rework

Actions overhaull (b843563)

v0.10.0

07 Oct 06:07
Compare
Choose a tag to compare

v0.10.0 (2023-10-07)

Build

  • build: Updated Dockerfile to use new cli run command (ea53b88)

  • build: Cleanup (95c9d05)

  • build: Updated pydantic version to 2.4 (91a5a30)

Chore

  • chore: Added .vscode to ignore (8cbac9f)

  • chore: deleted postman folder (0803c81)

Ci

  • ci: Fixed api-path-to-file-name (d55ee22)

  • ci: Changed action (cfc742a)

  • ci: Fixed action input

Unexpected input 'swaggerPath', changed to 'openApiSpec' (d74fa8b)

  • ci: Upadated postman workflow (598d729)

  • ci: Added workflow to update docs repository

On any updated to api wiki pages it will trigger Update Sobmodule workflow in the docs repository which will update the api-docs submodule refference (41349d1)

Feature

  • feat: Added docker-compose file (ee2756e)

  • feat: Added new cli options

Added option to setup app and get openapi schema (c7bd5b8)

Fix

  • fix: Fixed admin default in config (51f81a1)

Refactor

  • refactor: Improved succes messages

Added full paths to the file for setup and get-openapi commands (2c29aac)

Style

  • style: fixed flake8 issues (41f5339)

Unknown

  • Merge pull request #71 from unipoll/development

Pydantic 2, better cli, docker-compose (44d071a)

  • Merge pull request #70 from unipoll/pydantic2-migration

build: Updated pydantic version to 2.4 (9c541ee)

v0.9.0

04 Oct 04:26
Compare
Choose a tag to compare

v0.9.0 (2023-10-04)

Build

  • build: Changed python base image to 3.11-alpine (0d44ba0)

Feature

  • feat: Added action to get poll list (114616f)

Fix

  • fix: Changed permissions field type

Changed permissions field type in Pollicy document from Permissions to int (9c44d6d)

Refactor

  • refactor: Changed main.py

Added src to pythonpath, change main function to use app.run() (8b76639)

  • refactor: Changed Dockerfile

Change build process to add unipoll-api entry point (210452d)

  • refactor: Changed Policy workspace link

Replace link to workspace with a backlink to parent resource that holds list of policies (581249f)

  • refactor: Added PolicyHolderNotFound exceptions

Added PolicyHolderNotFound exceptions instead of using generic resource exception (804ad38)

  • refactor: Moved permission checks

Moved permission checks to appropriate actions (fd2e23c)

  • refactor: Created Policy Actions file

Moved actions to get policy/policies to a separate file, the client can specify the resource from which the policy list is requested or the user whose policy is requested (6c89b10)

Style

  • style: Removed commented out code (48733e1)

  • style: Renamed mongo database

Renamed mongo database from app to unipoll-api (bcd412d)

Test

  • test: linting (46dd4e8)

  • test: Added back the testpaths field

Without testpaths, pytest would rund tests from dependency modules (03e71a8)

Unknown

  • Merge pull request #69 from unipoll/development

Development (2590487)

  • Merge pull request #68 from unipoll/permissions

Permissions (077d92d)

  • Merge pull request #67 from unipoll/development

Renamed database and updated Dockerfile (3513d97)

  • Merge branch 'main' into development (839dfdf)

v0.8.3

26 Sep 05:41
Compare
Choose a tag to compare

v0.8.3 (2023-09-26)

Ci

  • ci: Updated tag list for semantic-release (075c1ff)

Fix

  • fix: Removed unreachable return statement (e8df4da)

  • fix: Typing

Specified type of router and open_router for mypy (eb97462)

Refactor

  • refactor: Moved query parsing to actions

Query parameters are passed to actions functions as parameters, where the response model is built

Closes #65 (38fc8f0)

  • refactor: Updated imports (e47a414)

Style

  • style: renamed DOCUMENT_MODELS to documentModels (86a1269)

Unknown

  • Merge pull request #66 from unipoll/development

Minor updates, ci, style, and refactoring (6361e35)