Saravanan666/pypi-org huggingface dataset:
Package: semv
semv - A read-only semantic version commit parsing and validation toolThis package is inspired by a talk byStephan
Bönnemannas well as the packagepython semantic
release.
Both suggest parsing commit message to automatically create a new version number.
Although this is a great idea, I don't think that commit messages can be guaranteed to be of sufficiently high quality to be used for this.
Stephan's talk acknowledges this point and suggests strategies for automatically validating commit messages.
Unfortunately, these are not implemented in python semantic release.
In addition, python semantic release does a lot more than just versioning: It covers the full release process, including uploads to pypi or github releases.
As a result, running python semantic release can have quite a few unexpected side effects that might be difficult to undo.
I would prefer a tool that does the hard part of the automatic semantic versioning (parsing and validating commit messages) but doesn't have any side effects—the user should be free to use tags, variables, commits or whatever they like to represent new versions and the user should not be surprised by unexpected write operations.
I therefore wrote semv, a read-only semantic version commit parsing and validation tool.Installation and usageYou can install semv from pypi using$ pip install semvIf you are inside a git repository, you can use semv to print the semantic version that the current commitshouldrecieve. E.g.$ semv
  v1.0.5 (no-eol)Note that this will have not change anything about your repository. It is up to you to use the printed version. An example for using the printed version is given in semv's ownrelease workflow.ConfigurationYou can configure semv via thepyproject.tomlconfig file. Here are the defaults:[tool.semv]invalid_commit_action="warning"# Could also be "error" or "skip"[tool.semv.types]feat="minor"fix="patch"perf="patch"chore="valid"test="valid"docs="valid"ci="valid"refactor="valid"style="valid"
