Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
openSUSE:Backports:SLE-15-SP6:Update
python-jedihttp
build.patch
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File build.patch of Package python-jedihttp
Index: python-jedihttp-0+git.1497381496.75b8b74/setup.py =================================================================== --- /dev/null +++ python-jedihttp-0+git.1497381496.75b8b74/setup.py @@ -0,0 +1,17 @@ +import os +from setuptools import setup + +setup( + name = "jedihttp", + version = "0.0.0", + author = "Andrea Cedraro", + author_email = "a.cedraro@gmail.com", + description = ("HTTP/JSON wrapper around jedi"), + license = "Apache-2.0", + url = "https://github.com/vheon/JediHTTP", + packages = ['jedihttp'], + scripts = ['jedihttp-server'], + install_requires = ['waitress', + 'bottle', + 'argparse'], +) Index: python-jedihttp-0+git.1497381496.75b8b74/jedihttp.py =================================================================== --- python-jedihttp-0+git.1497381496.75b8b74.orig/jedihttp.py +++ /dev/null @@ -1,83 +0,0 @@ -# Copyright 2015 Cedraro Andrea <a.cedraro@gmail.com> -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -from jedihttp import utils -utils.AddVendorFolderToSysPath() - -import logging -import json -import os -import sys -from base64 import b64decode -from argparse import ArgumentParser -from waitress import serve -from jedihttp import handlers -from jedihttp.hmac_plugin import HmacPlugin - - -def ParseArgs(): - parser = ArgumentParser() - parser.add_argument( '--host', type = str, default = '127.0.0.1', - help = 'server host' ) - parser.add_argument( '--port', type = int, default = 0, - help = 'server port' ) - parser.add_argument( '--log', type = str, default = 'info', - choices = [ 'debug', 'info', 'warning', - 'error', 'critical' ], - help = 'log level' ) - parser.add_argument( '--hmac-file-secret', type = str, - help = 'file containing hmac secret' ) - return parser.parse_args() - - -def SetUpLogging( log_level ): - numeric_level = getattr( logging, log_level.upper(), None ) - if not isinstance( numeric_level, int ): - raise ValueError( 'Invalid log level: {0}'.format( log_level ) ) - - # Has to be called before any call to logging.getLogger(). - logging.basicConfig( format = '%(asctime)s - %(levelname)s - %(message)s', - level = numeric_level ) - - -def GetSecretFromTempFile( tfile ): - key = 'hmac_secret' - with open( tfile ) as hmac_file: - try: - data = json.load( hmac_file ) - if key not in data: - sys.exit( "A json file with a key named 'secret' was expected for " - "the secret exchange, but wasn't found" ) - hmac_secret = data[ key ] - except ValueError: - sys.exit( "A JSON was expected for the secret exchange" ) - os.remove( tfile ) - return hmac_secret - - -def Main(): - args = ParseArgs() - - SetUpLogging( args.log ) - - if args.hmac_file_secret: - hmac_secret = GetSecretFromTempFile( args.hmac_file_secret ) - handlers.app.config[ 'jedihttp.hmac_secret' ] = b64decode( hmac_secret ) - handlers.app.install( HmacPlugin() ) - - serve( handlers.app, - host = args.host, - port = args.port ) - -if __name__ == "__main__": - Main() Index: python-jedihttp-0+git.1497381496.75b8b74/jedihttp/utils.py =================================================================== --- python-jedihttp-0+git.1497381496.75b8b74.orig/jedihttp/utils.py +++ python-jedihttp-0+git.1497381496.75b8b74/jedihttp/utils.py @@ -18,6 +18,7 @@ import sys def AddVendorFolderToSysPath(): vendor_folder = os.path.join( os.path.dirname( __file__ ), '..', 'vendor' ) - for folder in os.listdir( vendor_folder ): - sys.path.insert( 0, os.path.realpath( os.path.join( vendor_folder, - folder ) ) ) + if os.path.exists(vendor_folder): + for folder in os.listdir( vendor_folder ): + sys.path.insert( 0, os.path.realpath( os.path.join( vendor_folder, + folder ) ) ) Index: python-jedihttp-0+git.1497381496.75b8b74/jedihttp-server =================================================================== --- /dev/null +++ python-jedihttp-0+git.1497381496.75b8b74/jedihttp-server @@ -0,0 +1,84 @@ +#!/usr/bin/env python +# Copyright 2015 Cedraro Andrea <a.cedraro@gmail.com> +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from jedihttp import utils +utils.AddVendorFolderToSysPath() + +import logging +import json +import os +import sys +from base64 import b64decode +from argparse import ArgumentParser +from waitress import serve +from jedihttp import handlers +from jedihttp.hmac_plugin import HmacPlugin + + +def ParseArgs(): + parser = ArgumentParser() + parser.add_argument( '--host', type = str, default = '127.0.0.1', + help = 'server host' ) + parser.add_argument( '--port', type = int, default = 0, + help = 'server port' ) + parser.add_argument( '--log', type = str, default = 'info', + choices = [ 'debug', 'info', 'warning', + 'error', 'critical' ], + help = 'log level' ) + parser.add_argument( '--hmac-file-secret', type = str, + help = 'file containing hmac secret' ) + return parser.parse_args() + + +def SetUpLogging( log_level ): + numeric_level = getattr( logging, log_level.upper(), None ) + if not isinstance( numeric_level, int ): + raise ValueError( 'Invalid log level: {0}'.format( log_level ) ) + + # Has to be called before any call to logging.getLogger(). + logging.basicConfig( format = '%(asctime)s - %(levelname)s - %(message)s', + level = numeric_level ) + + +def GetSecretFromTempFile( tfile ): + key = 'hmac_secret' + with open( tfile ) as hmac_file: + try: + data = json.load( hmac_file ) + if key not in data: + sys.exit( "A json file with a key named 'secret' was expected for " + "the secret exchange, but wasn't found" ) + hmac_secret = data[ key ] + except ValueError: + sys.exit( "A JSON was expected for the secret exchange" ) + os.remove( tfile ) + return hmac_secret + + +def Main(): + args = ParseArgs() + + SetUpLogging( args.log ) + + if args.hmac_file_secret: + hmac_secret = GetSecretFromTempFile( args.hmac_file_secret ) + handlers.app.config[ 'jedihttp.hmac_secret' ] = b64decode( hmac_secret ) + handlers.app.install( HmacPlugin() ) + + serve( handlers.app, + host = args.host, + port = args.port ) + +if __name__ == "__main__": + Main() Index: python-jedihttp-0+git.1497381496.75b8b74/jedihttp/tests/end_to_end_test.py =================================================================== --- python-jedihttp-0+git.1497381496.75b8b74.orig/jedihttp/tests/end_to_end_test.py +++ python-jedihttp-0+git.1497381496.75b8b74/jedihttp/tests/end_to_end_test.py @@ -40,12 +40,12 @@ class HmacAuth( requests.auth.AuthBase ) PORT = 50000 SECRET = 'secret' PATH_TO_JEDIHTTP = path.abspath( path.join( path.dirname( __file__ ), - '..', '..', 'jedihttp.py' ) ) + '..', '..', 'jedihttp-server' ) ) def wait_for_jedihttp_to_start( jedihttp ): line = jedihttp.stdout.readline().decode( 'utf8' ) - good_start = line.startswith( 'serving on' ) + good_start = line.lower().startswith( 'serving on' ) reason = jedihttp.stdout.read().decode( 'utf8' ) if not good_start else '' return good_start, reason Index: python-jedihttp-0+git.1497381496.75b8b74/jedihttp/tests/handlers_test.py =================================================================== --- python-jedihttp-0+git.1497381496.75b8b74.orig/jedihttp/tests/handlers_test.py +++ python-jedihttp-0+git.1497381496.75b8b74/jedihttp/tests/handlers_test.py @@ -180,7 +180,7 @@ def test_good_gotoassignment_do_not_foll 'in_builtin_module': False, 'line': 1, 'column': 21, - 'docstring': 'imported_function()\n\n', + 'docstring': '', 'description': 'def imported_function', 'full_name': 'imported.imported_function', 'is_keyword': False @@ -315,7 +315,7 @@ def test_names(): 'in_builtin_module': False, 'line': 1, 'column': 7, - 'docstring': contains_string( 'OS routines' ), + 'docstring': '', 'description': 'module os', 'full_name': 'os', 'is_keyword': False
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor