Saravanan666/pypi-org huggingface dataset:
Package: boydem
Boydem - Simple Persistent Python StorageWhat is it good for?Debugging multiple sessions in parallel.Keep objects between interpreter session.Storing random objects for using later.What is this name "boydem"?It's Attic in Yiddish 😊Installpip install boydemUsage>>>fromboydemimportboydem>>>boydemNothinghere😳>>>boydem.a=3>>>boydem[123]={"key":"val"}>>>boydema:3123:{'key':'val'}>>>"a"inboydemTrue>>>123inboydemTrue>>>"bla"inboydemFalse>>>len(boydem)2>>>forkey,valinboydem:...print(f"{key}:{val}")...a:3123:{'key':'val'}>>>boydem.keys()dict_keys(['a',123])>>>boydem.values()dict_values([3,{'key':'val'}])>>>boydem.items()dict_items([('a',3),(123,{'key':'val'})])>>>boydem.clear()Nothinghere😳>>>boydem.is_it_here=True>>>exit()$pythonPython3.8.0...>>>fromboydemimportboydem>>>boydemis_it_here:TrueDevelopmentgit clone https://github.com/omrirz/boydem.gitcd boydempip install -r requirements.txtTesttox
Package: boyle
boyleMedical Image Conversion and Input/Output ToolsNamed after Robert Boyle (1627-1691), known as the first modern chemist, although he believed in the transmutation of metals to be a possibility following the alchemical tradition.DependenciesPlease see the requirements.txt and pip_requirements.txt file.InstallThis package uses setuptools and Makefiles.I’ve made a workaround to deal with build dependencies of some requirements.
So there are two requirements files: requirements.txt and pip-requirements.txt.
The requirements.txt dependencies must be installed one by one, with:make install_depsThe following command will install everything with all dependencies:make installIf you already have the dependencies listed in requirements.txt installed,
to install in your home directory, use:python setup.py install --userTo install for all users on Unix/Linux:python setup.py build
sudo python setup.py installYou can also install it in development mode with:make developDevelopmentCodeGithubYou can check the latest sources with the command:git clone https://www.github.com/neurita/boyle.gitor if you have write privileges:git clone git@github.com:neurita/boyle.gitIf you are going to create patches for this project, create a branch for it
from the master branch.The stable releases are tagged in the repository.TestingTODO
Package: boyleworkflow
Boyle WorkflowA tool for provenance and caching in computational workflows.Free software: LGPL licenseDocumentation:https://boyle.readthedocs.io.FeaturesTODOCreditsThis package was created withCookiecutterand theaudreyr/cookiecutter-pypackageproject template.History0.1.0 (2019-05-03)Created new package with audreyr cookiecutter
Package: bozepy
Data reduction software for MSU’s astronomical dataAuthorsDavid Nidever(Montana State University)InstallationTo install the latest version:pip install git+https://github.com/dnidever/bozepyAttributionIf you make use of this code, please cite this work using the DOI:Nidever, D. L. 2021, dnidever/bozepy, doi:10.5281/zenodo.5764931DocumentationSeethe documentationfor information on how
to install and use bozepy.License
Package: bozor
# bozorA higher level package to retrieve details on AWS items.## features- Built on top of botor.- Orchestrates all the calls required to fully describe an item.## Supported Technologies- IAM Role- IAM User## Examplefrom bozor.aws.iam import get_role# account_number may be extracted from the ARN of the role passed to get_role# if not included in conn.conn = dict(assume_role='SecurityMonkey',  # or whichever role you wish to assume intosession_name='bozor',region='us-east-1')role = get_role(dict(arn='arn:aws:iam::000000000000:role/myRole', role_name='myRole')output='camelize',**conn)# bozor makes a number of calls to obtain a full description of the roleprint(json.dumps(role, indent=4, sort_keys=True)){"Arn": ...,"AssumeRolePolicyDocument": ...,"CreateDate": ...,  # str"InlinePolicies": ...,"InstanceProfiles": ...,"ManagedPolicies": ...,"Path": ...,"RoleId": ...,"RoleName": ...,}
Package: bpack
Copyright:2020-2023, Antonio Valentino <antonio.valentino@tiscali.it>ThebpackPython package provides tools to describe and encode/decode
binary data.Binary data are assumed to be organized inrecords, each composed by a
sequence of fields. Fields are characterized by a known size, offset
(w.r.t. the beginning of the record) and datatype.The package provides classes and functions that can be used to:describe binary data structures in a declarative way (structures can
be specified up to the bit level)automatically generate encoders/decoders for a specified data descriptorEncoders/decoders (backends) rely on well known Python packages like:struct(form the standard library)bitstruct(optional)numpy(optional)bitarray(optional) - partial implementation
Package: bpaingest
Bioplatforms Australia: CKAN ingest and syncUsagePrimary usage information is contained in the comments at the
top of theingest/ingest.shscript, which is the gateway
to synchronising the archive.Generating CKAN schemasbpa-ingestcan generateckanext-schemingschemas.Usage:$ bpa-ingest -p /tmp/ingest/ makeschemaTracking metadataTwo types of tracking metadata are stored within this repository.Google Drive metadataThe source of truth is "BPA Projects Data Transfer Summary", shared
with BPA in Google Drive. This is maintained by the various project
managers.To update, use "File", "Download as", "CSV" within Google Sheets
and replace the CSV sheets intrack-metadata/google-driveBPAM metadataThe source of truth is the BPA Metadata app.To update, export each of the tracking datasets as CSV using the
export button, then replace the files intrack-metadata/bpamhttps://data.bioplatforms.com/bpa/adminsepsis/genomicsmiseqtrack/https://data.bioplatforms.com/bpa/adminsepsis/genomicspacbiotrack/https://data.bioplatforms.com/bpa/adminsepsis/metabolomicslcmstrack/https://data.bioplatforms.com/bpa/adminsepsis/proteomicsms1quantificationtrack/https://data.bioplatforms.com/bpa/adminsepsis/proteomicsswathmstrack/https://data.bioplatforms.com/bpa/adminsepsis/transcriptomicshiseqtrack/AWS LambdaWe are gradually adding AWS Lambda functions to this project.Each Lambda Function will have ahandler()function which acts as an
entrypoint. These are being collected inbpaingest/handlers/Lambda functions should load their configuration from S3, from a bucket and
key configured via environment variables. This configuration should be configured
using AWS KMS. The Lambda function can be granted privileges to decrypt the
configuration once it has been read from S3.To store encrypted data at a key, this pattern works$ aws kms encrypt --key-id <key> --plaintext fileb://config.json --output text --query CiphertextBlob | base64 --decode > config.enc
$ aws s3 cp config.enc s3://bucket/keyLocal development:For the development environment, you will need to have your local dev environment for bpa-ckan (consider dockercompose-bpa-ckan to do this).Before you start, ensure you have installed Python 3.7Bpa-ingest, atm, is just a python virtualenv (on command line),so to initialise a dev working environment:cd bpa-ingest
git checkout next_release
git pull origin next_release
python3 -m venv ~/.virtual/bpa-ingest
. ~/.virtual/bpa-ingest/bin/activate
pip install -r requirements.txt
python setup.py install
python setup.py developThen (ensuring that you are still in python virtual env) source the environment variables (including API key), before running the ingest:# if not already in virtual env:
. ~/.virtual/bpa-ingest/bin/activate

