Saravanan666/pypi-org huggingface dataset:
Package: devmail
DeveloperMail python wrapper based on official documentationhttps://www.developermail.com/api/v1/InstallpipinstalldevmailUsageCreating mailbox>>>fromdevmailimportDevMail>>>mailbox=DevMail()>>>mailbox.create(){'username':'z-werhj4','token':'B1DC9D1D6C9C1519728C4056F545EA0288946D54'}Create new token>>>mailbox.newtoken(){'username':'z-werhj4','token':'DC7F2CD7C195E66F637123A34D3D2A57FF0A18A0'}Get message idsIn this example, I send two message toz-werhj4@developermail.comfrom my real email.>>>mailbox.getmailids()['637553086207559378','637553086352838482']The email id is a timestamp.Get messages from list of id>>>mails=mailbox.getmails(['637553086207559378','637553086352838482'])>>>len(mails)2>>>mails[0]{'key':'637553086207559378','value':'DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.co.id; s=s2048; t=1619711818; bh=ffhpeYB/ObY5N0hGrQtyxG3MKCJQBhB7v8HKMpfmOjU=; h=Date:From:Reply-To:To:Subject:References:From:Subject:Reply-To; b=E2 TRUNCATED}It will return list of{'key': mail id, 'value': raw mail content}. Ifmailidslist is not supplied, it will return all email available aftermailbox.getmailids().Get a message>>>mail=mailbox.getmail('637553086207559378',raw=True)>>>mail'DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.co.id; s=s2048; t=1619711818; bh=ffhpeYB/ObY5N0hGrQtyxG3MKCJQBhB7v8HKMpfmOjU=; h=Date:From:Reply-To:To:Subject:References:From:Subject:Reply-To; b=E20 TRUNCATED'Note:rawparameter is not useful now. I will improve the email parsing it in the future.Delete a message>>>mailbox.delmail('637553086207559378'){'success':True,'errors':None,'result':True}>>>mailbox.getmail('637553086207559378',raw=True)# return None>>>mailbox.getmailids()['637553086352838482']TBD:Empty mailboxConvert timestamp to Date TimeSave credentialsRefactor code
Package: devmem
Python DevMemThis is designed primarily for use with accessing /dev/mem on OMAP platforms.
It should work on other platforms and work to mmap() files rather then just
/dev/mem, but these use cases aren't well tested.All file accesses are aligned to DevMem.word bytes, which is 4 bytes on ARM
platforms to avoid data abort faults when accessing peripheral registers.UsageUsage: devmem.py [options]

Options:
  -h, --help            show this help message and exit
  -r ADDR, --read=ADDR  read a value
  -w ADDR VALUE, --write=ADDR VALUE
						write a value
  -n NUM, --num=NUM     number of words to read
  -s WORD_SIZE, --word-size=WORD_SIZE
						size of word when displayed
  -m FILE, --mmap=FILE  file to open with mmap()
  -v                    provide more information regarding operation
  -d                    provide debugging informationSpeedInitial testing on a BeagleBoard-xM (Cortex-A8 in a TI DM3730) shows that
starting up the python interpreter is pretty slow:# time (echo | python)

real    0m0.859s
user    0m0.750s
sys     0m0.102s

# time python ./pydevmem.py -r 0x4830a204 -n 8
0x4830a204:   1b89102f  00000000  00000000  000000f0
0x4830a214:   cafeb891  0c030016  015739eb  1ff00000

real    0m1.109s
user    0m0.977s
sys     0m0.133s

# time python -S ./pydevmem.py -r 0x4830a204 -n 8
0x4830a204:   1b89102f  00000000  00000000  000000f0
0x4830a214:   cafeb891  0c030016  015739eb  1ff00000

real    0m0.659s
user    0m0.602s
sys     0m0.047s

# time python -S ./pydevmem.pyc -r 0x4830a204 -n 8
0x4830a204:   1b89102f  00000000  00000000  000000f0
0x4830a214:   cafeb891  0c030016  015739eb  1ff00000

real    0m0.647s
user    0m0.508s
sys     0m0.133sSystem information for those tests:Linux omap 3.0.6-x3 #1 SMP Wed Oct 5 07:19:24 UTC 2011 armv7l GNU/Linux

