partis-pyproj 0.1.4__py3-none-any.whl → 0.1.6__py3-none-any.whl

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 (42) hide show
  1. {partis_pyproj-0.1.4.data → partis_pyproj-0.1.6.data}/purelib/partis/pyproj/__init__.py +9 -1
  2. {partis_pyproj-0.1.4.data → partis_pyproj-0.1.6.data}/purelib/partis/pyproj/_legacy_setup.py +11 -11
  3. {partis_pyproj-0.1.4.data → partis_pyproj-0.1.6.data}/purelib/partis/pyproj/_nonprintable.py +4 -3
  4. {partis_pyproj-0.1.4.data → partis_pyproj-0.1.6.data}/purelib/partis/pyproj/backend.py +44 -37
  5. partis_pyproj-0.1.6.data/purelib/partis/pyproj/builder/builder.py +351 -0
  6. {partis_pyproj-0.1.4.data → partis_pyproj-0.1.6.data}/purelib/partis/pyproj/builder/cargo.py +2 -2
  7. {partis_pyproj-0.1.4.data → partis_pyproj-0.1.6.data}/purelib/partis/pyproj/builder/cmake.py +9 -15
  8. {partis_pyproj-0.1.4.data → partis_pyproj-0.1.6.data}/purelib/partis/pyproj/builder/meson.py +5 -13
  9. partis_pyproj-0.1.6.data/purelib/partis/pyproj/builder/process.py +42 -0
  10. {partis_pyproj-0.1.4.data → partis_pyproj-0.1.6.data}/purelib/partis/pyproj/dist_file/__init__.py +1 -1
  11. {partis_pyproj-0.1.4.data → partis_pyproj-0.1.6.data}/purelib/partis/pyproj/dist_file/dist_base.py +75 -86
  12. {partis_pyproj-0.1.4.data → partis_pyproj-0.1.6.data}/purelib/partis/pyproj/dist_file/dist_binary.py +6 -24
  13. {partis_pyproj-0.1.4.data → partis_pyproj-0.1.6.data}/purelib/partis/pyproj/dist_file/dist_copy.py +7 -18
  14. {partis_pyproj-0.1.4.data → partis_pyproj-0.1.6.data}/purelib/partis/pyproj/dist_file/dist_source.py +4 -21
  15. {partis_pyproj-0.1.4.data → partis_pyproj-0.1.6.data}/purelib/partis/pyproj/dist_file/dist_targz.py +5 -12
  16. {partis_pyproj-0.1.4.data → partis_pyproj-0.1.6.data}/purelib/partis/pyproj/dist_file/dist_zip.py +5 -14
  17. {partis_pyproj-0.1.4.data → partis_pyproj-0.1.6.data}/purelib/partis/pyproj/file.py +2 -1
  18. {partis_pyproj-0.1.4.data → partis_pyproj-0.1.6.data}/purelib/partis/pyproj/legacy.py +3 -2
  19. {partis_pyproj-0.1.4.data → partis_pyproj-0.1.6.data}/purelib/partis/pyproj/load_module.py +7 -6
  20. {partis_pyproj-0.1.4.data → partis_pyproj-0.1.6.data}/purelib/partis/pyproj/norms.py +35 -31
  21. {partis_pyproj-0.1.4.data → partis_pyproj-0.1.6.data}/purelib/partis/pyproj/path/__init__.py +2 -1
  22. {partis_pyproj-0.1.4.data → partis_pyproj-0.1.6.data}/purelib/partis/pyproj/path/match.py +42 -35
  23. {partis_pyproj-0.1.4.data → partis_pyproj-0.1.6.data}/purelib/partis/pyproj/path/pattern.py +60 -54
  24. partis_pyproj-0.1.6.data/purelib/partis/pyproj/path/utils.py +94 -0
  25. {partis_pyproj-0.1.4.data → partis_pyproj-0.1.6.data}/purelib/partis/pyproj/pep.py +36 -35
  26. {partis_pyproj-0.1.4.data → partis_pyproj-0.1.6.data}/purelib/partis/pyproj/pkginfo.py +7 -16
  27. {partis_pyproj-0.1.4.data → partis_pyproj-0.1.6.data}/purelib/partis/pyproj/pptoml.py +125 -120
  28. {partis_pyproj-0.1.4.data → partis_pyproj-0.1.6.data}/purelib/partis/pyproj/pyproj.py +47 -36
  29. partis_pyproj-0.1.6.data/purelib/partis/pyproj/template.py +229 -0
  30. {partis_pyproj-0.1.4.data → partis_pyproj-0.1.6.data}/purelib/partis/pyproj/validate.py +273 -268
  31. partis_pyproj-0.1.6.dist-info/METADATA +500 -0
  32. partis_pyproj-0.1.6.dist-info/RECORD +37 -0
  33. partis_pyproj-0.1.4.data/purelib/partis/pyproj/builder/builder.py +0 -267
  34. partis_pyproj-0.1.4.data/purelib/partis/pyproj/builder/process.py +0 -75
  35. partis_pyproj-0.1.4.data/purelib/partis/pyproj/path/utils.py +0 -40
  36. partis_pyproj-0.1.4.dist-info/METADATA +0 -51
  37. partis_pyproj-0.1.4.dist-info/RECORD +0 -36
  38. {partis_pyproj-0.1.4.data → partis_pyproj-0.1.6.data}/purelib/partis/pyproj/builder/__init__.py +0 -0
  39. {partis_pyproj-0.1.4.dist-info → partis_pyproj-0.1.6.dist-info}/LICENSE.txt +0 -0
  40. {partis_pyproj-0.1.4.dist-info → partis_pyproj-0.1.6.dist-info}/WHEEL +0 -0
  41. {partis_pyproj-0.1.4.dist-info → partis_pyproj-0.1.6.dist-info}/entry_points.txt +0 -0
  42. {partis_pyproj-0.1.4.dist-info → partis_pyproj-0.1.6.dist-info}/top_level.txt +0 -0
