From a8a522fef6dc73bd1c7df21da01cff205d12bcc9 Mon Sep 17 00:00:00 2001 From: Paul Natsuo Kishimoto Date: Tue, 25 Jun 2019 15:03:01 +0200 Subject: [PATCH] Release 1.2.0 (#213) * Update release notes * Update AUTHORS * Update README * Streamline setup.py, adding .dev0 version tag -- REMOVE BEFORE RELEASE - Also add long_description from README * Purge rmessageix/.Rhistory * Use IIASA ENE as author in setup.py * Add summary/highlights to RELEASE_NOTES.md * Set actual VERSION in setup.py for release --- AUTHORS.md | 8 ++++++- README.md | 26 ++++++++++----------- RELEASE_NOTES.md | 20 ++++++++++++++-- rmessageix/.Rhistory | 0 setup.py | 55 ++++++++++++++++++-------------------------- 5 files changed, 61 insertions(+), 48 deletions(-) delete mode 100644 rmessageix/.Rhistory diff --git a/AUTHORS.md b/AUTHORS.md index bd7797feb..ed3ef5aa8 100644 --- a/AUTHORS.md +++ b/AUTHORS.md @@ -13,4 +13,10 @@ The following persons contributed to the development of the |MESSAGEix| framewor - Adriano Vinca, [@adrivinca](https://github.com/adrivinca), [iiasa](http://www.iiasa.ac.at/staff/staff.php?type=auto&visibility=visible&search=true&login=vinca) - Alessio Mastrucci, [@amastrucci](https://github.com/amastrucci), [iiasa](http://www.iiasa.ac.at/staff/staff.php?type=auto&visibility=visible&search=true&login=mastrucc) - Miguel Poblete-Cazenave, [@MiguelPobleteCazenave](https://github.com/MiguelPobleteCazenave), [iiasa](http://www.iiasa.ac.at/staff/staff.php?type=auto&visibility=visible&search=true&login=poblete) -- Thomas Zipperle [@tzipperle](https://github.com/tzipperle) +- Thomas Zipperle, [@tzipperle](https://github.com/tzipperle) +- Behnam Zakeri, [@behnam2015](https://github.com/behnam2015) + [iiasa](http://www.iiasa.ac.at/staff/staff.php?type=auto&visibility=visible&search=true&login=zakeri) +- Nikolay Kushin, [@zikolach](https://github.com/zikolach) + [iiasa](http://www.iiasa.ac.at/staff/staff.php?type=auto&visibility=visible&search=true&login=kushin) +- Paul Natsuo Kishimoto, [@khaeru](https://github.com/khaeru) + [web](https://paul.kishimoto.name) diff --git a/README.md b/README.md index 1d6470863..9ee55294b 100644 --- a/README.md +++ b/README.md @@ -2,13 +2,13 @@ ## Overview -MESSAGEix is a versatile, open-source, dynamic systems-optimization model. It -was developed for strategic energy planning and integrated assessment of -energy-engineering-economy-environment systems (E4). The framework includes the +MESSAGEix is a versatile, open-source, dynamic systems-optimization model. +It was developed for strategic energy planning and integrated assessment of +energy-engineering-economy-environment (E4) systems. The framework includes the possibility for integration with the general-economy MACRO model to incorporate the feedback from price changes on demand for commodities or energy services. -The mathematical formulation is based on the MESSAGE Integrated Assessment model -developed at IIASA since the 1980s. +The mathematical formulation is based on the MESSAGE Integrated Assessment +model developed at IIASA since the 1980s. The MESSAGEix and MACRO models are implemented in [GAMS](http://www.gams.com). This repository contains the GAMS code and a number of tutorials and examples @@ -37,11 +37,11 @@ Please refer to the [NOTICE](NOTICE.rst) for details and user guidelines. ### Documentation -[Documentation of the MESSAGEix framework](http://MESSAGEix.iiasa.ac.at/), +[Documentation of the MESSAGEix framework](https://message.iiasa.ac.at/), including the complete mathematical formulation and associated files, is automatically created from mark-up comments in the GAMS, Python, and R code. The online documentation is synchronized with the contents of the master branch -of the [message_ix Github repository](http://www.github.com/iiasa/message_ix). +of the [message_ix Github repository](https://github.com/iiasa/message_ix). For offline use, the documentation can be built from the source code. See `doc/README.md` for further details. @@ -49,13 +49,13 @@ See `doc/README.md` for further details. ### Installation -See [‘Installation’ in the documentation](http://MESSAGEix.iiasa.ac.at#installation) or the file `INSTALL.rst`. +See [‘Installation’ in the documentation](https://message.iiasa.ac.at/en/v1.2/getting_started.html) or the file `INSTALL.rst`. ### Tutorials Several introductory tutorials are provided. -See [‘Tutorials’ in the documentation](http://messageix.iiasa.ac.at#tutorials) or the file +See [‘Tutorials’ in the documentation](https://message.iiasa.ac.at/en/v1.2/tutorials.html) or the file `tutorial/README.rst`. @@ -66,9 +66,9 @@ the ix modeling platform for scientific publications or technical reports: > Daniel Huppmann, Matthew Gidden, Oliver Fricko, Peter Kolp, Clara Orthofer, Michael Pimmer, Nikolay Kushin, Adriano Vinca, Alessio Mastrucci, - Keywan Riahi, and Volker Krey. - "The |MESSAGEix| Integrated Assessment Model and the ix modeling platform". - *Environmental Modelling & Software* 112:143-156, 2019. - doi: [10.1016/j.envsoft.2018.11.012](https://doi.org/10.1016/j.envsoft.2018.11.012) + Keywan Riahi, and Volker Krey. + "The |MESSAGEix| Integrated Assessment Model and the ix modeling platform". + *Environmental Modelling & Software* 112:143-156, 2019. + doi: [10.1016/j.envsoft.2018.11.012](https://doi.org/10.1016/j.envsoft.2018.11.012) electronic pre-print available at [pure.iiasa.ac.at/15157/](https://pure.iiasa.ac.at/15157/) diff --git a/RELEASE_NOTES.md b/RELEASE_NOTES.md index a8548c44a..5190cdd15 100644 --- a/RELEASE_NOTES.md +++ b/RELEASE_NOTES.md @@ -1,5 +1,21 @@ -# Next Release +# v1.2.0 + +MESSAGEix 1.2.0 adds an option to set the commodity balance to strict equality, +rather than a supply > demand inequality. It also improves the support for +models with non-equidistant years. + +Other improvements include an experimental reporting module, support for CPLEX +solver options via `Scenario.solve()`, and a reusable `message_ix.testing` +module. + +Release 1.2.0 coincides with ixmp +[release 0.2.0](https://github.com/iiasa/ixmp/releases/tag/v0.2.0), which +provides full support for `Scenario.clone()` across platforms (database +instances), e.g. from a remote database to a local HSQL database; as well as +other improvements. See the ixmp release notes for further details. + +## All changes - [#161](https://github.com/iiasa/message_ix/pull/161): A feature for adding new periods to a scenario. - [#205](https://github.com/iiasa/message_ix/pull/205): Implement required changes related to timeseries-support and cloning across platforms (see [ixmp:#142](https://github.com/iiasa/ixmp/pull/142)). @@ -7,7 +23,7 @@ - [#187](https://github.com/iiasa/message_ix/pull/187): Test for cumulative bound on emissions. - [#182](https://github.com/iiasa/message_ix/pull/182): Fix cross-platform cloning. - [#178](https://github.com/iiasa/message_ix/pull/178): Bugfix of the `PRICE_EMISSION` variable in models with non-equidistant period durations (#167)._ -- [#176](https://github.com/iiasa/message_ix/pull/176): Improve reporting, phase 2. +- [#176](https://github.com/iiasa/message_ix/pull/176): Add `message_ix.reporting` module. - [#173](https://github.com/iiasa/message_ix/pull/173): The `solve` command now takes additional arguments when solving with CPLEX. The `cplex.opt` file is now generated on the fly during the solve command and removed after successfully solving. - [#172](https://github.com/iiasa/message_ix/pull/172): Add option to set `COMMODITY_BALANCE` to equality. - [#154](https://github.com/iiasa/message_ix/pull/154): Enable documentation build on ReadTheDocs. diff --git a/rmessageix/.Rhistory b/rmessageix/.Rhistory deleted file mode 100644 index e69de29bb..000000000 diff --git a/setup.py b/setup.py index 7f60e5af1..2a78b76aa 100644 --- a/setup.py +++ b/setup.py @@ -6,6 +6,7 @@ from setuptools import find_packages, setup + fname = os.path.join(os.path.dirname(os.path.realpath(__file__)), 'message_ix', 'model', 'version.gms') with open(fname) as f: @@ -17,8 +18,11 @@ re.search('VERSION_PATCH "(.+?)"', s).group(1), ) +with open('README.md') as f: + LONG_DESCRIPTION = f.read() + INSTALL_REQUIRES = [ - 'ixmp>=0.1.3', + 'ixmp>=0.2.0', 'pandas', 'xlrd', 'XlsxWriter', @@ -45,39 +49,26 @@ def all_gams_files(path, strip=None): return paths -def main(): - pack_dir = { - 'message_ix': 'message_ix', - } - entry_points = { +setup( + name='message_ix', + version=VERSION, + description='The MESSAGEix Integrated Assessment Model', + author='IIASA Energy Program', + author_email='message_ix@iiasa.ac.at', + long_description=LONG_DESCRIPTION, + long_description_content_type='text/markdown', + url='http://github.com/iiasa/message_ix', + install_requires=INSTALL_REQUIRES, + extras_require=EXTRAS_REQUIRE, + packages=find_packages(), + package_dir={'message_ix': 'message_ix'}, + package_data={ + 'message_ix': all_gams_files('message_ix/model', strip='message_ix') + }, + entry_points={ 'console_scripts': [ 'messageix-config=message_ix.cli:config', 'messageix-dl=message_ix.cli:dl', ], } - cmdclass = { - } - pack_data = { - 'message_ix': all_gams_files('message_ix/model', strip='message_ix') - } - setup_kwargs = { - "name": "message_ix", - "version": VERSION, - "description": 'The MESSAGEix Integrated Assessment Model', - "author": 'Daniel Huppmann, Matthew Gidden, Volker Krey, ' - 'Oliver Fricko, Peter Kolp', - "author_email": 'message_ix@iiasa.ac.at', - "url": 'http://github.com/iiasa/message_ix', - "install_requires": INSTALL_REQUIRES, - "extras_require": EXTRAS_REQUIRE, - "packages": find_packages(), - "package_dir": pack_dir, - "package_data": pack_data, - "entry_points": entry_points, - "cmdclass": cmdclass, - } - rtn = setup(**setup_kwargs) - - -if __name__ == "__main__": - main() +)