Python PEP-440 Version Parsing

Overview

PyVer (WIP)

License

Python PEP-440 Version Parsing

This package allows for parsing Python PEP-440 version numbers and comparisons between PEP-440 Versions

Usage

[dependencies]
pyver = "0.0.1"
use pyver::PackageVersion;

let a = PackageVersion::new("v1.0a2.dev456").unwrap();
let b = PackageVersion::new("v1.0a2.dev457").unwrap();

assert_eq!(a < b, true);

Contribution

For now Contributions will be quite loose.

You might also like...
Tool to allow parsing large JSON files without laoding into memory
Tool to allow parsing large JSON files without laoding into memory

Tool to allow parsing large JSON files without laoding into memory. Developed in Rust with adapters in other programming langauges for easy adoption

A Rust crate for parsing Windows user minidumps.
A Rust crate for parsing Windows user minidumps.

udmp-parser-rs: A Rust crate for parsing Windows user minidumps This is a cross-platform crate that parses Windows user minidump dumps that you can ge

A Rust crate for parsing HID Report Descriptors.

Project Mu HID Crate Repository This repository contains a library crate that provides parsing services for HID Report Descriptors. This repository is

A more intuitive version of du in rust
A more intuitive version of du in rust

A more intuitive version of du in rust

IntelliJ version of the Afterglow Sublime Text theme
IntelliJ version of the Afterglow Sublime Text theme

Afterglow IntelliJ This theme for IntelliJ is based on the the Afterglow Sublime Text theme, and replaces the default sidebar icons and colour of Inte

Nvm - Node Version Manager - POSIX-compliant bash script to manage multiple active node.js versions

Node Version Manager Table of Contents Intro About Installing and Updating Install & Update Script Additional Notes Troubleshooting on Linux Troublesh

Compiler for an "extended" version of the Mindustry logic language

Minblur Compiler Minblur is a compiler for a superset of "logic" programming language in the game Mindustry. It helps reduce code-duplication, making

Vyper-Compiler Version Manager in Rust

Vyper Compiler Version Manager in Rust Install $ cargo install --git https://github.com/storming0x/vvm-rs --locked vvm-rs Install from source $ git c

An enhanced version of filetime, which can set file creation time on Windows.

filetime_creation Documentation An enhanced version of filetime, which can set file creation time on Windows. Internally, this use SetFileTime Win32 A

Comments
  • Release Develop

    Release Develop

    Since the baseline funtionality is now in place i think it's time to merge into main but i'm not sure whether to call it 1.0 or 0.2.

    (Local versions are just to abitrary to add any sorting as of yet)

    • [x] Move Unchanged to 1.0/0.2 in the CHANGELOG.md
    • [x] Change Rust docs to use 1.0/0.2
    • [x] Change README.md to use 1.0/0.2
    documentation enhancement ci/cd 
    opened by Allstreamer 1
  • Add a CHANGELOG checking CI job

    Add a CHANGELOG checking CI job

    Add a Ci check that checks if the CHANGELOG was updated in a PR.

    Based on the command:

                      git fetch origin $GITHUB_BASE_REF
                      HEAD_SHA=$(git rev-parse HEAD)
                      BASE_SHA=$(git rev-parse origin/$GITHUB_BASE_REF)
                      git diff --exit-code $HEAD_SHA $BASE_SHA -- CHANGELOG.md || exit 0 && exit 1
    
    documentation ci/cd 
    opened by John15321 0
  • Add a CHANGELOG update check for CI

    Add a CHANGELOG update check for CI

    Add a Ci check that checks if the CHANGELOG was updated in a PR.

    Based on the command:

                      git fetch origin $GITHUB_BASE_REF
                      HEAD_SHA=$(git rev-parse HEAD)
                      BASE_SHA=$(git rev-parse origin/$GITHUB_BASE_REF)
                      git diff --exit-code $HEAD_SHA $BASE_SHA -- CHANGELOG.md || exit 0 && exit 1
    
    documentation ci/cd 
    opened by John15321 0
Owner
Allstreamer
A Developer making all kinds of personal and open source projects
Allstreamer
A library for python version numbers and specifiers, implementing PEP 440

PEP440 in rust A library for python version numbers and specifiers, implementing PEP 440 Not yet on crates.io due to PyO3/pyo3#2786. use std::str::Fro

konstin 9 Dec 22, 2022
Run the right version of python, in the right environment, for your project

rpy Do you deal with lots of virtual python environments? rpy is for you! Before rpy: ~/dev/prj$ env PYTHONPATH=src/py path/to/my/interpreter src/py/m

Aquatic Capital Management 2 Dec 8, 2022
Truly universal encoding detector in pure Rust - port of Python version

Charset Normalizer A library that helps you read text from an unknown charset encoding. Motivated by original Python version of charset-normalizer, I'

Nikolay Yarovoy 29 Oct 9, 2023
Rust Imaging Library's Python binding: A performant and high-level image processing library for Python written in Rust

ril-py Rust Imaging Library for Python: Python bindings for ril, a performant and high-level image processing library written in Rust. What's this? Th

Cryptex 13 Dec 6, 2022
Argument parsing for the future 🚀

argi Argument parsing for the future ?? Features Macro-based approach, providing an intuitive way to layout a cli Rich auto-help generation, styling b

Owez 132 Oct 23, 2022
Tree-sitter - An incremental parsing system for programming tools

tree-sitter Tree-sitter is a parser generator tool and an incremental parsing library. It can build a concrete syntax tree for a source file and effic

null 10.6k Jan 9, 2023
Application microframework with command-line option parsing, configuration, error handling, logging, and shell interactions

Abscissa is a microframework for building Rust applications (either CLI tools or network/web services), aiming to provide a large number of features w

iqlusion 524 Dec 26, 2022
This utility traverses through your filesystem looking for open-source dependencies that are seeking donations by parsing README.md and FUNDING.yml files

This utility traverses through your filesystem looking for open-source dependencies that are seeking donations by parsing README.md and FUNDING.yml files

Mufeed VH 38 Dec 30, 2022
Rust derive-based argument parsing optimized for code size

Argh Argh is an opinionated Derive-based argument parser optimized for code size Derive-based argument parsing optimized for code size and conformance

Google 1.3k Dec 28, 2022
Minecraft's command parsing library in Rust

brigadier-rs This crate is a parsing library for Minecraft commands inspired by Mojang's brigadier. It was developed for use with FalconMC but can be

FalconMC 2 Nov 13, 2022