From 2b7444e335e14fb1ce5defc9852f595485682c2f Mon Sep 17 00:00:00 2001 From: Fernando Felix Date: Mon, 28 Mar 2016 03:58:41 -0300 Subject: [PATCH 1/9] Basic python .gitignore --- .gitignore | 72 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 71 insertions(+), 1 deletion(-) diff --git a/.gitignore b/.gitignore index 9e690c8..2f44b87 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,73 @@ -*.pyc +# Apple OS X .DS_Store + +# Linux .*.swp + +# Byte-compiled / optimized / DLL files +__pycache__/ +*.py[cod] +*$py.class + +# C extensions +*.so + +# Distribution / packaging +.Python +env/ +build/ +develop-eggs/ +dist/ +downloads/ +eggs/ +.eggs/ +lib64/ +parts/ +sdist/ +var/ +*.egg-info/ +.installed.cfg +*.egg + +# PyInstaller +# Usually these files are written by a python script from a template +# before PyInstaller builds the exe, so as to inject date/other infos into it. +*.manifest +*.spec + +# Installer logs +pip-log.txt +pip-delete-this-directory.txt + +# Unit test / coverage reports +htmlcov/ +.tox/ +.coverage +.coverage.* +.cache +nosetests.xml +coverage.xml +*,cover +.hypothesis/ + +# Translations +*.mo +*.pot + +# Django stuff: +*.log + +# Sphinx documentation +docs/_build/ + +# PyBuilder +target/ + +# Flask-Migrate +# migrations/ + +# sqlite +*.db +db.* + +TODO* From 27701e61a688e0381309a11c4c9bec01154f4f97 Mon Sep 17 00:00:00 2001 From: Fernando Felix Date: Mon, 28 Mar 2016 04:05:08 -0300 Subject: [PATCH 2/9] Auto install dependencies --- setup.py | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/setup.py b/setup.py index 4df2f26..1a99738 100644 --- a/setup.py +++ b/setup.py @@ -1,7 +1,8 @@ #!/usr/bin/env python - -import sys, doctest, os, glob from setuptools import setup, find_packages +from pip.req import parse_requirements as parse + +requirements = lambda f: [str(i.req) for i in parse(f, session=False)] setup( name='PyNFe', @@ -10,5 +11,6 @@ setup( package_data={ 'pynfe': ['data/**/*.txt'], }, + install_requires=requirements('requirements.txt'), zip_safe=False, ) From 8e70344c5c199fdbf4fcf08a4849f71c9fe688a4 Mon Sep 17 00:00:00 2001 From: Fernando Felix Date: Mon, 28 Mar 2016 04:11:56 -0300 Subject: [PATCH 3/9] Install using user scheme. sudo way is not safe. --- README.md | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/README.md b/README.md index 8a07578..9d3c0c7 100644 --- a/README.md +++ b/README.md @@ -2,7 +2,7 @@ Visão Geral ----------- Biblioteca de interface com o webservice de Nota Fiscal Eletronica, -(NF-e/NFC-e/NFS-e) da SEFAZ, oficializada pelo Ministerio da Fazendo do +(NF-e/NFC-e/NFS-e) da SEFAZ, oficializada pelo Ministerio da Fazendo do Governo do Brasil. Desenvolvido e testado com Python 3 no GNU/Linux. @@ -29,7 +29,7 @@ Dependências - suds-jurko (*apenas para NFS-e) - biblioteca para a comunicação com os webservices via wsdl - pyxb (*apenas para NFS-e) - - biblioteca para geração de bindings a partir de XML Schema(xsd) + - biblioteca para geração de bindings a partir de XML Schema(xsd) Referências ----------- @@ -50,14 +50,15 @@ Referências - Validador de xml - https://www.sefaz.rs.gov.br/NFE/NFE-VAL.aspx - + - Validador de assinaturas - - https://www.receita.fazenda.gov.br/Aplicacoes/SSL/ATBHE/Assinadoc/ValidadorAssinaturas.app/valida.aspx + - https://www.receita.fazenda.gov.br/Aplicacoes/SSL/ATBHE/Assinadoc/ValidadorAssinaturas.app/valida.aspx Instalação ----------- -``` - sudo pip3 install https://github.com/leotada/PyNFe/archive/master.zip +```sh +pip3 install --user suds-jurko pyxb # opcional: apenas para NFS-e +pip3 install --user https://github.com/leotada/PyNFe/archive/master.zip ``` Exemplos de uso @@ -77,7 +78,7 @@ xml = con.status_servico('nfe') print (xml.text) ``` -Documentação +Documentação ----------- - https://github.com/leotada/PyNFe/wiki - http://pynfe.readthedocs.org/pt/latest/ From 00286b9fbe3c61775e75111a88ebf173763507cc Mon Sep 17 00:00:00 2001 From: Fernando Felix Date: Mon, 28 Mar 2016 04:15:45 -0300 Subject: [PATCH 4/9] Install using user scheme. sudo way is not safe. --- docs/index.rst | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/docs/index.rst b/docs/index.rst index 679befc..89b07c5 100644 --- a/docs/index.rst +++ b/docs/index.rst @@ -66,7 +66,8 @@ Referências - Instalação:: - sudo pip3 install https://github.com/leotada/PyNFe/archive/master.zip + pip3 install --user suds-jurko pyxb # opcional: apenas para NFS-e + pip3 install --user https://github.com/leotada/PyNFe/archive/master.zip Exemplos de uso --------------- @@ -97,4 +98,4 @@ Consulta Notas Emitidas para um CNPJ (apenas NF-e e no RS):: # informar cnpj que deseja consultar (String) e nsu (inteiro) (por default se não informar nsu ele assumirá o valor 0, retornando as dos últimos 15 dias) xml = con.consulta_notas_cnpj(cnpj='cnpj_somente_numeros', nsu=0) - print (xml.text) \ No newline at end of file + print (xml.text) From 7be59ec27baf4024ac9920eb5c62cbea704f4239 Mon Sep 17 00:00:00 2001 From: Fernando Felix Date: Mon, 28 Mar 2016 04:28:12 -0300 Subject: [PATCH 5/9] Deterministic req~.txt to prevent conflicts in future. --- requirements.txt | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/requirements.txt b/requirements.txt index 5b1ed0e..c60a193 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,6 +1,8 @@ -pyopenssl -requests -lxml -# opcional para NFS-e -#sudo-jurko -#pyxb +# Dependencias basicas +pyopenssl==16.0.0 +requests==2.9.1 +lxml==3.6.0 + +# Opcional para NFS-e +#suds-jurko==0.6 +#pyxb==1.2.4 From d36c9bb277cf99ec912768526bb75c24b0959fa0 Mon Sep 17 00:00:00 2001 From: Fernando Felix Date: Mon, 28 Mar 2016 04:37:51 -0300 Subject: [PATCH 6/9] Split requirements. --- requirements-nfse.txt | 3 +++ requirements.txt | 3 +-- 2 files changed, 4 insertions(+), 2 deletions(-) create mode 100644 requirements-nfse.txt diff --git a/requirements-nfse.txt b/requirements-nfse.txt new file mode 100644 index 0000000..43cd5ab --- /dev/null +++ b/requirements-nfse.txt @@ -0,0 +1,3 @@ +# Opcional para NFS-e +suds-jurko==0.6 +pyxb==1.2.4 diff --git a/requirements.txt b/requirements.txt index c60a193..3c172d0 100644 --- a/requirements.txt +++ b/requirements.txt @@ -4,5 +4,4 @@ requests==2.9.1 lxml==3.6.0 # Opcional para NFS-e -#suds-jurko==0.6 -#pyxb==1.2.4 +#-r requirements-nfse.txt From 0bbce5bec0ec72d7423f6c7d5e655c9a7fbe4d53 Mon Sep 17 00:00:00 2001 From: Fernando Felix Date: Mon, 28 Mar 2016 04:43:11 -0300 Subject: [PATCH 7/9] Install nfse deps using remote url. --- README.md | 4 ++-- docs/index.rst | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index 9d3c0c7..d7d9d0f 100644 --- a/README.md +++ b/README.md @@ -56,8 +56,8 @@ Referências Instalação ----------- -```sh -pip3 install --user suds-jurko pyxb # opcional: apenas para NFS-e +``` +pip3 install --user -r https://github.com/leotada/PyNFe/raw/master/requirements-nfse.txt # opcional: apenas para NFS-e pip3 install --user https://github.com/leotada/PyNFe/archive/master.zip ``` diff --git a/docs/index.rst b/docs/index.rst index 89b07c5..6c6f21a 100644 --- a/docs/index.rst +++ b/docs/index.rst @@ -66,7 +66,7 @@ Referências - Instalação:: - pip3 install --user suds-jurko pyxb # opcional: apenas para NFS-e + pip3 install --user -r https://github.com/leotada/PyNFe/raw/master/requirements-nfse.txt # opcional: apenas para NFS-e pip3 install --user https://github.com/leotada/PyNFe/archive/master.zip Exemplos de uso From 1299821e082106e3c6132441e5c398e4886fb8a9 Mon Sep 17 00:00:00 2001 From: Fernando Felix Date: Mon, 28 Mar 2016 04:48:16 -0300 Subject: [PATCH 8/9] Update docs. --- README.md | 10 ++++++++-- docs/index.rst | 5 ++++- 2 files changed, 12 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index d7d9d0f..3ae3a6d 100644 --- a/README.md +++ b/README.md @@ -56,11 +56,17 @@ Referências Instalação ----------- -``` -pip3 install --user -r https://github.com/leotada/PyNFe/raw/master/requirements-nfse.txt # opcional: apenas para NFS-e + +```sh pip3 install --user https://github.com/leotada/PyNFe/archive/master.zip ``` +Opcional para NFS-e: + +```sh +pip3 install --user -r https://github.com/leotada/PyNFe/raw/master/requirements-nfse.txt +``` + Exemplos de uso ----------- - Consulta Status diff --git a/docs/index.rst b/docs/index.rst index 6c6f21a..72271d4 100644 --- a/docs/index.rst +++ b/docs/index.rst @@ -66,9 +66,12 @@ Referências - Instalação:: - pip3 install --user -r https://github.com/leotada/PyNFe/raw/master/requirements-nfse.txt # opcional: apenas para NFS-e pip3 install --user https://github.com/leotada/PyNFe/archive/master.zip + - Instalação opcional para NFS-e:: + + pip3 install --user -r https://github.com/leotada/PyNFe/raw/master/requirements-nfse.txt + Exemplos de uso --------------- Consulta Status:: From 4997979dccc223086c9296fdce17e0d5406fc5f9 Mon Sep 17 00:00:00 2001 From: Fernando Felix Date: Mon, 28 Mar 2016 04:50:06 -0300 Subject: [PATCH 9/9] Fix layout. --- docs/index.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/index.rst b/docs/index.rst index 72271d4..36cff02 100644 --- a/docs/index.rst +++ b/docs/index.rst @@ -68,7 +68,7 @@ Referências pip3 install --user https://github.com/leotada/PyNFe/archive/master.zip - - Instalação opcional para NFS-e:: +- Instalação opcional para NFS-e:: pip3 install --user -r https://github.com/leotada/PyNFe/raw/master/requirements-nfse.txt