面向人类的模块化sql linting

sqlfluff的Python项目详细描述


sqlfluff:scroll::黑色笔尖::火花:

针对人类的sql linter

imageimageimagecodecovCircleCI

厌倦了没有一个好的sql linter来处理任何一个拨号盘 在一起工作?fluff是一个可扩展的、模块化的linter,旨在帮助您编写 好的sql,在它到达数据库之前捕获错误和坏的sql。

入门

要开始安装这个包,先创建一个sql文件,然后运行sqlfluff并指向该文件。

$ pip install sqlfluff
$ echo"  SELECT a  +  b FROM tbl;  " > test.sql
$ sqlfluff lint test.sql
==[test.sql] FAIL
L:   1| P:   1| L003 | Single indentation uses a number of spaces not a multiple of 4
L:   1| P:  14| L006 | Operators should be surrounded by a single space unless at the start/end of a line
L:   1| P:  27| L001 | Unnecessary trailing whitespace

用法

有关用法的更多详细信息,请参阅githubhere上的文档。

进度

这个项目有很多事情要做,我们才刚刚开始。

  • [X]命令行界面
    • [X]基本的linting,包括路径和文件
    • [X]版本信息
    • [X]精确格式化的linting成功或失败读数
    • []在linting步骤中过滤到特定代码
    • []允许对某些linting代码进行基本更正
  • []基本ANSI线头
    • [X]简单的空白测试
    • [X]运算符周围的空格
    • [X]缩进(制表符和空格的大小和组合)
    • []行之间的缩进和何时缩进
    • []空行数
    • []注释缩进
  • []可配置的线头
    • []用于配置的命令行选项
    • []读取配置文件的能力
    • []忽略特定规则
    • []指定要使用的分词方言
    • []预先配置详细信息
  • []方言
    • []MySQL
    • []红移
    • []从某种配置文件中检测方言

更改日志

该项目的所有显著变化都将记录在本文件中。

格式基于Keep a Changelog, 这个项目遵循Semantic Versioning

[0.0.6]-2018-11-15

添加了

  • 数字匹配

更改

  • 修复了运算符解析和linting(包括允许(*)的异常)

[0.0.5]-2018-11-15

添加了

  • 更好的文档,包括docs.md

更改

  • 修复了逗号解析和linting

[0.0.4]-2018-11-14

添加了

  • 添加了运算符regex
  • 为匹配者添加优先级以解决某些问题
  • 添加了对运算符regex的测试
  • 增加了在规则中初始化内存的功能

[0.0.3]-2018-11-14

添加了

  • 重构规则以允许具有内存的规则
  • 添加逗号线规则(更正单个字符匹配项)
  • 添加混合缩进过毛规则
  • 与Circleci、codecov和许多徽章集成

更改

  • 更改了版本信息的导入以修复导入config.ini时的错误
  • 添加了一些详细信息的基本冲突/文件报告
  • 重构规则以简化定义
  • 重构color cli输出以使其更可重用

[0.0.2]-2018-11-09

添加了

  • 较长的项目说明
  • 正确退出码< /LI>
  • 彩色输出的colorama

更改

  • 显著的cli更改
  • 从cli得到的输出大大改进

[0.0.1]-2018-11-07

添加了

  • 初始提交!-非常α
  • 重组为package layout
  • 添加tox和pytest以使它们工作

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java OnResizeListener或OnDrawListener或类似的东西   java Orika映射嵌套子列表   保存时java Heroku请求超时代码H12   数据库在Java中出现socket读取超时异常的原因是什么?   java如何更改来自Sqlite数据库的特定数据在Listview中的行颜色   java JAXB解组器无法正确处理XML中的列表   java Android日期时区让我抓狂   java不透明属性在Swing中如何工作?   eclipse从JavaEE代码生成流程图   java如何在Hibernate中从相关表中获取计数   java Glassfish部署了项目的依赖项库   java使内容适合JavaFx中的WebView   java不满意的链接错误libcrypto。所以1.0.0   循环中java数组的使用   java找出哪个包调用服务