Skip to content

Commit

Permalink
Merge remote-tracking branch 'origin/release-1.5.1'
Browse files Browse the repository at this point in the history
* origin/release-1.5.1:
  Documentation updates
  Documentation updates
  Updated documentation
  Updated build_requirements.py
  Documentation updates
  Documentation updates
  Documentation updates
  Documentation updates
  Documentation updates
  Python 3.3 removed from travis tests
  Documentation updates; updated requirements (all.txt)
  Bootstrap Datepicker: small bugfix
  Updated Bootstrap to 4.1.2
  smarthome.py: Added platform info to logging of Python version
  utils.py: Ensured that Utils.string_to_list converts a string to a list of len 1 (if the string doesn't start with '[' and ends with ']'
  smarthome.py: On startup the used Python version is written to the logfile
  tools/build_requirements: Resolved most cases for duplicate entries that can't be handled by pip3
  Documentation updates; updated requirements (all.txt)
  Documentation updates; updated requirements (all.txt)
  Documentation updates
  • Loading branch information
msinn committed Jul 14, 2018
2 parents 0594062 + aca5f2e commit cc1288d
Show file tree
Hide file tree
Showing 46 changed files with 897 additions and 370 deletions.
1 change: 0 additions & 1 deletion .travis.yml
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
sudo: false
language: python
python:
- "3.3"
- "3.4"
- "3.5"
- "3.6"
Expand Down
3 changes: 2 additions & 1 deletion bin/shngversion.py
Original file line number Diff line number Diff line change
Expand Up @@ -34,8 +34,9 @@
# Update auf 1.4d wg. SmartPlugin Anpassung (get_configname())"
# Update auf 1.4e wg. lib.item Anpassung (trigger_condition)"
# Update auf 1.5 wg. Release"
# Update auf 1.5.1 wg. Hotfix Release

shNG_version = '1.5'
shNG_version = '1.5.1'

# ---------------------------------------------------------------------------------
FileBASE = None
Expand Down
11 changes: 7 additions & 4 deletions bin/smarthome.py
Original file line number Diff line number Diff line change
Expand Up @@ -39,6 +39,9 @@
if sys.hexversion < 0x03040000:
print("Sorry your python interpreter ({0}.{1}) is too old. Please update to 3.4 or newer.".format(sys.version_info[0], sys.version_info[1]))
exit()
PYTHON_VERSION = str(sys.version_info[0])+'.'+str(sys.version_info[1])+'.'+str(sys.version_info[2])+' '+str(sys.version_info[3])
if sys.version_info[3] != 'final':
PYTHON_VERSION += ' '+str(sys.version_info[4])

#####################################################################
# prevent user root
Expand Down Expand Up @@ -235,9 +238,11 @@ def __init__(self, extern_conf_dir=_base_dir):

# setup logging
self.init_logging(self._log_conf_basename, MODE)
self._logger.warning("-------------------- Init SmartHomeNG {0} --------------------".format(VERSION))
self._logger.warning("-------------------- Init SmartHomeNG {} --------------------".format(VERSION))
self._logger.warning("Running in Python interpreter 'v{}' on {} platform".format(PYTHON_VERSION, sys.platform))

self._logger.info("Using config dir: {}".format(self._extern_conf_dir))
if self._extern_conf_dir != BASE:
self._logger.warning("Using config dir {}".format(self._extern_conf_dir))


#############################################################
Expand Down Expand Up @@ -277,8 +282,6 @@ def __init__(self, extern_conf_dir=_base_dir):
# Setting debug level and adding memory handler
self.initMemLog()

self._logger.debug("Python {0}".format(sys.version.split()[0]))

# test if a valid locale is set in the operating system
try:
if os.environ['LANG'].find('UTF-8') == -1:
Expand Down
6 changes: 3 additions & 3 deletions doc/developer/source/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -37,8 +37,8 @@ any way you want and can.
:maxdepth: 6
:hidden:
:titlesonly:
user_doc.rst

User Documentation (German) <https://www.smarthomeng.de/user>
requirements.rst
install
build_doc
Expand All @@ -62,6 +62,6 @@ any way you want and can.
logging
tools
development
release
release/release
genindex
impressum
18 changes: 0 additions & 18 deletions doc/developer/source/release.rst

This file was deleted.

6 changes: 3 additions & 3 deletions doc/developer/source/release/1_5.rst
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
=============================
Release 1.5 - July xxnd, 2018
=============================
============================
Release 1.5 - July 8th, 2018
============================

There are some bugfixes and new features for the core of SmartHomeNG and the plugins.

Expand Down
9 changes: 9 additions & 0 deletions doc/developer/source/release/1_5_1.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
===============================
Release 1.5.1 - July 15th, 2018
===============================

There are some bugfixes and new features for the core of SmartHomeNG and the plugins.

The detailed release notes can be found in the user documentation under `https://www.smarthomeNG.de/user/release <../../user/release/1_5_1.html>`_
and in the SmartHomeNG blog under `https://www.smarthomeNG.de/blog <https://www.smarthomeNG.de/blog/>`_

19 changes: 19 additions & 0 deletions doc/developer/source/release/release.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
Release Notes
=============

Release notes for SmartHomeNG:

.. toctree::
:maxdepth: 1
:titlesonly:

1_5_1
1_5
1_4_2
1_4_1
1_4
1_3
1_2
1_1
release_sh_py

3 changes: 2 additions & 1 deletion doc/user/source/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -54,8 +54,9 @@ oder im `Chat auf gitter.im <https://gitter.im/smarthomeNG/smarthome>`_ .
tools/tools.rst
fehlersuche
faq
Entwickler Dokumentation (Englisch) <https://www.smarthomeng.de/developer>
entwickler_doku
release
release/release
genindex
impressum

Original file line number Diff line number Diff line change
Expand Up @@ -51,10 +51,13 @@ Die folgenden Kommandos am besten mit dem User Account (smarthome) durchführen
mkdir plugins
cd plugins
git clone git://github.com/smarthomeNG/plugins.git .
cd ..
python3 tools/build_requirements.py
Bitte auf den Punkt am Ende der **git clone** Kommandos achten!

Das letzte Kommando sorgt dafür, dass die Python Requirements (../requirements/all.txt) aktuell generiert werden.

Erstmalige Konfiguration erstellen
----------------------------------
Expand Down Expand Up @@ -134,6 +137,9 @@ oder aber alternativ kann man auch sämtliche von allen Plugins benötigten Modu

.. code-block:: bash
cd /usr/local/smarthome
python3 tools/build_requirements.py
sudo pip3 install -r requirements/all.txt
Expand Down
5 changes: 4 additions & 1 deletion doc/user/source/installation/update_upgrade.md
Original file line number Diff line number Diff line change
Expand Up @@ -22,11 +22,14 @@ git pull
eingeben. Daraufhin sollte der Update-Vorgang starten.

Nachdem SmartHomeNG aktualisiert wurde, müssen noch die **Plugins aktualisiert** werden.
Dazu in das **plugins** Verzeichnis wechseln und einen Pull durchführen:
Dazu in das **plugins** Verzeichnis wechseln und einen Pull durchführen. Anschließend die Requirements (../requirements/all.txt) für Python updaten:

```
cd plugins
git pull
cd ..
python3 tools/build_requirements.py
```


Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,9 +10,28 @@ Der Syntax eines **eval** Ausdrucks ist der Syntax einer `Python conditional exp

Dieser Syntax wird bei den Item Attributen **eval**, **on_change** und **on_update** verwendet.

Zu beachten ist, dass der Syntax einer if-Bedingung in einer Python conditional Expression folgender ist:

``eval: <expression-if-true> if <condition> else <expression-if-false>``


Beispiel:

``eval=value if value>0 else 0``
``eval: value if value>0 else 0``

Die Expression setzt den Item-Wert auf den bisherigen Wert, falls er >0 ist, sonst wird der Wert auf 0 gesetzt.
Damit findet eine Zuweisung statt und on_change bzw. on_update Trigger werden ausgelöst.

Wenn das Beispiel folgendermaßen formuliert wird:

``eval: 0 if value <0 else None``

Hätte es auf den Item-Wert letztlich die selben Auswirkungen: Hier wird der Item-Wert auf 0 gesetzt, falls der Wert <0 ist,
sonst (None) wird keine Aktion ausgeführt (damit bleibt der Wert unverändert erhalten).
Damit werden on_change bzw. on_update Trigger nur ausgelöst, wenn der Wert vorher <0 war. Bei Erhalt des Wertes (None),
werden keine Trigger ausgelöst.



Gemeinsame Verwendung von eval und on\_\.\.\. Item Attributen
-------------------------------------------------------------
Expand Down
17 changes: 0 additions & 17 deletions doc/user/source/release.rst

This file was deleted.

6 changes: 3 additions & 3 deletions doc/user/source/release/1_5.rst
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
===========================
Release 1.5 - xx. Juli 2018
===========================
==========================
Release 1.5 - 8. Juli 2018
==========================

Es gibt eine Menge neuer Features im Core von SmartHomeNG und den Plugins.

Expand Down
68 changes: 68 additions & 0 deletions doc/user/source/release/1_5_1.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,68 @@
=============================
Release 1.5.1 - 15. Juli 2018
=============================

Es gibt eine Menge neuer Features im Core von SmartHomeNG und den Plugins.


Unterstützte Python Versionen
=============================

Bitte beachten: Seit SmartHomeNG Release 1.4 wollen wir die aktive Unterstützung älterer Python
Versionen einstellen. Die älteste unterstützte Python Version wird dann Python 3.4 sein. Es kann jedoch sein,
dass Plugins Funktionalitäten implementieren (z.B. Async IO), die Python 3.5 voraussetzen
(Siehe *Hard- u. Software Anforderungen* im Abschnitt *Installation* zu unterstützten Python Versionen)

Das bedeutet nicht unbedingt, dass SmartHomeNG ab Release 1.5 nicht mehr unter älteren Python
Versionen läuft. Es bedeutet, dass SmartHomeNG nicht mehr mit älteren Python Versionen getestet
wird und das gemeldete Fehler mit älteren Python Versionen nicht mehr zu Buxfixen führen.

Bitte auch die Release Notes für Version 1.5 unter `https://www.smarthomeNG.de/user/release <../../user/release/1_5.html>`_ beachten.




Bugfixes im CORE
----------------

* tools/build_requirements.py erweitert, um doppelte Requirements Package mit unterschiedlichen Versionen zu verhindern.
* requirements/all.txt neu erzeugt
* Python Version and Plattform Information zum Logging baim Start hinzugefügt
* Bug in string_to_list() beseitigt, der verhinderte, dass reine Strings in eine Liste der Länge 1 gewandelt wurden.



Updates im CORE
---------------

* Module http:
* Updated Bootstrap to v4.1.2



Neue Plugin Versionen
---------------------

Für Details zu den inhaltlichen Änderungen der einzelnen Plugins, bitte die Dokumentation des jeweiligen Plugins konsultieren.


* avdevice:

* Neue Version 1.3.6 des Plugins
* dlms:

* Neue Version 1.5.1 des Plugins
* webservices:

* Neue Version 1.5.0.3 des Plugins



Dokumentation
-------------

* Anwender Dokumentation

* Hinweis zum Neubau der Python Requiremments zur Installationsanleitung hinzugefügt


18 changes: 18 additions & 0 deletions doc/user/source/release/release.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
Release Notes
=============

Release notes für SmartHomeNG:

.. toctree::
:maxdepth: 1
:titlesonly:

1_5_1
1_5
1_4_2
1_4_1
1_4
1_3
1_2
1_1
release_sh_py
2 changes: 1 addition & 1 deletion lib/metadata.py
Original file line number Diff line number Diff line change
Expand Up @@ -390,7 +390,7 @@ def _expand_listvalues(self, param, value):
if (typ == 'list') and (not isinstance(value, list)):
result = Utils.string_to_list(value)
# if (typ == 'list'):
# logger.warning("_expand_listvalues: value = >{}<, type(value) = >{}<, result = >{}<, type(result) = >{}<".format(value, type(value), result, type(result)))
# logger.warning(self._log_premsg+"_expand_listvalues: value = >{}<, type(value) = >{}<, result = >{}<, type(result) = >{}<".format(value, type(value), result, type(result)))
return result


Expand Down
11 changes: 9 additions & 2 deletions lib/utils.py
Original file line number Diff line number Diff line change
Expand Up @@ -431,7 +431,14 @@ def string_to_list(string):
Convert a string to a list
If the parameter is not of type str, the parameter gest returned unchanged
If parameter string is
- a list, it gets returned unchanged
- a simple datatype other than string, it gets returned unchanged
- an empty string, it gets returned unchanged
- a non-empty string, it gets converted to a list of len=1
- format [<str>,<str>], it gets converted to a list
:param string: string to convert
:type string: str
Expand All @@ -444,7 +451,7 @@ def string_to_list(string):
if len(string) == 0:
return string
if string[0] != '[':
return
return [string]
hl = Utils.strip_square_brackets(string).split(',')
rl = []
for e in hl:
Expand Down
4 changes: 2 additions & 2 deletions modules/http/README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Module http

This module allows plugins to implement a web interface. The API is described below. The first plugin to utilize this API is teh backend plugin.
This module allows plugins to implement a web interface. The API is described below. The first plugin to utilize this API is the backend plugin.

> Note: To write a plugin that utilizes this module, you have to be familiar with CherryPy.
Expand Down Expand Up @@ -38,7 +38,7 @@ http:

```

#### user (optional
#### user (optional)

username for the web access. By default username `admin` is used.

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -1151,12 +1151,12 @@
factor *= 10;
/* falls through */
case 1:
prevIsDisabled = Math.floor(year / factor) * factor < startYear;
prevIsDisabled = Math.floor(year / factor) * factor <= startYear;
nextIsDisabled = Math.floor(year / factor) * factor + factor > endYear;
break;
case 0:
prevIsDisabled = year <= startYear && month < startMonth;
nextIsDisabled = year >= endYear && month > endMonth;
prevIsDisabled = year <= startYear && month <= startMonth;
nextIsDisabled = year >= endYear && month >= endMonth;
break;
}

Expand Down
Loading

0 comments on commit cc1288d

Please sign in to comment.