From e1e68ee2c0bd90033175fe93b90a21188f024bd9 Mon Sep 17 00:00:00 2001 From: "wheaties.box" Date: Sat, 6 Dec 2008 10:09:34 +0000 Subject: [PATCH] Created tag 0.1.1-rc1 --HG-- extra : convert_revision : svn%3A6515f4ec-ab5a-11dd-8fd9-859366ca643a/trunk%404 --- README | 9 ++++++--- axes/__init__.py | 2 +- dist/django-axes-0.1.1-rc1.tar.bz2 | Bin 0 -> 5164 bytes dist/django-axes-0.1.1-rc1.tar.bz2.asc | 7 +++++++ dist/django-axes-0.1.1-rc1.tar.gz | Bin 0 -> 5276 bytes dist/django-axes-0.1.1-rc1.tar.gz.asc | 7 +++++++ dist/django-axes-0.1.1-rc1.zip | Bin 0 -> 7218 bytes dist/django-axes-0.1.1-rc1.zip.asc | 7 +++++++ setup.py | 2 +- 9 files changed, 29 insertions(+), 5 deletions(-) create mode 100644 dist/django-axes-0.1.1-rc1.tar.bz2 create mode 100644 dist/django-axes-0.1.1-rc1.tar.bz2.asc create mode 100644 dist/django-axes-0.1.1-rc1.tar.gz create mode 100644 dist/django-axes-0.1.1-rc1.tar.gz.asc create mode 100644 dist/django-axes-0.1.1-rc1.zip create mode 100644 dist/django-axes-0.1.1-rc1.zip.asc diff --git a/README b/README index 75c471a..bea4419 100644 --- a/README +++ b/README @@ -1,4 +1,7 @@ -django-axes is a very simple way for you to keep track of failed login attempts, both for the Django admin and for the rest of your site. +django-axes is a very simple way for you to keep track of failed login attempts, both for the Django admin and for the rest of your site. The name is sort of a geeky pun, since `axes` can be read interpretted as: + + # "access", as in monitoring access attempts + # "axes", as in tools you can use hack (generally on wood). In this case, however, the "hacking" part of it can be taken a bit further: `django-axes` is intended to help you *stop* people from hacking (popular media definition) your website. Hilarious, right? That's what I thougth too! ==Requirements== @@ -24,7 +27,7 @@ Download the latest `.tar.gz` file from the downloads section and extract it som ===Checkout from Subversion=== -Execute the following command (or use the equivalent function in a GUI such as TortoiseSVN), and make sure you're checking `django-axes` out somewhere on the `PYTHONPATH`. +Execute the following command (or use the equivalent function in a GUI such as TortoiseSVN or Versions), and make sure you're checking `django-axes` out somewhere on the `PYTHONPATH`. {{{ svn co http://django-axes.googlecode.com/svn/trunk/axes axes @@ -79,4 +82,4 @@ You have a couple options available to you to customize `django-axes` a bit. Th ==Usage== -Using `django-axes` is extremely simple. Once you install the application and the middleware, all you need to do is periodically check the Access Attempts section of the admin. \ No newline at end of file +Using `django-axes` is extremely simple. Once you install the application and the middleware, all you need to do is periodically check the Access Attempts section of the admin. A log file is also created for you to keep track of the events surrounding failed login attempts. This log file can be found in your Django project directory, by the name of `axes.log`. In the future I plan on offering a way to customize options for logging a bit more. \ No newline at end of file diff --git a/axes/__init__.py b/axes/__init__.py index 498db06..35e04e4 100644 --- a/axes/__init__.py +++ b/axes/__init__.py @@ -1,4 +1,4 @@ -VERSION = (0, 1, 1, 'alpha') +VERSION = (0, 1, 1, 'rc1') def get_version(): return '%s.%s.%s-%s' % VERSION diff --git a/dist/django-axes-0.1.1-rc1.tar.bz2 b/dist/django-axes-0.1.1-rc1.tar.bz2 new file mode 100644 index 0000000000000000000000000000000000000000..aac29070fe76b4ba1259bd5883d8872eca1e2e6a GIT binary patch literal 5164 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 literal 0 HcmV?d00001 diff --git a/dist/django-axes-0.1.1-rc1.tar.gz.asc b/dist/django-axes-0.1.1-rc1.tar.gz.asc new file mode 100644 index 0000000..94ed7d4 --- /dev/null +++ b/dist/django-axes-0.1.1-rc1.tar.gz.asc @@ -0,0 +1,7 @@ +-----BEGIN PGP SIGNATURE----- +Version: GnuPG v1.4.9 (GNU/Linux) + +iEYEABECAAYFAkk6TmoACgkQPhnaFjTndGApyACfaiDRGIMCjw4xUiv8Elcw4xs2 +dHgAoPcQYJFqpANkysZzmCMa3kuSwBdG +=fW02 +-----END PGP SIGNATURE----- diff --git a/dist/django-axes-0.1.1-rc1.zip b/dist/django-axes-0.1.1-rc1.zip new file mode 100644 index 0000000000000000000000000000000000000000..2639755d3ae989e1bfd26ffb06ccac3422f66fdb GIT binary patch literal 7218 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 literal 0 HcmV?d00001 diff --git a/dist/django-axes-0.1.1-rc1.zip.asc b/dist/django-axes-0.1.1-rc1.zip.asc new file mode 100644 index 0000000..a4d2a1f --- /dev/null +++ b/dist/django-axes-0.1.1-rc1.zip.asc @@ -0,0 +1,7 @@ +-----BEGIN PGP SIGNATURE----- +Version: GnuPG v1.4.9 (GNU/Linux) + +iEYEABECAAYFAkk6TnIACgkQPhnaFjTndGA5RwCfbMbzIHDomconpo9fv5Aiv2qE +QT0AnjE8V4JDxjsZ4Y8UAzERYGBT2/s+ +=d9lj +-----END PGP SIGNATURE----- diff --git a/setup.py b/setup.py index 9576848..5157cc2 100644 --- a/setup.py +++ b/setup.py @@ -46,7 +46,7 @@ setup( data_files=data_files, description="Keep track of failed login attempts in Django-powered sites.", long_description=""" -django-axes is a very simple way for you to keep track of failed login attempts, both for the Django admin and for the rest of your site. +django-axes is a very simple way for you to keep track of failed login attempts, both for the Django admin and for the rest of your site. All you need to do is install the application, a middleware, and syncdb! """, keywords='django, security, authentication', classifiers=[