Skip to content

Commit

Permalink
Merge pull request #469 from oemof/release_0.2.1
Browse files Browse the repository at this point in the history
Release 0.2.1
  • Loading branch information
jnnr authored Mar 19, 2018
2 parents 4a89566 + 33935ad commit c3955e9
Show file tree
Hide file tree
Showing 54 changed files with 1,727 additions and 256 deletions.
46 changes: 46 additions & 0 deletions CODE_OF_CONDUCT.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
# Contributor Covenant Code of Conduct

## Our Pledge

In the interest of fostering an open and welcoming environment, we as contributors and maintainers pledge to making participation in our project and our community a harassment-free experience for everyone, regardless of age, body size, disability, ethnicity, gender identity and expression, level of experience, nationality, personal appearance, race, religion, or sexual identity and orientation.

## Our Standards

Examples of behavior that contributes to creating a positive environment include:

* Using welcoming and inclusive language
* Being respectful of differing viewpoints and experiences
* Gracefully accepting constructive criticism
* Focusing on what is best for the community
* Showing empathy towards other community members

Examples of unacceptable behavior by participants include:

* The use of sexualized language or imagery and unwelcome sexual attention or advances
* Trolling, insulting/derogatory comments, and personal or political attacks
* Public or private harassment
* Publishing others' private information, such as a physical or electronic address, without explicit permission
* Other conduct which could reasonably be considered inappropriate in a professional setting

## Our Responsibilities

Project maintainers are responsible for clarifying the standards of acceptable behavior and are expected to take appropriate and fair corrective action in response to any instances of unacceptable behavior.

Project maintainers have the right and responsibility to remove, edit, or reject comments, commits, code, wiki edits, issues, and other contributions that are not aligned to this Code of Conduct, or to ban temporarily or permanently any contributor for other behaviors that they deem inappropriate, threatening, offensive, or harmful.

## Scope

This Code of Conduct applies both within project spaces and in public spaces when an individual is representing the project or its community. Examples of representing a project or community include using an official project e-mail address, posting via an official social media account, or acting as an appointed representative at an online or offline event. Representation of a project may be further defined and clarified by project maintainers.

## Enforcement

