sharepoint-v1-api 0.2.1__tar.gz → 0.2.2__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (22) hide show
  1. {sharepoint_v1_api-0.2.1 → sharepoint_v1_api-0.2.2}/CHANGELOG.md +11 -1
  2. {sharepoint_v1_api-0.2.1/sharepoint_v1_api.egg-info → sharepoint_v1_api-0.2.2}/PKG-INFO +11 -1
  3. {sharepoint_v1_api-0.2.1 → sharepoint_v1_api-0.2.2}/setup.py +1 -1
  4. {sharepoint_v1_api-0.2.1 → sharepoint_v1_api-0.2.2}/sharepoint_api/SharePointList.py +26 -1
  5. {sharepoint_v1_api-0.2.1 → sharepoint_v1_api-0.2.2/sharepoint_v1_api.egg-info}/PKG-INFO +11 -1
  6. {sharepoint_v1_api-0.2.1 → sharepoint_v1_api-0.2.2}/AGENTS.md +0 -0
  7. {sharepoint_v1_api-0.2.1 → sharepoint_v1_api-0.2.2}/LICENSE +0 -0
  8. {sharepoint_v1_api-0.2.1 → sharepoint_v1_api-0.2.2}/MANIFEST.in +0 -0
  9. {sharepoint_v1_api-0.2.1 → sharepoint_v1_api-0.2.2}/README.md +0 -0
  10. {sharepoint_v1_api-0.2.1 → sharepoint_v1_api-0.2.2}/pyproject.toml +0 -0
  11. {sharepoint_v1_api-0.2.1 → sharepoint_v1_api-0.2.2}/setup.cfg +0 -0
  12. {sharepoint_v1_api-0.2.1 → sharepoint_v1_api-0.2.2}/sharepoint_api/SharePointAPI.py +0 -0
  13. {sharepoint_v1_api-0.2.1 → sharepoint_v1_api-0.2.2}/sharepoint_api/SharePointListItem.py +0 -0
  14. {sharepoint_v1_api-0.2.1 → sharepoint_v1_api-0.2.2}/sharepoint_api/SharePointLists.py +0 -0
  15. {sharepoint_v1_api-0.2.1 → sharepoint_v1_api-0.2.2}/sharepoint_api/SharePointTimeRegistration.py +0 -0
  16. {sharepoint_v1_api-0.2.1 → sharepoint_v1_api-0.2.2}/sharepoint_api/SharePointUser.py +0 -0
  17. {sharepoint_v1_api-0.2.1 → sharepoint_v1_api-0.2.2}/sharepoint_api/SharePointUserList.py +0 -0
  18. {sharepoint_v1_api-0.2.1 → sharepoint_v1_api-0.2.2}/sharepoint_api/__init__.py +0 -0
  19. {sharepoint_v1_api-0.2.1 → sharepoint_v1_api-0.2.2}/sharepoint_v1_api.egg-info/SOURCES.txt +0 -0
  20. {sharepoint_v1_api-0.2.1 → sharepoint_v1_api-0.2.2}/sharepoint_v1_api.egg-info/dependency_links.txt +0 -0
  21. {sharepoint_v1_api-0.2.1 → sharepoint_v1_api-0.2.2}/sharepoint_v1_api.egg-info/requires.txt +0 -0
  22. {sharepoint_v1_api-0.2.1 → sharepoint_v1_api-0.2.2}/sharepoint_v1_api.egg-info/top_level.txt +0 -0
@@ -1,6 +1,13 @@
1
+ ## 0.2.2 – 2025-11-28
2
+
3
+ ### Added
4
+
5
+ - `SharePointList.fields` property to retrieve list field definitions
6
+
1
7
  ## 0.2.1 – 2025‑11‑06
2
8
 
3
9
  ### Added
10
+
4
11
  - Optional `select_fields` parameters to list retrieval methods for more efficient queries.
5
12
  - New public API methods:
6
13
  - `SharePointAPI.get_group_users` – fetch users of a SharePoint group.
@@ -8,12 +15,15 @@
8
15
  - Detailed docstrings for core classes and methods (enhances IDE support).
9
16
 
10
17
  ### Changed
18
+
11
19
  - HTTP header handling unified; corrected `X‑HTTP‑Method: PUT` for full updates.
12
20
  - Error handling improved: generic `sys.exit(1)` replaced with explicit `TypeError`/`ConnectionError` exceptions.
13
21
 
14
22
  ### Fixed
23
+
15
24
  - Fixed incorrect PUT header that previously sent a MERGE header.
16
25
  - Minor docstring formatting issues.
17
26
 
18
27
  ### Security
19
- - Enforced NTLM authentication across all request helpers.
28
+
29
+ - Enforced NTLM authentication across all request helpers.
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: sharepoint_v1_api
3
- Version: 0.2.1
3
+ Version: 0.2.2
4
4
  Author: Aske Bluhme Klok
5
5
  License: MIT
6
6
  Keywords: Sharepoint
