~ubuntu-branches/ubuntu/trusty/python-axiom/trusty

« back to all changes in this revision

Viewing changes to NEWS.txt

  • Committer: Bazaar Package Importer
  • Author(s): Debian Python Modules Team, Sandro Tosi, Vincent Bernat
  • Date: 2010-01-13 20:38:50 UTC
  • mfrom: (1.2.4 upstream)
  • Revision ID: james.westby@ubuntu.com-20100113203850-v552yecly7l65dtd
Tags: 0.6.0-1
[ Sandro Tosi ]
* debian/rules
  - don't FTBFS when removing not-existing dirs; thanks to Lucas Nussbaum for
    the report; Closes: #560565

[ Vincent Bernat ]
* New upstream release.
* debian/control
  - don't use obsolete "<" for Conflicts field; use "<<" instead. Closes: #557926.
  - bump Standards-Version

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
0.5.31 (2008-12-09):
2
 
  - An IStatEvent is now logged when a store is opened.
3
 
  - Different schema versions of the same item type now no longer
4
 
    compare equal, which fixes some breakage in the upgrade system,
5
 
    among other things.
6
 
  - Significantly reduce the runtime cost of opening a store by
7
 
    reducing the amount of work spent to verify schema correctness.
8
 
 
9
 
0.5.30 (2008-10-15):
10
 
  - Fixed a _SubSchedulerParentHook bug where a transient run failure
11
 
    would cause future event scheduling in the relevant substore to
12
 
    fail/traceback.
13
 
 
14
 
0.5.29 (2008-10-02):
15
 
  - Added 'requiresFromSite' to axiom.dependency, expressing a
16
 
    requirement on the site store for the successful installation of
17
 
    an item in a user store.
18
 
  - Made errors from duplicate item type definition friendlier.
19
 
 
20
 
0.5.28 (2008-08-12):
21
 
  - Upgraders can now safely upgrade reference attributes.
22
 
  - The batch process is no longer started unless it's needed.
23
 
  - Removed use of private Decimal APIs that changed in Python 2.5.2.
24
 
 
25
 
  - "axiomatic start" changed to use the public interface to twistd's
26
 
    behaviour instead of relying on internal details.
27
 
  - Store now uses FilePaths to refer to its database or files directory.
28
 
  - Automatic powerup discovery is now a feature of powerups rather
29
 
    than of axiom.dependency.
30
 
  - Stores now record the released versions of code used to open them.
31
 
  - "axiomatic upgrade" added, a command for completely upgrading a store.
32
 
  - Removed no-longer-working APSW support code.
33
 
 
34
 
0.5.27 (2007-11-27):
35
 
  - Substores and file storage for in-memory stores are now supported.
36
 
 
37
 
0.5.26 (2007-09-05):
38
 
  - A bug where exceptions were raised when tables were created concurrently is
39
 
    now fixed.
40
 
 
41
 
0.5.25 (2007-08-01):
42
 
  - Added the beginnings of a query introspection API.
43
 
 
44
 
0.5.24 (2007-07-06):
45
 
  - Added a 'postCopy' argument to
46
 
    upgrade.registerAttributeCopyingUpgrader, a callable run
47
 
    with the new item after upgrading.
48
 
 
49
 
0.5.23 (2007-06-06):
50
 
  - Fixed a bug where user store insertion/extraction failed if a
51
 
    SubScheduler was installed but no TimedEvents existed.
52
 
 
53
 
0.5.22 (2007-05-24):
54
 
  - Fixed docstrings in axiom.dependency.
55
 
  - Scheduler and SubScheduler now declared to implement IScheduler.
56
 
 
57
 
0.5.21 (2007-04-27):
58
 
  - Multi-version upgraders are now supported: an upgrader function
59
 
    can upgrade items more than a single version at a time.
60
 
  - Multi-item-class queries now supported: Store.query takes a tuple
61
 
    as its first argument, similar to a comma-separated column clause
62
 
    for a SELECT statement in SQL.
63
 
  - Empty textlists are now properly distinguished from a textlist
64
 
    containing a single empty string.
65
 
  - Handling of items scheduled to run with axiom.scheduler being
66
 
    deleted before they run has been fixed.
67
 
 
68
 
0.5.20 (2007-02-23):
69
 
  - AxiomaticCommand is no longer itself an axiom plugin.
70
 
  - axiom.test.historic.stubloader.StubbedTest now has an
71
 
    'openLegacyStore' method, for opening the unupgraded store
72
 
    multiple times.
73
 
  - The default argument to Store.getItemByID is now respected in the
74
 
    case where an attempt is made to load an item which was created
75
 
    and deleted within a single transaction.
76
 
 
77
 
0.5.19 (2007-01-11):
78
 
  - A new method, axiom.store.ItemQuery.paginate, has been added, which splits
