Saravanan666/pypi-org huggingface dataset:
Package: zdiab-tools
zdiab-toolszdiab-tools is a Python library for preprocessing and automating functions for Rasa NLUInstallationUse the package managerpipto install zdiab-tools.pipinstallzdiab-toolsUsagefromzdiab_toolsimportAutomate### returns 'slot'Automate.add_slot(name_form,list_slots)### returns 'conf_file'Automate.conf_file(path,language='fr',policies=False):### returns 'pickle file'Automate.defpickle_action(path):Function######################################### Fonction pour ajouter avec rasa YAML#######################################defadd_rasa_file(yaml_string,path):defadd_intent(name,list_action):defadd_forms(name,list_slots):defadd_slot(name_form,list_slots):defadd_responses(list_name,list_action):defadd_file(path,str):####################### Fonction ALTER !!!#####################defalter_intent(name,list_action):defalter_slot(name_form,list_slots):defalter_forms(name,list_slots):defalter_responses(list_name,list_action):defalter_file(path,li,required=False):############################################## Fonction pour AJOUTER NLU DATA ######################################################defadd_nluData(name_intent,list_exemple,head=False):############################################## Fonction pour Alter Config FILE #####################################################defconf_file(path,language='fr',policies=False):############################################## Fonction Create and Save Action FILE ################################################defpickle_action(path):defAction_file(path,filename="test.pkl"):ContributingPull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.Please make sure to update tests as appropriate.LicenseMIT
Package: zdm-client-py
Zerynth ZDM Client Python LibraryA python library that emulates a device for the  ZDM (Zerynth Device Manager).
The library permits: to connect to the ZDM, to send data and to receive jobs.InstallationThe latest stable versionis available on PyPI. Either addzdm-client-pyto yourrequirements.txtfile or install with pip:pip install zdm-client-pyUsageFollow the guidehereLogin to the ZDM platform (by using theZDM Webor theZDM CLI).Create a deviceGenerate the credentials for the device (filezdevice.json)Create a new Python project with your preferred editor and paste thezdevice.jsonfile inside it.Create a Python filezdm_basic.pyand paste this simple code into it:importzdmimportrandomimporttimedefpub_temp_hum():# this function publish into the tag weather two random values: the temperature and the humiditytag='weather'temp=random.randint(19,38)hum=random.randint(50,70)payload={'temp':temp,'hum':hum}device.publish(payload,tag)print('Published: ',payload)# connect to the ZDM using credentials in zdevice.json filedevice=zdm.ZDMClient()device.connect()# infinite loopwhileTrue:pub_temp_hum()time.sleep(5)In the example, the Client connects to the ZDM with the username e password.
Then it sends an infinite stream of messages onto three different tags ("bathroom", "bedroom", "living room") with a random temperature.You can find other examples in thedata/examplesfolder.=======
History1.0.1 (2020-12-02)Fix import pyJwtFix TempFile on Windows1.0.0 (2020-07-24)Official release of ZDM (Zerynth r2.6.0)Added conditions and removed events.Added requests_timestamp() methodRenamed publish_data() into publish().Fix job args after expected status received.Renamed jobs parameters into jobs_dict of the ZDMClient.Parameters of publish(payload, tag) methods inverted. First parameter is payload and second is tag.0.2.0 (2020-06-16)Added Conditions and removed the events.removed wait_for_publish()0.1.0 (2020-05-14)added wait_for_publish() to the published msg in order to guarantee that the message is sent to the ZDMadded the send_event() method for sending events to the ZDM.0.0.11 (2020-05-04)fix json load arguments of job0.0.10 (2020-04-27)Changed default endpoint to "mqtt.zdm.zerynth.com"Fix args of Jobs as ./json0.0.7 (2020-04-09)modified examplescopy examples in /usr/share/zdm/examples folder0.0.6 (2020-03-30)Fix error in _handle_dn_msg decode msg to str with python3.50.0.5 (2020-03-29)Fix error manifest with empty jobs.0.0.4 (2020-03-29)New functionality:Verbose parameter to ZdmClient class0.0.3 (2020-03-27)Release with support Python >3Create ZDmClientPublish messages to ZDMReceived Jobs from ZDM
Package: zdoom-textures-tool
Zdoom-TexturesWriterSmall tool to write a valid textures text file for the zdoom engine, inteded to be used for automated scripts.InstallationpipYou can simply use the pip commandpip install zd-textures-toolThen you can import in your script whit:import zd-textures-toolUseHere a small example, the script itself has some more examples inside of it.import zdtwriter # zdoom-textures-writer

