summaryrefslogtreecommitdiff
path: root/docs/changelog.rst
diff options
context:
space:
mode:
Diffstat (limited to 'docs/changelog.rst')
-rw-r--r--docs/changelog.rst167
1 files changed, 158 insertions, 9 deletions
diff --git a/docs/changelog.rst b/docs/changelog.rst
index 173c40f..4917578 100644
--- a/docs/changelog.rst
+++ b/docs/changelog.rst
@@ -1,24 +1,139 @@
ChangeLog
=========
+
+.. _v2.3.1:
+
+2.3.1 (2014-01-22)
+------------------
+
+*Bugfix:*
+
+ - Fix badly written assert containing state-changing code, spotted by `chsigi <https://github.com/chsigi>`_ (:issue:`126`)
+ - Don't crash when handling objects whose __repr__ is non-pure-ascii bytes on Py2,
+ discovered by `mbertheau <https://github.com/mbertheau>`_ (:issue:`123`) and `strycore <https://github.com/strycore>`_ (:issue:`127`)
+
+.. _v2.3.0:
+
+2.3.0 (2013-12-25)
+------------------
+
+*New:*
+
+ - Add :class:`~factory.fuzzy.FuzzyText`, thanks to `jdufresne <https://github.com/jdufresne>`_ (:issue:`97`)
+ - Add :class:`~factory.fuzzy.FuzzyDecimal`, thanks to `thedrow <https://github.com/thedrow>`_ (:issue:`94`)
+ - Add support for :class:`~mongoengine.EmbeddedDocument`, thanks to `imiric <https://github.com/imiric>`_ (:issue:`100`)
+
+.. _v2.2.1:
+
+2.2.1 (2013-09-24)
+------------------
+
+*Bugfix:*
+
+ - Fixed sequence counter for :class:`~factory.django.DjangoModelFactory` when a factory
+ inherits from another factory relating to an abstract model.
+
+.. _v2.2.0:
+
+2.2.0 (2013-09-24)
+------------------
+
+*Bugfix:*
+
+ - Removed duplicated :class:`~factory.alchemy.SQLAlchemyModelFactory` lurking in :mod:`factory`
+ (:issue:`83`)
+ - Properly handle sequences within object inheritance chains.
+ If FactoryA inherits from FactoryB, and their associated classes share the same link,
+ sequence counters will be shared (:issue:`93`)
+ - Properly handle nested :class:`~factory.SubFactory` overrides
+
+*New:*
+
+ - The :class:`~factory.django.DjangoModelFactory` now supports the ``FACTORY_FOR = 'myapp.MyModel'``
+ syntax, making it easier to shove all factories in a single module (:issue:`66`).
+ - Add :meth:`factory.debug()` helper for easier backtrace analysis
+ - Adding factory support for mongoengine with :class:`~factory.mongoengine.MongoEngineFactory`.
+
+.. _v2.1.2:
+
+2.1.2 (2013-08-14)
+------------------
+
+*New:*
+
+ - The :class:`~factory.Factory.ABSTRACT_FACTORY` keyword is now optional, and automatically set
+ to ``True`` if neither the :class:`~factory.Factory` subclass nor its parent declare the
+ :class:`~factory.Factory.FACTORY_FOR` attribute (:issue:`74`)
+
+
+.. _v2.1.1:
+
+2.1.1 (2013-07-02)
+------------------
+
+*Bugfix:*
+
+ - Properly retrieve the ``color`` keyword argument passed to :class:`~factory.django.ImageField`
+
+.. _v2.1.0:
+
+2.1.0 (2013-06-26)
+------------------
+
+*New:*
+
+ - Add :class:`~factory.fuzzy.FuzzyDate` thanks to `saulshanabrook <https://github.com/saulshanabrook>`_
+ - Add :class:`~factory.fuzzy.FuzzyDateTime` and :class:`~factory.fuzzy.FuzzyNaiveDateTime`.
+ - Add a :attr:`~factory.containers.LazyStub.factory_parent` attribute to the
+ :class:`~factory.containers.LazyStub` passed to :class:`~factory.LazyAttribute`, in order to access
+ fields defined in wrapping factories.
+ - Move :class:`~factory.django.DjangoModelFactory` and :class:`~factory.mogo.MogoFactory`
+ to their own modules (:mod:`factory.django` and :mod:`factory.mogo`)
+ - Add the :meth:`~factory.Factory.reset_sequence` classmethod to :class:`~factory.Factory`
+ to ease resetting the sequence counter for a given factory.
+ - Add debug messages to ``factory`` logger.
+ - Add a :meth:`~factory.Iterator.reset` method to :class:`~factory.Iterator` (:issue:`63`)
+ - Add support for the SQLAlchemy ORM through :class:`~factory.alchemy.SQLAlchemyModelFactory`
+ (:issue:`64`, thanks to `Romain Commandé <https://github.com/rcommande>`_)
+ - Add :class:`factory.django.FileField` and :class:`factory.django.ImageField` hooks for
+ related Django model fields (:issue:`52`)
+
+*Bugfix*
+
+ - Properly handle non-integer pks in :class:`~factory.django.DjangoModelFactory` (:issue:`57`).
+ - Disable :class:`~factory.RelatedFactory` generation when a specific value was
+ passed (:issue:`62`, thanks to `Gabe Koscky <https://github.com/dhekke>`_)
+
+*Deprecation:*
+
+ - Rename :class:`~factory.RelatedFactory`'s ``name`` argument to ``factory_related_name`` (See :issue:`58`)
+
+
+.. _v2.0.2:
+
2.0.2 (2013-04-16)
------------------
*New:*
- - When :attr:`~factory.DjangoModelFactory.FACTORY_DJANGO_GET_OR_CREATE` is
+ - When :attr:`~factory.django.DjangoModelFactory.FACTORY_DJANGO_GET_OR_CREATE` is
empty, use ``Model.objects.create()`` instead of ``Model.objects.get_or_create``.
+.. _v2.0.1:
+
2.0.1 (2013-04-16)
------------------
*New:*
- Don't push ``defaults`` to ``get_or_create`` when
- :attr:`~factory.DjangoModelFactory.FACTORY_DJANGO_GET_OR_CREATE` is not set.
+ :attr:`~factory.django.DjangoModelFactory.FACTORY_DJANGO_GET_OR_CREATE` is not set.
+.. _v2.0.0:
+
2.0.0 (2013-04-15)
------------------
@@ -29,11 +144,11 @@ ChangeLog
- The default :attr:`~factory.Sequence.type` for :class:`~factory.Sequence` is now :obj:`int`
- Fields listed in :attr:`~factory.Factory.FACTORY_HIDDEN_ARGS` won't be passed to
the associated class' constructor
- - Add support for ``get_or_create`` in :class:`~factory.DjangoModelFactory`,
- through :attr:`~factory.DjangoModelFactory.FACTORY_DJANGO_GET_OR_CREATE`.
+ - Add support for ``get_or_create`` in :class:`~factory.django.DjangoModelFactory`,
+ through :attr:`~factory.django.DjangoModelFactory.FACTORY_DJANGO_GET_OR_CREATE`.
- Add support for :mod:`~factory.fuzzy` attribute definitions.
- The :class:`Sequence` counter can be overridden when calling a generating function
- - Add :class:`~factory.Dict` and :class:`~factory.List` declarations (Closes #18).
+ - Add :class:`~factory.Dict` and :class:`~factory.List` declarations (Closes :issue:`18`).
*Removed:*
@@ -46,6 +161,8 @@ ChangeLog
- Remove :meth:`~factory.Factory.set_building_function` / :meth:`~factory.Factory.set_creation_function`
+.. _v1.3.0:
+
1.3.0 (2013-03-11)
------------------
@@ -60,7 +177,7 @@ New
- **Global:**
- Rewrite the whole documentation
- - Provide a dedicated :class:`~factory.MogoFactory` subclass of :class:`~factory.Factory`
+ - Provide a dedicated :class:`~factory.mogo.MogoFactory` subclass of :class:`~factory.Factory`
- **The Factory class:**
- Better creation/building customization hooks at :meth:`factory.Factory._build` and :meth:`factory.Factory.create`
@@ -77,7 +194,7 @@ New
its :attr:`~factory.Iterator.cycle` argument to ``False``
- Allow overriding default arguments in a :class:`~factory.PostGenerationMethodCall`
when generating an instance of the factory
- - An object created by a :class:`~factory.DjangoModelFactory` will be saved
+ - An object created by a :class:`~factory.django.DjangoModelFactory` will be saved
again after :class:`~factory.PostGeneration` hooks execution
@@ -112,7 +229,7 @@ In order to upgrade client code, apply the following rules:
:class:`~factory.Factory`, instead of relying on automagic associated class
discovery
- When using factory_boy for Django models, have each factory inherit from
- :class:`~factory.DjangoModelFactory`
+ :class:`~factory.django.DjangoModelFactory`
- Replace ``factory.CircularSubFactory('some.module', 'Symbol')`` with
``factory.SubFactory('some.module.Symbol')``
- Replace ``factory.InfiniteIterator(iterable)`` with ``factory.Iterator(iterable)``
@@ -124,6 +241,8 @@ In order to upgrade client code, apply the following rules:
+.. _v1.2.0:
+
1.2.0 (2012-09-08)
------------------
@@ -131,6 +250,9 @@ In order to upgrade client code, apply the following rules:
- Add :class:`~factory.CircularSubFactory` to solve circular dependencies between factories
+
+.. _v1.1.5:
+
1.1.5 (2012-07-09)
------------------
@@ -138,6 +260,9 @@ In order to upgrade client code, apply the following rules:
- Fix :class:`~factory.PostGenerationDeclaration` and derived classes.
+
+.. _v1.1.4:
+
1.1.4 (2012-06-19)
------------------
@@ -149,6 +274,9 @@ In order to upgrade client code, apply the following rules:
- Introduce :class:`~factory.PostGeneration` and
:class:`~factory.RelatedFactory`
+
+.. _v1.1.3:
+
1.1.3 (2012-03-09)
------------------
@@ -156,6 +284,9 @@ In order to upgrade client code, apply the following rules:
- Fix packaging rules
+
+.. _v1.1.2:
+
1.1.2 (2012-02-25)
------------------
@@ -165,6 +296,9 @@ In order to upgrade client code, apply the following rules:
- Provide :func:`~factory.Factory.generate` and :func:`~factory.Factory.simple_generate`, that allow specifying the instantiation strategy directly.
Also provides :func:`~factory.Factory.generate_batch` and :func:`~factory.Factory.simple_generate_batch`.
+
+.. _v1.1.1:
+
1.1.1 (2012-02-24)
------------------
@@ -172,6 +306,9 @@ In order to upgrade client code, apply the following rules:
- Add :func:`~factory.Factory.build_batch`, :func:`~factory.Factory.create_batch` and :func:`~factory.Factory.stub_batch`, to instantiate factories in batch
+
+.. _v1.1.0:
+
1.1.0 (2012-02-24)
------------------
@@ -190,6 +327,9 @@ In order to upgrade client code, apply the following rules:
- Auto-discovery of :attr:`~factory.Factory.FACTORY_FOR` based on class name is now deprecated
+
+.. _v1.0.4:
+
1.0.4 (2011-12-21)
------------------
@@ -201,7 +341,7 @@ In order to upgrade client code, apply the following rules:
- Introduce :data:`~factory.MOGO_BUILD` build function
- Add support for inheriting from multiple :class:`~factory.Factory`
- Base :class:`~factory.Factory` classes can now be declared :attr:`abstract <factory.Factory.ABSTRACT_FACTORY>`.
- - Provide :class:`~factory.DjangoModelFactory`, whose :class:`~factory.Sequence` counter starts at the next free database id
+ - Provide :class:`~factory.django.DjangoModelFactory`, whose :class:`~factory.Sequence` counter starts at the next free database id
- Introduce :class:`~factory.SelfAttribute`, a shortcut for ``factory.LazyAttribute(lambda o: o.foo.bar.baz``.
*Bugfix:*
@@ -210,6 +350,9 @@ In order to upgrade client code, apply the following rules:
- Share sequence counter between parent and subclasses
- Fix :class:`~factory.SubFactory` / :class:`~factory.Sequence` interferences
+
+.. _v1.0.2:
+
1.0.2 (2011-05-16)
------------------
@@ -217,6 +360,9 @@ In order to upgrade client code, apply the following rules:
- Introduce :class:`~factory.SubFactory`
+
+.. _v1.0.1:
+
1.0.1 (2011-05-13)
------------------
@@ -229,6 +375,9 @@ In order to upgrade client code, apply the following rules:
- Fix concurrency between :class:`~factory.LazyAttribute` and :class:`~factory.Sequence`
+
+.. _v1.0.0:
+
1.0.0 (2010-08-22)
------------------