python-service-builder 2.2.0__tar.gz → 2.4.1__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 (17) hide show
  1. {python_service_builder-2.2.0/python_service_builder.egg-info → python_service_builder-2.4.1}/PKG-INFO +1 -1
  2. {python_service_builder-2.2.0 → python_service_builder-2.4.1}/pyproject.toml +3 -3
  3. {python_service_builder-2.2.0 → python_service_builder-2.4.1/python_service_builder.egg-info}/PKG-INFO +1 -1
  4. {python_service_builder-2.2.0 → python_service_builder-2.4.1}/service_framework/services.py +15 -8
  5. {python_service_builder-2.2.0 → python_service_builder-2.4.1}/service_framework/update_services.py +15 -0
  6. {python_service_builder-2.2.0 → python_service_builder-2.4.1}/LICENSE +0 -0
  7. {python_service_builder-2.2.0 → python_service_builder-2.4.1}/README.md +0 -0
  8. {python_service_builder-2.2.0 → python_service_builder-2.4.1}/python_service_builder.egg-info/SOURCES.txt +0 -0
  9. {python_service_builder-2.2.0 → python_service_builder-2.4.1}/python_service_builder.egg-info/dependency_links.txt +0 -0
  10. {python_service_builder-2.2.0 → python_service_builder-2.4.1}/python_service_builder.egg-info/requires.txt +0 -0
  11. {python_service_builder-2.2.0 → python_service_builder-2.4.1}/python_service_builder.egg-info/top_level.txt +0 -0
  12. {python_service_builder-2.2.0 → python_service_builder-2.4.1}/service_framework/__init__.py +0 -0
  13. {python_service_builder-2.2.0 → python_service_builder-2.4.1}/service_framework/__init_test.py +0 -0
  14. {python_service_builder-2.2.0 → python_service_builder-2.4.1}/service_framework/service_builder.py +0 -0
  15. {python_service_builder-2.2.0 → python_service_builder-2.4.1}/service_framework/service_finder.py +0 -0
  16. {python_service_builder-2.2.0 → python_service_builder-2.4.1}/service_framework/services_test.py +0 -0
  17. {python_service_builder-2.2.0 → python_service_builder-2.4.1}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: python-service-builder
3
- Version: 2.2.0
3
+ Version: 2.4.1
4
4
  Summary: Helper library for easier creation of Google services.
5
5
  Author-email: David Harcombe <david.harcombe@gmail.com>
6
6
  License-Expression: Apache-2.0
@@ -1,10 +1,10 @@
1
1
  [build-system]
2
- requires = ['setuptools>=61.0']
3
- build-backend = 'setuptools.build_meta'
2
+ requires = [ "setuptools>=61.0",]
3
+ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "python-service-builder"
7
- version = "2.2.0"
7
+ version = "2.4.1"
8
8
  authors = [{ name = "David Harcombe", email = "david.harcombe@gmail.com" }]
9
9
  description = "Helper library for easier creation of Google services."
10
10
  readme = "README.md"
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: python-service-builder
3
- Version: 2.2.0
3
+ Version: 2.4.1
4
4
  Summary: Helper library for easier creation of Google services.
5
5
  Author-email: David Harcombe <david.harcombe@gmail.com>
6
6
  License-Expression: Apache-2.0
@@ -108,8 +108,8 @@ class Service(enum.Enum):
108
108
  return cls.create_service(value)
109
109
 
110
110
  # DO NOT REMOVE THE LINE BELOW - THIS IS THE MARKER FOR AUTO-FETCH
111
- # SERVICE DEFINITIONS: 2025-07-30 17:50:13
112
- # ABUSIVEEXPERIENCEREPORT = ServiceDefinition(service_name='abusiveexperiencereport', version='v1', discovery_service_url='https://abusiveexperiencereport.googleapis.com/$discovery/rest?version=v1') # nopep8
111
+ # SERVICE DEFINITIONS: 2026-01-28 20:37:54
112
+ ABUSIVEEXPERIENCEREPORT = ServiceDefinition(service_name='abusiveexperiencereport', version='v1', discovery_service_url='https://abusiveexperiencereport.googleapis.com/$discovery/rest?version=v1') # nopep8
113
113
  ACCELERATEDMOBILEPAGEURL = ServiceDefinition(service_name='acceleratedmobilepageurl', version='v1', discovery_service_url='https://acceleratedmobilepageurl.googleapis.com/$discovery/rest?version=v1') # nopep8