# Make a new texture block
wall = TextureData("WALLBRICK",type = "walltexture", optional = True, scaleY = 1.2)

# Make a path block
p = PatchData("textures/brick.png")

# Add the patch in the texture
wall.add_patch(p)

# Show on screen a texture block.
print(wall.write())manualall of the code is inside ofzdtwriter.pyin thesrcfolder, you can get the file and manually import it in your script.ContentThe script define 2 classes, 3 functions, 1 global value and some example code.ClassesPatchDataContain all properties for a patch and can write a valid patch block.TextureDataContain all properties of a texture block, patches can be added whit add_patch and can write a valid texture block.Methodswrite_textures(blocks)Will write a list of TextureData into a single string, basically just execute a loop and handle errors.read_textures(parse)Will read a string and parse into TextureData and TexturePatch, currently it work but can be improved.If you want to read a file you need to use open() and read() first, this method require a string to parse, not a file path.to_sprite_name(name, index, rotation)Will convert a string into a valid Sprite name, can be usefull for rotation sprites and sprites that uses more than 25 frames for animations. (later i will document more)Globalscompact_mode = Trueif enabled all default properties are ignored when writing patches and textures, the output can become smaller.if disabled all default properties will be written.
Package: zdpapi-file
zdpapi_filePython操作文件和文件夹的便捷组件库项目地址：https://github.com/zhangdapeng520/zdpapi_file一、概述1.1 功能查看文件夹占用磁盘大小二、快速入门2.1 查看文件夹占用磁盘大小fromzdpapi_fileimportDirectorydeftest_disk_usage(path):dir=Directory(path)print(dir.disk_usage())if__name__=="__main__":test_disk_usage("D:\\BaiduNetdiskWorkspace\\文档")
Package: zdpapi-router
zdpapi_router快速开发后端API的路由组件，支持自动生成CRUD接口说明：此项目基于zdpapi和zdpapi_mysql构建，如果使用有困难的同学，可以先去看这两个框架zdpapi项目地址：https://github.com/zhangdapeng520/zdpapizdpapi_mysql项目地址：https://github.com/zhangdapeng520/zdpapi_mysql本项目地址：https://github.com/zhangdapeng520/zdpapi_router功能：自动生成新增单条数据路由自动生成新增多条数据路由自动生成删除单条数据路由自动生成删除多条数据路由自动生成修改单条数据路由自动生成修改多条数据路由自动生成查询单条数据路由自动生成查询多条数据路由自动生成分页查询多条数据路由一、快速入门1.1 安装pipinstallzdpapi_router1.2 说明如果您要直接使用示例代码，一定要确保本地安装了MySQL数据库，且创建了名为test的数据库。同时在test数据库中存在user表，该表有id和name两个字段。如果您学习过我的另一个项目zdpapi_mysql，则直接运行里面的示例代码即可。1.3 入门案例将下面的代码复制到main.py中fromzdpapi_routerimportCRUDRouterfromzdpapiimportZApifrompydanticimportBaseModelapp=ZApi()classUserSchema(BaseModel):id:int# 必须包含ID，批量更新的时候要用到name:strmysql_config={"host":'127.0.0.1',"port":3306,"user":'root',"password":'root',"db":'test'}router=CRUDRouter(mysql_config=mysql_config,table_name="user",columns=["name"],chinese_name="用户",schema=UserSchema)app=router.register(app)if__name__=='__main__':importuvicornuvicorn.run("main:app",reload=True)运行pythonmain.py访问：http://127.0.0.1:8000/docs
Package: zdpapi-ssh
zdpapi_shhpython实现ssh操作，基于paramiko二次封装安装方式：pipinstallzdpapi_ssh一、快速入门1.1 建立连接paramiko方式importparamiko# 建立一个sshclient对象ssh=paramiko.SSHClient()# 允许将信任的主机自动加入到host_allow 列表，此方法必须放在connect方法的前面ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())# 调用connect方法连接服务器ssh.connect(hostname='192.168.18.11',port=22,username='zhangdapeng',password='zhangdapeng')# 执行命令stdin,stdout,stderr=ssh.exec_command('df -hl')# 结果放到stdout中，如果有错误将放到stderr中print(stdout.read().decode())# 关闭连接ssh.close()zdpapi_shh方式fromzdpapi_sshimportSSHssh=SSH(hostname='192.168.18.11',port=22,username='zhangdapeng',password='zhangdapeng')ssh.execute('df -hl')1.2 建立多个ssh连接方法1是传统的连接服务器、执行命令、关闭的一个操作，有时候需要登录上服务器执行多个操作，比如执行命令、上传/下载文件，方法1则无法实现，可以通过如下方式来操作paramiko的方式importparamiko# 实例化一个transport对象trans=paramiko.Transport(('192.168.18.11',22))# 建立连接trans.connect(username='zhangdapeng',password='zhangdapeng')# 将sshclient的对象的transport指定为以上的transssh=paramiko.SSHClient()ssh._transport=trans# 执行命令，和传统方法一样stdin,stdout,stderr=ssh.exec_command('df -hl')print(stdout.read().decode())# 关闭连接trans.close()zdpapi_ssh的方式fromzdpapi_sshimportSSHssh=SSH(hostname='192.168.18.11',port=22,username='zhangdapeng',password='zhangdapeng')ssh.execute_trans('192.168.18.11','df -hl')二、FTP操作2.1 上传和下载paramiko实现importparamiko# 实例化一个trans对象# 实例化一个transport对象trans=paramiko.Transport(('192.168.18.11',22))# 建立连接trans.connect(username='zhangdapeng',password='zhangdapeng')# 实例化一个 sftp对象,指定连接的通道sftp=paramiko.SFTPClient.from_transport(trans)# 发送文件sftp.put(localpath='README.md',remotepath='/home/zhangdapeng/README.md')# 下载文件# sftp.get(remotepath, localpath)trans.close()zdpapi_ssh实现fromzdpapi_sshimportSSHssh=SSH(hostname='192.168.18.11',port=22,username='zhangdapeng',password='zhangdapeng')# 上传ssh.ftp_upload('192.168.18.11','README.md','/home/zhangdapeng/README1.md')# 下载ssh.ftp_download('192.168.18.11','README1.md','/home/zhangdapeng/README1.md')
Package: zdppy-elasticsearch
zdppy_elasticsearch库使用项目地址
GitHub开源地址：https://github.com/zhangdapeng520/zdppy_elasticsearch主要看dev分支的代码。版本历史2023/01/30 v1.0.1 使用zdppy_requests完全重构项目快速入门安装pipinstallzdppy_elasticsearch创建Mappingimportzdppy_elasticsearchaszees=ze.ElasticSearch(password="zhangdapeng520")body={"mappings":{"properties":{"name":{"type":"text"},"price":{"type":"double"},"author":{"type":"text"},"pub_date":{"type":"date"}}}}index="books"print(es.add_mapping(index,body))查询Mappingimportzdppy_elasticsearchaszees=ze.ElasticSearch(password="zhangdapeng520")index="books"print(es.get_mapping(index))删除Mappingimportzdppy_elasticsearchaszees=ze.ElasticSearch(password="zhangdapeng520")index="books"print(es.delete_index(index))根据ID新增数据importzdppy_elasticsearchaszees=ze.ElasticSearch(password="zhangdapeng520")index="books"did=1body={"name":"《JavaScript全栈开发实战》","author":"张大鹏","price":123,"pub_date":"2019-12-12"}print(es.add(index,did,body))根据ID查询图书importzdppy_elasticsearchaszees=ze.ElasticSearch(password="zhangdapeng520")index="books"did=1print(es.get(index,did))print(es.get(index,did,is_source=True))根据ID删除图书importzdppy_elasticsearchaszees=ze.ElasticSearch(password="zhangdapeng520")index="books"did=1print(es.delete(index,did))print(es.get(index,did,is_source=True))批量插入数据importzdppy_elasticsearchaszees=ze.ElasticSearch(password="zhangdapeng520")index="books"data=[{"index":{"_index":"books","_type":"_doc","_id":"1"}},{"name":"《JavaScript全栈开发实战》","author":"张大鹏","price":123,"pub_date":"2019-12-12"},{"index":{"_index":"books","_type":"_doc","_id":"2"}},{"name":"《React学习手册》","author":"张大鹏","price":122,"pub_date":"2019-12-12"},{"index":{"_index":"books","_type":"_doc","_id":"3",}},{"name":"《精通Go语言》","price":128,"pub_date":"2019-12-12"}]data1=[{"name":"《JavaScript全栈开发实战》","author":"张大鹏","price":123,"pub_date":"2019-12-12"},{"name":"《React学习手册》","author":"张大鹏","price":122,"pub_date":"2019-12-12"},{"name":"《精通Go语言》","price":128,"pub_date":"2019-12-12"}]# 自定义索引和和IDprint(es.add_many(data))# 自动生成IDprint(es.add_many(data1,index=index))搜索所有图书importzdppy_elasticsearchaszees=ze.ElasticSearch(password="zhangdapeng520")index="books"# 搜索所有图书print(es.search(index))搜索特定价格范围的图书importzdppy_elasticsearchaszees=ze.ElasticSearch(password="zhangdapeng520")index="books"query={"query":{"range":{"price":{"gt":123,"lte":130}}}}# 搜索所有图书print(es.search(index,query))
Package: zdppy-log
zdppy_logpython的日志库项目地址：https://github.com/zhangdapeng520/zdppy_log版本历史v0.1.9 新增：自动记录动态参数和字典参数v0.2.0 新增：代码优化和示例丰富安装方式pipinstallzdppy_log使用方式fromzdppy_logimportLoglog1=Log("logs/zdppy/zdppy_log1.log")@log1.catch()defmy_function(x,y,z):# An error? It's caught anyway!return1/(x+y+z)my_function(0,0,0)# logger.add("out.log", backtrace=True, diagnose=True)  # Caution, may leak sensitive data in prodlog2=Log("logs/zdppy/zdppy_log2.log")log2.debug("log2日志")log2.info("log2日志")log2.warning("log2日志")log2.error("log2日志")log2.critical("log2日志")log3=Log("logs/zdppy/zdppy_log3.log",debug=False)log3.debug("log3日志")log3.info("log3日志")log3.warning("log3日志")log3.error("log3日志")log3.critical("log3日志")版本历史v0.1.2 2022/2/19 增加debug模式；默认json日志为Falsev0.1.3 2022/3/4 增加记录日志文件，日志方法，日志行数的功能v0.1.4 2022/3/5 移除第三方依赖v0.1.5 2022/3/5 增加控制是否开启日志全路径的开关量v0.1.6 2022/3/16 增加只输出到控制台的开关量及底层代码优化v0.1.7 2022/3/16 BUG修复及完善使用文档v0.1.8 2022/5/17 优化：底层代码结构优化使用案例案例1：基本使用fromzdppy_logimportLoglog1=Log("logs/zdppy/zdppy_log1.log")log2=Log("logs/zdppy/zdppy_log2.log")log2.debug("log2日志")log2.info("log2日志")log2.warning("log2日志")log2.error("log2日志")log2.critical("log2日志")log3=Log("logs/zdppy/zdppy_log3.log",debug=False)log3.debug("log3日志")log3.info("log3日志")log3.warning("log3日志")log3.error("log3日志")log3.critical("log3日志")案例2：捕获方法错误fromzdppy_logimportLoglog1=Log("logs/zdppy/zdppy_log1.log")@log1.catch()defmy_function(x,y,z):return1/(x+y+z)my_function(0,0,0)案例3：只往控制台输出fromzdppy_logimportLog# 记录所有级别的日志到控制台log1=Log(debug=True,is_only_console=True)log1.debug("log1 debug")log1.info("log1 info")log1.warning("log1 warning")log1.error("log1 error")log1.critical("log1 critical")# 记录info以上级别的日志到控制台log2=Log(debug=False,is_only_console=True)log2.debug("log2 debug")log2.info("log2 info")log2.warning("log2 warning")log2.error("log2 error")log2.critical("log2 critical")# 记录error以上级别的日志到控制台log3=Log(debug=False,level="ERROR",is_only_console=True)log3.debug("log3 debug")log3.info("log3 info")log3.warning("log3 warning")log3.error("log3 error")log3.critical("log3 critical")案例4：同时输出到控制台和日志文件fromzdppy_logimportLog# 记录info级别的日志，并将所有级别日志输出到控制台log1=Log(debug=True)log1.debug("log1 debug")log1.info("log1 info")log1.warning("log1 warning")log1.error("log1 error")log1.critical("log1 critical")# 记录info以上级别的日志，不输出到控制台log2=Log(debug=False)log2.debug("log2 debug")log2.info("log2 info")log2.warning("log2 warning")log2.error("log2 error")log2.critical("log2 critical")# 记录error以上级别的日志不输出到控制台log3=Log(debug=False,level="ERROR")log3.debug("log3 debug")log3.info("log3 info")log3.warning("log3 warning")log3.error("log3 error")log3.critical("log3 critical")案例5：日志序列化为JSONfromzdppy_logimportLog# 记录info级别的日志，并将所有级别日志输出到控制台log1=Log(serialize=True,debug=True)log1.debug("log1 debug")log1.info("log1 info")log1.warning("log1 warning")log1.error("log1 error")log1.critical("log1 critical")# 记录info以上级别的日志，不输出到控制台log2=Log(serialize=True,debug=False)log2.debug("log2 debug")log2.info("log2 info")log2.warning("log2 warning")log2.error("log2 error")log2.critical("log2 critical")
Package: zdppy-password
zdppy_passwordPython密码工具项目地址：https://github.com/zhangdapeng520/zdppy_password版本历史2022年3月29日 版本0.1.0 兼容Python和Go的AES RSA加密解密算法常用命令生成私钥opensslgenrsa-outprivate.pem1024生成公钥opensslrsa-inprivate.pem-pubout-outpublic.pem使用案例案例1：AES加密和解密fromzdppy_password.aesimportAesaes=Aes()res=aes.encrypt(b'{"cmd": 3000, "msg": "ok"}').decode(encoding='utf-8')print(res)print(aes.decrypt(res))# 从go复制过来的print(aes.decrypt("0qg69fOjmE0oR59muWdXoWhr5d4Z0XyQaC69684mAsw="))案例2：RSA加密和解密fromzdppy_password.rsaimportRsaimportjsonrsa=Rsa()data={"username":"张大鹏","age":22}data=json.dumps(data)print(data)# 加密secret=rsa.encrypt(data,"public.pem")# 解密print(json.loads(rsa.decrypt(secret,"private.pem")))# 从go复制过来的data="NoA3e0HDMhj7nrwKUx975lUZgjRIA1ZFcEBLeAvgYQ7Nu7toic7xXtg9qmD+wr6soZzb6Gl37H1I5j9OlOTR9igQ+p1pXPOWo47DyDpw3UjiQ6eOAYmyT53lMUGylLZIKHhnbpea5Qpjl+dHrWVYsQ864/asS1ewe9k2hR+BlkBuZSP8p6oiJ+BBOVYckqPFf6PWBjAFGAMridMXglYrKZ2v7+QdwU4mq2YEBVD5XdY70lIEg4XIY8Wb6n5tBB5XkzLsqd22XcBhnEPGLmMC4fuEMyLptH5dMGF/Ogi9YDAP/rKvzdTTpFXPLPh5eeqMMXAS5+AigE1jx1M3w+7IUw=="print(rsa.decrypt(data,"private.pem"))
Package: zdppy-requests
zdppy_requests基于requests二开的HTTP请求库，无任何第三方依赖，可独立使用，不受开源框架迭代的影响。使用示例安装pipinstallzdppy_requests获取网页源码importzdppy_requestsaszrresponse=zr.get("https://www.baidu.com/")print(response.status_code)print(response.text)创建Mappingimportzdppy_requestsaszrfromzdppy_requests.authimportHTTPBasicAuthurl="http://localhost:9200"body={"mappings":{"properties":{"name":{"type":"text"},"price":{"type":"double"},"author":{"type":"text"},"pub_date":{"type":"date"}}}}index="books"auth=HTTPBasicAuth('elastic','zhangdapeng520')response=zr.put(f"{url}/{index}",json=body,auth=auth)print(response.status_code)print(response.text)查询Mappingimportzdppy_requestsaszrfromzdppy_requests.authimportHTTPBasicAuthurl="http://localhost:9200"index="books/_mapping?pretty"auth=HTTPBasicAuth('elastic','zhangdapeng520')target=f"{url}/{index}"response=zr.get(target,auth=auth)print(response.status_code)print(response.text)删除Mappingimportzdppy_requestsaszrfromzdppy_requests.authimportHTTPBasicAuthurl="http://localhost:9200"index="books"auth=HTTPBasicAuth('elastic','zhangdapeng520')target=f"{url}/{index}"response=zr.delete(target,auth=auth)print(response.status_code)print(response.text)根据ID新增数据importzdppy_requestsaszrfromzdppy_requests.authimportHTTPBasicAuthurl="http://localhost:9200"index="books/_doc"did="1"auth=HTTPBasicAuth('elastic','zhangdapeng520')target=f"{url}/{index}/{did}"body={"name":"《JavaScript全栈开发实战》","author":"张大鹏","price":123,"pub_date":"2019-12-12"}response=zr.put(target,json=body,auth=auth)print(response.status_code)print(response.text)根据ID查询图书importzdppy_requestsaszrfromzdppy_requests.authimportHTTPBasicAuthurl="http://localhost:9200"index="books/_doc"did="1"auth=HTTPBasicAuth('elastic','zhangdapeng520')target=f"{url}/{index}/{did}"response=zr.get(target,auth=auth)print(response.status_code)print(response.text)根据ID删除图书importzdppy_requestsaszrfromzdppy_requests.authimportHTTPBasicAuthurl="http://localhost:9200"index="books/_doc"did="1"auth=HTTPBasicAuth('elastic','zhangdapeng520')target=f"{url}/{index}/{did}"response=zr.delete(target,auth=auth)print(response.status_code)print(response.text)
Package: zdsindicator
[![PyPI version](https://badge.fury.io/py/zdsindicator.png)](http://badge.fury.io/py/zdsindicator)Zds IndicatorUn applet Ubuntu pour Zeste de Savoir. Il permet de visualiser les messages privés et les notifications forums.
Testé pour l’instant sur Ubuntu 14.04 et 14.10.Screenshot![Menu principal](https://zestedesavoir.com/media/galleries/1317/e7c0cded-c1d5-469e-bc90-dfcdf9d4631d.png)![Notification de bureau](https://zestedesavoir.com/media/galleries/1317/e6c674c3-9c18-4769-8b6a-b68db0be873e.png)Requispython-appindicatorpython-gtklxmlrequestsInstallationInstallation via pip :` $ pip install zdsindicator `Deuxième solution, télécharger la dernière archive disponible, puis l’extraire.
Une fois dans le répertoire de l’application :` $ python setup.py install `Pour lancer l’application :` $ zdsindicator `Icônes :https://github.com/SimpleSoftwares/ClemojisHistory0.0.1 (2014-12-23)AuthentificationMessages privésNotificationsMise en place paquet pip
Package: zds-member
Zds Member it’s a fork ofzds-sitemember app to make a reusable
application.zds-memberzds-member is a django application that allows to manage members of
website.FeaturesSign in (email or username)Sign up (with email confirmation)Reset passwordUpdate users settings (email, username, password)UnsubscribeSanction (ban, read only)GeolocationREST API (Json, Xml)A lot of templatesRequirementsDjango 1.7 or 1.8Python 2.7, 3.3 or 3.4DocumentationSeehttp://zds-member.readthedocs.org/for documentation.
Package: zds-schema
ZDS-Schema voorziet een generieke API schema-generatiestrategie die gedeeld
wordt tussen verschillende componenten betrokken in zaakgericht werken.Contents1Features2Installatie2.1Benodigdheden2.2Installeren3Gebruik1FeaturesCentraal beheer van cosntanten die de verschillende componenten overstijgenGeoJSON OpenAPI definitiesSupport voor Geo CRS negotationIngebouwde support voor nested viewsets met declaratievere syntax voor
registratieVaak voorkomende validators:RSIN/BSN validatorNumerieke waarde validatorNiet-negatieve waarde validatorAlfanumerieke waarde (zonder diacritics)URL-validator (test dat URL bestaat) met pluggable link-checkerUntilNowValidator- valideer datetimes tot en metnu.UniekeIdentificatieValidator(in combinatie met organisatie)InformatieObjectUniqueValidatorom te valideren dat M2M entries
slechts eenmalig voorkomenObjectInformatieObjectValidatorom te valideren dat de synchronisatie
van een object-informatieobject relatie pas kan nadat deze relatie in het
DRC gemaakt isIsImmutableValidator- valideer dat bepaalde velden niet gewijzigd
worden bij een (partial) update, maar wel mogen gezet worden bij een createResourceValidator- valideer dat een URL een bepaalde resource ontsluitCustom inspectors voor drf-yasg:Support voorrest_framework_gisGeometryFieldSUpport voordjango-extra-fieldsBase64FieldMixinURL-based related resource filtering (django-filtersupport)verzameling van mogelijke error-responses per operationManagement commandgenerate_swaggeroverloadedneemt default versie mee en maakt server-informatie domein-agnostischoptie om informatiemodel-resources naar markdown te renderen met backlinks
naar gemmaonline.nlSupport voor ISO 8601 durationsCustom model fields:RSINFieldBSNFieldLanguageFieldVertrouwelijkheidsAanduidingFieldDaysDurationFieldMocks voor de validators die netwerk IO hebben, eenvoudig via@override_settingstoe te passen2Installatie2.1BenodigdhedenPython 3.6 of hogersetuptools 30.3.0 of higher2.2Installerenpipinstallzds_schema3GebruikZie de referentie-implementaties voorZRC,DRC,BRCenZTC.
Package: zds-to-grav
# zds-to-gravConverts an article or an opinion from [Zeste de Savoir](https://zestedesavoir.com) to [Grav](https://getgrav.org).Accepts either an URL to a ZdS article/optinion, or an exported archive.Note: the generated frontmatter includes some non-standard fields, as this was initially built for my own use and my theme uses them. Standard fields are covered. Authors are assumed to be a taxonomy.## InstallationRequires Python 3.6 or newer.`bash (sudo) pip install zds_to_grav `## Usage`bashzds-to-grav--help`Typical use: from the directory you want to put the exported grav article directory into:`bashzds-to-gravhttps://zestedesavoir.com/articles/42/le-point-sur-les-exoplanetes/`See options in–helpto specify explicit slug, article type, lang, or destination directory (numbered or not).## Development & testsInstallation for development (requirespipenv:sudo pip install pipenv):`bash pipenv install `Unit tested usingdoctest. From the project directory, within a virtualenv:`bash python zds_to_grav.py--test`No output means everything is good.