ports/188995: [NEW PORT] devel/codeville - a distributed version control system, uses python

C Hutchinson portmaster at bsdforge.com
Fri Apr 25 18:00:00 UTC 2014


>Number:         188995
>Category:       ports
>Synopsis:       [NEW PORT] devel/codeville - a distributed version control system, uses python
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          change-request
>Submitter-Id:   current-users
>Arrival-Date:   Fri Apr 25 18:00:00 UTC 2014
>Closed-Date:
>Last-Modified:
>Originator:     C Hutchinson
>Release:        releng_8, releng_9
>Organization:
>Environment:
>Description:
New port intended for the devel category. A distributed VCS, based [in part]
on lang/python. This port was previously abandonware. But I have adopted it,
and have created a newer version. But want to wait for feedback on this
version, before updating this port, to the newer port I have ready.

Please find codeville.shar attached. Which is the complete port, and is
STAGE-ready.

Thank you for all your time, and consideration.

--Chris

>How-To-Repeat:
N/A
>Fix:
see attached.

Patch attached with submission follows:

# This is a shell archive.  Save it in a file, remove anything before
# this line, and then unpack it by entering "sh file".  Note, it may
# create directories; files and directories will be owned by you and
# have default permissions.
#
# This archive contains:
#
#	codeville
#	codeville/Makefile
#	codeville/pkg-descr
#	codeville/files
#	codeville/files/extra-psyco-patch-cdv
#	codeville/files/extra-psyco-patch-cdv-agent
#	codeville/files/extra-psyco-patch-cdvpasswd
#	codeville/files/extra-psyco-patch-cdvserver
#	codeville/files/extra-psyco-patch-cdvupgrade
#	codeville/files/patch-setup.py
#	codeville/pkg-plist
#
echo c - codeville
mkdir -p codeville > /dev/null 2>&1
echo x - codeville/Makefile
sed 's/^X//' >codeville/Makefile << '285591ccf600c99acaadab8f5b7068d4'
X# Created by: C Hutchinson <portmaster at bsdforge.com>
X# devel/codeville/Makefile 2014-04-25 05:58:35
X#
X
XPORTNAME=	codeville
XPORTVERSION=	0.1.16
XPORTREVISION=	1
XCATEGORIES=	devel python
XMASTER_SITES=	http://bsdforge.com/projects/source/devel/codeville/
XDISTNAME=	Codeville-${PORTVERSION}
X
XMAINTAINER=	portmaster at bsdforge.com
XCOMMENT=	An "anarchic" control version system without unnecessary re-merges
X
XLICENSE=	BSD3CLAUSE
X
XUSES= tar:xz
XUSE_PYTHON=	yes
XUSE_PYDISTUTILS=	yes
XPYDISTUTILS_PKGNAME=	Codeville
X
XPORTDOCS=	LICENSE.txt
X
XEXAMPLE_FILES=	cdvserver.conf.sample
X
Xpost-install:
X# examples
X	@${MKDIR} ${STAGEDIR}${EXAMPLESDIR}
X.for file in ${EXAMPLE_FILES}
X	@${INSTALL_DATA} ${WRKSRC}/${file} ${STAGEDIR}${EXAMPLESDIR}
X.endfor
X# documentation
X.ifndef(NOPORTDOCS)
X	@${MKDIR} ${STAGEDIR}${DOCSDIR}
X. for file in ${PORTDOCS}
X	@${INSTALL_DATA} ${WRKSRC}/${file} ${STAGEDIR}${DOCSDIR}
X. endfor
X.endif
X
Xpre-everything::
X.ifndef(WITHOUT_PSYCO)
X	@${ECHO_MSG} '===> Define WITHOUT_PSYCO to disable devel/py-psyco optimization'
X.endif
X
X.include <bsd.port.pre.mk>
X
X.if ${ARCH} != "i386"
XWITHOUT_PSYCO=  yes
X.endif
X
X.ifndef(WITHOUT_PSYCO)
XRUN_DEPENDS+=	${PYTHON_SITELIBDIR}/psyco/_psyco.so:${PORTSDIR}/devel/py-psyco
X
X. for patch in \
X		cdv \
X		cdv-agent \
X		cdvpasswd \
X		cdvserver \
X		cdvupgrade
XEXTRA_PATCHES+= ${FILESDIR}/extra-psyco-patch-${patch}
X. endfor
X.endif
X
X.include <bsd.port.post.mk>
285591ccf600c99acaadab8f5b7068d4
echo x - codeville/pkg-descr
sed 's/^X//' >codeville/pkg-descr << '4358ebfc43064f2df32937b3cd4ab8ed'
XCodeville is a distributed version control system. It began with a novel
Xidea for a merge algorithm and has grown from there. It is designed to
Xbe easy to use and scale from small personal projects to very large
Xdistributed ones. If you'd like to know why there is a need for new
Xmerge algorithms, consider what the lead
Xmonotone developer had to say:
Xhttp://article.gmane.org/gmane.comp.version-control.monotone.devel/3264
X
XCodeville works by creating an identifier for each change which is
Xdone, and remembering the list of all changes which have been applied
Xto each file and the last change which modified each line in each
Xfile. When there's a conflict, it checks to see if one of the two
Xsides has already been applied to the other one, and if so makes
Xthe other side win automatically. When there's an actual not
Xautomatically mergeable version conflict, Codeville behaves in
Xalmost exactly the same way as CVS.
X
XWWW: http://bsdforge.com/projects/devel/codeville/
4358ebfc43064f2df32937b3cd4ab8ed
echo c - codeville/files
mkdir -p codeville/files > /dev/null 2>&1
echo x - codeville/files/extra-psyco-patch-cdv
sed 's/^X//' >codeville/files/extra-psyco-patch-cdv << 'b45254444cb10f44545792f32b60794e'
X--- cdv.orig	2014-04-25 09:17:15.471740342 -0700
X+++ cdv	2014-04-25 09:38:43.816789782 -0700
X@@ -6,6 +6,13 @@
X # Setup import path in case we can't find codeville in standard places
X
X try:
X+ import psyco
X+ assert psyco.__version__ >= 0x010300f0
X+ psyco.full()
X+except:
X+ pass
X+
X+try:
X     import Codeville.db
X except ImportError:
X     import sys, os.path
b45254444cb10f44545792f32b60794e
echo x - codeville/files/extra-psyco-patch-cdv-agent
sed 's/^X//' >codeville/files/extra-psyco-patch-cdv-agent << '5db4ea0d586f54342d082e1f9c205dc0'
X--- cdv-agent.orig	2014-04-25 09:41:07.675757891 -0700
X+++ cdv-agent	2014-04-25 09:43:11.060596188 -0700
X@@ -4,6 +4,13 @@
X # See LICENSE.txt for license information.
X
X try:
X+ import psyco
X+ assert psyco.__version__ >= 0x010300f0
X+ psyco.full()
X+except:
X+ pass
X+
X+try:
X     import Codeville.db
X except ImportError:
X     import sys, os.path
5db4ea0d586f54342d082e1f9c205dc0
echo x - codeville/files/extra-psyco-patch-cdvpasswd
sed 's/^X//' >codeville/files/extra-psyco-patch-cdvpasswd << '269599475ebc5dab3aad6b7478d9fdc6'
X--- cdvpasswd.orig	2014-04-25 09:51:55.652185063 -0700
X+++ cdvpasswd	2014-04-25 09:52:37.185505359 -0700
X@@ -4,6 +4,13 @@
X # See LICENSE.txt for license information
X
X try:
X+ import psyco
X+ assert psyco.__version__ >= 0x010300f0
X+ psyco.full()
X+except:
X+ pass
X+
X+try:
X     import Codeville.db
X except ImportError:
X     import sys, os.path
269599475ebc5dab3aad6b7478d9fdc6
echo x - codeville/files/extra-psyco-patch-cdvserver
sed 's/^X//' >codeville/files/extra-psyco-patch-cdvserver << 'ed3cdcd27cd3ed617767626dad0653f8'
X--- cdvserver.orig	2014-04-25 09:57:00.942944922 -0700
X+++ cdvserver	2014-04-25 09:57:36.920682316 -0700
X@@ -4,6 +4,13 @@
X # See LICENSE.TXT for license information.
X
X try:
X+ import psyco
X+ assert psyco.__version__ >= 0x010300f0
X+ psyco.full()
X+except:
X+ pass
X+
X+try:
X     import Codeville.db
X except ImportError:
X     import sys, os.path
ed3cdcd27cd3ed617767626dad0653f8
echo x - codeville/files/extra-psyco-patch-cdvupgrade
sed 's/^X//' >codeville/files/extra-psyco-patch-cdvupgrade << '82ca9f75450ba6779b1e3cfb33948ae0'
X--- cdvupgrade.orig	2014-04-25 10:02:12.705383444 -0700
X+++ cdvupgrade	2014-04-25 10:02:49.744226929 -0700
X@@ -4,6 +4,13 @@
X # see LICENSE.txt for license information
X
X try:
X+ import psyco
X+ assert psyco.__version__ >= 0x010300f0
X+ psyco.full()
X+except:
X+ pass
X+
X+try:
X     import Codeville.db
X except ImportError:
X     import sys, os.path
82ca9f75450ba6779b1e3cfb33948ae0
echo x - codeville/files/patch-setup.py
sed 's/^X//' >codeville/files/patch-setup.py << '06a39f0abf7e68bea63b839858a88609'
X--- setup.py.orig	2014-04-25 10:05:43.962352416 -0700
X+++ setup.py	2014-04-25 10:08:24.387042426 -0700
X@@ -44,6 +44,5 @@
X     packages = ["Codeville", "Codeville/old"],
X     ext_modules = plat_ext,
X
X-    scripts = scripts,
X-    data_files = data_files
X+    scripts = scripts
X     )
06a39f0abf7e68bea63b839858a88609
echo x - codeville/pkg-plist
sed 's/^X//' >codeville/pkg-plist << '2876e20d9a399856bdb9c40b205dcc0b'
Xbin/cdv
Xbin/cdv-agent
Xbin/cdvpasswd
Xbin/cdvserver
Xbin/cdvupgrade
X%%PYTHON_SITELIBDIR%%/Codeville/DFS.py
X%%PYTHON_SITELIBDIR%%/Codeville/DFS.pyc
X%%PYTHON_SITELIBDIR%%/Codeville/DFS.pyo
X%%PYTHON_SITELIBDIR%%/Codeville/RawServer.py
X%%PYTHON_SITELIBDIR%%/Codeville/RawServer.pyc
X%%PYTHON_SITELIBDIR%%/Codeville/RawServer.pyo
X%%PYTHON_SITELIBDIR%%/Codeville/SRP.py
X%%PYTHON_SITELIBDIR%%/Codeville/SRP.pyc
X%%PYTHON_SITELIBDIR%%/Codeville/SRP.pyo
X%%PYTHON_SITELIBDIR%%/Codeville/__init__.py
X%%PYTHON_SITELIBDIR%%/Codeville/__init__.pyc
X%%PYTHON_SITELIBDIR%%/Codeville/__init__.pyo
X%%PYTHON_SITELIBDIR%%/Codeville/agent.py
X%%PYTHON_SITELIBDIR%%/Codeville/agent.pyc
X%%PYTHON_SITELIBDIR%%/Codeville/agent.pyo
X%%PYTHON_SITELIBDIR%%/Codeville/auth.py
X%%PYTHON_SITELIBDIR%%/Codeville/auth.pyc
X%%PYTHON_SITELIBDIR%%/Codeville/auth.pyo
X%%PYTHON_SITELIBDIR%%/Codeville/bencode.py
X%%PYTHON_SITELIBDIR%%/Codeville/bencode.pyc
X%%PYTHON_SITELIBDIR%%/Codeville/bencode.pyo
X%%PYTHON_SITELIBDIR%%/Codeville/cdv_glob.py
X%%PYTHON_SITELIBDIR%%/Codeville/cdv_glob.pyc
X%%PYTHON_SITELIBDIR%%/Codeville/cdv_glob.pyo
X%%PYTHON_SITELIBDIR%%/Codeville/client.py
X%%PYTHON_SITELIBDIR%%/Codeville/client.pyc
X%%PYTHON_SITELIBDIR%%/Codeville/client.pyo
X%%PYTHON_SITELIBDIR%%/Codeville/client_helpers.py
X%%PYTHON_SITELIBDIR%%/Codeville/client_helpers.pyc
X%%PYTHON_SITELIBDIR%%/Codeville/client_helpers.pyo
X%%PYTHON_SITELIBDIR%%/Codeville/client_net.py
X%%PYTHON_SITELIBDIR%%/Codeville/client_net.pyc
X%%PYTHON_SITELIBDIR%%/Codeville/client_net.pyo
X%%PYTHON_SITELIBDIR%%/Codeville/crypt.py
X%%PYTHON_SITELIBDIR%%/Codeville/crypt.pyc
X%%PYTHON_SITELIBDIR%%/Codeville/crypt.pyo
X%%PYTHON_SITELIBDIR%%/Codeville/db.py
X%%PYTHON_SITELIBDIR%%/Codeville/db.pyc
X%%PYTHON_SITELIBDIR%%/Codeville/db.pyo
X%%PYTHON_SITELIBDIR%%/Codeville/diff.py
X%%PYTHON_SITELIBDIR%%/Codeville/diff.pyc
X%%PYTHON_SITELIBDIR%%/Codeville/diff.pyo
X%%PYTHON_SITELIBDIR%%/Codeville/entropy.py
X%%PYTHON_SITELIBDIR%%/Codeville/entropy.pyc
X%%PYTHON_SITELIBDIR%%/Codeville/entropy.pyo
X%%PYTHON_SITELIBDIR%%/Codeville/history.py
X%%PYTHON_SITELIBDIR%%/Codeville/history.pyc
X%%PYTHON_SITELIBDIR%%/Codeville/history.pyo
X%%PYTHON_SITELIBDIR%%/Codeville/lcsmatch.py
X%%PYTHON_SITELIBDIR%%/Codeville/lcsmatch.pyc
X%%PYTHON_SITELIBDIR%%/Codeville/lcsmatch.pyo
X%%PYTHON_SITELIBDIR%%/Codeville/merge.py
X%%PYTHON_SITELIBDIR%%/Codeville/merge.pyc
X%%PYTHON_SITELIBDIR%%/Codeville/merge.pyo
X%%PYTHON_SITELIBDIR%%/Codeville/mergelcs.py
X%%PYTHON_SITELIBDIR%%/Codeville/mergelcs.pyc
X%%PYTHON_SITELIBDIR%%/Codeville/mergelcs.pyo
X%%PYTHON_SITELIBDIR%%/Codeville/network.py
X%%PYTHON_SITELIBDIR%%/Codeville/network.pyc
X%%PYTHON_SITELIBDIR%%/Codeville/network.pyo
X%%PYTHON_SITELIBDIR%%/Codeville/old/__init__.py
X%%PYTHON_SITELIBDIR%%/Codeville/old/__init__.pyc
X%%PYTHON_SITELIBDIR%%/Codeville/old/__init__.pyo
X%%PYTHON_SITELIBDIR%%/Codeville/old/history.py
X%%PYTHON_SITELIBDIR%%/Codeville/old/history.pyc
X%%PYTHON_SITELIBDIR%%/Codeville/old/history.pyo
X%%PYTHON_SITELIBDIR%%/Codeville/old/merge.py
X%%PYTHON_SITELIBDIR%%/Codeville/old/merge.pyc
X%%PYTHON_SITELIBDIR%%/Codeville/old/merge.pyo
X%%PYTHON_SITELIBDIR%%/Codeville/passwd.py
X%%PYTHON_SITELIBDIR%%/Codeville/passwd.pyc
X%%PYTHON_SITELIBDIR%%/Codeville/passwd.pyo
X%%PYTHON_SITELIBDIR%%/Codeville/path.py
X%%PYTHON_SITELIBDIR%%/Codeville/path.pyc
X%%PYTHON_SITELIBDIR%%/Codeville/path.pyo
X%%PYTHON_SITELIBDIR%%/Codeville/selectpoll.py
X%%PYTHON_SITELIBDIR%%/Codeville/selectpoll.pyc
X%%PYTHON_SITELIBDIR%%/Codeville/selectpoll.pyo
X%%PYTHON_SITELIBDIR%%/Codeville/server.py
X%%PYTHON_SITELIBDIR%%/Codeville/server.pyc
X%%PYTHON_SITELIBDIR%%/Codeville/server.pyo
X%%PYTHON_SITELIBDIR%%/Codeville/testtest.py
X%%PYTHON_SITELIBDIR%%/Codeville/testtest.pyc
X%%PYTHON_SITELIBDIR%%/Codeville/testtest.pyo
X%%PYTHON_SITELIBDIR%%/Codeville/upgrade.py
X%%PYTHON_SITELIBDIR%%/Codeville/upgrade.pyc
X%%PYTHON_SITELIBDIR%%/Codeville/upgrade.pyo
X%%EXAMPLESDIR%%/cdvserver.conf.sample
X at dirrm %%EXAMPLESDIR%%
X at dirrm %%PYTHON_SITELIBDIR%%/Codeville/old
X at dirrm %%PYTHON_SITELIBDIR%%/Codeville
X at dirrmtry %%PYTHON_SITELIBDIR%%
X at dirrmtry %%PYTHON_LIBDIR%%
2876e20d9a399856bdb9c40b205dcc0b
exit



>Release-Note:
>Audit-Trail:
>Unformatted:


More information about the freebsd-ports-bugs mailing list