114
114
  ACCESSAPPROVAL = ServiceDefinition(service_name='accessapproval', version='v1', discovery_service_url='https://accessapproval.googleapis.com/$discovery/rest?version=v1') # nopep8
115
115
  ACCESSCONTEXTMANAGER = ServiceDefinition(service_name='accesscontextmanager', version='v1', discovery_service_url='https://accesscontextmanager.googleapis.com/$discovery/rest?version=v1') # nopep8
@@ -141,6 +141,7 @@ class Service(enum.Enum):
141
141
  APIM = ServiceDefinition(service_name='apim', version='v1alpha', discovery_service_url='https://apim.googleapis.com/$discovery/rest?version=v1alpha') # nopep8
142
142
  APPENGINE = ServiceDefinition(service_name='appengine', version='v1', discovery_service_url='https://appengine.googleapis.com/$discovery/rest?version=v1') # nopep8
143
143
  APPHUB = ServiceDefinition(service_name='apphub', version='v1', discovery_service_url='https://apphub.googleapis.com/$discovery/rest?version=v1') # nopep8
144
+ APPSMARKET = ServiceDefinition(service_name='appsmarket', version='v2', discovery_service_url='https://appsmarket.googleapis.com/$discovery/rest?version=v2') # nopep8
144
145
  AREA120TABLES = ServiceDefinition(service_name='area120tables', version='v1alpha1', discovery_service_url='https://area120tables.googleapis.com/$discovery/rest?version=v1alpha1') # nopep8
145
146
  AREAINSIGHTS = ServiceDefinition(service_name='areainsights', version='v1', discovery_service_url='https://areainsights.googleapis.com/$discovery/rest?version=v1') # nopep8
146
147
  ARTIFACTREGISTRY = ServiceDefinition(service_name='artifactregistry', version='v1', discovery_service_url='https://artifactregistry.googleapis.com/$discovery/rest?version=v1') # nopep8
@@ -153,7 +154,7 @@ class Service(enum.Enum):
153
154
  BIGLAKE = ServiceDefinition(service_name='biglake', version='v1', discovery_service_url='https://biglake.googleapis.com/$discovery/rest?version=v1') # nopep8
154
155
  BIGQUERY = ServiceDefinition(service_name='bigquery', version='v2', discovery_service_url='https://bigquery.googleapis.com/$discovery/rest?version=v2') # nopep8
155
156
  BIGQUERYCONNECTION = ServiceDefinition(service_name='bigqueryconnection', version='v1', discovery_service_url='https://bigqueryconnection.googleapis.com/$discovery/rest?version=v1') # nopep8
156
- BIGQUERYDATAPOLICY = ServiceDefinition(service_name='bigquerydatapolicy', version='v1', discovery_service_url='https://bigquerydatapolicy.googleapis.com/$discovery/rest?version=v1') # nopep8
157
+ BIGQUERYDATAPOLICY = ServiceDefinition(service_name='bigquerydatapolicy', version='v2', discovery_service_url='https://bigquerydatapolicy.googleapis.com/$discovery/rest?version=v2') # nopep8
157
158
  BIGQUERYDATATRANSFER = ServiceDefinition(service_name='bigquerydatatransfer', version='v1', discovery_service_url='https://bigquerydatatransfer.googleapis.com/$discovery/rest?version=v1') # nopep8
158
159
  BIGQUERYRESERVATION = ServiceDefinition(service_name='bigqueryreservation', version='v1', discovery_service_url='https://bigqueryreservation.googleapis.com/$discovery/rest?version=v1') # nopep8
159
160
  BIGTABLEADMIN = ServiceDefinition(service_name='bigtableadmin', version='v2', discovery_service_url='https://bigtableadmin.googleapis.com/$discovery/rest?version=v2') # nopep8
@@ -170,19 +171,21 @@ class Service(enum.Enum):
170
171
  CHROMEMANAGEMENT = ServiceDefinition(service_name='chromemanagement', version='v1', discovery_service_url='https://chromemanagement.googleapis.com/$discovery/rest?version=v1') # nopep8
171
172
  CHROMEPOLICY = ServiceDefinition(service_name='chromepolicy', version='v1', discovery_service_url='https://chromepolicy.googleapis.com/$discovery/rest?version=v1') # nopep8