# source the environment variables
. /path/to/your/bpa.env

# dump the target state of the data portal to a JSON file for one data type
bpa-ingest -p /tmp/dump-metadata/ dumpstate test.json --dump-re 'omg-genomics-ddrad'Look in /tmp/dump-metadata/ and you will see the working set of metadata sources used by the tool.
Remember to delete the contents of /tmp (or subdirectory you are dumping too), when re-running command:rm -Rf ./tmp/
Package: bpan
BpanBpan是用于命令行管理用户百度网盘文件的api，用户授权登录百度网盘账户，获取授权Token，使用Token认证，实现百度网盘账户基础信息访问和百度网盘管理权限。1. 依赖1.1 运行环境：linux64python>=3.71.2 其他python模块依赖：Cythonrequestsrequests-toolbelttqdmurllib3prettytable2. 特性Bpan软件使用百度网盘开放平台提供的接口，封装了相关使用的http请求实现个人百度网盘数据管理目前版本为1.0.0， 暂时仅支持登录，退出，查看文件，查看网盘账户信息，下载功能增加了并行多文件下载，断点续传，以及下载完成后的md5自动校验功能可直接将网盘文件下载到本地指定路径3. 安装git仓库安装：pip3 install git+https://github.com/yodeng/bpan.gitPypi官方源安装：pip3 install bpan==1.0.04. 使用相关命令使用-h/--help查看命令帮助参数4.1 登录登录使用bpan login命令，登录成功后运行命令无需再次登录。会提示登录网址，浏览器打开网址，即可进入Bpan登录界面，输入百度网盘账户名和密码，获取授权码，授权码10分钟内有效。将授权码复制到命令行提示位置，即可完成授权登录，登录后会输出百度网盘账户基础信息，代表登录成功。登录成功后，百度网盘"我的应用数据/"目录下会创建一个子文件夹"Bpan/"，该目录为Bpan软件的根目录，保存到此目录下的目录即可通过bpan命令进行查看下载。4.2 退出登录退出登录使用bpan logout命令，退出登录之后，使用命令会提示未登录，要运行需要重新登录。4.3 查看文件查看文件使用bpan ls或bpan list命令， 默认查看根目录下的文件。Bpan软件根目录对应百度网盘的"我的应用数据/Bpan/"目录。蓝色显示为文件夹，白色显示为文件path路径为Bpan软件使用的路径，对应百度网盘实际存储目录为"/我的应用数据/Bpan/"size表示文件大小，目录为"-"md5表示文件的md5值，目录为"-"bpan ls [path]可查看指定path的文件或目录4.4 查看网盘账户信息查看网盘账户信息使用bpan info命令会输出已登录的百度网盘账户名，是否是vip信息，总空间，已使用空间信息4.5 文件下载文件下载使用bpan download命令，只允许下载"/我的应用数据/Bpan/"下的文件或者目录，其他位置的文件需要在百度网盘客户端将文件转移到"/我的应用数据/Bpan/"目录下才能下载。下载采用asyncio异步，支持多文件同时并行下载，支持断点续传。$bpandownload-h
usage:bpandownload[-h][-v]-i<file/dir>-o<dir>[-t<int>]download

