Skip to content

Commit

Permalink
- more separation of work between jobs and tasks
Browse files Browse the repository at this point in the history
  • Loading branch information
zemanel committed Jun 12, 2011
1 parent 30cf4ff commit 89c6b57
Show file tree
Hide file tree
Showing 35 changed files with 3,887 additions and 141 deletions.
1 change: 1 addition & 0 deletions .gitignore
Expand Up @@ -4,3 +4,4 @@
/.settings
*.pyc
/eggs
/.installed.cfg
74 changes: 0 additions & 74 deletions .installed.cfg

This file was deleted.

14 changes: 7 additions & 7 deletions app/cron.yaml
@@ -1,8 +1,8 @@
cron:
# - description: Poll HNSearch
# url: /jobs/poll_hnsearch
# schedule: every 30 minutes synchronized
#
# - description: Queue AlchemyAPI analysis requests as tasks
# url: /jobs/queue_alchemy_tasks
# schedule: every 30 minutes synchronized
- description: Poll HNSearch
url: /jobs/poll_hnsearch
schedule: every 30 minutes synchronized

- description: Queue AlchemyAPI analysis requests as tasks
url: /jobs/queue_alchemy_tasks
schedule: every 10 minutes synchronized
12 changes: 9 additions & 3 deletions app/index.yaml
@@ -1,5 +1,13 @@
indexes:

- kind: NewsItem
properties:
- name: username

- kind: NewsItem
properties:
- name: type

# AUTOGENERATED

# This index.yaml is automatically updated whenever the dev_appserver
Expand All @@ -12,8 +20,6 @@ indexes:

- kind: NewsItem
properties:
- name: username
- name: type
- name: is_sentiment_processed
- name: created_on
- name: create_ts
direction: desc
9 changes: 9 additions & 0 deletions app/lib/dist/dateutil/__init__.py
@@ -0,0 +1,9 @@
"""
Copyright (c) 2003-2010 Gustavo Niemeyer <gustavo@niemeyer.net>
This module offers extensions to the standard python 2.3+
datetime module.
"""
__author__ = "Gustavo Niemeyer <gustavo@niemeyer.net>"
__license__ = "Simplified BSD"
__version__ = "2.0"
92 changes: 92 additions & 0 deletions app/lib/dist/dateutil/easter.py
@@ -0,0 +1,92 @@
"""
Copyright (c) 2003-2007 Gustavo Niemeyer <gustavo@niemeyer.net>
This module offers extensions to the standard python 2.3+
datetime module.
"""
__author__ = "Gustavo Niemeyer <gustavo@niemeyer.net>"
__license__ = "Simplified BSD"

import datetime

__all__ = ["easter", "EASTER_JULIAN", "EASTER_ORTHODOX", "EASTER_WESTERN"]

EASTER_JULIAN = 1
EASTER_ORTHODOX = 2
EASTER_WESTERN = 3

def easter(year, method=EASTER_WESTERN):
"""
This method was ported from the work done by GM Arts,
on top of the algorithm by Claus Tondering, which was
based in part on the algorithm of Ouding (1940), as
quoted in "Explanatory Supplement to the Astronomical
Almanac", P. Kenneth Seidelmann, editor.
This algorithm implements three different easter
calculation methods:
1 - Original calculation in Julian calendar, valid in
dates after 326 AD
2 - Original method, with date converted to Gregorian
calendar, valid in years 1583 to 4099
3 - Revised method, in Gregorian calendar, valid in
years 1583 to 4099 as well
These methods are represented by the constants:
EASTER_JULIAN = 1
EASTER_ORTHODOX = 2
EASTER_WESTERN = 3
The default method is method 3.
More about the algorithm may be found at:
http://users.chariot.net.au/~gmarts/eastalg.htm
and
http://www.tondering.dk/claus/calendar.html
"""

if not (1 <= method <= 3):
raise ValueError("invalid method")

# g - Golden year - 1
# c - Century
# h - (23 - Epact) mod 30
# i - Number of days from March 21 to Paschal Full Moon
# j - Weekday for PFM (0=Sunday, etc)
# p - Number of days from March 21 to Sunday on or before PFM
# (-6 to 28 methods 1 & 3, to 56 for method 2)
# e - Extra days to add for method 2 (converting Julian
# date to Gregorian date)

y = year
g = y % 19
e = 0
if method < 3:
# Old method
i = (19*g+15)%30
j = (y+y//4+i)%7
if method == 2:
# Extra dates to convert Julian to Gregorian date
e = 10
if y > 1600:
e = e+y//100-16-(y//100-16)//4
else:
# New method
c = y//100
h = (c-c//4-(8*c+13)//25+19*g+15)%30
i = h-(h//28)*(1-(h//28)*(29//(h+1))*((21-g)//11))
j = (y+y//4+i+2-c+c//4)%7

# p can be from -6 to 56 corresponding to dates 22 March to 23 May
# (later dates apply to method 2, although 23 May never actually occurs)
p = i-j+e
d = 1+(p+27+(p+6)//40)%31
m = 3+(p+26)//30
return datetime.date(int(y), int(m), int(d))

0 comments on commit 89c6b57

Please sign in to comment.