Skip to content

Commit

Permalink
global: Invenio 3 compatibility
Browse files Browse the repository at this point in the history
* INCOMPATIBLE Changes module to be compatible with Invenio 3.

* NEW Adds Python 3.3+ support.

Reviewed-by: Jiri Kuncar <jiri.kuncar@cern.ch>
Signed-off-by: Jan Aage Lavik <jan.age.lavik@cern.ch>
  • Loading branch information
jalavik committed Apr 6, 2016
1 parent f249653 commit 2ab6ac4
Show file tree
Hide file tree
Showing 56 changed files with 1,664 additions and 1,275 deletions.
27 changes: 26 additions & 1 deletion .editorconfig
Original file line number Diff line number Diff line change
@@ -1,3 +1,28 @@
# -*- coding: utf-8 -*-
#
# This file is part of Invenio.
# Copyright (C) 2016 CERN.
#
# Invenio is free software; you can redistribute it
# and/or modify it under the terms of the GNU General Public License as
# published by the Free Software Foundation; either version 2 of the
# License, or (at your option) any later version.
#
# Invenio is distributed in the hope that it will be
# useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with Invenio; if not, write to the
# Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston,
# MA 02111-1307, USA.
#
# In applying this license, CERN does not
# waive the privileges and immunities granted to it by virtue of its status
# as an Intergovernmental Organization or submit itself to any jurisdiction.


root = true

[*]
Expand All @@ -11,7 +36,7 @@ charset = utf-8
[*.py]
indent_size = 4
# isort plugin configuration
known_first_party = invenio
known_first_party = invenio_classifier
multi_line_output = 2
default_section = THIRDPARTY

Expand Down
62 changes: 51 additions & 11 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,19 +1,59 @@
*~
# Byte-compiled / optimized / DLL files
__pycache__/
*.py[cod]

# Packages
# Idea software family
.idea/

# C extensions
*.so

# Distribution / packaging
.Python
env/
build/
develop-eggs/
dist/
downloads/
eggs/
.eggs/
lib/
lib64/
parts/
sdist/
var/
*.egg-info/
.installed.cfg
*.egg
*.egg-info
.eggs
__pycache__

# 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
.cache
htmlcov/
.tox/
.coverage
.tox

# doc
docs/_build
.coverage.*
.cache
nosetests.xml
coverage.xml
*,cover

# ignore compiled translations
# Translations
*.mo

# Django stuff:
*.log

# Sphinx documentation
docs/_build/

# PyBuilder
target/
35 changes: 0 additions & 35 deletions .travis.invenio.cfg

This file was deleted.

61 changes: 26 additions & 35 deletions .travis.yml
Original file line number Diff line number Diff line change
@@ -1,71 +1,62 @@
# -*- coding: utf-8 -*-
#
# This file is part of Invenio
# Copyright (C) 2015, 2016 CERN
# This file is part of Invenio.
# Copyright (C) 2015, 2016 CERN.
#
# Invenio is free software; you can redistribute it and/or
# modify it under the terms of the GNU General Public License as
# Invenio is free software; you can redistribute it
# and/or modify it under the terms of the GNU General Public License as
# published by the Free Software Foundation; either version 2 of the
# License, or (at your option) any later version.
#
# Invenio is distributed in the hope that it will be useful, but
# WITHOUT ANY WARRANTY; without even the implied warranty of
# Invenio is distributed in the hope that it will be
# useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with Invenio; if not, write to the Free Software Foundation,
# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
# along with Invenio; if not, write to the
# Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston,
# MA 02111-1307, USA.
#
# In applying this license, CERN does not waive the privileges and immunities
# granted to it by virtue of its status as an Intergovernmental Organization
# or submit itself to any jurisdiction.
# In applying this license, CERN does not
# waive the privileges and immunities granted to it by virtue of its status
# as an Intergovernmental Organization or submit itself to any jurisdiction.


notifications:
email: false

sudo: false

services:
- mysql
- redis

language: python

cache:
- apt
- pip

env:
- REQUIREMENTS=lowest REXTRAS=docs,tests
- REQUIREMENTS=release REXTRAS=docs,tests
- REQUIREMENTS=devel REXTRAS=docs,tests
- REQUIREMENTS=lowest
- REQUIREMENTS=release
- REQUIREMENTS=devel

python:
- "2.7"
- "3.3"
- "3.4"
- "3.5"

before_install:
- "travis_retry pip install --upgrade pip"
- "travis_retry pip install check-manifest mock twine wheel coveralls"
- "python requirements.py --extras=$REXTRAS --level=min > .travis-lowest-requirements.txt"
- "python requirements.py --extras=$REXTRAS --level=pypi > .travis-release-requirements.txt"
- "python requirements.py --extras=$REXTRAS --level=dev > .travis-devel-requirements.txt"
- "mkdir -p ${VIRTUAL_ENV}/var/invenio.base-instance/"
- "cp .travis.invenio.cfg ${VIRTUAL_ENV}/var/invenio.base-instance/invenio.cfg"
- "travis_retry pip install --upgrade pip setuptools py"
- "travis_retry pip install twine wheel coveralls requirements-builder"
- "requirements-builder --level=min setup.py > .travis-lowest-requirements.txt"
- "requirements-builder --level=pypi setup.py > .travis-release-requirements.txt"
- "requirements-builder --level=dev --req requirements-devel.txt setup.py > .travis-devel-requirements.txt"

install:
- "travis_retry pip install -r .travis-$REQUIREMENTS-requirements.txt --allow-all-external"
- "travis_retry pip install -e .[$REXTRAS]"

before_script:
- "inveniomanage database init --yes-i-know || echo ':('"
- "inveniomanage database create --quiet || echo ':('"
- "travis_retry pip install -r .travis-${REQUIREMENTS}-requirements.txt"
- "travis_retry pip install -e .[all]"

script:
- "check-manifest --ignore .travis-\\*-requirements.txt"
- "sphinx-build -qnN docs docs/_build/html"
- "python setup.py test"
- "./run-tests.sh"

after_success:
- coveralls
Expand Down
50 changes: 50 additions & 0 deletions .tx/config
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@
# -*- coding: utf-8 -*-
#
# This file is part of Invenio.
# Copyright (C) 2016 CERN.
#
# Invenio is free software; you can redistribute it
# and/or modify it under the terms of the GNU General Public License as
# published by the Free Software Foundation; either version 2 of the
# License, or (at your option) any later version.
#
# Invenio is distributed in the hope that it will be
# useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with Invenio; if not, write to the
# Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston,
# MA 02111-1307, USA.
#
# In applying this license, CERN does not
# waive the privileges and immunities granted to it by virtue of its status
# as an Intergovernmental Organization or submit itself to any jurisdiction.


# TODO: Transifex integration
#
# 1) Create message catalog:
# $ python setup.py extract_messages
# $ python setup.py init_catalog -l <lang>
# $ python setup.py compile_catalog
# 2) Ensure project has been created on Transifex under the inveniosoftware
# organisation.
# 3) Install the transifex-client
# $ pip install transifex-client
# 4) Push source (.pot) and translations (.po) to Transifex
# $ tx push -s -t
# 5) Pull translations for a single language from Transifex
# $ tx pull -l <lang>
# 6) Pull translations for all languages from Transifex
# $ tx pull -a

[main]
host = https://www.transifex.com

[invenio-classifier.messagespot]
file_filter = invenio_classifier/translations/<lang>/LC_MESSAGES/messages.po
source_file = invenio_classifier/translations/messages.pot
source_lang = en
type = PO

0 comments on commit 2ab6ac4

Please sign in to comment.