From 44544c16715009553d426a14aa71d0e6f8117535 Mon Sep 17 00:00:00 2001 From: DEKHTIARJonathan Date: Sun, 22 Apr 2018 23:58:11 +0200 Subject: [PATCH 1/4] gitignore cleaned and re-organised --- .gitignore | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/.gitignore b/.gitignore index c468f8a4f..eaa3ba9a8 100644 --- a/.gitignore +++ b/.gitignore @@ -2,15 +2,19 @@ *.npz *.pyc *~ + .DS_Store .idea .spyproject/ +.pytest_cache/ + +venv/ build/ -dist +data/ +dist/ docs/_build tensorlayer.egg-info -tensorlayer/__pacache__ -venv/ -.pytest_cache/ +tensorlayer/__pycache__ + update_tl.bat update_tl.py From 1c9cfde7b279d3de95d13725443af18e24ae0331 Mon Sep 17 00:00:00 2001 From: DEKHTIARJonathan Date: Sun, 22 Apr 2018 23:59:22 +0200 Subject: [PATCH 2/4] LayerConfig Abstract Class enforced as Abstract --- tensorlayer/layers/core.py | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/tensorlayer/layers/core.py b/tensorlayer/layers/core.py index 80ac83a22..4c9e05b3a 100644 --- a/tensorlayer/layers/core.py +++ b/tensorlayer/layers/core.py @@ -1,6 +1,7 @@ # -*- coding: utf-8 -*- import time +from abc import ABCMeta, abstractmethod import numpy as np import tensorflow as tf @@ -38,10 +39,14 @@ ] -class LayersConfig: +class LayersConfig(metaclass=ABCMeta): tf_dtype = tf.float32 # TensorFlow DType set_keep = {} # A dictionary for holding tf.placeholders + @abstractmethod + def __init__(self): + pass + try: # For TF12 and later TF_GRAPHKEYS_VARIABLES = tf.GraphKeys.GLOBAL_VARIABLES From bf87dfaeb85bb395de2fb0c56f896cbcbc1f689d Mon Sep 17 00:00:00 2001 From: DEKHTIARJonathan Date: Mon, 23 Apr 2018 00:15:14 +0200 Subject: [PATCH 3/4] LayersConfig unittest added --- tests/test_layers_core.py | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/tests/test_layers_core.py b/tests/test_layers_core.py index fb0cfb956..806c43954 100644 --- a/tests/test_layers_core.py +++ b/tests/test_layers_core.py @@ -6,6 +6,16 @@ import tensorlayer as tl +class Core_Helpers_Test(unittest.TestCase): + + def test_LayersConfig(self): + with self.assertRaises(TypeError): + tl.layers.LayersConfig() + + self.assertIsInstance(tl.layers.LayersConfig.tf_dtype, tf.DType) + self.assertIsInstance(tl.layers.LayersConfig.set_keep, dict) + + class Layer_Core_Test(unittest.TestCase): @classmethod From 1228a1e8b1fdee787dce4396bb7fa6fec32d4df1 Mon Sep 17 00:00:00 2001 From: DEKHTIARJonathan Date: Mon, 23 Apr 2018 01:37:36 +0200 Subject: [PATCH 4/4] Py2 and Py3 compatibility issue fixed --- tensorlayer/layers/core.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/tensorlayer/layers/core.py b/tensorlayer/layers/core.py index 4c9e05b3a..8fdcd9945 100644 --- a/tensorlayer/layers/core.py +++ b/tensorlayer/layers/core.py @@ -1,5 +1,6 @@ # -*- coding: utf-8 -*- +import six import time from abc import ABCMeta, abstractmethod @@ -39,7 +40,9 @@ ] -class LayersConfig(metaclass=ABCMeta): +@six.add_metaclass(ABCMeta) +class LayersConfig(object): + tf_dtype = tf.float32 # TensorFlow DType set_keep = {} # A dictionary for holding tf.placeholders