@@ -1,3 +1,4 @@
1
+ from __future__ import annotations
1
2
  import re
2
3
  from packaging.requirements import Requirement
3
4
  from packaging.specifiers import SpecifierSet
@@ -50,9 +51,9 @@ from .pep import (
50
51
  norm_dist_classifier,
51
52
  norm_dist_url )
52
53
 
53
- #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
54
+ #===============================================================================
54
55
  class dynamic(valid_list):
55
- _value_valid = restrict(
56
+ value_valid = restrict(
56
57
  'version',
57
58
  'description',
58
59
  'readme',
@@ -70,116 +71,116 @@ class dynamic(valid_list):
70
71
  'gui-scripts',
71
72
  'entry-points' )
72
73
 
73
- #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
74
+ #===============================================================================
74
75
  class readme(valid_dict):
75
76
  # a string at top-level interpreted as a path to the readme file
76
- _proxy_key = 'file'
77
- _allow_keys = list()
78
- _min_keys = [
77
+ proxy_key = 'file'
78
+ allow_keys = list()
79
+ min_keys = [
79
80
  ('file', 'text')]
80
- _mutex_keys = [
81
+ mutex_keys = [
81
82
  ('file', 'text')]
82
- _default = {
83
+ default = {
83
84
  # NOTE: file paths should initially be given as a POSIX path,
84
85
  # but converted to current OS path so it may be read.
85
86
  'file': valid(OPTIONAL, PurePosixPath, Path),
86
87
  'text': valid(OPTIONAL, nonempty_str, norm_printable) }
87
88
 
88
- #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
89
+ #===============================================================================
89
90
  class license(valid_dict):
90
- _allow_keys = list()
91
- _min_keys = [
91
+ allow_keys = list()
92
+ min_keys = [
92
93
  ('file', 'text')]
93
- _default = {
94
+ default = {
94
95
  'file': valid(OPTIONAL, PurePosixPath, Path),
95
96
  'text': valid(OPTIONAL, nonempty_str, norm_printable) }
96
97
 
97
- #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
98
+ #===============================================================================
98
99
  class author(valid_dict):
99
- _validator = valid(norm_dist_author_dict)
100
- _allow_keys = list()
101
- _min_keys = [
100
+ validator = valid(norm_dist_author_dict)
101
+ allow_keys = list()
102
+ min_keys = [
102
103
  ('name', 'email')]
103
- _default = {
104
+ default = {
104
105
  'name': valid(str),
105
106
  'email': valid(str) }
106
107
 
107
- #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
108
+ #===============================================================================
108
109
  class authors(valid_list):
109
- _value_valid = valid(author)
110
+ value_valid = valid(author)
110
111
 
111
- #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
112
+ #===============================================================================
112
113
  class maintainer(author):
113
114
  pass
114
115
 
115
- #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
116
+ #===============================================================================
116
117
  class maintainers(valid_list):
117
- _value_valid = valid(maintainer)
118
+ value_valid = valid(maintainer)
118
119
 
119
- #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
120
+ #===============================================================================
120
121
  class dependencies(valid_list):
121
- _value_valid = valid(norm_printable, Requirement, str)
122
+ value_valid = valid(norm_printable, Requirement, str)
122
123
 
123
- #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
124
+ #===============================================================================
124
125
  class optional_dependency_group(dependencies):
125
126
  pass
126
127
 
127
- #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
128
+ #===============================================================================
128
129
  class optional_dependencies(valid_dict):
129
- _key_valid = valid(norm_dist_extra)
130
- _value_valid = valid(optional_dependency_group)
130
+ key_valid = valid(norm_dist_extra)
131
+ value_valid = valid(optional_dependency_group)
131
132
 
132
- #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
133
+ #===============================================================================
133
134
  class entry_point_group(valid_dict):
134
- _key_valid = valid(norm_entry_point_name)
135
- _value_valid = valid(norm_entry_point_ref)
135
+ key_valid = valid(norm_entry_point_name)
136
+ value_valid = valid(norm_entry_point_ref)
136
137
 
137
- #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
138
+ #===============================================================================
138
139
  class scripts(entry_point_group):
139
140
  pass
140
141
 
141
- #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
142
+ #===============================================================================
142
143
  class gui_scripts(entry_point_group):
143
144
  pass
144
145
 
145
- #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
146
+ #===============================================================================
146
147
  class entry_points(valid_dict):
147
- _key_valid = valid(norm_entry_point_group)
148
- _value_valid = valid(entry_point_group)
148
+ key_valid = valid(norm_entry_point_group)
149
+ value_valid = valid(entry_point_group)
149
150
 
150
151
  # PEP 621
151
152
  # > Build back-ends MUST raise an error if the metadata defines a
152
153
  # > [project.entry-points.console_scripts] or [project.entry-points.gui_scripts]
153
154
  # > table, as they would be ambiguous in the face of [project.scripts]
154
155
  # > and [project.gui-scripts], respectively.
155
- _forbid_keys = [
156
+ forbid_keys = [
156
157
  'scripts',
157
158
  'console_scripts',
158
159
  'gui-scripts',
159
160
  'gui_scripts' ]
160
161
 
161
- #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
162
+ #===============================================================================
162
163
  class keywords(valid_list):
163
- _value_valid = valid(norm_dist_keyword)
164
+ value_valid = valid(norm_dist_keyword)
164
165
 
165
- #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
166
+ #===============================================================================
166
167
  class classifiers(valid_list):
167
- _value_valid = valid(norm_dist_classifier)
168
+ value_valid = valid(norm_dist_classifier)
168
169
 
169
- #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
170
+ #===============================================================================
170
171
  def norm_dist_url_item(kv):
171
172
  return norm_dist_url(*kv)
172
173
 
173
- #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
174
+ #===============================================================================
174
175
  class urls(valid_dict):
175
- _item_valid = valid(norm_dist_url_item)
176
+ item_valid = valid(norm_dist_url_item)
176
177
 
177
- #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
178
+ #===============================================================================
178
179
  class project(valid_dict):
179
- _allow_keys = list()
180
- _require_keys = [
180
+ allow_keys = list()
181
+ require_keys = [
181
182
  'name']
182
- _default = {
183
+ default = {
183
184
  'dynamic': dynamic,
184
185
  'name': valid(valid_dist_name),
185
186
  'version': valid('0.0.0', norm_dist_version),
@@ -200,65 +201,69 @@ class project(valid_dict):
200
201
  'gui-scripts': valid(gui_scripts),
201
202
  'entry-points': valid(entry_points) }
202
203
 
203
- #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
204
+ #===============================================================================
204
205
  class build_requires(dependencies):
205
206
  pass
206
207
 
207
- #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
208
+ #===============================================================================
208
209
  class path_parts(valid_list):
209
- _value_valid = valid(nonempty_str)
210
+ value_valid = valid(nonempty_str)
210
211
 
211
- #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
212
+ #===============================================================================
212
213
  class build_system(valid_dict):
213
- _allow_keys = list()
214
- _require_keys = [
214
+ allow_keys = list()
215
+ require_keys = [
215
216
  'build-backend']
216
- _default = {
217
+ default = {
217
218
  'requires': build_requires,
218
219
  'build-backend': norm_entry_point_ref,
219
220
  'backend-path': valid(OPTIONAL_NONE, path_parts) }
220
221
 
221
- #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
222
+ #===============================================================================
222
223
  def compat_tag(v):
223
224
  return CompatibilityTags(*v)
224
225
 
225
- #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
226
+ #===============================================================================
226
227
  class compat_tags(valid_list):
227
228
  _as_list = valid(as_list)
228
229
  _min_len = 1
229
- _value_valid = valid(compat_tag)
230
+ value_valid = valid(compat_tag)
230
231
 
231
- #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
232
+ #===============================================================================
232
233
  class pyproj_prep(valid_dict):
233
- _allow_keys = list()
234
- _require_keys = [
234
+ allow_keys = list()
235
+ require_keys = [
235
236
  'entry' ]
236
- _default = {
237
+ default = {
237
238
  'entry': norm_entry_point_ref,
238
239
  'kwargs': dict }
239
240
 
240
- #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
241
+ #===============================================================================
241
242
  class pyproj_dist_prep(pyproj_prep):
242
243
  pass
243
244
 
244
- #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
245
+ #===============================================================================
245
246
  class pyproj_dist_source_prep(pyproj_prep):
246
247
  pass
247
248
 
248
- #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
249
+ #===============================================================================
249
250
  class pyproj_dist_binary_prep(pyproj_prep):
250
251
  pass
251
252
 
252
- #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
253
+ #===============================================================================
253
254
  class pyproj_build_target(valid_dict):
254
- _allow_keys = list()
255
- _require_keys = [
255
+ allow_keys = list()
256
+ require_keys = [
256
257
  'entry' ]
257
- _deprecate_keys = [('compile', 'enabled')]
258
- _default = {
258
+ deprecate_keys = [
259
+ # name changed to be more general
260
+ ('compile', 'enabled')]
261
+ default = {
259
262
  'enabled': valid(True, marker_evaluated),
263
+ # NOTE: default builder from backward compatibility
260
264
  'entry': valid('partis.pyproj.builder:meson', norm_entry_point_ref),
261
265
  'options': dict,
266
+ 'env': dict,
262
267
  # NOTE: paths should start as POSIX, but transformed to current OS
263
268
  'work_dir': valid('.', PurePosixPath, Path),
264
269
  'src_dir': valid('.', PurePosixPath, Path),
@@ -269,7 +274,7 @@ class pyproj_build_target(valid_dict):
269
274
  'install_args': nonempty_str_list,
270
275
  'build_clean': valid(True, norm_bool) }
271
276
 
272
- #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
277
+ #===============================================================================
273
278
  class pyproj_meson(valid_dict):
274
279
  """
275
280
 
@@ -277,8 +282,8 @@ class pyproj_meson(valid_dict):
277
282
  Replaced by more general :class:`pyproj_build_target`
278
283
 
279
284
  """
280
- _allow_keys = list()
281
- _default = {
285
+ allow_keys = list()
286
+ default = {
282
287
  'compile': valid(False, norm_bool),
283
288
  'src_dir': valid('.', nonempty_str, norm_path, norm_path_to_os),
284
289
  'build_dir': valid('build/meson', nonempty_str, norm_path, norm_path_to_os),
@@ -289,48 +294,48 @@ class pyproj_meson(valid_dict):
289
294
  'options': dict,
290
295
  'build_clean': valid(True, norm_bool) }
291
296
 
292
- #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
297
+ #===============================================================================
293
298
  class pyproj_targets(valid_list):
294
299
  _as_list = valid(as_list)
295
- _value_valid = valid(pyproj_build_target)
300
+ value_valid = valid(pyproj_build_target)
296
301
 
297
- #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
302
+ #===============================================================================
298
303
  class ignore_list(valid_list):
299
304
  _as_list = valid(as_list)
300
- _value_valid = valid(nonempty_str)
305
+ value_valid = valid(nonempty_str)
301
306
 
302
- #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
307
+ #===============================================================================
303
308
  class glob_list(valid_list):
304
309
  _as_list = valid(as_list)
305
- _value_valid = valid(nonempty_str)
310
+ value_valid = valid(nonempty_str)
306
311
 
307
- #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
312
+ #===============================================================================
308
313
  class include(valid_dict):
309
- _allow_keys = list()
314
+ allow_keys = list()
310
315
  # a string at top-level interpreted as 'match'
311
- _proxy_key = 'glob'
316
+ proxy_key = 'glob'
312
317
  # TODO: how to normalize patterns?
313
- _default = {
318
+ default = {
314
319
  'glob': valid(nonempty_str),
315
320
  'rematch': valid(r'.*', nonempty_str, re.compile),
316
321
  'replace': valid('{0}', nonempty_str)}
317
322
 
318
- #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
323
+ #===============================================================================
319
324
  class include_list(valid_list):
320
325
  _as_list = valid(as_list)
321
- _value_valid = valid(include)
326
+ value_valid = valid(include)
322
327
 
323
- #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
328
+ #===============================================================================
324
329
  class pyproj_dist_copy(valid_dict):
325
330
  # a string at top-level interpreted as 'src'
326
- _proxy_key = 'src'
331
+ proxy_key = 'src'
327
332
  # take 'dst' from 'src' if not set
328
- _proxy_keys = [('dst', 'src')]
329
- _deprecate_keys = [('glob', 'include')]
330
- _allow_keys = list()
331
- _min_keys = [
333
+ proxy_keys = [('dst', 'src')]
334
+ deprecate_keys = [('glob', 'include')]
335
+ allow_keys = list()
336
+ min_keys = [
332
337
  ('src', 'glob') ]
333
- _default = {
338
+ default = {
334
339
  # NOTE: file paths should initially be given as a POSIX path,
335
340
  # but converted to current OS path so it may be read.
336
341
  'src': valid(REQUIRED, PurePosixPath, Path),
@@ -339,21 +344,21 @@ class pyproj_dist_copy(valid_dict):
339
344
  'include': include_list,
340
345
  'ignore': ignore_list }
341
346
 
342
- #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
347
+ #===============================================================================
343
348
  class pyproj_dist_copy_list(valid_list):
344
- _value_valid = valid(pyproj_dist_copy)
349
+ value_valid = valid(pyproj_dist_copy)
345
350
 
346
- #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
351
+ #===============================================================================
347
352
  class pyproj_dist_scheme(valid_dict):
348
- _allow_keys = list()
349
- _default = {
353
+ allow_keys = list()
354
+ default = {
350
355
  'ignore': ignore_list,
351
356
  'copy': pyproj_dist_copy_list }
352
357
 
353
- #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
358
+ #===============================================================================
354
359
  class pyproj_dist_binary(valid_dict):
355
- _allow_keys = list()
356
- _default = {
360
+ allow_keys = list()
361
+ default = {
357
362
  'build_number': valid(OPTIONAL_NONE, int),
358
363
  'build_suffix': valid(OPTIONAL_NONE, str),
359
364
  'compat_tags': valid(purelib_compat_tags(), compat_tags),
@@ -366,52 +371,52 @@ class pyproj_dist_binary(valid_dict):
366
371
  'purelib': pyproj_dist_scheme,
367
372
  'platlib': pyproj_dist_scheme }
368
373
 
369
- #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
374
+ #===============================================================================
370
375
  class pyproj_dist_source(valid_dict):
371
- _allow_keys = list()
372
- _default = {
376
+ allow_keys = list()
377
+ default = {
373
378
  'prep': valid(OPTIONAL, pyproj_dist_source_prep),
374
379
  'ignore': ignore_list,
375
380
  'copy': pyproj_dist_copy_list,
376
381
  'add_legacy_setup': valid(False, norm_bool) }
377
382
 
378
- #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
383
+ #===============================================================================
379
384
  class pyproj_dist(valid_dict):
380
- _allow_keys = list()
381
- _default = {
385
+ allow_keys = list()
386
+ default = {
382
387
  'prep': valid(OPTIONAL, pyproj_dist_prep),
383
388
  'ignore': ignore_list,
384
389
  'source': pyproj_dist_source,
385
390
  'binary': pyproj_dist_binary }
386
391
 
387
- #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
392
+ #===============================================================================
388
393
  class pyproj_config(valid_dict):
389
- _key_valid = valid(norm_dist_extra)
390
- _value_valid = union(scalar, scalar_list)
394
+ key_valid = valid(norm_dist_extra)
395
+ value_valid = union(scalar, scalar_list)
391
396
 
392
- #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
397
+ #===============================================================================
393
398
  class pyproj(valid_dict):
394
- _allow_keys = list()
395
- _default = {
399
+ allow_keys = list()
400
+ default = {
396
401
  'config': pyproj_config,
397
402
  'prep': valid(OPTIONAL, pyproj_prep),
398
403
  'dist': pyproj_dist,
399
404
  'targets': pyproj_targets }
400
- _deprecate_keys = [('meson', 'targets')]
405
+ deprecate_keys = [('meson', 'targets')]
401
406
 
402
- #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
407
+ #===============================================================================
403
408
  class tool(valid_dict):
404
- _require_keys = ['pyproj']
405
- _default = {
409
+ require_keys = ['pyproj']
410
+ default = {
406
411
  'pyproj': pyproj }
407
412
 
408
- #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
413
+ #===============================================================================
409
414
  class pptoml(valid_dict):
410
- _allow_keys = list()
411
- _require_keys = [
415
+ allow_keys = list()
416
+ require_keys = [
412
417
  'project',
413
418
  'build-system']
414
- _default = {
419
+ default = {
415
420
  'project': valid(REQUIRED, project),
416
421
  'build-system': valid(REQUIRED, build_system),
417
422
  'tool': valid(OPTIONAL, tool) }