SVN source code download now available

6 views
Skip to first unread message

Reid Priedhorsky

unread,
Mar 12, 2010, 5:58:50 PM3/12/10
to cyclop...@googlegroups.com
Folks,

We've turned off the old, smelly way of source code download (tarballs)
and turned on the new hotness: Subversion. Directions at:

http://cyclopath.org/wiki/Tech:Source_Code

This mirror of our internal SVN repository has the same revision numbers
and is updated nightly.

Enjoy,

Reid

James Nordgaard

unread,
Mar 12, 2010, 7:48:08 PM3/12/10
to cyclop...@googlegroups.com
Thanks Reid.

I got the files from svn; no problem. Also successfully built it. Haven't tried running yet.

I have a question. What's the best way to juggle different versions. So far I figured I only have to copy over my pyserver/CONFIG each time. I figure the best way is to move the current project directory  from 'cp' to whatever, than move whatever to 'cp'. 'cp' being what's listed all over in the sites-available/cycopath, so I don't have to change those references every time.

So what do folks at cphq do?

Thanks,
Jim


--
You received this message because you are subscribed Cyclopath Development.
To post to this group: send email to cyclop...@googlegroups.com
To read this group on the Web: http://groups.google.com/group/cyclopath-dev
To unsubscribe from this group: send email to
cyclopath-de...@googlegroups.com

Mikhil Masli

unread,
Mar 12, 2010, 8:18:33 PM3/12/10
to cyclop...@googlegroups.com
On 12 March 2010 18:48, James Nordgaard <jimnor...@gmail.com> wrote:
I have a question. What's the best way to juggle different versions. So far I figured I only have to copy over my pyserver/CONFIG each time. I figure the best way is to move the current project directory  from 'cp' to whatever, than move whatever to 'cp'. 'cp' being what's listed all over in the sites-available/cycopath, so I don't have to change those references every time.

So what do folks at cphq do?


I checkout the code into a purpose-specific directory, like e.g. if I am fixing bug 1309, then the directory would be called cp_1309. You can, of course, name differently. Then I create a symlink cp pointing to whatever branch I am currently working on (ln -s cp_1309 cp). So if I am working on multiple branches, I just update (delete and recreate) the symlink and restart apache.

About pyserver/CONFIG, I copy over my old pyserver/CONFIG (from another branch) just after a fresh checkout, but then compare it with the pyserver/CONFIG.template in the fresh checkout to see if anything changed there. If yes, I update my pyserver/CONFIG accordingly.

HTH,
Mikhil

--
Go Gophers!

Reid Priedhorsky

unread,
Mar 12, 2010, 11:43:07 PM3/12/10
to cyclop...@googlegroups.com

One advantage we have here at headquarters is write access to the SVN
repository (and sadly that's not something we're able to offer in the
forseeable future, as the public Cyclopath source code is in the same
repository as our private experimental branches and everything else
GroupLens keeps in SVN). So what I do personally is simply work in the
same directory and "svn switch" between various branches... obviously
that's not much help for you.

On the other hand, you might be able to layer another source control
system on top of your SVN checkout - I believe that tools like git and
Mercurial might be suitable for this, or maybe even SVN itself (look
into "vendor branches"). This would let you work in the same directory
(eliminating the need to mess with CONFIG) and also keep track your own
work under source control, since you don't have the luxury of checking
intermediate work into SVN.

Reid

Reid

James Nordgaard