@@ -156,9 +156,16 @@ for v in versions:
156
156
  ```
157
157
 
158
158
 
159
+ ## 0.2.2 – 2025-11-28
160
+
161
+ ### Added
162
+
163
+ - `SharePointList.fields` property to retrieve list field definitions
164
+
159
165
  ## 0.2.1 – 2025‑11‑06
160
166
 
161
167
  ### Added
168
+
162
169
  - Optional `select_fields` parameters to list retrieval methods for more efficient queries.
163
170
  - New public API methods:
164
171
  - `SharePointAPI.get_group_users` – fetch users of a SharePoint group.
@@ -166,12 +173,15 @@ for v in versions:
166
173
  - Detailed docstrings for core classes and methods (enhances IDE support).
167
174
 
168
175
  ### Changed
176
+
169
177
  - HTTP header handling unified; corrected `X‑HTTP‑Method: PUT` for full updates.
170
178
  - Error handling improved: generic `sys.exit(1)` replaced with explicit `TypeError`/`ConnectionError` exceptions.
171
179
 
172
180
  ### Fixed
181
+
173
182
  - Fixed incorrect PUT header that previously sent a MERGE header.
174
183
  - Minor docstring formatting issues.
175
184
 
176
185
  ### Security
186
+
177
187
  - Enforced NTLM authentication across all request helpers.
@@ -1,6 +1,6 @@
1
1
  from setuptools import setup
2
2
 
3
- __version__ = "0.2.1"
3
+ __version__ = "0.2.2"
4
4
 
5
5
  with open("README.md", "r") as readme_file, open("CHANGELOG.md", "r") as changelog_file:
6
6
  long_description = f"{readme_file.read()}\n\n{changelog_file.read()}"
@@ -17,6 +17,7 @@ class SharePointList:
17
17
 
18
18
  settings = None
19
19
  _items = None
20
+ _fields = None
20
21
  sharepoint_site = None
21
22
  SPItem = SharePointListItem
22
23
 
@@ -89,7 +90,7 @@ class SharePointList:
89
90
  elif isinstance(items, self.SPItem):
90
91
  items._list = self
91
92
  self.all_items[items.Id] = items
92
-
93
+
93
94
  def create_item(self, data):
94
95
  self.sp.create_item(self.sharepoint_site, self, data)
95
96
 
@@ -123,6 +124,30 @@ class SharePointList:
123
124
  else:
124
125
  return None
125
126
 
127
+ @property
128
+ def fields(self) -> dict:
129
+ """
130
+ Retrieve all fields from the SharePoint list.
131
+
132
+ Returns:
133
+ dict: Field definitions keyed by Title, cached for subsequent calls
134
+
135
+ Raises:
136
+ ConnectionError: If API request fails
137
+ """
138
+ if not self._fields:
139
+ try:
140
+ response = self.sp._api_get_call(
141
+ f"{self.sp.sharepoint_url}/cases/{self.sharepoint_site}/_api/Web/Lists(guid'{self.guid}')/Fields"
142
+ )
143
+ response.raise_for_status()
144
+ self._fields = {field["Title"]: field for field in response.json().get(
145
+ 'd', {}).get('results', [])}
146
+ except Exception as e:
147
+ print(f"Failed to fetch fields: {str(e)}")
148
+ raise ConnectionError("Field retrieval failed") from e
149
+ return self._fields
150
+
126
151
  def get_items_by_assigned_id(self, id) -> List[SPItem]:
127
152
  '''
128
153
  '''
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: sharepoint_v1_api
3
- Version: 0.2.1
3
+ Version: 0.2.2
4
4
  Author: Aske Bluhme Klok
5
5
  License: MIT
6
6
  Keywords: Sharepoint
@@ -156,9 +156,16 @@ for v in versions:
156
156
  ```
157
157
 
158
158
 
159
+ ## 0.2.2 – 2025-11-28
160
+
161
+ ### Added
162
+
163
+ - `SharePointList.fields` property to retrieve list field definitions
164
+
159
165
  ## 0.2.1 – 2025‑11‑06
160
166
 
161
167
  ### Added
168
+
162
169
  - Optional `select_fields` parameters to list retrieval methods for more efficient queries.
163
170
  - New public API methods:
164
171
  - `SharePointAPI.get_group_users` – fetch users of a SharePoint group.
@@ -166,12 +173,15 @@ for v in versions:
166
173
  - Detailed docstrings for core classes and methods (enhances IDE support).
167
174
 
168
175
  ### Changed
176
+
169
177
  - HTTP header handling unified; corrected `X‑HTTP‑Method: PUT` for full updates.
170
178
  - Error handling improved: generic `sys.exit(1)` replaced with explicit `TypeError`/`ConnectionError` exceptions.
171
179
 
172
180
  ### Fixed
181
+
173
182
  - Fixed incorrect PUT header that previously sent a MERGE header.
174
183
  - Minor docstring formatting issues.
175
184
 
176
185
  ### Security
186
+
177
187
  - Enforced NTLM authentication across all request helpers.