rpms/python-musicbrainz2/F-9 0001-Added-a-trackCount-parameter-to-ReleaseFilter-fixes.patch, NONE, 1.1 0002-Use-c_void_p-not-c_int-otherwise-it-crashes-on-64.patch, NONE, 1.1 0003-Support-both-the-0.2.x-and-the-0.1.x-versions-of-the.patch, NONE, 1.1 python-musicbrainz2.spec, 1.8, 1.9

Jeffrey C. Ollie (jcollie) fedora-extras-commits at redhat.com
Fri Aug 1 20:39:38 UTC 2008


Author: jcollie

Update of /cvs/pkgs/rpms/python-musicbrainz2/F-9
In directory cvs-int.fedora.redhat.com:/tmp/cvs-serv7095

Modified Files:
	python-musicbrainz2.spec 
Added Files:
	0001-Added-a-trackCount-parameter-to-ReleaseFilter-fixes.patch 
	0002-Use-c_void_p-not-c_int-otherwise-it-crashes-on-64.patch 
	0003-Support-both-the-0.2.x-and-the-0.1.x-versions-of-the.patch 
Log Message:
* Fri Aug  1 2008 Jeffrey C. Ollie <jeff at ocjtech.us> - 0.6.0-2
- Add some patches from upstream SVN
- Clean up cruft for compatibility with previous releases of Fedora.
- Add a patch that lets either version 0.2.x or 0.1.x of libdiscid be used.


0001-Added-a-trackCount-parameter-to-ReleaseFilter-fixes.patch:

--- NEW FILE 0001-Added-a-trackCount-parameter-to-ReleaseFilter-fixes.patch ---
>From 53b10a922854d83aac2d3ef0eead469ce46edd21 Mon Sep 17 00:00:00 2001
From: matt <matt at b0b80210-5d09-0410-99dd-b4bd03f891c0>
Date: Sun, 15 Jun 2008 20:00:47 +0000
Subject: [PATCH] Added a trackCount parameter to ReleaseFilter (fixes #3781).

git-svn-id: http://svn.musicbrainz.org/python-musicbrainz2/trunk@9873 b0b80210-5d09-0410-99dd-b4bd03f891c0
---
 src/musicbrainz2/webservice.py |    4 +++-
 1 files changed, 3 insertions(+), 1 deletions(-)

diff --git a/src/musicbrainz2/webservice.py b/src/musicbrainz2/webservice.py
index 7f310a2..1ec04c0 100644
--- a/src/musicbrainz2/webservice.py
+++ b/src/musicbrainz2/webservice.py
@@ -418,7 +418,7 @@ class ReleaseFilter(IFilter):
 
 	def __init__(self, title=None, discId=None, releaseTypes=None,
 			artistName=None, artistId=None, limit=None,
-			offset=None, query=None):
+			offset=None, query=None, trackCount=None):
 		"""Constructor.
 
 		If C{discId} or C{artistId} are set, only releases matching
@@ -449,6 +449,7 @@ class ReleaseFilter(IFilter):
 		@param limit: the maximum number of releases to return
 		@param offset: start results at this zero-based offset
 		@param query: a string containing a query in Lucene syntax
+		@param trackCount: the number of tracks in the release
 
 		@see: the constants in L{musicbrainz2.model.Release}
 		"""
@@ -467,6 +468,7 @@ class ReleaseFilter(IFilter):
 			('limit', limit),
 			('offset', offset),
 			('query', query),
+			('count', trackCount),
 		]
 
 		if not _paramsValid(self._params):
-- 
1.5.5.2


0002-Use-c_void_p-not-c_int-otherwise-it-crashes-on-64.patch:

--- NEW FILE 0002-Use-c_void_p-not-c_int-otherwise-it-crashes-on-64.patch ---
>From 11a263b8bb1da6bfe93d4c1074245e4c97bd7832 Mon Sep 17 00:00:00 2001
From: luks <luks at b0b80210-5d09-0410-99dd-b4bd03f891c0>
Date: Wed, 23 Jul 2008 04:54:28 +0000
Subject: [PATCH] Use c_void_p, not c_int, otherwise it crashes on 64-bit systems where sizeof(int) != sizeof(struct disc*).