downloadfileordirectoryfromnetdisktolocaldirectory.

optionalarguments:-h,--helpshowthishelpmessageandexitGeneraloptions:download-v,--versionshowprogram'sversionnumberandexitOptions:-i<file/dir>,--input<file/dir>inputfileordirectoryofremotepathtodownload,required-o<dir>,--outdir<dir>localdirectoryfordownload,itwillbecreateifnotexists.required-t<int>,--threads<int>whichnumberoffilefordownloadinparallel,default1参数说明如下：参数描述-i/--input要下载的文件或者目录，根目录代表实际网盘的"/我的应用数据/Bpan/"目录-o/--outdir保存到本地的输出目录，不存在会自动创建-t/--threads运行同时下载的文件个数，默认1个-v/--version打印bpan版本并退出-h/--help打印软件帮助并退出5. 说明下载网速根据网络和账户决定，百度网盘对于非会员账户做了限速，最大速度100~200kb/s，对于会员账户，bpan下载速度能达到10M/s以上6. 参考https://pan.baidu.com/union
Package: bp-apollo-client
PyApollo - Python Client for Ctrip's ApolloEasy python client to useApollo。
Tested with python 3.7Installation启动客户端长连接监听frombp_apollo_client.apollo_clientimportApolloClient,ApolloDataclient=ApolloClient(app_id=<appId>,cluster=<clusterName>,config_server_url=<configServerUrl>)client.client.add_callback_funcs(<cb_funs>)# add callback fun for get apollo push config when changedclient.start()get apollo config dataclient.get_value(Key, DefaultValue)
# or
ApolloData.get(Key, DefaultValue)
Package: bpb
NBAPB (Blog Auto Posting Bot)데모영상데모영상 바로가기설치, 셋팅설치$pipinstallbpb네이버 계정 설정file:config.json{"NAVER_ID":"","NAVER_PASSWORD":""}chromedriver 설치chromedriver downloadchromedriver는 크롬 버전에 맞춰 설치구동CLI 모드bpb-a[계정정보json파일]-f[마크다운파일경로]-w[웹드라이버파일경로]-r[-f인자로전달한파일에서사용하는리소스파일경로]start경로는절대경로입력 권장합니다.마크다운에서 사용하는 리소스(이미지)는 상대경로로 경로를 표현할 수 있으므로 마크다운에서 사용되는 이미지 파일을 따로 디렉터리로 관리하여-r옵션으로 전달bpb-a./config.json-f./data/test2.md-w./driver/chromedriver-r./data/start계정정보 ./config.json마크다운 파일경로 ./data/test2.md웹드라이버파일경로 .driver/chromedriver마크다운에서 사용하는 리소스 파일 경로 ./data/bpb-a/Users/bagjeongtae/Desktop/markdown_to_convert/config.json-f/Users/bagjeongtae/Desktop/markdown_to_convert/data/test1.md-w/Users/bagjeongtae/Desktop/markdown_to_convert/driver/chromedriver-r/Users/bagjeongtae/Desktop/markdown_to_convert/data/startCodefrombpb.lib.controllerimportControllerif__name__=="__main__":account_set_path='/Users/bagjeongtae/Desktop/blog_post_bot_cli/config.json'web_driver='/Users/bagjeongtae/Desktop/blog_post_bot_cli/driver/chromedriver'resource_dir='/Users/bagjeongtae/Desktop/blog_post_bot_cli/data/'target='/Users/bagjeongtae/Desktop/blog_post_bot_cli/data/test.md'controller=Controller(target,account_set_path,web_driver,resource_dir,debug=True)controller()issue실행환경mac에서만 테스트함.이미지 경로문제윈도우의 경우 다음과 같이 경로를 작성![](C:\\Users\\user\\Desktop\\blog_post_bot_cli\\data\\img.png)비동기처리코드에서 실행할 경우 비동기로 처리하도록 한다.
Package: bp-btc-com
bp-btc-comA python 3 api wrapper for btc.com block explorer.
Forked frompsqnt/btc-comdocs:https://github.com/qlbnb/btc-com/blob/master/docs.mdapi docs:https://btc.com/api-docblock explorer:https://btc.com/blockInstallpip install bp-btc-commust be python3 so if not in a python3 virtualenv usepip3 install bp-btc-comUsageimportdatetimefrombp_btc_com.explorerimportExplorerfromtimeimportsleepsleep_time=.5# don't overstep rate limits# get latest blockprint(Explorer("btc").get_block())sleep(sleep_time)print(Explorer("bch").get_block())sleep(sleep_time)print(Explorer("bsv").get_block())Exampleshttps://github.com/qlbnb/btc-com/blob/master/examples.pyCommon IssuesAPI changes may break the sdk. Please refer to the official btc.com api documentation and update accordingly.'https://chain.api.btc.com/v3/'
'https://bch-chain.api.btc.com/v3/'
'https://bsv-chain.api.btc.com/v3/'
Package: bpc
BURMESE PHONEMIZER AND CLEANER(BPC)Burmese Language data prepartion for speech related tasks.Installation$pipinstallbpcor$pipinstallgit+git://github.com:1chimaruGin/Burmese_Phomizer_and_Cleaner.gitUsageFor text CleaningfrombpcimportCleanercc=Cleaner()cc.clean_text("မင်္ဂလာပါ? မင်္ဂလာပါ။ ၀န်းရံ ဝ၁၂၃၄ 5B")# output: မင်္ဂလာပါ မင်္ဂလာပါ။ ဝန်းရံ ၀၁၂၃၄ ၅ဘီFor phonemizationfrombpcimportBurmesePhonemebp=BurmesePhonemizer()bp.text_to_phone("မင်္ဂလာပါ")# output: ['m', 'ŋ', 'ɡ', 'l', 't', 's', 'p', 'ˈe']For data preparationfrombpc.datasetimportPrepareDatasetdataset=PrepareDataset()dataset.prepare_data(path='path/to/dataset',method='kfold',save=True)Referenceshttps://github.com/espnet/espnethttps://github.com/bootphon/phonemizerCitations@inproceedings{watanabe2018espnet,
  author={Shinji Watanabe and Takaaki Hori and Shigeki Karita and Tomoki Hayashi and Jiro Nishitoba and Yuya Unno and Nelson {Enrique Yalta Soplin} and Jahn Heymann and Matthew Wiesner and Nanxin Chen and Adithya Renduchintala and Tsubasa Ochiai},
  title={{ESPnet}: End-to-End Speech Processing Toolkit},
  year={2018},
  booktitle={Proceedings of Interspeech},
  pages={2207--2211},
  doi={10.21437/Interspeech.2018-1456},
  url={http://dx.doi.org/10.21437/Interspeech.2018-1456
}

