Alan Orth
0b2d211455
Version 0.4.1
2020-01-15 12:19:42 +02:00
Alan Orth
7f1df0b47c
Support Python 3.6 and 3.7 again
2020-01-15 12:19:17 +02:00
Alan Orth
365ecda324
Add utility function to check normalization
...
Python's built-in unicodedata library includes the is_normalized()
function starting with Python 3.8. This utility function allows us
to do the same thing with earlier Python versions.
See: https://docs.python.org/3/library/unicodedata.html
2020-01-15 12:17:52 +02:00
Alan Orth
550ce7fb7e
.travis.yml: Only test Python 3.8
...
The Unicode normalization feature requires Python 3.8 because the
unicodedata.is_normalized() function only appears there. If I find
another way to check if a string is normalized without normalizing
it first I will drop the requirements back down to Python 3.6.
See: https://docs.python.org/3/library/unicodedata.html
2020-01-15 11:57:21 +02:00
Alan Orth
705127fd28
Version 0.4.0
2020-01-15 11:44:56 +02:00
Alan Orth
894e0a196d
setup.py: Change Python requirements
...
The `unicodedata.is_normalized()` function requires Python 3.8.
See: https://docs.python.org/3/library/unicodedata.html
2020-01-15 11:43:25 +02:00
Alan Orth
87181bc7b8
Run black, isort, and flake8.
2020-01-15 11:41:31 +02:00
Alan Orth
8de5d862b6
CHANGELOG.md: Add note about Unicode normalization
2020-01-15 11:40:40 +02:00
Alan Orth
49e3543878
Add Unicode normalization
...
This will check all strings for un-normalized Unicode characters.
Normalization is done using NFC. This includes tests and updated
sample data (data/test.csv).
See: https://withblue.ink/2019/03/11/why-you-need-to-normalize-unicode-strings.html
2020-01-15 11:37:54 +02:00
Alan Orth
403b253762
CHANGELOG.md: Update python library versions
2020-01-15 10:58:44 +02:00
Alan Orth
c5fbaf407a
Update python requirements
...
Generated using pipenv:
$ pipenv lock -r > requirements.txt
$ pipenv lock -r -d > requirements-dev.txt
2020-01-15 10:51:58 +02:00
Alan Orth
4f81f6c83c
Pipfile.lock: Run pipenv update
2020-01-15 10:51:19 +02:00
Alan Orth
4b9d1e060f
setup.py: Add Python 3.8 classifier
2019-12-14 12:56:11 +02:00
Alan Orth
c8a71e3143
Pipfile.lock: Run pipenv update
2019-12-14 12:53:39 +02:00
Alan Orth
7964d98ca5
Pipfile: Specify exact version of black
...
Black only releases pre-release versions, which causes issues with
pipenv. Instead of always running pipenv with "--pre" and potenti-
ally letting in some other pre-release versions for other depende-
ncies, I would rather specify the latest black version explicitly.
See: https://github.com/psf/black/issues/517
See: https://github.com/microsoft/vscode-python/issues/5171
2019-12-14 12:41:28 +02:00
Alan Orth
64ffc2f1da
.travis.yml: Install packages from requirements.txt too
2019-11-14 23:42:28 +02:00
Alan Orth
7b1bc29a92
.travis.yml: Try using pip instead of pipenv
...
The Pipfile knows it was created with Python 3.8, yet we're running
with multiple Python versions on Travis. I'm curious if would work
better to use pip to install dependencies instead of pipenv in this
case.
2019-11-14 23:37:25 +02:00
Alan Orth
f0110d8e74
CHANGELOG.md: Add note about requirements
2019-11-14 23:30:26 +02:00
Alan Orth
86498deee8
Update python requirements
...
Generated using pipenv:
$ pipenv lock -r > requirements.txt
$ pipenv lock -r -d > requirements-dev.txt
2019-11-14 23:28:42 +02:00
Alan Orth
251647a15f
CHANGELOG.md: Add TravisCI changes
2019-11-14 23:24:08 +02:00
Alan Orth
0bd28e22ec
.travis.yml: Test Python 3.8
2019-11-14 23:22:37 +02:00
Alan Orth
63fdce7d13
.travis.yml: Use Ubuntu 18.04 "Bionic"
2019-11-14 23:22:19 +02:00
Alan Orth
f068c0e16a
CHANGELOG.md: Use Python 3.8.0 for pipenv
2019-11-14 23:11:43 +02:00
Alan Orth
79b8f62a85
Use Python 3.8 for pipenv
...
Python 3.8.0 entered Arch Linux core repositories now and all tests
pass with Python 3.8.0 so it's time...
2019-11-14 23:10:20 +02:00
Alan Orth
6c1e132531
CHANGELOG.md: Add unreleased changes
2019-11-14 09:19:19 +02:00
Alan Orth
c0f3c866bd
Pipfile.lock: Run pipenv update
...
Updates the following dependencies:
- numpy 1.17.2→1.17.4
- pandas 0.25.1→0.25.3
- flake8 3.7.8→3.7.9
- pytest 5.1.3→5.2.2
- black 19.3b0→19.10b0
2019-11-14 09:17:31 +02:00
Alan Orth
36d0474b95
CHANGELOG.md: Move unreleased changes to v0.3.1
2019-10-01 17:11:52 +03:00
Alan Orth
efdc3a841a
Version 0.3.1
2019-10-01 17:11:13 +03:00
Alan Orth
fd2ba6845d
CHANGELOG.md: Update unreleased notes
2019-10-01 17:10:23 +03:00
Alan Orth
e55380b4d5
csv_metadata_quality/fix.py: Harmonize language in fix output
...
We should always say if we're removing or replacing something.
2019-10-01 17:09:49 +03:00
Alan Orth
85ae16d9b7
CHANGELOG.md: Add note about non-breaking spaces
2019-10-01 16:56:37 +03:00
Alan Orth
c42f8b4812
csv_metadata_quality/fix.py: Replace non-breaking spaces
...
We should be replacing non-breaking spaces (U+00A0) with normal sp-
aces instead of removing them.
2019-10-01 16:55:04 +03:00
Alan Orth
1c75608d54
README.md: Update introduction text
...
We should mention that this is not DSpace specific. Rather, it is
much more realistically Dublin Core specific.
2019-09-26 14:19:13 +03:00
Alan Orth
0b15a8ed3b
README.md: Remove TODO about lack of space after comma
...
This was added as an automatic global fix a few weeks ago.
2019-09-26 14:16:33 +03:00
Alan Orth
9ca266f5f0
data/test.csv: Change birthdate column to dc.date.issued
...
More accurately reflects actual data we will be validating.
2019-09-26 14:15:48 +03:00
Alan Orth
0d3f948708
CHANGELOG.md: Update comment about language validation
2019-09-26 14:14:57 +03:00
Alan Orth
c04207fcfc
CHANGELOG.md: Fix header formatting
2019-09-26 14:13:50 +03:00
Alan Orth
9d4eceddc7
.build.yml: Enable experimental CLI checks on SourceHut
2019-09-26 14:11:35 +03:00
Alan Orth
e15c98cccb
Move unreleased changes to v0.3.0
2019-09-26 14:06:31 +03:00
Alan Orth
93c4e1a993
Update python requirements
...
Generated using pipenv:
$ pipenv lock -r > requirements.txt
$ pipenv lock -r -d > requirements-dev.txt
2019-09-26 14:05:37 +03:00
Alan Orth
9963b2bb64
Pipfile.lock: Run pipenv update
2019-09-26 14:04:50 +03:00
Alan Orth
76291c1876
CHANGELOG.md: Add note about language validation
2019-09-26 14:03:18 +03:00
Alan Orth
604bd5bda6
Reformat tests with black
2019-09-26 14:02:51 +03:00
Alan Orth
e7c220039b
README.md: Add note about experimental language validation
2019-09-26 13:59:50 +03:00
Alan Orth
d7b5e378bc
setup.py: Add langid
2019-09-26 13:49:32 +03:00
Alan Orth
8435ee242d
Experimental language detection using langid
...
Works decenty well assuming the title, abstract, and citation fields
are an accurate representation of the language as identified by the
language field. Handles ISO 639-1 (alpha 2) and ISO 639-3 (alpha 3)
values seamlessly.
This includes updated pipenv environment, test data, pytest tests
for both correct and incorrect ISO 639-1 and ISO 639-3 languages,
and a new command line option "-e".
2019-09-26 13:46:32 +03:00
Alan Orth
7ac1c6f554
README.md: Update comment about ISO 639-3
...
The pycountry library is actually using ISO 639-3 apparently.
See: https://pypi.org/project/pycountry/
2019-09-26 07:51:41 +03:00
Alan Orth
86d4623fd3
More ISO 639-1 and ISO 639-3 fixes
...
ISO 639-1 uses two-letter codes and ISO 639-3 uses three-letter codes.
Technically there ISO 639-2/T and ISO 639-2/B, which also uses three
letter codes, but those are not supported by the pycountry library
so I won't even worry about them.
See: https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes
2019-09-26 07:44:39 +03:00
Alan Orth
ddbe970342
data/test.csv: Update titles of language tests
...
ISO 639-1 is alpha 2 and ISO 639-3 is alpha 3.
See: https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes
2019-09-26 07:40:27 +03:00
Alan Orth
31c78ca6f3
data/test.csv: Rename contributor column to title
...
This makes more sense as a description of each test and the titles
are obviously not authors.
2019-09-26 05:50:40 +03:00