git-svn-id: http://svn.musicbrainz.org/python-musicbrainz2/trunk@10149 b0b80210-5d09-0410-99dd-b4bd03f891c0
---
 src/musicbrainz2/disc.py |   19 ++++++++++---------
 1 files changed, 10 insertions(+), 9 deletions(-)

diff --git a/src/musicbrainz2/disc.py b/src/musicbrainz2/disc.py
index ccc7c4b..db95790 100644
--- a/src/musicbrainz2/disc.py
+++ b/src/musicbrainz2/disc.py
@@ -75,30 +75,31 @@ def _openLibrary():
 def _setPrototypes(libDiscId):
 	ct = ctypes
 	libDiscId.discid_new.argtypes = ( )
+	libDiscId.discid_new.restype = ct.c_void_p
 
-	libDiscId.discid_free.argtypes = (ct.c_int, )
+	libDiscId.discid_free.argtypes = (ct.c_void_p, )
 
-	libDiscId.discid_read.argtypes = (ct.c_int, ct.c_char_p)
+	libDiscId.discid_read.argtypes = (ct.c_void_p, ct.c_char_p)
 
-	libDiscId.discid_get_error_msg.argtypes = (ct.c_int, )
+	libDiscId.discid_get_error_msg.argtypes = (ct.c_void_p, )
 	libDiscId.discid_get_error_msg.restype = ct.c_char_p
 
-	libDiscId.discid_get_id.argtypes = (ct.c_int, )
+	libDiscId.discid_get_id.argtypes = (ct.c_void_p, )
 	libDiscId.discid_get_id.restype = ct.c_char_p
 
-	libDiscId.discid_get_first_track_num.argtypes = (ct.c_int, )
+	libDiscId.discid_get_first_track_num.argtypes = (ct.c_void_p, )
 	libDiscId.discid_get_first_track_num.restype = ct.c_int
 
-	libDiscId.discid_get_last_track_num.argtypes = (ct.c_int, )
+	libDiscId.discid_get_last_track_num.argtypes = (ct.c_void_p, )
 	libDiscId.discid_get_last_track_num.restype = ct.c_int
 
-	libDiscId.discid_get_sectors.argtypes = (ct.c_int, )
+	libDiscId.discid_get_sectors.argtypes = (ct.c_void_p, )
 	libDiscId.discid_get_sectors.restype = ct.c_int
 
-	libDiscId.discid_get_track_offset.argtypes = (ct.c_int, ct.c_int)
+	libDiscId.discid_get_track_offset.argtypes = (ct.c_void_p, ct.c_int)
 	libDiscId.discid_get_track_offset.restype = ct.c_int
 
-	libDiscId.discid_get_track_length.argtypes = (ct.c_int, ct.c_int)
+	libDiscId.discid_get_track_length.argtypes = (ct.c_void_p, ct.c_int)
 	libDiscId.discid_get_track_length.restype = ct.c_int
 
 
-- 
1.5.5.2


0003-Support-both-the-0.2.x-and-the-0.1.x-versions-of-the.patch:

--- NEW FILE 0003-Support-both-the-0.2.x-and-the-0.1.x-versions-of-the.patch ---
>From e785c3dd2b36f75fd020382d0d8ac2cc5665f21e Mon Sep 17 00:00:00 2001
From: Jeffrey C. Ollie <jeff at ocjtech.us>
Date: Fri, 1 Aug 2008 13:32:38 -0500
Subject: [PATCH] Support both the 0.2.x and the 0.1.x versions of the libdiscid library.

---
 src/musicbrainz2/disc.py |   30 +++++++++++++++++-------------
 1 files changed, 17 insertions(+), 13 deletions(-)

diff --git a/src/musicbrainz2/disc.py b/src/musicbrainz2/disc.py
index db95790..5fbcace 100644
--- a/src/musicbrainz2/disc.py
+++ b/src/musicbrainz2/disc.py
@@ -53,24 +53,25 @@ def _openLibrary():
 	# which isn't available for ctypes == 0.9.9.3.
 	#
 	if sys.platform == 'linux2':
-		libName = 'libdiscid.so.0'
+		libNames = ['libdiscid.so.1', 'libdiscid.so.0']
 	elif sys.platform == 'darwin':
-		libName = 'libdiscid.0.dylib'
+		libNames = ['libdiscid.0.dylib']
 	elif sys.platform == 'win32':