python              2.7.2-7ubuntu2
python-configobj    4.7.2+ds-3
python-minimal      2.7.2-7ubuntu2
python2.7           2.7.2-5ubuntu1
python2.7-minimal   2.7.2-5ubuntu1Something needs to be sped up to make python start-up in a reasonable amount
of time.
Package: devnet
DevnetUnofficial pytorch implementation of deviation network for table data.paper of deviation networkhttps://arxiv.org/abs/1911.08623original keras implementation by authors of the paper is herehttps://github.com/GuansongPang/deviation-networkSetupinstall poetry followed byhttps://python-poetry.org/docs/master/#installing-with-the-official-installerinstall dependenciespoetry installUsagetrain model with train/eval.csv under datarootpoetry python src/main.py dataroot=data/debug epochs=10 eval_interval=10predict score and output resultpoetry python src/main.py predict_only=true predict_input=data/debug/eval.csv model_path=data/debug/models/example.pth
Package: devnetgen
dev-netgenПлагин для автоматической генерации CRUD'а и файла контроллера для выбранной сущности. Включает генерацию валидатора с правилами.NotNull().NotEmpty()для полей типаstringиIsInEnum()для полей типа перечислений сущности.Сгенерированный CRUD содержит комментарии, взятые из summaries сущности и её полей.Есть поддержка для legacy-проектов, в контроллерах которых используютсяControllerHelper.GetResultWithErrorAsync()ВозможностиСоздаёт Vm и Dto подмодели для каждого навигационного свойства, если в после открывающегося тэгаsummaryсущности стоит'@'/// <summary>@/// Навигационное свойство - список соглашений/// </summary>publicList<Agreement>Agreements{get;}=new();Не включает поля, помеченные знаком'!'у сущности, в результирующие Vm/Dto/// <summary>!/// Текстовое поле с информацией, которое не попадет в Vm/// </summary>publicstringData{get;set;}После генерации отметки очищаютсяУстановкаУстановить python пакетpip install devnetgenУстановить плагин в IDEУстановить плагинLivePluginby Dmitry Kandalov (иногда встаёт с 2 попытки )Добавить новый пользовательский Kotlin плагин и скопировать в него код изplugin.ktsАктивировать пользовательский плагинИспользованиеИз IDEПКМ по сущности -NetGen: CRUD->Create CRUD/Create CRUD: legacy controllerЧерез консольdev-netgen [path/to/entity.cs] --legacy-controller
Package: devnet-ssh
Devnet-SSHFast and simple SSH library for interactive sessions based on Paramiko.Supported PlatformsCurrently tested on:Cisco switches (IOS,IOS-XE,Nexus)Cisco routers (IOS,IOS-XR,IOS-XE)HP (Model 5920AF)Huawei (Model NE40)Linux ServersInstallpipinstalldevnet-sshGetting startedEstablishing connectionfrom devnet_ssh import ssh_connect

session = SSHConnect(host="192.168.213.230",user="cisco",pwd="cisco")Executing commandsconsole = session.send_command("show ip int brief")
for line in console:
    print(line)Interface                  IP-Address      OK? Method Status                Protocol
