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.1). 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.1 (2026-10-28)
    • 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); the rotations of the von Karman terms take the sign of the rotations of the normal, beta_x = -w,x, results unchanged
    • 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.1

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.1
File Size Uploaded Provenance Actions
panels-0.14.1.tar.gz 7.8 MB Without provenance Details for panels-0.14.1.tar.gz

Built distributions (wheels)

Table of built distributions (wheels) for panels 0.14.1
File Actions
panels-0.14.1-cp314-cp314-win_amd64.whl CPython 3.14 CPython 3.14 Windows x86-64 Details for panels-0.14.1-cp314-cp314-win_amd64.whl
panels-0.14.1-cp314-cp314-pyemscripten_2026_0_wasm32.whl CPython 3.14 CPython 3.14 PyEmscripten 2026.0+ WebAssembly Details for panels-0.14.1-cp314-cp314-pyemscripten_2026_0_wasm32.whl
panels-0.14.1-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.1-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
panels-0.14.1-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.1-cp314-cp314-macosx_10_15_universal2.whl
panels-0.14.1-cp313-cp313-win_amd64.whl CPython 3.13 CPython 3.13 Windows x86-64 Details for panels-0.14.1-cp313-cp313-win_amd64.whl
panels-0.14.1-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.1-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
panels-0.14.1-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.1-cp313-cp313-macosx_10_13_universal2.whl
panels-0.14.1-cp312-cp312-win_amd64.whl CPython 3.12 CPython 3.12 Windows x86-64 Details for panels-0.14.1-cp312-cp312-win_amd64.whl
panels-0.14.1-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.28+ x86-64, Linux glibc 2.17+ x86-64 Details for panels-0.14.1-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
panels-0.14.1-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.1-cp312-cp312-macosx_10_13_universal2.whl
panels-0.14.1-cp311-cp311-win_amd64.whl CPython 3.11 CPython 3.11 Windows x86-64 Details for panels-0.14.1-cp311-cp311-win_amd64.whl
panels-0.14.1-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.1-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
panels-0.14.1-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.1-cp311-cp311-macosx_10_9_universal2.whl
panels-0.14.1-cp310-cp310-win_amd64.whl CPython 3.10 CPython 3.10 Windows x86-64 Details for panels-0.14.1-cp310-cp310-win_amd64.whl
panels-0.14.1-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.1-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
panels-0.14.1-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.1-cp310-cp310-macosx_10_9_universal2.whl

Total release size: 360.4 MB

Release files / panels-0.14.1.tar.gz

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

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

Download URL panels-0.14.1-cp314-cp314-win_amd64.whl
Size 12.6 MB
Tags CPython 3.14 Windows x86-64
SHA-256 checksum
How to use checksums
55277065d8486911dc73be0a3983137d2e2aa49c400abda2d29ea2889b4e3610
BLAKE2b-256 checksum
How to use checksums
6a76161b1e5bbf53d8dee527d8816e385c1af05ccc6c10176ca73931da639397
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.1-cp314-cp314-pyemscripten_2026_0_wasm32.whl

Download URL panels-0.14.1-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
517f8e04d7ca3ba76168e18dc9971ad53ceac8a2a40853322f52b1170a6c06f2
BLAKE2b-256 checksum
How to use checksums
67de70d04f160da2d8e5e50c38231bdc8e428beaacb8fd50bc55793adceb04a5
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.1-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl

Download URL panels-0.14.1-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
4d11790f87720a7fecb427f8646c32aceff7d280281372c20f0a0bee49a75f19
BLAKE2b-256 checksum
How to use checksums
ca2af97dae4049c5b8f3a43843dec7d6d6b5da6baa1c78487bd3aa6b6b1f0219
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.1-cp314-cp314-macosx_10_15_universal2.whl

Download URL panels-0.14.1-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
d131a1bf52723ca985a8c566d4b2c9c7ba0cb3f6ef7f8600568c29bd828a0dcb
BLAKE2b-256 checksum
How to use checksums
1a90f8fa00cdaa7f5ae5bb040238facfd00a3c061e70e1a8082994096384d380
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.1-cp313-cp313-win_amd64.whl

Download URL panels-0.14.1-cp313-cp313-win_amd64.whl
Size 12.3 MB
Tags CPython 3.13 Windows x86-64
SHA-256 checksum
How to use checksums
b2ccaf621aafa891cd6e2945199c46bc9f8d31cfcac327381b8d2865f6233ead
BLAKE2b-256 checksum
How to use checksums
ed622c5db4e7568f022603ea9a10a3a9900fca70dbbd25c7ebed8edba0413ace
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.1-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl

