/[thuban]/branches/WIP-pyshapelib-bramz/ChangeLog
ViewVC logotype

Diff of /branches/WIP-pyshapelib-bramz/ChangeLog

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1647 by bh, Mon Aug 25 13:44:14 2003 UTC revision 1718 by bh, Thu Sep 18 12:41:46 2003 UTC
# Line 1  Line 1 
1    2003-09-18  Bernhard Herzog  <[email protected]>
2    
3            * setup.py (data_files): Only add the mo files if the Locales
4            directory actually exists, so that setup.py works with a fresh CVS
5            checkout
6    
7    2003-09-12  Jan-Oliver Wagner <[email protected]>
8    
9            * Examples/simple_extensions/simple_tool.py: bugfix: Tool is now
10            in viewport, not anymore in view
11    
12    2003-09-04  Jan-Oliver Wagner <[email protected]>
13    
14            Introducing first Extension (gns2shp).
15    
16            * Extensions, Extensions/gns2shp, Extensions/gns2shp/test: New.
17    
18            * Extensions/__init__.py: New. init to make this dir a package.
19    
20            * Extensions/gns2shp/__init__.py: New. init to make this dir a package.
21    
22            * Extensions/gns2shp/test/README: New. some info on this test directory.
23    
24            * Extensions/gns2shp/test/ls.txt: New. test data set (Liechtenstein).
25    
26            * Extensions/gns2shp/test/test_gns2shp.py: New. Test for correct creation
27            of Shapefile from GNS text file format
28    
29            *
30    2003-09-03  Jan-Oliver Wagner <[email protected]>
31    
32            Fix/workaround for bug #2019:
33            https://intevation.de/rt/webrt?serial_num=2019
34    
35            * Thuban/UI/identifyview.py (IdentifyView.ID_STOP): New.
36            (IdentifyView.__init__): Added another button that allows to
37            stop the identify mode.
38            (IdentifyView.OnStop): New. Stops the identify mode.
39    
40    2003-09-03  Jan-Oliver Wagner <[email protected]>
41    
42            Introducing a new exception dialog that allows to exit the
43            application immediately.
44            This fixes bug #2060: https://intevation.de/rt/webrt?serial_num=2060
45    
46            * Thuban/UI/exceptiondialog.py: New. A special exception dialog.
47    
48            * Thuban/UI/application.py (ThubanApplication.ShowExceptionDialog):
49            Made strings available to translations. Exchanged the simple
50            ScrolledMessageDialog by the new ExceptionDialog.
51    
52    2003-09-01  Bernhard Herzog  <[email protected]>
53    
54            * NEWS: New. Summary of changes and release notes.
55    
56            * MANIFEST.in: Add NEWS
57    
58    2003-09-01  Bernhard Herzog  <[email protected]>
59    
60            * MANIFEST.in: Correct the include statement for the mo-files and
61            include the documentation too.
62    
63            * setup.py (data_files): Add the .mo files
64            (setup call): Up to version 0.9.0
65    
66    2003-09-01  Bernhard Herzog  <[email protected]>
67    
68            * Thuban/UI/dbdialog.py (ChooseDBTableDialog.__init__): Change the
69            parameter list to just parent and session
70            (ChooseDBTableDialog.__set_properties): Removed. Setting the
71            selection of empty list boxes is not allowed (and produces C++
72            assertion errors) and the rest of the setup is better done in
73            __init__ anyway.
74            (ChooseDBTableDialog.OnCancel, ChooseDBTableDialog.OnOK)
75            (ChooseDBTableDialog.OnLBDClick, DBDialog.OnOK): Use the Python
76            builtins True/False for booleans to avoid warnings from wxPython
77    
78            * Thuban/UI/mainwindow.py (MainWindow.AddDBLayer): Adapt to new
79            ChooseDBTableDialog constructor parameters.
80    
81    2003-09-01  Bernhard Herzog  <[email protected]>
82    
83            * Thuban/Model/postgisdb.py
84            (PostGISTable): Extend doc-string
85            (PostGISTable._fetch_table_information): Set the column index
86            correctly, pretending ignored columns don't exist.
87    
88            * test/test_postgis_db.py (TestPostGISIgnoredColumns): New tests
89            for postgis tables with data types not yet supported by thuban.
90    
91    2003-08-29  Bernhard Herzog  <[email protected]>
92    
93            * HOWTO-Release: Tweak item about running the tests.
94    
95    2003-08-29  Jan-Oliver Wagner <[email protected]>
96    
97            * /Doc/manual/thuban-manual.xml: updated to version 1.0pre2.
98    
99    2003-08-29  Bernhard Herzog  <[email protected]>
100    
101            Add some missing parameters to projections. Proj complains about
102            them on windows but for some reason not on Linux.
103    
104            * test/test_save.py (SaveSessionTest.testLayerProjection): Add
105            missing required projection parameters
106    
107            * test/test_proj.py (TestProjFile.test): Add missing required
108            projection parameters
109    
110            * test/test_load_0_8.py (TestLayerProjection.file_contents)
111            (TestLayerProjection.test): Add missing required projection
112            parameters and tests for them
113    
114            * test/test_load.py (TestLayerProjection.file_contents)
115            (TestLayerProjection.test): Add missing required projection
116            parameters and tests for them
117    
118            * test/test_layer.py (TestLayer.test_base_layer): Add missing
119            required projection parameters
120    
121    2003-08-29  Bernhard Herzog  <[email protected]>
122    
123            * libraries/pyprojection/Projection.i: Use pj_get_errno_ref to
124            access the pj_errno because directly accessing pj_errno doesn't
125            work on windows if the proj library is in a DLL
126    
127            * libraries/pyprojection/Projection_wrap.c: Update from Projection.i
128    
129    2003-08-28  Bernhard Herzog  <[email protected]>
130    
131            * test/test_proj.py: Import things from Thuban after calling
132            initthuban
133    
134            * test/test_load.py (LoadSessionTest.filenames): New class
135            variable with the filename attributes to normalize
136            (LoadSessionTest.check_format): Pass self.filenames to
137            sax_eventlist to normalize the filename attributes
138    
139            * test/xmlsupport.py: Add cvs keywords
140            (SaxEventLister.__init__): New parameter filenames which indicates
141            attributes that contain filenames
142            (SaxEventLister.startElementNS): Normalize the filename attributes
143            with os.path.normpath
144            (sax_eventlist): New parameter filenames to pass through to
145            SaxEventLister
146    
147            * test/test_derivedshapestore.py: Make this file callable as a
148            program to execute the tests
149            (TestDerivedShapeStoreExceptions.test_table_with_wrong_size): Bind
150            the session to self.session so that it gets destroyed properly
151    
152            * test/test_layer.py (TestLayer.tearDown): Call the session's
153            Destroy method
154    
155            * test/test_map.py (TestMapBase.tearDown): Destroy self.session
156            too if it exists
157            (TestMapAddLayer.test_add_layer): Bind the session to self.session
158            so that it gets destroyed properly
159    
160            * test/postgissupport.py (reason_for_not_running_tests): Add a
161            test for the existence of popen2.Popen4.
162    
163            * test/test_save.py (SaveSessionTest.tearDown): New. Provide a
164            reliable way to destroy the sessions created in the test cases
165            (SaveSessionTest.test_dbf_table): Bind the session to self.session
166            so that it gets destroyed properly
167            (SaveSessionTest.testLayerProjection): Bind the session to
168            self.session so that it gets destroyed properly
169    
170            * test/test_session.py (UnreferencedTablesTests.tearDown): Make
171            sure that the session is destroyed properly
172    
173            * test/test_shapefilestore.py: Make this callable as a program to
174            execute the tests
175    
176            * test/test_scalebar.py: Remove unnecessary import of _ from
177            Thuban
178    
179            * test/support.py (print_garbage_information): Call initthuban
180            here because it may be called indirectly from test cases that test
181            test support modules which do not use anything from thuban itself
182            (ThubanTestProgram.runTests): Remove unnecessary debug print
183    
184    2003-08-28  Bernhard Herzog  <[email protected]>
185    
186            * Thuban/version.py (longversion): Update to 0.9
187    
188            * Thuban/UI/mainwindow.py: Remove some unused imports
189    
190            * README: Add section about required additional software. Add date
191            and revision CVS keywords
192    
193            * HOWTO-Release: Add item about the translations. Add date and
194            revision CVs keywords and change formatting to match README a bit
195            better
196    
197            * po/de.po: Update for 0.9
198    
199            * test/README: Tweak the wording a little because many tests are
200            not really unittest.
201    
202    2003-08-27  Bernhard Herzog  <[email protected]>
203    
204            As preparation for the 0.9 release, switch thuban files to a
205            non-dev namespace
206    
207            * Thuban/Model/save.py (SessionSaver.write_session): Write files
208            with the http://thuban.intevation.org/dtds/thuban-0.9.dtd
209            namespace
210    
211            * Thuban/Model/load.py (SessionLoader.__init__): Accept the
212            http://thuban.intevation.org/dtds/thuban-0.9.dtd namespace too
213    
214            * test/test_save.py (SaveSessionTest.dtd)
215            (SaveSessionTest.testEmptySession)
216            (SaveSessionTest.testSingleLayer)
217            (SaveSessionTest.testLayerProjection)
218            (SaveSessionTest.testRasterLayer)
219            (SaveSessionTest.testClassifiedLayer)
220            (SaveSessionTest.test_dbf_table)
221            (SaveSessionTest.test_joined_table)
222            (SaveSessionTest.test_save_postgis): Update for new namespace
223    
224            * test/test_load.py (LoadSessionTest.dtd, TestSingleLayer)
225            (TestLayerVisibility.file_contents, TestLabels.file_contents)
226            (TestLayerProjection.file_contents)
227            (TestRasterLayer.file_contents, TestJoinedTable.file_contents)
228            (TestPostGISLayer.file_contents)
229            (TestPostGISLayerPassword.file_contents)
230            (TestLoadError.file_contents, TestLoadError.test): Update for new
231            namespace
232    
233    2003-08-27  Bernhard Herzog  <[email protected]>
234    
235            Make the table interface distinguish between row ids (an integer
236            that uniquely identifies a row) and row ordinals (a simple row
237            count from 0 to NumRows() - 1)
238    
239            * Thuban/Model/postgisdb.py (PostGISTable.RowIdToOrdinal)
240            (PostGISTable.RowOrdinalToId): New methods to conver between row
241            ids and row ordinals
242            (PostGISTable.ReadRowAsDict, PostGISTable.ReadValue): New keyword
243            parameter row_is_ordinal to indicate whether the row parameter is
244            the row id or the ordinal
245    
246            * Thuban/Model/transientdb.py (TransientTableBase.RowIdToOrdinal)
247            (TransientTableBase.RowOrdinalToId)
248            (AutoTransientTable.RowIdToOrdinal)
249            (AutoTransientTable.RowOrdinalToId): Same new methods as in
250            PostGISTable.
251            (TransientTableBase.ReadRowAsDict, TransientTableBase.ReadValue)
252            (AutoTransientTable.ReadRowAsDict, AutoTransientTable.ReadValue):
253            Same new parameter as in PostGISTable.
254    
255            * Thuban/Model/table.py (DBFTable.RowIdToOrdinal)
256            (DBFTable.RowOrdinalToId, MemoryTable.RowIdToOrdinal)
257            (MemoryTable.RowOrdinalToId): Same new methods as in PostGISTable.
258            (DBFTable.ReadValue, DBFTable.ReadRowAsDict)
259            (MemoryTable.ReadValue, MemoryTable.ReadRowAsDict): Same new
260            parameter as in PostGISTable.
261    
262            * Thuban/UI/tableview.py (DataTable.RowIdToOrdinal)
263            (DataTable.RowOrdinalToId): New methods to convert between row ids
264            and row ordinals.
265            (TableGrid.SelectRowById): New method to select a row based on its
266            ID as opposed to its ordinal
267            (DataTable.GetValue, TableGrid.OnRangeSelect)
268            (TableGrid.OnSelectCell, LayerTableGrid.select_shapes)
269            (QueryTableFrame.OnQuery, QueryTableFrame.get_selected)
270            (LayerTableFrame.__init__): Convert between row ids and row
271            ordinals as appropriate
272    
273            * test/postgissupport.py (PostGISDatabase.__init__): Add
274            doc-string.
275            (PostGISDatabase.initdb): The optional third item in a tuple in
276            tables is now a (key, value) list with additional arguments to
277            pass to upload_shapefile
278            (upload_shapefile): New parameter gid_offset to allow gids that
279            are not the same as the shapeids in the shapefile
280            (PostgreSQLServer.get_default_static_data_db): Use the new
281            gid_offset to make the gids in landmarks 1000 higher than the
282            shapeids in the shapefile
283    
284            * test/test_viewport.py
285            (TestViewportWithPostGIS.test_find_shape_at_point): Adapt to the
286            new shapeids in the landmarks table
287    
288            * test/test_transientdb.py
289            (TestTransientTable.run_iceland_political_tests)
290            (TestTransientTable.test_transient_joined_table): Add tests for
291            the new table methods and new keywords arguments.
292    
293            * test/test_postgis_db.py
294            (TestPostGISTable.test_read_row_as_dict_row_count_mode)
295            (TestPostGISTable.test_read_value_row_count_mode)
296            (TestPostGISTable.test_row_id_to_ordinal)
297            (TestPostGISTable.test_row_oridnal_to_id): New test for the new
298            table methods and the new arguments
299            (TestPostGISShapestorePoint.test_shapes_in_region)
300            (TestPostGISShapestorePoint.test_shape_raw_data)
301            (TestPostGISShapestorePoint.test_shape_points)
302            (TestPostGISShapestorePoint.test_shape_shapeid)
303            (TestPostGISShapestorePoint.test_all_shapes)
304            (TestPostGISTable.test_simple_query)
305            (TestPostGISTable.test_simple_query)
306            (TestPostGISTable.test_simple_query)
307            (TestPostGISTable.test_read_value)
308            (TestPostGISTable.test_read_row_as_dict): Adapt to the new
309            shapeids in the landmarks table
310    
311            * test/test_memory_table.py
312            (TestMemoryTable.test_read_row_as_dict_row_count_mode)
313            (TestMemoryTable.test_read_value_row_count_mode)
314            (TestMemoryTable.test_row_id_to_ordinal)
315            (TestMemoryTable.test_row_oridnal_to_id): New test for the new
316            table methods and the new arguments
317    
318            * test/test_dbf_table.py
319            (TestDBFTable.test_read_row_as_dict_row_count_mode)
320            (TestDBFTable.test_read_value_row_count_mode)
321            (TestDBFTable.test_row_id_to_ordinal)
322            (TestDBFTable.test_row_oridnal_to_id): New test for the new table
323            methods and the new arguments
324    
325    2003-08-26  Bernhard Herzog  <[email protected]>
326    
327            * Thuban/Model/postgisdb.py (PostGISShapeStore.BoundingBox): Use a
328            more postgis specific but much faster method to get the bounding
329            box
330    
331    2003-08-26  Bernhard Herzog  <[email protected]>
332    
333            * Thuban/Model/postgisdb.py (PostGISTable.Title)
334            (PostGISShapeStore.AllShapes): Add these missing methods.
335            (PostGISShapeStore.ShapesInRegion): No need to raise
336            StopIteration. We can simply return
337    
338            * test/test_postgis_db.py (TestPostGISTable.test_title)
339            (TestPostGISShapestorePoint.test_all_shapes): New tests for the
340            new methods
341    
342    2003-08-25  Bernhard Herzog  <[email protected]>
343    
344            * Thuban/Model/postgisdb.py (shapetype_map): Add MUTLIPOLYGON.
345    
346            * test/test_postgis_db.py (PolygonTests): New class containing
347            those tests from TestPostGISShapestorePolygon that can also be
348            used to test MUTLIPOLYGON tables
349            (TestPostGISShapestorePolygon): Most tests are now in PolygonTests
350            so derive from that
351            (TestPostGISShapestoreMultiPolygon): New class with tests for
352            MUTLIPOLYGON tables
353    
354            * test/postgissupport.py (PostGISDatabase.initdb): Allow the
355            tables argument to have tuples with three items to override the
356            WKT type used.
357            (PostgreSQLServer.get_default_static_data_db): Use the above to
358            create a polygon table with MUTLIPOLYGONs
359            (point_to_wkt, coords_to_point, polygon_to_wkt, coords_to_polygon)
360            (arc_to_wkt, coords_to_multilinestring): Rename from *_to_wkt to
361            coords_to*
362            (coords_to_multipolygon): New. Convert to MUTLIPOLYGON
363            (wkt_converter): New. Map WKT types to converters
364            (upload_shapefile): New parameter force_wkt_type to use a
365            different WKT type than the default
366    
367    2003-08-25  Bernhard Herzog  <[email protected]>
368    
369            * Thuban/UI/application.py
370            (ThubanApplication.run_db_param_dialog): New. Suitable as a
371            db_connection_callback. Main difference is that the dialog run
372            from this method doesn't have a parent so it can be used even when
373            there is no main window
374            (ThubanApplication.OpenSession): Use self.run_db_param_dialog if
375            no db_connection_callback was given. This way the dialog pops up
376            even when the .thuban file was given as a command line parameter.
377    
378    2003-08-25  Bernhard Herzog  <[email protected]>
379    
380            * Thuban/UI/view.py (MapCanvas.OnLeftUp): Release the the mouse
381            before calling MouseLeftUp. MouseLeftUp may pop up modal dialogs
382            which leads to an effectively frozen X session because the user
383            can only interact with the dialog but the mouse is still grabbed
384            by the canvas.
385            Also, call the tool's Hide method before MouseLeftUp because
386            MouseLeftUp may change the tool's coordinates.
387    
388    2003-08-25  Bernhard Herzog  <[email protected]>
389    
390            * Thuban/UI/application.py (ThubanApplication.OpenSession): Catch
391            LoadCancelled exceptions and handle them by returning immediately.
392    
393    2003-08-25  Bernhard Herzog  <[email protected]>
394    
395            GUI part of loading sessions with postgis connections which may
396            require user interaction to get passwords or updated parameters
397    
398            * Thuban/UI/dbdialog.py (DBDialog): Reimplement to make it look a
399            bit nucer and be more generic.
400            (DBFrame.OnAdd): Adapt to new DBDialog interface
401    
402            * Thuban/UI/application.py (ThubanApplication.OpenSession): New
403            optional parameter db_connection_callback which is passed to
404            load_session.
405    
406            * Thuban/UI/mainwindow.py (MainWindow.run_db_param_dialog): New.
407            Suitable as a db_connection_callback
408            (MainWindow.OpenSession): Use self.run_db_param_dialog as the
409            db_connection_callback of the application's OpenSession method
410    
411    
412  2003-08-25  Bernhard Herzog  <[email protected]>  2003-08-25  Bernhard Herzog  <[email protected]>
413    
414          Basic loading of sessions containing postgis connections:          Basic loading of sessions containing postgis connections:

Legend:
Removed from v.1647  
changed lines
  Added in v.1718

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26