mirror of
https://github.com/KevinMidboe/Node-Com-Handler.git
synced 2025-10-29 17:50:27 +00:00
Started to create a small FLASK restful api for handling requests
This commit is contained in:
@@ -1,6 +0,0 @@
|
||||
var http = require('http');
|
||||
http.createServer(function (req, res) {
|
||||
res.writeHead(200, {'Content-Type': 'text/plain'});
|
||||
res.end('Hello World\n');
|
||||
}).listen(8124, "10.0.0.41");
|
||||
console.log('Server running at http://127.0.0.1:8124/');
|
||||
BIN
v1/__pycache__/diskusage.cpython-34.pyc
Normal file
BIN
v1/__pycache__/diskusage.cpython-34.pyc
Normal file
Binary file not shown.
BIN
v1/__pycache__/uptime.cpython-34.pyc
Normal file
BIN
v1/__pycache__/uptime.cpython-34.pyc
Normal file
Binary file not shown.
111
v1/app.py
Executable file
111
v1/app.py
Executable file
@@ -0,0 +1,111 @@
|
||||
#!/usr/bin/env python3
|
||||
# Flask auth with HTTP '$ pip install flask_httpauth'
|
||||
# For https '$ pip install Flask-SSLify'
|
||||
|
||||
from flask import Flask, jsonify, make_response, request, url_for, abort
|
||||
from flask_httpauth import HTTPBasicAuth
|
||||
from json import loads, dumps
|
||||
|
||||
from werkzeug.security import generate_password_hash, \
|
||||
check_password_hash
|
||||
|
||||
import uptime
|
||||
from diskusage import diskUsage
|
||||
|
||||
app = Flask(__name__, static_url_path = "")
|
||||
auth = HTTPBasicAuth()
|
||||
|
||||
# Hardcoded users, the password is hashed with salt used by wekzeug
|
||||
users = {
|
||||
"kevin": "9f6c79bbb3b8bbc4e6aab32314afaf3c812df66b",
|
||||
"apollo": "BerryTree",
|
||||
"test": "test"
|
||||
}
|
||||
|
||||
# Flask function for checking password sent with http request
|
||||
@auth.verify_password
|
||||
def verify_password(email, password):
|
||||
return verifyHash(password)
|
||||
|
||||
# Costum function for hashing and verifying the sent password.
|
||||
# TODO Read if ok to send in cleartext like this if use https
|
||||
def verifyHash(pw):
|
||||
pw_hash = generate_password_hash(pw)
|
||||
return check_password_hash(pw_hash, pw)
|
||||
|
||||
# Flask function for getting password matching username sent by http request
|
||||
@auth.get_password
|
||||
def get_pw(username):
|
||||
if username in users:
|
||||
return users.get(username)
|
||||
return None
|
||||
|
||||
# Flasks own error handler that makes and returns error 401 if creds
|
||||
# to not match.
|
||||
@auth.error_handler
|
||||
def unauthorized():
|
||||
return make_response(jsonify({'error': 'Unauthorized access'}), 401)
|
||||
|
||||
# This would be replaced with a database, but single process and thread
|
||||
# can use local data like this for simplicity.
|
||||
|
||||
|
||||
# Want all return data to be JSON so create custom error response
|
||||
@app.errorhandler(404)
|
||||
def not_found(error):
|
||||
return make_response(jsonify({'error': 'Not found'}), 404)
|
||||
@app.errorhandler(400)
|
||||
def bad_request(error):
|
||||
return make_response(jsonify({'error': 'Bad request'}), 400)
|
||||
|
||||
|
||||
# --- Apollo Activity --- #
|
||||
|
||||
@app.route('/api/v1/disks', methods=['GET'])
|
||||
@auth.login_required
|
||||
def get_diskUsage():
|
||||
|
||||
if (diskUsage()):
|
||||
return jsonify(diskUsage())
|
||||
else:
|
||||
abort(404)
|
||||
|
||||
@app.route('/api/v1/disks/<disk_name>', methods=['GET'])
|
||||
@auth.login_required
|
||||
def get_singleDiskUsage(disk_name, other):
|
||||
|
||||
if (diskUsage(disk_name)):
|
||||
return jsonify({task_type: diskUsage(disk_name)})
|
||||
else:
|
||||
abort(404)
|
||||
|
||||
@app.route('/api/v1/uptimes', methods=['GET'])
|
||||
@auth.login_required
|
||||
def get_uptimes():
|
||||
up = uptime.uptime()
|
||||
print(up)
|
||||
return jsonify({'duration': up.duration, 'users': up.users,
|
||||
'load': up.load})
|
||||
|
||||
@app.route('/api/v1/uptimes/duration', methods=['GET'])
|
||||
@auth.login_required
|
||||
def get_uptimesDuration():
|
||||
up = uptime.uptime()
|
||||
return jsonify( {'Duration': up.duration} )
|
||||
|
||||
@app.route('/api/v1/uptimes/users', methods=['GET'])
|
||||
@auth.login_required
|
||||
def get_uptimesUsers():
|
||||
up = uptime.uptime()
|
||||
return jsonify( {'Users': up.users} )
|
||||
|
||||
@app.route('/api/v1/uptimes/load', methods=['GET'])
|
||||
@auth.login_required
|
||||
def get_uptimesLoad():
|
||||
up = uptime.uptime()
|
||||
return jsonify( {'Load': up.load} )
|
||||
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
app.run(port=63580,debug=True)
|
||||
1
v1/flask/.Python
Symbolic link
1
v1/flask/.Python
Symbolic link
@@ -0,0 +1 @@
|
||||
/Library/Frameworks/Python.framework/Versions/3.4/Python
|
||||
78
v1/flask/bin/activate
Normal file
78
v1/flask/bin/activate
Normal file
@@ -0,0 +1,78 @@
|
||||
# This file must be used with "source bin/activate" *from bash*
|
||||
# you cannot run it directly
|
||||
|
||||
deactivate () {
|
||||
unset -f pydoc >/dev/null 2>&1
|
||||
|
||||
# reset old environment variables
|
||||
# ! [ -z ${VAR+_} ] returns true if VAR is declared at all
|
||||
if ! [ -z "${_OLD_VIRTUAL_PATH+_}" ] ; then
|
||||
PATH="$_OLD_VIRTUAL_PATH"
|
||||
export PATH
|
||||
unset _OLD_VIRTUAL_PATH
|
||||
fi
|
||||
if ! [ -z "${_OLD_VIRTUAL_PYTHONHOME+_}" ] ; then
|
||||
PYTHONHOME="$_OLD_VIRTUAL_PYTHONHOME"
|
||||
export PYTHONHOME
|
||||
unset _OLD_VIRTUAL_PYTHONHOME
|
||||
fi
|
||||
|
||||
# This should detect bash and zsh, which have a hash command that must
|
||||
# be called to get it to forget past commands. Without forgetting
|
||||
# past commands the $PATH changes we made may not be respected
|
||||
if [ -n "${BASH-}" ] || [ -n "${ZSH_VERSION-}" ] ; then
|
||||
hash -r 2>/dev/null
|
||||
fi
|
||||
|
||||
if ! [ -z "${_OLD_VIRTUAL_PS1+_}" ] ; then
|
||||
PS1="$_OLD_VIRTUAL_PS1"
|
||||
export PS1
|
||||
unset _OLD_VIRTUAL_PS1
|
||||
fi
|
||||
|
||||
unset VIRTUAL_ENV
|
||||
if [ ! "${1-}" = "nondestructive" ] ; then
|
||||
# Self destruct!
|
||||
unset -f deactivate
|
||||
fi
|
||||
}
|
||||
|
||||
# unset irrelevant variables
|
||||
deactivate nondestructive
|
||||
|
||||
VIRTUAL_ENV="/Users/KevinMidboe/Dropbox/python/statusHandler/v1/flask"
|
||||
export VIRTUAL_ENV
|
||||
|
||||
_OLD_VIRTUAL_PATH="$PATH"
|
||||
PATH="$VIRTUAL_ENV/bin:$PATH"
|
||||
export PATH
|
||||
|
||||
# unset PYTHONHOME if set
|
||||
if ! [ -z "${PYTHONHOME+_}" ] ; then
|
||||
_OLD_VIRTUAL_PYTHONHOME="$PYTHONHOME"
|
||||
unset PYTHONHOME
|
||||
fi
|
||||
|
||||
if [ -z "${VIRTUAL_ENV_DISABLE_PROMPT-}" ] ; then
|
||||
_OLD_VIRTUAL_PS1="$PS1"
|
||||
if [ "x" != x ] ; then
|
||||
PS1="$PS1"
|
||||
else
|
||||
PS1="(`basename \"$VIRTUAL_ENV\"`) $PS1"
|
||||
fi
|
||||
export PS1
|
||||
fi
|
||||
|
||||
# Make sure to unalias pydoc if it's already there
|
||||
alias pydoc 2>/dev/null >/dev/null && unalias pydoc
|
||||
|
||||
pydoc () {
|
||||
python -m pydoc "$@"
|
||||
}
|
||||
|
||||
# This should detect bash and zsh, which have a hash command that must
|
||||
# be called to get it to forget past commands. Without forgetting
|
||||
# past commands the $PATH changes we made may not be respected
|
||||
if [ -n "${BASH-}" ] || [ -n "${ZSH_VERSION-}" ] ; then
|
||||
hash -r 2>/dev/null
|
||||
fi
|
||||
36
v1/flask/bin/activate.csh
Normal file
36
v1/flask/bin/activate.csh
Normal file
@@ -0,0 +1,36 @@
|
||||
# This file must be used with "source bin/activate.csh" *from csh*.
|
||||
# You cannot run it directly.
|
||||
# Created by Davide Di Blasi <davidedb@gmail.com>.
|
||||
|
||||
alias deactivate 'test $?_OLD_VIRTUAL_PATH != 0 && setenv PATH "$_OLD_VIRTUAL_PATH" && unset _OLD_VIRTUAL_PATH; rehash; test $?_OLD_VIRTUAL_PROMPT != 0 && set prompt="$_OLD_VIRTUAL_PROMPT" && unset _OLD_VIRTUAL_PROMPT; unsetenv VIRTUAL_ENV; test "\!:*" != "nondestructive" && unalias deactivate && unalias pydoc'
|
||||
|
||||
# Unset irrelevant variables.
|
||||
deactivate nondestructive
|
||||
|
||||
setenv VIRTUAL_ENV "/Users/KevinMidboe/Dropbox/python/statusHandler/v1/flask"
|
||||
|
||||
set _OLD_VIRTUAL_PATH="$PATH"
|
||||
setenv PATH "$VIRTUAL_ENV/bin:$PATH"
|
||||
|
||||
|
||||
|
||||
if ("" != "") then
|
||||
set env_name = ""
|
||||
else
|
||||
set env_name = `basename "$VIRTUAL_ENV"`
|
||||
endif
|
||||
|
||||
# Could be in a non-interactive environment,
|
||||
# in which case, $prompt is undefined and we wouldn't
|
||||
# care about the prompt anyway.
|
||||
if ( $?prompt ) then
|
||||
set _OLD_VIRTUAL_PROMPT="$prompt"
|
||||
set prompt = "[$env_name] $prompt"
|
||||
endif
|
||||
|
||||
unset env_name
|
||||
|
||||
alias pydoc python -m pydoc
|
||||
|
||||
rehash
|
||||
|
||||
76
v1/flask/bin/activate.fish
Normal file
76
v1/flask/bin/activate.fish
Normal file
@@ -0,0 +1,76 @@
|
||||
# This file must be used using `. bin/activate.fish` *within a running fish ( http://fishshell.com ) session*.
|
||||
# Do not run it directly.
|
||||
|
||||
function deactivate -d 'Exit virtualenv mode and return to the normal environment.'
|
||||
# reset old environment variables
|
||||
if test -n "$_OLD_VIRTUAL_PATH"
|
||||
set -gx PATH $_OLD_VIRTUAL_PATH
|
||||
set -e _OLD_VIRTUAL_PATH
|
||||
end
|
||||
|
||||
if test -n "$_OLD_VIRTUAL_PYTHONHOME"
|
||||
set -gx PYTHONHOME $_OLD_VIRTUAL_PYTHONHOME
|
||||
set -e _OLD_VIRTUAL_PYTHONHOME
|
||||
end
|
||||
|
||||
if test -n "$_OLD_FISH_PROMPT_OVERRIDE"
|
||||
# Set an empty local `$fish_function_path` to allow the removal of `fish_prompt` using `functions -e`.
|
||||
set -l fish_function_path
|
||||
|
||||
# Erase virtualenv's `fish_prompt` and restore the original.
|
||||
functions -e fish_prompt
|
||||
functions -c _old_fish_prompt fish_prompt
|
||||
functions -e _old_fish_prompt
|
||||
set -e _OLD_FISH_PROMPT_OVERRIDE
|
||||
end
|
||||
|
||||
set -e VIRTUAL_ENV
|
||||
|
||||
if test "$argv[1]" != 'nondestructive'
|
||||
# Self-destruct!
|
||||
functions -e pydoc
|
||||
functions -e deactivate
|
||||
end
|
||||
end
|
||||
|
||||
# Unset irrelevant variables.
|
||||
deactivate nondestructive
|
||||
|
||||
set -gx VIRTUAL_ENV "/Users/KevinMidboe/Dropbox/python/statusHandler/v1/flask"
|
||||
|
||||
set -gx _OLD_VIRTUAL_PATH $PATH
|
||||
set -gx PATH "$VIRTUAL_ENV/bin" $PATH
|
||||
|
||||
# Unset `$PYTHONHOME` if set.
|
||||
if set -q PYTHONHOME
|
||||
set -gx _OLD_VIRTUAL_PYTHONHOME $PYTHONHOME
|
||||
set -e PYTHONHOME
|
||||
end
|
||||
|
||||
function pydoc
|
||||
python -m pydoc $argv
|
||||
end
|
||||
|
||||
if test -z "$VIRTUAL_ENV_DISABLE_PROMPT"
|
||||
# Copy the current `fish_prompt` function as `_old_fish_prompt`.
|
||||
functions -c fish_prompt _old_fish_prompt
|
||||
|
||||
function fish_prompt
|
||||
# Save the current $status, for fish_prompts that display it.
|
||||
set -l old_status $status
|
||||
|
||||
# Prompt override provided?
|
||||
# If not, just prepend the environment name.
|
||||
if test -n ""
|
||||
printf '%s%s' "" (set_color normal)
|
||||
else
|
||||
printf '%s(%s) ' (set_color normal) (basename "$VIRTUAL_ENV")
|
||||
end
|
||||
|
||||
# Restore the original $status
|
||||
echo "exit $old_status" | source
|
||||
_old_fish_prompt
|
||||
end
|
||||
|
||||
set -gx _OLD_FISH_PROMPT_OVERRIDE "$VIRTUAL_ENV"
|
||||
end
|
||||
34
v1/flask/bin/activate_this.py
Normal file
34
v1/flask/bin/activate_this.py
Normal file
@@ -0,0 +1,34 @@
|
||||
"""By using execfile(this_file, dict(__file__=this_file)) you will
|
||||
activate this virtualenv environment.
|
||||
|
||||
This can be used when you must use an existing Python interpreter, not
|
||||
the virtualenv bin/python
|
||||
"""
|
||||
|
||||
try:
|
||||
__file__
|
||||
except NameError:
|
||||
raise AssertionError(
|
||||
"You must run this like execfile('path/to/activate_this.py', dict(__file__='path/to/activate_this.py'))")
|
||||
import sys
|
||||
import os
|
||||
|
||||
old_os_path = os.environ.get('PATH', '')
|
||||
os.environ['PATH'] = os.path.dirname(os.path.abspath(__file__)) + os.pathsep + old_os_path
|
||||
base = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
|
||||
if sys.platform == 'win32':
|
||||
site_packages = os.path.join(base, 'Lib', 'site-packages')
|
||||
else:
|
||||
site_packages = os.path.join(base, 'lib', 'python%s' % sys.version[:3], 'site-packages')
|
||||
prev_sys_path = list(sys.path)
|
||||
import site
|
||||
site.addsitedir(site_packages)
|
||||
sys.real_prefix = sys.prefix
|
||||
sys.prefix = base
|
||||
# Move the added items to the front of the path:
|
||||
new_sys_path = []
|
||||
for item in list(sys.path):
|
||||
if item not in prev_sys_path:
|
||||
new_sys_path.append(item)
|
||||
sys.path.remove(item)
|
||||
sys.path[:0] = new_sys_path
|
||||
11
v1/flask/bin/easy_install
Executable file
11
v1/flask/bin/easy_install
Executable file
@@ -0,0 +1,11 @@
|
||||
#!/Users/KevinMidboe/Dropbox/python/statusHandler/v1/flask/bin/python3.4
|
||||
|
||||
# -*- coding: utf-8 -*-
|
||||
import re
|
||||
import sys
|
||||
|
||||
from setuptools.command.easy_install import main
|
||||
|
||||
if __name__ == '__main__':
|
||||
sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0])
|
||||
sys.exit(main())
|
||||
11
v1/flask/bin/easy_install-3.4
Executable file
11
v1/flask/bin/easy_install-3.4
Executable file
@@ -0,0 +1,11 @@
|
||||
#!/Users/KevinMidboe/Dropbox/python/statusHandler/v1/flask/bin/python3.4
|
||||
|
||||
# -*- coding: utf-8 -*-
|
||||
import re
|
||||
import sys
|
||||
|
||||
from setuptools.command.easy_install import main
|
||||
|
||||
if __name__ == '__main__':
|
||||
sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0])
|
||||
sys.exit(main())
|
||||
11
v1/flask/bin/pip
Executable file
11
v1/flask/bin/pip
Executable file
@@ -0,0 +1,11 @@
|
||||
#!/Users/KevinMidboe/Dropbox/python/statusHandler/v1/flask/bin/python3.4
|
||||
|
||||
# -*- coding: utf-8 -*-
|
||||
import re
|
||||
import sys
|
||||
|
||||
from pip import main
|
||||
|
||||
if __name__ == '__main__':
|
||||
sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0])
|
||||
sys.exit(main())
|
||||
11
v1/flask/bin/pip3
Executable file
11
v1/flask/bin/pip3
Executable file
@@ -0,0 +1,11 @@
|
||||
#!/Users/KevinMidboe/Dropbox/python/statusHandler/v1/flask/bin/python3.4
|
||||
|
||||
# -*- coding: utf-8 -*-
|
||||
import re
|
||||
import sys
|
||||
|
||||
from pip import main
|
||||
|
||||
if __name__ == '__main__':
|
||||
sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0])
|
||||
sys.exit(main())
|
||||
11
v1/flask/bin/pip3.4
Executable file
11
v1/flask/bin/pip3.4
Executable file
@@ -0,0 +1,11 @@
|
||||
#!/Users/KevinMidboe/Dropbox/python/statusHandler/v1/flask/bin/python3.4
|
||||
|
||||
# -*- coding: utf-8 -*-
|
||||
import re
|
||||
import sys
|
||||
|
||||
from pip import main
|
||||
|
||||
if __name__ == '__main__':
|
||||
sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0])
|
||||
sys.exit(main())
|
||||
1
v1/flask/bin/python
Symbolic link
1
v1/flask/bin/python
Symbolic link
@@ -0,0 +1 @@
|
||||
python3.4
|
||||
78
v1/flask/bin/python-config
Executable file
78
v1/flask/bin/python-config
Executable file
@@ -0,0 +1,78 @@
|
||||
#!/Users/KevinMidboe/Dropbox/python/statusHandler/v1/flask/bin/python
|
||||
|
||||
import sys
|
||||
import getopt
|
||||
import sysconfig
|
||||
|
||||
valid_opts = ['prefix', 'exec-prefix', 'includes', 'libs', 'cflags',
|
||||
'ldflags', 'help']
|
||||
|
||||
if sys.version_info >= (3, 2):
|
||||
valid_opts.insert(-1, 'extension-suffix')
|
||||
valid_opts.append('abiflags')
|
||||
if sys.version_info >= (3, 3):
|
||||
valid_opts.append('configdir')
|
||||
|
||||
|
||||
def exit_with_usage(code=1):
|
||||
sys.stderr.write("Usage: {0} [{1}]\n".format(
|
||||
sys.argv[0], '|'.join('--'+opt for opt in valid_opts)))
|
||||
sys.exit(code)
|
||||
|
||||
try:
|
||||
opts, args = getopt.getopt(sys.argv[1:], '', valid_opts)
|
||||
except getopt.error:
|
||||
exit_with_usage()
|
||||
|
||||
if not opts:
|
||||
exit_with_usage()
|
||||
|
||||
pyver = sysconfig.get_config_var('VERSION')
|
||||
getvar = sysconfig.get_config_var
|
||||
|
||||
opt_flags = [flag for (flag, val) in opts]
|
||||
|
||||
if '--help' in opt_flags:
|
||||
exit_with_usage(code=0)
|
||||
|
||||
for opt in opt_flags:
|
||||
if opt == '--prefix':
|
||||
print(sysconfig.get_config_var('prefix'))
|
||||
|
||||
elif opt == '--exec-prefix':
|
||||
print(sysconfig.get_config_var('exec_prefix'))
|
||||
|
||||
elif opt in ('--includes', '--cflags'):
|
||||
flags = ['-I' + sysconfig.get_path('include'),
|
||||
'-I' + sysconfig.get_path('platinclude')]
|
||||
if opt == '--cflags':
|
||||
flags.extend(getvar('CFLAGS').split())
|
||||
print(' '.join(flags))
|
||||
|
||||
elif opt in ('--libs', '--ldflags'):
|
||||
abiflags = getattr(sys, 'abiflags', '')
|
||||
libs = ['-lpython' + pyver + abiflags]
|
||||
libs += getvar('LIBS').split()
|
||||
libs += getvar('SYSLIBS').split()
|
||||
# add the prefix/lib/pythonX.Y/config dir, but only if there is no
|
||||
# shared library in prefix/lib/.
|
||||
if opt == '--ldflags':
|
||||
if not getvar('Py_ENABLE_SHARED'):
|
||||
libs.insert(0, '-L' + getvar('LIBPL'))
|
||||
if not getvar('PYTHONFRAMEWORK'):
|
||||
libs.extend(getvar('LINKFORSHARED').split())
|
||||
print(' '.join(libs))
|
||||
|
||||
elif opt == '--extension-suffix':
|
||||
ext_suffix = sysconfig.get_config_var('EXT_SUFFIX')
|
||||
if ext_suffix is None:
|
||||
ext_suffix = sysconfig.get_config_var('SO')
|
||||
print(ext_suffix)
|
||||
|
||||
elif opt == '--abiflags':
|
||||
if not getattr(sys, 'abiflags', None):
|
||||
exit_with_usage()
|
||||
print(sys.abiflags)
|
||||
|
||||
elif opt == '--configdir':
|
||||
print(sysconfig.get_config_var('LIBPL'))
|
||||
1
v1/flask/bin/python3
Symbolic link
1
v1/flask/bin/python3
Symbolic link
@@ -0,0 +1 @@
|
||||
python3.4
|
||||
BIN
v1/flask/bin/python3.4
Executable file
BIN
v1/flask/bin/python3.4
Executable file
Binary file not shown.
11
v1/flask/bin/wheel
Executable file
11
v1/flask/bin/wheel
Executable file
@@ -0,0 +1,11 @@
|
||||
#!/Users/KevinMidboe/Dropbox/python/statusHandler/v1/flask/bin/python3.4
|
||||
|
||||
# -*- coding: utf-8 -*-
|
||||
import re
|
||||
import sys
|
||||
|
||||
from wheel.tool import main
|
||||
|
||||
if __name__ == '__main__':
|
||||
sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0])
|
||||
sys.exit(main())
|
||||
1
v1/flask/include/python3.4m
Symbolic link
1
v1/flask/include/python3.4m
Symbolic link
@@ -0,0 +1 @@
|
||||
/Library/Frameworks/Python.framework/Versions/3.4/include/python3.4m
|
||||
1
v1/flask/lib/python3.4/__future__.py
Symbolic link
1
v1/flask/lib/python3.4/__future__.py
Symbolic link
@@ -0,0 +1 @@
|
||||
/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/__future__.py
|
||||
BIN
v1/flask/lib/python3.4/__pycache__/__future__.cpython-34.pyc
Normal file
BIN
v1/flask/lib/python3.4/__pycache__/__future__.cpython-34.pyc
Normal file
Binary file not shown.
BIN
v1/flask/lib/python3.4/__pycache__/_bootlocale.cpython-34.pyc
Normal file
BIN
v1/flask/lib/python3.4/__pycache__/_bootlocale.cpython-34.pyc
Normal file
Binary file not shown.
Binary file not shown.
BIN
v1/flask/lib/python3.4/__pycache__/_weakrefset.cpython-34.pyc
Normal file
BIN
v1/flask/lib/python3.4/__pycache__/_weakrefset.cpython-34.pyc
Normal file
Binary file not shown.
BIN
v1/flask/lib/python3.4/__pycache__/abc.cpython-34.pyc
Normal file
BIN
v1/flask/lib/python3.4/__pycache__/abc.cpython-34.pyc
Normal file
Binary file not shown.
BIN
v1/flask/lib/python3.4/__pycache__/base64.cpython-34.pyc
Normal file
BIN
v1/flask/lib/python3.4/__pycache__/base64.cpython-34.pyc
Normal file
Binary file not shown.
BIN
v1/flask/lib/python3.4/__pycache__/bisect.cpython-34.pyc
Normal file
BIN
v1/flask/lib/python3.4/__pycache__/bisect.cpython-34.pyc
Normal file
Binary file not shown.
BIN
v1/flask/lib/python3.4/__pycache__/codecs.cpython-34.pyc
Normal file
BIN
v1/flask/lib/python3.4/__pycache__/codecs.cpython-34.pyc
Normal file
Binary file not shown.
BIN
v1/flask/lib/python3.4/__pycache__/copy.cpython-34.pyc
Normal file
BIN
v1/flask/lib/python3.4/__pycache__/copy.cpython-34.pyc
Normal file
Binary file not shown.
BIN
v1/flask/lib/python3.4/__pycache__/copyreg.cpython-34.pyc
Normal file
BIN
v1/flask/lib/python3.4/__pycache__/copyreg.cpython-34.pyc
Normal file
Binary file not shown.
BIN
v1/flask/lib/python3.4/__pycache__/fnmatch.cpython-34.pyc
Normal file
BIN
v1/flask/lib/python3.4/__pycache__/fnmatch.cpython-34.pyc
Normal file
Binary file not shown.
BIN
v1/flask/lib/python3.4/__pycache__/functools.cpython-34.pyc
Normal file
BIN
v1/flask/lib/python3.4/__pycache__/functools.cpython-34.pyc
Normal file
Binary file not shown.
BIN
v1/flask/lib/python3.4/__pycache__/genericpath.cpython-34.pyc
Normal file
BIN
v1/flask/lib/python3.4/__pycache__/genericpath.cpython-34.pyc
Normal file
Binary file not shown.
BIN
v1/flask/lib/python3.4/__pycache__/hashlib.cpython-34.pyc
Normal file
BIN
v1/flask/lib/python3.4/__pycache__/hashlib.cpython-34.pyc
Normal file
Binary file not shown.
BIN
v1/flask/lib/python3.4/__pycache__/heapq.cpython-34.pyc
Normal file
BIN
v1/flask/lib/python3.4/__pycache__/heapq.cpython-34.pyc
Normal file
Binary file not shown.
BIN
v1/flask/lib/python3.4/__pycache__/hmac.cpython-34.pyc
Normal file
BIN
v1/flask/lib/python3.4/__pycache__/hmac.cpython-34.pyc
Normal file
Binary file not shown.
BIN
v1/flask/lib/python3.4/__pycache__/imp.cpython-34.pyc
Normal file
BIN
v1/flask/lib/python3.4/__pycache__/imp.cpython-34.pyc
Normal file
Binary file not shown.
BIN
v1/flask/lib/python3.4/__pycache__/io.cpython-34.pyc
Normal file
BIN
v1/flask/lib/python3.4/__pycache__/io.cpython-34.pyc
Normal file
Binary file not shown.
BIN
v1/flask/lib/python3.4/__pycache__/keyword.cpython-34.pyc
Normal file
BIN
v1/flask/lib/python3.4/__pycache__/keyword.cpython-34.pyc
Normal file
Binary file not shown.
BIN
v1/flask/lib/python3.4/__pycache__/linecache.cpython-34.pyc
Normal file
BIN
v1/flask/lib/python3.4/__pycache__/linecache.cpython-34.pyc
Normal file
Binary file not shown.
BIN
v1/flask/lib/python3.4/__pycache__/locale.cpython-34.pyc
Normal file
BIN
v1/flask/lib/python3.4/__pycache__/locale.cpython-34.pyc
Normal file
Binary file not shown.
BIN
v1/flask/lib/python3.4/__pycache__/operator.cpython-34.pyc
Normal file
BIN
v1/flask/lib/python3.4/__pycache__/operator.cpython-34.pyc
Normal file
Binary file not shown.
BIN
v1/flask/lib/python3.4/__pycache__/os.cpython-34.pyc
Normal file
BIN
v1/flask/lib/python3.4/__pycache__/os.cpython-34.pyc
Normal file
Binary file not shown.
BIN
v1/flask/lib/python3.4/__pycache__/posixpath.cpython-34.pyc
Normal file
BIN
v1/flask/lib/python3.4/__pycache__/posixpath.cpython-34.pyc
Normal file
Binary file not shown.
BIN
v1/flask/lib/python3.4/__pycache__/random.cpython-34.pyc
Normal file
BIN
v1/flask/lib/python3.4/__pycache__/random.cpython-34.pyc
Normal file
Binary file not shown.
BIN
v1/flask/lib/python3.4/__pycache__/re.cpython-34.pyc
Normal file
BIN
v1/flask/lib/python3.4/__pycache__/re.cpython-34.pyc
Normal file
Binary file not shown.
BIN
v1/flask/lib/python3.4/__pycache__/reprlib.cpython-34.pyc
Normal file
BIN
v1/flask/lib/python3.4/__pycache__/reprlib.cpython-34.pyc
Normal file
Binary file not shown.
BIN
v1/flask/lib/python3.4/__pycache__/shutil.cpython-34.pyc
Normal file
BIN
v1/flask/lib/python3.4/__pycache__/shutil.cpython-34.pyc
Normal file
Binary file not shown.
BIN
v1/flask/lib/python3.4/__pycache__/site.cpython-34.pyc
Normal file
BIN
v1/flask/lib/python3.4/__pycache__/site.cpython-34.pyc
Normal file
Binary file not shown.
BIN
v1/flask/lib/python3.4/__pycache__/sre_compile.cpython-34.pyc
Normal file
BIN
v1/flask/lib/python3.4/__pycache__/sre_compile.cpython-34.pyc
Normal file
Binary file not shown.
BIN
v1/flask/lib/python3.4/__pycache__/sre_constants.cpython-34.pyc
Normal file
BIN
v1/flask/lib/python3.4/__pycache__/sre_constants.cpython-34.pyc
Normal file
Binary file not shown.
BIN
v1/flask/lib/python3.4/__pycache__/sre_parse.cpython-34.pyc
Normal file
BIN
v1/flask/lib/python3.4/__pycache__/sre_parse.cpython-34.pyc
Normal file
Binary file not shown.
BIN
v1/flask/lib/python3.4/__pycache__/stat.cpython-34.pyc
Normal file
BIN
v1/flask/lib/python3.4/__pycache__/stat.cpython-34.pyc
Normal file
Binary file not shown.
BIN
v1/flask/lib/python3.4/__pycache__/struct.cpython-34.pyc
Normal file
BIN
v1/flask/lib/python3.4/__pycache__/struct.cpython-34.pyc
Normal file
Binary file not shown.
BIN
v1/flask/lib/python3.4/__pycache__/tarfile.cpython-34.pyc
Normal file
BIN
v1/flask/lib/python3.4/__pycache__/tarfile.cpython-34.pyc
Normal file
Binary file not shown.
BIN
v1/flask/lib/python3.4/__pycache__/tempfile.cpython-34.pyc
Normal file
BIN
v1/flask/lib/python3.4/__pycache__/tempfile.cpython-34.pyc
Normal file
Binary file not shown.
BIN
v1/flask/lib/python3.4/__pycache__/token.cpython-34.pyc
Normal file
BIN
v1/flask/lib/python3.4/__pycache__/token.cpython-34.pyc
Normal file
Binary file not shown.
BIN
v1/flask/lib/python3.4/__pycache__/tokenize.cpython-34.pyc
Normal file
BIN
v1/flask/lib/python3.4/__pycache__/tokenize.cpython-34.pyc
Normal file
Binary file not shown.
BIN
v1/flask/lib/python3.4/__pycache__/types.cpython-34.pyc
Normal file
BIN
v1/flask/lib/python3.4/__pycache__/types.cpython-34.pyc
Normal file
Binary file not shown.
BIN
v1/flask/lib/python3.4/__pycache__/warnings.cpython-34.pyc
Normal file
BIN
v1/flask/lib/python3.4/__pycache__/warnings.cpython-34.pyc
Normal file
Binary file not shown.
BIN
v1/flask/lib/python3.4/__pycache__/weakref.cpython-34.pyc
Normal file
BIN
v1/flask/lib/python3.4/__pycache__/weakref.cpython-34.pyc
Normal file
Binary file not shown.
1
v1/flask/lib/python3.4/_bootlocale.py
Symbolic link
1
v1/flask/lib/python3.4/_bootlocale.py
Symbolic link
@@ -0,0 +1 @@
|
||||
/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/_bootlocale.py
|
||||
1
v1/flask/lib/python3.4/_collections_abc.py
Symbolic link
1
v1/flask/lib/python3.4/_collections_abc.py
Symbolic link
@@ -0,0 +1 @@
|
||||
/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/_collections_abc.py
|
||||
1
v1/flask/lib/python3.4/_dummy_thread.py
Symbolic link
1
v1/flask/lib/python3.4/_dummy_thread.py
Symbolic link
@@ -0,0 +1 @@
|
||||
/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/_dummy_thread.py
|
||||
1
v1/flask/lib/python3.4/_weakrefset.py
Symbolic link
1
v1/flask/lib/python3.4/_weakrefset.py
Symbolic link
@@ -0,0 +1 @@
|
||||
/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/_weakrefset.py
|
||||
1
v1/flask/lib/python3.4/abc.py
Symbolic link
1
v1/flask/lib/python3.4/abc.py
Symbolic link
@@ -0,0 +1 @@
|
||||
/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/abc.py
|
||||
1
v1/flask/lib/python3.4/base64.py
Symbolic link
1
v1/flask/lib/python3.4/base64.py
Symbolic link
@@ -0,0 +1 @@
|
||||
/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/base64.py
|
||||
1
v1/flask/lib/python3.4/bisect.py
Symbolic link
1
v1/flask/lib/python3.4/bisect.py
Symbolic link
@@ -0,0 +1 @@
|
||||
/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/bisect.py
|
||||
1
v1/flask/lib/python3.4/codecs.py
Symbolic link
1
v1/flask/lib/python3.4/codecs.py
Symbolic link
@@ -0,0 +1 @@
|
||||
/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/codecs.py
|
||||
1
v1/flask/lib/python3.4/collections
Symbolic link
1
v1/flask/lib/python3.4/collections
Symbolic link
@@ -0,0 +1 @@
|
||||
/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/collections
|
||||
1
v1/flask/lib/python3.4/config-3.4m
Symbolic link
1
v1/flask/lib/python3.4/config-3.4m
Symbolic link
@@ -0,0 +1 @@
|
||||
/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/config-3.4m
|
||||
1
v1/flask/lib/python3.4/copy.py
Symbolic link
1
v1/flask/lib/python3.4/copy.py
Symbolic link
@@ -0,0 +1 @@
|
||||
/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/copy.py
|
||||
1
v1/flask/lib/python3.4/copyreg.py
Symbolic link
1
v1/flask/lib/python3.4/copyreg.py
Symbolic link
@@ -0,0 +1 @@
|
||||
/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/copyreg.py
|
||||
101
v1/flask/lib/python3.4/distutils/__init__.py
Normal file
101
v1/flask/lib/python3.4/distutils/__init__.py
Normal file
@@ -0,0 +1,101 @@
|
||||
import os
|
||||
import sys
|
||||
import warnings
|
||||
import imp
|
||||
import opcode # opcode is not a virtualenv module, so we can use it to find the stdlib
|
||||
# Important! To work on pypy, this must be a module that resides in the
|
||||
# lib-python/modified-x.y.z directory
|
||||
|
||||
dirname = os.path.dirname
|
||||
|
||||
distutils_path = os.path.join(os.path.dirname(opcode.__file__), 'distutils')
|
||||
if os.path.normpath(distutils_path) == os.path.dirname(os.path.normpath(__file__)):
|
||||
warnings.warn(
|
||||
"The virtualenv distutils package at %s appears to be in the same location as the system distutils?")
|
||||
else:
|
||||
__path__.insert(0, distutils_path)
|
||||
real_distutils = imp.load_module("_virtualenv_distutils", None, distutils_path, ('', '', imp.PKG_DIRECTORY))
|
||||
# Copy the relevant attributes
|
||||
try:
|
||||
__revision__ = real_distutils.__revision__
|
||||
except AttributeError:
|
||||
pass
|
||||
__version__ = real_distutils.__version__
|
||||
|
||||
from distutils import dist, sysconfig
|
||||
|
||||
try:
|
||||
basestring
|
||||
except NameError:
|
||||
basestring = str
|
||||
|
||||
## patch build_ext (distutils doesn't know how to get the libs directory
|
||||
## path on windows - it hardcodes the paths around the patched sys.prefix)
|
||||
|
||||
if sys.platform == 'win32':
|
||||
from distutils.command.build_ext import build_ext as old_build_ext
|
||||
class build_ext(old_build_ext):
|
||||
def finalize_options (self):
|
||||
if self.library_dirs is None:
|
||||
self.library_dirs = []
|
||||
elif isinstance(self.library_dirs, basestring):
|
||||
self.library_dirs = self.library_dirs.split(os.pathsep)
|
||||
|
||||
self.library_dirs.insert(0, os.path.join(sys.real_prefix, "Libs"))
|
||||
old_build_ext.finalize_options(self)
|
||||
|
||||
from distutils.command import build_ext as build_ext_module
|
||||
build_ext_module.build_ext = build_ext
|
||||
|
||||
## distutils.dist patches:
|
||||
|
||||
old_find_config_files = dist.Distribution.find_config_files
|
||||
def find_config_files(self):
|
||||
found = old_find_config_files(self)
|
||||
system_distutils = os.path.join(distutils_path, 'distutils.cfg')
|
||||
#if os.path.exists(system_distutils):
|
||||
# found.insert(0, system_distutils)
|
||||
# What to call the per-user config file
|
||||
if os.name == 'posix':
|
||||
user_filename = ".pydistutils.cfg"
|
||||
else:
|
||||
user_filename = "pydistutils.cfg"
|
||||
user_filename = os.path.join(sys.prefix, user_filename)
|
||||
if os.path.isfile(user_filename):
|
||||
for item in list(found):
|
||||
if item.endswith('pydistutils.cfg'):
|
||||
found.remove(item)
|
||||
found.append(user_filename)
|
||||
return found
|
||||
dist.Distribution.find_config_files = find_config_files
|
||||
|
||||
## distutils.sysconfig patches:
|
||||
|
||||
old_get_python_inc = sysconfig.get_python_inc
|
||||
def sysconfig_get_python_inc(plat_specific=0, prefix=None):
|
||||
if prefix is None:
|
||||
prefix = sys.real_prefix
|
||||
return old_get_python_inc(plat_specific, prefix)
|
||||
sysconfig_get_python_inc.__doc__ = old_get_python_inc.__doc__
|
||||
sysconfig.get_python_inc = sysconfig_get_python_inc
|
||||
|
||||
old_get_python_lib = sysconfig.get_python_lib
|
||||
def sysconfig_get_python_lib(plat_specific=0, standard_lib=0, prefix=None):
|
||||
if standard_lib and prefix is None:
|
||||
prefix = sys.real_prefix
|
||||
return old_get_python_lib(plat_specific, standard_lib, prefix)
|
||||
sysconfig_get_python_lib.__doc__ = old_get_python_lib.__doc__
|
||||
sysconfig.get_python_lib = sysconfig_get_python_lib
|
||||
|
||||
old_get_config_vars = sysconfig.get_config_vars
|
||||
def sysconfig_get_config_vars(*args):
|
||||
real_vars = old_get_config_vars(*args)
|
||||
if sys.platform == 'win32':
|
||||
lib_dir = os.path.join(sys.real_prefix, "libs")
|
||||
if isinstance(real_vars, dict) and 'LIBDIR' not in real_vars:
|
||||
real_vars['LIBDIR'] = lib_dir # asked for all
|
||||
elif isinstance(real_vars, list) and 'LIBDIR' in args:
|
||||
real_vars = real_vars + [lib_dir] # asked for list
|
||||
return real_vars
|
||||
sysconfig_get_config_vars.__doc__ = old_get_config_vars.__doc__
|
||||
sysconfig.get_config_vars = sysconfig_get_config_vars
|
||||
Binary file not shown.
6
v1/flask/lib/python3.4/distutils/distutils.cfg
Normal file
6
v1/flask/lib/python3.4/distutils/distutils.cfg
Normal file
@@ -0,0 +1,6 @@
|
||||
# This is a config file local to this virtualenv installation
|
||||
# You may include options that will be used by all distutils commands,
|
||||
# and by easy_install. For instance:
|
||||
#
|
||||
# [easy_install]
|
||||
# find_links = http://mylocalsite
|
||||
1
v1/flask/lib/python3.4/encodings
Symbolic link
1
v1/flask/lib/python3.4/encodings
Symbolic link
@@ -0,0 +1 @@
|
||||
/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/encodings
|
||||
1
v1/flask/lib/python3.4/fnmatch.py
Symbolic link
1
v1/flask/lib/python3.4/fnmatch.py
Symbolic link
@@ -0,0 +1 @@
|
||||
/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/fnmatch.py
|
||||
1
v1/flask/lib/python3.4/functools.py
Symbolic link
1
v1/flask/lib/python3.4/functools.py
Symbolic link
@@ -0,0 +1 @@
|
||||
/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/functools.py
|
||||
1
v1/flask/lib/python3.4/genericpath.py
Symbolic link
1
v1/flask/lib/python3.4/genericpath.py
Symbolic link
@@ -0,0 +1 @@
|
||||
/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/genericpath.py
|
||||
1
v1/flask/lib/python3.4/hashlib.py
Symbolic link
1
v1/flask/lib/python3.4/hashlib.py
Symbolic link
@@ -0,0 +1 @@
|
||||
/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/hashlib.py
|
||||
1
v1/flask/lib/python3.4/heapq.py
Symbolic link
1
v1/flask/lib/python3.4/heapq.py
Symbolic link
@@ -0,0 +1 @@
|
||||
/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/heapq.py
|
||||
1
v1/flask/lib/python3.4/hmac.py
Symbolic link
1
v1/flask/lib/python3.4/hmac.py
Symbolic link
@@ -0,0 +1 @@
|
||||
/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/hmac.py
|
||||
1
v1/flask/lib/python3.4/imp.py
Symbolic link
1
v1/flask/lib/python3.4/imp.py
Symbolic link
@@ -0,0 +1 @@
|
||||
/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/imp.py
|
||||
1
v1/flask/lib/python3.4/importlib
Symbolic link
1
v1/flask/lib/python3.4/importlib
Symbolic link
@@ -0,0 +1 @@
|
||||
/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/importlib
|
||||
1
v1/flask/lib/python3.4/io.py
Symbolic link
1
v1/flask/lib/python3.4/io.py
Symbolic link
@@ -0,0 +1 @@
|
||||
/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/io.py
|
||||
1
v1/flask/lib/python3.4/keyword.py
Symbolic link
1
v1/flask/lib/python3.4/keyword.py
Symbolic link
@@ -0,0 +1 @@
|
||||
/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/keyword.py
|
||||
1
v1/flask/lib/python3.4/lib-dynload
Symbolic link
1
v1/flask/lib/python3.4/lib-dynload
Symbolic link
@@ -0,0 +1 @@
|
||||
/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/lib-dynload
|
||||
1
v1/flask/lib/python3.4/linecache.py
Symbolic link
1
v1/flask/lib/python3.4/linecache.py
Symbolic link
@@ -0,0 +1 @@
|
||||
/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/linecache.py
|
||||
1
v1/flask/lib/python3.4/locale.py
Symbolic link
1
v1/flask/lib/python3.4/locale.py
Symbolic link
@@ -0,0 +1 @@
|
||||
/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/locale.py
|
||||
0
v1/flask/lib/python3.4/no-global-site-packages.txt
Normal file
0
v1/flask/lib/python3.4/no-global-site-packages.txt
Normal file
1
v1/flask/lib/python3.4/ntpath.py
Symbolic link
1
v1/flask/lib/python3.4/ntpath.py
Symbolic link
@@ -0,0 +1 @@
|
||||
/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/ntpath.py
|
||||
1
v1/flask/lib/python3.4/operator.py
Symbolic link
1
v1/flask/lib/python3.4/operator.py
Symbolic link
@@ -0,0 +1 @@
|
||||
/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/operator.py
|
||||
1
v1/flask/lib/python3.4/orig-prefix.txt
Normal file
1
v1/flask/lib/python3.4/orig-prefix.txt
Normal file
@@ -0,0 +1 @@
|
||||
/Library/Frameworks/Python.framework/Versions/3.4
|
||||
1
v1/flask/lib/python3.4/os.py
Symbolic link
1
v1/flask/lib/python3.4/os.py
Symbolic link
@@ -0,0 +1 @@
|
||||
/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/os.py
|
||||
1
v1/flask/lib/python3.4/plat-darwin
Symbolic link
1
v1/flask/lib/python3.4/plat-darwin
Symbolic link
@@ -0,0 +1 @@
|
||||
/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/plat-darwin
|
||||
1
v1/flask/lib/python3.4/posixpath.py
Symbolic link
1
v1/flask/lib/python3.4/posixpath.py
Symbolic link
@@ -0,0 +1 @@
|
||||
/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/posixpath.py
|
||||
1
v1/flask/lib/python3.4/random.py
Symbolic link
1
v1/flask/lib/python3.4/random.py
Symbolic link
@@ -0,0 +1 @@
|
||||
/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/random.py
|
||||
1
v1/flask/lib/python3.4/re.py
Symbolic link
1
v1/flask/lib/python3.4/re.py
Symbolic link
@@ -0,0 +1 @@
|
||||
/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/re.py
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user