172
173
  CHROMEUXREPORT = ServiceDefinition(service_name='chromeuxreport', version='v1', discovery_service_url='https://chromeuxreport.googleapis.com/$discovery/rest?version=v1') # nopep8
174
+ CHROMEWEBSTORE = ServiceDefinition(service_name='chromewebstore', version='v2', discovery_service_url='https://chromewebstore.googleapis.com/$discovery/rest?version=v2') # nopep8
173
175
  CIVICINFO = ServiceDefinition(service_name='civicinfo', version='v2', discovery_service_url='https://civicinfo.googleapis.com/$discovery/rest?version=v2') # nopep8
174
176
  CLASSROOM = ServiceDefinition(service_name='classroom', version='v1', discovery_service_url='https://classroom.googleapis.com/$discovery/rest?version=v1') # nopep8
175
177
  CLOUDASSET = ServiceDefinition(service_name='cloudasset', version='v1', discovery_service_url='https://cloudasset.googleapis.com/$discovery/rest?version=v1') # nopep8
176
178
  CLOUDBILLING = ServiceDefinition(service_name='cloudbilling', version='v1', discovery_service_url='https://cloudbilling.googleapis.com/$discovery/rest?version=v1') # nopep8
177
179
  CLOUDBUILD = ServiceDefinition(service_name='cloudbuild', version='v2', discovery_service_url='https://cloudbuild.googleapis.com/$discovery/rest?version=v2') # nopep8
178
180
  CLOUDCHANNEL = ServiceDefinition(service_name='cloudchannel', version='v1', discovery_service_url='https://cloudchannel.googleapis.com/$discovery/rest?version=v1') # nopep8
181
+ CLOUDCOMMERCEPROCUREMENT = ServiceDefinition(service_name='cloudcommerceprocurement', version='v1', discovery_service_url='https://cloudcommerceprocurement.googleapis.com/$discovery/rest?version=v1') # nopep8
179
182
  CLOUDCONTROLSPARTNER = ServiceDefinition(service_name='cloudcontrolspartner', version='v1', discovery_service_url='https://cloudcontrolspartner.googleapis.com/$discovery/rest?version=v1') # nopep8
180
183
  CLOUDDEPLOY = ServiceDefinition(service_name='clouddeploy', version='v1', discovery_service_url='https://clouddeploy.googleapis.com/$discovery/rest?version=v1') # nopep8
181
184
  CLOUDERRORREPORTING = ServiceDefinition(service_name='clouderrorreporting', version='v1beta1', discovery_service_url='https://clouderrorreporting.googleapis.com/$discovery/rest?version=v1beta1') # nopep8
182
185
  CLOUDFUNCTIONS = ServiceDefinition(service_name='cloudfunctions', version='v2', discovery_service_url='https://cloudfunctions.googleapis.com/$discovery/rest?version=v2') # nopep8
183
186
  CLOUDIDENTITY = ServiceDefinition(service_name='cloudidentity', version='v1', discovery_service_url='https://cloudidentity.googleapis.com/$discovery/rest?version=v1') # nopep8
184
187
  CLOUDKMS = ServiceDefinition(service_name='cloudkms', version='v1', discovery_service_url='https://cloudkms.googleapis.com/$discovery/rest?version=v1') # nopep8
185
- CLOUDLOCATIONFINDER = ServiceDefinition(service_name='cloudlocationfinder', version='v1alpha', discovery_service_url='https://cloudlocationfinder.googleapis.com/$discovery/rest?version=v1alpha') # nopep8
188
+ CLOUDLOCATIONFINDER = ServiceDefinition(service_name='cloudlocationfinder', version='v1', discovery_service_url='https://cloudlocationfinder.googleapis.com/$discovery/rest?version=v1') # nopep8
186
189
  CLOUDPROFILER = ServiceDefinition(service_name='cloudprofiler', version='v2', discovery_service_url='https://cloudprofiler.googleapis.com/$discovery/rest?version=v2') # nopep8
187
190
  CLOUDRESOURCEMANAGER = ServiceDefinition(service_name='cloudresourcemanager', version='v3', discovery_service_url='https://cloudresourcemanager.googleapis.com/$discovery/rest?version=v3') # nopep8
188
191
  CLOUDSCHEDULER = ServiceDefinition(service_name='cloudscheduler', version='v1', discovery_service_url='https://cloudscheduler.googleapis.com/$discovery/rest?version=v1') # nopep8
