/[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 1657 by bh, Mon Aug 25 18:27:16 2003 UTC revision 1777 by bh, Mon Oct 6 15:13:58 2003 UTC
# Line 1  Line 1 
1    2003-10-06  Bernhard Herzog  <[email protected]>
2    
3            * Thuban/UI/application.py (ThubanApplication.maps_changed): Add
4            doc-string
5    
6    2003-10-06  Bernhard Herzog  <[email protected]>
7    
8            * test/test_viewport.py (ViewPortTest.setUp)
9            (SimpleViewPortTest.test_init_with_size): Move the test for the
10            initial size as a constructor parameter from ViewPortTest.setUp
11            method to a new separate test in SimpleViewPortTest.
12    
13    2003-10-06  Bernhard Herzog  <[email protected]>
14    
15            * test/test_viewport.py (MockView): New class derived from
16            ViewPort with a mock implementation of GetTextExtent to be used in
17            the test cases
18            (ViewPortTest.setUp): Use MockView instead of ViewPort
19    
20            * Thuban/UI/viewport.py (ViewPort.GetTextExtent): Turn this method
21            into what would be a "pure virtual function" in C++: always raise
22            NotImplementedError. Mock implementations for test cases don't
23            belong into the real code
24    
25    2003-10-02  Bernhard Herzog  <[email protected]>
26    
27            * test/test_layer.py (TestLayer.test_empty_layer): Explicitly
28            close the dbf file we create so that it's contents have been
29            written properly.
30    
31            * libraries/shapelib/shptree.c, libraries/shapelib/shpopen.c,
32            libraries/shapelib/shapefil.h, libraries/shapelib/dbfopen.c:
33            Update to shapelib 1.2.10
34    
35    2003-10-01  Jan-Oliver Wagner <[email protected]>
36    
37            * Thuban/UI/tree.py, Thuban/UI/main.py: Remove the #! line as
38            it annoys lintian which warns about these files not being
39            executable. The #! isn't necessary here since if you absolutely
40            must execute them you can always say "python <filename>".
41    
42    2003-09-26  Bernhard Herzog  <[email protected]>
43    
44            * Thuban/Model/classgen.py (GenQuantiles0): Removed since it's
45            only used in GREAT-ER but not used in Thuban itself. When GREAT-ER
46            is ported to a newer the import will fail, so it should be noticed
47            immediately that this function is gone.
48            Fixes RT#1919
49    
50    2003-09-26  Bernhard Herzog  <[email protected]>
51    
52            Add a DTD for the projection files and make thuban write valid
53            projection files
54    
55            * Resources/XML/projfile.dtd: New. DTD for thuban's projection
56            files
57    
58            * Thuban/Model/resource.py (ProjFileSaver.write): Use
59            'projectionlist' as the name in the document type declaration so
60            that it matches the element type of the root element.
61    
62            * test/test_proj.py (sample_projfile, sample_projfile2): Use
63            'projectionlist' as the name in the document type declaration just
64            as it is done now in the files thuban would write
65            (sample_projfile, sample_projfile_data): Fix spelling of
66            "Mercator"
67            (TestProjFile.doTestWrite): Validate the written and the expected
68            XML data
69            (TestProjFile): Derive from ValidationTest so that we can run xml
70            validation tests
71    
72    2003-09-24  Bernhard Herzog  <[email protected]>
73    
74            * Thuban/UI/renderer.py (ExportRenderer.render_legend): Do not
75            modify the list returned by map.Layers() in place since it is the
76            actual list of layers used by the map.
77    
78    2003-09-23  Jan-Oliver Wagner <[email protected]>
79    
80            * Doc/manual/thuban-manual.xml: Added subsection to chapter
81            Extensions to describe the extensions coming with the Thuban
82            standard package (gns2shp and importAPR).
83    
84    2003-09-23  Bernhard Herzog  <[email protected]>
85    
86            * libraries/thuban/wxproj.cpp (project_point): if there's an
87            inverse but no forward projection, convert to degrees after
88            applying the inverse projection. Fixes RT#2096
89    
90            * test/test_wxproj.py: New. Test cases for wxproj.so. One test
91            implicitly tests for the fix to RT#2096
92    
93            * test/support.py (FloatComparisonMixin.assertFloatSeqEqual):
94            Check that the sequences have the same lengths
95    
96            * Resources/Projections/defaults.proj (Geographic projection): Use
97            a much more precise value for the to_meter attribute.
98    
99    2003-09-22  Bernhard Herzog  <[email protected]>
100    
101            * test/support.py (initthuban): Make sure to unset the LANG env.
102            var. so that tests that compare translated strings work. Solves RT
103            #2094
104    
105    2003-09-22  Jan-Oliver Wagner <[email protected]>
106    
107            Small improvement of APR import.
108    
109            * Extensions/importAPR/test/test_apr.py (aprTest.test_LClass):
110            Added tests for text-ranges.
111    
112            * Extensions/importAPR/apr.py (APR_LClass.GetThubanRange): Now
113            returns a string object if the range is based on text.
114    
115            * Extensions/importAPR/importAPR.py (import_apr_dialog): Unified
116            range retrieval.
117    
118    2003-09-22  Jan-Oliver Wagner <[email protected]>
119    
120            Initial version of the importAPR extension which is in
121            experimental state.
122    
123            * /Extensions/importAPR/, /Extensions/importAPR/samples/,
124            /Extensions/importAPR/test/: New directories.
125    
126            * /Extensions/importAPR/samples/README: New: Howto load the samples.
127    
128            * /Extensions/importAPR/samples/iceland.apr: New: A sample APR
129            file which refers to the Thuban Iceland demo data.
130    
131            * /Extensions/importAPR/test/README: New: Howto execute the tests.
132    
133            * /Extensions/importAPR/test/test_apr.py: New: Tests for APR classes.
134    
135            * /Extensions/importAPR/apr.py: New: Classes for ArcView Objects
136            as in '.apr'-files.
137    
138            * /Extensions/importAPR/odb.py: New: Classes for generic ArcView
139            ODB Objects as in '.apr', '.avl' and other files.
140    
141            * /Extensions/importAPR/__init__.py: New: Init to make this
142            directory a package.
143    
144            * /Extensions/importAPR/importAPR.py: New: Import a ArcView
145            project file (.apr) and convert it to Thuban.
146    
147    2003-09-22  Jan-Oliver Wagner <[email protected]>
148    
149            * Extensions/gns2shp.gns2shp.py: The main module of gns2shp.
150    
151    2003-09-19  Jan-Oliver Wagner <[email protected]>
152    
153            * Doc/manual/thuban-manual.xml: Extended section 'Installation'
154            with description on RPM installation and RPM binary package
155            creation.
156    
157    2003-09-18  Bernhard Herzog  <[email protected]>
158    
159            * setup.py (data_files): Only add the mo files if the Locales
160            directory actually exists, so that setup.py works with a fresh CVS
161            checkout
162    
163    2003-09-12  Jan-Oliver Wagner <[email protected]>
164    
165            * Examples/simple_extensions/simple_tool.py: bugfix: Tool is now
166            in viewport, not anymore in view
167    
168    2003-09-04  Jan-Oliver Wagner <[email protected]>
169    
170            Introducing first Extension (gns2shp).
171    
172            * Extensions, Extensions/gns2shp, Extensions/gns2shp/test: New.
173    
174            * Extensions/__init__.py: New. init to make this dir a package.
175    
176            * Extensions/gns2shp/__init__.py: New. init to make this dir a package.
177    
178            * Extensions/gns2shp/test/README: New. some info on this test directory.
179    
180            * Extensions/gns2shp/test/ls.txt: New. test data set (Liechtenstein).
181    
182            * Extensions/gns2shp/test/test_gns2shp.py: New. Test for correct creation
183            of Shapefile from GNS text file format
184    
185    2003-09-03  Jan-Oliver Wagner <[email protected]>
186    
187            Fix/workaround for bug #2019:
188            https://intevation.de/rt/webrt?serial_num=2019
189    
190            * Thuban/UI/identifyview.py (IdentifyView.ID_STOP): New.
191            (IdentifyView.__init__): Added another button that allows to
192            stop the identify mode.
193            (IdentifyView.OnStop): New. Stops the identify mode.
194    
195    2003-09-03  Jan-Oliver Wagner <[email protected]>
196    
197            Introducing a new exception dialog that allows to exit the
198            application immediately.
199            This fixes bug #2060: https://intevation.de/rt/webrt?serial_num=2060
200    
201            * Thuban/UI/exceptiondialog.py: New. A special exception dialog.
202    
203            * Thuban/UI/application.py (ThubanApplication.ShowExceptionDialog):
204            Made strings available to translations. Exchanged the simple
205            ScrolledMessageDialog by the new ExceptionDialog.
206    
207    2003-09-01  Bernhard Herzog  <[email protected]>
208    
209            * NEWS: New. Summary of changes and release notes.
210    
211            * MANIFEST.in: Add NEWS
212    
213    2003-09-01  Bernhard Herzog  <[email protected]>
214    
215            * MANIFEST.in: Correct the include statement for the mo-files and
216            include the documentation too.
217    
218            * setup.py (data_files): Add the .mo files
219            (setup call): Up to version 0.9.0
220    
221    2003-09-01  Bernhard Herzog  <[email protected]>
222    
223            * Thuban/UI/dbdialog.py (ChooseDBTableDialog.__init__): Change the
224            parameter list to just parent and session
225            (ChooseDBTableDialog.__set_properties): Removed. Setting the
226            selection of empty list boxes is not allowed (and produces C++
227            assertion errors) and the rest of the setup is better done in
228            __init__ anyway.
229            (ChooseDBTableDialog.OnCancel, ChooseDBTableDialog.OnOK)
230            (ChooseDBTableDialog.OnLBDClick, DBDialog.OnOK): Use the Python
231            builtins True/False for booleans to avoid warnings from wxPython
232    
233            * Thuban/UI/mainwindow.py (MainWindow.AddDBLayer): Adapt to new
234            ChooseDBTableDialog constructor parameters.
235    
236    2003-09-01  Bernhard Herzog  <[email protected]>
237    
238            * Thuban/Model/postgisdb.py
239            (PostGISTable): Extend doc-string
240            (PostGISTable._fetch_table_information): Set the column index
241            correctly, pretending ignored columns don't exist.
242    
243            * test/test_postgis_db.py (TestPostGISIgnoredColumns): New tests
244            for postgis tables with data types not yet supported by thuban.
245    
246    2003-08-29  Bernhard Herzog  <[email protected]>
247    
248            * HOWTO-Release: Tweak item about running the tests.
249    
250    2003-08-29  Jan-Oliver Wagner <[email protected]>
251    
252            * /Doc/manual/thuban-manual.xml: updated to version 1.0pre2.
253    
254    2003-08-29  Bernhard Herzog  <[email protected]>
255    
256            Add some missing parameters to projections. Proj complains about
257            them on windows but for some reason not on Linux.
258    
259            * test/test_save.py (SaveSessionTest.testLayerProjection): Add
260            missing required projection parameters
261    
262            * test/test_proj.py (TestProjFile.test): Add missing required
263            projection parameters
264    
265            * test/test_load_0_8.py (TestLayerProjection.file_contents)
266            (TestLayerProjection.test): Add missing required projection
267            parameters and tests for them
268    
269            * test/test_load.py (TestLayerProjection.file_contents)
270            (TestLayerProjection.test): Add missing required projection
271            parameters and tests for them
272    
273            * test/test_layer.py (TestLayer.test_base_layer): Add missing
274            required projection parameters
275    
276    2003-08-29  Bernhard Herzog  <[email protected]>
277    
278            * libraries/pyprojection/Projection.i: Use pj_get_errno_ref to
279            access the pj_errno because directly accessing pj_errno doesn't
280            work on windows if the proj library is in a DLL
281    
282            * libraries/pyprojection/Projection_wrap.c: Update from Projection.i
283    
284    2003-08-28  Bernhard Herzog  <[email protected]>
285    
286            * test/test_proj.py: Import things from Thuban after calling
287            initthuban
288    
289            * test/test_load.py (LoadSessionTest.filenames): New class
290            variable with the filename attributes to normalize
291            (LoadSessionTest.check_format): Pass self.filenames to
292            sax_eventlist to normalize the filename attributes
293    
294            * test/xmlsupport.py: Add cvs keywords
295            (SaxEventLister.__init__): New parameter filenames which indicates
296            attributes that contain filenames
297            (SaxEventLister.startElementNS): Normalize the filename attributes
298            with os.path.normpath
299            (sax_eventlist): New parameter filenames to pass through to
300            SaxEventLister
301    
302            * test/test_derivedshapestore.py: Make this file callable as a
303            program to execute the tests
304            (TestDerivedShapeStoreExceptions.test_table_with_wrong_size): Bind
305            the session to self.session so that it gets destroyed properly
306    
307            * test/test_layer.py (TestLayer.tearDown): Call the session's
308            Destroy method
309    
310            * test/test_map.py (TestMapBase.tearDown): Destroy self.session
311            too if it exists
312            (TestMapAddLayer.test_add_layer): Bind the session to self.session
313            so that it gets destroyed properly
314    
315            * test/postgissupport.py (reason_for_not_running_tests): Add a
316            test for the existence of popen2.Popen4.
317    
318            * test/test_save.py (SaveSessionTest.tearDown): New. Provide a
319            reliable way to destroy the sessions created in the test cases
320            (SaveSessionTest.test_dbf_table): Bind the session to self.session
321            so that it gets destroyed properly
322            (SaveSessionTest.testLayerProjection): Bind the session to
323            self.session so that it gets destroyed properly
324    
325            * test/test_session.py (UnreferencedTablesTests.tearDown): Make
326            sure that the session is destroyed properly
327    
328            * test/test_shapefilestore.py: Make this callable as a program to
329            execute the tests
330    
331            * test/test_scalebar.py: Remove unnecessary import of _ from
332            Thuban
333    
334            * test/support.py (print_garbage_information): Call initthuban
335            here because it may be called indirectly from test cases that test
336            test support modules which do not use anything from thuban itself
337            (ThubanTestProgram.runTests): Remove unnecessary debug print
338    
339    2003-08-28  Bernhard Herzog  <[email protected]>
340    
341            * Thuban/version.py (longversion): Update to 0.9
342    
343            * Thuban/UI/mainwindow.py: Remove some unused imports
344    
345            * README: Add section about required additional software. Add date
346            and revision CVS keywords
347    
348            * HOWTO-Release: Add item about the translations. Add date and
349            revision CVs keywords and change formatting to match README a bit
350            better
351    
352            * po/de.po: Update for 0.9
353    
354            * test/README: Tweak the wording a little because many tests are
355            not really unittest.
356    
357    2003-08-27  Bernhard Herzog  <[email protected]>
358    
359            As preparation for the 0.9 release, switch thuban files to a
360            non-dev namespace
361    
362            * Thuban/Model/save.py (SessionSaver.write_session): Write files
363            with the http://thuban.intevation.org/dtds/thuban-0.9.dtd
364            namespace
365    
366            * Thuban/Model/load.py (SessionLoader.__init__): Accept the
367            http://thuban.intevation.org/dtds/thuban-0.9.dtd namespace too
368    
369            * test/test_save.py (SaveSessionTest.dtd)
370            (SaveSessionTest.testEmptySession)
371            (SaveSessionTest.testSingleLayer)
372            (SaveSessionTest.testLayerProjection)
373            (SaveSessionTest.testRasterLayer)
374            (SaveSessionTest.testClassifiedLayer)
375            (SaveSessionTest.test_dbf_table)
376            (SaveSessionTest.test_joined_table)
377            (SaveSessionTest.test_save_postgis): Update for new namespace
378    
379            * test/test_load.py (LoadSessionTest.dtd, TestSingleLayer)
380            (TestLayerVisibility.file_contents, TestLabels.file_contents)
381            (TestLayerProjection.file_contents)
382            (TestRasterLayer.file_contents, TestJoinedTable.file_contents)
383            (TestPostGISLayer.file_contents)
384            (TestPostGISLayerPassword.file_contents)
385            (TestLoadError.file_contents, TestLoadError.test): Update for new
386            namespace
387    
388    2003-08-27  Bernhard Herzog  <[email protected]>
389    
390            Make the table interface distinguish between row ids (an integer
391            that uniquely identifies a row) and row ordinals (a simple row
392            count from 0 to NumRows() - 1)
393    
394            * Thuban/Model/postgisdb.py (PostGISTable.RowIdToOrdinal)
395            (PostGISTable.RowOrdinalToId): New methods to conver between row
396            ids and row ordinals
397            (PostGISTable.ReadRowAsDict, PostGISTable.ReadValue): New keyword
398            parameter row_is_ordinal to indicate whether the row parameter is
399            the row id or the ordinal
400    
401            * Thuban/Model/transientdb.py (TransientTableBase.RowIdToOrdinal)
402            (TransientTableBase.RowOrdinalToId)
403            (AutoTransientTable.RowIdToOrdinal)
404            (AutoTransientTable.RowOrdinalToId): Same new methods as in
405            PostGISTable.
406            (TransientTableBase.ReadRowAsDict, TransientTableBase.ReadValue)
407            (AutoTransientTable.ReadRowAsDict, AutoTransientTable.ReadValue):
408            Same new parameter as in PostGISTable.
409    
410            * Thuban/Model/table.py (DBFTable.RowIdToOrdinal)
411            (DBFTable.RowOrdinalToId, MemoryTable.RowIdToOrdinal)
412            (MemoryTable.RowOrdinalToId): Same new methods as in PostGISTable.
413            (DBFTable.ReadValue, DBFTable.ReadRowAsDict)
414            (MemoryTable.ReadValue, MemoryTable.ReadRowAsDict): Same new
415            parameter as in PostGISTable.
416    
417            * Thuban/UI/tableview.py (DataTable.RowIdToOrdinal)
418            (DataTable.RowOrdinalToId): New methods to convert between row ids
419            and row ordinals.
420            (TableGrid.SelectRowById): New method to select a row based on its
421            ID as opposed to its ordinal
422            (DataTable.GetValue, TableGrid.OnRangeSelect)
423            (TableGrid.OnSelectCell, LayerTableGrid.select_shapes)
424            (QueryTableFrame.OnQuery, QueryTableFrame.get_selected)
425            (LayerTableFrame.__init__): Convert between row ids and row
426            ordinals as appropriate
427    
428            * test/postgissupport.py (PostGISDatabase.__init__): Add
429            doc-string.
430            (PostGISDatabase.initdb): The optional third item in a tuple in
431            tables is now a (key, value) list with additional arguments to
432            pass to upload_shapefile
433            (upload_shapefile): New parameter gid_offset to allow gids that
434            are not the same as the shapeids in the shapefile
435            (PostgreSQLServer.get_default_static_data_db): Use the new
436            gid_offset to make the gids in landmarks 1000 higher than the
437            shapeids in the shapefile
438    
439            * test/test_viewport.py
440            (TestViewportWithPostGIS.test_find_shape_at_point): Adapt to the
441            new shapeids in the landmarks table
442    
443            * test/test_transientdb.py
444            (TestTransientTable.run_iceland_political_tests)
445            (TestTransientTable.test_transient_joined_table): Add tests for
446            the new table methods and new keywords arguments.
447    
448            * test/test_postgis_db.py
449            (TestPostGISTable.test_read_row_as_dict_row_count_mode)
450            (TestPostGISTable.test_read_value_row_count_mode)
451            (TestPostGISTable.test_row_id_to_ordinal)
452            (TestPostGISTable.test_row_oridnal_to_id): New test for the new
453            table methods and the new arguments
454            (TestPostGISShapestorePoint.test_shapes_in_region)
455            (TestPostGISShapestorePoint.test_shape_raw_data)
456            (TestPostGISShapestorePoint.test_shape_points)
457            (TestPostGISShapestorePoint.test_shape_shapeid)
458            (TestPostGISShapestorePoint.test_all_shapes)
459            (TestPostGISTable.test_simple_query)
460            (TestPostGISTable.test_simple_query)
461            (TestPostGISTable.test_simple_query)
462            (TestPostGISTable.test_read_value)
463            (TestPostGISTable.test_read_row_as_dict): Adapt to the new
464            shapeids in the landmarks table
465    
466            * test/test_memory_table.py
467            (TestMemoryTable.test_read_row_as_dict_row_count_mode)
468            (TestMemoryTable.test_read_value_row_count_mode)
469            (TestMemoryTable.test_row_id_to_ordinal)
470            (TestMemoryTable.test_row_oridnal_to_id): New test for the new
471            table methods and the new arguments
472    
473            * test/test_dbf_table.py
474            (TestDBFTable.test_read_row_as_dict_row_count_mode)
475            (TestDBFTable.test_read_value_row_count_mode)
476            (TestDBFTable.test_row_id_to_ordinal)
477            (TestDBFTable.test_row_oridnal_to_id): New test for the new table
478            methods and the new arguments
479    
480    2003-08-26  Bernhard Herzog  <[email protected]>
481    
482            * Thuban/Model/postgisdb.py (PostGISShapeStore.BoundingBox): Use a
483            more postgis specific but much faster method to get the bounding
484            box
485    
486    2003-08-26  Bernhard Herzog  <[email protected]>
487    
488            * Thuban/Model/postgisdb.py (PostGISTable.Title)
489            (PostGISShapeStore.AllShapes): Add these missing methods.
490            (PostGISShapeStore.ShapesInRegion): No need to raise
491            StopIteration. We can simply return
492    
493            * test/test_postgis_db.py (TestPostGISTable.test_title)
494            (TestPostGISShapestorePoint.test_all_shapes): New tests for the
495            new methods
496    
497  2003-08-25  Bernhard Herzog  <[email protected]>  2003-08-25  Bernhard Herzog  <[email protected]>
498    
499          * Thuban/Model/postgisdb.py (shapetype_map): Add MUTLIPOLYGON.          * Thuban/Model/postgisdb.py (shapetype_map): Add MUTLIPOLYGON.
# Line 966  Line 1462 
1462    
1463          * Thuban/Model/range.py, Thuban/version.py: Remove the #! line as          * Thuban/Model/range.py, Thuban/version.py: Remove the #! line as
1464          it annoys lintian which warns about these files not being          it annoys lintian which warns about these files not being
1465          executable. The #1 isn't necessary here since if you absolutely          executable. The #! isn't necessary here since if you absolutely
1466          must execute them you can always say "python <filename>".          must execute them you can always say "python <filename>".
1467    
1468          * Thuban/UI/renderer.py (ScreenRenderer.draw_shape_layer): Remove          * Thuban/UI/renderer.py (ScreenRenderer.draw_shape_layer): Remove

Legend:
Removed from v.1657  
changed lines
  Added in v.1777

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26