Package: semver
A Python module to simplifysemantic versioning.The module follows theMAJOR.MINOR.PATCHstyle:MAJORversion when you make incompatible API changes,MINORversion when you add functionality in a backwards compatible manner, andPATCHversion when you make backwards compatible bug fixes.Additional labels for pre-release and build metadata are supported.To import this library, use:>>>importsemverWorking with the library is quite straightforward. To turn a version string into the
different parts, use thesemver.Version.parsefunction:>>>ver=semver.Version.parse('1.2.3-pre.2+build.4')>>>ver.major1>>>ver.minor2>>>ver.patch3>>>ver.prerelease'pre.2'>>>ver.build'build.4'To raise parts of a version, there are a couple of functions available for
you. The functionsemver.Version.bump_majorleaves the original object untouched, but
returns a newsemver.Versioninstance with the raised major part:>>>ver=semver.Version.parse("3.4.5")>>>ver.bump_major()Version(major=4,minor=0,patch=0,prerelease=None,build=None)It is allowed to concatenate different “bump functions”:>>>ver.bump_major().bump_minor()Version(major=4,minor=1,patch=0,prerelease=None,build=None)To compare two versions, semver provides thesemver.comparefunction.
The return value indicates the relationship between the first and second
version:>>>semver.compare("1.0.0","2.0.0")-1>>>semver.compare("2.0.0","1.0.0")1>>>semver.compare("2.0.0","2.0.0")0There are other functions to discover. Read on!
Package: sem-ver
sem_verThis package contains a parser for Semantic Version labels complete with type annotations.In addition to parsing version labels they may be compared via standard comparison operators
and modified directly.
Note that comparison operators, including equality, do not consider build information.
To test for equality including build information, convert to, and compare strings.
SemVer objects may be directly compared to strings, or other objects that can be converted to strings,
aValueErrorwill be raised if the other object is not a valid SemVer.Seehttps://semver.orgfor details.sem_ver.SemVersem_ver.validate(version: str) -> boolTest if string is a valid SemVer.sem_ver.compare(version_a: str, version_b: str) -> intCompare two SemVer strings.
Will raiseValueErrorif either string is not a valid SemVer.sem_ver.force(version: str) -> Optional[SemVer]Use relaxed parsing rules to attempt to create a SemVer.
ReturnsNoneif no version info found.SemVer(version: str = None, major: int = 0, minor: int = 0, patch: int = 0, prerelease: Union[str, Sequence[Union[int, str]]] = '', build: Union[str, Sequence[str]] = '')Constructor.
Will raiseValueErrorif the passed version string does not match the proper format.SemVer.major: intMajor version.
Changing the major version will reset the minor, patch, prerelease, and build versions.SemVer.minor: intMinor version.
Changing the minor version will reset the patch, prerelease, and build versions.SemVer.patch: intPatch version.
Changing the patch version will reset the prerelease and build versions.SemVer.prerelease: Optional[str]Prerelease tags as a single string.
Will raiseValueErrorif the prerelease string does not match the proper format.SemVer.prereleases: List[Union[int, str]]Prerelease tags as a list of int or string.
Does not validate the strings.SemVer.build: Optional[str]Build labels as a single string.
Will raiseValueErrorif the build string does not match the proper format.SemVer.builds: List[str]Build labels as a list of strings.
Does not validate the strings.SemVer.next_major() -> SemVerCreate a new SemVer for the next major release.
Minor, patch, prerelease, and build will be reset.SemVer.next_minor() -> SemVerCreate a new SemVer for the next minor release.
Patch, prerelease, and build will be reset.SemVer.next_patch() -> SemVerCreate a new SemVer for the next patch release.
Prerelease and build will be reset.SemVer.str() -> strConvert to string.InstallationInstall with pip:pip install sem_ver
Package: semver4
OverviewA python module to deal with modified semantic versioning.MotivationThere are three numbers as main part of a version in semantic version (semver.org). Third number, patch, is defined as:PATCH version when you make backward compatible bug fixesHowever, sometimes we need to distinguish two types of a bugfix.bugfix which is released in a standard waybugfix which has to be release immidiately as hotfixThe first type is released in a standard release process and at the end the patch of a version is increased.The second one is the case we identified a bug which has to be fixed and released immidiately. In this case, a version witch increased patch can potentially already exists as any sort of pre-release version.Let's assume there is version0.4.2deployed in production. Versions0.4.3-rcand0.4.4-rcalready exist in our non prod environment but they are not ready to be released. The question is what version should have fixed code. If we want to increase patch we would have to jump to0.4.5which may (and will) brings confusion in the versioning.Fix version partTo solve to the scenario described above, we introduce 4th number to main version part. Let's call it fix version and define it as:FIX version when you make hot fixes released immidiatelySo the new version in the described scenario would be0.4.2.1At the end, the modification means only the one number.Usagefromsemver4importVersionversion=Version(major=2,minor=4,path=4,prerelease='beta')print(version)# '2.4.4-beta'version>Version('0.4.2.4')# Trueversion.inc_fix()print(version.fix)# '2.4.4.1-beta'version.inc_minor().inc_major().dec_patch()print(version.fix)# '3.5.3.1-beta'Known limitationsComparing of two Versions only by major, minor, patch and fix. Prerelease and build do not affect any comparison operation.pre release and build metadata parts can not be modified
Package: semverbump
SemVerBumpSemVerBump or Semantic Version Bump is a CLI tool that auto-bumps version (with auto git tagging and commit) for your application.Currently supportsJSONExample-package.json{"version":"0.1.1"}Caveat - version attribute should be in an object and not in a list.Supported RuntimePython 3.9+InstallpipinstallsemverbumpQuick start# version file and path defaults to `package.json` and `version` keysemverbump# <command> major | minor | patchsemverbumpmajor# 1.x.xsemverbumpminor# x.1.xsemverbumppatch# x.x.1Custom version file and pathsemverbump--version-fileapp-version.json--version-pathproject.versionminor# or shorter versionsemverbump-fapp-version.json-pproject.versionminor// app-version.json{"project":{"name":"SuperApp","version":"1.0.2"}}Roadmap[✅] SemVer support[✅] No additional dependencies (Python Standard Libary only)[✅] Tested with JSON based configs, it should work with any JSON file if in the format given above.[✅] Auto Git commits and Tags[❓] Add support for more file formats like YAML and TOMLAlternatives -verbumpbump2versionAuthor -Nikhil AkkiPersonal Blog -nikhilakki.in
Package: semvergit
CI/CDPackageMetasemvergitManage your project's version numbers.Semantic Versioningsemvergit is a CLI tool to manage your project's version numbers.
It usesSemantic Versioningto bump the version number.
The supported bump types are:majorminorpatchprereleaseWorkflowUse the latest git tag to determine the current version number.Bump the version numberCreate a new git tagPush the tag to the remotePlease keep in mind it is designed to be used in a CI/CD pipeline (but not limited to...)How to useSimple install usingpip install semvergitThen you can use it in your project like this:semvergit -t patch -d -v -am(to bump the patch version)
This will:create a tagpush it to the remotecommit all changesPlease cehckoutsemvergit --helpfor more info.Usage:semvergit[OPTIONS]COMMAND[ARGS]...CLIforsemvergit.