Download URL panels-0.14.1-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
7c0d59e360b5c266189c993e9075ba7fec4411d0221719a4c3f7192198f80c58
BLAKE2b-256 checksum
How to use checksums
5df694c957cb0c9ab3138865082a0d4fa04ecf856edc6b526d3e4742c4b721d6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.17

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

Download URL panels-0.14.1-cp313-cp313-macosx_10_13_universal2.whl
Size 17.8 MB
Tags CPython 3.13 macOS 10.13+ universal2 (ARM64, x86-64)
SHA-256 checksum
How to use checksums
352bdd4cdaafd1800d4772369d6864db808f65e8d123f0c23be957ab0f0b1777
BLAKE2b-256 checksum
How to use checksums
f69038f5acf75b549ece9e610f7d744228ea4c5455d984def7b4b939f8520e54
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.1-cp312-cp312-win_amd64.whl

Download URL panels-0.14.1-cp312-cp312-win_amd64.whl
Size 12.3 MB
Tags CPython 3.12 Windows x86-64
SHA-256 checksum
How to use checksums
0c4ca564e11ea4fc28953b1e4772e981b0335d42cc14da45bc24029e4f9d9573
BLAKE2b-256 checksum
How to use checksums
d54bd1409718ff35b645d09071cdbed61005a3fa2b761356fbefed3590796acb
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.1-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl

Download URL panels-0.14.1-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
1c3dc3e3c8d1e32515a0290d222f7f5440ed6367c7ac425bc4e075ae6f1273dc
BLAKE2b-256 checksum
How to use checksums
ad59ffb02b0e852f8f5f45695bc0cf320a386b9f29425fd0ca7a8918cf083543
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.1-cp312-cp312-macosx_10_13_universal2.whl

Download URL panels-0.14.1-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
0c64e0ba6728aed67cfeb8fcedb88b653866d0a4a6fece32b6b0f431c1f2cd0c
BLAKE2b-256 checksum
How to use checksums
8e0032107d733ae291e8532700b23e9d493586dbe3bd064b95d670ad2a6e921c
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.1-cp311-cp311-win_amd64.whl

Download URL panels-0.14.1-cp311-cp311-win_amd64.whl
Size 12.4 MB
Tags CPython 3.11 Windows x86-64
SHA-256 checksum
How to use checksums
d9b4b558f9208cf649d6643cc441924c3683daf8b97dda9ffa479d8d232c4a63
BLAKE2b-256 checksum
How to use checksums
52a1f11ef24f999c377d8fd2c0aaecf8d985d11651547b8e7b3f183d8b7d4926
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.1-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl

Download URL panels-0.14.1-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
a63f0252a99ca87edc861050e9a8b93cbfff0a1294e9db9bd425af452fe1a0e5
BLAKE2b-256 checksum
How to use checksums
48253d9a1bc2d48a331cb9d7751def9b17d020ee308d31c96d2cc0102677aa92
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.1-cp311-cp311-macosx_10_9_universal2.whl

Download URL panels-0.14.1-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
13b2157eff283c7e8f4568d476d34766ef726e67f15cd7fea6739ae6be9c6073
BLAKE2b-256 checksum
How to use checksums
846ce6da82014cc4894f2bf466d736f79c0efffdeef0f40f0ab641c8b611877f
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.1-cp310-cp310-win_amd64.whl

Download URL panels-0.14.1-cp310-cp310-win_amd64.whl
Size 12.4 MB
Tags CPython 3.10 Windows x86-64
SHA-256 checksum
How to use checksums
842257dff50dc814cd5ebef7c87234469ced3028f496bf05880d6794dcc76330
BLAKE2b-256 checksum
How to use checksums
6151454d922e366c08d44f98468ddcf914d713f7132bfd10afda79a9ab92769a
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.1-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl

Download URL panels-0.14.1-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
6661d655fb9e3828633056484bdbd540a3e573bb61a7ca6ae56f96e78ed86634
BLAKE2b-256 checksum
How to use checksums
22fce7cf36896d0fb4393d06e6cc8db31c81ecc9714f25527257cdcda6b0bd7e
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.1-cp310-cp310-macosx_10_9_universal2.whl

Download URL panels-0.14.1-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
3ce76469fe58ecd592d80b90e148986a8ba5c672906715698d0f05cb2b17bacc
BLAKE2b-256 checksum
How to use checksums
69143d7baf283b382ed6dbfa1816a700980faf86284df7c3a1e2d89860074152
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.1

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.1 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