79
 
    a query's result-gathering work into multiple "pages" so that we can deal
80
 
    with extremely large result sets.
81
 
  - A dependency management system for Items has been added in
82
 
    axiom.dependency. InstallableMixin has been removed; 
83
 
    axiom.dependency.installOn is now used to install Items and connect powerups.
84
 
    Items can declare their dependence on another item by declaring attributes
85
 
    with axiom.dependency.dependsOn. When items are installed, their dependencies
86
 
    will be created and installed as well. Installation is no longer tracked by 
87
 
    'installedOn' attributes but by _DependencyConnector items.
88
 
  - A bug preventing 'axiomatic userbase list' from working on a fresh
89
 
    mantissa database has been fixed.
90
 
 
91
 
0.5.18 (2006-12-08):
92
 
  - Change ItemQuery.deleteFromStore so that it will call deleteFromStore on an
93
 
    Item subclass if it has overridden that method.
94
 
 
95
 
0.5.17 (2006-11-20):
96
 
  - Added fullyQualifiedName to IColumn, _StoreIDComparer, and _PlaceholderColumn.
97
 
  - Added support for distinct Item queries and for counting distinct attribute
98
 
    queries.
99
 
  - Exceptions raised by Axiom upgrade methods are logged instead of silently
100
 
    swallowing them.
101
 
 
102
 
0.5.16 (2006-11-17):
103
 
  - Updated axiomatic to work with Twisted trunk.
104
 
 
105
 
0.5.15 (2006-10-31):
106
 
 
107
 
  - Raise a more informative exception when accessing Item references pointing
108
 
    to nonexistent items.
109
 
  - Enforce prevention of deletion of items referred to by references set to
110
 
    reference.DISALLOW.
111
 
  - Tables in the FROM clause of SQL generated by queries are now ordered by the
112
 
    order of the Item subclasses in the comparisons used to generate them.
113
 
  - A new IComparison implementation has been added to allow application-level
114
 
    code to explicitly specify the order of types in the join.
115
 
 
116
 
0.5.14 (2006-10-17):
117
 
  - Added a 'batchInsert' method to Store, allowing insertion of items without
118
 
    loading them into memory.
119
 
  - Change ItemQuery.deleteFromStore to delete items without loading them if
120
 
    possible.
121
 
 
122
 
0.5.13 (2006-10-05):
123
 
  - Changed userbase.getLoginMethods to return LoginMethods rather than
124
 
    (localpart, domain) tuples.
125
 
 
126
 
0.5.12 (2006-09-29):
127
 
  - Fixed a scheduler bug that would cause tasks scheduled in a substore to be
128
 
    removed from the scheduler.
129
 
 
130
 
0.5.11 (2006-09-20):
131
 
  - dependency.dependsOn now takes similar arguments to attributes.reference.
132
 
 
133
 
0.5.10 (2006-09-12):
134
 
  - The axiomatic commands "insert-user" and "extract-user" now interact with
135
 
    the scheduler properly.
136
 
 
137
 
0.5.9 (2006-08-30):
138
 
  - A new dependency-management system has been added, in axiom.dependency.
139
 
 
140
 
0.5.8 (2006-08-17):
141
 
  - The upgrader added in the previous release has been fixed.
142
 
 
143
 
0.5.7 (2006-08-14):
144
 
  - item.Item has a new method, stored, which will be called the first time an
145
 
    item is added to a store, in the same transaction as it is added.
146
 
  - A new class, item.Placeholder, has been added to assist in self-join
147
 
    queries.
148
 
 
149
 
0.5.6 (2006-07-18):
150
 
  - userbase.LoginSystem now raises a new exception type when login is attempted
151
 
    using a username with no domain part.
152
 
 
153
 
0.5.5 (2006-07-08):
154
 
  - SubStoreStartupService was removed; user stores' services are no longer
155
 
    incorrectly started when the Mantissa administrative powerup is installed.
156
 
  - IPowerupIndirector was added, allowing for installation of SubStore items
157
 
    as powerups on other items.
158
 
 
159
 
0.5.4 (2006-07-05):
160
 
  - Items with attributes.path attributes can now be upgraded.
161
 
  - axiom.scheduler has been improved to make clock-related tests easier to write.
162
 
  - Improved test coverage and various bugfixes.
163
 
 
164
 
0.5.3 (2006-06-27):
165
 
  - A bug causing the table name cache to grow too large was fixed.
166
 
 
167
 
0.5.2 (2006-06-26):
168
 
  - Type names are now determined on a per-store basis, rather than cached
169
 
    globally on the Item.
170
 
 
171
 
0.5.1 (2006-06-16):
172
 
  - axiom.slotmachine._structlike removed in favor of the implementation in
173
 
    Epsilon, epsilon.structlike.record.
174
 
  - The batch process has been adjusted to do more work per iteration. 
