/[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 2026 by frank, Tue Dec 9 16:17:01 2003 UTC revision 2111 by joey, Wed Mar 17 10:44:53 2004 UTC
# Line 1  Line 1 
1    2004-03-16  Martin Schulze  <[email protected]>
2    
3            * Extensions/wms/test/test_ogclib.py: Added a (hopefully)
4            comprehensive test for the getMapURL method, built compare URLs
5            according to the documentation in OGC 01-068r3
6    
7            * Extensions/wms/capabilities.py (WMSCapabilities): Added the
8            class WMSCapabilities to manage capabilites, will incorporate
9            parsing the capabilities response and provide details for other
10            classes.
11    
12    2004-03-12  Bernhard Herzog  <[email protected]>
13    
14            Support views in addition to normal tables in the postgis
15            shapestore
16    
17            * Thuban/Model/postgisdb.py
18            (PostGISShapeStore._fetch_table_information): Add a fallback for
19            the case where the table name is not in the geometry_columns
20            table.  This is usually the case for views.  Also, set
21            self.shapestore here.
22            (PostGISShapeStore.ShapeType): No need to query the database all
23            the time.  The shape type is now determined in
24            _fetch_table_information
25    
26            * test/postgissupport.py (PostgreSQLServer.new_postgis_db)
27            (PostgreSQLServer.get_static_data_db, PostGISDatabase.__init__):
28            New parameter to specify views.
29            (PostGISDatabase.has_data): Also compare the views.  New views
30            parameter
31            (PostGISDatabase.initdb): Create the views.
32            (PostgreSQLServer.get_default_static_data_db): Add the v_landmarks
33            view
34    
35            * test/test_postgis_db.py
36            (TestPostGISShapestorePointFromViews): New.  Test a
37            PostGISShapeStore with a view
38            (TestPostGISShapestorePointOIDAsGIDColumn.setUp): Pass the name of
39            the geometry_column explicitly to test whether that works
40    
41    2004-03-12  Bernhard Herzog  <[email protected]>
42    
43            Final step for explicit id/geometry columns: Loading and saving
44    
45            * Resources/XML/thuban-1.1.dtd: New.  Derived from thuban-1.0.dtd
46            with the following changes:
47            (dbshapesource): Two new attributes id_column and geometry_column
48    
49            * Thuban/Model/save.py (SessionSaver.write): Use the new dtd
50            (SessionSaver.write_session): Use the new namespace
51            (SessionSaver.write_data_containers): Write the new dbshapesource
52            parameters
53    
54            * Thuban/Model/load.py (SessionLoader.__init__): New namespace for
55            the new file format version
56            (SessionLoader.start_dbshapesource): Handle the new db parameters
57    
58            * test/test_save.py: Update to the new dtd and namespace
59            (SaveSessionTest.test_save_postgis): Update the NonConnectionStore
60            mock object to provide a working IDColumn method.
61    
62            * test/test_load_1_0.py: New.  Copy of the test_load.py before
63            today's changes but with the round-trip tests removed.
64    
65            * test/test_load_0_9.py: Update doc-string.
66    
67            * test/test_load.py: Update all .thuban files to the new dtd and
68            namespace.
69            (TestPostGISLayer.file_contents): Add the new dbshapesource
70            paramters
71    
72    2004-03-11  Bernhard Herzog  <[email protected]>
73    
74            Next step for explicit id/geometry columns: User interaction
75    
76            * Thuban/UI/dbdialog.py (ChooseDBTableDialog.__init__): Rework how
77            the dialog is constructed. Add combo boxes to select id and
78            geometry column.  Rename some instance variables.
79            (ChooseDBTableDialog.GetTable): Return id and geometry column
80            names
81            (ChooseDBTableDialog.OnTableSelect): New. Event handler for
82            selections in the table list
83    
84            * Thuban/UI/mainwindow.py (MainWindow.AddDBLayer): Use id_column
85            and geometry_column
86    
87            * Thuban/Model/session.py (Session.OpenDBShapeStore): Add the new
88            parameters for id_column and geometry column of PostGISShapeStore
89            here as well.
90    
91            * Thuban/Model/postgisdb.py (type_map): Add ROWID psycog type.
92            (_raw_type_map): New. Map raw PostgreSQL type ints to thuban types
93            (PostGISConnection.GeometryTables): Use a better query to
94            determine which relations in the database might be usable for
95            shapestores.  Now supports views as well but is more PostgreSQL
96            specific
97            (PostGISConnection.table_columns): New. Somewhat experimental
98            method to let the db dialogs provide lists of columns to users so
99            that they can select id and geometry columns.
100            (PostGISTable.__init__): The default value of the id_column
101            parameter is now None it still means "gid" effectively, though.
102            (PostGISTable.IDColumn): New introspection method to return a
103            column object for the id column
104            (PostGISShapeStore.GeometryColumn): New introspection method to
105            return a column object for the geometry column
106    
107            * test/test_postgis_db.py
108            (TestPostGISConnection.test_gis_tables_non_empty):
109            Removed. Subsumed by the new:
110            (TestPostGISConnection.test_gis_tables_with_views_and_tables):
111            New. Tes the GeometryTables and table_columns methods with actual
112            tables and views.
113            (PointTests.test_id_column, PointTests.test_geometry_column):
114            New. tests for the new methods.
115            (TestPostGISShapestorePoint.setUp)
116            (TestPostGISShapestorePointSRID.setUp)
117            (TestPostGISShapestorePointExplicitGIDColumn.setUp): Fill the
118            instance variables needed by the new tests
119    
120    2004-03-11  Bernhard Herzog  <[email protected]>
121    
122            * Thuban/UI/classgen.py (GenQuantilesPanel.GetList): The row
123            numbers given to ReadValue are ordinals.
124    
125    2004-03-11  Bernhard Herzog  <[email protected]>
126    
127            Elimiate the requirement for PostGIS tables to have a column
128            called "gid".
129    
130            * Thuban/Model/postgisdb.py (PostGISTable.__init__): New parameter
131            id_column to specify which column to use to identify rows.  Also
132            new instance variables id_column and quoted_id_column
133            (PostGISTable.RowIdToOrdinal, PostGISTable.RowOrdinalToId)
134            (PostGISTable.ReadRowAsDict, PostGISTable.ReadValue)
135            (PostGISTable.SimpleQuery): Use the id column name provided to the
136            constructor instead of "gid"
137            (PostGISShapeStore.__init__): New parameter id_column analogously
138            to PostGISTable.__init__.  This parameter is simply passed through
139            to the base class constructor
140            (PostGISShapeStore._create_col_from_description): Fix typo in
141            doc-string
142            (PostGISShapeStore.Shape, PostGISShapeStore.AllShapes)
143            (PostGISShapeStore.ShapesInRegion): Use the id column name
144            provided to the constructor instead of "gid"
145    
146            * test/postgissupport.py
147            (PostgreSQLServer.get_default_static_data_db): New static table
148            landmarks_point_id with an id column != "gid.  Update the comments
149            a bit.
150            (skip_if_addgeometrycolumn_does_not_use_quote_ident): Fix typo in
151            doc-
152            (upload_shapefile): New parameter gid_column to use a name other
153            than "gid" for the column to store the shape ids
154    
155            * test/test_postgis_db.py (TableTests): New.  Mixin-class
156            containing all tests previously in TestPostGISTable.  The actual
157            tests are the same but the code is a bit more configurable to
158            allow for different id columns etc.
159            (TestPostGISTable): Derive from TableTests now for the actual
160            tests.
161            (TestPostGISTableExplicitGIDColumn): New. Like TestPostGISTable
162            except that it the landmarks_point_id table to test the id_column
163            parameter
164            (PointTests): Extend the doc-string
165            (TestPostGISShapestorePointExplicitGIDColumn)
166            (TestPostGISShapestorePointOIDAsGIDColumn): New classes derived
167            from PointTests to test the explicit id_column parameter.  One
168            tests with the name of the column holding the shape ids, the other
169            uses PostgreSQL's OID column.  For the latter a number of methods
170            have to be overwritten to make them independent of the actual id
171            values.
172    
173    2004-03-08  Silke Reimer  <[email protected]>
174    
175            Update debian directory:
176    
177            * debian/changelog: Added new version.
178            * deiban/rules: Updated management of patches (with cbds)
179            * debian/control: Added cbds to dependencies
180            * debian/patches/*: New. Adds better support for patches of thuban in
181                            debian
182            * debian/menu: Syntax of menu changed slightly
183            * debian/setup.py.patch: removed because it has been moved to
184                            debian/patechs/setup.py.patch
185            
186    
187    2004-02-26  Bernhard Herzog  <[email protected]>
188    
189            Create the Doc/technotes directory for text files with information
190            for developers
191    
192            * Doc/technotes/README: New. README for the technotes
193    
194            * Doc/technotes/coding_guidelines.txt: New. Coding guidelines for
195            Thuban
196    
197            * Doc/technotes/release_process.txt: New. Used to be
198            HOWTO-Release.  Now slightly adapted to technote formatting style.
199    
200            * HOWTO-Release: Removed.  It's contents are now in
201            Doc/technotes/release_process.txt
202    
203    2004-02-25  Bernhard Herzog  <[email protected]>
204    
205            * libraries/thuban/wxproj.cpp (get_wx_version): New.  Return the
206            version of wxWindows the module was compiled with so we can check
207            that against the wxPython version.
208    
209            * Thuban/version.py (thuban_branch, thuban_release): New variables
210            controlling which and how Thuban versions are shown.  See the
211            comments for details.
212            (verify_versions): Also check that the wx version that wxproj is
213            compiled against matches that of the wxPython we use at runtime
214    
215    2004-02-20  Bernhard Herzog  <[email protected]>
216    
217            * Extensions/wms/wms.py (epsg_code_to_projection): Use
218            get_system_proj_file to read the epsg projections.  The old way
219            depended on the current directory being the top Thuban directory.
220    
221    2004-02-20  Bernhard Herzog  <[email protected]>
222    
223            * Extensions/svgexport/test/test_svgmapwriter.py
224            (TestVirtualDC.test_clippath): Remove a debug print
225    
226    2004-02-20  Bernhard Herzog  <[email protected]>
227    
228            * Extensions/svgexport/__init__.py: New.  Turn
229            Extensions/svgexport into a package.
230    
231            * Extensions/svgexport/svgmapwriter.py: Reorder the imports and
232            doc-string a bit.  The doc-string must come first, otherwise it's
233            not a doc-string.  The __future__ import must be the first thing
234            after the doc-string.  Use only double quotes in doc-strings.
235            Single quotes trip up emacs syntax highlighting if the text
236            contains apostrophes.
237    
238    2004-02-20  Bernhard Herzog  <[email protected]>
239    
240            * Extensions/svgexport/test/__init__.py,
241            Extensions/svgexport/test/test_svgmapwriter.py: New. Initial test
242            suite for svgexport
243    
244            * test/runtests.py (find_test_modules): New. Function with the
245            module finding code from main.
246            (main): Use find_test_modules to figure out the default test
247            modules and take modules from Extensions.svgexport.test too.
248    
249    2004-02-19  Bernhard Herzog  <[email protected]>
250    
251            * Thuban/UI/application.py (ThubanApplication.OnInit): Make sure
252            the mainwindow has a reference to the map of the initial session.
253            This fixes a bug introduced with the fix for RT#2245
254    
255    2004-02-19  Bernhard Herzog  <[email protected]>
256    
257            * Extensions/svgexport/svgsaver.py,
258            Extensions/svgexport/svgmapwriter.py,
259            Extensions/svgexport/maplegend.py: Added again.  This time in the
260            correct place.
261    
262    2004-02-17  Bernhard Herzog  <[email protected]>
263    
264            Fix for RT#2245
265    
266            * Thuban/UI/application.py (ThubanApplication.OnInit): Initialize
267            instance variables before trying to create any windows.  Creating
268            windows can start an event loop if e.g. message boxes are popped
269            up for some reason, and event handlers, especially EVT_UPDATE_UI
270            may want to access things from the application.
271            (ThubanApplication.maps_changed): The mainwindow may not have been
272            created yet, so check whether it has been created before calling
273            its methods
274    
275            * Thuban/UI/view.py (MapCanvas.OnIdle): Only try to redraw if we
276            have a map
277    
278    2004-02-17  Bernhard Herzog  <[email protected]>
279    
280            * test/test_svgmapwriter.py, Extensions/svgsaver.py,
281            Extensions/svgmapwriter.py, Extensions/maplegend.py,
282            extensions/svgexport/svgsaver.py,
283            extensions/svgexport/svgmapwriter.py,
284            extensions/svgexport/maplegend.py: Removed.  These files were in
285            the wrong places or didn't work at all.
286    
287    2004-02-16  Bernhard Herzog  <[email protected]>
288    
289            * Thuban/UI/view.py (MapCanvas.Export): Remove accidentally added
290            line
291    
292    2004-02-16  Bernhard Herzog  <[email protected]>
293    
294            * Thuban/UI/view.py (MapCanvas.Export): Avoid UnboundLocalError.
295    
296    2004-02-15  Markus Rechtien  <[email protected]>
297            
298            * Extensions/svgexport/svgmapwriter.py: New. Adds the capability
299            to write a session to a file in SVG format.
300            * Extensions/svgexport/svgsaver.py: New. Uses svgmapwriter.py
301            to write a SVG map of a session.
302            * Extensions/svgexport/maplegend: New. Writes a basic maplegend
303            in SVG format for the current session.
304    
305    2004-02-13  Bernhard Herzog  <[email protected]>
306    
307            * Thuban/UI/mainwindow.py (MainWindow.AddDBLayer): When the layer
308            can't be created, return immediately after displaying the error
309            message.
310    
311    2004-02-11  Bernhard Herzog  <[email protected]>
312    
313            Handle postgis tables with more than one geometry column.
314    
315            * Thuban/Model/postgisdb.py
316            (PostGISTable._fetch_table_information): Delegate the creation of
317            column objects to a different method so that we can extend that in
318            derived classes
319            (PostGISTable._create_col_from_description): New. Column object
320            creation part of _fetch_table_information
321            (PostGISShapeStore._create_col_from_description): New. Extend
322            inherited method to handle geometry columns
323            (PostGISShapeStore.__init__): New parameter geometry_column to
324            specify which geometry column to use.  Optional but mandatory for
325            tables with more than one geometry column
326            (PostGISShapeStore._fetch_table_information): Also use the name of
327            the geometry column when looking for the srid
328            (PostGISShapeStore.ShapeType): Also use the name of the geometry
329            column when looking for the shape type
330    
331            * test/test_save.py (SaveSessionTest.test_save_postgis): Adapt
332            NonConnectionStore to changes in the PostGISShapeStore
333    
334            * test/test_postgis_db.py
335            (TestPostGISSpecialCases.test_shapestore_two_geom_cols): Test
336            PostGISShapeStore with tables having two geometry columns.
337    
338    2004-02-10  Bernhard Herzog  <[email protected]>
339    
340            Fix some postgis problems.  What remains to be done is real
341            handling of SRIDs as they affect how reprojection is done
342    
343            * Thuban/Model/postgisdb.py (quote_identifier): Fix typo in
344            doc-string
345            (PostGISShapeStore._fetch_table_information): New. Extend
346            inherited method to retrieve srid
347            (PostGISShapeStore.BoundingBox): Handle tables without data.
348            extent yields NULL for those
349            (PostGISShapeStore.ShapesInRegion): Use the srid of the table.
350    
351            * test/test_postgis_db.py
352            (TestPostGISSpecialCases.test_shapestore_empty_table): New test
353            for the special case of a table without any data
354            (TestPostGISShapestorePointSRID): New class with tests for a table
355            that uses srids
356            (PolygonTests): Fix a doc-string typo
357    
358            * test/postgissupport.py (PostGISDatabase.__init__): New parameter
359            reference_systems with a specification of spacial reference
360            systems to create in the new db.
361            (PostgreSQLServer.new_postgis_db)
362            (PostgreSQLServer.get_static_data_db): New parameter
363            reference_systems to be passed through ultimately to
364            PostGISDatabase.  In new_postgis_db also check whether an existing
365            db already has the right srids
366            (PostgreSQLServer.get_default_static_data_db): Add srids and a
367            table that uses srids
368            (PostGISDatabase.initdb): Create the entries for the reference
369            systems
370            (PostGISDatabase.has_data): Add reference_systems parameter to
371            check for those too
372            (upload_shapefile): New parameter srid to create tables with a
373            specific srid
374    
375    2004-02-06  Frank Koormann  <[email protected]>
376    
377            * po/pt_BR.po: Fixed charset
378    
379    2004-02-05  Frank Koormann  <[email protected]>
380    
381            * po/pt_BR.po: Fixed format string for error message, missing %s
382            added (Thuban/UI/application.py:273)
383    
384    2004-02-03  Frank Koormann  <[email protected]>
385            
386            First version of Portuguese (Brazilian) translation
387    
388            * po/pt_BR.po: New, translation of pot (2004-01-15 16:07+0300) for
389            Brazilian Portuguese by Eduardo Patto Kanegae.
390    
391            * Thuban/UI/about.py (About.__init.py__): Added Eduardo to the list of
392            translators.
393    
394    
395    2004-01-22  Frank Koormann  <[email protected]>
396    
397            * Doc/manual/thuban-manual.xml: Added section on installation of
398            Thuban under Win32 systems. Fixed image path references in the postgis
399            section. Some minor source formattings.
400    
401    2004-01-21  Frank Koormann  <[email protected]>
402    
403            Make Thuban remember path selections (at least for one application run).
404    
405            * Thuban/UI/application.py (Application.OnInit): Initialize path as a
406            attribute of application object. Path is a dictionary of
407            strings, currently with the items "data" and "projection".  
408            (Application.SetPath): New, stores path for the specified item.
409            (Application.Path): New, return path for the specified item.
410    
411            * Thuban/UI/mainwindow.py
412            (MainWindow.OpenSession, MainWindow.SaveSessionAs,
413            MainWindow.AddLayer, MainWindow.AddRasterLayer,
414            MainWindow.TableOpen): Access "data" path information of the
415            application.
416            
417            * Thuban/UI/projdialog.py (ProjFrame._OnImport, ProjFrame._OnExport):
418            Access "projection" path information of the application.
419    
420    2004-01-05  Bernhard Herzog  <[email protected]>
421    
422            * po/ru.po: Updated translations from Alex Shevlakov
423    
424    2004-01-05  Bernhard Herzog  <[email protected]>
425    
426            * po/Makefile, po/README: Move the description of how to generate
427            the translation statistics to the README.
428    
429    2003-12-23  Bernhard Herzog  <[email protected]>
430    
431            * NEWS: Update for 1.0.0
432    
433            * po/it.po: Another update from Maurizio Napolitano
434    
435    2003-12-23  Bernhard Herzog  <[email protected]>
436    
437            * po/it.po: Updated translation from Maurizio Napolitano
438    
439    2003-12-23  Bernhard Herzog  <[email protected]>
440    
441            * Thuban/UI/join.py (JoinDialog.__init__): Mark one more string
442            for translation
443    
444            * Thuban/UI/mainwindow.py (MainWindow.TableRename)
445            (MainWindow.RenameMap, MainWindow.RenameLayer): Mark some more
446            strings for translation
447    
448            * po/de.po: Update with the newly marked strings.
449    
450    2003-12-22  Bernhard Herzog  <[email protected]>
451    
452            * HOWTO-Release: Fix the places where version numbers have to be
453            updated
454    
455    2003-12-22  Bernhard Herzog  <[email protected]>
456    
457            * setup.py (setup call): 1.0.0, yeah!
458    
459            * Thuban/version.py (longversion): 1.0.0, yeah!
460    
461            * Thuban/Model/load.py (SessionLoader.__init__): Accept the
462            1.0.0 namespace too
463    
464            * Thuban/Model/save.py (SessionSaver.write_session): Save with
465            1.0.0 namespace
466    
467            * test/test_load.py (LoadSessionTest.dtd)
468            (TestSingleLayer.file_contents)
469            (TestNonAsciiColumnName.file_contents)
470            (TestLayerVisibility.file_contents)
471            (TestClassification.file_contents, TestLabels.file_contents)
472            (TestLayerProjection.file_contents)
473            (TestRasterLayer.file_contents, TestJoinedTable.file_contents)
474            (TestLabelLayer.file_contents, TestPostGISLayer.file_contents)
475            (TestPostGISLayerPassword.file_contents)
476            (TestLoadError.file_contents, TestLoadError.test): Update for
477            1.0.0 namespace
478    
479            * test/test_save.py (SaveSessionTest.dtd)
480            (SaveSessionTest.testEmptySession)
481            (SaveSessionTest.testSingleLayer)
482            (SaveSessionTest.testLayerProjection)
483            (SaveSessionTest.testRasterLayer)
484            (SaveSessionTest.testClassifiedLayer)
485            (SaveSessionTest.test_dbf_table)
486            (SaveSessionTest.test_joined_table)
487            (SaveSessionTest.test_save_postgis): Update for 1.0.0 namespace
488    
489    2003-12-22  Bernhard Herzog  <[email protected]>
490    
491            * Thuban/Model/load.py (SessionLoader.start_label): Make sure the
492            alignment flags are byte strings not unicode and that they have
493            valid values
494    
495            * test/test_load.py (TestLabelLayer): New. Test loading (and
496            indirectly saving) of maps with labels.
497    
498    2003-12-22  Bernhard Herzog  <[email protected]>
499    
500            * Thuban/UI/tableview.py (TableGrid.OnDestroy)
501            (TableGrid.__init__): Handle EVT_WINDOW_DESTROY in the grid to
502            unsubscribe all subscribers.
503            (LayerTableFrame.OnDestroy): Do not unsubscribe any messages from
504            self.grid since it may already have been destroyed.
505            Fixes RT #2256
506    
507    2003-12-19  Bernhard Herzog  <[email protected]>
508    
509            * po/fr.po, po/es.po: Updated translations from Daniel Calvelo
510    
511    2003-12-16  Bernhard Herzog  <[email protected]>
512            
513            * debian/bitmappath.patch, debian/setup.py.patch:
514                    added to ensure compliance with FHS for debian
515            * debian/rules, debian/changelog:
516                added patches in rules to ensure compliance with FHS for debian
517    
518    2003-12-16  Bernhard Herzog  <[email protected]>
519    
520            * po/Makefile (mo): Make the output a bit nicer so that it prints
521            statistics about the translations. Add a comment how produce even
522            nicer statistics with sed.
523    
524  2003-12-09  Frank Koormann   <[email protected]>  2003-12-09  Frank Koormann   <[email protected]>
525    
526          * Resources/Projections/defaults.proj:          * Resources/Projections/defaults.proj:

Legend:
Removed from v.2026  
changed lines
  Added in v.2111

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26