From 81bb42f0582eac54f85790deef9492c7a9b49525 Mon Sep 17 00:00:00 2001 From: Michael Garcia <thecrazygm@gmail.com> Date: Fri, 20 Mar 2020 17:01:26 -0500 Subject: [PATCH] version bump, maintainer name change --- .travis.yml | 2 +- README.rst | 20 +- beem/account.py | 2 +- beem/cli.py | 2 +- beem/comment.py | 2 +- beem/nodelist.py | 260 +----------------- beem/rc.py | 2 +- beem/utils.py | 2 +- beem/version.py | 4 +- beemapi/version.py | 4 +- beembase/version.py | 4 +- beemgraphenebase/version.py | 4 +- benchmarks/asv.conf.json | 6 +- docs/contribute.rst | 4 +- docs/installation.rst | 2 +- docs/tutorials.rst | 2 +- .../account_curation_per_week_and_1k_sp.py | 2 +- examples/account_rep_over_time.py | 2 +- examples/account_sp_over_time.py | 2 +- examples/account_vp_over_time.py | 2 +- examples/benchmark_beem.py | 2 +- examples/blocks1.pkl | Bin 0 -> 30327 bytes examples/compare_with_hive_python_account.py | 8 +- examples/hf20_testnet.py | 2 +- examples/next_witness_block_coundown.py | 2 +- examples/using_steem_offline.py | 2 +- setup.py | 10 +- sonar-project.properties | 12 +- 28 files changed, 65 insertions(+), 303 deletions(-) create mode 100644 examples/blocks1.pkl diff --git a/.travis.yml b/.travis.yml index 56df67f4..a97caf96 100644 --- a/.travis.yml +++ b/.travis.yml @@ -75,4 +75,4 @@ after_success: addons: sonarcloud: - organization: holgern-github + organization: thecrazygmn-github diff --git a/README.rst b/README.rst index 4f98f3eb..264df1a5 100644 --- a/README.rst +++ b/README.rst @@ -24,27 +24,27 @@ The library name is derived from a beam machine, similar to the analogy between Current build status -------------------- -.. image:: https://travis-ci.org/holgern/beem.svg?branch=master - :target: https://travis-ci.org/holgern/beem +.. image:: https://travis-ci.org/thecrazygmn/beem.svg?branch=master + :target: https://travis-ci.org/thecrazygmn/beem .. image:: https://ci.appveyor.com/api/projects/status/ig8oqp8bt2fmr09a?svg=true - :target: https://ci.appveyor.com/project/holger80/beem + :target: https://ci.appveyor.com/project/thecrazygm/beem -.. image:: https://circleci.com/gh/holgern/beem.svg?style=svg - :target: https://circleci.com/gh/holgern/beem +.. image:: https://circleci.com/gh/thecrazygmn/beem.svg?style=svg + :target: https://circleci.com/gh/thecrazygmn/beem .. image:: https://readthedocs.org/projects/beem/badge/?version=latest :target: http://beem.readthedocs.org/en/latest/?badge=latest .. image:: https://api.codacy.com/project/badge/Grade/e5476faf97df4c658697b8e7a7efebd7 - :target: https://www.codacy.com/app/holgern/beem?utm_source=github.com&utm_medium=referral&utm_content=holgern/beem&utm_campaign=Badge_Grade + :target: https://www.codacy.com/app/thecrazygmn/beem?utm_source=github.com&utm_medium=referral&utm_content=thecrazygmn/beem&utm_campaign=Badge_Grade -.. image:: https://pyup.io/repos/github/holgern/beem/shield.svg - :target: https://pyup.io/repos/github/holgern/beem/ +.. image:: https://pyup.io/repos/github/thecrazygmn/beem/shield.svg + :target: https://pyup.io/repos/github/thecrazygmn/beem/ :alt: Updates .. image:: https://api.codeclimate.com/v1/badges/e7bdb5b4aa7ab160a780/test_coverage - :target: https://codeclimate.com/github/holgern/beem/test_coverage + :target: https://codeclimate.com/github/thecrazygmn/beem/test_coverage :alt: Test Coverage Support & Documentation @@ -120,7 +120,7 @@ Install or update beem by pip:: You can install beem from this repository if you want the latest but possibly non-compiling version:: - git clone https://github.com/holgern/beem.git + git clone https://github.com/thecrazygmn/beem.git cd beem python setup.py build diff --git a/beem/account.py b/beem/account.py index 3c107fbd..8faf1b52 100644 --- a/beem/account.py +++ b/beem/account.py @@ -2227,7 +2227,7 @@ class Account(BlockchainObject): 'location': 'Germany', 'profile_image': 'https://c1.staticflickr.com/5/4715/38733717165_7070227c89_n.jpg', 'cover_image': 'https://farm1.staticflickr.com/894/26382750057_69f5c8e568.jpg', - 'website': 'https://github.com/holgern/beem' + 'website': 'https://github.com/thecrazygmn/beem' } .. code-block:: python diff --git a/beem/cli.py b/beem/cli.py index f2167b66..8e428fb3 100644 --- a/beem/cli.py +++ b/beem/cli.py @@ -3160,7 +3160,7 @@ def customjson(jsonid, json_data, account, active): """Broadcasts a custom json First parameter is the cusom json id, the second field is a json file or a json key value combination - e.g. beempy customjson -a holger80 dw-heist username holger80 amount 100 + e.g. beempy customjson -a thecrazygm dw-heist username thecrazygm amount 100 """ if jsonid is None: print("First argument must be the custom_json id") diff --git a/beem/comment.py b/beem/comment.py index 2c518723..3dfbbd47 100644 --- a/beem/comment.py +++ b/beem/comment.py @@ -508,7 +508,7 @@ class Comment(BlockchainObject): 'st3llar': 0.000 HIVE, 'crokkon': 0.015 HIVE, 'feedyourminnows': 0.003 HIVE, 'isnochys': 0.003 HIVE, 'loshcat': 0.001 HIVE, 'greenorange': 0.000 HIVE, 'qustodian': 0.123 HIVE, 'jpphotography': 0.002 HIVE, 'thinkingmind': 0.001 HIVE, - 'oups': 0.006 HIVE, 'mattockfs': 0.001 HIVE, 'holger80': 0.003 HIVE, 'michaelizer': 0.004 HIVE, + 'oups': 0.006 HIVE, 'mattockfs': 0.001 HIVE, 'thecrazygm': 0.003 HIVE, 'michaelizer': 0.004 HIVE, 'flugschwein': 0.010 HIVE, 'ulisessabeque': 0.000 HIVE, 'hakancelik': 0.002 HIVE, 'sbi2': 0.008 HIVE, 'zcool': 0.000 HIVE, 'hivehq': 0.002 HIVE, 'rowdiya': 0.000 HIVE, 'qurator-tier-1-2': 0.012 HIVE } diff --git a/beem/nodelist.py b/beem/nodelist.py index 49681025..6ab8836c 100644 --- a/beem/nodelist.py +++ b/beem/nodelist.py @@ -27,263 +27,25 @@ class NodeList(list): def __init__(self): nodes = [ { - "url": "https://api.hiveit.com", - "version": "0.20.2", - "type": "appbase-limited", - "owner": "hiveit", - "score": 50 - }, - { - "url": "https://hived-appbase.hiveit.com", - "version": "0.20.2", - "type": "appbase", - "owner": "hiveit", - "score": -10 - }, - { - "url": "wss://hived-appbase.hiveit.com", - "version": "0.20.2", - "type": "appbase", - "owner": "hiveit", - "score": -10 - }, - { - "url": "wss://appbasetest.timcliff.com", - "version": "0.19.11", - "type": "appbase", - "owner": "timcliff", - "score": -10 - }, - { - "url": "https://appbasetest.timcliff.com", - "version": "0.20.2", - "type": "appbase", - "owner": "timcliff", - "score": 10 - }, - { - "url": "https://api.hive.house", - "version": "0.20.2", - "type": "appbase", - "owner": "gtg", - "score": 10 - }, - { - "url": "https://api.hiveitdev.com", - "version": "0.19.11", - "type": "appbase-dev", - "owner": "hiveit", - "score": 10 - }, - { - "url": "https://api.hiveitstage.com", - "version": "0.19.11", - "type": "appbase-dev", - "owner": "hiveit", - "score": 10 - }, - { - "url": "wss://rpc.hiveviz.com", - "version": "0.19.12", - "type": "appbase", - "owner": "ausbitbank", - "score": -10 - }, - { - "url": "https://rpc.hiveviz.com", - "version": "0.19.12", - "type": "appbase", - "owner": "ausbitbank", - "score": -10 - }, - { - "url": "wss://hived.privex.io", - "version": "0.20.2", - "type": "appbase", - "owner": "privex", - "score": -10 - }, - { - "url": "https://hived.privex.io", - "version": "0.20.2", - "type": "appbase", - "owner": "privex", - "score": 50 - }, - { - "url": "wss://rpc.buildteam.io", - "version": "0.20.2", - "type": "appbase", - "owner": "themarkymark", - "score": -10 - }, - { - "url": "https://rpc.buildteam.io", - "version": "0.20.2", - "type": "appbase", - "owner": "themarkymark", - "score": -20 - }, - { - "url": "wss://gtg.hive.house:8090", - "version": "0.19.12", - "type": "appbase", - "owner": "gtg", - "score": -10 - }, - { - "url": "https://gtg.hive.house:8090", - "version": "0.19.12", - "type": "appbase", - "owner": "gtg", - "score": -10 - }, - { - "url": "wss://hived.pevo.science", - "version": "0.19.2", - "type": "normal", - "owner": "pharesim", - "score": -10 - }, - { - "url": "https://hived.pevo.science", - "version": "0.19.6", - "type": "normal", - "owner": "pharesim", - "score": -10 - }, - { - "url": "wss://rpc.hiveliberator.com", - "version": "0.19.12", - "type": "appbase", - "owner": "netuoso", - "score": -10 - }, - { - "url": "https://rpc.hiveliberator.com", - "version": "0.19.12", - "type": "appbase", - "owner": "netuoso", - "score": -10 - }, - { - "url": "wss://seed.bitcoiner.me", - "version": "0.19.6", - "type": "normal", - "owner": "bitcoiner", - "score": -10 - }, - { - "url": "https://seed.bitcoiner.me", - "version": "0.19.6", - "type": "normal", - "owner": "bitcoiner", - "score": -10 - }, - { - "url": "wss://hived.hivegigs.org", - "version": "0.19.6", - "type": "normal", - "owner": "hivegigs", - "score": -10 - }, - { - "url": "https://hived.hivegigs.org", - "version": "0.19.6", - "type": "normal", - "owner": "hivegigs", - "score": -10 - }, - { - "url": "wss://hived.minnowsupportproject.org", - "version": "0.19.11", - "type": "appbase", - "owner": "followbtcnews", - "score": -10 - }, - { - "url": "https://hived.minnowsupportproject.org", - "version": "0.19.12", + "url": "https://api.openhive.network", + "version": "0.23.0", "type": "appbase", - "owner": "followbtcnews", - "score": 100 + "owner": "hiveio", + "score": 20 }, { - "url": "wss://anyx.io", - "version": "0.20.6", + "url": "https://api.hive.blog", + "version": "0.23.0", "type": "appbase", - "owner": "anyx", - "score": -10 + "owner": "hiveio", + "score": 40 }, { "url": "https://anyx.io", - "version": "0.20.6", - "type": "appbase", - "owner": "anyx", - "score": 80 - }, - { - "url": "http://anyx.io", - "version": "0.20.6", - "type": "appbase", - "owner": "anyx", - "score": 50 - }, - { - "url": "https://rpc.curiehive.com", - "version": "0.20.2", - "type": "appbase", - "owner": "curie", - "score": -10 - }, - { - "url": "wss://rpc.curiehive.com", - "version": "0.20.2", - "type": "appbase", - "owner": "curie", - "score": -10 - }, - { - "url": "https://rpc.usehive.com", - "version": "0.20.8", + "version": "0.23.0", "type": "appbase", - "owner": "themarkymark", - "score": 90 - }, - { - "url": "wss://testnet.hive.vc", - "version": "0.19.2", - "type": "testnet", - "owner": "almost-digital", - "score": 20 - }, - { - "url": "ws://testnet.hive.vc", - "version": "0.19.2", - "type": "testnet", - "owner": "almost-digital", - "score": 5 - }, - { - "url": "https://testnet.hive.vc", - "version": "0.19.2", - "type": "testnet", - "owner": "almost-digital", - "score": 10 - }, - { - "url": "http://testnet.hive.vc", - "version": "0.19.2", - "type": "testnet", - "owner": "almost-digital", - "score": 5 - }, - { - "url": "https://testnet.hiveitdev.com", - "version": "0.21.0", - "type": "testnet-dev", - "owner": "hiveit", - "score": 5 + "owner": "hiveio", + "score": 30 }] super(NodeList, self).__init__(nodes) diff --git a/beem/rc.py b/beem/rc.py index ef41c250..7bdedf3f 100644 --- a/beem/rc.py +++ b/beem/rc.py @@ -63,7 +63,7 @@ class RC(object): from beem.rc import RC comment_dict = { - "permlink": "test", "author": "holger80", + "permlink": "test", "author": "thecrazygm", "body": "test", "parent_permlink": "", "parent_author": "", "title": "test", "json_metadata": {"foo": "bar"} diff --git a/beem/utils.py b/beem/utils.py index f116af7e..1ca484aa 100644 --- a/beem/utils.py +++ b/beem/utils.py @@ -89,7 +89,7 @@ def parse_time(block_time): into datetime object. """ utc = pytz.timezone("UTC") - return utc.localize(datetime.strptime(block_time, timeFormat)) + return utc.localize(datetime.strptime(str(block_time), timeFormat)) def assets_from_string(text): diff --git a/beem/version.py b/beem/version.py index ca13ec23..fc5b6653 100644 --- a/beem/version.py +++ b/beem/version.py @@ -1,2 +1,2 @@ -"""THIS FILE IS GENERATED FROM beem SETUP.PY.""" -version = '0.22.0' +"""THIS FILE IS GENERATED FROM beem SETUP.PY.""" +version = '0.23.0' diff --git a/beemapi/version.py b/beemapi/version.py index ca13ec23..fc5b6653 100644 --- a/beemapi/version.py +++ b/beemapi/version.py @@ -1,2 +1,2 @@ -"""THIS FILE IS GENERATED FROM beem SETUP.PY.""" -version = '0.22.0' +"""THIS FILE IS GENERATED FROM beem SETUP.PY.""" +version = '0.23.0' diff --git a/beembase/version.py b/beembase/version.py index ca13ec23..fc5b6653 100644 --- a/beembase/version.py +++ b/beembase/version.py @@ -1,2 +1,2 @@ -"""THIS FILE IS GENERATED FROM beem SETUP.PY.""" -version = '0.22.0' +"""THIS FILE IS GENERATED FROM beem SETUP.PY.""" +version = '0.23.0' diff --git a/beemgraphenebase/version.py b/beemgraphenebase/version.py index ca13ec23..fc5b6653 100644 --- a/beemgraphenebase/version.py +++ b/beemgraphenebase/version.py @@ -1,2 +1,2 @@ -"""THIS FILE IS GENERATED FROM beem SETUP.PY.""" -version = '0.22.0' +"""THIS FILE IS GENERATED FROM beem SETUP.PY.""" +version = '0.23.0' diff --git a/benchmarks/asv.conf.json b/benchmarks/asv.conf.json index 07a9ffd6..41aadd59 100644 --- a/benchmarks/asv.conf.json +++ b/benchmarks/asv.conf.json @@ -7,11 +7,11 @@ "project": "beem", // The project's homepage - "project_url": "https://github.com/holgern/beem", + "project_url": "https://github.com/thecrazygmn/beem", // The URL or local path of the source code repository for the // project being benchmarked - //"repo": "https://github.com/holgern/beem.git", + //"repo": "https://github.com/thecrazygmn/beem.git", "repo": "..", // List of branches to benchmark. If not provided, defaults to "master" @@ -33,7 +33,7 @@ // the base URL to show a commit for the project. - "show_commit_url": "http://github.com/holgern/beem/commit/", + "show_commit_url": "http://github.com/thecrazygmn/beem/commit/", // The Pythons you'd like to test against. If not provided, defaults // to the current version of Python used to run `asv`. diff --git a/docs/contribute.rst b/docs/contribute.rst index a221ba81..cc6e6490 100644 --- a/docs/contribute.rst +++ b/docs/contribute.rst @@ -8,7 +8,7 @@ Repository The repository of beem is currently located at: - https://github.com/holgern/beem + https://github.com/thecrazygmn/beem Flow ---- @@ -26,7 +26,7 @@ How to Contribute 1. Fork or branch from the master. 2. Create commits following the commit style 3. Start a pull request to the master branch -4. Wait for a @holger80 or another member to review +4. Wait for a @thecrazygm or another member to review Issues ------ diff --git a/docs/installation.rst b/docs/installation.rst index 92ddf755..366691e5 100644 --- a/docs/installation.rst +++ b/docs/installation.rst @@ -62,7 +62,7 @@ Manual installation You can install beem from this repository if you want the latest but possibly non-compiling version:: - git clone https://github.com/holgern/beem.git + git clone https://github.com/thecrazygmn/beem.git cd beem python setup.py build diff --git a/docs/tutorials.rst b/docs/tutorials.rst index e42dde82..627be57a 100644 --- a/docs/tutorials.rst +++ b/docs/tutorials.rst @@ -251,7 +251,7 @@ Lets display all Posts from an account: from beem.account import Account from beem.comment import Comment from beem.exceptions import ContentDoesNotExistsException - account = Account("holger80") + account = Account("thecrazygm") c_list = {} for c in map(Comment, account.history(only_ops=["comment"])): if c.permlink in c_list: diff --git a/examples/account_curation_per_week_and_1k_sp.py b/examples/account_curation_per_week_and_1k_sp.py index 40edbdb9..04e6ec64 100644 --- a/examples/account_curation_per_week_and_1k_sp.py +++ b/examples/account_curation_per_week_and_1k_sp.py @@ -16,7 +16,7 @@ if __name__ == "__main__": if len(sys.argv) != 2: # print("ERROR: command line parameter mismatch!") # print("usage: %s [account]" % (sys.argv[0])) - account = "holger80" + account = "thecrazygm" else: account = sys.argv[1] acc_snapshot = AccountSnapshot(account) diff --git a/examples/account_rep_over_time.py b/examples/account_rep_over_time.py index e6840c61..519579a2 100644 --- a/examples/account_rep_over_time.py +++ b/examples/account_rep_over_time.py @@ -16,7 +16,7 @@ if __name__ == "__main__": if len(sys.argv) != 2: # print("ERROR: command line parameter mismatch!") # print("usage: %s [account]" % (sys.argv[0])) - account = "holger80" + account = "thecrazygm" else: account = sys.argv[1] acc_snapshot = AccountSnapshot(account) diff --git a/examples/account_sp_over_time.py b/examples/account_sp_over_time.py index bffc08ee..a66a00e9 100644 --- a/examples/account_sp_over_time.py +++ b/examples/account_sp_over_time.py @@ -16,7 +16,7 @@ if __name__ == "__main__": if len(sys.argv) != 2: # print("ERROR: command line parameter mismatch!") # print("usage: %s [account]" % (sys.argv[0])) - account = "holger80" + account = "thecrazygm" else: account = sys.argv[1] acc_snapshot = AccountSnapshot(account) diff --git a/examples/account_vp_over_time.py b/examples/account_vp_over_time.py index 64c75a99..d5c9af69 100644 --- a/examples/account_vp_over_time.py +++ b/examples/account_vp_over_time.py @@ -16,7 +16,7 @@ if __name__ == "__main__": if len(sys.argv) != 2: # print("ERROR: command line parameter mismatch!") # print("usage: %s [account]" % (sys.argv[0])) - account = "holger80" + account = "thecrazygm" else: account = sys.argv[1] acc_snapshot = AccountSnapshot(account) diff --git a/examples/benchmark_beem.py b/examples/benchmark_beem.py index 4627f460..3f5ebae9 100644 --- a/examples/benchmark_beem.py +++ b/examples/benchmark_beem.py @@ -49,7 +49,7 @@ if __name__ == "__main__": start_time = time.time() last_node = blockchain.hive.rpc.url print("Current node:", last_node) - for entry in blockchain.blocks(start=last_block_id, max_batch_size=max_batch_size, threading=threading, thread_num=thread_num, thread_limit=1200): + for entry in blockchain.blocks(start=last_block_id, max_batch_size=max_batch_size, threading=threading, thread_num=thread_num,): block_no = entry.identifier if "block" in entry: trxs = entry["block"]["transactions"] diff --git a/examples/blocks1.pkl b/examples/blocks1.pkl new file mode 100644 index 0000000000000000000000000000000000000000..6388d8fe2cb5125d0cd76edda53793cffa1f8367 GIT binary patch literal 30327 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 aiG~jj46V!QFIq5Oi{k>qhm1|eWC8$BEJS_) literal 0 HcmV?d00001 diff --git a/examples/compare_with_hive_python_account.py b/examples/compare_with_hive_python_account.py index f11bc1ac..98baade5 100644 --- a/examples/compare_with_hive_python_account.py +++ b/examples/compare_with_hive_python_account.py @@ -17,9 +17,9 @@ logging.basicConfig(level=logging.INFO) if __name__ == "__main__": stm = Hive("https://api.hiveit.com") - beem_acc = Account("holger80", hive_instance=stm) + beem_acc = Account("thecrazygm", hive_instance=stm) stm2 = hiveHive(nodes=["https://api.hiveit.com"]) - hive_acc = hiveAccount("holger80", hived_instance=stm2) + hive_acc = hiveAccount("thecrazygm", hived_instance=stm2) # profile print("beem_acc.profile {}".format(beem_acc.profile)) @@ -49,8 +49,8 @@ if __name__ == "__main__": print("beem_acc.get_following() {}".format(beem_acc.get_following())) print("hive_acc.get_following() {}".format(hive_acc.get_following())) # has_voted() - print("beem_acc.has_voted() {}".format(beem_acc.has_voted("@holger80/api-methods-list-for-appbase"))) - print("hive_acc.has_voted() {}".format(hive_acc.has_voted(hivePost("@holger80/api-methods-list-for-appbase")))) + print("beem_acc.has_voted() {}".format(beem_acc.has_voted("@thecrazygm/api-methods-list-for-appbase"))) + print("hive_acc.has_voted() {}".format(hive_acc.has_voted(hivePost("@thecrazygm/api-methods-list-for-appbase")))) # curation_stats() print("beem_acc.curation_stats() {}".format(beem_acc.curation_stats())) print("hive_acc.curation_stats() {}".format(hive_acc.curation_stats())) diff --git a/examples/hf20_testnet.py b/examples/hf20_testnet.py index 15c6ca02..55fa8a4b 100644 --- a/examples/hf20_testnet.py +++ b/examples/hf20_testnet.py @@ -30,4 +30,4 @@ if __name__ == "__main__": account = Account("beembot", hive_instance=stm) print(account.get_voting_power()) - account.transfer("holger80", 0.001, "HBD", "test") + account.transfer("thecrazygm", 0.001, "HBD", "test") diff --git a/examples/next_witness_block_coundown.py b/examples/next_witness_block_coundown.py index 4d92af72..b917b0f5 100644 --- a/examples/next_witness_block_coundown.py +++ b/examples/next_witness_block_coundown.py @@ -24,7 +24,7 @@ def convert_block_diff_to_time_string(block_diff_est): if __name__ == "__main__": if len(sys.argv) != 2: - witness = "holger80" + witness = "thecrazygm" else: witness = sys.argv[1] stm = Hive() diff --git a/examples/using_steem_offline.py b/examples/using_steem_offline.py index 5ecfc8fb..e206a2ee 100644 --- a/examples/using_steem_offline.py +++ b/examples/using_steem_offline.py @@ -35,7 +35,7 @@ if __name__ == "__main__": stm = Hive(offline=True) op = operations.Transfer({'from': 'beembot', - 'to': 'holger80', + 'to': 'thecrazygm', 'amount': "0.001 HBD", 'memo': ""}) tb = TransactionBuilder(hive_instance=stm) diff --git a/setup.py b/setup.py index 94f9f122..cc38dcc4 100755 --- a/setup.py +++ b/setup.py @@ -16,7 +16,7 @@ except LookupError: ascii = codecs.lookup('ascii') codecs.register(lambda name, enc=ascii: {True: enc}.get(name == 'mbcs')) -VERSION = '0.22.0' +VERSION = '0.23.0' tests_require = ['mock >= 2.0.0', 'pytest', 'pytest-mock', 'parameterized'] @@ -68,12 +68,12 @@ if __name__ == '__main__': version=VERSION, description='Unofficial Python library for HIVE', long_description=get_long_description(), - download_url='https://github.com/holgern/beem/tarball/' + VERSION, + download_url='https://github.com/thecrazygmn/beem/tarball/' + VERSION, author='Holger Nahrstaedt', - author_email='holger@nahrstaedt.de', + author_email='thecrazygm@nahrstaedt.de', maintainer='Holger Nahrstaedt', - maintainer_email='holger@nahrstaedt.de', - url='http://www.github.com/holgern/beem', + maintainer_email='thecrazygm@nahrstaedt.de', + url='http://www.github.com/thecrazygmn/beem', keywords=['hive', 'library', 'api', 'rpc'], packages=[ "beem", diff --git a/sonar-project.properties b/sonar-project.properties index f25b5cbd..e2bf7b63 100644 --- a/sonar-project.properties +++ b/sonar-project.properties @@ -1,8 +1,8 @@ # Metadata -sonar.projectKey=holgern_beem +sonar.projectKey=thecrazygmn_beem sonar.projectName=Python Library for Hive sonar.projectVersion=1.0 -sonar.organization=holgern-github +sonar.organization=thecrazygmn-github # Upload to sonar cloud sonar.host.url=https://sonarcloud.io @@ -21,10 +21,10 @@ sonar.tests=./tests/ #sonar.python.pylint_config=.pylintrc #sonar.python.pylint.reportPath=pylint-report.txt -sonar.links.homepage=https://github.com/holgern/beem -sonar.links.ci=https://travis-ci.org/holgern/beem/ -sonar.links.issue=https://github.com/holgern/beem/issues -sonar.links.scm=https://github.com/holgern/beem/tree/master +sonar.links.homepage=https://github.com/thecrazygmn/beem +sonar.links.ci=https://travis-ci.org/thecrazygmn/beem/ +sonar.links.issue=https://github.com/thecrazygmn/beem/issues +sonar.links.scm=https://github.com/thecrazygmn/beem/tree/master sonar.exclusions=htmlcov/*,docs/*,build/*,dist/*,*.py,tests/* -- GitLab