aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.bzrignore2
-rw-r--r--.travis.yml2
-rw-r--r--Makefile25
-rw-r--r--NEWS6
-rw-r--r--dateutil/test/__init__.py0
-rwxr-xr-xdateutil/test/test.py (renamed from test.py)0
-rw-r--r--example.py15
-rw-r--r--sandbox/rrulewrapper.py16
-rw-r--r--sandbox/scheduler.py158
-rw-r--r--setup.cfg2
-rwxr-xr-xsetup.py3
-rw-r--r--tox.ini2
12 files changed, 10 insertions, 221 deletions
diff --git a/.bzrignore b/.bzrignore
deleted file mode 100644
index 3061b41..0000000
--- a/.bzrignore
+++ /dev/null
@@ -1,2 +0,0 @@
-*.egg-info
-build
diff --git a/.travis.yml b/.travis.yml
index 1c12758..2402fca 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -11,4 +11,4 @@ install:
- pip install six
- python updatezinfo.py
script:
- - python test.py
+ - python setup.py test
diff --git a/Makefile b/Makefile
deleted file mode 100644
index a6ae933..0000000
--- a/Makefile
+++ /dev/null
@@ -1,25 +0,0 @@
-#
-# Simple wrapper for setup.py script
-#
-
-DESTDIR=/
-PYTHON=python
-
-prefix=/usr
-bindir=$(prefix)/bin
-
-all:
- $(PYTHON) setup.py build
-
-install:
- $(PYTHON) setup.py install \
- --root=$(DESTDIR) \
- --prefix=$(prefix) \
- --install-scripts=$(bindir)
-
-dist:
- $(PYTHON) setup.py sdist
-
-rpm:
- $(PYTHON) setup.py bdist_rpm
-
diff --git a/NEWS b/NEWS
index d1c59fb..1199d72 100644
--- a/NEWS
+++ b/NEWS
@@ -1,3 +1,9 @@
+Version 2.3
+-----------
+
+- Cleanup directory structure, moved test.py to dateutil/tests/test.py
+
+
Version 2.2
-----------
diff --git a/dateutil/test/__init__.py b/dateutil/test/__init__.py
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/dateutil/test/__init__.py
diff --git a/test.py b/dateutil/test/test.py
index 0c9bac5..0c9bac5 100755
--- a/test.py
+++ b/dateutil/test/test.py
diff --git a/example.py b/example.py
deleted file mode 100644
index ffa78e7..0000000
--- a/example.py
+++ /dev/null
@@ -1,15 +0,0 @@
-from dateutil.relativedelta import *
-from dateutil.easter import *
-from dateutil.rrule import *
-from dateutil.parser import *
-from datetime import *
-import subprocess
-import os
-now = parse(subprocess.getoutput("date"))
-today = now.date()
-year = rrule(YEARLY, bymonth=8, bymonthday=13, byweekday=FR)[0].year
-rdelta = relativedelta(easter(year), today)
-print("Today is:", today)
-print("Year with next Aug 13th on a Friday is:", year)
-print("How far is the Easter of that year:", rdelta)
-print("And the Easter of that year is:", today+rdelta)
diff --git a/sandbox/rrulewrapper.py b/sandbox/rrulewrapper.py
deleted file mode 100644
index da4fa85..0000000
--- a/sandbox/rrulewrapper.py
+++ /dev/null
@@ -1,16 +0,0 @@
-from rrule import *
-
-class rrulewrapper(object):
- def __init__(self, freq, **kwargs):
- self._construct = kwargs.copy()
- self._construct["freq"] = freq
- self._rrule = rrule(**self._construct)
-
- def __getattr__(self, name):
- if name in self.__dict__:
- return self.__dict__[name]
- return getattr(self._rrule, name)
-
- def set(self, **kwargs):
- self._construct.update(kwargs)
- self._rrule = rrule(**self._construct)
diff --git a/sandbox/scheduler.py b/sandbox/scheduler.py
deleted file mode 100644
index 62794d5..0000000
--- a/sandbox/scheduler.py
+++ /dev/null
@@ -1,158 +0,0 @@
-# -*- coding: utf-8 -*-
-"""
-Copyright (c) 2003-2005 Gustavo Niemeyer <gustavo@niemeyer.net>
-
-This module offers extensions to the standard Python
-datetime module.
-"""
-__author__ = "Tomi Pieviläinen <tomi.pievilainen@iki.fi>"
-__license__ = "Simplified BSD"
-
-import datetime
-import _thread
-import signal
-import time
-
-class sched(object):
-
- def __init__(self, rrule,
- tolerance=None, last=None,
- execute=None, args=None, kwargs=None):
- self._rrule = rrule
- if tolerance:
- self._tolerance = datetime.timedelta(seconds=tolerance)
- else:
- self._tolerance = None
- self._last = last
- self._execute = execute
- self._args = args or ()
- self._kwargs = kwargs or {}
-
- def last(self):
- return self._last
-
- def next(self, now=None):
- if not now:
- now = datetime.datetime.now()
- return self._rrule.after(now)
-
- def check(self, now=None, readonly=False):
- if not now:
- now = datetime.datetime.now()
- item = self._rrule.before(now, inc=True)
- if (item is None or item == self._last or
- (self._tolerance and item+self._tolerance < now)):
- return None
- if not readonly:
- self._last = item
- if self._execute:
- self._execute(*self._args, **self._kwargs)
- return item
-
-
-class schedset(object):
- def __init__(self):
- self._scheds = []
-
- def add(self, sched):
- self._scheds.append(sched)
-
- def next(self, now=None):
- if not now:
- now = datetime.datetime.now()
- res = None
- for sched in self._scheds:
- next = sched.next(now)
- if next and (not res or next < res):
- res = next
- return res
-
- def check(self, now=None, readonly=False):
- if not now:
- now = datetime.datetime.now()
- res = False
- for sched in self._scheds:
- if sched.check(now, readonly):
- res = True
- return res
-
-
-class schedthread(object):
-
- def __init__(self, sched, lock=None):
- self._sched = sched
- self._lock = lock
- self._running = False
-
- def running(self):
- return self._running
-
- def run(self):
- self._running = True
- _thread.start_new_thread(self._loop, ())
-
- def stop(self):
- self._running = False
-
- def _loop(self):
- while self._running:
- if self._lock:
- self._lock.acquire()
- now = datetime.datetime.now()
- self._sched.check(now)
- if self._lock:
- self._lock.release()
- seconds = _seconds_left(self._sched.next(now))
- if seconds is None:
- self._running = False
- break
- if self._running:
- time.sleep(seconds)
-
-
-class schedalarm(object):
-
- def __init__(self, sched, lock=None):
- self._sched = sched
- self._lock = lock
- self._running = False
-
- def running(self):
- return self._running
-
- def run(self):
- self._running = True
- signal.signal(signal.SIGALRM, self._handler)
- self._handler(None, None)
-
- def stop(self):
- self._running = False
-
- def _handler(self, sig, frame):
- while self._running:
- if self._lock:
- self._lock.acquire()
- now = datetime.datetime.now()
- self._sched.check(now)
- if self._lock:
- self._lock.release()
- if self._running:
- seconds = _seconds_left(self._sched.next(now))
- if seconds:
- signal.alarm(seconds)
- break
- elif seconds is None:
- self._running = False
- break
-
-
-def _seconds_left(next):
- if not next:
- return None
- now = datetime.datetime.now()
- delta = next-now
- seconds = delta.days*86400+delta.seconds
- if seconds < 0:
- seconds = 0
- return seconds
-
diff --git a/setup.cfg b/setup.cfg
deleted file mode 100644
index b3720b5..0000000
--- a/setup.cfg
+++ /dev/null
@@ -1,2 +0,0 @@
-[bdist_rpm]
-doc_files = README LICENSE
diff --git a/setup.py b/setup.py
index b6d8cdf..c7f089d 100755
--- a/setup.py
+++ b/setup.py
@@ -47,5 +47,6 @@ datetime module available in the Python standard library.
'Programming Language :: Python :: 3.2',
'Programming Language :: Python :: 3.3',
'Topic :: Software Development :: Libraries',
- ]
+ ],
+ test_suite = "dateutil.test.test"
)
diff --git a/tox.ini b/tox.ini
index 9132545..194c146 100644
--- a/tox.ini
+++ b/tox.ini
@@ -2,5 +2,5 @@
envlist = py26, py27, py32, py33, py34
[testenv]
-commands = python test.py
+commands = python setup.py test -q
deps = six