def add_fetched_fileld(migrator, db): try: PackageFile.select(PackageFile.fetched).where(PackageFile.fetched == None).count() except: migrate( migrator.add_column( 'packagefile', 'fetched', PackageFile.fetched ) )
def add_url_fileld(migrator, db): try: PackageFile.select(PackageFile.url).where(PackageFile.url == None).count() except: migrate( migrator.add_column( 'packagefile', 'url', PackageFile.url ) )
def find_file(self, package, version, filename): if not isinstance(package, Package): package = Package.find(package) pkg_file = PackageFile.select( PackageFile.id).join(Package).join(PackageVersion).where( PackageFile.package == package, PackageFile.basename == filename, PackageVersion.version == HashVersion(version), ).limit(1) if not pkg_file.count(): raise LookupError("Not found") return PackageFile.get(id=pkg_file[0].id)
def rpc_release_urls(cls, package_name, version): raise Return( list( map( lambda x: "/".join((version, x.name)), PackageFile.select().join( Package ).join( PackageVersion ).where( Package.name == package_name, PackageVersion.version == version ) ) ) )
def find_file(self, package, version, filename): if not isinstance(package, Package): package = Package.find(package) pkg_file = PackageFile.select( PackageFile.id ).join( Package ).join( PackageVersion ).where( PackageFile.package == package, PackageFile.basename == filename, PackageVersion.version == HashVersion(version), ).limit(1) if not pkg_file.count(): raise LookupError("Not found") return PackageFile.get(id=pkg_file[0].id)