@@ -205,10 +208,11 @@ class Service(enum.Enum):
205
208
  CUSTOMSEARCH = ServiceDefinition(service_name='customsearch', version='v1', discovery_service_url='https://customsearch.googleapis.com/$discovery/rest?version=v1') # nopep8
206
209
  DATACATALOG = ServiceDefinition(service_name='datacatalog', version='v1', discovery_service_url='https://datacatalog.googleapis.com/$discovery/rest?version=v1') # nopep8
207
210
  DATAFLOW = ServiceDefinition(service_name='dataflow', version='v1b3', discovery_service_url='https://dataflow.googleapis.com/$discovery/rest?version=v1b3') # nopep8
208
- DATAFORM = ServiceDefinition(service_name='dataform', version='v1beta1', discovery_service_url='https://dataform.googleapis.com/$discovery/rest?version=v1beta1') # nopep8
211
+ DATAFORM = ServiceDefinition(service_name='dataform', version='v1', discovery_service_url='https://dataform.googleapis.com/$discovery/rest?version=v1') # nopep8
209
212
  DATAFUSION = ServiceDefinition(service_name='datafusion', version='v1', discovery_service_url='https://datafusion.googleapis.com/$discovery/rest?version=v1') # nopep8
210
213
  DATALABELING = ServiceDefinition(service_name='datalabeling', version='v1beta1', discovery_service_url='https://datalabeling.googleapis.com/$discovery/rest?version=v1beta1') # nopep8
211
214
  DATALINEAGE = ServiceDefinition(service_name='datalineage', version='v1', discovery_service_url='https://datalineage.googleapis.com/$discovery/rest?version=v1') # nopep8
215
+ DATAMANAGER = ServiceDefinition(service_name='datamanager', version='v1', discovery_service_url='https://datamanager.googleapis.com/$discovery/rest?version=v1') # nopep8
212
216
  DATAMIGRATION = ServiceDefinition(service_name='datamigration', version='v1', discovery_service_url='https://datamigration.googleapis.com/$discovery/rest?version=v1') # nopep8
213
217
  DATAPIPELINES = ServiceDefinition(service_name='datapipelines', version='v1', discovery_service_url='https://datapipelines.googleapis.com/$discovery/rest?version=v1') # nopep8
214
218
  DATAPLEX = ServiceDefinition(service_name='dataplex', version='v1', discovery_service_url='https://dataplex.googleapis.com/$discovery/rest?version=v1') # nopep8
@@ -218,7 +222,7 @@ class Service(enum.Enum):
218
222
  DATASTREAM = ServiceDefinition(service_name='datastream', version='v1', discovery_service_url='https://datastream.googleapis.com/$discovery/rest?version=v1') # nopep8
219
223
  DEPLOYMENTMANAGER = ServiceDefinition(service_name='deploymentmanager', version='v2', discovery_service_url='https://deploymentmanager.googleapis.com/$discovery/rest?version=v2') # nopep8
220
224
  DEVELOPERCONNECT = ServiceDefinition(service_name='developerconnect', version='v1', discovery_service_url='https://developerconnect.googleapis.com/$discovery/rest?version=v1') # nopep8
221
- DFAREPORTING = ServiceDefinition(service_name='dfareporting', version='v4', discovery_service_url='https://dfareporting.googleapis.com/$discovery/rest?version=v4') # nopep8
225
+ DFAREPORTING = ServiceDefinition(service_name='dfareporting', version='v5', discovery_service_url='https://dfareporting.googleapis.com/$discovery/rest?version=v5') # nopep8
222
226
  DIALOGFLOW = ServiceDefinition(service_name='dialogflow', version='v3', discovery_service_url='https://dialogflow.googleapis.com/$discovery/rest?version=v3') # nopep8
223
227
  DIGITALASSETLINKS = ServiceDefinition(service_name='digitalassetlinks', version='v1', discovery_service_url='https://digitalassetlinks.googleapis.com/$discovery/rest?version=v1') # nopep8
224
228
  DISCOVERY = ServiceDefinition(service_name='discovery', version='v1', discovery_service_url='https://discovery.googleapis.com/$discovery/rest?version=v1') # nopep8
@@ -266,6 +270,7 @@ class Service(enum.Enum):
266
270
  GROUPSSETTINGS = ServiceDefinition(service_name='groupssettings', version='v1', discovery_service_url='https://groupssettings.googleapis.com/$discovery/rest?version=v1') # nopep8