Options:--versionShowtheversionandexit.-d,--dry_runDryrun-v,--verboseVerbose[0<=x<=2]-t,--bump_typeTEXTBumpType['major','minor','patch','prerelease']-m,--messageTEXTCommitmessage-am,--auto_messageAutocommitmessage--helpShowthismessageandexit.DevelopmentPlease seeCONTRIBUTING.mdLicenseThis project is published under the MIT license.If you do find it useful, please consider contributing your changes back upstream.
Package: semver-git-hook
Semver Git HookInstallWorks with python 3.6+First, install the tool using python ecosystem :pipinstall--usersemver-git-hookUseThen set the hook in your current folder git repository :semver-git-hook--initThat is all. Now on commit a release version type is asked interactively.On commit some version change will be saved in a.versionfile. It is automatically added to the current commit.With this enabled you have your project version set in the.versionfile that it is possible to dynamically load to your dev environment versionning settings.For exemple in python thesetup.pycan look like# setup.pywithopen('.version')asf:version=f.read()setup(#...version=version,#...)and javascript//That can be a version.js file that is triggered in .git/hooks/pre-commitconstf=require('fs')constversion=f.readFileSync('.version','utf-8')constpackage=JSON.parse(f.readFileSync('package.json','utf-8'))package.version=versionf.writeFileSync('package.json',JSON.stringify(package,null,4))OptionsIt is possible to change.versionfile location by setting a prefix in it's path. The file will be located atSEMVER_HOOK_PATH_PREFIX.versionwhereSEMVER_HOOK_PATH_PREFIXis an environment variable.
Package: semverkit
semverkitA thin CLI wrapper for the Python packagesemver.Installation and UsagePyPI$pipinstallsemverkit$python-msemverkitor$semverkitDocker$dockerrun--rmelmernocon/semverkitCurl$curl-Lshttps://github.com/elmernocon/semverkit/releases/latest/download/semverkite-osemverkit&&chmod+xsemverkit$semverkitUsage: semverkit [OPTIONS] COMMAND [ARGS]...

Options:
  --help  Show this message and exit.

Commands:
  bump          Bumps a PART of VERSION.
  compare       Compares VERSION against OTHER.
  extract       Extracts a PART of VERSION.
  finalize      Removes any prerelease and build metadata from VERSION.
  iscompatible  Exits with 1 if VERSION is not compatible with OTHER.
  ismatch       Exits with 1 if VERSION does not match EXPRESSION.
  isvalid       Exits with 1 if VERSION is invalid.
  replace       Replaces one or more parts of VERSION.
  split         Splits parts of VERSION.
Package: semvermanager
semvermanagersemvermamagerexports a single classVersionwhich implements
a restricted subset of theSEMVERstandard.Versiondefines a Semantic version using the following field
structure:# MAJOR.MINOR.PATCH-TAGintMAJOR# 0->NintMINOR# 0->NintPATCH# 0-NstrTAG# one of "alpha", "beta".intTAG_VERSION# a version number appended to alpha or beta.Versions may be bumped by a single increment using any of thebumpfunctions. Bumping a PATCH value simply increments it.
Bumping a MINOR value zeros the PATCH value and bumping a MAJOR
zeros the MINOR and the PATCH value.semvermanageronly supports Python 3.6 and greater.semvermgr scriptThe package includes a command line script for generating versions.$semvermgr-h
usage:semvermgr.py[-h][--versionVERSION][--make][--bump{major,minor,patch,tag,tag_version}][--getversion][--bareversion][--overwrite][--update][--labelLABEL][--separatorSEPARATOR][filenames[filenames...]]positionalarguments:filenamesFilestouseasversionfile

