Clean-up towards release of v1.0

Coordinator
Jun 30, 2012 at 4:39 PM

As a part of the clean-up process I moved all example projects into a separate folder, hope everyone is fine with it, in this way trunk looks a bit cleaner:

Examples/
  DemoWebSite
  DemoWinForm
  ExampleCodeSnippets
  GtkFormSamples
  MapWindowConference
  MsSqlSpatialDemoDb
  PostgisDemoDb
  SharpMap.Demo.Wms
  SharpMap.Using
  WinFormSamples
Also does it make sense to merge these projects into SharpMap.Extensions (if they are functional)?
SharpMap.Data.Providers.FileGdb
SharpMap.Serialization
SharpMap.SqlServerSpatialObjects
--
Gena

Coordinator
Jun 30, 2012 at 4:44 PM

Hi, i think we instead should split SharpMap.Extensions to one assembly per extension to keep the external references footprint smaller and more customizable.

Coordinator
Jun 30, 2012 at 4:51 PM

Maybe in a longer term, for 1.0 it is maybe better to keep it as is just for the sake of consistency?

I'd rather think of SharpMap.Extentions as something like GDAL or OGR (a nice single library which supports many formats) instead of a lot of small libs, mainly from maintenance point of view.

Would be good to hear all pros / cons here.

Developer
Jul 1, 2012 at 2:26 PM
Edited Jul 1, 2012 at 2:28 PM

I don't like SharpMap.Extensions much in its current form. It comes down to 'the rests of the providers we didnt want in core'. About the comparison with with GDAL; GDAL has the complete set of dataproviders. Extensions just the ones that are more exotic or have dependencies on databases that few people will have on their machines. An equivalent of GDAL should contain all data providers. 

Moving FileGdb and SqlServerSpatialObjects to extensions makes sense for the 1.0 release. Not sure if  SharpMap.Serialization belongs there. 

For V3 splitting all providers in its own assembly might be a good idea but I have not made my mind up about this. A pro could be that some providers could be compiled for some platforms and others can not. 

Developer
Jul 1, 2012 at 3:05 PM

If I do a clean checkout of the trunk I get build errors. If I look at the directory structure in svn repro browser this seems to be caused by some projects that were not moved to Examples. Teamcity is happily building in the meantime:

http://teamcity.codebetter.com/project.html?projectId=project222&tab=projectOverview

Could this be it didn't get the latest version? This was the SvnBridge bug that caused me to move from svn to hg for my projects.  Various members of my team reported this. To get the latest version you had to do a clean checkout. We all work with svn within our company and never had this problem there.

Coordinator
Jul 1, 2012 at 3:36 PM
Edited Jul 1, 2012 at 3:36 PM

after some directories were moved to Examples I noticed that some were left (SvnBridge bugs), I removed them once again. 

Now if I look at repository using https://sharpmap.svn.codeplex.com/svn/Trunk/ - it shows them again! 

 

Offtopic (svn stability):

I have feeling that we should just move the whole repository to google code svn (register sharpmap project there), CodePlex has no any integration with that svn anyway. The life will be much easier. 

We can try to put svn:externals to google code in CodePlex repositor, just to have everything browsable here - have to check if it works.

Coordinator
Jul 1, 2012 at 3:39 PM

One more reason for this is revision numbering, 98541 is not what I'd expect :), not a big deal but .NET gets crazy with this if I pass it to assembly patcher on teamcity (short limitation).

Developer
Jul 1, 2012 at 5:00 PM

Another clean-up action I propose is to split SharpMap.UI into a Forms and a Web assembly. And move the Web one to examples or remove it altogether.

Developer
Jul 1, 2012 at 5:05 PM

oh, and I love the idea of moving all those projects to Examples.

Coordinator
Jul 1, 2012 at 5:16 PM

svn externals experiment:

1. Added a new folder on google code in https://nettopologysuite.googlecode.com/svn/branches/SharpMap

2. Added a folder in https://sharpmap.svn.codeplex.com/svn/Branches/0.9.5-DeltaShell/externals_test

3. Added svn:externals property on that folder to point to 1.

4. Added a test readme.txt file in 1.

5. svn update on checked out CodePlex - works fine.

Results:

