Hello community, here is the log from the commit of package kajongg for openSUSE:Factory checked in at 2013-07-30 15:56:59 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/kajongg (Old) and /work/SRC/openSUSE:Factory/.kajongg.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "kajongg" Changes: -------- --- /work/SRC/openSUSE:Factory/kajongg/kajongg.changes 2013-07-22 17:05:21.000000000 +0200 +++ /work/SRC/openSUSE:Factory/.kajongg.new/kajongg.changes 2013-07-30 15:57:00.000000000 +0200 @@ -1,0 +2,7 @@ +Thu Jul 25 22:24:57 UTC 2013 - [email protected] + +- Update to 4.10.97 + * KDE 4.11 RC 2 release + * See http://www.kde.org/announcements/announce-4.11-rc2.php + +------------------------------------------------------------------- Old: ---- kajongg-4.10.95.tar.xz New: ---- kajongg-4.10.97.tar.xz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ kajongg.spec ++++++ --- /var/tmp/diff_new_pack.JyiFsK/_old 2013-07-30 15:57:01.000000000 +0200 +++ /var/tmp/diff_new_pack.JyiFsK/_new 2013-07-30 15:57:01.000000000 +0200 @@ -25,7 +25,7 @@ License: GPL-2.0+ Group: Amusements/Games/Board/Puzzle Url: http://www.kde.org -Version: 4.10.95 +Version: 4.10.97 Release: 0 Source0: kajongg-%{version}.tar.xz BuildRoot: %{_tmppath}/%{name}-%{version}-build ++++++ kajongg-4.10.95.tar.xz -> kajongg-4.10.97.tar.xz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kajongg-4.10.95/src/board.py new/kajongg-4.10.97/src/board.py --- old/kajongg-4.10.95/src/board.py 2013-07-10 01:21:29.000000000 +0200 +++ new/kajongg-4.10.97/src/board.py 2013-07-24 00:21:40.000000000 +0200 @@ -244,7 +244,7 @@ return sorted([x for x in self.tiles if x.focusable], key=sortFunction) @apply - def hasFocus(): # pylint: disable=E0202 + def hasFocus(): """defines if this board should show a focusRect if another board has focus, setting this to False does not change scene.focusBoard""" @@ -930,7 +930,7 @@ and not game.autoPlay) @apply - def disableFocusRect(): # pylint: disable=E0202 + def disableFocusRect(): """suppress focusrect""" def fget(self): # pylint: disable=W0212 @@ -946,7 +946,7 @@ return property(**locals()) @apply - def focusBoard(): # pylint: disable=E0202 + def focusBoard(): """get / set the board that has its focusRect shown""" def fget(self): # pylint: disable=W0212 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kajongg-4.10.95/src/config.py new/kajongg-4.10.97/src/config.py --- old/kajongg-4.10.95/src/config.py 2013-07-10 01:21:29.000000000 +0200 +++ new/kajongg-4.10.97/src/config.py 2013-07-24 00:21:40.000000000 +0200 @@ -126,6 +126,14 @@ def __setitem__(self, key, value): self.__setattr__(key, value) + def __delitem__(self, key): + """pylint wants this for a complete container, but we do not need it""" + del SetupPreferences._Parameters[key] + + def __len__(self): + """pylint wants this for a complete container, but we do not need it""" + return len(SetupPreferences._Parameters) + def addParameter(self, par): """add a parameter to the skeleton""" if par.name not in SetupPreferences._Parameters: diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kajongg-4.10.95/src/guiutil.py new/kajongg-4.10.97/src/guiutil.py --- old/kajongg-4.10.95/src/guiutil.py 2013-07-10 01:21:29.000000000 +0200 +++ new/kajongg-4.10.97/src/guiutil.py 2013-07-24 00:21:40.000000000 +0200 @@ -58,6 +58,8 @@ class ListComboBox(QComboBox): """easy to use with a python list. The elements must have an attribute 'name'.""" + # pylint: disable=R0924 + # pylint wants __setitem__, __getitem__ etc for a perfect container def __init__(self, items=None, parent=None): QComboBox.__init__(self, parent) self.items = items diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kajongg-4.10.95/src/humanclient.py new/kajongg-4.10.97/src/humanclient.py --- old/kajongg-4.10.95/src/humanclient.py 2013-07-10 01:21:29.000000000 +0200 +++ new/kajongg-4.10.97/src/humanclient.py 2013-07-24 13:12:49.000000000 +0200 @@ -1009,6 +1009,13 @@ match = re.search(r".*DNS lookup.*\[Errno -5\] (.*)", message) if match: url = url.split(':')[0] # remove the port + # current twisted (version 12.3) returns different messages: + if not match: + match = re.search(r".*DNS lookup failed: address u'(.*)' not found.*", message) + if match: + return u'%s: %s' % (match.group(1), m18n('DNS lookup failed, address not found')) + if not match: + match = re.search(r".*DNS lookup.*\[Errno 110\] (.*)", message) if not match: match = re.search(r".*while connecting: 113: (.*)", message) if match: diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kajongg-4.10.95/src/meld.py new/kajongg-4.10.97/src/meld.py --- old/kajongg-4.10.95/src/meld.py 2013-07-10 01:21:30.000000000 +0200 +++ new/kajongg-4.10.97/src/meld.py 2013-07-24 00:21:40.000000000 +0200 @@ -216,6 +216,16 @@ """Meld[x] returns Tile # x """ return self.tiles[index] + def __setitem__(self, index, value): + """sets a tile in the meld. Not currently used but pylint + wants the container to be perfect""" + raise Exception("Assigning a tile to a Meld is not supported") + + def __delitem__(self, index): + """removes a tile from the meld. Not currently used but pylint + wants the container to be perfect""" + raise Exception("removing a tile from a Meld is not supported") + def __eq__(self, other): return isinstance(other, Meld) and self.pairs == other.pairs diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kajongg-4.10.95/src/player.py new/kajongg-4.10.97/src/player.py --- old/kajongg-4.10.95/src/player.py 2013-07-10 01:21:30.000000000 +0200 +++ new/kajongg-4.10.97/src/player.py 2013-07-24 00:21:40.000000000 +0200 @@ -162,7 +162,7 @@ self.__hand = None @apply - def hand(): # pylint: disable=E0202 + def hand(): """a readonly tuple""" def fget(self): # pylint: disable=W0212 @@ -172,7 +172,7 @@ return property(**locals()) @apply - def bonusTiles(): # pylint: disable=E0202 + def bonusTiles(): """a readonly tuple""" def fget(self): # pylint: disable=W0212 @@ -180,7 +180,7 @@ return property(**locals()) @apply - def concealedTileNames(): # pylint: disable=E0202 + def concealedTileNames(): """a readonly tuple""" def fget(self): # pylint: disable=W0212 @@ -188,7 +188,7 @@ return property(**locals()) @apply - def exposedMelds(): # pylint: disable=E0202 + def exposedMelds(): """a readonly tuple""" def fget(self): # pylint: disable=W0212 @@ -196,7 +196,7 @@ return property(**locals()) @apply - def concealedMelds(): # pylint: disable=E0202 + def concealedMelds(): """a readonly tuple""" def fget(self): # pylint: disable=W0212 @@ -204,7 +204,7 @@ return property(**locals()) @apply - def mayWin(): # pylint: disable=E0202 + def mayWin(): """a readonly tuple""" def fget(self): # pylint: disable=W0212 @@ -299,6 +299,7 @@ # pylint: disable=W0212 return self.__payment def fset(self, payment): + # pylint: disable=W0212 assert payment == 0 self.__payment = 0 return property(**locals()) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kajongg-4.10.95/src/playfield.py new/kajongg-4.10.97/src/playfield.py --- old/kajongg-4.10.95/src/playfield.py 2013-07-10 01:21:30.000000000 +0200 +++ new/kajongg-4.10.97/src/playfield.py 2013-07-24 00:21:40.000000000 +0200 @@ -49,13 +49,13 @@ from PyQt4.QtGui import QGridLayout, QAction from PyQt4.QtGui import QComboBox, QSlider, QHBoxLayout, QLabel from PyQt4.QtGui import QVBoxLayout, QSpacerItem, QSizePolicy, QCheckBox -except ImportError, e: - NOTFOUND.append('Package python-qt4: PyQt4: %s' % e) +except ImportError, importError: + NOTFOUND.append('Package python-qt4: PyQt4: %s' % importError) try: from zope.interface import implements # pylint: disable=W0611 -except ImportError, e: - NOTFOUND.append('Package python-zope-interface missing: %s' % e) +except ImportError, importError: + NOTFOUND.append('Package python-zope-interface missing: %s' % importError) from kde import Sorry, QuestionYesNo, KIcon, KAction, KApplication, KToggleFullScreenAction, \ KXmlGuiWindow, KConfigDialog, KStandardAction @@ -86,8 +86,8 @@ from game import Game, ScoringGame from chat import ChatWindow -except ImportError, e: - NOTFOUND.append('kajongg is not correctly installed: modules: %s' % e) +except ImportError, importError: + NOTFOUND.append('kajongg is not correctly installed: modules: %s' % importError) if len(NOTFOUND): MSG = "\n".join(" * %s" % s for s in NOTFOUND) @@ -727,29 +727,30 @@ """retranslate""" self.actionScoreGame.setText(m18nc('@action:inmenu', "&Score Manual Game")) self.actionScoreGame.setIconText(m18nc('@action:intoolbar', 'Manual Game')) - self.actionScoreGame.setHelpText(m18nc('@info:tooltip', '&Score a manual game.')) + self.actionScoreGame.setHelpText(m18nc('kajongg @info:tooltip', '&Score a manual game.')) self.actionPlayGame.setText(m18nc('@action:intoolbar', "&Play")) self.actionPlayGame.setPriority(QAction.LowPriority) - self.actionPlayGame.setHelpText(m18nc('@info:tooltip', 'Start a new game.')) + self.actionPlayGame.setHelpText(m18nc('kajongg @info:tooltip', 'Start a new game.')) self.actionAbortGame.setText(m18nc('@action:inmenu', "&Abort Game")) self.actionAbortGame.setPriority(QAction.LowPriority) - self.actionAbortGame.setHelpText(m18nc('@info:tooltip', 'Abort the current game.')) + self.actionAbortGame.setHelpText(m18nc('kajongg @info:tooltip', 'Abort the current game.')) self.actionQuit.setText(m18nc('@action:inmenu', "&Quit Kajongg")) self.actionQuit.setPriority(QAction.LowPriority) self.actionPlayers.setText(m18nc('@action:intoolbar', "&Players")) - self.actionPlayers.setHelpText(m18nc('@info:tooltip', 'define your players.')) + self.actionPlayers.setHelpText(m18nc('kajongg @info:tooltip', 'define your players.')) self.actionAngle.setText(m18nc('@action:inmenu', "&Change Visual Angle")) self.actionAngle.setIconText(m18nc('@action:intoolbar', "Angle")) - self.actionAngle.setHelpText(m18nc('@info:tooltip', "Change the visual appearance of the tiles.")) + self.actionAngle.setHelpText(m18nc('kajongg @info:tooltip', "Change the visual appearance of the tiles.")) self.actionScoring.setText(m18nc('@action:inmenu', "&Show Scoring Editor")) self.actionScoring.setIconText(m18nc('@action:intoolbar', "&Scoring")) - self.actionScoring.setHelpText(m18nc('@info:tooltip', "Show or hide the scoring editor for a manual game.")) + self.actionScoring.setHelpText(m18nc('kajongg @info:tooltip', + "Show or hide the scoring editor for a manual game.")) self.actionScoreTable.setText(m18nc('kajongg @action:inmenu', "&Score Table")) self.actionScoreTable.setIconText(m18nc('kajongg @action:intoolbar', "&Scores")) @@ -758,16 +759,16 @@ self.actionExplain.setText(m18nc('@action:inmenu', "&Explain Scores")) self.actionExplain.setIconText(m18nc('@action:intoolbar', "&Explain")) - self.actionExplain.setHelpText(m18nc('@info:tooltip', + self.actionExplain.setHelpText(m18nc('kajongg @info:tooltip', 'Explain the scoring for all players in the current game.')) self.actionAutoPlay.setText(m18nc('@action:inmenu', "&Demo Mode")) self.actionAutoPlay.setPriority(QAction.LowPriority) - self.actionAutoPlay.setHelpText(m18nc('@info:tooltip', + self.actionAutoPlay.setHelpText(m18nc('kajongg @info:tooltip', 'Let the computer take over for you. Start a new local game if needed.')) self.actionChat.setText(m18n("C&hat")) - self.actionChat.setHelpText(m18nc('@info:tooltip', 'Chat with the other players.')) + self.actionChat.setHelpText(m18nc('kajongg @info:tooltip', 'Chat with the other players.')) def changeEvent(self, event): """when the applicationwide language changes, recreate GUI""" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kajongg-4.10.95/src/query.py new/kajongg-4.10.97/src/query.py --- old/kajongg-4.10.95/src/query.py 2013-07-10 01:21:30.000000000 +0200 +++ new/kajongg-4.10.97/src/query.py 2013-07-24 00:21:40.000000000 +0200 @@ -394,7 +394,8 @@ name = 'kajonggserver.db' else: name = 'kajongg.db' - dbpath = InternalParameters.dbPath or appdataDir() + name + + dbpath = InternalParameters.dbPath.decode('utf-8') if InternalParameters.dbPath else appdataDir() + name dbhandle.setDatabaseName(dbpath) dbExisted = os.path.exists(dbpath) if Debug.sql: diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kajongg-4.10.95/src/rule.py new/kajongg-4.10.97/src/rule.py --- old/kajongg-4.10.95/src/rule.py 2013-07-10 01:21:30.000000000 +0200 +++ new/kajongg-4.10.97/src/rule.py 2013-07-24 19:43:44.000000000 +0200 @@ -24,7 +24,7 @@ import re # the new regex is about 7% faster from hashlib import md5 # pylint: disable=E0611 -from PyQt4.QtCore import QString +from PyQt4.QtCore import QString, QVariant from util import m18n, m18nc, m18nE, english, logException from query import Query @@ -54,6 +54,24 @@ """set all to 0""" self.points = self.doubles = self.limits = 0 + def change(self, unitName, value): + """sets value for unitName. If changed, return True""" + oldValue = self.__getattribute__(unitName) + if isinstance(value, QVariant): + value = value.toString() + newValue = type(oldValue)(value) + if newValue == oldValue: + return False, None + if newValue: + if unitName == 'points': + if self.doubles: + return False, 'Cannot have points and doubles' + if unitName == 'doubles': + if self.points: + return False, 'Cannot have points and doubles' + self.__setattr__(unitName, newValue) + return True, None + def __str__(self): """make score printable""" parts = [] @@ -667,6 +685,7 @@ return self._definition def fset(self, definition): """setter for definition""" + # pylint: disable=W0212 assert not isinstance(definition, QString) prevDefinition = self.definition self._definition = definition diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kajongg-4.10.95/src/server.py new/kajongg-4.10.97/src/server.py --- old/kajongg-4.10.95/src/server.py 2013-07-10 01:21:30.000000000 +0200 +++ new/kajongg-4.10.97/src/server.py 2013-07-24 00:21:40.000000000 +0200 @@ -147,7 +147,7 @@ self.loadedFromDb = False @apply - def suspended(): # pylint: disable=E0202 + def suspended(): """is this table holding a suspended game?""" def fget(self): # pylint: disable=W0212 @@ -659,8 +659,6 @@ assert player.isCalling, '%s: concmelds:%s withdiscard:%s lastmeld:%s' % ( player, concealedMelds, withDiscard, lastMeld) discardingPlayer = self.game.activePlayer - # pylint: disable=E1103 - # (pylint ticket 8774) lastMove = self.game.lastMoves(without=[Message.PopupMsg]).next() robbedTheKong = lastMove.message == Message.DeclaredKong if robbedTheKong: @@ -1091,8 +1089,6 @@ realm = MJRealm() realm.server = MJServer() kajonggPortal = portal.Portal(realm, [DBPasswordChecker()]) - # pylint: disable=E1101 - # pylint thinks reactor is missing listen* and run loadPredefinedRulesets() try: if InternalParameters.socket: diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kajongg-4.10.95/src/sound.py new/kajongg-4.10.97/src/sound.py --- old/kajongg-4.10.95/src/sound.py 2013-07-10 01:21:30.000000000 +0200 +++ new/kajongg-4.10.97/src/sound.py 2013-07-24 00:21:40.000000000 +0200 @@ -19,7 +19,7 @@ """ import os, tarfile, subprocess, datetime, cStringIO -from hashlib import md5 # pylint: disable=E0611 +from hashlib import md5 if os.name == 'nt': import winsound # pylint: disable=F0401 @@ -180,7 +180,8 @@ if len(self.directory) == 32: if os.path.split(self.directory)[1] == self.md5sum: return 'remote' - if self.directory.startswith(os.environ['HOME']): + home = os.environ['HOME'].decode('utf-8') + if self.directory.startswith(home): return 'local' result = os.path.split(self.directory)[0] result = os.path.split(result)[1] diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kajongg-4.10.95/src/tile.py new/kajongg-4.10.97/src/tile.py --- old/kajongg-4.10.95/src/tile.py 2013-07-10 01:21:30.000000000 +0200 +++ new/kajongg-4.10.97/src/tile.py 2013-07-24 00:21:40.000000000 +0200 @@ -319,7 +319,7 @@ self.graphics.update() @apply - def focusable(): # pylint: disable=E0202 + def focusable(): """redirect to self.graphics.""" def fget(self): return bool(self.graphics.flags() & QGraphicsItem.ItemIsFocusable) @@ -333,7 +333,7 @@ return property(**locals()) @apply - def board(): # pylint: disable=E0202 + def board(): """get current board of this tile. Readonly.""" def fget(self): # pylint: disable=W0212 @@ -341,7 +341,7 @@ return property(**locals()) @apply - def xoffset(): # pylint: disable=E0202 + def xoffset(): """in logical board coordinates""" # pylint: disable=W0212 def fget(self): @@ -354,7 +354,7 @@ return property(**locals()) @apply - def yoffset(): # pylint: disable=E0202 + def yoffset(): """in logical board coordinates""" # pylint: disable=W0212 def fget(self): @@ -367,7 +367,7 @@ return property(**locals()) @apply - def element(): # pylint: disable=E0202 + def element(): """tileName""" def fget(self): # pylint: disable=W0212 @@ -382,7 +382,7 @@ return property(**locals()) @apply - def dark(): # pylint: disable=E0202 + def dark(): """show face?""" def fget(self): # pylint: disable=W0212 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kajongg-4.10.95/src/uiwall.py new/kajongg-4.10.97/src/uiwall.py --- old/kajongg-4.10.95/src/uiwall.py 2013-07-10 01:21:30.000000000 +0200 +++ new/kajongg-4.10.97/src/uiwall.py 2013-07-24 00:21:40.000000000 +0200 @@ -93,6 +93,18 @@ """make Wall index-able""" return self.__sides[index] + def __setitem__(self, index, value): + """only for pylint, currently not used""" + self.__sides[index] = value + + def __delitem__(self, index): + """only for pylint, currently not used""" + del self.__sides[index] + + def __len__(self): + """only for pylint, currently not used""" + return len(self.__sides) + def hide(self): """hide all four walls and their decorators""" for side in self.__sides: @@ -157,7 +169,6 @@ return property(**locals()) @apply - # pylint: disable=E0202 def tileset(): """setting this actually changes the visuals.""" def fget(self): diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kajongg-4.10.95/src/util.py new/kajongg-4.10.97/src/util.py --- old/kajongg-4.10.95/src/util.py 2013-07-10 01:21:30.000000000 +0200 +++ new/kajongg-4.10.97/src/util.py 2013-07-24 00:21:40.000000000 +0200 @@ -47,8 +47,6 @@ from kde import i18n, i18nc, Sorry, Information else: # a server might not have KDE4 - # pylint thinks those are already defined - # pylint: disable=E0102 def i18n(englishIn, *args): """dummy for server""" result = englishIn @@ -95,7 +93,7 @@ os.makedirs(newPath) return newPath else: - result = os.path.dirname(str(KGlobal.dirs().locateLocal("appdata", ""))) + '/' + result = os.path.dirname(unicode(KGlobal.dirs().locateLocal("appdata", ""))) + '/' return result def cacheDir(): @@ -103,7 +101,7 @@ if InternalParameters.isServer: result = os.path.join(appdataDir(), 'cache') else: - result = os.path.dirname(str(KGlobal.dirs().locateLocal("cache", ""))) + result = os.path.dirname(unicode(KGlobal.dirs().locateLocal("cache", ""))) result = os.path.join(result, 'kajongg') if not os.path.exists(result): os.makedirs(result) -- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