Instances of abusive, harassing, or otherwise unacceptable behavior may be reported by contacting the [project team](https://oemof.org/contact/). The project team will review and investigate all complaints, and will respond in a way that it deems appropriate to the circumstances. The project team is obligated to maintain confidentiality with regard to the reporter of an incident. Further details of specific enforcement policies may be posted separately.

Project maintainers who do not follow or enforce the Code of Conduct in good faith may face temporary or permanent repercussions as determined by other members of the project's leadership.

## Attribution

This Code of Conduct is adapted from the [Contributor Covenant][homepage], version 1.4, available at [http://contributor-covenant.org/version/1/4][version]

[homepage]: http://contributor-covenant.org
[version]: http://contributor-covenant.org/version/1/4/
2 changes: 1 addition & 1 deletion README.rst
Original file line number Diff line number Diff line change
Expand Up @@ -54,7 +54,7 @@ Got further questions on using oemof?
If you have questions regarding the use of oemof you can visit the forum at: `https://forum.openmod-initiative.org/tags/c/qa/oemof` and open a new thread if your questions hasn't been already answered.

Join the developers!
===================
====================

A warm welcome to all who want to join the developers and contribute to oemof. Information
on the details and how to approach us can be found
Expand Down
2 changes: 1 addition & 1 deletion VERSION
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
__version__ = "0.2.0"
__version__ = "0.2.1"

20 changes: 20 additions & 0 deletions doc/api/oemof.outputlib.rst
Original file line number Diff line number Diff line change
@@ -1,6 +1,26 @@
oemof.outputlib package
=======================

Submodules
----------

oemof.outputlib.processing module
-------------------------

.. automodule:: oemof.outputlib.processing
:members:
:undoc-members:
:show-inheritance:

oemof.outputlib.views module
-------------------------

.. automodule:: oemof.outputlib.views
:members:
:undoc-members:
:show-inheritance:


Module contents
---------------

Expand Down
2 changes: 1 addition & 1 deletion doc/conf.py
Original file line number Diff line number Diff line change
Expand Up @@ -55,7 +55,7 @@

# General information about the project.
project = u'oemof'
copyright = u'2014, oemof-Team'
copyright = u'2014-2018, oemof-developer-group'
author = u'oemof-Team'

# The version info for the project you're documenting, acts as replacement for
Expand Down
7 changes: 2 additions & 5 deletions doc/installation_and_setup.rst
Original file line number Diff line number Diff line change
Expand Up @@ -68,7 +68,7 @@ Skip the steps you have already done. Check your architecture first (32/64 bit).

.. code-block:: console
conda create -n yourenvname python=3.4
conda create -n yourenvname python=3.x
source activate yourenvname
4. In terminal type: :code:`pip install oemof`
Expand Down Expand Up @@ -131,12 +131,9 @@ Skip the steps you have already done. Check your architecture first (32/64 bit)

.. code-block:: console
conda create -n yourenvname python=3.4
conda create -n yourenvname python=3.x
activate yourenvname
*It is recommended to use python 3.4. Some users reported that oemof does not work with
Windows + Anaconda + Python 3.5*

4. In 'Anaconda Prompt' type: :code:`pip install oemof`
5. Install a :ref:`windows_solver_label` if you want to use solph and execute the solph examples (See :ref:`check_installation_label` ) to check if the installation of the solver and oemof was successful

Expand Down
2 changes: 1 addition & 1 deletion doc/oemof_outputlib.rst
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@ The scalars and sequences describe nodes (with keys like (node, None)) and flows
.. code-block:: python
views.convert_keys_to_strings(results)
print(results[(wind, bus_electricity)]['sequences']
print(results[('wind', 'bus_electricity')]['sequences']
Another option is to access data belonging to a grouping by the name of the grouping
Expand Down
4 changes: 2 additions & 2 deletions doc/oemof_solph.rst
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
oemof-solph
~~~~~~~~~~~

Solph is an oemof-package, designed to create and solve linear or mixed-integer linear optimization problems. The packages is based on pyomo. To create an energy system model the :ref:`oemof_network_label` ist used and extended by components such as storages. To get started with solph, checkout the solph-examples in the :ref:`solph_examples_label` section.
Solph is an oemof-package, designed to create and solve linear or mixed-integer linear optimization problems. The packages is based on pyomo. To create an energy system model the :ref:`oemof_network_label` is used and extended by components such as storages. To get started with solph, checkout the examples in the :ref:`solph_examples_label` section.

.. contents::
:depth: 2
Expand Down Expand Up @@ -567,4 +567,4 @@ See the `example repository <https://github.com/oemof/oemof_examples>`_ for an e
Solph Examples
--------------

See the `example repository <https://github.com/oemof/oemof_examples>`_ for various solph examples. The repository has sections for each major release.
See the `example repository <https://github.com/oemof/oemof_examples>`_ for various examples. The repository has sections for each major release.
3 changes: 2 additions & 1 deletion doc/whats_new.rst
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,8 @@ These are new features and improvements of note in each release
:depth: 1
:local:
:backlinks: top


.. include:: whatsnew/v0-2-1.rst
.. include:: whatsnew/v0-2-0.rst
.. include:: whatsnew/v0-1-4.rst
.. include:: whatsnew/v0-1-2.rst
Expand Down
104 changes: 104 additions & 0 deletions doc/whatsnew/v0-2-1.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,104 @@
v0.2.1 (March 9, 2018)
+++++++++


API changes
###########

* The function create_nx_graph only takes an energysystem as argument,
not a solph model. As it is not a major release you can still pass
a Model but you should adapt your application as soon as possible.
(`Issue #439 <https://github.com/oemof/oemof/issues/439>`_)


New features
############

* It is now possible determine minimum up and downtimes for nonconvex flows.
Check the `oemof_examples <https://github.com/oemof/oemof_examples>`_
repository for an exemplary usage.

* Startup and shutdown costs can now be defined time-dependent.

* The graph module has been revised.
(`Issue #439 <https://github.com/oemof/oemof/issues/439>`_)

* You can now store a graph to disc as `.graphml` file to open it in yEd
with labels.
* You can add weight to edges.
* Labels are attached to the nodes.

* Two functions `get_node_by_name` and `filter_nodes` have been added that
allow to get specified nodes or nodes of one kind from the results
dictionary. (`Issue #426 <https://github.com/oemof/oemof/issues/426>`_)

* A new function `param_results()` collects all parameters of nodes and flows
in a dictionary similar to the `results` dictionary.
(`Issue #445 <https://github.com/oemof/oemof/issues/445>`_)

* In `outputlib.views.node()`, an option for multiindex dataframe has been added.


Documentation
#############

* Some small fixes and corrected typos.


Known issues
############

* It is not possible to model one time step with oemof.solph. You have to
model at least two timesteps
(`Issue #306 <https://github.com/oemof/oemof/issues/306>`_). Please leave a
comment if this bug affects you.


Bug fixes
#########

* Shutdown costs for nonconvex flows are now accounted within the objective
which was not the case before due to a naming error.
* Console script `oemof_test_installation` has been fixed.
(`Issue #452 <https://github.com/oemof/oemof/issues/452>`_)
* Adapt solph to API change in the Pyomo package.
* Deserializing a :class:`Node <oemof.network.Node>` leads to an object which
was no longer serializable. This is fixed now. :class:`Node
<oemof.network.Node>` instances should be able to be dumped and restored an
arbitraty amount of times.
* Adding timesteps to index of constraint for component el-line
fixes an issue with pyomo.


Testing
#######

* New console script `test_oemof` has been added (experimental).
(`Issue #453 <https://github.com/oemof/oemof/issues/453>`_)


Other changes
#############

* Internal change: Unnecessary list extensions while creating a model are
avoided, which leads to a decrease in runtime.
(`Issue #438 <https://github.com/oemof/oemof/issues/438>`_)
* The negative/positive gradient attributes are dictionaries. In the
constructor they moved from sequences to a new `dictionaries` argument.
(`Issue #437 <https://github.com/oemof/oemof/issues/437>`_)
* License agreement was adapted according to the reuse project
(`Issue #442 <https://github.com/oemof/oemof/issues/442>`_)
* Code of conduct was added.
(`Issue #440 <https://github.com/oemof/oemof/issues/440>`_)
* Version of required packages is now limited to the most actual version
(`Issue #464 <https://github.com/oemof/oemof/issues/464>`_)


Contributors
############

* Cord Kaldemeyer
* Jann Launer
* Simon Hilpert
* Stephan Günther
* Uwe Krien
2 changes: 1 addition & 1 deletion oemof/__init__.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
from pkgutil import extend_path
__path__ = extend_path(__path__, __name__)

__version__ = '0.2.0'
__version__ = '0.2.1'
11 changes: 7 additions & 4 deletions oemof/energy_system.py
Original file line number Diff line number Diff line change
@@ -1,10 +1,13 @@
# -*- coding: utf-8 -*-

"""Basic EnergySystem class
"""
__copyright__ = "oemof developer group"
__license__ = "GPLv3"
This file is part of project oemof (github.com/oemof/oemof). It's copyrighted
by the contributors recorded in the version control history of the file,
available from its original location oemof/oemof/energy_system.py
SPDX-License-Identifier: GPL-3.0-or-later
"""

from functools import partial
import logging
Expand Down Expand Up @@ -63,7 +66,7 @@ class EnergySystem:
structure of the results dictionary.
timeindex : pandas.index, optional
Define the time range and increment for the energy system. This is an
optional atribute but might be import for other functions/methods that
optional attribute but might be import for other functions/methods that
use the EnergySystem class as an input parameter.
Expand Down
Loading

0 comments on commit c3955e9

Please sign in to comment.