##// END OF EJS Templates
dependencies: bumped pyramid-debugtoolbar to 4.3.1
marcink -
r1907:d622a0b9 default
parent child Browse files
Show More
@@ -405,19 +405,6 b''
405 405 license = [ pkgs.lib.licenses.mit ];
406 406 };
407 407 };
408 backport-ipaddress = super.buildPythonPackage {
409 name = "backport-ipaddress-0.1";
410 buildInputs = with self; [];
411 doCheck = false;
412 propagatedBuildInputs = with self; [];
413 src = fetchurl {
414 url = "https://pypi.python.org/packages/d3/30/54c6dab05a4dec44db25ff309f1fbb6b7a8bde3f2bade38bb9da67bbab8f/backport_ipaddress-0.1.tar.gz";
415 md5 = "9c1f45f4361f71b124d7293a60006c05";
416 };
417 meta = {
418 license = [ pkgs.lib.licenses.psfl ];
419 };
420 };
421 408 backports.shutil-get-terminal-size = super.buildPythonPackage {
422 409 name = "backports.shutil-get-terminal-size-1.0.0";
423 410 buildInputs = with self; [];
@@ -822,13 +809,13 b''
822 809 };
823 810 };
824 811 graphviz = super.buildPythonPackage {
825 name = "graphviz-0.7.1";
812 name = "graphviz-0.8";
826 813 buildInputs = with self; [];
827 814 doCheck = false;
828 815 propagatedBuildInputs = with self; [];
829 816 src = fetchurl {
830 url = "https://pypi.python.org/packages/7d/2d/f5cfa56467ca5a65eb44e1103d89d2f65dbc4f04cf7a1f3d38e973c3d1a8/graphviz-0.7.1.zip";
831 md5 = "d5926e89975121d56dec777a79bfc9d1";
817 url = "https://pypi.python.org/packages/da/84/0e997520323d6b01124eb01c68d5c101814d0aab53083cd62bd75a90f70b/graphviz-0.8.zip";
818 md5 = "9486a885360a5ee54a81eb2950470c71";
832 819 };
833 820 meta = {
834 821 license = [ pkgs.lib.licenses.mit ];
@@ -899,6 +886,19 b''
899 886 license = [ pkgs.lib.licenses.bsdOriginal ];
900 887 };
901 888 };
889 ipaddress = super.buildPythonPackage {
890 name = "ipaddress-1.0.18";
891 buildInputs = with self; [];
892 doCheck = false;
893 propagatedBuildInputs = with self; [];
894 src = fetchurl {
895 url = "https://pypi.python.org/packages/4e/13/774faf38b445d0b3a844b65747175b2e0500164b7c28d78e34987a5bfe06/ipaddress-1.0.18.tar.gz";
896 md5 = "310c2dfd64eb6f0df44aa8c59f2334a7";
897 };
898 meta = {
899 license = [ pkgs.lib.licenses.psfl ];
900 };
901 };
902 902 ipdb = super.buildPythonPackage {
903 903 name = "ipdb-0.10.3";
904 904 buildInputs = with self; [];
@@ -1446,13 +1446,13 b''
1446 1446 };
1447 1447 };
1448 1448 pyramid-debugtoolbar = super.buildPythonPackage {
1449 name = "pyramid-debugtoolbar-3.0.5";
1449 name = "pyramid-debugtoolbar-4.2.1";
1450 1450 buildInputs = with self; [];
1451 1451 doCheck = false;
1452 propagatedBuildInputs = with self; [pyramid pyramid-mako repoze.lru Pygments];
1452 propagatedBuildInputs = with self; [pyramid pyramid-mako repoze.lru Pygments ipaddress];
1453 1453 src = fetchurl {
1454 url = "https://pypi.python.org/packages/64/0e/df00bfb55605900e7a2f7e4a18dd83575a6651688e297d5a0aa4c208fd7d/pyramid_debugtoolbar-3.0.5.tar.gz";
1455 md5 = "aebab8c3bfdc6f89e4d3adc1d126538e";
1454 url = "https://pypi.python.org/packages/db/26/94620b7752936e2cd74838263ff366db9b454f7394bfb62d1eb2f84b29c1/pyramid_debugtoolbar-4.2.1.tar.gz";
1455 md5 = "3dfaced2fab1644ff5284017be9d92b9";
1456 1456 };
1457 1457 meta = {
1458 1458 license = [ { fullName = "Repoze Public License"; } pkgs.lib.licenses.bsdOriginal ];
@@ -1722,7 +1722,7 b''
1722 1722 name = "rhodecode-enterprise-ce-4.9.0";
1723 1723 buildInputs = with self; [pytest py pytest-cov pytest-sugar pytest-runner pytest-catchlog pytest-profiling gprof2dot pytest-timeout mock WebTest cov-core coverage configobj];
1724 1724 doCheck = true;
1725 propagatedBuildInputs = with self; [Babel Beaker FormEncode Mako Markdown MarkupSafe MySQL-python Paste PasteDeploy PasteScript Pygments pygments-markdown-lexer Pylons Routes SQLAlchemy Tempita URLObject WebError WebHelpers WebHelpers2 WebOb WebTest Whoosh alembic amqplib anyjson appenlight-client authomatic backport-ipaddress cssselect celery channelstream colander decorator deform docutils gevent gunicorn infrae.cache ipython iso8601 kombu lxml msgpack-python nbconvert packaging psycopg2 py-gfm pycrypto pycurl pyparsing pyramid pyramid-debugtoolbar pyramid-mako pyramid-beaker pysqlite python-dateutil python-ldap python-memcached python-pam recaptcha-client repoze.lru requests simplejson subprocess32 waitress zope.cachedescriptors dogpile.cache dogpile.core psutil py-bcrypt];
1725 propagatedBuildInputs = with self; [Babel Beaker FormEncode Mako Markdown MarkupSafe MySQL-python Paste PasteDeploy PasteScript Pygments pygments-markdown-lexer Pylons Routes SQLAlchemy Tempita URLObject WebError WebHelpers WebHelpers2 WebOb WebTest Whoosh alembic amqplib anyjson appenlight-client authomatic cssselect celery channelstream colander decorator deform docutils gevent gunicorn infrae.cache ipython iso8601 kombu lxml msgpack-python nbconvert packaging psycopg2 py-gfm pycrypto pycurl pyparsing pyramid pyramid-debugtoolbar pyramid-mako pyramid-beaker pysqlite python-dateutil python-ldap python-memcached python-pam recaptcha-client repoze.lru requests simplejson subprocess32 waitress zope.cachedescriptors dogpile.cache dogpile.core psutil py-bcrypt];
1726 1726 src = ./.;
1727 1727 meta = {
1728 1728 license = [ { fullName = "Affero GNU General Public License v3 or later (AGPLv3+)"; } { fullName = "AGPLv3, and Commercial License"; } ];
@@ -6,7 +6,6 b' amqplib==1.0.2'
6 6 anyjson==0.3.3
7 7 authomatic==0.1.0.post1
8 8 Babel==1.3
9 backport-ipaddress==0.1
10 9 Beaker==1.9.0
11 10 celery==2.2.10
12 11 Chameleon==2.24
@@ -55,7 +54,7 b' pygments-markdown-lexer==0.1.0.dev39'
55 54 Pygments==2.2.0
56 55 pyparsing==1.5.7
57 56 pyramid-beaker==0.8
58 pyramid-debugtoolbar==3.0.5
57 pyramid-debugtoolbar==4.2.1
59 58 pyramid-jinja2==2.5
60 59 pyramid-mako==1.0.2
61 60 pyramid==1.9.0
@@ -89,10 +89,7 b''
89 89 },
90 90 "python2.7-authomatic-0.1.0.post1": {
91 91 "MIT License": "http://spdx.org/licenses/MIT"
92 },
93 "python2.7-backport-ipaddress-0.1": {
94 "Python Software Foundation License version 2": "http://spdx.org/licenses/Python-2.0"
95 },
92 },
96 93 "python2.7-backports.shutil-get-terminal-size-1.0.0": {
97 94 "MIT License": "http://spdx.org/licenses/MIT"
98 95 },
@@ -1991,9 +1991,10 b' def check_ip_access(source_ip, allowed_i'
1991 1991 :param allowed_ips: list of allowed ips together with mask
1992 1992 """
1993 1993 log.debug('checking if ip:%s is subnet of %s' % (source_ip, allowed_ips))
1994 source_ip_address = ipaddress.ip_address(source_ip)
1994 source_ip_address = ipaddress.ip_address(safe_unicode(source_ip))
1995 1995 if isinstance(allowed_ips, (tuple, list, set)):
1996 1996 for ip in allowed_ips:
1997 ip = safe_unicode(ip)
1997 1998 try:
1998 1999 network_address = ipaddress.ip_network(ip, strict=False)
1999 2000 if source_ip_address in network_address:
@@ -101,7 +101,7 b' def _filter_port(ip):'
101 101 else:
102 102 # fallback to ipaddress
103 103 try:
104 ipaddress.IPv6Address(ip_addr)
104 ipaddress.IPv6Address(safe_unicode(ip_addr))
105 105 except Exception:
106 106 return False
107 107 return True
@@ -286,6 +286,7 b' def attach_context_attributes(context, r'
286 286 Attach variables into template context called `c`, please note that
287 287 request could be pylons or pyramid request in here.
288 288 """
289
289 290 rc_config = SettingsModel().get_all_settings(cache=True)
290 291
291 292 context.rhodecode_version = rhodecode.__version__
@@ -1123,7 +1123,7 b' class UserIpMap(Base, BaseModel):'
1123 1123
1124 1124 @classmethod
1125 1125 def _get_ip_range(cls, ip_addr):
1126 net = ipaddress.ip_network(ip_addr, strict=False)
1126 net = ipaddress.ip_network(safe_unicode(ip_addr), strict=False)
1127 1127 return [str(net.network_address), str(net.broadcast_address)]
1128 1128
1129 1129 def __json__(self):
@@ -777,6 +777,7 b' class UserModel(BaseModel):'
777 777
778 778 def parse_ip_range(self, ip_range):
779 779 ip_list = []
780
780 781 def make_unique(value):
781 782 seen = []
782 783 return [c for c in value if not (c in seen or seen.append(c))]
@@ -788,8 +789,8 b' class UserModel(BaseModel):'
788 789 ip_range = ip_range.strip()
789 790 if '-' in ip_range:
790 791 start_ip, end_ip = ip_range.split('-', 1)
791 start_ip = ipaddress.ip_address(start_ip.strip())
792 end_ip = ipaddress.ip_address(end_ip.strip())
792 start_ip = ipaddress.ip_address(safe_unicode(start_ip.strip()))
793 end_ip = ipaddress.ip_address(safe_unicode(end_ip.strip()))
793 794 parsed_ip_range = []
794 795
795 796 for index in xrange(int(start_ip), int(end_ip) + 1):
@@ -27,7 +27,7 b' import ipaddress'
27 27 import colander
28 28
29 29 from rhodecode.translation import _
30 from rhodecode.lib.utils2 import glob2re
30 from rhodecode.lib.utils2 import glob2re, safe_unicode
31 31
32 32 log = logging.getLogger(__name__)
33 33
@@ -35,7 +35,7 b' log = logging.getLogger(__name__)'
35 35 def ip_addr_validator(node, value):
36 36 try:
37 37 # this raises an ValueError if address is not IpV4 or IpV6
38 ipaddress.ip_network(value, strict=False)
38 ipaddress.ip_network(safe_unicode(value), strict=False)
39 39 except ValueError:
40 40 msg = _(u'Please enter a valid IPv4 or IpV6 address')
41 41 raise colander.Invalid(node, msg)
@@ -48,7 +48,7 b' class IpAddrValidator(object):'
48 48 def __call__(self, node, value):
49 49 try:
50 50 # this raises an ValueError if address is not IpV4 or IpV6
51 ipaddress.ip_network(value, strict=self.strict)
51 ipaddress.ip_network(safe_unicode(value), strict=self.strict)
52 52 except ValueError:
53 53 msg = _(u'Please enter a valid IPv4 or IpV6 address')
54 54 raise colander.Invalid(node, msg)
@@ -44,7 +44,7 b' from rhodecode.authentication.base impor'
44 44 from rhodecode.config.routing import ADMIN_PREFIX
45 45 from rhodecode.lib.auth import HasRepoGroupPermissionAny, HasPermissionAny
46 46 from rhodecode.lib.utils import repo_name_slug, make_db_config
47 from rhodecode.lib.utils2 import safe_int, str2bool, aslist, md5
47 from rhodecode.lib.utils2 import safe_int, str2bool, aslist, md5, safe_unicode
48 48 from rhodecode.lib.vcs.backends.git.repository import GitRepository
49 49 from rhodecode.lib.vcs.backends.hg.repository import MercurialRepository
50 50 from rhodecode.lib.vcs.backends.svn.repository import SubversionRepository
@@ -972,13 +972,13 b' def ValidIp():'
972 972 # we ovveride the default to_python() call
973 973 def to_python(self, value, state):
974 974 v = super(_validator, self).to_python(value, state)
975 v = v.strip()
975 v = safe_unicode(v.strip())
976 976 net = ipaddress.ip_network(address=v, strict=False)
977 977 return str(net)
978 978
979 979 def validate_python(self, value, state):
980 980 try:
981 addr = value.strip()
981 addr = safe_unicode(value.strip())
982 982 # this raises an ValueError if address is not IpV4 or IpV6
983 983 ipaddress.ip_network(addr, strict=False)
984 984 except ValueError:
@@ -261,7 +261,7 b' def test_revoke_perm(test_user):'
261 261 def test_ip_range_generator(ip_range, expected, expect_errors):
262 262 func = UserModel().parse_ip_range
263 263 if expect_errors:
264 pytest.raises(Exception, func, ip_range)
264 pytest.raises(ValueError, func, ip_range)
265 265 else:
266 266 parsed_list = func(ip_range)
267 267 assert parsed_list == expected
@@ -99,7 +99,6 b' install_requirements = ['
99 99 'anyjson',
100 100 'appenlight-client',
101 101 'authomatic',
102 'backport_ipaddress',
103 102 'cssselect',
104 103 'celery',
105 104 'channelstream',
General Comments 0
You need to be logged in to leave comments. Login now