Skip to main content

Github Actions status:

Actions Status

Coverage status:

Codecov Status

Semi-analytical methods for plates, shells and stiffened panels

  • Linear and non-linear static analyses, with field outputs of displacements, strains and stresses
  • Linear buckling
  • Vibration, with or without pre-stress
  • Panel flutter using the piston theory
  • Geometrically non-linear static analyses (postbuckling) using the Newton-Raphson method or the arc-length methods of Riks and Crisfield, with the product of the tangent stiffness matrix by a vector available without assembly
  • Dead or follower (hydrostatic) pressure loads, with the unsymmetric load stiffness of the follower pressure
  • Multi-domain assemblies of plates, cylindrical shells, cylinders, stiffened panels, with the domains connected exactly with the null-space method, the default, or by penalty stiffnesses. Debonding defects or cohesive zone can be simulated
  • Prescribed displacements and rotations imposed exactly with the null-space method, MultiDomain(..., pd_method='null-space'), for displacement control in linear static, linear buckling and geometrically non-linear (Newton-Raphson, Riks, Crisfield) analyses, with the reaction forces; or by penalty stiffnesses, the default
  • CLPT, FSDT and TSDT kinematics for plates and cylindrical shells
  • Donnell and Sanders-Koiter kinematics for cylindrical shells

The structural matrices are solved with structsolve.

Citing this library

Saullo G. P. Castro, Nathan D'Souza. (2026). Semi-analytical methods for plates, shells and stiffened panels (Version 0.14.0). Zenodo. DOI: https://doi.org/10.5281/zenodo.2541522.

Documentation

The documentation is available on: https://saullocastro.github.io/panels.

Installation

To get the latest version:

python -m pip install panels

Running in the browser with Pyodide

A WebAssembly wheel is published on PyPI for Pyodide 314 (CPython 3.14), such that panels runs in the browser, e.g. in JupyterLite or in a web page with Pyodide. NumPy, SciPy and matplotlib come with Pyodide, and micropip installs composites and structsolve from PyPI:

import micropip
await micropip.install("panels")

import io
from structsolve import lb
from panels.shell import Shell, load

s = Shell(a=0.6, b=0.4, stack=[0, 45, -45, 90], plyt=0.125e-3,
          laminaprop=(142.5e9, 8.7e9, 0.28, 5.1e9, 5.1e9, 3.0e9), m=10, n=10)
s.Nxx = -1.
eigvals, eigvecs = lb(s.calc_kC(), s.calc_kG(), silent=True)
print('critical load: Nxx = %1.2f N/m' % -eigvals[0])
s.results['eigvals'] = eigvals
s.results['eigvecs'] = eigvecs

# saving to memory, since a web page has no file system
buf = io.BytesIO()
s.save(buf)
data = buf.getvalue()

# offering the file for download
from js import Blob, Object, URL, document
from pyodide.ffi import to_js
blob = Blob.new(to_js([data]), to_js({'type': 'application/zip'},
                                     dict_converter=Object.fromEntries))
link = document.createElement('a')
link.href = URL.createObjectURL(blob)
link.download = 'plate.shell.zip'
link.click()

# loading the bytes back, e.g. from a file uploaded by the user
s2 = load(io.BytesIO(data))

In Pyodide the field outputs run serially, without OpenMP.

Saving and loading

Shell, StiffPanelBay and MultiDomain are saved with save() to a zip file with the inputs in JSON and the arrays, such as the results, in NumPy's .npy format, see panels.json_io. The files are independent of the Python version, readable outside Python and safe to load from untrusted sources, unlike pickle:

from panels.shell import load
s.name = 'plate'
s.save()              # writes plate.shell.zip
s2 = load('plate')

The pickle files saved by older versions are no longer loaded, since a pickle file can execute arbitrary code; one from a trusted source can be converted by loading it with pickle.load() and saving the object again.

History

