:py:mod:`records` ================= .. py:module:: conda.models.records .. autoapi-nested-parse:: Implements the data model for conda packages. A PackageRecord is the record of a package present in a channel. A PackageCache is the record of a downloaded and cached package. A PrefixRecord is the record of a package installed into a conda environment. Object inheritance: .. autoapi-inheritance-diagram:: PackageRecord PackageCacheRecord PrefixRecord :top-classes: conda.models.records.PackageRecord :parts: 1 Classes ------- .. autoapisummary:: conda.models.records.LinkTypeField conda.models.records.NoarchField conda.models.records.TimestampField conda.models.records.Link conda.models.records._FeaturesField conda.models.records.ChannelField conda.models.records.SubdirField conda.models.records.FilenameField conda.models.records.PackageTypeField conda.models.records.PathData conda.models.records.PathDataV1 conda.models.records.PathsData conda.models.records.PackageRecord conda.models.records.Md5Field conda.models.records.PackageCacheRecord conda.models.records.PrefixRecord Attributes ---------- .. autoapisummary:: conda.models.records.EMPTY_LINK .. py:class:: LinkTypeField(enum_class, default=NULL, required=True, validation=None, in_dump=True, default_in_dump=True, nullable=False, immutable=False, aliases=()) Bases: :py:obj:`conda.auxlib.entity.EnumField` Fields are doing something very similar to boxing and unboxing of c#/java primitives. __set__ should take a "primitive" or "raw" value and create a "boxed" or "programmatically usable" value of it. While __get__ should return the boxed value, dump in turn should unbox the value into a primitive or raw value. :param types_: :type types_: primitive literal or type or sequence of types :param default: If default is callable, it's guaranteed to return a valid value at the time of Entity creation. :type default: any, callable, optional :param required: :type required: boolean, optional :param validation: :type validation: callable, optional :param dump: :type dump: boolean, optional .. py:method:: box(instance, instance_type, val) .. py:class:: NoarchField(enum_class, default=NULL, required=True, validation=None, in_dump=True, default_in_dump=True, nullable=False, immutable=False, aliases=()) Bases: :py:obj:`conda.auxlib.entity.EnumField` Fields are doing something very similar to boxing and unboxing of c#/java primitives. __set__ should take a "primitive" or "raw" value and create a "boxed" or "programmatically usable" value of it. While __get__ should return the boxed value, dump in turn should unbox the value into a primitive or raw value. :param types_: :type types_: primitive literal or type or sequence of types :param default: If default is callable, it's guaranteed to return a valid value at the time of Entity creation. :type default: any, callable, optional :param required: :type required: boolean, optional :param validation: :type validation: callable, optional :param dump: :type dump: boolean, optional .. py:method:: box(instance, instance_type, val) .. py:class:: TimestampField Bases: :py:obj:`conda.auxlib.entity.NumberField` Fields are doing something very similar to boxing and unboxing of c#/java primitives. __set__ should take a "primitive" or "raw" value and create a "boxed" or "programmatically usable" value of it. While __get__ should return the boxed value, dump in turn should unbox the value into a primitive or raw value. :param types_: :type types_: primitive literal or type or sequence of types :param default: If default is callable, it's guaranteed to return a valid value at the time of Entity creation. :type default: any, callable, optional :param required: :type required: boolean, optional :param validation: :type validation: callable, optional :param dump: :type dump: boolean, optional .. py:method:: _make_seconds(val) :staticmethod: .. py:method:: _make_milliseconds(val) :staticmethod: .. py:method:: box(instance, instance_type, val) .. py:method:: dump(instance, instance_type, val) .. py:method:: __get__(instance, instance_type) .. py:class:: Link(**kwargs) Bases: :py:obj:`conda.auxlib.entity.DictSafeMixin`, :py:obj:`conda.auxlib.entity.Entity` .. py:attribute:: source .. py:attribute:: type .. py:data:: EMPTY_LINK .. py:class:: _FeaturesField(**kwargs) Bases: :py:obj:`conda.auxlib.entity.ListField` Fields are doing something very similar to boxing and unboxing of c#/java primitives. __set__ should take a "primitive" or "raw" value and create a "boxed" or "programmatically usable" value of it. While __get__ should return the boxed value, dump in turn should unbox the value into a primitive or raw value. :param types_: :type types_: primitive literal or type or sequence of types :param default: If default is callable, it's guaranteed to return a valid value at the time of Entity creation. :type default: any, callable, optional :param required: :type required: boolean, optional :param validation: :type validation: callable, optional :param dump: :type dump: boolean, optional .. py:method:: box(instance, instance_type, val) .. py:method:: dump(instance, instance_type, val) .. py:class:: ChannelField(aliases=()) Bases: :py:obj:`conda.auxlib.entity.ComposableField` Fields are doing something very similar to boxing and unboxing of c#/java primitives. __set__ should take a "primitive" or "raw" value and create a "boxed" or "programmatically usable" value of it. While __get__ should return the boxed value, dump in turn should unbox the value into a primitive or raw value. :param types_: :type types_: primitive literal or type or sequence of types :param default: If default is callable, it's guaranteed to return a valid value at the time of Entity creation. :type default: any, callable, optional :param required: :type required: boolean, optional :param validation: :type validation: callable, optional :param dump: :type dump: boolean, optional .. py:method:: dump(instance, instance_type, val) .. py:method:: __get__(instance, instance_type) .. py:class:: SubdirField Bases: :py:obj:`conda.auxlib.entity.StringField` Fields are doing something very similar to boxing and unboxing of c#/java primitives. __set__ should take a "primitive" or "raw" value and create a "boxed" or "programmatically usable" value of it. While __get__ should return the boxed value, dump in turn should unbox the value into a primitive or raw value. :param types_: :type types_: primitive literal or type or sequence of types :param default: If default is callable, it's guaranteed to return a valid value at the time of Entity creation. :type default: any, callable, optional :param required: :type required: boolean, optional :param validation: :type validation: callable, optional :param dump: :type dump: boolean, optional .. py:method:: __get__(instance, instance_type) .. py:class:: FilenameField(aliases=()) Bases: :py:obj:`conda.auxlib.entity.StringField` Fields are doing something very similar to boxing and unboxing of c#/java primitives. __set__ should take a "primitive" or "raw" value and create a "boxed" or "programmatically usable" value of it. While __get__ should return the boxed value, dump in turn should unbox the value into a primitive or raw value. :param types_: :type types_: primitive literal or type or sequence of types :param default: If default is callable, it's guaranteed to return a valid value at the time of Entity creation. :type default: any, callable, optional :param required: :type required: boolean, optional :param validation: :type validation: callable, optional :param dump: :type dump: boolean, optional .. py:method:: __get__(instance, instance_type) .. py:class:: PackageTypeField Bases: :py:obj:`conda.auxlib.entity.EnumField` Fields are doing something very similar to boxing and unboxing of c#/java primitives. __set__ should take a "primitive" or "raw" value and create a "boxed" or "programmatically usable" value of it. While __get__ should return the boxed value, dump in turn should unbox the value into a primitive or raw value. :param types_: :type types_: primitive literal or type or sequence of types :param default: If default is callable, it's guaranteed to return a valid value at the time of Entity creation. :type default: any, callable, optional :param required: :type required: boolean, optional :param validation: :type validation: callable, optional :param dump: :type dump: boolean, optional .. py:method:: __get__(instance, instance_type) .. py:class:: PathData(**kwargs) Bases: :py:obj:`conda.auxlib.entity.Entity` .. py:property:: path .. py:attribute:: _path .. py:attribute:: prefix_placeholder .. py:attribute:: file_mode .. py:attribute:: no_link .. py:attribute:: path_type .. py:class:: PathDataV1(**kwargs) Bases: :py:obj:`PathData` .. py:attribute:: sha256 .. py:attribute:: size_in_bytes .. py:attribute:: inode_paths .. py:attribute:: sha256_in_prefix .. py:class:: PathsData(**kwargs) Bases: :py:obj:`conda.auxlib.entity.Entity` .. py:attribute:: paths_version .. py:attribute:: paths .. py:class:: PackageRecord(*args, **kwargs) Bases: :py:obj:`conda.auxlib.entity.DictSafeMixin`, :py:obj:`conda.auxlib.entity.Entity` .. py:property:: schannel .. py:property:: _pkey .. py:property:: is_unmanageable .. py:property:: combined_depends .. py:property:: namekey .. py:attribute:: name .. py:attribute:: version .. py:attribute:: build .. py:attribute:: build_number .. py:attribute:: channel .. py:attribute:: subdir .. py:attribute:: fn .. py:attribute:: md5 .. py:attribute:: legacy_bz2_md5 .. py:attribute:: legacy_bz2_size .. py:attribute:: url .. py:attribute:: sha256 .. py:attribute:: arch .. py:attribute:: platform .. py:attribute:: depends .. py:attribute:: constrains .. py:attribute:: track_features .. py:attribute:: features .. py:attribute:: noarch .. py:attribute:: preferred_env .. py:attribute:: license .. py:attribute:: license_family .. py:attribute:: package_type .. py:attribute:: timestamp .. py:attribute:: date .. py:attribute:: size .. py:attribute:: metadata :type: set[str] .. py:method:: __hash__() Return hash(self). .. py:method:: __eq__(other) Return self==value. .. py:method:: dist_str() .. py:method:: dist_fields_dump() .. py:method:: __str__() Return str(self). .. py:method:: to_match_spec() .. py:method:: to_simple_match_spec() .. py:method:: record_id() .. py:class:: Md5Field Bases: :py:obj:`conda.auxlib.entity.StringField` Fields are doing something very similar to boxing and unboxing of c#/java primitives. __set__ should take a "primitive" or "raw" value and create a "boxed" or "programmatically usable" value of it. While __get__ should return the boxed value, dump in turn should unbox the value into a primitive or raw value. :param types_: :type types_: primitive literal or type or sequence of types :param default: If default is callable, it's guaranteed to return a valid value at the time of Entity creation. :type default: any, callable, optional :param required: :type required: boolean, optional :param validation: :type validation: callable, optional :param dump: :type dump: boolean, optional .. py:method:: __get__(instance, instance_type) .. py:class:: PackageCacheRecord(*args, **kwargs) Bases: :py:obj:`PackageRecord` .. py:property:: is_fetched .. py:property:: is_extracted .. py:property:: tarball_basename .. py:attribute:: package_tarball_full_path .. py:attribute:: extracted_package_dir .. py:attribute:: md5 .. py:method:: _calculate_md5sum() .. py:class:: PrefixRecord(*args, **kwargs) Bases: :py:obj:`PackageRecord` .. py:attribute:: package_tarball_full_path .. py:attribute:: extracted_package_dir .. py:attribute:: files .. py:attribute:: paths_data .. py:attribute:: link .. py:attribute:: requested_spec .. py:attribute:: auth