"""Package stats tables.""" from pypistats.database import Column from pypistats.database import Model from pypistats.extensions import db class OverallDownloadCount(Model): """Overall download counts.""" __tablename__ = "overall" date = Column(db.Date, primary_key=True, nullable=False) package = Column(db.String(128), primary_key=True, nullable=False) # with_mirrors or without_mirrors category = Column(db.String(16), primary_key=True, nullable=False) downloads = Column(db.Integer(), nullable=False) def __repr__(self): return "".format( f"{str(self.package)} - {str(self.category)}" ) class SystemDownloadCount(Model): """Download counts by system.""" __tablename__ = "system" date = Column(db.Date, primary_key=True) package = Column(db.String(128), primary_key=True, nullable=False) # system, e.g. Windows or Linux or Darwin (or null) category = Column(db.String(8), primary_key=True, nullable=True) downloads = Column(db.Integer(), nullable=False) def __repr__(self): return "