Saravanan666/pypi-org huggingface dataset:
Package: garbelflug
Easy enums for Python.>>>RGB=StringEnum(['Red','Green','Blue'])>>>RGB.Red'Red'Contents1Installation2Features3Use4Contributing4.1Installing for development4.2Running the tests4.3Adding documentation5Credits1InstallationInstallezenumwith:pipinstallezenum2FeaturesPure Python.Compatible with Python 3.5+.Easy creation of usefull enum objects.String enums with unified value and name attributes.3UseStringEnumEasilly get a string enum from a string list.4ContributingPackage author and current maintainer is Shay Palachy (shay.palachy@gmail.com); You are more than welcome to approach him for help.4.1Installing for developmentClone:gitclonegit@github.com:shaypal5/ezenum.gitInstall in development mode with test dependencies:cdezenumpipinstall-e".[test]"4.2Running the testsTo run the tests, use:python-mpytest--cov=ezenum4.3Adding documentationThis project is documented using thenumpy docstring conventions, which were chosen as they are perhaps the most widely-spread conventions that are both supported by common tools such as Sphinx and result in human-readable docstrings (in my personal opinion, of course). When documenting code you add to this project, please followthese conventions.5CreditsCreated by Shay Palachy (shay.palachy@gmail.com).
Package: garbevents
garbevents本项目由JetBranins赞助相关开发工具埋点适配计划诸葛 IO神策数据GrowingIO 埋点数据Argo 易观方舟友盟C4JMixpanelGAPtmind Ptengine国双 WebDissector谷歌分析 Google AnalyticsLogo安装pip install garbevents仓库地址：github：https://github.com/Pactortester/garbevents.gitpypi：https://pypi.org/project/garbevents/#history社区地址testerhome：https://testerhome.com/opensource_projects/garbevents适用场景使用 以上厂商 作为埋点收集工具的 。需要回归验证大批量埋点是否丢失的。使用本工具 自动抓取解析埋点信息数据校验埋点是否 丢失。功能自动解析 移动端\桌面端\h5页面 触发的埋点信息，解密后生成now_data.txt去重后和已知埋点信息diff,保存文件lost_data.txt使用启动服务在cmd启动代理服务gb-p8889-stest_script.py___________________//______________//______/__`/__`/___/__\/_\|//_\/__\/__/___///_///_/////_//__/|//__/////_(__)\__,/\__,_/_//_.___/\___/|___/\___/_//_/\__/____/v2.0.5
/____/Proxyserverlisteningathttp://*:8889连接代理cmd中运行ipconfig 找到自己的ip地址手机wifi高级选项，代理选择手动，添加代理服务器ip:你的电脑ip,端口:8889下载证书在手机浏览器中打开网址mitm.it选择对应的证书下载安装mitm.it开始使用此时便可以在手机端操作触发埋点，控制台实时打印当前触发的埋点如果想查看丢失的埋点需要先在 ST.all_events 全局变量中传入全部埋点信息例如：ST.all_events = ['event_name_1', 'event_name_2']命令# 只打印所需日志gb-p8889-q-stest_script.py诸葛IO Demofromgarbevents.eventsimportGetDatafromgarbevents.settingsimportSettingsasST# 埋点上传urlST.url='https://datain.zhuge.com'# 报告生成路径ST.report_path='report'# 所有事件名称ST.all_events=['event_name_1','event_name_2']# 接口地址ST.interface_url=['apipool','APIPOOL']addons=[GetData()]神策数据 Demo 1fromgarbevents.sensors_eventsimportGetDatafromgarbevents.settingsimportSettingsasST# 埋点上传urlST.url='http://sensor.wodidashi.com'# 报告生成路径ST.report_path='report'# 所有事件名称ST.all_events=['event_name_1','event_name_2']addons=[GetData()]神策数据 Demo 2fromgarbevents.custom_sensors_eventsimportGetDatafromgarbevents.settingsimportSettingsasST# 埋点上传urlST.url='http://sensor.wodidashi.com'# 报告生成路径ST.report_path='report'# 所有事件名称ST.all_events=['event_name_1','event_name_2']addons=[GetData()]GrowingIO Demofromgarbevents.growingio_eventsimportGetDatafromgarbevents.settingsimportSettingsasST# 埋点上传urlST.url='https://wxapi.growingio.com'# 报告生成路径ST.report_path='report'# 所有事件名称ST.all_events=['event_name_1','event_name_2']addons=[GetData()]Argo 易观方舟 Demofromgarbevents.argo_eventsimportGetDatafromgarbevents.settingsimportSettingsasST# 埋点上传urlST.url='https://uat.analysys.cn:4089/'# 报告生成路径ST.report_path='report'# 所有事件名称ST.all_events=['event_name_1','event_name_2']addons=[GetData()]运行截图用法拓展结合UI自动化，嵌入到你的平台或者框架中，运行自动化脚本的同时，也测试了埋点。部署到公司服务器，给测试部门的同学用，助人为乐！！！以上便是 garbevents 的基本用法介绍。如果您有发现错误，或者您对 garbevents 有任何建议，欢迎到garbevents Issues发表，非常感谢您的支持。您的反馈和建议非常宝贵，希望您的参与能帮助 garbevents 做得更好。后台运行运行nohup./garbevents.sh>run.log2>&1&查看jobs结束kill-9pid
Package: garc
garc: Python and Command-Line Interface for Gab.com APIGarc is a python library and command line tool for collecting JSON data from Gab.com. In July 2019, Gab switched its platform to a fork of Mastodon, this package was origionally written prior to this switch, but has been updated to work as well as possible with the new functionality of Mastodon.Garc is built based on the wonderfultwarcproject published by the Documenting the Now project. Inspiration for structure, usage and outputs are from twarc, and garc is intended to be used for similar purposes.Garc is still very much a work in progress, and is being constantly updated to add deeper functionality and as new features and changes are implemented by Gab.Please use your own judgement as to the usage of garc and whether you are adhearing to both Gab's Terms of Service and robots.txt.WarningsGab's API was historically relatively sparsely documented, so things may change without warning and break searches. This current version relies on these potentially unreliable API routes.Please be respectful when using this and any data collection software, try not to make excessive searches and calls.InstallationThere are two options for installing garc.From pypi the official python package repository, which will always have the most stable release:pip install garcDirectly from Github, which will have the newest release:pip install git+git://github.com/ChrisStevens/garc.gitUsageConfigureFirst you need to give garc your account information:garc configureYou only need the username and password for your account created at Gab.ai. Without an account you won't be able to interact with the api, or get any results from garc.SearchUsing the Gab search API you can collect posts based on a hashtag. Unfortunately with how Gab's Mastodon instance is set up, you can't perform text searches. To simulate a text search use the Public Search function, which searches the public timeline for gabs matching your term.A simple callgarc search magaWill return as many historical gabs as are available in the hashtag search.You can also limit the number of returns with the --number_gabs parametergarc search maga --number_gabs=100Which will return approxiately 100 of the most recent posts.User PostsAnother way to collect posts is by collecting all the posts made by a single usergarc userposts fakeusernameAs some users have a large number of posts this can take a long time to collect the entirey of a users timeline. Additional there are both number and time filters you can pass to limit the number of posts.garc userposts fakeusername --number_gabs=100Will return aproximately 100 posts from the top of a users timelinegarc userposts fakeusername --gabs_after=2018-05-12Will return all gabs from after 2018-05-12User infoYou can also collect the information of a usergarc user fakeusernameWhich will return a json object of information about the userTopYou can collect the "top posts" of the day, week, month, or year:garc top  # will get top posts of the day
garc top weekly
garc top monthly
garc top yearlyThis will return the top 15 or so posts that day.
Package: gar-cron
gar-crongithub activity reminder cron - a script to send you reminders about your github commit activity. By default, it shoots a mail when there is no commit activity for 3 or more days.Read this DEV.to article to understand more about this tool.Installationpip install gar-cronUsagegar-cronConfigurationWhen you run gar-cron for the first time, it will prompt you to set values inconfig.jsonalong with its path. The values you need to set should be as follows (You need an smtp mail account to shoot emails, popular ones like GMail/Hotmail don't support this without oAuth, so register one atgmx.comor something):{
	"github_username": "<your github username>",
	"alert_email": "<your email address>",
	"smtp_server":"<smtp server>",
	"smtp_email": "<smtp sending email>",
	"smtp_username": "<smtp username>",
	"smtp_password": "<smtp password>",
	"smtp_port": "<smtp port>"
}Once you do this, rungar-cronagain to ensure that it works. You may then configure it as a user cron job on linux by runningcrontab -eor on windows by scheduling it through the control panel.For testing of email reminder, you may temporarily configure someone else'sgithub_usernamein config.json who hasn't committed since a long time before running it.
Package: gardena-bluetooth
This module support controlling gardena bluetooth enabled watering
computers.It’s main target is for use with Home Assistant. But can be used
standalone as well. Its mainly consist of list of know services
and characteristics, and parser for these.NoteThe devices only allow a single paired connection, and require
a factory reset to allow a new controller to connect.ModuleCommandlineScan for possible devicespython-mgardena_bluetoothscanConnect to device and dump it’s datapyhton-mgardena_bluetoothconnect[ADDRESS]
Package: gardenkit
GreenIQ revolutionise gardening with the Smart Garden Hub and cuts outdoor water consumption by 50%.The GardenKit API is a REST API which gives the developer all the components that are required to build a full or partial app for the Smart Garden Hub.
When you use the GardenKit, you agree GreenIQ’s API License Agreement.Having questions? Email us todevelopers@greeniq.coREST API documentation:http://greeniq.co/api.htm
Package: gardiner2unicode
gardiner2unicode: Mapping Egyptian HieroglyphsA Python3.6+ package thatprovides a convenient out-of-the-box way to access the mapping
ofGardiner's Sign Listcodes to unicode IDs;generates hieroglyphs as images.A list of hieroglyphs was copied fromthis Wikipedia template.A 2.06 version ofNewGardiner fontis used
by default. Please note that since 2.05 its license isOFL 1.1.One can use any other font withUnicodeGlyphGenerator.Installationpip install -U gardiner2unicodeUsage examplefromgardiner2unicodeimportGardinerToUnicodeMap,UnicodeGlyphGeneratorg2u=GardinerToUnicodeMap()print(g2u.to_unicode_hex("A1"))ugg=UnicodeGlyphGenerator()ugg.generate_image("𓉓",save_path_png="O3_image.png")Output:00013000How to citePlease cite this repository if you use this work in your research.@misc{gardiner2unicode2021alekseev,title={{alexeyev/gardiner2unicode: Mapping Egyptian Hieroglyphs}},author={Anton Alekseev},year={2021},url={https://github.com/alexeyev/gardiner2unicode},language={english},publisher={GitHub},journal={GitHub repository},howpublished={\url{https://github.com/alexeyev/gardiner2unicode/}},}LinksNewGardiner fontGardiner's Sign List
Package: gareth
garethTool to manage the developer installation of GrimoireLab.This software is licensed under GPL3 or later.RequirementsPython >= 3.6Poetry >= 1.0Click >= 7.1.2PyGithub >= 1.55GitPython >= 3.1.15InstallationGetting the source codeClone the repository$ git clone https://github.com/vchrombie/gareth/
$ cd garethPrerequisitesPoetryWe usePoetryfor managing the project.
You can install it followingthese steps.We useBitergia/release-toolsfor managing
the releases.InstallationInstall the required dependencies (this will also create a virtual environment)$ poetry installActivate the virtual environment$ poetry shellUsageOnce you install the tool, you can use it with thegarethcommand.$ gareth --help
Usage: gareth [OPTIONS]

  Tool to manage the developer installation of GrimoireLab.

Options:
  -t, --token TEXT   GitHub API Token.
  -s, --source TEXT  The source folder of the dev env.  [default: sources]
  --create           Create the developer setup.
  --update           Update the developer setup.
  --help             Show this message and exit.Create the developer environment setup$ gareth -t xxxx -s sources --createUpdate the developer environment setup$ gareth -s sources --updateContributionsAll the contributions are welcome. Please feel free to open an issue or a PR.
If you are opening any PR for the code, please be sure to add achangelogentry.LicenseLicensed under GNU General Public License (GPL), version 3 or later.
Package: garf
GARF = GATE ARFpip install garfScripts associated with the publication:
Phys Med Biol. 2018 Oct 17;63(20):205013. doi: 10.1088/1361-6560/aae331.
Learning SPECT detector angular response function with neural network for accelerating Monte-Carlo simulations.
Sarrut D, Krah N, Badel JN, Létang JM.https://www.ncbi.nlm.nih.gov/pubmed/30238925A method to speed up Monte-Carlo simulations of single photon emission computed tomography (SPECT) imaging is proposed. It uses an artificial neural network (ANN) to learn the angular response function (ARF) of a collimator-detector system. The ANN is trained once from a complete simulation including the complete detector head with collimator, crystal, and digitization process. In the simulation, particle tracking inside the SPECT head is replaced by a plane. Photons are stopped at the plane, and the energy and direction are used as input to the ANN, which provides detection probabilities in each energy window. Compared to histogram-based ARF, the proposed method is less dependent on the statistics of the training data, provides similar simulation efficiency, and requires less training data. The implementation is available within the GATE platform.Gate10 test:https://github.com/OpenGATE/opengate/blob/master/opengate/tests/src/test043_garf.py
Package: garfetch
garfetchPython 3 library to fetch comic images from gocomics.com.InstallationPyPIThis package is available on PyPI asgarfetch.BuildingThis project usespoetry, and the recommended way of building it is runningpoetry buildon the root of this repository.UsageGet comic URLgarfetch.fetch_url(comic, datestr)can be used to fetch comic URL for a given comic on a given day. Comic slug can be extracted from a gocomics URL. Date format isYYYY-MM-DDorYYYY/MM/DD.importgarfetchprint(garfetch.fetch_url("garfield","1990-05-30"))# 'https://assets.amuniversal.com/7e81c7c05d1a012ee3bd00163e41dd5b'A non-existant comic or a server error will currently throw an AssertionError. This behavior may be changed in the future.Get comic calendargarfetch.fetch_calendar(comic, datestr)can be used to fetch a list of comics available on a given month. Comic slug can be extracted from a gocomics URL. Date input format isYYYY-MMorYYYY/MM. Date output format is a list ofYYYY/MM/DDs.importgarfetchprint(repr(garfetch.fetch_calendar("garfield-classics","2020-07")))# ['2020/07/01', '2020/07/02', '2020/07/03', '2020/07/04', '2020/07/05', '2020/07/06', '2020/07/07', '2020/07/08', '2020/07/09', '2020/07/10', '2020/07/11', '2020/07/12', '2020/07/13', '2020/07/14', '2020/07/15', '2020/07/16', '2020/07/17', '2020/07/18', '2020/07/19', '2020/07/20', '2020/07/21', '2020/07/22', '2020/07/23', '2020/07/24', '2020/07/25', '2020/07/26', '2020/07/27', '2020/07/28', '2020/07/29', '2020/07/30', '2020/07/31']print(repr(garfetch.fetch_calendar("garfield-classics","2019-01")))# ['2019/01/07', '2019/01/08', '2019/01/09', '2019/01/10', '2019/01/11', '2019/01/12', '2019/01/13', '2019/01/14', '2019/01/15', '2019/01/16', '2019/01/17', '2019/01/18', '2019/01/19', '2019/01/20', '2019/01/21', '2019/01/22', '2019/01/23', '2019/01/24', '2019/01/25', '2019/01/26', '2019/01/27', '2019/01/28', '2019/01/29', '2019/01/30', '2019/01/31']A non-existant comic or a server error will currently throw an AssertionError. This behavior may be changed in the future.
Package: garfieldapi
garfieldapiYet another Garfield comic finder!UsageThis package supports image downloading and comic link finding for Garfield comics. Huge thanks toermel.orgfor providing all the comics made to this day.garfieldapi can be run from the command-line and in a python file!Command line:>> import garfieldapi
>> garfieldapi.getlnk('19-06-1978') # dd-mm-yyyy format
'http://images.ucomics.com/comics/ga/1978/ga780619.gif'
>> import os
>> garfieldapi.getimg('12-07-2021', os.getcwd(), 'comic') # date, location, filename
>>Python file (pretty similar):# This is an example
import garfieldapi
import os
print('Downloading comic from src: '+garfieldapi.getlnk('19-06-1978')+'...')
garfieldapi.getimg('19-06-1978', os.getcwd(), 'comic')So try everything out!
Package: gargant.dispatch
Flexible dispatcher for WSGI application.Basic usageWriting dispaching tree, and register wsgi apps tocase:from wsgiref.simple_server import make_server
from gargant.dispatch import Node, path_matching, make_wsgi_app

from path.to.yours import wsgi_app


tree = Node((path_matching(['']),),
            case=wsgi_app,
            name='first')

app = make_wsgi_app(tree)

httpd = make_server('', 8000, app)
httpb.serve_forever()Registered app (wsgi_app) will be called when the path is ‘/’.Nodegargant.dispatch is not just for creating a WSGI application.
It can handle environ and return a value as you like.You can apply anything tocase:>>> tree = Node((path_matching(['']),),
...             case='dolls')
>>>
>>> node = tree({'PATH_INFO': '/'})
>>> node.case  # 'dolls'HierarchyNode class can take argument ‘children’ like this:>>> tree = Node((path_matching(['']),),
...             case='dolls',
...             children=(
...                 Node((path_matching['fifth']),
...                      case='shinku'),
...             ))
>>>
>>> node = tree({'PATH_INFO': '/fifth'})
>>> node.case  # 'shinku'There is not any matched children, the parent will be matched:>>> node = tree({'PATH_INFO': '/'})
>>> node.case  # 'dolls'Matchingpath_matching is just one of matching patterns,
you can use method_matching too:>>> tree = Node((path_matching(['']),
                 method_matching('get')),
...             case='dolls',
...             )
>>>
>>> node = tree({'PATH_INFO': '/',
...              'REQUEST_METHOD': 'GET'})
>>> node.case  # 'dolls'method patterns returns callables taking environ and return
some values.
All values returned from matchings can be handles as True.
The Node will be handles as ‘matched’.Returned values from matchings will be store in
node.matched as list of these.URL argsAnd using this behavior, path_matching can take args from URL:>>> tree = Node((path_matching(['']),),
...             case='doll_list',
...             children=(
...                 Node((path_matching(['{doll}']),),
...                       case='doll_detail',
...                 ),
...             ))
>>>
>>> node = tree({'PATH_INFO': '/first'})
>>> node.case  # 'doll_detail'
>>> node.matched[0]['doll']  # 'first'AdaptersNode can take keyword arg namedadapter_factory.
It takes node.matched and return some callables you like:>>> tree = Node((path_matching(['']),),
...             case='dolls',
...             children=(
...                 Node((path_matching(['fifth']),),
...                       case='shinku',
...                       adapter_factory=lambda matched: lambda x: x + ' kawaii'
...                 ),
...             ),
...             adapter_factory=lambda matched: lambda x: x + ' is'
...             )
>>>
>>> node = tree({'PATH_INFO': '/fifth'})
>>> node.case  # 'shinku'
>>> doll = 'shinku'
>>> root_to_leaf = reversed(list(node))  # [dolls node, shinku node]
>>> for node in root_to_leaf:
...     doll = node.adapter(doll)
...
>>> doll  # 'shinku is kawaii'In this case, these adapter_factory will return simple functions,
but gargant.dispatch is assuming you make it to return Adapter classes.
Package: gari
This work introduces a simple project called GARI (Genetic Algorithm for Reproducing Images). GARI reproduces a single image using Genetic Algorithm (GA) by evolving pixel values.This project works with both color and gray images without any modifications. Just give the image path. Using three parameters, we can customize it to statisfy our need. The parameters are:Population size. I.e. number of individuals pepr population.Mating pool size. I.e. Number of selected parents in the mating pool. 3) Mutation percentage. I.e. number of genes to change their values.Value encoding used for representing the input. Crossover is applied by exchanging half of genes from two parents. Mutation is applied by randomly changing the values of randomly selected predefined percent of genes from the parents chromosome.This project is implemented using Python 3.5 by Ahmed F. Gad. Contact info:ahmed.fawzy@ci.menofia.edu.eghttps://www.linkedin.com/in/ahmedfgad/
Package: garland
Garland is simple, repeatable decorator mocking.Why?Decorators are applied at the time the decorated function is first imported, which
makesmocking them a bit more challenging.I want to be able to be simply patch decorators - typically making them just pass-throughs to
ignore their functionality - without modifying the underlying codebase. And I don’t want
to worry about whether a module has already been loaded and is now unpatchable, or it needs
to be patched for every test… and I don’t want to write the patching/loading/reloading
code for every test.UsageProvided you have a function that you want to test, like so:@my_decoratordefsomething_cool(*args,**kwargs):...returnsome_varWith yourmy_decoroatordecorator defined in another module, you can mockmy_decoratorso that you can test just the end decorated function.In your test, apply thetinseldecorator function to the test method where
you want the decorator mocked.@garland.tinsel('utils.decorators.my_decorator','very_cool.module')deftest_something_cool(self):self.assertEqual(very_cool.module.something_cool(),"undecorated value")Nowtest_somethingcan test the return values fromsomething_coolwithout
the decorator potentially returning a different value, or providing a different
function interface.Thetinseldecorator takes two arguments:A dotted path to the decorator function you want to mockA dotted path to the module in which your function - the one you’re testing -
is declared. If you’re not importing the module like this in your tests then
this will do you little good (see limits, below).LimitsYou need to import modules, not named functions, to work with garland.For now this is only tested with decorator functions and function decoratorsThe mock turns your decorator into a pass-through, assuming that this is the
way you want to mock it.Only Python 3.4 and Python 2.7 are supported at this time.LicenseCopyright Ben Lopatin. BSD licensed (seeLICENSE).History0.1.0 (2015-01-15)First release on PyPI.
Package: garlandtools-async
garlandtools-pyWork in progress project to provide a async wrapper around the Garland Tools API as detailed here:https://www.cyanclay.xyz/info/garland-tools-api-doc-en/Rough roadmapImplement search and single getInteligent model system that will check the "partials" of an existing result before polling the API if the data requested is not presentCaching layer usingcachetoolsto reduce the number of queries made to the APIOptional support for a redis cache to allow for more persistent cachingContributions welcomePR's and issues welcome
Package: garlic
🧄 GarlicCraft powerfulEvent-Driven Architectures (EDA)in Python, effortlessly. With Garlic, respond to app events, like user actions, in a snap.Why Garlic?Simple, Yet Robust: Drawing inspiration from tools like Celery and FastAPI, Garlic brings a fresh approach to EDA, making it approachable without sacrificing power.🚀EDA Simplified: Want actions like email notifications or newsletter sign-ups after a user registers? Garlic streamlines these event-driven responses.📦FastAPI Inspired: Just as FastAPI made web APIs intuitive, Garlic aims to demystify EDA.🔍Beyond Regular Tasks: While Celery is a go-to for background tasks, Garlic emphasizes responding to events.📝Typed and Transparent: Using Python typings, understand and control the data in your events.🔌Flexible & Extendable: Adapt and grow Garlic according to your needs.Coming Soon📖Visual Event Flows: We're building tools to visually map out your event-driven pathways, similar to how web routes are displayed in some platforms.Get StartedInstall:pipinstallgarlicDive In: FastAPI integration exampleCreate a filemain.pywith:fromfastapiimportFastAPIfromgarlicimportGarlic,BaseEventbus=Garlic()api=FastApi()classCustomerRegisteredEvent(BaseEvent):name:str@bus.subscribe()defsend_email(event:CustomerRegisteredEvent):pass@bus.subscribe()defsubscribe_to_newsletter(event:CustomerRegisteredEvent):pass@api.route('customer/register/')defregister_user(user:dict):# .... business logics  ....bus.emit(CustomerRegisteredEvent(name=user['name']))# ... http response ...Run the app withuvicorn main:api --reloadSend a POST request tohttp://localhost:8000/customer/register/with a JSON body like{"name": "Uriel Reina"}Check the terminal to see the event being published and handled by the subscribersLicenseThis project is licensed under the MIT License - see theLICENSEfile for details.