267
271
  HEALTHCARE = ServiceDefinition(service_name='healthcare', version='v1', discovery_service_url='https://healthcare.googleapis.com/$discovery/rest?version=v1') # nopep8
268
272
  HOMEGRAPH = ServiceDefinition(service_name='homegraph', version='v1', discovery_service_url='https://homegraph.googleapis.com/$discovery/rest?version=v1') # nopep8
273
+ HYPERCOMPUTECLUSTER = ServiceDefinition(service_name='hypercomputecluster', version='v1', discovery_service_url='https://hypercomputecluster.googleapis.com/$discovery/rest?version=v1') # nopep8
269
274
  IAM = ServiceDefinition(service_name='iam', version='v2', discovery_service_url='https://iam.googleapis.com/$discovery/rest?version=v2') # nopep8
270
275
  IAMCREDENTIALS = ServiceDefinition(service_name='iamcredentials', version='v1', discovery_service_url='https://iamcredentials.googleapis.com/$discovery/rest?version=v1') # nopep8
271
276
  IAP = ServiceDefinition(service_name='iap', version='v1', discovery_service_url='https://iap.googleapis.com/$discovery/rest?version=v1') # nopep8
@@ -291,7 +296,7 @@ class Service(enum.Enum):
291
296
  MEET = ServiceDefinition(service_name='meet', version='v2', discovery_service_url='https://meet.googleapis.com/$discovery/rest?version=v2') # nopep8
292
297
  MEMCACHE = ServiceDefinition(service_name='memcache', version='v1', discovery_service_url='https://memcache.googleapis.com/$discovery/rest?version=v1') # nopep8
293
298
  MERCHANTAPI = ServiceDefinition(service_name='merchantapi', version='reviews_v1beta', discovery_service_url='https://merchantapi.googleapis.com/$discovery/rest?version=reviews_v1beta') # nopep8
294
- METASTORE = ServiceDefinition(service_name='metastore', version='v2', discovery_service_url='https://metastore.googleapis.com/$discovery/rest?version=v2') # nopep8
299
+ METASTORE = ServiceDefinition(service_name='metastore', version='v1', discovery_service_url='https://metastore.googleapis.com/$discovery/rest?version=v1') # nopep8
295
300
  MIGRATIONCENTER = ServiceDefinition(service_name='migrationcenter', version='v1', discovery_service_url='https://migrationcenter.googleapis.com/$discovery/rest?version=v1') # nopep8
296
301
  ML = ServiceDefinition(service_name='ml', version='v1', discovery_service_url='https://ml.googleapis.com/$discovery/rest?version=v1') # nopep8
297
302
  MONITORING = ServiceDefinition(service_name='monitoring', version='v3', discovery_service_url='https://monitoring.googleapis.com/$discovery/rest?version=v3') # nopep8
@@ -327,7 +332,7 @@ class Service(enum.Enum):
327
332
  PLAYINTEGRITY = ServiceDefinition(service_name='playintegrity', version='v1', discovery_service_url='https://playintegrity.googleapis.com/$discovery/rest?version=v1') # nopep8
328
333
  POLICYANALYZER = ServiceDefinition(service_name='policyanalyzer', version='v1', discovery_service_url='https://policyanalyzer.googleapis.com/$discovery/rest?version=v1') # nopep8
329
334
  POLICYSIMULATOR = ServiceDefinition(service_name='policysimulator', version='v1', discovery_service_url='https://policysimulator.googleapis.com/$discovery/rest?version=v1') # nopep8
330
- POLICYTROUBLESHOOTER = ServiceDefinition(service_name='policytroubleshooter', version='v1', discovery_service_url='https://policytroubleshooter.googleapis.com/$discovery/rest?version=v1') # nopep8
335
+ POLICYTROUBLESHOOTER = ServiceDefinition(service_name='policytroubleshooter', version='v3', discovery_service_url='https://policytroubleshooter.googleapis.com/$discovery/rest?version=v3') # nopep8
331
336
  POLLEN = ServiceDefinition(service_name='pollen', version='v1', discovery_service_url='https://pollen.googleapis.com/$discovery/rest?version=v1') # nopep8
332
337
  POLY = ServiceDefinition(service_name='poly', version='v1', discovery_service_url='https://poly.googleapis.com/$discovery/rest?version=v1') # nopep8
