@@ -509,13 +509,14 @@ class PythonSimulation(CodeGenerator):
509
509
PythonCompo ([type]): [description]
510
510
"""
511
511
512
- def __init__ (self , modelcomposite ):
512
+ def __init__ (self , modelcomposite , package_name = '' ):
513
513
"""[summary]
514
514
515
515
Args:
516
516
modelcomposite (ModelComposite): [description]
517
517
"""
518
518
self .modelcomposite = modelcomposite
519
+ self .package_name = package_name if package_name else self .modelcomposite .name
519
520
self .params = []
520
521
self .variables = []
521
522
self .stateInit = []
@@ -629,7 +630,7 @@ def generate(self):
629
630
def generate_setup (self ):
630
631
self .write ("import setuptools" )
631
632
self .newline (1 )
632
- self .write ("setuptools.setup(name='%s'," % self .modelcomposite . name )
633
+ self .write ("setuptools.setup(name='%s'," % self .package_name )
633
634
self .newline (1 )
634
635
self .write ("version='0.1'," )
635
636
self .newline (1 )
@@ -648,6 +649,30 @@ def generate_setup(self):
648
649
self .write ("zip_safe=False)" )
649
650
self .newline (1 )
650
651
652
+ def generate_pyproject (self ):
653
+ # use setuptools
654
+ self .write ('[build-system]' )
655
+ self .newline (1 )
656
+ self .write ('requires = ["setuptools>=61", "setuptools_scm[toml]>=7"]' )
657
+ self .newline (1 )
658
+ self .write ('build-backend = "setuptools.build_meta"' )
659
+ self .newline (1 )
660
+
661
+ # project metainformation
662
+ self .write ('[project]' )
663
+ self .newline (1 )
664
+ self .write (f'name = "{ self .package_name } "' )
665
+ self .newline (1 )
666
+ self .write ('authors = [{name = "%s"}]' % (self .modelcomposite .description .Authors ))
667
+ self .newline (1 )
668
+ self .write (f'description="{ self .modelcomposite .description .Abstract } "' )
669
+ self .newline (1 )
670
+ self .write ('version="0.1"' )
671
+ self .newline (1 )
672
+
673
+ # project dependencies
674
+ self .write ('dependencies = ["pandas","numpy"]' )
675
+ self .newline (1 )
651
676
652
677
653
678
def newtype_func (type_ ):
0 commit comments