lists.arthurdejong.org
RSS feed

python-stdnum branch master updated. 1.8.1-25-gd9defc8

[Date Prev][Date Next] [Thread Prev][Thread Next]

python-stdnum branch master updated. 1.8.1-25-gd9defc8



This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "python-stdnum".

The branch, master has been updated
       via  d9defc8b514e5f2d9c545de23054e416bd7bd2ab (commit)
      from  e200656d89de638b716d24da928bc57bc41b9e3e (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
https://arthurdejong.org/git/python-stdnum/commit/?id=d9defc8b514e5f2d9c545de23054e416bd7bd2ab

commit d9defc8b514e5f2d9c545de23054e416bd7bd2ab
Author: Arthur de Jong <arthur@arthurdejong.org>
Date:   Sat Apr 14 14:01:51 2018 +0200

    Get files ready for 1.9 release

diff --git a/ChangeLog b/ChangeLog
index 5b52ce4..13c3f01 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,257 @@
+2018-04-12  Arthur de Jong <arthur@arthurdejong.org>
+
+       * [e200656] stdnum/iban.py, tests/test_be_iban.doctest: Add an
+         extra test for Belgian IBANs
+
+         A Belgian IBAN should not end with 00. This also fixes a docstring
+         and comment in the IBAN module.
+
+2018-04-10  Arthur de Jong <arthur@arthurdejong.org>
+
+       * [e6739be] stdnum/imsi.dat, stdnum/imsi.py, tests/test_imsi.doctest,
+         update/imsi.py: Correctly split IMSI with multi-length MNC
+
+         Ensures that imsi.split() will correctly split the IMSI into
+         an MCC, MNC and MSIN even if not all MNCs within a single MCC
+         have the same length.  This has the downside of not being able
+         to guess the MNC length in some cases.
+
+         This also omits empty information from the data file and updates
+         the data file from Wikipedia.
+
+         Closes https://github.com/arthurdejong/python-stdnum/issues/68
+
+2018-04-09  Arthur de Jong <arthur@arthurdejong.org>
+
+       * [2541a22] online_check/check.js: Improve online check animation
+
+         This speeds up the animation, collapsing the list before
+         performing the server request and disable the slide animation
+         on history navigation.
+
+2018-04-09  Arthur de Jong <arthur@arthurdejong.org>
+
+       * [147b84b] online_check/stdnum.wsgi: Ensure API requests are
+         cached separately
+
+         This ensures that requests that browsers make using XMLHttpRequest
+         (they set the X-Requested-With header) are cached separately
+         from normal requests.
+
+2018-04-09  Arthur de Jong <arthur@arthurdejong.org>
+
+       * [8204ac6] stdnum/do/ncf.py: Support new style of NCF numbers
+
+         This adds support for validating Dominican Republic invoice
+         numbers that should be used since from 2018-05-01.
+
+         
http://www.dgii.gov.do/contribuyentes/personasFisicas/inicioOperaciones/ComprobantesFiscales/Paginas/SecuenciaDeNCF.aspx
+
+         Closes https://github.com/arthurdejong/python-stdnum/issues/69
+
+2018-03-25  Arthur de Jong <arthur@arthurdejong.org>
+
+       * [918d483] stdnum/figi.py, tests/test_figi.doctest: Add Financial
+         Instrument Global Identifier
+
+2018-03-23  Arthur de Jong <arthur@arthurdejong.org>
+
+       * [ceb3c62] stdnum/de/__init__.py,
+         stdnum/de/handelsregisternummer.py,
+         tests/test_de_handelsregisternummer.doctest: Add German company
+         registry numbers
+
+         Based on the implementation provided by Markus Törnqvist and
+         Lari Haataja of Holvi Payment Services.
+
+2018-03-19  Arthur de Jong <arthur@arthurdejong.org>
+
+       * [fec1685] stdnum/at/tin.py: Also ignore other letters with
+         possible umlaut
+
+         Fixes 98d11a3
+
+         Closes https://github.com/arthurdejong/python-stdnum/pull/67
+
+2018-03-18  Arthur de Jong <arthur@arthurdejong.org>
+
+       * [98d11a3] stdnum/at/fa.dat, stdnum/at/tin.py,
+         tests/test_at_tin.doctest: Add Austrian Abgabenkontonummer
+
+         Based on the implementation provided by Mohammed Salman of Holvi.
+
+         Closes https://github.com/arthurdejong/python-stdnum/pull/50
+
+2018-03-17  Arthur de Jong <arthur@arthurdejong.org>
+
+       * [ab15e20] stdnum/at/__init__.py: Fix import order
+
+         Fixes ee263a5
+
+2018-03-17  Arthur de Jong <arthur@arthurdejong.org>
+
+       * [ee263a5] setup.cfg, stdnum/at/__init__.py,
+         stdnum/at/postleitzahl.dat, stdnum/at/postleitzahl.py,
+         stdnum/nl/__init__.py, update/at_postleitzahl.py: Add Austrian
+         postal code
+
+         This also fixes the name of the Dutch postal_code alias and
+         tunes the tests.
+
+2018-03-17  Arthur de Jong <arthur@arthurdejong.org>
+
+       * [8c29fbf] stdnum/me/__init__.py, stdnum/me/iban.py,
+         tests/test_iban.doctest: Add support for Montenegro IBAN format
+
+         This adds further checks to the country-specific part of the
+         IBAN for Montenegro IBANs.
+
+2018-03-11  Arthur de Jong <arthur@arthurdejong.org>
+
+       * [647dfea] stdnum/de/stnr.py, tests/test_de_stnr.doctest: Add
+         German Steuernummer
+
+         Based on the implementation provided by Mohammed Salman of Holvi.
+
+         This is the old tax number that is being replaced by the
+         Steuerliche Identifikationsnummer. The number has a regional form
+         (which is used most often) and a national form.
+
+         Closes https://github.com/arthurdejong/python-stdnum/pull/49
+
+2018-02-28  Esa Halsti <esa.halsti@taitoa.fi>
+
+       * [6e30cf5] stdnum/fi/hetu.py, tests/test_fi_hetu.doctest: Add
+         validation for "individual" part of hetu
+
+         The range between 900 and 999 is reserved for temporary identifiers
+         and is not given to any real person.
+
+         Closes https://github.com/arthurdejong/python-stdnum/pull/66
+
+2018-03-10  Arthur de Jong <arthur@arthurdejong.org>
+
+       * [70dc091] setup.cfg: Support building a universal wheel
+
+2018-02-19  Arthur de Jong <arthur@arthurdejong.org>
+
+       * [75138a4] stdnum/do/cedula.py, tests/test_do_cedula.py: Add
+         check_dgii() to stdnum.do.cedula module
+
+         This exposes the stdnum.do.rnc.check_dgii() in the stdnum.do.cedula
+         module with but rename the rnc result entry to cedula.
+
+         Closes https://github.com/arthurdejong/python-stdnum/issues/63
+
+2018-02-19  Arthur de Jong <arthur@arthurdejong.org>
+
+       * [92d751c] stdnum/do/ncf.py, stdnum/do/rnc.py: Fix PySimpleSOAP
+         DGII result parsing issue
+
+         This strips the wrapper that PySimpleSOAP puts around results
+         from the DGII PySimpleSOAP SOAP call.
+
+         Closes https://github.com/arthurdejong/python-stdnum/issues/64
+         Closes https://github.com/arthurdejong/python-stdnum/issues/65
+
+2018-02-19  Arthur de Jong <arthur@arthurdejong.org>
+
+       * [81947a2] docs/index.rst: Improve get_cc_module() documentation
+
+2018-02-14  Arthur de Jong <arthur@arthurdejong.org>
+
+       * [5cbba25] setup.cfg, stdnum/al/__init__.py, stdnum/ar/__init__.py,
+         stdnum/at/__init__.py, stdnum/be/__init__.py, stdnum/be/iban.py,
+         stdnum/cl/__init__.py, stdnum/co/__init__.py,
+         stdnum/cz/__init__.py, stdnum/dk/__init__.py,
+         stdnum/do/__init__.py, stdnum/ec/__init__.py,
+         stdnum/ee/__init__.py, stdnum/es/__init__.py, stdnum/exceptions.py,
+         stdnum/fi/__init__.py, stdnum/fr/__init__.py,
+         stdnum/hr/__init__.py, stdnum/hu/__init__.py,
+         stdnum/is_/__init__.py, stdnum/it/__init__.py,
+         stdnum/lt/__init__.py, stdnum/lu/__init__.py,
+         stdnum/lv/__init__.py, stdnum/mc/__init__.py,
+         stdnum/mx/__init__.py, stdnum/nl/__init__.py,
+         stdnum/no/__init__.py, stdnum/pl/__init__.py,
+         stdnum/pt/__init__.py, stdnum/ro/__init__.py,
+         stdnum/rs/__init__.py, stdnum/si/__init__.py,
+         stdnum/sk/__init__.py, stdnum/sm/__init__.py, tests/test_do_ncf.py,
+         tests/test_do_rnc.py, update/be_banks.py, update/numlist.py:
+         Update the flake8 ignore list
+
+         Re-enable the flake8 test for unused imports by explicitly marking
+         imports for namespace purposes. This allows us to remove a few
+         unused imports.
+
+         A few more cleanups that allow us to reduce the number of
+         ignored flake8 ignored tests. The remaining ignored tests are
+         now documented.
+
+         Ignore a flake8 warning about print statements because we use
+         print in the update scripts.
+
+2018-02-11  Arthur de Jong <arthur@arthurdejong.org>
+
+       * [201960c] stdnum/be/iban.py, stdnum/bic.py, stdnum/iban.py,
+         tests/test_be_iban.doctest: Add test for Belgian IBANs
+
+         This adds a test for IBANs that were found online together with
+         a BIC code to test the IBAN to swift code mapping.
+
+         This also supports some extra separators in IBAN and BIC numbers
+         and fixes a check digit calculation issue in the Belgian account
+         number check digits.
+
+2018-02-10  Arthur de Jong <arthur@arthurdejong.org>
+
+       * [56002fa] stdnum/be/banks.dat, stdnum/be/iban.py,
+         tests/test_iban.doctest, update/be_banks.py,
+         update/requirements.txt: Add support for Belgian IBAN format
+
+         This adds further checks to the country-specific part of the
+         IBAN for Belgian IBANs.
+
+         Closes https://github.com/arthurdejong/python-stdnum/issues/62
+
+2018-02-10  Arthur de Jong <arthur@arthurdejong.org>
+
+       * [c611b27] stdnum/bic.py: Support spaces in BIC codes
+
+         BIC codes are sometimes written in a space-separated form this
+         correctly cleans the spaces for compact representation.
+
+2018-02-06  Arthur de Jong <arthur@arthurdejong.org>
+
+       * [5fd1ae0] stdnum/do/ncf.py, stdnum/do/rnc.py, stdnum/eu/vat.py,
+         stdnum/tr/tckimlik.py, stdnum/util.py: Allow configuring SOAP
+         request timeout
+
+         This adds a timeout parameter to all checks that use a SOAP web
+         service to reduce the blocking time. The default timeout for
+         all checks is 30 seconds.
+
+2018-01-07  Chris Lamb <chris@chris-lamb.co.uk>
+
+       * [c113613] stdnum/eu/vat.py: Exclude EU country codes from
+         documentation
+
+         Whilst working on the Reproducible Builds effort [0], we noticed
+         that python-stdnum could not be built reproducibly as it relies
+         on a stable set ordering when generating the documentation.
+
+         This has been filed in Debian as #88652
+
+          [0] https://reproducible-builds.org/ [1]
+          https://bugs.debian.org/886522
+
+         Closes: https://github.com/arthurdejong/python-stdnum/pull/61
+         Signed-off-by: Chris Lamb <chris@chris-lamb.co.uk>
+
+2018-01-06  Arthur de Jong <arthur@arthurdejong.org>
+
+       * [9841bae] ChangeLog, NEWS, stdnum/__init__.py: Get files ready
+         for 1.8.1 release
+
 2018-01-06  Arthur de Jong <arthur@arthurdejong.org>
 
        * [820c233] README: Fix feedback section in README to be valid RST
diff --git a/NEWS b/NEWS
index 2ec21a4..d0ae042 100644
--- a/NEWS
+++ b/NEWS
@@ -1,3 +1,26 @@
+changes from 1.8.1 to 1.9
+-------------------------
+
+* add modules for the following number formats:
+  - Postleitzahl (Austrian postal code)
+  - Abgabenkontonummer (Austrian tax identification number)
+  - Belgian IBAN (International Bank Account Number)
+  - Handelsregisternummer (German company register number)
+  - St.-Nr. (Steuernummer, German tax number)
+  - FIGI (Financial Instrument Global Identifier)
+  - Montenegro IBAN (International Bank Account Number)
+* Have documentation rebuilt reproducibly (thanks Chris Lamb)
+* Allow configuring the SOAP request timeout
+* Support spaces in ISO 9362 (SWIFT) BIC codes
+* Add check_dgii() to stdnum.do.cedula module
+* Add validation for "individual" part of hetu (thanks Esa Halsti)
+* Support new style of Dominican Republic NCF numbers
+* Fix issue when using PySimpleSOAP for DGII lookups
+* Fix an issue in splitting certain IMSI values
+* Support building a universal wheel
+* Documentation and code style improvements
+
+
 changes from 1.8 to 1.8.1
 -------------------------
 
diff --git a/README b/README
index fd0a92b..54f76b7 100644
--- a/README
+++ b/README
@@ -19,10 +19,13 @@ Currently this package supports the following formats:
  * CBU (Clave Bancaria Uniforme, Argentine bank account number)
  * CUIT (Código Único de Identificación Tributaria, Argentinian tax number)
  * Austrian Company Register Numbers
+ * Postleitzahl (Austrian postal code)
+ * Abgabenkontonummer (Austrian tax identification number)
  * UID (Umsatzsteuer-Identifikationsnummer, Austrian VAT number)
  * ABN (Australian Business Number)
  * ACN (Australian Company Number)
  * TFN (Australian Tax File Number)
+ * Belgian IBAN (International Bank Account Number)
  * BTW, TVA, NWSt, ondernemingsnummer (Belgian enterprise number)
  * EGN (ЕГН, Единен граждански номер, Bulgarian personal identity codes)
  * PNF (ЛНЧ, Личен номер на чужденец, Bulgarian number of a foreigner)
@@ -43,7 +46,9 @@ Currently this package supports the following formats:
  * Αριθμός Εγγραφής Φ.Π.Α. (Cypriot VAT number)
  * DIČ (Daňové identifikační číslo, Czech VAT number)
  * RČ (Rodné číslo, the Czech birth number)
+ * Handelsregisternummer (German company register number)
  * IdNr (Steuerliche Identifikationsnummer, German personal tax number)
+ * St.-Nr. (Steuernummer, German tax number)
  * Ust ID Nr. (Umsatzsteur Identifikationnummer, German VAT number)
  * Wertpapierkennnummer (German securities identification code)
  * CPR (personnummer, the Danish citizen number)
@@ -75,6 +80,7 @@ Currently this package supports the following formats:
  * HETU (Henkilötunnus, Finnish personal identity code)
  * Veronumero (Finnish individual tax number)
  * Y-tunnus (Finnish business identifier)
+ * FIGI (Financial Instrument Global Identifier)
  * NIF (Numéro d'Immatriculation Fiscale, French tax identification number)
  * NIR (French personal identification number)
  * SIREN (a French company identification number)
@@ -112,6 +118,7 @@ Currently this package supports the following formats:
  * TVA (taxe sur la valeur ajoutée, Luxembourgian VAT number)
  * PVN (Pievienotās vērtības nodokļa, Latvian VAT number)
  * n° TVA (taxe sur la valeur ajoutée, Monacan VAT number)
+ * Montenegro IBAN (International Bank Account Number)
  * MEID (Mobile Equipment Identifier)
  * VAT (Maltese VAT number)
  * RFC (Registro Federal de Contribuyentes, Mexican tax number)
diff --git a/docs/index.rst b/docs/index.rst
index 732be93..2f7bbae 100644
--- a/docs/index.rst
+++ b/docs/index.rst
@@ -104,10 +104,13 @@ Available formats
    ar.cbu
    ar.cuit
    at.businessid
+   at.postleitzahl
+   at.tin
    at.uid
    au.abn
    au.acn
    au.tfn
+   be.iban
    be.vat
    bg.egn
    bg.pnf
@@ -128,7 +131,9 @@ Available formats
    cy.vat
    cz.dic
    cz.rc
+   de.handelsregisternummer
    de.idnr
+   de.stnr
    de.vat
    de.wkn
    dk.cpr
@@ -160,6 +165,7 @@ Available formats
    fi.hetu
    fi.veronumero
    fi.ytunnus
+   figi
    fr.nif
    fr.nir
    fr.siren
@@ -197,6 +203,7 @@ Available formats
    lu.tva
    lv.pvn
    mc.tva
+   me.iban
    meid
    mt.vat
    mx.rfc
diff --git a/docs/stdnum.at.postleitzahl.rst b/docs/stdnum.at.postleitzahl.rst
new file mode 100644
index 0000000..03569e3
--- /dev/null
+++ b/docs/stdnum.at.postleitzahl.rst
@@ -0,0 +1,5 @@
+stdnum.at.postleitzahl
+======================
+
+.. automodule:: stdnum.at.postleitzahl
+   :members:
\ No newline at end of file
diff --git a/docs/stdnum.at.tin.rst b/docs/stdnum.at.tin.rst
new file mode 100644
index 0000000..42c583a
--- /dev/null
+++ b/docs/stdnum.at.tin.rst
@@ -0,0 +1,5 @@
+stdnum.at.tin
+=============
+
+.. automodule:: stdnum.at.tin
+   :members:
\ No newline at end of file
diff --git a/docs/stdnum.be.iban.rst b/docs/stdnum.be.iban.rst
new file mode 100644
index 0000000..afff2ce
--- /dev/null
+++ b/docs/stdnum.be.iban.rst
@@ -0,0 +1,5 @@
+stdnum.be.iban
+==============
+
+.. automodule:: stdnum.be.iban
+   :members:
\ No newline at end of file
diff --git a/docs/stdnum.de.handelsregisternummer.rst 
b/docs/stdnum.de.handelsregisternummer.rst
new file mode 100644
index 0000000..6c69510
--- /dev/null
+++ b/docs/stdnum.de.handelsregisternummer.rst
@@ -0,0 +1,5 @@
+stdnum.de.handelsregisternummer
+===============================
+
+.. automodule:: stdnum.de.handelsregisternummer
+   :members:
\ No newline at end of file
diff --git a/docs/stdnum.de.stnr.rst b/docs/stdnum.de.stnr.rst
new file mode 100644
index 0000000..a43c68c
--- /dev/null
+++ b/docs/stdnum.de.stnr.rst
@@ -0,0 +1,5 @@
+stdnum.de.stnr
+==============
+
+.. automodule:: stdnum.de.stnr
+   :members:
\ No newline at end of file
diff --git a/docs/stdnum.figi.rst b/docs/stdnum.figi.rst
new file mode 100644
index 0000000..1fd5972
--- /dev/null
+++ b/docs/stdnum.figi.rst
@@ -0,0 +1,5 @@
+stdnum.figi
+===========
+
+.. automodule:: stdnum.figi
+   :members:
\ No newline at end of file
diff --git a/docs/stdnum.me.iban.rst b/docs/stdnum.me.iban.rst
new file mode 100644
index 0000000..bc2841c
--- /dev/null
+++ b/docs/stdnum.me.iban.rst
@@ -0,0 +1,5 @@
+stdnum.me.iban
+==============
+
+.. automodule:: stdnum.me.iban
+   :members:
\ No newline at end of file
diff --git a/setup.py b/setup.py
index 496e57b..ca091f1 100755
--- a/setup.py
+++ b/setup.py
@@ -2,7 +2,7 @@
 
 # setup.py - python-stdnum installation script
 #
-# Copyright (C) 2010-2017 Arthur de Jong
+# Copyright (C) 2010-2018 Arthur de Jong
 #
 # This library is free software; you can redistribute it and/or
 # modify it under the terms of the GNU Lesser General Public
diff --git a/stdnum/__init__.py b/stdnum/__init__.py
index f585bde..becdaa8 100644
--- a/stdnum/__init__.py
+++ b/stdnum/__init__.py
@@ -42,4 +42,4 @@ from stdnum.util import get_cc_module
 __all__ = ('get_cc_module', '__version__')
 
 # the version number of the library
-__version__ = '1.8.1'
+__version__ = '1.9'
diff --git a/stdnum/at/postleitzahl.dat b/stdnum/at/postleitzahl.dat
index 1adcbb6..39cf763 100644
--- a/stdnum/at/postleitzahl.dat
+++ b/stdnum/at/postleitzahl.dat
@@ -1,4 +1,4 @@
-# generated from PLZ_Verzeichnis_OKT17.xls downloaded from 
+# generated from PLZ_Verzeichnis_APR18.xls downloaded from 
 # 
https://www.post.at/en/business_advertise_products_and_services_addresses_postcodes.php
 1010 location="Wien" region="Wien"
 1020 location="Wien" region="Wien"
diff --git a/stdnum/be/banks.dat b/stdnum/be/banks.dat
index 0774640..9be8db7 100644
--- a/stdnum/be/banks.dat
+++ b/stdnum/be/banks.dat
@@ -1,6 +1,6 @@
 # generated from current_codes.xls downloaded from
 # https://www.nbb.be/doc/be/be/protocol/current_codes.xls
-# version 03/01/2018
+# version 15/03/2018
 000-000 bic="BPOTBEB1" bank="bpost bank"
 001-049 bic="GEBABEBB" bank="BNP Paribas Fortis"
 050-099 bic="GKCCBEBB" bank="BELFIUS BANK"
@@ -66,7 +66,7 @@
 581-581 bic="MHCBBEBB" bank="Mizuho Bank Europe N.V. Brussels Branch"
 583-583 bic="DEGRBEBB" bank="Banque Degroof Petercam Luxembourg"
 584-584 bic="ICICBE2X" bank="ICICI Bank UK Limited"
-585-585 bic="RCBPBEBB" bank="Rothschild & Cie Banque GCV"
+585-585 bic="RCBPBEBB" bank="Rothschild Belgique Succursale Rothschild Martin 
Maurel"
 586-586 bic="CFFRBEB1" bank="Crédit Foncier de France"
 587-587 bic="BIBLBE21" bank="BinckBank"
 588-588 bic="CMCIBEB1BTB" bank="Banque Transatlantique Belgium"
@@ -164,6 +164,7 @@
 920-923 bic="HBKABE22" bank="Record Bank"
 924-924 bic="FMMSBEB1" bank="Fimaser"
 925-925 bic="HBKABE22" bank="Record Bank"
+926-926 bic="EBPBBEB1" bank="Ebury Partners Belgium"
 929-939 bic="HBKABE22" bank="Record Bank"
 940-940 bic="CLIQBEB1" bank="Banque Centrale de Compensation (Clearnet)"
 941-941 bic="CVMCBEBB" bank="C A Indosuez Wealth (Europe)"
diff --git a/stdnum/cn/loc.dat b/stdnum/cn/loc.dat
index d098e0d..95683e1 100644
--- a/stdnum/cn/loc.dat
+++ b/stdnum/cn/loc.dat
@@ -1,6 +1,6 @@
 # generated from National Bureau of Statistics of the People's
 # Republic of China, downloaded from https://github.com/cn/GB2260
-# 2018-01-01 12:14:49.217641
+# 2018-04-14 10:02:11.994862
 110101 county="东城区" prefecture="市辖区" province="北京市"
 110102 county="西城区" prefecture="市辖区" province="北京市"
 110103 county="崇文区" prefecture="市辖区" province="北京市"
diff --git a/stdnum/eu/nace.dat b/stdnum/eu/nace.dat
index 9217f47..b268d6f 100644
--- a/stdnum/eu/nace.dat
+++ b/stdnum/eu/nace.dat
@@ -1,4 +1,4 @@
-# generated from NACE_REV2_20180101_131838.xml, downloaded from
+# generated from NACE_REV2_20180414_120212.xml, downloaded from
 # 
http://ec.europa.eu/eurostat/ramon/nomenclatures/index.cfm?TargetUrl=ACT_OTH_CLS_DLD&StrNom=NACE_REV2&StrFormat=XML&StrLanguageCode=EN
 # NACE_REV2: Statistical Classification of Economic Activities in the European 
Community, Rev. 2 (2008)
 A label="AGRICULTURE, FORESTRY AND FISHING" isic="A"
diff --git a/stdnum/imsi.dat b/stdnum/imsi.dat
index 07b1d2d..e26ac5f 100644
--- a/stdnum/imsi.dat
+++ b/stdnum/imsi.dat
@@ -618,7 +618,7 @@
 255
  01 bands="GSM 900 / GSM 1800 / UMTS 2100 / LTE 2600" brand="Vodafone" cc="ua" 
country="Ukraine" operator="PRJSC VF Ukraine" status="Operational"
  02 bands="GSM 900 / GSM 1800" brand="Beeline" cc="ua" country="Ukraine" 
operator="Kyivstar GSM JSC" status="Not operational"
- 03 bands="GSM 900 / GSM 1800 / UMTS 2100" brand="Kyivstar" cc="ua" 
country="Ukraine" operator="Kyivstar JSC" status="Operational"
+ 03 bands="GSM 900 / GSM 1800 / UMTS 2100 / LTE 2600" brand="Kyivstar" cc="ua" 
country="Ukraine" operator="Kyivstar JSC" status="Operational"
  04 bands="CDMA 800" brand="IT" cc="ua" country="Ukraine" 
operator="Intertelecom LLC" status="Operational"
  05 bands="GSM 1800" brand="Golden Telecom" cc="ua" country="Ukraine" 
operator="Kyivstar GSM JSC" status="Not operational"
  06 bands="GSM 900 / GSM 1800 / UMTS 2100 / LTE 2600" brand="lifecell" cc="ua" 
country="Ukraine" operator="Turkcell" status="Operational"
@@ -805,9 +805,9 @@
 278
  01 bands="GSM 900 / UMTS 2100 / LTE 1800" brand="Vodafone" cc="mt" 
country="Malta" operator="Vodafone Malta" status="Operational"
  11 bands="MVNO" cc="mt" country="Malta" operator="YOM Ltd." 
status="Operational"
- 21 bands="GSM 1800 / UMTS 2100 / LTE 1800" brand="GO" cc="mt" country="Malta" 
operator="Mobile Communications Limited" status="Operational"
+ 21 bands="GSM 900 / GSM 1800 / UMTS 2100 / LTE 1800" brand="GO" cc="mt" 
country="Malta" operator="Mobile Communications Limited" status="Operational"
  30 brand="GO" cc="mt" country="Malta" operator="Mobile Communications Limited"
- 77 bands="UMTS 2100" brand="Melita" cc="mt" country="Malta" operator="Melita" 
status="Operational"
+ 77 bands="UMTS 900 / UMTS 2100" brand="Melita" cc="mt" country="Malta" 
operator="Melita" status="Operational"
  00-99
 280
  01 bands="GSM 900 / GSM 1800 / UMTS 2100 / LTE 800 / LTE 1800 / LTE 2600" 
brand="Cytamobile-Vodafone" cc="cy" country="Cyprus" operator="Cyprus 
Telecommunications Authority" status="Operational"
@@ -1487,7 +1487,7 @@
 372
  01 bands="GSM 850" brand="Voila" cc="ht" country="Haiti" 
operator="Communication Cellulaire d'Haiti S.A." status="Not operational"
  02 bands="GSM 1800" brand="Digicel" cc="ht" country="Haiti" 
operator="Unigestion Holding S.A." status="Operational"
- 03 bands="GSM 900 / GSM 1800 / UTMS 2100" brand="Natcom" cc="ht" 
country="Haiti" operator="NATCOM S.A." status="Operational"
+ 03 bands="GSM 900 / GSM 1800 / UTMS 2100 / LTE" brand="Natcom" cc="ht" 
country="Haiti" operator="NATCOM S.A." status="Operational"
  00-99
 374
  12 bands="GSM 850 / GSM 1900 / UMTS 1900 / LTE 1900 / TD-LTE 2600" 
brand="bmobile" cc="tt" country="Trinidad and Tobago" operator="TSTT" 
status="Operational"
@@ -1835,7 +1835,7 @@
  06 bands="GSM 900 / GSM 1800" brand="Wataniya" cc="ps" country="Palestine" 
operator="Wataniya Palestine Mobile Telecommunications Company" 
status="Operational"
  07 bands="iDEN 800 / UMTS 2100" brand="Hot Mobile" cc="il" country="Israel" 
operator="Hot Mobile Ltd." status="Operational"
  08 bands="UMTS 2100 / LTE 1800" brand="Golan Telecom" cc="il" 
country="Israel" operator="Golan Telecom Ltd" status="Operational"
- 09 brand="018 Xphone" cc="il" country="Israel" operator="Marathon 018 Xphone 
Ltd."
+ 09 bands="LTE 1800" brand="018 Xphone" cc="il" country="Israel" 
operator="Marathon 018 Xphone Ltd." status="Operational"
  11 bands="MVNO" cc="il" country="Israel" operator="365 Telecom"
  12 bands="MVNO" cc="il" country="Israel" operator="Free Telecom"
  13 cc="il" country="Israel" operator="Ituran Cellular Communications"
diff --git a/stdnum/isbn.dat b/stdnum/isbn.dat
index 86dfe05..509665e 100644
--- a/stdnum/isbn.dat
+++ b/stdnum/isbn.dat
@@ -1,17 +1,17 @@
 # generated from RangeMessage.xml, downloaded from
 # https://www.isbn-international.org/export_rangemessage.xml
-# file serial 352b2404-54ce-4d18-828a-ed60209b93e1
-# file date Thu, 21 Dec 2017 17:54:41 CET
+# file serial a909a153-dbc0-4717-8dd5-324e7378c5c4
+# file date Tue, 10 Apr 2018 19:39:54 CEST
 978
  0-5,600-649,7-7,80-94,950-989,9900-9989,99900-99999
  0 agency="English language"
-  00-19,200-227,2280-2289,229-638,6390-6398,6399000-6399999,640-647
-  6480000-6489999,649-654,6550-6559,656-699,7000-8499,85000-89999
-  900000-949999,9500000-9999999
+  00-19,200-227,2280-2289,229-368,3690-3699,370-638,6390-6398
+  6399000-6399999,640-647,6480000-6489999,649-654,6550-6559,656-699
+  7000-8499,85000-89999,900000-949999,9500000-9999999
  1 agency="English language"
-  00-09,100-399,4000-5499,55000-73199,7320000-7399999,74000-77499
-  7750000-7753999,77540-86979,869800-972999,9730-9877,987800-998999
-  9990000-9999999
+  00-09,100-399,4000-5499,55000-71699,7170-7319,7320000-7399999
+  74000-77499,7750000-7753999,77540-86979,869800-972999,9730-9877
+  987800-998999,9990000-9999999
  2 agency="French language"
   00-19,200-349,35000-39999,400-489,490000-494999,495-699,7000-8399
   84000-89999,900000-919799,91980-91980,919810-919942,9199430-9199689
@@ -73,7 +73,7 @@
  621 agency="Philippines"
   00-29,400-599,8000-8999,95000-99999
  622 agency="Iran"
-  00-03
+  00-03,200-219,6000-6199,99000-99999
  7 agency="China, People's Republic"
   00-09,100-499,5000-7999,80000-89999,900000-999999
  80 agency="former Czechoslovakia"
@@ -96,8 +96,9 @@
  87 agency="Denmark"
   00-29,400-649,7000-7999,85000-94999,970000-999999
  88 agency="Italy"
-  00-19,200-326,3270-3389,339-599,6000-8499,85000-89999,900000-909999
-  910-929,9300-9399,940000-947999,94800-94999,95000-99999
+  00-19,200-318,31900-32299,323-326,3270-3389,339-599,6000-8499
+  85000-89999,900000-909999,910-929,9300-9399,940000-947999,94800-94999
+  95000-99999
  89 agency="Korea, Republic"
   00-24,250-549,5500-8499,85000-94999,950000-969999,97000-98999,990-999
  90 agency="Netherlands"
@@ -118,12 +119,13 @@
   00-19,200-499,5000-5999,60-65,6600-6699,67000-69999,7000-7999,80-94
   9500-9899,99000-99999
  953 agency="Croatia"
-  0-0,10-14,150-509,51-54,55000-59999,6000-9499,95000-99999
+  0-0,10-14,150-479,48000-49999,500-500,50100-50999,51-54,55000-59999
+  6000-9499,95000-99999
  954 agency="Bulgaria"
   00-28,2900-2999,300-799,8000-8999,90000-92999,9300-9999
  955 agency="Sri Lanka"
-  0000-1999,20-35,3600-3799,38000-38999,3900-4099,41000-44999,4500-4999
-  50000-54999,550-719,7200-9499,95000-99999
+  0000-1999,20-34,35500-35999,3600-3799,38000-38999,3900-4099,41000-44999
+  4500-4999,50000-54999,550-719,7200-9499,95000-99999
  956 agency="Chile"
   00-08,09000-09999,10-19,200-599,6000-6999,7000-9999
  957 agency="Taiwan"
@@ -173,7 +175,7 @@
  976 agency="Caribbean Community"
   0-3,40-59,600-799,8000-9499,95000-99999
  977 agency="Egypt"
-  00-19,200-499,5000-6999,700-849,85000-89999,90-99
+  00-19,200-499,5000-6999,700-849,85000-89999,90-98,990-999
  978 agency="Nigeria"
   000-199,2000-2999,30000-79999,8000-8999,900-999
  979 agency="Indonesia"
@@ -202,6 +204,8 @@
   97000-99999
  989 agency="Portugal"
   0-1,20-53,54000-54999,550-799,8000-9499,95000-99999
+ 9920 agency="Morocco"
+  35-39,700-799,9500-9999
  9921 agency="Kuwait"
   0-0,30-39,700-899,9700-9999
  9922 agency="Iraq"
@@ -468,7 +472,7 @@
  99966 agency="Kuwait"
   0-2,30-69,700-799,80-96,970-999
  99967 agency="Paraguay"
-  0-1,20-59,600-899
+  0-1,20-59,600-899,900-919
  99968 agency="Botswana"
   0-3,400-599,60-89,900-999
  99969 agency="Oman"
@@ -482,9 +486,9 @@
  99973 agency="Mongolia"
   0-3,40-79,800-999
  99974 agency="Bolivia"
-  40-79,800-999
+  0-0,10-29,300-399,40-79,800-999
  99975 agency="Tajikistan"
-  0-3,40-79,800-999
+  0-2,300-399,40-79,800-999
  99976 agency="Srpska, Republic of"
   0-1,20-59,600-799
  99977 agency="Rwanda"
@@ -495,6 +499,8 @@
   0-4,50-79,800-999
  99980 agency="Bhutan"
   0-0,30-59,800-999
+ 99981 agency="Macau"
+  0-1,30-49,900-999
 979
  10-12
  10 agency="France"
diff --git a/stdnum/isil.dat b/stdnum/isil.dat
index fc6bbb7..824c6a8 100644
--- a/stdnum/isil.dat
+++ b/stdnum/isil.dat
@@ -1,17 +1,16 @@
 # generated from ISIL Registration Authority, downloaded from
-# http://biblstandard.dk/isil/
-O$ ra="See OCLC"
-US$ country="United States of America" 
ra_url="http://www.loc.gov/marc/organizations/"; ra="Library of Congress"
+# https://english.slks.dk/libraries/library-standards/isil/
 AR$ country="Argentine Republic" ra_url="http://www.iram.org.ar"; ra="Argentine 
Standardization and Certification Institute (IRAM)"
 AT$ country="Austria" ra_url="http://www.obvsg.at"; ra="Die Österreichische 
Bibliothekenverbund und Service GmbH"
 AU$ country="Australia" ra_url="http://www.nla.gov.au/ilrs"; ra="National 
Library of Australia"
 BE$ country="Belgium" ra_url="http://www.kbr.be"; ra="Royal Library of Belgium"
 BY$ country="Belarus" 
ra_url="http://www.nlb.by/portal/page/portal/index?lang=en"; ra="National 
Library of Belarus"
-CA$ country="Canada" 
ra_url="http://www.collectionscanada.ca/ill/s16-206-e.html#3.2.2"; ra="Library 
and Archives Canada"
-CH$ country="Switzerland" 
ra_url="http://www.nb.admin.ch/slb/slb_professionnel/01540/index.html?lang=en"; 
ra="Swiss National Library"
+BG$ country="Bulgaria" ra_url="http://www.nationallibrary.bg/wp/?page_id=220"; 
ra="National Library of Bulgaria"
+CA$ country="Canada" ra_url="http://www.bac-lac.gc.ca/eng/Pages/home.aspx"; 
ra="Library and Archives Canada"
+CH$ country="Switzerland" ra_url="https://www.nb.admin.ch/snl/en/home.html"; 
ra="Swiss National Library"
 CY$ country="Cyprus" ra_url="http://library.cut.ac.cy/en/isil"; ra="Cyprus 
University of Technology – Library"
 DE$ country="Germany" ra_url="http://sigel.staatsbibliothek-berlin.de/"; 
ra="Staatsbibliothek zu Berlin"
-DK$ country="Denmark" 
ra_url="http://www.kulturstyrelsen.dk/english/institutions/libraries/national-solutions/standards/danish-library-number/";
 ra="Danish Agency for Culture and Palaces"
+DK$ country="Denmark" ra_url="https://english.slks.dk/libraries/"; ra="Danish 
Agency for Culture and Palaces"
 EG$ country="Egypt" 
ra_url="http://www.sti.sci.eg/index.php?option=com_content&view=article&id=30:focal-point&catid=1:pages&Itemid=56";
 ra="Egyptian National Scientific and Technical Information Network (ENSTINET)"
 FI$ country="Finland" ra_url="http://isil.kansalliskirjasto.fi/en/"; ra="The 
National Library of Finland"
 FR$ country="France" ra_url="http://www.abes.fr"; ra="Agence Bibliographique de 
l'Enseignement Superieur"
@@ -30,6 +29,8 @@ QA$ country="Qatar" ra_url="http://www.qnl.qa/"; ra="Qatar 
National Library (QNL)
 RU$ country="Russian Federation" ra_url="http://english.gpntb.ru/"; ra="Russian 
National Public Library for Science and Technology"
 SI$ country="The Republic of Slovenia" 
ra_url="http://www.nuk.uni-lj.si/nukeng3.asp?id=311364382"; ra="National and 
University Library"
 SK$ country="Slovak Republic" 
ra_url="http://www.snk.sk/en/information-for/libraries-and-librarians/isil.html";
 ra="Slovak National Library"
+US$ country="United States of America" 
ra_url="http://www.loc.gov/marc/organizations/"; ra="Library of Congress"
 EUR$ country="Code for common European organizations." 
ra_url="http://www.eui.eu/Research/HistoricalArchivesOfEU/FindingAidsAndResearch/HAEU-Non-national-ISIL-Allocation-Agency.aspx";
 ra="HAEU"
+O$ ra="See OCLC"
 OCLC$ country="WorldCat Symbol" ra_url="http://www.oclc.org"; ra="OCLC"
 ZDB$ country="Staatsbibliothek zu Berlin - Zeitschriftendatenbank" 
ra="Staatsbibliothek zu Berlin"
diff --git a/stdnum/us/ein.dat b/stdnum/us/ein.dat
index a97da38..ec7809f 100644
--- a/stdnum/us/ein.dat
+++ b/stdnum/us/ein.dat
@@ -4,7 +4,7 @@
 01,02,03,04,05,06,11,13,14,16,21,22,23,25,34,51,52,54,55,56,57,58,59,65 
campus="Brookhaven"
 10,12 campus="Andover"
 15,24 campus="Fresno"
-20,26,27,45,46,47,81 campus="Internet"
+20,26,27,45,46,47,81,82 campus="Internet"
 30,32,35,36,37,38,61 campus="Cincinnati"
 31 campus="Small Business Administration (SBA)"
 
33,39,41,42,43,46,48,62,63,64,66,68,71,72,73,74,75,76,77,82,83,84,85,86,87,88,91,92,93,98,99
 campus="Philadelphia"
diff --git a/update/isil.py b/update/isil.py
index d86bdef..3ef51b6 100755
--- a/update/isil.py
+++ b/update/isil.py
@@ -32,7 +32,7 @@ import BeautifulSoup
 spaces_re = re.compile(r'\s+', re.UNICODE)
 
 # the web page that holds information on the ISIL authorities
-download_url = 'http://biblstandard.dk/isil/'
+download_url = 'https://english.slks.dk/libraries/library-standards/isil/'
 
 
 def clean(s):
@@ -44,7 +44,9 @@ def parse(f):
     """Parse the specified file."""
     print('# generated from ISIL Registration Authority, downloaded from')
     print('# %s' % download_url)
-    soup = BeautifulSoup.BeautifulSoup(f, convertEntities='html')
+    # We hack the HTML to insert missing <TR> elements
+    content = f.read().replace('</TR>', '</TR><TR>')
+    soup = BeautifulSoup.BeautifulSoup(content, convertEntities='html')
     # find all table rows
     for tr in soup.findAll('tr'):
         # find the rows with four columns of text

-----------------------------------------------------------------------

Summary of changes:
 ChangeLog                                | 254 +++++++++++++++++++++++++++++++
 NEWS                                     |  23 +++
 README                                   |   7 +
 docs/index.rst                           |   7 +
 docs/stdnum.at.postleitzahl.rst          |   5 +
 docs/stdnum.at.tin.rst                   |   5 +
 docs/stdnum.be.iban.rst                  |   5 +
 docs/stdnum.de.handelsregisternummer.rst |   5 +
 docs/stdnum.de.stnr.rst                  |   5 +
 docs/stdnum.figi.rst                     |   5 +
 docs/stdnum.me.iban.rst                  |   5 +
 setup.py                                 |   2 +-
 stdnum/__init__.py                       |   2 +-
 stdnum/at/postleitzahl.dat               |   2 +-
 stdnum/be/banks.dat                      |   5 +-
 stdnum/cn/loc.dat                        |   2 +-
 stdnum/eu/nace.dat                       |   2 +-
 stdnum/imsi.dat                          |  10 +-
 stdnum/isbn.dat                          |  42 ++---
 stdnum/isil.dat                          |  13 +-
 stdnum/us/ein.dat                        |   2 +-
 update/isil.py                           |   6 +-
 22 files changed, 375 insertions(+), 39 deletions(-)
 create mode 100644 docs/stdnum.at.postleitzahl.rst
 create mode 100644 docs/stdnum.at.tin.rst
 create mode 100644 docs/stdnum.be.iban.rst
 create mode 100644 docs/stdnum.de.handelsregisternummer.rst
 create mode 100644 docs/stdnum.de.stnr.rst
 create mode 100644 docs/stdnum.figi.rst
 create mode 100644 docs/stdnum.me.iban.rst


hooks/post-receive
-- 
python-stdnum
-- 
To unsubscribe send an email to
python-stdnum-commits-unsubscribe@lists.arthurdejong.org or see
https://lists.arthurdejong.org/python-stdnum-commits/