svn update in CodePlex checks out ok (probably won't be used much, but if people will use svn link from codeplex - everything should still work fine).

Changes are *not* visible on CodePlex changes page ... fine, let's put a link/redirection on source code page to google code.

I added a suggestion on CodePlex issue tracker to offer subversion as a native server, but have doubts if it will be ever installed, anyway you can vote if you think it's a good idea: http://codeplex.codeplex.com/workitem/26336.

----

See some network stats below:

D:\src\SharpMap\0.9.5-DeltaShell>ping sharpmap.svn.codeplex.com
Pinging svn.codeplex.com [65.52.103.73] with 32 bytes of data:
Request timed out.
Request timed out.
Request timed out.
Request timed out.
Ping statistics for 65.52.103.73:    Packets: Sent = 4, Received = 0, Lost = 4 (100% loss),

D:\src\SharpMap\0.9.5-DeltaShell>tracert sharpmap.svn.codeplex.com
Tracing route to svn.codeplex.com [65.52.103.73]over a maximum of 30 hops:
1    13 ms    11 ms    11 ms  <my provider address>
2    12 ms    10 ms    12 ms  gv-rc0011-cr102-irb-202.core.as9143.net [213.51.161.129] 
3    14 ms    15 ms    13 ms  asd-tr0409-cr101-ae8-0.core.as9143.net [213.51.158.26] 
4    14 ms    13 ms    11 ms  ams-ix-2.microsoft.com [195.69.145.21] 
5    15 ms    12 ms    15 ms  ge-5-2-0-0.ams-64cb-1a.ntwk.msn.net [207.46.42.64] 
6    22 ms    23 ms    20 ms  ge-5-3-0-0.lts-64cb-1a.ntwk.msn.net [207.46.42.134] 
7   190 ms   101 ms   101 ms  ge-3-0-0-0.nyc-64cb-1a.ntwk.msn.net [207.46.43.44] 
8   198 ms   204 ms   203 ms  ge-7-0-0-0.co1-64c-1b.ntwk.msn.net [207.46.40.90] 
9   224 ms   203 ms   203 ms  xe-5-2-0-0.co1-96c-1a.ntwk.msn.net [207.46.40.167] <-- latest reachable server
10     *        *        *     Request timed out. 
11     *        *        *     Request timed out. 
12     *        *        *     Request timed out. 
13     *        *        *     Request timed out. 
Trace complete.

D:\src\SharpMap\0.9.5-DeltaShell>ping nettopologysuite.googlecode.com
Pinging googlecode.l.googleusercontent.com [173.194.78.82] with 32 bytes of data:
Reply from 173.194.78.82: bytes=32 time=77ms TTL=49
Reply from 173.194.78.82: bytes=32 time=20ms TTL=49
Reply from 173.194.78.82: bytes=32 time=20ms TTL=50
Reply from 173.194.78.82: bytes=32 time=18ms TTL=49
Ping statistics for 173.194.78.82:    Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:    Minimum = 18ms, Maximum = 77ms, Average = 33ms

D:\src\SharpMap\0.9.5-DeltaShell>tracert nettopologysuite.googlecode.com
Tracing route to googlecode.l.googleusercontent.com [173.194.67.82]over a maximum of 30 hops:
1    13 ms    12 ms    11 ms  <my provider address>  
2    12 ms    11 ms    72 ms  gv-rc0011-cr101-irb-201.core.as9143.net [213.51.161.1] 
3    15 ms    11 ms    11 ms  asd-lc0006-cr101-ae8-0.core.as9143.net [213.51.158.12] 
4    12 ms    11 ms    12 ms  72.14.217.124 
5    23 ms    14 ms    11 ms  209.85.248.116 
6    15 ms    16 ms    14 ms  209.85.255.72 
7    19 ms    15 ms    19 ms  209.85.240.158 
8    20 ms   128 ms    18 ms  209.85.250.161 
9     *        *        *     Request timed out. 
10    28 ms    18 ms    18 ms  wi-in-f82.1e100.net [173.194.67.82]
Trace complete.

Developer
Jul 1, 2012 at 5:19 PM

Another proposed clean-up:

Delete ImageBox

Coordinator
Jul 1, 2012 at 5:25 PM
yeah, everything just started to shine ;)

On Sun, Jul 1, 2012 at 6:05 PM, pauldendulk <notifications@codeplex.com> wrote:

From: pauldendulk

oh, and I love the idea of moving all those projects to Examples.

Read the full discussion online.

To add a post to this discussion, reply to this email (SharpMap@discussions.codeplex.com)

To start a new discussion for this project, email SharpMap@discussions.codeplex.com

You are receiving this email because you subscribed to this discussion on CodePlex. You can unsubscribe or change your settings on codePlex.com.

Please note: Images and attachments will be removed from emails. Any posts to this discussion will also be available online at codeplex.com


Developer
Jul 1, 2012 at 5:28 PM

Not seeing the source history on codeplex is a disadvantage that counts.

Moving to Mercurial is also an option. Felix has informed about this before and did not proceed because they cannot transfer the history to Mercurial. But if we can move the history to some other svn for archiving it might be an option (create a sharpmap.archive project on google code). What I like about Mercurial is that everyone can fork. If your users badly need some modifications they just fork and keep referring to original site. 

Unfortunately, if you start considering Mercurial, we could also consider moving to git. And if you do that you could consider moving to github. My mind is not made up.

Coordinator
Jul 1, 2012 at 5:28 PM
On Sun, Jul 1, 2012 at 6:19 PM, pauldendulk <notifications@codeplex.com> wrote:

From: pauldendulk

Another proposed clean-up:

Delete ImageBox