unread,
Mar 14, 2010, 3:54:13 PM3/14/10
to cyclop...@googlegroups.com
Thanks for the answers. Switching links is working good for me, for now. I may look into an additional svn server as an intermediary, in the future, even perhaps setting one up for the open source community, when we get some more participants (so far, as far as I can tell, it's still only me).

I successfully ran the new release. The aerial photo service ran straight off. I'm having problems with the raster tiles though:

I followed the instructions and built tilecache and mapserver.

I tried the test for tilecache. But it cannot find  ./tilecache_seed.py, which makes sense because it's in the tilecache dir and the instructions say to run the command line in $PYSERVER.

Strangely, the instruction also give the full path for tilecache_update.py; I thought the instrucitons might be wrong and I should be in the tilecache dir, so I tried that, but got a different error:

Traceback (most recent call last):
  File "/home/jimn/cp/pyserver/tilecache_update.py", line 57, in <module>
    import conf
  File "/home/jimn/cpcurrent/pyserver/conf.py", line 30, in <module>
    dump_dir = cf.get('wfs', 'dump_dir')
  File "/usr/lib/python2.6/ConfigParser.py", line 311, in get
    raise NoSectionError(section)
ConfigParser.NoSectionError: No section: 'wfs'

Which appears to mean it can't find the stuff that's in $PYSERVER (which btw is set correctly). Please advice.

An additional question:  How do the tiles normally get updated now? Since the script got moved to pyserver, I'm guessing it's triggered by map changes, by the user. If not how?

Thanks much,
Jim



Reid Priedhorsky

unread,
Mar 14, 2010, 5:41:08 PM3/14/10
to cyclop...@googlegroups.com
On 03/14/10 14:54, James Nordgaard wrote:
> Thanks for the answers. Switching links is working good for me, for now. I
> may look into an additional svn server as an intermediary, in the future,
> even perhaps setting one up for the open source community,

I'm leery of setting up another public SVN server since it smells like a
fork, which would give folks a bad impression.

when we get some
> more participants (so far, as far as I can tell, it's still only me).
>
> I successfully ran the new release. The aerial photo service ran straight
> off. I'm having problems with the raster tiles though:
>
> I followed the instructions and built tilecache and mapserver.
>
> I tried the test for tilecache. But it cannot find ./tilecache_seed.py,
> which makes sense because it's in the tilecache dir and the instructions say
> to run the command line in $PYSERVER.

I suggest testing the new tiles in the following order:

MapServer
TileCache
tilecache_update.py

Only when each stage is known working proceed to the next.

You can do the first two by collecting tile URLs from the Apache lot and
putting them in your browser. Swap "/wms" for "/tilec" to hit MapServer
directly instead of through TileCache.

Note that you'll need to update your Apache config (see the sample config).

Tile updating is still by cron job, though it's slightly different and
needs to be run by user www-data. I believe there's a sample on
Tech:Installing. Note that this cron is optional; if you leave it out,
tiles just get stale which is likely fine for testing.

Reid


James Nordgaard

unread,
Mar 15, 2010, 11:22:24 AM3/15/10
to cyclop...@googlegroups.com
On Sun, Mar 14, 2010 at 4:41 PM, Reid Priedhorsky <re...@umn.edu> wrote:
On 03/14/10 14:54, James Nordgaard wrote:
Thanks for the answers. Switching links is working good for me, for now. I
may look into an additional svn server as an intermediary, in the future,
even perhaps setting one up for the open source community,

I'm leery of setting up another public SVN server since it smells like a fork, which would give folks a bad impression.



I don't understand. Granted it's a ways down the road, but making it open source makes forking inevitable and beyond your control. It's part of what spurs innovation.
 

Reid Priedhorsky

unread,
Mar 15, 2010, 12:57:56 PM3/15/10
to cyclop...@googlegroups.com

It's a bit subtle. In the open source world, the _possibility_ of a fork
is very important and basically makes OSS work.

However, an *actual* fork is bad, because it indicates that the project
has fundamental problems to the degree that the development community
can no longer work together (which obviously is unhealthy). It's nearly
100% certain that either the old branch or the new branch will die (the
BSD Unices and Emacs/XEmacs are the only projects where this didn't
happen, I think), and it fragments the community (which causes problems
with critical mass) and leads to duplicated work while the branches
reimplement each other's features.

There was an essay about this that I read a while back, but I don't
recall the details unfortunately.

To be specific, if someone forked Cyclopath, they would be making the
statement that the mainline tree (ours) and its developers were so
broken that they wanted us to go away.

It's because of these bad effects of an actual fork that I don't want to
give the false impression that one is happening.

Reid

Reply all
Reply to author
Forward
0 new messages