Changelog for Charlatan¶
0.4.7 (unreleased)¶
- Nothing changed yet.
0.4.6 (2015-09-22)¶
- Add support for
epoch_now_in_ms(thanks to @chunyan)
0.4.5 (2015-05-29)¶
- Add
deep_inheritto allow nested inheritance of fields.
0.4.4 (2015-05-28)¶
- Added
!now_naiveYAML file command to return naive datetime.
0.4.3 (2015-05-26)¶
- Fixed anonymous list objects name resolution (thanks to @jvrsantacruz)
0.4.2 (2015-05-19)¶
- Breaking change: the
!nowYAML command now returns timezone-aware datetime by default. You can change that behavior by changing charlatan.file_format.TIMEZONE_AWARE. - Fixed bug where uninstalling a sqlalchemy fixture would not commit the delete to the session.
- Fixed bug where dict fixtures could not reference fields from other collections of dicts.
0.4.1 (2015-02-26)¶
- Fixed bug where
!rel a_database_model.id, whereidis a primary key generated by the database, would beNonebecause of how fixtures are cached. - Removed
as_listandas_dictfeature. It was unnecessarily complex and would not play well with caching fixtures.
0.4.0 (2015-02-18)¶
- Breaking change:
get_builderanddelete_builderarguments were added tocharlatan.FixturesManager. - Breaking change:
delete_instance,save_instancemethods were deleted in favor of using builders (see below). - Breaking change:
fieldsargument oncharlatan.fixture.Fixtureand fixtures collection class has been renamedoverridesfor consistency reasons. - Breaking change:
attrsargument oncharlatan.FixturesManagerbeen renamedoverridesfor consistency reasons. - Breaking change: deleting fixtures will not return anything. It used to return the fixture or list of fixtures that were successfully deleted. It has been removed to apply the command query separation pattern. There are other ways to check which fixtures are installed, and hooks or builders can be used to customize deletion.
- Breaking change:
do_not_saveanddo_not_deletearguments have been removed from all functions, in favor of using builders. - The notion of
charlatan.builder.Builderwas added. This allows customizing how fixtures are instantiated and installed. Abuilderargument has been added to most method dealing with getting, installing or deleting fixtures. Sane defaults have been added in most places. - Improve documentation about using pytest with charlatan.
- Fix bug preventing being able to load multiple fixtures file.
0.3.12 (2015-01-14)¶
- Do not install the class’
fixturesvariable oncharlatan.FixturesManagerMixininitialization. This can lead to bad pattern where a huge list of fixtures is installed for each test, even though each test uses only a few. Also, it’s safer to be explicit about this behavior and let the user have this automatic installation. Note that you can easily reimplement this behavior by subclassing or installing those in the classsetUpmethod.
0.3.11 (2015-01-06)¶
- Fix getting relationships with fields that are nested more than one level
0.3.10 (2014-12-31)¶
- Get
utcnowat fixture instantiation time, to allow usingfreezegunintuitively
0.3.9 (2014-11-13)¶
- Fix saving collection of fixtures to database (thanks to @joegilley)
0.3.8 (2014-08-19)¶
- Support loading of globbed filenames
0.3.7 (2014-07-07)¶
- Support loading of multiple fixtures files
- Remove include_relationships option in instance creation
0.3.6 (2014-06-02)¶
- Update PYYaml
0.3.5 (2014-06-02)¶
- Support loading all strings as unicode
0.3.4 (2014-01-21)¶
- Fix getting attribute from relationships
0.3.3 (2014-01-18)¶
- Add support for Python 3
0.3.2 (2014-01-16)¶
- Add ability to uninstall fixtures (thanks to @JordanB)
0.3.1 (2014-01-10)¶
- Numerous tests added, a lot of cleanup.
- Clarification in documentation.
- Remove
load,set_hookandinstall_all_fixturesshortcuts from charlatan package. - Remove
FIXTURES_MANAGERsingleton. Removecharlatan.fixtures_managershortcut. - Remove
db_sessionargument toFixturesManager.load. - Add
db_sessionargument toFixturesManagerconstructor. - Remove
charlatan.fixtures_manager.FixturesMixin. Replaced bycharlatan.testcase.FixturesManagerMixin. FixturesManagerMixinnow exposes pretty much the same method asFixturesManager.FixturesManagerMixin‘suse_fixtures_managerwas renamedinit_fixtures.
0.2.9 (2013-11-20)¶
- Add
!epoch_nowfor Unix timestamps (thanks to @erikformella)
0.2.8 (2013-11-12)¶
- Add ability to point to a list fixture (thanks to @erikformella)
0.2.7 (2013-10-24)¶
- Add ability to define dependencies outside of fields through the depend_on key in the yaml file (thanks to @Roguelazer)
0.2.6 (2013-09-06)¶
- Fix regression that broke API. install_fixture started returning the fixture as well as its name. (thanks to @erikformella)
0.2.5 (2013-09-06)¶
- Allow relationships to be used in dicts and lists. (thanks to @erikformella)
- Allow for seconds and minutes in relative timestamps (thanks to @kmnovak)
0.2.4 (2013-08-08)¶
- Empty models are allowed so that dict ands lists can be used as fixtures.
- Fixtures can now inherits from other fixtures.
0.2.3 (2013-06-28)¶
- Added ability to link to a relationship’s attribute in YAML file.
- Added ability to use
!relinpost_creation.
0.1.2 (2013-04-01)¶
- Started tracking changes