25static const wxChar
tracePcm[] = wxT(
"KICAD_PCM" );
31 if( j.contains( key ) )
34 j.at( key ).get_to( tmp );
65 nlohmann::to_json( j[
"platforms"], v.
platforms );
77 j.at(
"version" ).get_to( v.
version );
78 j.at(
"status" ).get_to( v.
status );
89 if( j.contains(
"platforms" ) )
90 j.at(
"platforms" ).get_to( v.
platforms );
92 if( j.contains(
"keep_on_update" ) )
112 if( p.
tags.size() > 0 )
122 j.at(
"name" ).get_to( p.
name );
126 j.at(
"type" ).get_to( p.
type );
130 wxLogTrace(
tracePcm, wxS(
"Skipping package '%s' with unrecognized type '%s'" ),
131 p.
identifier, wxString( j.at(
"type" ).get<std::string>() ) );
134 j.at(
"author" ).get_to( p.
author );
135 j.at(
"license" ).get_to( p.
license );
136 j.at(
"resources" ).get_to( p.
resources );
137 j.at(
"versions" ).get_to( p.
versions );
145 if( j.contains(
"tags" ) )
146 j.at(
"tags" ).get_to( p.
tags );
148 if( j.contains(
"keep_on_update" ) )
164 j.at(
"url" ).get_to( r.
url );
188 j.at(
"name" ).get_to( r.
name );
189 j.at(
"packages" ).get_to( r.
packages );
210 j.at(
"package" ).get_to( e.
package );
217 if( j.contains(
"pinned" ) )
218 j.at(
"pinned" ).get_to( e.
pinned );
static const wxChar tracePcm[]
Flag to enable PCM debugging output.
void to_json(json &j, const PACKAGE_VERSION &v)
void to_optional(const json &j, const char *key, std::optional< T > &dest)
void from_json(const json &j, PACKAGE_VERSION &v)
< Package version metadataPackage metadata
std::optional< uint64_t > download_size
std::optional< uint64_t > install_size
PCM_PACKAGE_VERSION_STATUS status
std::optional< wxString > kicad_version_max
std::optional< wxString > download_url
std::optional< PCM_PACKAGE_RUNTIME > runtime
std::optional< wxString > download_sha256
std::optional< int > version_epoch
std::vector< std::string > platforms
std::vector< std::string > keep_on_update
uint64_t install_timestamp
Repository reference to a resource.
wxString description_full
std::vector< std::string > tags
std::optional< PCM_CONTACT > maintainer
std::vector< PACKAGE_VERSION > versions
std::optional< PCM_PLUGIN_CATEGORY > category
std::vector< std::string > keep_on_update
Package installation entry.
PCM_RESOURCE_REFERENCE packages
std::optional< PCM_CONTACT > maintainer
std::optional< PCM_RESOURCE_REFERENCE > manifests
std::optional< PCM_RESOURCE_REFERENCE > resources
std::optional< wxString > sha256
uint64_t update_timestamp