175
 
 
176
 
0.5.0 (2006-06-12):
177
 
  Highlights:
178
 
  - Fixed several bugs, including several potential data-corruption issues.
179
 
    All users are recommended to upgrade, but back up your data and test your
180
 
    upgrade first!
181
 
  - There is now a 'money' attribute type which uses fixed-precision math in
182
 
    the database specifically designed for dealing with the types of issues
183
 
    associated with database-persistent financial data.
184
 
  - Some simple relational constraints (the equivalent of ON DELETE CASCADE)
185
 
    have been implemented using the 'whenDeleted' keyword argument.
186
 
  - Indexes which are created in your code will now automatically be added to
187
 
    opened databases without requiring an upgrader or a change to your Item's
188
 
    schemaVersion.
189
 
  - You can now use 'declareLegacyItem' to declare legacy schemas to record the
190
 
    schema of older versions of your software -- this enables upgrading of more
191
 
    than one step per release of your application code.
192
 
  - You can now create multi-column indexes using attributes.compoundIndex.
193
 
  ---
194
 
  - Made Item.typeName and Item.schemaVersion optional in most cases.
195
 
  - Added axiom.batch for reliably operating on large groups of items.
196
 
  - Removed all usages of util.wait from tests
197
 
  - added 'queryutil.contains' utility query method, for testing when a value
198
 
    is between two attributes.
199
 
  - Added 'negate' argument to oneOf, allowing for issing SQL 'NOT IN' queries.
200
 
  - Improved reliability of the scheduler.  Errors are now logged in a
201
 
    structured manner.
202
 
  - Added helper classes for writing axiomatic plug-in commands; see
203
 
    documentation for axiomatic.scripts.axiomatic.AxiomaticCommand and
204
 
    AxiomaticSubCommand.
205
 
  - AttributeQuery now provides .min() and .max() methods which return the
206
 
    obvious thing.
207
 
  - Transactions are more managed more conservatively; BEGIN IMMEDIATE
208
 
    TRANSACTION is used at the beginning of each transact() call, to guarantee
209
 
    that concurrent access is safe, if sometimes slightly slower.
210
 
  - SQL generation has been deferred to query time, which means that there is a
211
 
    more complete API for manipulating Query objects.
212
 
  - repr() of various objects has been improved for easier debugging.
213
 
  - Axiom now emits various log events which you can observe if you wish to
214
 
    analyze query statistics in real-time.  These events don't go to the text log by
215
 
    default: Mantissa, for example, uses them to display a pie chart of the
216
 
    most expensive queries on a running system.
217
 
 
218
 
0.4.0 (2005-12-20):
219
 
  - Fixed sum() in the case of a table with no rows.
220
 
  - LoginAccount no longer contains authentication information, but may be
221
 
    referred to by one or more LoginMethods, which do.
222
 
  - Added an attribute type for floats: ieee754_double.
223
 
  - Enhanced functionality in axiom.sequence.List.
224
 
  - Added support for SQL DISTINCT queries.
225
 
  - On the command line, axiomatic will attempt to automatically discover
226
 
    the correct database to use, if one is not specified.
227
 
  - PID and logfiles are now kept in a subdirectory of the database
228
 
    directory.
229
 
  - The "start" axiomatic subcommand now works on Windows.
230
 
  - Two new axiomatic subcommands have been added related to running servers
231
 
    from Axiom database: "stop" and "status".
232
 
  - Two new axiomatic subcommands have been added related to user
233
 
    management: "extract-user" and "insert-user" for removing users from and
234
 
    adding users to an existing credentials database, along with all of
235
 
    their data.
236
 
  - Axiom queries can now be sorted by a tuple of columns.
237
 
 
238
 
0.3.0 (2005-11-02):
239
 
  - Removed Axiom/axiom/examples/axiom.tac
240
 
  - Added 'axiomatic start'
241
 
  - added 'hyper', a 'super' capable of working with Item mixins
242
 
  - added check to make sure Unicode strings won't be misleadingly persisted as
243
 
    bytes(), like so:
244
 
        >>> str(buffer(u'hello'))
245
 
        'h\x00\x00\x00e\x00\x00\x00l\x00\x00\x00l\x00\x00\x00o\x00\x00\x00'
246
 
  - formalized and improved query result to be an object with its own interface
247
 
    rather than a generator
248
 
  - correctly call activate() on items after they have been upgraded
249
 
 
250
 
0.2.0 (2005-10-27):
251
 
  - Removed accidental Mantissa dependency
252
 
  - Automatic upgrade service added
253
 
  - Lots of new docstrings
254
 
  - Query utility module added, with a function for finding overlapping
255
 
    ranges
256
 
  - Added formal interface for the `where' argument to Store.query()
257
 
  - Added 'oneOf' attribute