Skip to content

Commit

Permalink
Use UTC time for reservation interactions. (#2860)
Browse files Browse the repository at this point in the history
Use utc for now() so that alternative locales are not problematic.
  • Loading branch information
wcourtney committed Mar 27, 2020
1 parent 4d044cf commit eb9b13c
Showing 1 changed file with 11 additions and 9 deletions.
20 changes: 11 additions & 9 deletions cirq/google/engine/engine_processor.py
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@
import datetime

from typing import List, Optional, TYPE_CHECKING
from pytz import utc

from cirq.google.engine.client.quantum import types as qtypes
from cirq.google.engine.client.quantum import enums as qenums
Expand Down Expand Up @@ -223,7 +224,7 @@ def remove_reservation(self, reservation_id: str):
raise ValueError('Cannot determine freeze_schedule from processor.'
'Call _cancel_reservation or _delete_reservation.')
secs_until = (reservation.start_time.seconds -
int(datetime.datetime.now().timestamp()))
int(datetime.datetime.now(tz=utc).timestamp()))
if secs_until > freeze:
return self._delete_reservation(reservation_id)
else:
Expand Down Expand Up @@ -256,8 +257,8 @@ def update_reservation(self,

def list_reservations(
self,
from_time: datetime.datetime = datetime.datetime.now(),
to_time: datetime.datetime = datetime.datetime.now() +
from_time: datetime.datetime = datetime.datetime.now(tz=utc),
to_time: datetime.datetime = datetime.datetime.now(tz=utc) +
datetime.timedelta(weeks=2)) -> List[EngineTimeSlot]:
"""Retrieves the reservations from a processor.
Expand All @@ -274,12 +275,13 @@ def list_reservations(
self.processor_id,
filter_str)

def get_schedule(self,
from_time: datetime.datetime = datetime.datetime.now(),
to_time: datetime.datetime = datetime.datetime.now() +
datetime.timedelta(weeks=2),
time_slot_type: qenums.QuantumTimeSlot.TimeSlotType = None
) -> List[EngineTimeSlot]:
def get_schedule(
self,
from_time: datetime.datetime = datetime.datetime.now(tz=utc),
to_time: datetime.datetime = datetime.datetime.now(tz=utc) +
datetime.timedelta(weeks=2),
time_slot_type: qenums.QuantumTimeSlot.TimeSlotType = None
) -> List[EngineTimeSlot]:
"""Retrieves the schedule for a processor.
The schedule may be filtered by time.
Expand Down

0 comments on commit eb9b13c

Please sign in to comment.