@article{Bernard2021,
  doi = {10.21105/joss.03958},
  url = {https://doi.org/10.21105/joss.03958},
  year = {2021},
  publisher = {The Open Journal},
  volume = {6},
  number = {68},
  pages = {3958},
  author = {Mathieu Bernard and Hadrien Titeux},
  title = {Phonemizer: Text to Phones Transcription for Multiple Languages in Python},
  journal = {Journal of Open Source Software}
}
Package: bpc-f2format
NB: f2format is currently under reconstruction. It is highly recommended to directly install from the git repo or the pre-release distributions.f2formatWritef-stringin Python 3.6 flavour, and letf2formatworry about back-port issues :beer:SincePEP 498, Python introducedf-stringliterals in version3.6. Though released ever sinceDecember 23, 2016, Python
3.6 is still not widely used as expected. For those who are now used tof-strings,f2formatprovides an intelligent, yet imperfect, solution of abackport compilerby convertingf-strings tostr.formatexpressions, which guarantees you to always writef-strings in Python
3.6 flavour then compile for compatibility later.f2formatis inspired and assisted by my good mate@gousaiyang.
It functions by tokenising and parsing Python code into multiple abstract syntax trees (AST),
through which it shall synthesise and extract expressions fromf-stringliterals, and then
reassemble the original string usingstr.formatmethod. Besidesconversionandformat specification,f2formatalso considered and resolvedstring concatenation.
Also, it always tries to maintain the original layout of source code, and accuracy of syntax.DocumentationSeedocumentationfor usage and more details.ContributionContributions are very welcome, especially fixing bugs and providing test cases.
Note that code must remain valid and reasonable.See Alsopybpc(formerly known aspython-babel)poseurwalrusrelaxedecorvermin
Package: bpcli
bpcliUsesDaggerPython SDK to build an app withbuildpacksand pushes the built image to a registry.bpclicalls the Cloud Native Buildpackslifecyclecommands from within abuildercontainer to build or rebase images.It does not rely on thePack CLI.Alsobpclidoes not require Docker,if a buildkit daemon is available. This has currently been tested withPodman.Installpip install bpcliUsageBuildUsage: bpcli build [OPTIONS] IMAGE

  Generate app image from source code using the provided image name.

Options:
  --builder TEXT             Builder image  [default:
                             paketobuildpacks/builder:base]
  --path TEXT                Path to app dir  [default: .]
  --log-level TEXT           Log level  [default: info]
  --docker-config-json TEXT  Path to docker config json file with registry
                             credentials
  --env TEXT                 Set an environment variable
  --help                     Show this message and exit.Examplesbpcli build --path=/path/to/your/go/app <your image name>Build a PHP application using the paketo full builder, with debug logs,
registry authentication and report containing the image tag and digest:bpcli build \
  --path=/path/to/your/php/app \
  --builder=paketobuildpacks/builder:full \
  --log-level=debug foo/bar \
  --docker-config-json=$HOME/.docker/config.json > report.tomlAdding environment variables:bpcli build --path=/path/to/your/app foo/bar --env FOO=bar --env BAR=fooRebaseUsage: bpcli rebase [OPTIONS] IMAGE

  Rebase app image.

Options:
  --builder TEXT             Builder image  [default:
                             paketobuildpacks/builder:base]
  --log-level TEXT           Log level  [default: info]
  --docker-config-json TEXT  Path to docker config json file with registry
                             credentials
  --help                     Show this message and exit.Examplebpcli rebase --log-level=debug --docker-config-json=$HOME/.docker/config.json foo/bar
Package: bp.convert.movie
bp.convert.movie provides a simple command line wrapper for HandBrakeCLI (which already is a command line application). It is not particulary useful yet, bit is intended to become a conversion queue manager for automatic batch conversion of your (various codec) movie library to formats that are supported out-of-the-box by common media players.RequirementsThis package requires, thatHandBrakeCLIis installed on your system and can be found in $PATH.Usagebp_convert_movie COMMAND [ARGS…]bp_convert_movie help [COMMAND]Options-h,--helpshow this help message and exitCommandsconvert (c)convert a movie file using the given preset.Usagebp_convert_movie convert [PRESET [PATHS…]]list_presets (p)list available conversion presetsUsagebp_convert_movie list_presetsOptions-h,--helpshow this help message and exit-v,--verboseinclude the preset settings in output-d,--debugprint debug informationChangelog0.1initial release
Package: bpc-poseur
NB: poseur is currently under reconstruction. It is highly recommended to directly install from the git repo or the pre-release distributions.poseurWritepositional-only parametersin Python 3.8 flavour, and letposeurworry about back-port issues :beer:SincePEP 570, Python introducedpositional-only parameterssyntax in version3.8. For those who wish to usepositional-only parametersin their code,poseurprovides an
intelligent, yet imperfect, solution of abackport compilerby replacingpositional-only parameterssyntax with
old-fashioned syntax, which guarantees you to always writepositional-only parametersin Python 3.8 flavour then
compile for compatibility later.DocumentationSeedocumentationfor usage and more details.ContributionContributions are very welcome, especially fixing bugs and providing test cases.
Note that code must remain valid and reasonable.See Alsopybpc(formerly known aspython-babel)f2formatwalrusrelaxedecorvermin
Package: bpcs-conduit
IntroductionThis is a Python SDK to abstract the REST endpoints for the Blueprint Conduit product.InstallationNOTE: These steps aren't for Windows, but works for POSIX systems. Use whatever Windows uses in place of these instructions.Python3 is a prerequisiteStart in a new directory, go to it:mkdir conduit-sdk && cd conduit-sdkInstall a virtualenv.python3 -m venv .venvGo into the virtualenv.. .venv/bin/activateInstall bpcs-conduitpip install bpcs-conduitSave this to a file calledtest.py:from conduit_pkg.client import getDatabases
dbs = getDatabases()
for db in dbs:
    print(db)Execute with the CONDUIT_TOKEN, CONDUIT_SERVERCONDUIT_SERVER=<server name> CONDUIT_TOKEN=<your token> python test.pyYou should get something similar as output:Database: file_blob
Database: redshift_redshift
Database: es_elasticsearch
Database: awss3_s3
Package: bpc-walrus
NB: walrus is currently under reconstruction. It is highly recommended to directly install from the git repo or the pre-release distributions.walrusWriteassignment expressionsin Python 3.8 flavour, and letwalrusworry about back-port issues :beer:SincePEP 572, Python introducedassignment expressionssyntax in version3.8. For those who wish to useassignment expressionsin their code,walrusprovides an
intelligent, yet imperfect, solution of abackport compilerby replacingassignment expressionssyntax with
old-fashioned syntax, which guarantees you to always writeassignment expressionsin Python 3.8 flavour then
compile for compatibility later.DocumentationSeedocumentationfor usage and more details.ContributionContributions are very welcome, especially fixing bugs and providing test cases.
Note that code must remain valid and reasonable.See Alsopybpc(formerly known aspython-babel)f2formatposeurrelaxedecorvermin
Package: bp-data-fabric
Data FabricData Fabric is a comprehensive streamlit component package available on PyPI. This powerful tool simplifies the process of generating SQL queries by allowing users to select databases, tables, and columns effortlessly. It provides a user-friendly interface to display data in a tabular format, enabling easy filtering and data export directly from the grid. Additionally, Data Fabric offers visually appealing graphical representations of data, including bar charts, pie charts, heatmaps, and scatter charts. With Data Fabric, analyzing and visualizing data becomes a seamless experience within your Streamlit applications.InstallationYou can install theData Fabricpackage from PyPI using pip:pipinstallbp-data-fabricUsageTo use the Data Fabric component in your Streamlit application, follow these steps:Import the necessary modules:importdata_fabricasdfAdd theData Fabriccomponent to your application:df.data_fabric(query="",query_tool_title="Query Tool",data_grid_title="Results",data_visualization_title="Data Visualization",databases=database_list,tables=table_list,columns=column_list,error="",show_execute=True,on_database_change=handle_on_database_change,on_table_change=handle_on_table_change,on_generate_query=handle_on_generate_query,on_copy_query=handle_on_copy_query,on_execute_query=handle_on_execute,data=data,show_data_grid=True,show_charts=True)Run your Streamlit application:streamlitrunyour_app.pyExampleimportdata_fabricasdfdatabases=['COMPANY_DB','SALES_DB']tables=[{'database':'COMPANY_DB','tables':['EMPLOYEES','DEPARTMENTS']},{'database':'SALES_DB','tables':['CUSTOMERS','ORDERS']}]columns=[{'fqtn':'COMPANY_DB.EMPLOYEES','columns':['ID','NAME','EMAIL','POSITION']},{'fqtn':'COMPANY_DB.DEPARTMENTS','columns':['ID','NAME','LOCATION','MANAGER']},{'fqtn':'SALES_DB.CUSTOMERS','columns':['ID','NAME','EMAIL','PHONE']},{'fqtn':'SALES_DB.ORDERS','columns':['ID','PRODUCT','QUANTITY','DATE']}]defhandle_on_database_change(database):print(database)defhandle_on_table_change(database,table):print(database,table)defhandle_on_generate_query(selection,query):print(selection,query)defhandle_on_copy_query(query):print(query)defhandle_on_execute(query):print(query)df.data_fabric(query="",query_tool_title="Query Tool",data_grid_title="Results",data_visualization_title="Data Visualization",databases=database_list,tables=table_list,columns=column_list,error="",show_execute=True,on_database_change=handle_on_database_change,on_table_change=handle_on_table_change,on_generate_query=handle_on_generate_query,on_copy_query=handle_on_copy_query,on_execute_query=handle_on_execute,data=data,show_data_grid=True,show_charts=True)