Python RAML解析器
项目描述
ramlfications: Python中的RAML参考实现
注意:此项目已在Spotify停止维护,并将转交给新的维护者,我们目前正在完成此存储库和相关pypi包的转让。
需求和安装
用户设置
$ pip install ramlfications
ramlfications在Python 3.10+和PyPy上运行。支持Linux、OS X和Windows。目前仅支持RAML 0.8,但计划支持1.0。
继续到使用说明开始使用ramlfications。
开发者设置
如果您想为ramlfications做出贡献或在此基础上开发,请首先阅读如何贡献。
您可以在我们的公共项目管理页面上查看ramlfications的进度。
系统要求
C编译器(gcc/clang等)
如果在Linux上 - 您需要安装Python头文件(例如 apt-get install python-dev)
Python 3.10+或PyPy
以下是设置您的机器的方法
$ git clone git@github.com:jdiegodcp/ramlfications $ cd ramlfications $ virtualenv env $ source env/bin/activate (env) $ pip install -r dev-requirements.txt
运行测试
如果您想为所有支持的Python版本运行测试,您必须在系统上安装所有Python版本。我建议使用pyenv来帮助解决这个问题。
要运行所有测试
(env) $ tox
要运行特定的测试配置(选项包括:py310,py311,py312,pypy,flake8,verbose,manifest,docs,setup,setupcov)
(env) $ tox -e py310
要运行不使用tox的测试
(env) $ py.test (env) $ py.test --cov ramlfications --cov-report term-missing
构建文档
文档使用Sphinx构建,使用rST编写,使用Read the Docs主题,并带有略微定制的CSS,托管在Read the Docs网站。
要在本地重新构建文档,请进入父目录下的ramlfications
(env) $ tox -e docs
或
(env) $ sphinx-build -b docs/ docs/_build
然后在ramlfications/docs/_build中,您可以在浏览器中打开index.html页面。
项目历史
Ramlfications最初由Spotify工程师github.com/econchick创建,但目前Spotify不再使用。该项目于2022年4月停止使用,并转交给外部维护者。
还有问题吗?
请随时访问Freenode上的#ramlfications(webchat)或通过Twitter[X]发起ping。 “jdiegodcp”是维护者,也是GitHub上的jdiegodcp。
变更日志
0.1.9 (2015-12-24)
圣诞快乐!
0.1.8 (2015-10-07)
0.1.7 (2015-08-20)
新增
0.1.6 (2015-08-03)
新增
waffle.io页面到项目管理概述文档
修复
0.1.5 (2015-06-05)
修复
0.1.4 (2015-05-27)
新增
0.1.3 (2015-05-14)
新增
在freenode上创建了新的#ramlfications频道(网络聊天链接)!来聊天吧,我很孤单。
配置和update命令的文档。
修复
现在处理RAML文件中的递归/循环!includes (PR)
升级到tox 2.0时的编码问题
tests/test_utils.py会创建ramlfications/data/supported_mime_types.json;现在已模拟。
0.1.2 (2015-04-21)
修复
pypy 2.5.x会因为列表的顺序不符合预期而失败解析测试
0.1.1 (2015-04-21)
新功能
添加了解析IANA支持的MIME媒体类型的能力
添加了用于用户更新IANA支持的MIME类型的update命令
0.1.0a1 (2015-04-18)
ramlfications的初始alpha版本!