You can use boolean logic (e.g. AND/OR/NOT) for complex search queries. For more help and examples, see the search documentation.
Search by package name:
my-package
(implicit)
name:my-package
(explicit)
Search by package filename:
my-package.ext
(implicit)
filename:my-package.ext
(explicit)
Search by package tag:
latest
(implicit)
tag:latest
(explicit)
Search by package version:
1.0.0
(implicit)
version:1.0.0
(explicit)
prerelease:true
(prereleases)
prerelease:false
(no prereleases)
Search by package architecture:
architecture:x86_64
Search by package distribution:
distribution:el
Search by package license:
license:MIT
Search by package format:
format:deb
Search by package status:
status:in_progress
Search by package file checksum:
checksum:5afba
Search by package security status:
severity:critical
Search by package vulnerabilities:
vulnerabilities:>1
vulnerabilities:<1000
Search by # of package downloads:
downloads:>8
downloads:<100
Search by package type:
type:binary
type:source
Search by package size (bytes):
size:>50000
size:<10000
Search by dependency name/version:
dependency:log4j
dependency:log4j=1.0.0
dependency:log4j>1.0.0
Search by uploaded date:
uploaded:>"1 day ago"
uploaded:<"August 14, 2022 EST"
Search by entitlement token (identifier):
entitlement:3lKPVJPosCsY
Search by policy violation:
policy_violated:true
deny_policy_violated:true
license_policy_violated:true
vulnerability_policy_violated:true
Search by repository:
repository:repo-name
Search queries for all Debian-specific (and related) package types
Search by component:
deb_component:unstable
Search queries for all Maven-specific (and related) package types
Search by group ID:
maven_group_id:org.apache
Search queries for all Docker-specific (and related) package types
Search by image digest:
docker_image_digest:sha256:7c5..6d4
(full hashref only)
Search by layer digest:
docker_layer_digest:sha256:4c4..ae4
(full hashref only)
Field type modifiers (depending on the type, you can influence behaviour)
For all queries, you can use:
~foo
for negation
For string queries, you can use:
^foo
to anchor to start of term
foo$
to anchor to end of term
foo*bar
for fuzzy matching
For number/date or version queries, you can use:
>foo
for values greater than
>=foo
for values greater / equal
<foo
for values less than
<=foo
for values less / equal
Need a secure and centralised artifact repository to deliver Alpine,
Cargo,
CocoaPods,
Composer,
Conan,
Conda,
CRAN,
Dart,
Debian,
Docker,
Go,
Helm,
Hex,
LuaRocks,
Maven,
npm,
NuGet,
P2,
Python,
RedHat,
Ruby,
Swift,
Terraform,
Vagrant,
Raw & More packages?
Cloudsmith is the new standard in Package / Artifact Management and Software Distribution.
With support for all major package formats, you can trust us to manage your software supply chain.
pyrsistent 0.15.3
One-liner (summary)
Description
Pyrsistent
Pyrsistent is a number of persistent collections (by some referred to as functional data structures). Persistent in the sense that they are immutable.
All methods on a data structure that would normally mutate it instead return a new copy of the structure containing the requested updates. The original structure is left untouched.
This will simplify the reasoning about what a program does since no hidden side effects ever can take place to these data structures. You can rest assured that the object you hold a reference to will remain the same throughout its lifetime and need not worry that somewhere five stack levels below you in the darkest corner of your application someone has decided to remove that element that you expected to be there.
Pyrsistent is influenced by persistent data structures such as those found in the standard library of Clojure. The data structures are designed to share common elements through path copying. It aims at taking these concepts and make them as pythonic as possible so that they can be easily integrated into any python program without hassle.
If you want to go all in on persistent data structures and use literal syntax to define them in your code rather than function calls check out Pyrthon.
Examples
The collection types and key features currently implemented are:
- PVector, similar to a python list
- PMap, similar to dict
- PSet_, similar to set
- PRecord_, a PMap on steroids with fixed fields, optional type and invariant checking and much more
- PClass_, a Python class fixed fields, optional type and invariant checking and much more
- `Checked collections`_, PVector, PMap and PSet with optional type and invariance checks and more
- PBag, similar to collections.Counter
- PList, a classic singly linked list
- PDeque, similar to collections.deque
- Immutable object type (immutable) built on the named tuple
- freeze_ and thaw_ functions to convert between pythons standard collections and pyrsistent collections.
- Flexible transformations_ of arbitrarily complex structures built from PMaps and PVectors.
Below are examples of common usage patterns for some of the structures and features. More information and full documentation for all data structures is available in the documentation.
PVector
With full support for the Sequence protocol PVector is meant as a drop in replacement to the built in list from a readers point of view. Write operations of course differ since no in place mutation is done but naming should be in line with corresponding operations on the built in list.
Support for the Hashable protocol also means that it can be used as key in Mappings.
Appends are amortized O(1). Random access and insert is log32(n) where n is the size of the vector.
>>> from pyrsistent import v, pvector # No mutation of vectors once created, instead they # are "evolved" leaving the original untouched >>> v1 = v(1, 2, 3) >>> v2 = v1.append(4) >>> v3 = v2.set(1, 5) >>> v1 pvector([1, 2, 3]) >>> v2 pvector([1, 2, 3, 4]) >>> v3 pvector([1, 5, 3, 4]) # Random access and slicing >>> v3[1] 5 >>> v3[1:3] pvector([5, 3]) # Iteration >>> list(x + 1 for x in v3) [2, 6, 4, 5] >>> pvector(2 * x for x in range(3)) pvector([0, 2, 4])
PMap
Wi
Status | Completed |
---|---|
Checksum (MD5) | 92218c2c7b24665b61459331c86a7ced |
Checksum (SHA-1) | 4bd5a89e8d5fee872df851aa5eec045186dfb952 |
Checksum (SHA-256) | d763d6fcf1e99e16a53aee8f0173f722a58f232067fe596cb3941c32a6b6cda9 |
Checksum (SHA-512) | be0522ea6c80f52461869ef1c88fa3875060af146b2ae52c080b3139c6ca189ca0… |
GPG Signature | |
Storage Region | Dublin, Ireland |
Type | Binary (contains binaries and binary artifacts) |
Uploaded At | 4 years, 10 months ago |
Uploaded By | |
Slug Id | pyrsistent-0153-cp37-cp37m-linux_x86_64whl |
Unique Id | jH7GwApfnafq |
Version (Raw) | 0.15.3 |
Version (Parsed) |
|
extended metadata | |
Abi | cp37m |
Classifiers | Intended Audience :: Developers | License :: OSI Approved :: MIT License | Operating System :: OS Independent | Programming Language :: Python :: 2.7 | Programming Language :: Python :: 3.5 | Programming Language :: Python :: 3.6 | Programming Language :: Python :: 3.7 | Programming Language :: Python :: Implementation :: PyPy |
Homepage URL | http://github.com/tobgu/pyrsistent/ |
Metadata Version | 2.1 |
Py Filetype | bdist_wheel |
Py Version | cp37 |
pkg | pyrsistent-0.15.3-cp37-cp37m-li… |
116
129.2 KB |
md5 | sha1 | sha256 | sha512 |
This package has 30 files/directories.
pyrsistent |
116 |
Security Scanning:
You can't see this because your subscription doesn't include this feature, sorry!
With Security Scanning, Cloudsmith will scan your artifacts for vulnerabilities when they're uploaded. These are then presented to you via the UI and the API, so that you can build rules into your CI/CD pipelines to decide how to handle low, medium, high and critical software vulnerabilities.
If you'd like to trial or ask about the Security Scanning feature, just ask us. We'll be happy to help!
Last scanned
9 hours ago
Scan result
Vulnerable
Vulnerability count
3
Max. severity
MediumTarget: | ||
MEDIUM |
CVE-6697-10724: library: vulnerability titlePackage Name: package_name Installed Version: 1.7.90 Fixed Version: 2.10.74 References: hartman.net hodge.info www.taylor.org |
|
MEDIUM |
CVE-4302-28073: library: vulnerability titlePackage Name: package_name Installed Version: 1.8.61 Fixed Version: 2.1.39 References: johnson.org www.chapman-carter.info www.lara-reid.com |
|
LOW |
CVE-1639-37338: library: vulnerability titlePackage Name: package_name Installed Version: 1.9.93 Fixed Version: 2.10.88 References: www.armstrong.biz www.alvarez.com jimenez.com |
You can embed a badge in another website that shows this or the latest version of this package.
To embed the badge for this specific package version, use the following:
[![This version of 'pyrsistent' @ Cloudsmith](https://api-prd.cloudsmith.io/v1/badges/version/agriconnect/python-musl/python/pyrsistent/0.15.3/a=linux_x86_64;xa=cp37m;xf=bdist_wheel;xn=pyrsistent;xv=cp37/?render=true)](https://cloudsmith.io/~agriconnect/repos/python-musl/packages/detail/python/pyrsistent/0.15.3/a=linux_x86_64;xa=cp37m;xf=bdist_wheel;xn=pyrsistent;xv=cp37/)
|This version of 'pyrsistent' @ Cloudsmith|
.. |This version of 'pyrsistent' @ Cloudsmith| image:: https://api-prd.cloudsmith.io/v1/badges/version/agriconnect/python-musl/python/pyrsistent/0.15.3/a=linux_x86_64;xa=cp37m;xf=bdist_wheel;xn=pyrsistent;xv=cp37/?render=true
:target: https://cloudsmith.io/~agriconnect/repos/python-musl/packages/detail/python/pyrsistent/0.15.3/a=linux_x86_64;xa=cp37m;xf=bdist_wheel;xn=pyrsistent;xv=cp37/
image::https://api-prd.cloudsmith.io/v1/badges/version/agriconnect/python-musl/python/pyrsistent/0.15.3/a=linux_x86_64;xa=cp37m;xf=bdist_wheel;xn=pyrsistent;xv=cp37/?render=true[link="https://cloudsmith.io/~agriconnect/repos/python-musl/packages/detail/python/pyrsistent/0.15.3/a=linux_x86_64;xa=cp37m;xf=bdist_wheel;xn=pyrsistent;xv=cp37/",title="This version of 'pyrsistent' @ Cloudsmith"]
<a href="https://cloudsmith.io/~agriconnect/repos/python-musl/packages/detail/python/pyrsistent/0.15.3/a=linux_x86_64;xa=cp37m;xf=bdist_wheel;xn=pyrsistent;xv=cp37/"><img src="https://api-prd.cloudsmith.io/v1/badges/version/agriconnect/python-musl/python/pyrsistent/0.15.3/a=linux_x86_64;xa=cp37m;xf=bdist_wheel;xn=pyrsistent;xv=cp37/?render=true" alt="This version of 'pyrsistent' @ Cloudsmith" /></a>
rendered as:
To embed the badge for the latest package version, use the following:
[![Latest version of 'pyrsistent' @ Cloudsmith](https://api-prd.cloudsmith.io/v1/badges/version/agriconnect/python-musl/python/pyrsistent/latest/a=linux_x86_64;xa=cp37m;xf=bdist_wheel;xn=pyrsistent;xv=cp37/?render=true&show_latest=true)](https://cloudsmith.io/~agriconnect/repos/python-musl/packages/detail/python/pyrsistent/latest/a=linux_x86_64;xa=cp37m;xf=bdist_wheel;xn=pyrsistent;xv=cp37/)
|Latest version of 'pyrsistent' @ Cloudsmith|
.. |Latest version of 'pyrsistent' @ Cloudsmith| image:: https://api-prd.cloudsmith.io/v1/badges/version/agriconnect/python-musl/python/pyrsistent/latest/a=linux_x86_64;xa=cp37m;xf=bdist_wheel;xn=pyrsistent;xv=cp37/?render=true&show_latest=true
:target: https://cloudsmith.io/~agriconnect/repos/python-musl/packages/detail/python/pyrsistent/latest/a=linux_x86_64;xa=cp37m;xf=bdist_wheel;xn=pyrsistent;xv=cp37/
image::https://api-prd.cloudsmith.io/v1/badges/version/agriconnect/python-musl/python/pyrsistent/latest/a=linux_x86_64;xa=cp37m;xf=bdist_wheel;xn=pyrsistent;xv=cp37/?render=true&show_latest=true[link="https://cloudsmith.io/~agriconnect/repos/python-musl/packages/detail/python/pyrsistent/latest/a=linux_x86_64;xa=cp37m;xf=bdist_wheel;xn=pyrsistent;xv=cp37/",title="Latest version of 'pyrsistent' @ Cloudsmith"]
<a href="https://cloudsmith.io/~agriconnect/repos/python-musl/packages/detail/python/pyrsistent/latest/a=linux_x86_64;xa=cp37m;xf=bdist_wheel;xn=pyrsistent;xv=cp37/"><img src="https://api-prd.cloudsmith.io/v1/badges/version/agriconnect/python-musl/python/pyrsistent/latest/a=linux_x86_64;xa=cp37m;xf=bdist_wheel;xn=pyrsistent;xv=cp37/?render=true&show_latest=true" alt="Latest version of 'pyrsistent' @ Cloudsmith" /></a>
rendered as:
These instructions assume you have setup the repository first (or read it).
To install/use pyrsistent @ version 0.15.3 ...
pip install 'pyrsistent==0.15.3'
You can also install the latest version of this package:
pip install --upgrade 'pyrsistent'
If necessary, you can specify the repository directly:
pip install \
--index-url=https://dl.cloudsmith.io/public/agriconnect/python-musl/python/simple/ \
pyrsistent==0.15.3
If you've got a project requirements.txt file, you can specify this as a dependency:
--index-url=https://dl.cloudsmith.io/public/agriconnect/python-musl/python/simple/
pyrsistent==0.15.3
In addition, you can use this repository as an extra index url. However, please read our documentation on this parameter before using it. For example in a requirements.txt file:
--extra-index-url=https://dl.cloudsmith.io/public/agriconnect/python-musl/python/simple/
pyrsistent==0.15.3