Releases: eoyilmaz/stalker
0.2.22
Finally a new release. More than one year has passed after the previous one and a new release has born. This release will mainly fix the installation problems with setup_tools
. Fix a couple of problems in TaskJugglerScheduler that prevented it run in Python 3.x without any problems and some other small stuff. Bone appetite!
-
Fix: Fixed
TaskJugglerScheduler.schedule()
method to correctly decode byte data fromsys.stderr
to string for Python 3.x. -
Fix: Fixed a couple of tests for TaskJuggler.
-
Update: Updated Classifiers information in
setup.py
, removed Python versions 2.6, 3.0, 3.1 and 3.2 from supported Python versions. -
Fix: Removed Python 3.3 from TravisCI build which is not supported by
pytest
apparently. -
Update: Updated TravisCI config and removed Python 2.6 and added Python 3.6.
-
Update: Added a test case for an edge usage of FilenameTemplate.
-
Update: Updated .gitignore file to ignore PyTest cache folder.
-
Update: Updated the License file to correctly reflect the project license of LGPLv3.
-
Update: Update copyright information.
-
New: Created
make_html.bat
for Windows. -
New: Added support for Python wheel.
0.2.21
0.2.21
-
New: Switched from
nose
+unittest
topytest
as the main testing framework (withpytest-xdist
tests complete 4x faster). -
New: Added
DBSession.save()
shortcut method for convenience which does anadd
oradd_all
(depending to the input) followed by acommit
at once. -
Update: Updated the about page for a more appealing introduction to the library.
-
New: Stalker now creates default
StatusList
forProject
instances on database initialization. -
Update: SQLite3 support is back. In fact it was newer gone. It was dropped for the sake of adding more PostgreSQL oriented features. But then it is recognized that the system can handle both. Though a two new Variant had to be created for JSON and Datetime columns. For simplicity of first time users the default database is again SQLite3.
-
Update: With the reintroduction of SQLite3, the new JSON type column in
WorkingHours
class has been upgraded to support SQLite3. So with SQLite3 the column stores the data as TEXT but seamlessly convert them to JSON when ORM loads or commits the data. -
New: Added
ConfigBase
as a base class forConfig
to let it be used in other config classes. -
Fix: Fixed
testing.create_db()
andtesting.drop_db()
to fallback tosubprocess.check_call
method for Python 2.6. -
Fix: Fixed
stalker.models.auth.User._validate_password()
method to work with Python 2.6. -
Update: Updated all of the tests to use
pytest
style assertions to support Python 2.6 along with 2.7 and 3.0+. -
Fix: Fixed
stalker.db.check_alembic_version()
function to invalidate the connection, so it is not possible to continue with the current session, preventing users to ignore the raisedValueError
when thealembic_version
of the database is not matching thealembic_version
of Stalker's current version.
0.2.20
-
New: Added
goods
attribute to theClient
class to allow special pricedGoods
to be created for individual clients. -
Fix: The
WorkingHours
class is now derived fromEntity
thus it is not stored in aPickleType
column inStudio
anymore. (issue: #44) -
Update: Updated
appveyor.yml
to matchtravis.yml
.
0.2.19
-
Update: Updated the
stalker.config.Config.database_engine_settings
to point the test database. -
Fix: Fixed a bug in
stalker.testing.UnitTestDBBase.setUp()
where it was not considering the existence of theSTALKER_PATH
environment variable while doing the tests. -
Update: Removed debug message from
db.setup()
which was revealing the database password. -
Update: Updated the
UnitTestDBBase
, it now creates its own test database, which allows all the tests to run in an individual database. Thus, the tests can now be run inmultiprocess
mode which speeds things a lot. -
Fix: Removed any module level imports of
stalker.defaults
variable, which can be changed by a Studio (or by tests) and should always be refreshed. -
Update: Removed the module level import of the
stalker.db.session.DBSession
instalker.db
, so it is not possible to usedb.DBSession
anymore (usestalker.db.session.DBSession
instead). -
Update: The import statements that imports
stalker.defaults
moved to local scopes to allow runtime changes to thedefaults
to be reflected correctly. -
Update: Added Python fall back mode to
stalker.shot.Shot._check_code_availability()
which runs when there is no database. -
Update:
stalker.models.task.TimeLog._validate_task()
is now getting theStatus
instances from theStatusList
that is attached to theTask
instance instead of doing a database query. -
Update:
stalker.models.task.TimeLog._validate_resource()
is now falling back to a Python implementation if there is no database connection. -
Update:
stalker.models.task.Task._total_logged_seconds_getter()
is now hundreds of times faster when there is a lot ofTimeLog
instances attached to theTask
. -
Update: In
stalker.models.task.Task
class, methods those were doing a database query to get the requiredStatus
instances are now using the attachedStatusList
instance to get them. -
Fix: A possible
auto_flush
is prevented inTicket
class. -
Update:
Version.latest_version
property is now able to fall back to a pure Python implementation when there is no database connection. -
Update: The default log level has been increased from
DEBUG
toINFO
. -
Update: In an attempt to speed up tests, a lot of tests that doesn't need an active Database has been updated to use the regular
unittest.TestCase
instead ofstalker.testing.TestBase
and as a result running all of the tests are now 2x faster. -
Fix:
TimeLogs
are now correctly reflected in UTC in a tj3 file. -
Fix: Fixed a lot of tests which were raising Warnings and surprisingly considered as Errors in TravisCI.
-
Fix:
to_tjp
methods of SOM classes that is printing a Datetime object are now printing the dates in UTC. -
Fix: Fixed
stalker.models.auth.Permission
to be hashable for Python 3. -
Fix: Fixed
stalker.models.auth.AuthenticationLog
to be sortable for Python 3. -
Fix: Fixed
stalker.models.version.Version.latest_version
property for Python 3. -
Fix: Fixed tests of
Permission
class to check for correct exception messages in Python 3. -
Update: Replaced the
assertEquals
andassertNotEquals
calls which are deprecated in Python 3 withassertEqual
andassertNotEquals
calls respectively. -
Fix: Fixed tests for
User
andVersion
classes to not to cause theid column is None
warnings of SQLAlchemy to be emitted.
0.2.18
-
Update: Support for DB backends other than Postgresql has been dropped. This is done to greatly benefit from a code that is highly optimized only for one DB backend. With this change, all of the tests should be inherited from the
stalker.tests.UnitTestBase
class. -
New: All the DateTime fields in Stalker are now TimeZone aware and Stalker stores the DateTime values in UTC. Naive datetime values are not supported anymore. You should use a library like
pytz
to supply timezone information as shown below::
import datetime
import pytz
from stalker import db, SimpleEntity
new_simple_entity = SimpleEntity(
name='New Simple Entity',
date_created = datetime.datetime.now(tzinfo=pytz.utc)
)
-
Fix: The default values for
date_created
anddate_updated
has now been properly set to a partial function that returns the current time. -
Fix: Previously it was possible to enter two TimeLogs for the same resource in the same datetime range by committing the data from two different sessions simultaneously. Thus the database was not aware that it should prevent that. Now with the new PostgreSQL only implementation and the
ExcludeConstraint
of PostgreSQL anIntegrityError
is raised by the database backend when something like that happens. -
Update: All the tests those are checking the system against an Exception is being raised or not are now checking also the exception message.
-
Update: In the
TimeLog
class, the raisedOverBookedException
message has now been made clear by adding the start and end date values of the clashing TimeLog instance. -
Update: Removed the unnecessary
computed_start
andcomputed_end
columns fromTask
class, which are already defined in theDateRangeMixin
which is a super for the Task class.
0.2.17.6
0.2.17.5
- Fix: Fixed the
image_format
attribute implementation inShot
class. Now it will not copy the value ofProject.image_format
directly on__init__
but instead will only store the value if theimage_format
argument in__init__
orShot.image_format
attribute is set to something.