Embedded-Service-Engine0/0 unassigned      YES NVRAM  administratively down down
GigabitEthernet0/0         192.168.213.230 YES NVRAM  up                    up
GigabitEthernet0/1         unassigned      YES NVRAM  administratively down down
GigabitEthernet0/1.1       unassigned      YES unset  administratively down down
GigabitEthernet0/1.75      10.71.89.1      YES NVRAM  administratively down down
GigabitEthernet0/1.626     10.33.62.121    YES NVRAM  administratively down down
GigabitEthernet0/1.777     192.168.1.1     YES NVRAM  administratively down down
GigabitEthernet0/1.918     10.30.83.161    YES manual administratively down down
GigabitEthernet0/1.990     10.13.87.1      YES NVRAM  administratively down downConnecting to a different vendorYou can choose between supported vendors:SSHConnect.CISCOSSHConnect.HPSSHConnect.HUAWEIos_type is associated with device prompt (# for Cisco, > for HP/Huawei) and it sends the appropiate commands for disable scrolling after establishing connection.from devnet_ssh import SSHConnect

session = SSHConnect(host="192.168.213.231",user="huawei",pwd="huawei",os_type=SSHConnect.HUAWEI)console = session.send_command("display ip routing-table")
for line in console:
    print(line)Route Flags: R - relay, D - download to fib, T - to vpn-instance, B - black hole route
------------------------------------------------------------------------------
Routing Table : _public_
Destinations : 8        Routes : 8
Destination/Mask    Proto   Pre  Cost        Flags NextHop         Interface
0.0.0.0/0   Static  1    0             RD  192.168.213.225 GigabitEthernet0/3/23
127.0.0.0/8   Direct  0    0             D   127.0.0.1       InLoopBack0
127.0.0.1/32  Direct  0    0             D   127.0.0.1       InLoopBack0
127.255.255.255/32  Direct  0    0             D   127.0.0.1       InLoopBack0
192.168.213.224/27  Direct  0    0             D   192.168.213.231 GigabitEthernet0/3/23
192.168.213.231/32  Direct  0    0             D   127.0.0.1       GigabitEthernet0/3/23
192.168.213.255/32  Direct  0    0             D   127.0.0.1       GigabitEthernet0/3/23
255.255.255.255/32  Direct  0    0             D   127.0.0.1       InLoopBack0AuthorðŸ‘¤Gustavo SantiagoGithub:@jcdaniel14
Package: devnull
dev/nullNothing to see here.LicenseCopyright 2021 digitalr00tsLicensed 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 athttp://www.apache.org/licenses/LICENSE-2.0Unless 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.
Package: devnullaas
py-devnullaasis a python library to discard data throughhttps://devnull-as-a-service.comand other DAAS endpoints.Installationpip install devnullaasUsagepy-devnullaas providesNullStream, a file-like object to which you can writestrings orbytes...es. Whatever the plural ofbytesis.fromdevnullaasimportNullStreamdevnull=NullStream()password='hunter2'devnull.write(password)delpassword# once it has been discarded remotely,# we can discard our local copyEndpoint configurationBy default,NullStreamuseshttps://devnull-as-a-service.com/dev/null, but
you can specify any DAAS-compliant endpoint in the constructor:devnull=NullStream(endpoint="http://devnull.local/dev/null")devnull.write('foobar')⚠️Warning: Discarding data with an untrusted endpoint may result in
compromised data. Usage with untrusted endpoints is not recommended.Offline usageNullStreamcan also be used offline by passingNoneas the endpoint. While
much faster, this does not ensure safe discarding of data and should only be
used in environments where no DAAS can be reached.devnull=NullStream(endpoint=None)devnull.write('foobar')# has it truly been discarded? 🤷 I dunnoDisclaimerWhile fully functional, this is a joke, and should not be taken seriously.Pleasedo not use this.Pleaseespecially do not use this in production. I
mean, if something like this somehow makes its way into production you have some
bigger problems to fix, but still.
Package: devoe
devoeDevoe is a Python ETL framework allowing you to create pipelines and customize
your ETL process as you wish.FeaturesInstallation$ pip install devoeHow to useBelow is the example of simple ETL task to extract data from one table to
another.importdevoeasdeselect=de.Select(database='billing',file='select.sql')table=de.Table(database='dwh',schema='billing',name='invoices')pipeline=de.Pipeline(select,table)pipeline.run()
Package: devoir
When editing a LaTeX file, I want the file being edited withvim, the compiled file displayed using a pdf viewer, and latex being run whenever something changes, usinglatexmk. But wait, there is more.I often start a LaTeX document by copying an existing one, as a template.The pdf file may or may not exist when I start working: if I have already
been working on this file before, the pdf file exists; if not, it does not
exists, and my pdf viewer won’t start on a non-existing file.This program aims to automate all this process. I built it to process LaTeX
files, but it should work with other files too.What’s new?Seechangelog.Download and installSee the end of list for a (quick and dirty) Debian package.From sources:Download:https://pypi.python.org/pypi/devoirInstall (in avirtualenv, if you do not want to mess with your distribution installation system):python3 setup.py installFrom pip:pip install devoirQuick and dirty Debian (and Ubuntu?) packageThis requiresstdebto be installed:python3 setup.py --command-packages=stdeb.command bdist_deb
sudo dpkg -i deb_dist/devoir-<VERSION>_all.debDocumentationThe compiled documentation is available onreadthedocsTo compile it from source, download and run:cd doc && make html
Package: devolearn
ContentsExample notebooksSegmenting the C. elegans embryoGenerating synthetic images of embryos with a GANPredicting populations of cells within the C. elegans embryoContributing to DevoLearnContact usInstallationpipinstalldevolearnExample notebooksExtracting centroid maps and making 3d centroid modelsSegmenting the C. elegans embryoImporting the modelfromdevolearnimportembryo_segmentorsegmentor=embryo_segmentor()Running the model on an image and viewing the predictionseg_pred=segmentor.predict(image_path="sample_data/images/seg_sample.jpg")plt.imshow(seg_pred)plt.show()Running the model on a video and saving the predictions into a folderfilenames=segmentor.predict_from_video(video_path="sample_data/videos/seg_sample.mov",centroid_mode=False,save_folder="preds")Finding the centroids of the segmented featuresseg_pred,centroids=segmentor.predict(image_path="sample_data/images/seg_sample.jpg",centroid_mode=True)plt.imshow(seg_pred)plt.show()Saving the centroids from each frame into a CSVdf=segmentor.predict_from_video(video_path="sample_data/videos/seg_sample.mov",centroid_mode=True,save_folder="preds")df.to_csv("centroids.csv")Generating synthetic images of embryos with a Pre-trained GANImporting the modelfromdevolearnimportGenerator,embryo_generator_modelgenerator=embryo_generator_model()Generating a picture and viewing it withmatplotlibgen_image=generator.generate()plt.imshow(gen_image)plt.show()Generating n images and saving them intofoldernamewith a custom sizegenerator.generate_n_images(n=5,foldername="generated_images",image_size=(700,500))Predicting populations of cells within the C. elegans embryoImporting the population model for inferencesfromdevolearnimportlineage_population_modelLoading a model instance to be used to estimate lineage populations of embryos from videos/photos.model=lineage_population_model(mode="cpu")Making a prediction from an imageprint(model.predict(image_path="sample_data/images/embryo_sample.png"))Making predictions from a video and saving the predictions into a CSV fileresults=model.predict_from_video(video_path="sample_data/videos/embryo_timelapse.mov",save_csv=True,csv_name="video_preds.csv",ignore_first_n_frames=10,ignore_last_n_frames=10)Plotting the model's predictions from a videoplot=model.create_population_plot_from_video(video_path="sample_data/videos/embryo_timelapse.mov",save_plot=True,plot_name="plot.png",ignore_last_n_frames=0)plot.show()Links to DatasetsModelData sourceSegmenting the C. elegans embryo3DMMS: robust 3D Membrane Morphological Segmentation of C. elegans embryoCell lineage population prediction + embryo GANEPIC datasetAuthors/maintainers:Mayukh DebUjjwal SinghDr. Bradly AliceaFeel free to join ourSlack workspace!
Package: devolo-plc-api
devolo PLC APIThis project implements parts of the devolo PLC devices API in Python. Communication to the devices is formatted in protobuf and the IDLs were kindly provided by devolo. Nevertheless, we might miss updates to the IDLs. If you discover a breakage, please feel free toreport an issue.System requirementsDefining the system requirements with exact versions typically is difficult. But there is a tested environment:LinuxPython 3.8.12pip 20.2.4httpx 0.21.0protobuf 3.17.3segno 1.5.2zeroconf 0.70.0Other versions and even other operating systems might work. Feel free to tell us about your experience. If you want to run our unit tests, you also need:pytest 6.2.5pytest-asyncio 0.15.1pytest-httpx 0.18VersioningIn our versioning we followSemantic Versioning.Installing for usageThe Python Package Index takes care for you. Just use pip.pipinstalldevolo-plc-apiInstalling for developmentFirst, you need to get the sources.gitclonegit@github.com:2Fake/devolo_plc_api.gitThen you need to take care of the requirements.cddevolo_plc_api
pythonsetup.pyinstallIf you want to run out tests, install the extra requirements and start pytest.pipinstall-e.[test]pytestUsageAll features we currently support on device basis are shown in our examples. If you want to use the package asynchronously, please checkexample_async.py. If you want to use it synchronously, please checkexample_sync.py.If you don't know the IP addresses of your devices, you can discover them. You will get a dictionary with the device's serial number as key. The connections to the devices will be already established, but you will have to take about disconnecting.fromdevolo_plc_api.networkimportasync_discover_networkdevices=awaitasync_discover_network()awaitasyncio.gather(*[device.async_connect()fordevicein_devices.values()])# Do your magicawaitasyncio.gather(*[device.async_disconnect()fordeviceindevices.values()])Or in a synchronous setup:fromdevolo_plc_api.networkimportdiscover_networkdevices=discover_network()fordevicein_devices.values():device.connect()# Do your magic[device.disconnect()fordeviceindevices.values()]Supported deviceThe following devolo devices were queried with at least one call to verify functionality:Magic 2 WiFi nextMagic 2 WiFi 2-1Magic 2 LAN tripleMagic 2 DinRailMagic 2 LAN 1-1Magic 1 WiFi miniMagic 1 WiFi 2-1Magic 1 LAN 1-1Repeater 5400Repeater 3000Repeater 1200Repeater ac+Repeater acdLAN 1200+ WiFi acdLAN 550+ WifidLAN 550 WiFiHowever, other devices might work, some might have a limited functionality. Also firmware version will matter. If you discover something weird,we want to know.
Package: devolve
# FLEX[![Build Status](https://travis-ci.org/simpleenergy/devolve.png)](https://travis-ci.org/simpleenergy/devolve)
[![Documentation Status](https://readthedocs.org/projects/devolve-swagger/badge/?version=latest)](https://readthedocs.org/projects/devolve-swagger/?badge=latest)
[![PyPi version](https://pypip.in/v/devolve/badge.png)](https://pypi.python.org/pypi/devolve)
[![PyPi downloads](https://pypip.in/d/devolve/badge.png)](https://pypi.python.org/pypi/devolve)[Documentation on ReadTheDocs](http://devolve.readthedocs.org/en/latest/)Devolve is a callback registry.  Callable objects can be registered against a
set of keys.  The registry can then be used to delegate a single call across
all of the registered callables and to gather all of the returned key/value
pairs into a single mapping.## FeaturesPrevents duplicate registration of the same key.Validation that a callable did not return any extra keys.Validation that a callable returned all of the keys it was registered for.
Package: devo-mlmodelmanager
Devo Python ML Model Manager ClientTheML Model Manageris a service to register machine learning models onDevoplatform. These models can be used through the
query engine using themlevalmodel(...)operation or through theFLOWcorrelation engine
including in the context theMlSingleModelEvalunit.devo-mlmodelmanagerprovides an easy-to-use client for Devo’s ML Model
Manager. Built on top of the widely usedRequestslibrary exposes a
simplified interface for model management, allowing you to focus in the machine
learning workflows and not worry about the integration with Devo platform.A simple examplefromdevo_ml.modelmanagerimportcreate_client_from_tokenurl="<model-manager-server-url>"token="<valid-access-token>"client=create_client_from_token(url,token)client.add_model("pokemon_onnx_regression",# model name"ONNX",# model engine"~/models/pokemon.onnx",# model filedescription="A funny Pokemon prediction")RequirementsPython 3.7+Install$pipinstalldevo-mlmodelmanagerDocumentationExplore thedocumentationto learn more.
Package: devon
===============================devon===============================.. image:: https://img.shields.io/pypi/v/devon.svg:target: https://pypi.python.org/pypi/devon.. image:: https://img.shields.io/travis/muminoff/devon.svg:target: https://travis-ci.org/muminoff/devon.. image:: https://readthedocs.org/projects/devon/badge/?version=latest:target: https://readthedocs.org/projects/devon/?badge=latest:alt: Documentation StatusUzbek NLP library* Free software: MIT license* Documentation: https://devon.readthedocs.org.Features--------* Segmentize words* StemmingContributors (alphabetical order)---------Hikmat Abdoollayev (@ahikmat85)Miradham Kamilov (@mkamilov)Sardor Muminov (@muminoff)Ulughbek Muslimov (@ulughbekula)=======History=======0.1.0 (ll)0.1.1 (Stemming)------------------* First release on PyPI.* Second release.
Package: devops-cli-abcversion
devops-cliIt is a dummy tool for testing the upload to gofile.io. But hopefully we can publish it with real usage.To know gofile:https://gofile.io/welcomeAn example to use the tool:$ devops-cli -i myfile.txt --verbose
2021-01-24 12:41:42,693 - INFO - start uploading file: myfile.txt to server: https://srv-store4.gofile.io
2021-01-24 12:41:42,695 - DEBUG - Starting new HTTPS connection (1): srv-store4.gofile.io:443
2021-01-24 12:41:44,911 - DEBUG - https://srv-store4.gofile.io:443 "POST /uploadFile HTTP/1.1" 200 137
2021-01-24 12:41:44,914 - DEBUG - This is the request url: https://srv-store4.gofile.io/uploadFile
2021-01-24 12:41:44,915 - DEBUG - This is the response status code: 200
2021-01-24 12:41:44,915 - DEBUG - This is the response header: {'Access-Control-Allow-Origin': '*', 'Content-Length': '137', 'Content-Type': 'application/json; charset=utf-8', 'Date': 'Sun, 24 Jan 2021 01:41:44 GMT', 'Etag': 'W/"89-mfbMaqrQAo1Bc2RL0aGmuM/fzys"', 'Strict-Transport-Security': 'max-age=31536000; includeSubDomains; preload', 'X-Content-Type-Options': 'nosniff', 'X-Frame-Options': 'DENY', 'X-Powered-By': 'Express', 'X-Xss-Protection': '1; mode=block'}
2021-01-24 12:41:44,915 - DEBUG - This is the response content b'{"status":"ok","data":{"code":"YpMEDT","adminCode":"LGK4xqfNl6xByIoGk3bn","file":{"name":"myfile.txt","mimetype":"text/plain","size":0}}}' 
File Download Link: https://gofile.io/d/YpMEDT
2021-01-24 12:41:44,916 - INFO - The file download link is https://gofile.io/d/YpMEDTpre-requisitePython 3IDEVS Code or IntelliJ etcInstallpippip install .Editable installpip install -e .
Package: devops-cli-ericli
devops-cliIt is a dummy tool for testing the upload to gofile.io. But hopefully we can publish it with real usage.To know gofile:https://gofile.io/welcomeAn example to use the tool:$ devops-cli -i myfile.txt --verbose
2021-01-24 12:41:42,693 - INFO - start uploading file: myfile.txt to server: https://srv-store4.gofile.io
2021-01-24 12:41:42,695 - DEBUG - Starting new HTTPS connection (1): srv-store4.gofile.io:443
2021-01-24 12:41:44,911 - DEBUG - https://srv-store4.gofile.io:443 "POST /uploadFile HTTP/1.1" 200 137
2021-01-24 12:41:44,914 - DEBUG - This is the request url: https://srv-store4.gofile.io/uploadFile
2021-01-24 12:41:44,915 - DEBUG - This is the response status code: 200
2021-01-24 12:41:44,915 - DEBUG - This is the response header: {'Access-Control-Allow-Origin': '*', 'Content-Length': '137', 'Content-Type': 'application/json; charset=utf-8', 'Date': 'Sun, 24 Jan 2021 01:41:44 GMT', 'Etag': 'W/"89-mfbMaqrQAo1Bc2RL0aGmuM/fzys"', 'Strict-Transport-Security': 'max-age=31536000; includeSubDomains; preload', 'X-Content-Type-Options': 'nosniff', 'X-Frame-Options': 'DENY', 'X-Powered-By': 'Express', 'X-Xss-Protection': '1; mode=block'}
2021-01-24 12:41:44,915 - DEBUG - This is the response content b'{"status":"ok","data":{"code":"YpMEDT","adminCode":"LGK4xqfNl6xByIoGk3bn","file":{"name":"myfile.txt","mimetype":"text/plain","size":0}}}' 
File Download Link: https://gofile.io/d/YpMEDT
2021-01-24 12:41:44,916 - INFO - The file download link is https://gofile.io/d/YpMEDTpre-requisitePython 3IDEVS Code or IntelliJ etcInstallpippip install .Editable installpip install -e .