blob: c25ca1633e0f9cfabd685961394dfa771fb23200 [file] [log] [blame]
Version 1.0 (14 March, 2011)
- Added grizzled.proxy.Forwarder, a mixin that aids writing wrappers that
forward some, or all, unknown attributes to a wrapped object.
- Graduated to 1.0. It's been around long enough.
- Removed setup.py reliance on 'ez_setup' module.
- Removed grizzled.collections.namedtuple.
---------------------------------------------------------------------------
Version 0.9.4 (10 June, 2010)
- Fixed various incorrect docstrings.
- Added grizzled.file.list_recursively() function.
- Fixes for PyPI.
---------------------------------------------------------------------------
Version 0.9.3 (24 October, 2009)
- Updated to latest ez_setup.py
- Fixed grizzled.text.hexdump() to honor show_repeats=True in all cases.
- Added pidfile argument to grizzled.os.daemonize(). grizzled.os.spawnd()
was passing a pidfile argument to daemonize(), but daemonize() didn't
support it.
---------------------------------------------------------------------------
Version 0.9.2 (26 May, 2009)
- Added grizzled.misc.bitcount(), to calculate the number of 1 bits in a number.
- Modified grizzled.db for Oracle so that get_tables() uses ALL_TABLES,
not USER_TABLES (suppressing tables with "$" in them). Made similar change
for get_indexes().
- Moved grizzled.misc.str2bool() to grizzled.text.
---------------------------------------------------------------------------
Version 0.9.1 (5 December, 2008)
- Added missing import of "re" module to grizzled.db.sqlite module.
- Move grizzled/net.py to grizzled/net/__init__.py.
- Added grizzled.net.ftp package and grizzled.net.ftp.parse module, the
latter containing a Python port of Dan Bernstein's ftpparse function,
for parsing output from an FTP server's "LIST" command.
---------------------------------------------------------------------------
Version 0.9 (13 November, 2008)
- Added get_rdbms_metadata() function to grizzled.db drivers, to return
information about the underlying RDBMS.
- Added grizzled.collections.namedtuple() function, which works like Python's
new 2.6 namedtuple() function. If running under 2.6, the grizzled.collections
version *is* the 2.6 namedtuple() function.
- Reorganized internals of grizzled.db for easier maintenance. Has no effect
on the visible API.
- Moved package metadata from setup.py to grizzled/__init__.py, making it
easier for other packages to use.
---------------------------------------------------------------------------
Version 0.8.4 (4 November, 2008)
- Improved Oracle support in grizzled.db package.
---------------------------------------------------------------------------
Version 0.8.3 (1 November, 2008)
- Added @unimplemented decorator
- Fixed bad references to "os" module in grizzled.os.daemonize().
- Renamed grizzled.cmdline.CommandLineParser's show_usage() method to
die_with_usage(). Provided a deprecated version of show_usage().
- Added init_simple_stream_logging() to grizzled.log module.
- Added get_one_of() method to grizzled.config.Configuration
- Removed reference to nonexistent InfoFilter from grizzled.log
---------------------------------------------------------------------------
Version 0.8.2 (8 September, 2008)
- Eliminated extra fork() in grizzled.os.spawnd() function.
- Added grizzled.collections.LRUDict class, implementating a fixed-size
dictionary with least recently used semantics.
- The grizzled.text module now provides a hexdump() function.
- The grizzled.text module now provides a str2bool() function.
- grizzled.file.include module's preprocess() method is now a little more
careful about temp file turds.
- Fixed some unconverted camelCase variables in grizzled.file.include module's
preprocess() method, removing some runtime errors.
- Now properly bundles ez_setup.py
- grizzled.db.DBDriver now implements paramstyle() method that actually
does something.
- grizzled.db now has simple support for the Gadly pure-Python SQL
database. (See http://gadfly.sourceforge.net/)
---------------------------------------------------------------------------
Version 0.8.1 (5 August, 2008)
- grizzled.db now uses SQLite3 PRAGMAs to get table metadata and index
metadata.
---------------------------------------------------------------------------
Version 0.8 (22 July, 2008)
- Added grizzled.log module (including a WrappingLogFormatter class) which
contains some classes and functions for use with the standard logging
module.
- Added grizzled.misc.str2bool() function.
---------------------------------------------------------------------------
Version 0.7.2 (18 July, 2008)
- Added grizzled.history.
- Converted some lingering Epytext markup to reStructuredText.
---------------------------------------------------------------------------
Version 0.7.1 (16 July, 2008)
- Added grizzled.misc module and ReadOnly class.
- Added the spawnd() function the grizzled.os module.
- Enhanced grizzled.db SQLite3 driver to return better index and table
metadata.
---------------------------------------------------------------------------
Version 0.7 (12 June, 2008)
- Deprecated grizzled.os.file_separator(). Silly me, there's a standard
os.path.sep variable.
- In grizzled.db, the MySQL index metadata function wasn't detecting column
uniqueness properly.
- In grizzled.db, the PostgreSQL table metadata function wasn't detecting
NULL/NOT NULL properly.
- Added find_command() and path_elements() functions to grizzled.os.
- Documentation format changed from default Epydoc to reStructuredText.
- Fixed bug in grizzled.db.add_driver() function that prevented a driver
from being added programmatically.
- Added class_for_name() function to grizzled.system module.
- grizzled.config now uses grizzled.collections.OrderedDict
- In grizzled.config, Configuration.sections() is now a property.
---------------------------------------------------------------------------
Version 0.6 (30 May, 2008)
- Removed deprecated methods.
- Removed deprecated optparse module.
- Added MySQL-specific logic for table metadata to grizzled.db
- Added PostgreSQL-specific logic for table metadata to grizzled.db
- Added ability to retrieve list of database tables to grizzled.db.
- Added grizzled.io.filelock.locked_file() function, for use with the
"with" statement.
---------------------------------------------------------------------------
Version 0.5 (28 May, 2008)
- Added grizzled.sys module, with python_version(), python_version_string(),
split_python_version() and ensure_version() functions.
- Added grizzled.file.universal_path() and grizzled.file.native_path().
A universal path always uses a '/' as the file separator, no matter what
the underlying operating system uses. A native path uses the underlying
operating system's path separator. These two functions convert between the
two notations.
- Fixed bug in grizzled.file.eglob() stemming from camel case conversion.
- Added grizzled.os.file_separator() function.
- Changed grizzled.os.get_path_separator() to grizzled.os.path_separator().
---------------------------------------------------------------------------
Version 0.4 (20 May, 2008)
- Converted public functions, methods, parameters and variables that use
camel case names to names that are more consistent with standard Python
naming conventions. Existing camel case functions are still in the API,
but are deprecated. Calling them will result in a runtime warning.
---------------------------------------------------------------------------
Version 0.3 (8 May, 2008)
- Created grizzled.io.filelock module, with a FileLock class that provides
a portable file locking interface.
- Added grizzled.file.eglob() function.
- Added grizzled.os.withDirectory(), a context manager for the "with"
statement.
- Added grizzled.io.PushbackFile class
- Added grizzled.file.copyRecursively() function
- Moved CommandLineParser from grizzled.optparse to grizzled.cmdline
- Augmented CommandLineParser to permit specifying an epilogue to be printed
at the end of the usage message.
- Added grizzled.net.download() function
- Added grizzled.io.Zip class
---------------------------------------------------------------------------
Version 0.2 (2 April, 2008)
- Initial version posted to the web.