| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
Avoids generating text to be parsed immediately.
|
|
|
|
|
|
| |
Eases the creation of version objects from existing versions.
We still validate the type and structure of each component.
|
|
|
|
|
| |
Do this so I am available as a reference for questions about the changes I
have made
|
|
|
|
|
| |
Do this so any subclasses will be shown with their class name instead of
a potentially misleading Version
|
| |
|
|
|
|
| |
Drop compatibility layer for Django<1.11.
|
|
|
|
|
|
|
| |
Django: Support the latest released version, and the latest LTS before
that version.
Python: Add support for python3.6 and pypy3.
|
|
|
|
|
|
|
|
|
|
| |
Those functions had been forgotten in the docs.
Clarify that `Version('1.0.1-alpha').next_patch()` is
`Version('1.0.1')`, since that version is the smallest non-prerelease
version greater than `Version('1.0.1-alpha')`.
Closes: #67
|
|
|
|
|
|
| |
Closes #65.
Reported-By: Julian Berman <julian@grayvines.com>
|
| |
|
| |
|
|
|
|
|
| |
Pypy seems to deconstruct fields differently from Django, thus bringing
in variations in the actual deconstruct() output.
|
| |
|
|
|
|
| |
Update tests accordingly.
|
| |
|
|
|
|
|
| |
* Use tox
* Add a full linting step
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Stop coercing fields magically:
>>> a = SomeModel()
>>> a.version = '0.1.0'
>>> a.version
'0.1.0'
>>> a.full_clean()
>>> a.version
Version('0.1.0')
Closes #43, #45
|
|\
| |
| | |
Convert readthedocs links for their .org -> .io migration for hosted projects
|
|/
|
|
|
|
|
|
| |
As per [their blog post of the 27th April](https://blog.readthedocs.com/securing-subdomains/) ‘Securing subdomains’:
> Starting today, Read the Docs will start hosting projects from subdomains on the domain readthedocs.io, instead of on readthedocs.org. This change addresses some security concerns around site cookies while hosting user generated data on the same domain as our dashboard.
Test Plan: Manually visited all the links I’ve modified.
|
|\
| |
| | |
Add a doc section about compatible release clauses
|
| |
| |
| |
| |
| | |
Previously, if the patch version was 0 (i.e. as in ~=2.2.0),
this would cause the range to be interpreted as ~=2.2.
|
|/ |
|
|\
| |
| | |
Add support for compatible release ranges
|
| | |
|
|/ |
|
|
|
|
| |
Thanks to @autopulated for pointing the issue!
|
| |
|
| |
|
| |
|
|
|
|
| |
Drop support for Django 1.4; go up to 1.9
|
| |
|
|
|
|
| |
The PR was broken through fixed in ``next_minor()`` / ``next_major()``.
|
|\ |
|
| |\
|/ /
| |
| | |
https://github.com/skwashd/python-semanticversion into skwashd-tilde-caret
|
| | |
|
| |
| |
| |
| |
| | |
Composer assumes equals if no operator is used
npm uses a single equals operator
|
| | |
|
| | |
|
| |
| |
| |
| | |
It seems that stating the copyright years is useless after all :)
|
|\ \
| | |
| | |
| | | |
https://github.com/MinchinWeb/python-semanticversion into MinchinWeb-bump-version-2
|
| | | |
|
| | | |
|
|\ \ \
| | | |
| | | | |
Fixed typo in README.rst
|
| |/ /
| | |
| | | |
Replaced 'licence' with 'license'
|
|\ \ \
| |_|/
|/| | |
Fix issue #33 - null VersionField breaks ORM
|
| | |
| | |
| | |
| | |
| | |
| | | |
I've added a save_and_refresh function to allow objects to be saved
and then updated from the database, replicating the refresh_from_db
method that exists in Django 1.8, and wrapping in the save method.
|
|/ /
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
I've updated the `BaseSemVerField` method `get_prep_value` so that it
will return None when the field value is None, rather than the string
representation 'None'. Previously this would break the ORM, which would
save the string 'None' into the database, and then attempt to parse that
as a version number. This change means that the default empty value for
both VersionField and SpecField is None. Both derive from CharField,
which uses an empty string as its default empty value, however it seems
more logical in the case of these objects that no object is null, and
not an empty string.
Includes tests.
|
|/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
SemVer 2.0.0 states that "Build metadata SHOULD be ignored when
determining version precedence".
This means that, when comparing ``0.1.0+1`` to ``0.1.0+bcd``::
>>> Version('0.1.0+1') == Version('0.1.0+bcd')
False
>>> Version('0.1.0+1') != Version('0.1.0+bcd')
True
>>> Version('0.1.0+1') < Version('0.1.0+bcd')
False
>>> Version('0.1.0+1') > Version('0.1.0+bcd')
False
>>> Version('0.1.0+1') <= Version('0.1.0+bcd')
False
>>> Version('0.1.0+1') >= Version('0.1.0+bcd')
False
>>> compare(Version('0.1.0+1'), Version('0.1.0+bcd'))
NotImplemented
This change also has the following effects:
- When including build metadata in a ``Spec``, the only valid options
are ``Spec('==0.1.0+sth')`` and ``Spec('!=0.1.0+sth')``
- The meaning of ``Spec('==0.1.0+')`` is now "Only version 0.1.0 without
build metadata"
- ``Spec('==0.1.0')`` now matches ``Version('0.1.0+anything')``
|
| |
|