See CHANGELOG.md for the details of each version.

  • version 0.14.0 (2026-10-26)
    • BUG: the mass matrices used shell.rho in the closed-form kernels and the opposite sign of the laminate offset; they now use the moments of the density of the laminate, exact for per-ply densities
    • BUG: TSDT with a laminate offset, the transverse shear vanishes at the faces of the laminate, and the connections tie the rotations at the common reference surface
    • BUG: BladeStiff1D torsion with GJ = 4 bf D66 and coupling S1 with the condensed stiffness about the mid-plane of the flange; StiffPanelBay.calc_kA no longer skew-symmetrizes; one load per panel in the cylinder assembly functions; MultiDomain.force_out_plane and MultiDomain.plot fixed
    • Documentation of the theory in the docstrings, new page on the TSDT with an offset, validation notebook of the snap-through of a shallow circular arch (Fung and Kaplan, 1952)
    • Requires composites>=0.10.0 and structsolve>=0.9.3, whose residual is R = F_int - F_ext, as in the documentation of panels, and whose arc-length steps no longer double back along the path (since 0.9.2)
  • version 0.13.11 (2026-10-16)
    • BUG: the analytical constitutive stiffness matrix of the CLPT models ignored force_orthotropic_laminate, inconsistently with the internal forces and the numerical matrices
    • Shell.ABD is calculated from the laminate and read-only; new attribute Shell.ABDnxny for a stiffness that is not that of the laminate, constant or one matrix per integration point, used by all the kernels, also within a MultiDomain, and by Shell.stress(), and checked to have symmetric blocks as any laminate; new Shell.integration_points()
    • Documentation: the derivation of the tangent stiffness matrix of the CLPT models with Donnell kinematics, formerly a LaTeX file, is part of the theory page of the tangent stiffness
    • Shell.calc_kTv() and MultiDomain.calc_kTv(): product of the tangent stiffness matrix by a vector without assembling it, for all the models, at the cost of one evaluation of the internal forces; used for the displacement control with prescribed displacements imposed exactly
    • The numerically integrated kernels evaluate the approximation functions once per integration point instead of in their innermost loops, with identical results: the non-linear matrices, the connections, the cohesive zone and the stiffeners are assembled several times faster
    • Cohesive zone 'SB_TSL': rules of the discretisation of the cohesive domain, tsl_resolution(), tsl_margin() and tsl_discretization(), and a warning when the cohesive domain is under-resolved; the decay rate of the opening is (k_o (1/D11_1 + 1/D11_2)/4)**0.25, (k_o/(2 D11))**0.25 for the symmetric DCB (the tag 0.13.9 used the rate of one panel on a rigid foundation, (k_o/(4 D11))**0.25), and the margin ahead of the crack front is 3 l_cz + 8/lambda
    • No upper limit for the number of Gauss-Legendre points of MultiDomain.calc_results() and MultiDomain.force()
    • calc_kw_tsl() requires k_i, tau_o and G1c
    • Maintenance: .gitignore without the runs of thesis_timing.py
    • Requires structsolve>=0.8.0
  • version 0.12.0 (2026-10-14)
    • Prescribed displacements imposed exactly with the null-space method, MultiDomain(..., pd_method='null-space'), as inhomogeneous linear constraints c = Z c_r + c_p0 + lbd*c_p1: linear static, linear buckling, Newton-Raphson and arc-length analyses under displacement control, reactions MultiDomain.reaction_pd() and MultiDomain.reaction_resultant(), also for a single Shell; prescribed rotations; the penalty method remains the default
    • BUG: fkCld_xcte and fkCld_ycte placed the penalty stiffnesses of ku and kv at the rows and columns of w
    • Requires structsolve>=0.7.0
  • version 0.11.1 (2026-10-08)
    • Saving and loading in a zip file with JSON and NumPy arrays, replacing pickle: Shell.save(), StiffPanelBay.save(), MultiDomain.save(), also to io.BytesIO, and panels.json_io
    • Pyodide support: await micropip.install("panels") in the browser, and the whole test suite runs in Pyodide in GitHub Actions
    • Requires composites>=0.9.21 and structsolve>=0.6.1
  • version 0.11.0 (2026-10-07)
    • Follower (hydrostatic) pressure loads, Shell.add_pressure_load(..., follower=True), with the unsymmetric load stiffness kCfollower in Shell and MultiDomain
    • Theory documentation, verification tests and validation notebooks of the follower pressure
    • Interactive 3D plots of multi-domain assemblies with plotly, MultiDomain.plot3d()
    • Improved Cython and compiler flags
    • TSDT uses Laminate.Dts and Laminate.Fts, requires composites>=0.9.12 and structsolve>=0.5.0
  • version 0.9.0 (2026-09-24)
    • Null-space connection, exact, new default, as alternative to penalty-based connection
  • version 0.8.0 (2026-09-23)
    • FSDT and TSDT for plate and cylindrical shells
    • Sanders-Koiter for cylindrical shells
    • Shell and Multidomain connections supporting FSDT, TSDT and Sanders-Koiter kinematics
    • Many improvements in the documentation
    • New tests based on literature
    • BUG fixes on aerodynamic matrix of cylindrical shells and mass matrix of stiffener 1D
  • version 0.7.1 (2026-09-21)
    • Fixed the cohesive zone of the MultiDomain connection 'SB_TSL', which could not capture the onset of failure of the DCB: tangential separation with the rotation of each panel, tractions with the uncorrected separation and separation correction as in the thesis of D'Souza (2024)
    • Consistent tangent of the cohesive zone, MultiDomain.calc_kT_TSL(), and faster assembly of the 'SB_TSL' secant stiffness
    • The kernels fkCSB11_dmg, fkCSB12_dmg and fkCSB22_dmg take the distances dt and db from each mid-surface to the interface
    • Validation of the cohesive zone against mode I DCB results in the literature, in notebooks/, with a convergence study
    • Fixed StiffPanelBay.save() with composites>=0.9.0
  • version 0.6.21 (2026-09-18)
    • Fixed the mass of the base of BladeStiff2D, which was missing, and the section forces of MultiDomain.force(), which lacked the Jacobian
    • StiffPanelBay.calc_kA() sums the contribution of every panel, and calc_kA, calc_cA, calc_fext, save, get_size and uvw_stiffener of StiffPanelBay and Shell.calc_cA no longer raise
    • Shell.strain() and Shell.stress() work for a plate with r=None
    • Line coverage of the tests raised from 67 % to 92 %
    • Fixed StiffPanelBay.add_panel and the partial-domain integration of Shell.calc_kC, calc_kG and calc_kM
    • The limits Shell.x1, x2, y1, y2 of the integration domain default to None instead of the sentinels -1 and +1, which silently integrated the full domain for a limit at 1.0 and ignored a limit given on one side only; the old -1 now raises
    • Fixed the MultiDomain skin-base connections: the 'SB' penalty was a hard-coded mm-unit value, the top and bottom panels depended on their order in the assembly, and the connection dictionaries were modified
    • Penalty constants of each MultiDomain connection can be given with 'kt' and 'kr'
    • Reproduction of Stamatelos and Labeas with plate domains only in tests/multidomain/test_stamatelos_labeas_2023_multidomain.py, using every MultiDomain connection
    • Fixed the argument handling of the stiffness API: an invalid c or c_cte no longer reaches the nogil kernels, and a model that needs a radius raises instead of computing with r = 0
    • Reproduction of Stamatelos and Labeas (Computation 2023, 11, 110) in notebooks/stamatelos_labeas_2023.ipynb
    • Tangent stiffness matrix that is the exact derivative of the internal force vector, giving quadratic convergence to the Newton-Raphson method
    • Shell and MultiDomain can be passed directly to structsolve.Analysis, including the arc-length methods
    • Gauss-Legendre points and weights from scipy.special.roots_legendre
    • Modules of the models renamed without the _bardell suffix, and the legacy _bardell model names removed from panels.modelDB.db
    • Sphinx documentation with usage examples
  • versions 0.5.x
    • Damaged multidomain connections
  • up to version 0.3.x
    • Multidomain methods for pristine structures