optionalarguments:-h,--helpshowthishelpmessageandexit--versionVERSIONSpecifyaversionintheformmajor.minor.patch-tag--makeMakeanewversionfile--bump{major,minor,patch,tag,tag_version}Bumpaversionfield--getversionReportthecurrentversioninthespecifiedfile--bareversionReturntheunquotedversionstrinwithVERSION=--overwriteoverwritefileswithoutchecking[default:False]--updateUpdatemultipleversionstringsinfile--labelLABELfieldusedtodeterminewhichlineistheversionline[default:VERSION]--separatorSEPARATORCharacterusedtoseparatetheversionlabelfromtheversion[default:=]Installation$pip3installsemvermanagerDocsFull docs are onreadthedocs.io.Source codeCan be found ongithub.comAuthor:jdrumgooleonGitHub
Package: semver_range
Python package forsemantic versioning 2.0.0that mimics the nodesemver package.
The interface is designed to be more “pythonic” and does not match semver’s logic 100%.UsageInstall usingpip install semver_range. Sample usage:>>>fromsemver_rangeimportVersion,Range>>>version_range=Range('>=0.1.1 <0.3.0')>>>Version('0.2.2')inversion_rangeTrue>>>version_range.highest_version(['0.1.1','0.2.0','0.3.0'])<Version "0.2.0">Alternativessemantic_versionis a great package which differs slightly
in its implementation of semantic versioning, for example when incrementing a minor version of a pre-release.
Package: semver-setuptools-git-version
semver-setuptools-git-versionAutomatically set package version from Git. This is a re-release ofbetter-setuptools-git-versionwith fixes and improvements for semver ordering, which is itself a re-release ofsetuptools-git-versionIntroductionInstead of hard-coding the package version insetup.pylike:setup(name='foobar',version='1.0',...)this package allows to extract it from tags in the underlying Git repository:setup(name='foobar',version_config={"version_format":"{tag}.dev{sha}","starting_version":"0.1.0"},setup_requires=['semver-setuptools-git-version'],...)The tool uses the semantically-latest tag as the base version. If there are no annotated tags, the version specified bystarting_versionwill be used. IfHEADis at the tag, the version will be the tag itself. If there are commits ahead of the tag, the first 8 characters of the sha of theHEADcommit will be included.In all the above cases, if the working tree is also dirty or contains untracked files, a+dirtysuffix will be appended to the version.
Package: semversion
SemversionPython Semantic Versioning Toolsemversionis a Python module designed to manage and easily modify semantic versions of your projects. With this tool, you can keep a version log and update it as needed.InstallationYou can installsemversionusing pip:$pipinstallsemversionRunning this command for the first time promts for the creation of the.versionfile if it doesnt exists.Version file can be modified using envirment variableSEMVERSION_FILEBasic Usagesemversioncan be used as a standalone python module, mainly for scripting.$python-msemversion<version_part>Example Usagefromsemversionimportversion,increment,initialize,SEMVERSION_FILE,MAJOR,MINOR,PATCH# Get the current versioncurrent_version=version()print(f"Current version:{current_version}")# Increment the minor versionnew_version=increment(MINOR)print(f"New version:{new_version}")ContributeFeel free to contribute! Open an issue or send a pull request.
Package: semver-tool
semver-toolPrint SemVer version for a git project. Git tags must matchv?M.N.Ppattern.
You can print specific version components using fotmat string.Full format string is MNPRBD, where:M - majorN - minorP - patchR - prereleaseB - buildUsageExamples:$ semver-tool
4.1.2-rc.2+git.b10c717
$ semver-tool -f MNPR
4.1.2-rc.2Use CasesBuild docker imagesI use this tool to build docker images using SemVer schema.
The flow is this:buildimage:latestwithCommitlabelpush it asimage:M.N.P-Rpush it asimage:M.N.Ppush it asimage:M.NMy build script has this codecurrent=$(semver_tool-fMNPR)dockerbuild--labelCommit=$(semver_tool)-timage:$currentdockertagimage:$currentimage$(semver_tool-fMNP)dockertagimage:$currentimage$(semver_tool-fMN)which results in these imagesimage   1.2.3-rc.2
image   1.2.3
image   1.2Each image hasCommitlabel with semver description, eg,1.2.3-rc.2+git.22eeff
Package: sen14348_exporter
sen14348_exporterPython Prometheus exporter for the SparkFun Environmental Combo Breakout
(SEN-14348)Requirementsbme280_exporterccs811_exporterInstallationpipinstallsen14348_exporterUsage$sen14348_exporter-husage:sen14348_exporter[-h][-v][-pPORT][-baBME_ADDRESS][-caCCS_ADDRESS][-lLABELS][-iINTERVAL][-bfFILTER][-bhoBHO][-bpoBPO][-btoBTO][-ctoCTO]optionalarguments:-h,--helpshowthishelpmessageandexit-v,--verboseincreaseoutputverbosity-pPORT,--portPORTexporterport(default:9502)-baBME_ADDRESS,--bme-addressBME_ADDRESSBME280I2Caddress(default:0x77)-caCCS_ADDRESS,--ccs-addressCCS_ADDRESSCCS811I2Caddress(default:0x5b)-lLABELS,--labelsLABELSJSONobjectofPrometheuslabelstoapply-iINTERVAL,--intervalINTERVALmeasurementsampleinterval(default:2)-bfFILTER,--filterFILTERBME280filtervaluetoapply(0-4,default:0)-bhoBHOBME280humidityoversamplingvalue(1-5,default:4)-bpoBPOBME280pressureoversamplingvalue(1-5,default:4)-btoBTOBME280temperatureoversamplingvalue(1-5,default:4)-ctoCTOCCS811temperatureoffset(default:-25.0)Dockerdockerpullashtreefarms/sen14348-exporter-rpidockerrun-p9502:9502--device/dev/i2c-1ashtreefarms/sen14348-exporter-rpi\--labels'{"zone": "bedroom"}'MIT LicensePermission is hereby granted, free of charge, to any person obtaining a
copy of this software and associated documentation files (the
“Software”), to deal in the Software without restriction, including
without limitation the rights to use, copy, modify, merge, publish,
distribute, sublicense, and/or sell copies of the Software, and to
permit persons to whom the Software is furnished to do so, subject to
the following conditions:The above copyright notice and this permission notice shall be included
in all copies or substantial portions of the Software.THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS
OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Package: sen2classification
sen2classificationsen2classification is a Python library for automatic land cover classification of Sentinel 2 satellite images using machine learning.Featuressupport for L1C and L2A Sentinel productsuses machine learning algorithms in combination with tresholding for classifying land coverscalculates spectral indices used for tresholdingTwo classification methods are available:ALCC (Automatic Land Cover Classification)Gradient boostingthe end result is a classification raster which pixel values range from 0 to 5:0 = no data1 = water2 = low vegetation3 = high vegetation4 = soil5 = built upClouds are not classified, for optimal results use images with none or minimal cloud coverALCCAutomatic Land Cover Classification algorithm uses k-means clustering and tresholding for classifying land cover. The concept of ALCC was first introduced byGaÅ¡paroviÄ‡ et al. (2019). They used it to classify Landsat-8 images at 30â€¯m spatial resolution. This version of ALCC algorithm is adapted for use on Sentinel 2 images with 10 m spatial resolution.Gradient boostingGradient boosting classification is implemented usingxboostlibrary. Collection of training data is automated by tresholding spectral indices.InstallationImportant!Library dependency that must be installed before installing sen2classification israsterio(andGDALwhich is rasterio dependency). Installing sen2classification won't install rasterio.Simplest way to install GDAL and rasterio is by using conda with conda-forge channelcondainstall-cconda-forgegdalrasterioAfter that use pip to install sen2classification.pipinstallsen2classificationUsagefromsen2classificationimportALCCfromsen2classificationimportGBClassification# input is Sentinel 2 L2A product folderalcc=ALCC(product='path to unzipped Sentinel 2 L2A product (.SAFE)',product_type='L2A')# input is Sentinel 2 L1C product folderxgb=GBClassification(product='path to unzipped Sentinel 2 L1C product (.SAFE)',product_type='L1C')# sets up band file pathsalcc.setup_bands()# swir bands must be resampled to 10m for calculating spectral indicesalcc.resample_swir_to_10m()# calculate AWEI, NDVI, NDTI and BAEI spectra indicesalcc.calculate_spectral_indices()# run ALCC algorithm# final classification raster is saved in current working directoryalcc.run()# setup and execution is identical for xgbLicenseMIT
Package: sen2vec
Sen2vec module provides convenient solution to transform sentences to vectors.The vectors transformed contain high level of information of the original sentences,and this method has a wide range of applications in downstream tasks.The method could be directly applied to NLP tasks,as well as other machine learning assignments, integrated with any structured data.According to application scenarios, such as the sample size of downstream tasks,the dimension of vector extracted by sen2vec varies.The vectors transformed are able to carry out the four fundamental operations of arithmetic,and could calculate the average, the intersection angle and the distance,based on different code instructions of the original information.The method sen2vec_fi is currently used to analyze financial texts,and will be developed into different versions to meet demands in diverse areas.There are two ways to employ sen2vec:Use the default models we provide by function sen2vec_download() and sen2vec_fiUse the self-defined models: from sen2vec import sen2vecFor more information: Please contact author.