46
46
"""
47
47
48
48
49
- def setup_cfg_template (package_name = "foo" ):
49
+ def setup_cfg_template (package_name = "foo" , module_name = None ):
50
50
return f"""
51
51
[metadata]
52
52
name = { package_name }
53
- version = attr: { package_name } .__version__
53
+ version = attr: { module_name or package_name } .__version__
54
54
description = My package description
55
55
long_description = file: README.md
56
56
long_description_content_type = text/markdown
@@ -62,7 +62,7 @@ def setup_cfg_template(package_name="foo"):
62
62
[options]
63
63
zip_safe = False
64
64
include_package_data = True
65
- py_modules = { package_name }
65
+ py_modules = { module_name or package_name }
66
66
"""
67
67
68
68
@@ -171,13 +171,18 @@ def get_log():
171
171
return log .read_text (encoding = "utf-8" ).splitlines ()
172
172
173
173
174
- def create_python_package (git_repo , multi = False ):
175
- def write_files (git_repo , sub_packages = [], package_name = "foo" ):
174
+ def create_python_package (git_repo , multi = False , not_matching_name = False ):
175
+ def write_files (git_repo , sub_packages = [], package_name = "foo" , module_name = None ):
176
+
177
+ module_name = module_name or package_name
178
+
176
179
setuppy = git_repo / "setup.py"
177
180
setuppy .write_text (SETUP_PY_TEMPLATE , encoding = "utf-8" )
178
181
179
182
setuppy = git_repo / "setup.cfg"
180
- setuppy .write_text (setup_cfg_template (package_name ), encoding = "utf-8" )
183
+ setuppy .write_text (
184
+ setup_cfg_template (package_name , module_name ), encoding = "utf-8"
185
+ )
181
186
182
187
tbump = git_repo / "tbump.toml"
183
188
tbump .write_text (
@@ -188,7 +193,7 @@ def write_files(git_repo, sub_packages=[], package_name="foo"):
188
193
pyproject = git_repo / "pyproject.toml"
189
194
pyproject .write_text (pyproject_template (sub_packages ), encoding = "utf-8" )
190
195
191
- foopy = git_repo / f"{ package_name } .py"
196
+ foopy = git_repo / f"{ module_name } .py"
192
197
foopy .write_text (PY_MODULE_TEMPLATE , encoding = "utf-8" )
193
198
194
199
manifest = git_repo / "MANIFEST.in"
@@ -215,11 +220,24 @@ def write_files(git_repo, sub_packages=[], package_name="foo"):
215
220
}
216
221
)
217
222
sub_package .mkdir ()
218
- write_files (git_repo / sub_package , package_name = f"foo{ i } " )
223
+ package_name = f"foo{ i } "
224
+ module_name = f"foo{ i } bar" if not_matching_name else None
225
+ write_files (
226
+ git_repo / sub_package ,
227
+ package_name = package_name ,
228
+ module_name = module_name ,
229
+ )
219
230
run (f"git add { sub_package } " )
220
231
run (f'git commit -m "initial python { sub_package } "' )
221
232
222
- write_files (git_repo , sub_packages = sub_packages )
233
+ package_name = "foo"
234
+ module_name = "foobar" if not_matching_name else None
235
+ write_files (
236
+ git_repo ,
237
+ sub_packages = sub_packages ,
238
+ package_name = package_name ,
239
+ module_name = module_name ,
240
+ )
223
241
run ("git add ." )
224
242
run ('git commit -m "initial python package"' )
225
243
0 commit comments