License

Distributed under the 3-Clause BSD license (https://raw.github.com/saullocastro/panels/main/LICENSE).

Contact: S.G.P.Castro@tudelft.nl

Metadata

Release files for panels 0.14.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for panels 0.14.0
File Size Uploaded Provenance Actions
panels-0.14.0.tar.gz 7.8 MB Without provenance Details for panels-0.14.0.tar.gz

Built distributions (wheels)

Table of built distributions (wheels) for panels 0.14.0
File Actions
panels-0.14.0-cp314-cp314-win_amd64.whl CPython 3.14 CPython 3.14 Windows x86-64 Details for panels-0.14.0-cp314-cp314-win_amd64.whl
panels-0.14.0-cp314-cp314-pyemscripten_2026_0_wasm32.whl CPython 3.14 CPython 3.14 PyEmscripten 2026.0+ WebAssembly Details for panels-0.14.0-cp314-cp314-pyemscripten_2026_0_wasm32.whl
panels-0.14.0-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl CPython 3.14 CPython 3.14 Linux glibc 2.17+ x86-64, Linux glibc 2.28+ x86-64 Details for panels-0.14.0-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
panels-0.14.0-cp314-cp314-macosx_10_15_universal2.whl CPython 3.14 CPython 3.14 macOS 10.15+ universal2 (ARM64, x86-64) Details for panels-0.14.0-cp314-cp314-macosx_10_15_universal2.whl
panels-0.14.0-cp313-cp313-win_amd64.whl CPython 3.13 CPython 3.13 Windows x86-64 Details for panels-0.14.0-cp313-cp313-win_amd64.whl
panels-0.14.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl CPython 3.13 CPython 3.13 Linux glibc 2.17+ x86-64, Linux glibc 2.28+ x86-64 Details for panels-0.14.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
panels-0.14.0-cp313-cp313-macosx_10_13_universal2.whl CPython 3.13 CPython 3.13 macOS 10.13+ universal2 (ARM64, x86-64) Details for panels-0.14.0-cp313-cp313-macosx_10_13_universal2.whl
panels-0.14.0-cp312-cp312-win_amd64.whl CPython 3.12 CPython 3.12 Windows x86-64 Details for panels-0.14.0-cp312-cp312-win_amd64.whl
panels-0.14.0-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl CPython 3.12 CPython 3.12 Linux glibc 2.17+ x86-64, Linux glibc 2.28+ x86-64 Details for panels-0.14.0-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
panels-0.14.0-cp312-cp312-macosx_10_13_universal2.whl CPython 3.12 CPython 3.12 macOS 10.13+ universal2 (ARM64, x86-64) Details for panels-0.14.0-cp312-cp312-macosx_10_13_universal2.whl
panels-0.14.0-cp311-cp311-win_amd64.whl CPython 3.11 CPython 3.11 Windows x86-64 Details for panels-0.14.0-cp311-cp311-win_amd64.whl
panels-0.14.0-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl CPython 3.11 CPython 3.11 Linux glibc 2.17+ x86-64, Linux glibc 2.28+ x86-64 Details for panels-0.14.0-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
panels-0.14.0-cp311-cp311-macosx_10_9_universal2.whl CPython 3.11 CPython 3.11 macOS 10.9+ universal2 (ARM64, x86-64) Details for panels-0.14.0-cp311-cp311-macosx_10_9_universal2.whl
panels-0.14.0-cp310-cp310-win_amd64.whl CPython 3.10 CPython 3.10 Windows x86-64 Details for panels-0.14.0-cp310-cp310-win_amd64.whl
panels-0.14.0-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl CPython 3.10 CPython 3.10 Linux glibc 2.17+ x86-64, Linux glibc 2.28+ x86-64 Details for panels-0.14.0-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
panels-0.14.0-cp310-cp310-macosx_10_9_universal2.whl CPython 3.10 CPython 3.10 macOS 10.9+ universal2 (ARM64, x86-64) Details for panels-0.14.0-cp310-cp310-macosx_10_9_universal2.whl

Total release size: 360.4 MB

Release files / panels-0.14.0.tar.gz

Download URL panels-0.14.0.tar.gz
Size 7.8 MB
Tags Source
SHA-256 checksum
How to use checksums
f2b3580d20cda6d49f36bd22edfc2295ea1b43d3670b7dd8c50ef243acc997e5
BLAKE2b-256 checksum
How to use checksums
b3cc6774a21e6d1d61cb00dfc2e5dbca656c79b49c61214b67a6a49622730cce
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.16

Release files / panels-0.14.0-cp314-cp314-win_amd64.whl

Download URL panels-0.14.0-cp314-cp314-win_amd64.whl
Size 12.6 MB
Tags CPython 3.14 Windows x86-64
SHA-256 checksum
How to use checksums
85438df4fffd9d104fc0171aaa5949e074c636e5840c0d10f30170e4c0ffd8da
BLAKE2b-256 checksum
How to use checksums
e614a3f542e0a9711b74f40a30c3fabb8c22982ead08bf602098c5535b794cf1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.9

Release files / panels-0.14.0-cp314-cp314-pyemscripten_2026_0_wasm32.whl

Download URL panels-0.14.0-cp314-cp314-pyemscripten_2026_0_wasm32.whl
Size 10.4 MB
Tags CPython 3.14 PyEmscripten 2026.0+ WebAssembly
SHA-256 checksum
How to use checksums
5df931a52b148e3627cf490de77b672b11a308e04b3d9884c7b26434742a1f87
BLAKE2b-256 checksum
How to use checksums
aa4ee505b61b2ec02347c3852f73b6995e678b8f218938220468e582fb858be4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.8

Release files / panels-0.14.0-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl

Download URL panels-0.14.0-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Size 38.4 MB
Tags CPython 3.14 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
8d0c386f5ab1b8d8ca7ed1b437f9a26b2a4244bc56e106a0878590b4a43420ce
BLAKE2b-256 checksum
How to use checksums
b2336f2f51e560583183f78a0e992aa53f3769b0fc4963ecbdcf47f81c0d7edb
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.8

Release files / panels-0.14.0-cp314-cp314-macosx_10_15_universal2.whl

Download URL panels-0.14.0-cp314-cp314-macosx_10_15_universal2.whl
Size 18.0 MB
Tags CPython 3.14 macOS 10.15+ universal2 (ARM64, x86-64)
SHA-256 checksum
How to use checksums
cc12b43a84414fec316be81eea0fc002bd3f9e490b29f3e6dcd8f00b6f7c8789
BLAKE2b-256 checksum
How to use checksums
1c76627807335db0d4f87106426f1cad152a3a934bbfa43371996711a24c39ed
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.8

Release files / panels-0.14.0-cp313-cp313-win_amd64.whl

Download URL panels-0.14.0-cp313-cp313-win_amd64.whl
Size 12.3 MB
Tags CPython 3.13 Windows x86-64
SHA-256 checksum
How to use checksums
57937e977b4c522b558757b1cbfc8ae43de7b2613ac4c57077cd5c40921b7db7
BLAKE2b-256 checksum
How to use checksums
7c6ab098b7b23e159607b02bc0e769ceca5d456e0a4803e298da8515cc8f014c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.16

Release files / panels-0.14.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl

Download URL panels-0.14.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Size 38.5 MB
Tags CPython 3.13 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
69da7166dc5e4033982feb6ed94a0e6e57f4dbe52cdcdd0846c3c68f8d4babf4
BLAKE2b-256 checksum
How to use checksums
1ce9aebe074084394126705631ac978bc9baf685c234ea3e5cad5ea5915ee9d4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.16

Release files / panels-0.14.0-cp313-cp313-macosx_10_13_universal2.whl

Download URL panels-0.14.0-cp313-cp313-macosx_10_13_universal2.whl
Size 17.7 MB
Tags CPython 3.13 macOS 10.13+ universal2 (ARM64, x86-64)
SHA-256 checksum
How to use checksums
3472ec29ea67350f199d0408b9bc30cf4b4cbd0a5f262544e83379c804558caf
BLAKE2b-256 checksum
How to use checksums
afb305287f0dcc95c269f6ef79629788621ba092e1a78edc2a3f06678d49330a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.16

Release files / panels-0.14.0-cp312-cp312-win_amd64.whl

Download URL panels-0.14.0-cp312-cp312-win_amd64.whl
Size 12.3 MB
Tags CPython 3.12 Windows x86-64
SHA-256 checksum
How to use checksums
d750dc3db8ab083072ccbbaf1247118e528e71c6e9c659f65be3cb0400ab3058
BLAKE2b-256 checksum
How to use checksums
50880d6e77f8e8deaadaf38635ab52de7d771cfaba7d58e284a28bcbc42a7076
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.10

Release files / panels-0.14.0-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl

Download URL panels-0.14.0-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Size 38.6 MB
Tags CPython 3.12 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
e3c2b7c47be5f38393e970a27a76ef943c168a9bd9da45bbffd0725e74ebd688
BLAKE2b-256 checksum
How to use checksums
27f7c09f05353dfec78bc5d337d8d3c0f3aa80657e78930208d317382de8910d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.15

Release files / panels-0.14.0-cp312-cp312-macosx_10_13_universal2.whl

Download URL panels-0.14.0-cp312-cp312-macosx_10_13_universal2.whl
Size 17.5 MB
Tags CPython 3.12 macOS 10.13+ universal2 (ARM64, x86-64)
SHA-256 checksum
How to use checksums
bf49ca2fa4af3c006e6269d8c20201b3710688623efaf470989d69639a30c3a4
BLAKE2b-256 checksum
How to use checksums
302926f4e64d38b3817c593a22a181483c2ab4a3cc360955749578fa7d576260
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.10

Release files / panels-0.14.0-cp311-cp311-win_amd64.whl

Download URL panels-0.14.0-cp311-cp311-win_amd64.whl
Size 12.4 MB
Tags CPython 3.11 Windows x86-64
SHA-256 checksum
How to use checksums
0f76deb11d53200c5cdb49a999b0cba1dbd82489369ee6ca56999cabfe8c44d0
BLAKE2b-256 checksum
How to use checksums
6a24abf89160fd6dc8e9a67cf7c80c16a055191d261dcf7c6ab849c4e3c288e1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.11.9

Release files / panels-0.14.0-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl

Download URL panels-0.14.0-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Size 38.5 MB
Tags CPython 3.11 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
5cd3258f88bdcf8e06664b01bbd1787aaca886be832e33481110958bd6432db9
BLAKE2b-256 checksum
How to use checksums
9ed2519cc6b90a1dc0f441b6acf6802c745494c4b12d36cc62a54a86a4ac307d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.11.17

Release files / panels-0.14.0-cp311-cp311-macosx_10_9_universal2.whl

Download URL panels-0.14.0-cp311-cp311-macosx_10_9_universal2.whl
Size 17.7 MB
Tags CPython 3.11 macOS 10.9+ universal2 (ARM64, x86-64)
SHA-256 checksum
How to use checksums
c703f8f89e614128cf23e65ba13e27a1bf50616c7c97a159ad280d15bcf5da23
BLAKE2b-256 checksum
How to use checksums
4d1b15987a3c812408d01f65047d4eeff5de10f936976547230d94912ecfd2b9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.11.9

Release files / panels-0.14.0-cp310-cp310-win_amd64.whl

Download URL panels-0.14.0-cp310-cp310-win_amd64.whl
Size 12.4 MB
Tags CPython 3.10 Windows x86-64
SHA-256 checksum
How to use checksums
a51b8c5993e68d58137e55d2263e40d787ed88ab2a0ab83c1819f0464328cedb
BLAKE2b-256 checksum
How to use checksums
b8457e0737e9227d554b19d77d52dc7d32559596c66bf00f437611a1c9896c8f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.10.11

Release files / panels-0.14.0-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl

Download URL panels-0.14.0-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Size 37.4 MB
Tags CPython 3.10 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
7085bd761c43d720630cccfd6511f285f1d5aba61b26b0ba8e7c2cb8f4c391cc
BLAKE2b-256 checksum
How to use checksums
8feb017e736b5fc1ef8118bcbdaed941934af0934e229ffcfaeb238a7ad15aa3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.10.22

Release files / panels-0.14.0-cp310-cp310-macosx_10_9_universal2.whl

Download URL panels-0.14.0-cp310-cp310-macosx_10_9_universal2.whl
Size 17.8 MB
Tags CPython 3.10 macOS 10.9+ universal2 (ARM64, x86-64)
SHA-256 checksum
How to use checksums
800a1f028884299e6cc313faf981de341c6ea018eafbec884d39d460408d019c
BLAKE2b-256 checksum
How to use checksums
fcc26345939be76a2f18417343d400cf146a16d2d756651efac02fdfe8e02f9d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.10.11

Security for panels 0.14.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

0.14.0 This release

17 release files No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page