PyPartMC 2.0.0rc5__cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl → 2.0.0rc6__cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.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.

Potentially problematic release.


This version of PyPartMC might be problematic. Click here for more details.

PyPartMC/__init__.py CHANGED
@@ -4,6 +4,7 @@
4
4
 
5
5
  # pylint: disable=invalid-name
6
6
  import importlib.metadata
7
+ import inspect
7
8
 
8
9
  # pylint: disable=invalid-name,wrong-import-position
9
10
  import os
@@ -79,8 +80,29 @@ from ._PyPartMC import ( # pylint: disable=import-error
79
80
  __versions_of_build_time_dependencies__,
80
81
  )
81
82
 
83
+ # Hacky workaround for missing docs in pdoc auto-generated documentation.
84
+ # After the switch to nanobind, the docs became empty despite "__doc__" being
85
+ # accessible in all of PyPartMC's objects. The code below manually populates
86
+ # the "__all__" atrribute of the package. Additionally, functions in the generated
87
+ # docs would be listed as nanobind objects with no additional documentation.
88
+ # To solve that, dummy functions of the same name are created, and their "__doc__"
89
+ # attribute is manually set to the "original" objects' "__doc__"
90
+ if os.getenv("PDOC_GENERATE_PYPARTMC_DOCS") == "1":
91
+ all_items = []
92
+ for name, obj in inspect.getmembers(
93
+ _PyPartMC # pylint: disable=undefined-variable
94
+ ):
95
+ if callable(obj):
96
+ if not inspect.isclass(obj):
97
+ exec(name + " = lambda : 0") # pylint: disable=exec-used
98
+ temp = "_PyPartMC." + name + ".__doc__"
99
+ setattr(eval(name), "__doc__", eval(temp)) # pylint: disable=eval-used
100
+ all_items.append(name)
101
+
102
+ __all__ = tuple([*all_items, "si"])
103
+
82
104
  __version__ = importlib.metadata.version(__package__)
83
105
 
84
- # walkaround for MATLAB bindings
106
+ # workaround for MATLAB bindings
85
107
  # pylint: disable=undefined-variable
86
108
  setattr(nanobind, "nb_type_0", type(_PyPartMC.AeroData))
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: PyPartMC
3
- Version: 2.0.0rc5
3
+ Version: 2.0.0rc6
4
4
  Summary: Python interface to PartMC
5
5
  Author-Email: "https://github.com/open-atmos/PyPartMC/graphs/contributors" <nriemer@illinois.edu>
6
6
  License-Expression: GPL-3.0
@@ -288,7 +288,7 @@ PyPartMC is used within the [test workflow of the PySDM project](https://github.
288
288
  ## Other packages with relevant feature scope
289
289
 
290
290
  - [aerosolGDEFoam](https://openaerosol.sourceforge.io/): OpenFOAM CFD-coupled aerosol dynamics including nucleation, coagulation, and surface growth
291
- - [AIOMFAC and AIOMFAC-web](http://www.aiomfac.caltech.edu/): Fortran-implemented aerosol thermodynamic model for calculation of activity coefficients in organic-inorganic mixtures – from simple binary solutions to complex multicomponent systems
291
+ - [AIOMFAC and AIOMFAC-web](http://web.archive.org/web/20250730204937/https://www.aiomfac.caltech.edu/): Fortran-implemented aerosol thermodynamic model for calculation of activity coefficients in organic-inorganic mixtures – from simple binary solutions to complex multicomponent systems
292
292
  - [DustPy](https://stammler.github.io/dustpy/): Python package for modelling dust evolution in protoplanetary disks (differences: focus on astrophysical applications vs. atmospheric aerosol)
293
293
  - [multilayerpy](https://github.com/tintin554/multilayerpy): kinetic multi-layer model for aerosol particles and films
294
294
  - [PyBox](https://pybox.readthedocs.io): aerosol simulation model featuring gas and particle chamistry (differences: PyBox focuses on chemical mechanisms; PyPartMC is an interface to PartMC which focuses on physics - e.g., collisions of aerosol particles - while chemical processes are handled with external software, e.g., CAMP or MOSAIC)
@@ -0,0 +1,7 @@
1
+ PyPartMC/_PyPartMC.cpython-39-aarch64-linux-gnu.so,sha256=zy0P6KhbuRQO8JwptCYXio5oy5956BDffOjMOuVu6Ss,8962377
2
+ PyPartMC/__init__.py,sha256=iVz2ccwCEvjPu70_Uv0IKVC_fqYO248vWLunJ75ovok,3438
3
+ pypartmc.libs/libgfortran-daac5196.so.5.0.0,sha256=c7Btx9EsXU43_oumeqmrRAu3lOea3_WK6JSz1FfnG9c,1484449
4
+ pypartmc-2.0.0rc6.dist-info/METADATA,sha256=94HCts0iFfrn9u_An5-VJ697MY56vrS36x4LcRc_ApI,27640
5
+ pypartmc-2.0.0rc6.dist-info/WHEEL,sha256=Epn5Kd1WUaz-YUaUnwP8knjZgX7LE6k2kpwBLBh0dA4,154
6
+ pypartmc-2.0.0rc6.dist-info/RECORD,,
7
+ pypartmc-2.0.0rc6.dist-info/licenses/LICENSE,sha256=OXLcl0T2SZ8Pmy2_dmlvKuetivmyPd5m1q-Gyd-zaYY,35149
@@ -1,7 +0,0 @@
1
- PyPartMC/_PyPartMC.cpython-39-aarch64-linux-gnu.so,sha256=ua6W9Ilia4XYZK4aj8UyCrZCWSFH6XJIut37Dj4qcj8,8962377
2
- PyPartMC/__init__.py,sha256=e1ngb8Sodfqneb__Vmf_K5eIOoOY11gvrSHmlIZbruM,2349
3
- pypartmc.libs/libgfortran-daac5196.so.5.0.0,sha256=c7Btx9EsXU43_oumeqmrRAu3lOea3_WK6JSz1FfnG9c,1484449
4
- pypartmc-2.0.0rc5.dist-info/METADATA,sha256=WqRG5fZFB_rJnWZIb9B8VDPFRCICI85dCIHTb3-g7Ac,27597
5
- pypartmc-2.0.0rc5.dist-info/WHEEL,sha256=Epn5Kd1WUaz-YUaUnwP8knjZgX7LE6k2kpwBLBh0dA4,154
6
- pypartmc-2.0.0rc5.dist-info/RECORD,,
7
- pypartmc-2.0.0rc5.dist-info/licenses/LICENSE,sha256=OXLcl0T2SZ8Pmy2_dmlvKuetivmyPd5m1q-Gyd-zaYY,35149