+1, I guess MapBox.cs is what is used. In my branch I actually rewrote this into MapControl.cs, but that's probably something for the next iteration/major version.

I did not review other assemblies yet except SharpMap.dll (see post on Architecture v1.0).

Read the full discussion online.

To add a post to this discussion, reply to this email (SharpMap@discussions.codeplex.com)

To start a new discussion for this project, email SharpMap@discussions.codeplex.com

You are receiving this email because you subscribed to this discussion on CodePlex. You can unsubscribe or change your settings on codePlex.com.

Please note: Images and attachments will be removed from emails. Any posts to this discussion will also be available online at codeplex.com


Coordinator
Jul 1, 2012 at 5:38 PM


On Sun, Jul 1, 2012 at 6:28 PM, pauldendulk <notifications@codeplex.com> wrote:

From: pauldendulk

Not seeing the source history on codeplex is a disadvantage that counts.

There will be a perfect source code history on google code page, just one click away :)

Moving to Mercurial is also an option. Felix has informed about this before and did not proceed because they cannot transfer the history to Mercurial. But if we can move the history to some other svn for archiving it might be an option (create a sharpmap.archive project on google code). What I like about Mercurial is that everyone can fork. If your users badly need some modifications they just fork and keep referring to original site.

Unfortunately, if you start considering Mercurial, we could also consider moving to git. And if you do that you could consider moving to github. My mind is not made up.

I like Subversion mainly because we use VisualSVN at my company and it works just perfect in VS2010 / VS2012. But that's my preference. If everyone else will prefer hg / git and the tools for VS are ok - fine.

.
Developer
Jul 2, 2012 at 9:43 AM
pauldendulk wrote:
Could this be it didn't get the latest version? This was the SvnBridge bug that caused me to move from svn to hg for my projects.  Various members of my team reported this. To get the latest version you had to do a clean checkout. We all work with svn within our company and never had this problem there.

At the present, i could not also get the lastest vesion. I have to check out all or  check out some folder miss ( Ex: trunk/examples ).

I also like faster subversion

Coordinator
Jul 2, 2012 at 9:06 PM
Edited Jul 2, 2012 at 10:06 PM

I fixed the solution. For me it works now. Awaiting the CI :).

Further suggestions for Cleanup

  • Move more sample code to examples (GtkSampleForm, SharpMap.Using, MapWindowConference)
  • Move sample database exports for MsSqlSpatial and PostGis to seperate folder on repository
  • CleanUp external refernces folder (in favor of NuGet packages)
  • @Peter: Isn't SharpMapServer some kind of demo project, too?
Developer
Jul 2, 2012 at 11:33 PM
FObermaier wrote:
  • CleanUp external refernces folder (in favor of NuGet packages)

Yes, as much as we can. What do we do with the assemblies that are not on nuget?

Developer
Jul 2, 2012 at 11:38 PM
FObermaier wrote:

I fixed the solution. For me it works now. Awaiting the CI :).

builds on my machine

Coordinator
Jul 3, 2012 at 12:41 PM
... for a time being I've changed an option on TeamCity to always checkoud clean sources before build. It still has problems with SvnBridge, the server can not generate correct patch.

It will take more time to build but hopefully it will be a bit more stable for a time being, before repository will be migrated/migrated.

--
Gena

On Mon, Jul 2, 2012 at 10:06 PM, FObermaier <notifications@codeplex.com> wrote:

From: FObermaier

I fixed the solution. For me it works now. Awaiting the CI :).

Further suggestions for Cleanup

  • Move more sample code to examples (GtkSampleForm, SharpMap.Using, MapWindowConference)
  • Move sample database exports for MsSqlSpatial and PostGis to seperate folder on repository
  • CleanUp external refernces folder (in favor of NuGet packages)

Read the full discussion online.

To add a post to this discussion, reply to this email (SharpMap@discussions.codeplex.com)

To start a new discussion for this project, email SharpMap@discussions.codeplex.com

You are receiving this email because you subscribed to this discussion on CodePlex. You can unsubscribe or change your settings on codePlex.com.

Please note: Images and attachments will be removed from emails. Any posts to this discussion will also be available online at codeplex.com


Developer
Jul 4, 2012 at 9:43 PM

For 1.0 release maybe we can improve examples and documentation.

This is my fault, because I've taken this task but I haven't too much time to deticate.

Hope to work on it soon.

Jul 4, 2012 at 10:34 PM

Many of the examples don't work. For example "sharpMap.Geometries.Geometry" doesn't exist.

In fact, I can't get database examples to work with Postgres

Coordinator
Jul 5, 2012 at 7:08 AM

@slhall: SharpMap.Geometries have been replaced with GeoAPI/NetTopologySuite geometries

Developer
Jul 5, 2012 at 4:17 PM

I think we should focus on examples in code, and less so on examples in comments or documentation. That way compile errors and unit tests (of Category=Example) could help us keep it up to date.