class PackageGHUsage(Base): """Table for storing package results from BigQuery.""" __tablename__ = 'package_gh_usage' id = Column(Integer, primary_key=True) # dependency name as extracted from package.json found somewhere on GitHub name = Column(String(255), nullable=False) # number of dependent projects found on GitHub count = Column(Integer, nullable=False) ecosystem_backend = Column(ENUM(*[b.name for b in EcosystemBackend], name='ecosystem_backend_enum', create_type=False)) timestamp = Column(DateTime, nullable=False, server_default=func.localtimestamp())
class ComponentGHUsage(Base): """Table for storing component results from BigQuery.""" __tablename__ = 'component_gh_usage' id = Column(Integer, primary_key=True) # dependency name as extracted from npm-shrinkwrap.json found somewhere on GitHub name = Column(String(255), nullable=False) # dependency version version = Column(String(255), nullable=False) # number of references to the (name, version) from shrinkwrap files count = Column(Integer, nullable=False) # percentage of components that are used less or equally often as (name, version) percentile_rank = Column(Integer, nullable=False) ecosystem_backend = Column(ENUM(*[b.name for b in EcosystemBackend], name='ecosystem_backend_enum', create_type=False)) timestamp = Column(DateTime, nullable=False, server_default=func.localtimestamp())
def log_new_envelope(self, envelope_id: str, emitter_id: str): """Internal helper method used to log the creation of a new envelope. :param envelope_id: the UUID of the new envelope :param emitter_id: the internal UUID of the emitter of the new envelope """ with (yield from self.dbengine) as conn: insert = envelope.insert() insert = insert.values(id=envelope_id, state='emit', emitter_id=emitter_id, posted_date=func.localtimestamp()) yield from conn.execute(insert)
def test_localtime(self): self.assert_compile( func.localtimestamp(), 'DATETIME(CURRENT_TIMESTAMP, "localtime")' )
def test_localtime(self): self.assert_compile(func.localtimestamp(), 'DATETIME(CURRENT_TIMESTAMP, "localtime")')
def purge(self, days_to_keep, session): query = StatSwitchboardQueue.__table__.delete().where( StatSwitchboardQueue.time < ( func.localtimestamp() - datetime.timedelta(days=days_to_keep))) session.execute(query)
def purge(self, days_to_keep, session): query = SubscriptionLog.__table__.delete().where( SubscriptionLog.started_at < (func.localtimestamp() - datetime.timedelta(days=days_to_keep)) ) session.execute(query)