-		libName = 'discid.dll'
+		libNames = ['discid.dll']
 	else:
 		# This should at least work for Un*x-style operating systems
-		libName = 'libdiscid.so.0'
-
-	try:
-		libDiscId = ctypes.cdll.LoadLibrary(libName)
-		_setPrototypes(libDiscId)
-		return libDiscId
-	except OSError, e:
-		raise NotImplementedError('Error opening library: ' + str(e))
-
-	assert False # not reached
+		libNames = ['libdiscid.so.1', 'libdiscid.so.0']
 
+	errors = []
+	for libName in libNames:
+		try:
+			libDiscId = ctypes.cdll.LoadLibrary(libName)
+			_setPrototypes(libDiscId)
+			return libDiscId
+		except OSError, e:
+			errors.append(e)
+	
+	raise NotImplementedError('Error opening library: ' + ', '.join(map(str, errors)))
 
 def _setPrototypes(libDiscId):
 	ct = ctypes
@@ -102,6 +103,9 @@ def _setPrototypes(libDiscId):
 	libDiscId.discid_get_track_length.argtypes = (ct.c_void_p, ct.c_int)
 	libDiscId.discid_get_track_length.restype = ct.c_int
 
+	if hasattr(libDiscId, 'discid_get_webservice_url'):
+		libDiscId.discid_get_webservice_url.argtypes = (ct.c_void_p, )
+		libDiscId.discid_get_webservice_url.restype = ct.c_char_p
 
 def getSubmissionUrl(disc, host='mm.musicbrainz.org', port=80):
 	"""Returns a URL for adding a disc to the MusicBrainz database.
-- 
1.5.5.2



Index: python-musicbrainz2.spec
===================================================================
RCS file: /cvs/pkgs/rpms/python-musicbrainz2/F-9/python-musicbrainz2.spec,v
retrieving revision 1.8
retrieving revision 1.9
diff -u -r1.8 -r1.9
--- python-musicbrainz2.spec	1 Aug 2008 14:21:49 -0000	1.8
+++ python-musicbrainz2.spec	1 Aug 2008 20:39:08 -0000	1.9
@@ -2,28 +2,24 @@
 
 Name:           python-musicbrainz2
 Version:        0.6.0
-Release:        1%{?dist}
+Release:        2%{?dist}
 Summary:        Library which provides access to the MusicBrainz Database
 
 Group:          Development/Languages
 License:        BSD
 URL:            http://musicbrainz.org/doc/PythonMusicBrainz2
 Source0:        http://users.musicbrainz.org/~matt/python-musicbrainz2-%{version}.tar.gz
+
+Patch1:         0001-Added-a-trackCount-parameter-to-ReleaseFilter-fixes.patch
+Patch2:	        0002-Use-c_void_p-not-c_int-otherwise-it-crashes-on-64.patch
+Patch3:	        0003-Support-both-the-0.2.x-and-the-0.1.x-versions-of-the.patch
+
 BuildRoot:      %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
 
 BuildArch:      noarch
 
-%if 0%{?fedora} >= 8
-BuildRequires: python-setuptools-devel
-%else
-BuildRequires: python-setuptools
-%endif
-
-%if 0%{fedora} <= 6
-Requires:       python-ctypes
-%endif
+BuildRequires:  python-setuptools-devel
 
-Requires:       libmusicbrainz
 Requires:       libdiscid
 
 %description
@@ -34,7 +30,10 @@
 bindings.
 
 %prep
-%setup -q
+%setup0 -q
+%patch1 -p1
+%patch2 -p1
+%patch3 -p1
 
 %build
 CFLAGS="%{optflags}" %{__python} -c 'import setuptools; execfile("setup.py")' build
@@ -56,6 +55,11 @@
 %{python_sitelib}/*
 
 %changelog
+* Fri Aug  1 2008 Jeffrey C. Ollie <jeff at ocjtech.us> - 0.6.0-2
+- Add some patches from upstream SVN
+- Clean up cruft for compatibility with previous releases of Fedora.
+- Add a patch that lets either version 0.2.x or 0.1.x of libdiscid be used.
+
 * Fri Aug  1 2008 Jeffrey C. Ollie <jeff at ocjtech.us> - 0.6.0-1
 - Update to 0.6.0
 




More information about the fedora-extras-commits mailing list