From 4749127e19241254b800798016ec40e24f7853e7 Mon Sep 17 00:00:00 2001 From: Utpal Sen Date: Wed, 27 May 2026 21:53:24 +0530 Subject: [PATCH 1/2] fix: correct status codes for add and delete group member fossology.add_group_member and fossology.delete_group_member incorrectly checked for a 200 status code on success. the api actually returns 201 and 202, causing valid operations to fail. this updates the expected codes. --- fossology/groups.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/fossology/groups.py b/fossology/groups.py index 08a933c..7f11fcb 100644 --- a/fossology/groups.py +++ b/fossology/groups.py @@ -119,7 +119,7 @@ def add_group_member( response = self.session.post( f"{self.api}/groups/{group_id}/user/{user_id}", json=data ) - if response.status_code == 200: + if response.status_code == 201: logger.info(f"User {user_id} has been added to group {group_id}.") elif response.status_code == 400: logger.info(f"User {user_id} is already a member of group {group_id}.") @@ -179,7 +179,7 @@ def delete_group_member(self, group_id: int, user_id: int) -> None: :raises FossologyApiError: if the REST call failed """ response = self.session.delete(f"{self.api}/groups/{group_id}/user/{user_id}") - if response.status_code == 200: + if response.status_code == 202: logger.info(f"User {user_id} will be removed from group {group_id}.") elif response.status_code == 400: description = f"Validation error while removing member {user_id} from group {group_id}." From f5e5916dcd6ff676fde4661e0644a29140bd11d0 Mon Sep 17 00:00:00 2001 From: Utpal Sen Date: Sat, 20 Jun 2026 15:03:34 +0530 Subject: [PATCH 2/2] fix backwards compatibility with 200 api responses for group members --- fossology/groups.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/fossology/groups.py b/fossology/groups.py index 7f11fcb..4154455 100644 --- a/fossology/groups.py +++ b/fossology/groups.py @@ -119,7 +119,7 @@ def add_group_member( response = self.session.post( f"{self.api}/groups/{group_id}/user/{user_id}", json=data ) - if response.status_code == 201: + if response.status_code in (200, 201): logger.info(f"User {user_id} has been added to group {group_id}.") elif response.status_code == 400: logger.info(f"User {user_id} is already a member of group {group_id}.") @@ -179,7 +179,7 @@ def delete_group_member(self, group_id: int, user_id: int) -> None: :raises FossologyApiError: if the REST call failed """ response = self.session.delete(f"{self.api}/groups/{group_id}/user/{user_id}") - if response.status_code == 202: + if response.status_code in (200, 202): logger.info(f"User {user_id} will be removed from group {group_id}.") elif response.status_code == 400: description = f"Validation error while removing member {user_id} from group {group_id}."