[mapguide-commits] r9769 - sandbox/jng/vanilla_swig/Bindings

svn_mapguide at osgeo.org svn_mapguide at osgeo.org
Tue Nov 10 05:47:09 PST 2020


Author: jng
Date: 2020-11-10 05:47:09 -0800 (Tue, 10 Nov 2020)
New Revision: 9769

Added:
   sandbox/jng/vanilla_swig/Bindings/TODO.txt
Log:
Add TODO checklist based on the open GitHub issue list with extra items to verify

Added: sandbox/jng/vanilla_swig/Bindings/TODO.txt
===================================================================
--- sandbox/jng/vanilla_swig/Bindings/TODO.txt	                        (rev 0)
+++ sandbox/jng/vanilla_swig/Bindings/TODO.txt	2020-11-10 13:47:09 UTC (rev 9769)
@@ -0,0 +1,37 @@
+ - Check that .net error messages are being read (https://github.com/jumpinjackie/mapguide-api-bindings/issues/35)
+ - Split .net binding into the Foundation/Geometry/PlatformBase/MapGuideCommon/Web layout (https://github.com/jumpinjackie/mapguide-api-bindings/issues/18)
+   - [ ] Add CentOS 6 Dockerfile that
+      - Install SWIG and common libs tarball (from docker build system)
+      - Install same compilers/tools as the same docker image used to produce the common libs tarball
+      - Generate and build the .net/Java SWIG glue libraries
+      - Copy the compiled libs out of the docker container and into the same native library staging area for Java/.net
+   - [ ] Refactor current .net test suite to reference these nuget packages
+      - [ ] Verify test suite still passes (Windows)
+      - [ ] Verify test suite still passes (Linux)
+ - Automatic class id generation (https://github.com/jumpinjackie/mapguide-api-bindings/issues/34)
+   - [ ] Add SWIG preprocessor that controls whether the class id header should be included
+   - [ ] Run SWIG in XML mode to produce an XML of the MapGuide API surface
+   - [ ] Update ClassMapGen tool to generate class id files for .net/Java/PHP based on this XML file
+ - Test Suite
+   - [ ] Sync up current test data under /UnitTest to match what is in GitHub repo
+   - [ ] Add test data setup script for .net/Java test suites to copy the synced up test data under /UnitTest to the location the test suite is expecting
+ - Java binding
+   - [ ] Re-shuffle MgBase64 and AppThrowable to a .internal package (so we can bulk svn ignore *.java/*.class in the current dir where sources are generated)
+   - [ ] Verify test suite still passes (Windows)
+   - [ ] Verify test suite still passes (Linux)
+ - Migrate to SWIG 4.0.0 (https://github.com/jumpinjackie/mapguide-api-bindings/issues/36)
+   - [ ] Check if we can get rid of custom .net wstring marshaler (presumably SWIG 4.0 has better support in this area)
+ - PHP 7 binding (https://github.com/jumpinjackie/mapguide-api-bindings/issues/21)
+   - [ ] Re-base work against PHP 7.4
+      - [ ] If this means we have to upgrade VS compiler from 2015, push an RFC to do that
+   - [ ] Make sure downcasting still works (eg. MgSiteConnection::CreateService returns an appropriate MgService-derived subclass and not MgService)
+   - [ ] Make sure that our byte typemaps still work (test APIs that deal with MgByteReader)
+   - [ ] Make sure we can throw MgException
+   - [ ] Make sure that caught MgException instances are properly released
+   - [ ] Get our binding building against the NTS (non-thread-safe) profile so it can be used in both IIS and Apache (via mod_fcgid)
+   - [ ] Review the usage of our monkey-patched PHP traits and see whether they're still necessary
+      - [ ] Especially the custom dtor for MgException-derived classes since there is now only one MgException class with no subclasses
+   - [ ] Put all the generated code under a OSGeo\MapGuide namespace
+   - [ ] Get it building (Linux)
+   - [ ] Verify test suite still passes (Windows)
+   - [ ] Verify test suite still passes (Linux)
\ No newline at end of file



More information about the mapguide-commits mailing list