333
338
  PRIVATECA = ServiceDefinition(service_name='privateca', version='v1', discovery_service_url='https://privateca.googleapis.com/$discovery/rest?version=v1') # nopep8
@@ -353,6 +358,7 @@ class Service(enum.Enum):
353
358
  SEARCHADS360 = ServiceDefinition(service_name='searchads360', version='v0', discovery_service_url='https://searchads360.googleapis.com/$discovery/rest?version=v0') # nopep8
354
359
  SEARCHCONSOLE = ServiceDefinition(service_name='searchconsole', version='v1', discovery_service_url='https://searchconsole.googleapis.com/$discovery/rest?version=v1') # nopep8
355
360
  SECRETMANAGER = ServiceDefinition(service_name='secretmanager', version='v1', discovery_service_url='https://secretmanager.googleapis.com/$discovery/rest?version=v1') # nopep8
361
+ SECURESOURCEMANAGER = ServiceDefinition(service_name='securesourcemanager', version='v1', discovery_service_url='https://securesourcemanager.googleapis.com/$discovery/rest?version=v1') # nopep8
356
362
  SECURITYCENTER = ServiceDefinition(service_name='securitycenter', version='v1', discovery_service_url='https://securitycenter.googleapis.com/$discovery/rest?version=v1') # nopep8
357
363
  SECURITYPOSTURE = ServiceDefinition(service_name='securityposture', version='v1', discovery_service_url='https://securityposture.googleapis.com/$discovery/rest?version=v1') # nopep8
358
364
  SERVICECONSUMERMANAGEMENT = ServiceDefinition(service_name='serviceconsumermanagement', version='v1', discovery_service_url='https://serviceconsumermanagement.googleapis.com/$discovery/rest?version=v1') # nopep8
@@ -378,6 +384,7 @@ class Service(enum.Enum):
378
384
  TASKS = ServiceDefinition(service_name='tasks', version='v1', discovery_service_url='https://tasks.googleapis.com/$discovery/rest?version=v1') # nopep8
379
385
  TESTING = ServiceDefinition(service_name='testing', version='v1', discovery_service_url='https://testing.googleapis.com/$discovery/rest?version=v1') # nopep8
380
386
  TEXTTOSPEECH = ServiceDefinition(service_name='texttospeech', version='v1', discovery_service_url='https://texttospeech.googleapis.com/$discovery/rest?version=v1') # nopep8
387
+ THREATINTELLIGENCE = ServiceDefinition(service_name='threatintelligence', version='v1beta', discovery_service_url='https://threatintelligence.googleapis.com/$discovery/rest?version=v1beta') # nopep8
381
388
  TOOLRESULTS = ServiceDefinition(service_name='toolresults', version='v1beta3', discovery_service_url='https://toolresults.googleapis.com/$discovery/rest?version=v1beta3') # nopep8
382
389
  TPU = ServiceDefinition(service_name='tpu', version='v2', discovery_service_url='https://tpu.googleapis.com/$discovery/rest?version=v2') # nopep8
383
390
  TRAFFICDIRECTOR = ServiceDefinition(service_name='trafficdirector', version='v3', discovery_service_url='https://trafficdirector.googleapis.com/$discovery/rest?version=v3') # nopep8
@@ -16,6 +16,7 @@ import re
16
16
  from contextlib import closing, suppress
17
17
  from datetime import datetime
18
18
 
19
+ import toml
19
20
  from absl import app
20
21
 
21
22
  from service_framework.service_finder import ServiceFinder
@@ -41,6 +42,20 @@ def main(unused) -> None:
41
42
  services.writelines(lines)
42
43
  [services.write(f' {k} = {v} # nopep8\n') for k, v in apis.items()]
43
44
 
45
+ lines = ''
46
+ with open('pyproject.toml', 'r') as pyproject:
47
+ while line := pyproject.readline():
48
+ lines += line
49
+
50
+ config = toml.loads(lines)
51
+ version = config['project']['version']
52
+ parts = version.split('.')
53
+ parts[-1] = str(int(parts[-1]) + 1)
54
+ config['project']['version'] = '.'.join(parts)
55
+
56
+ with closing(open('pyproject.toml', 'w')) as pyproject:
57
+ pyproject.writelines(toml.dumps(config))
58
+
44
59
 
45
60
  if __name__ == '__main__':
46
61
  with suppress(SystemExit):