用于像pro一样提升项目版本的库

dephell-versioning的Python项目详细描述


deshell版本控制

travisappveyorMIT License

用于碰撞项目版本的库。

可用方案:

  • calver
  • comver
  • pep
  • roman
  • romver
  • semver
  • serial
  • zerover

可用规则(和别名):

  • init–初始化版本控制
  • 主要部件:
    • majorbreaking
    • minorfeature
    • patchfixmicro
  • 附加部分:
    • dev
    • local
    • post
  • 发布前管理:
    • prercalphabeta
    • premajorprebreaking
    • preminorprefeature
    • prepatchprefixpremicro
    • release

阅读dephell project bump文档中有关方案和规则的更多信息。

安装

PyPI安装:

python3 -m pip install --user dephell_versioning

用法

获取可用的方案、规则和别名:

fromdephell_versioningimportget_aliases,get_rules,get_schemesget_schemes()# frozenset({'roman', 'pep', ..., 'comver'})get_rules()# frozenset({'local', 'minor', ..., 'dev', 'preminor'})get_aliases()# frozenset({'alpha', 'rc', ..., 'micro', 'breaking'})# get rules for some scheme:get_rules(scheme='calver')# frozenset({'major', 'patch', 'init'})# get aliases for specific rules:get_aliases(rules={'major','minor'})# frozenset({'feature', 'breaking'})

凹凸版本:

fromdephell_versioningimportbump_versionbump_version(version='1.2.3',rule='minor',scheme='semver')# '1.3.0'# pass aliase instead of rule:bump_version(version='1.2.3',rule='feature',scheme='semver')# '1.3.0'# start rule from `+` to attach local version number:bump_version(version='1.2.3',rule='+456',scheme='semver')# '1.2.3+456'# for `init` version is optionalbump_version(version='',rule='init',scheme='semver')# '0.1.0'

python文件中的bump版本:

fromdephell_versioningimportbump_filefrompathlibimportPath# returns `True` if version was bumpedbump_file(path=Path('dephell_versioning','__init__.py'),old='0.1.0',new='0.1.1')# True# old version is optional: any version will be bumped if old isn't foundbump_file(path=Path('dephell_versioning','__init__.py'),old='',new='0.1.2')# True

使用dephell_discover查找python项目中的当前版本:

fromdephell_discoverimportRootfrompathlibimportPathroot=Root(path=Path(),name='dephell_discover')# root.metainfo can be None if project isn't found in the given directoryifroot.metainfo:print(root.metainfo.version)# '0.1.2'

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

推荐PyPI第三方库


热门话题
java OpenGL着色器可在桌面上编译,但不能在Android上编译   java调度器。forward()生成HTTP 500   java从另一个类访问类   java EasyModBus Modbus客户端。ReadHoldingRegisters()返回意外的0   java 安卓bitmap低质量问题   带有signaturePropFile的java Axis2/rampart加密问题   Java,解析xml属性的原始未转换值。Jaxson或jaxb   爪哇太阳报。网inetaddr。ttl属性导致AccessControlException   java简单计算器无法通过println   线程安全java servlet   java从文本文件中获取特定信息   java打包具有字符串数组的哈希映射   java SQL合并以更新值或将值插入到同一个表中   java springrabitmq和线程本地何时是调用clean方法的好时机   windows java在我的64位计算机的任务管理器中显示为32位   java不确定使用什么值来初始化我的神经网络   java Maven插件下载文件