Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package python-dotmap for openSUSE:Factory checked in at 2022-01-15 20:05:21 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/python-dotmap (Old) and /work/SRC/openSUSE:Factory/.python-dotmap.new.1892 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-dotmap" Sat Jan 15 20:05:21 2022 rev:5 rq:946663 version:1.3.26 Changes: -------- --- /work/SRC/openSUSE:Factory/python-dotmap/python-dotmap.changes 2021-09-09 23:08:05.348868907 +0200 +++ /work/SRC/openSUSE:Factory/.python-dotmap.new.1892/python-dotmap.changes 2022-01-15 20:05:39.885780752 +0100 @@ -1,0 +2,6 @@ +Sat Jan 15 16:15:01 UTC 2022 - Dirk M??ller <dmuel...@suse.com> + +- update to 1.3.26: + * no changelog findable + +------------------------------------------------------------------- Old: ---- dotmap-1.3.24.tar.gz New: ---- dotmap-1.3.26.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ python-dotmap.spec ++++++ --- /var/tmp/diff_new_pack.kftiQv/_old 2022-01-15 20:05:40.309781083 +0100 +++ /var/tmp/diff_new_pack.kftiQv/_new 2022-01-15 20:05:40.313781086 +0100 @@ -1,7 +1,7 @@ # # spec file for package python-dotmap # -# Copyright (c) 2021 SUSE LLC +# Copyright (c) 2022 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -18,7 +18,7 @@ %{?!python_module:%define python_module() python-%{**} python3-%{**}} Name: python-dotmap -Version: 1.3.24 +Version: 1.3.26 Release: 0 Summary: Python ordered, dynamically-expandable dot-access dictionary License: MIT ++++++ dotmap-1.3.24.tar.gz -> dotmap-1.3.26.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/dotmap-1.3.24/MANIFEST.in new/dotmap-1.3.26/MANIFEST.in --- old/dotmap-1.3.24/MANIFEST.in 2020-06-04 17:33:56.000000000 +0200 +++ new/dotmap-1.3.26/MANIFEST.in 2021-12-10 15:28:46.000000000 +0100 @@ -1 +1 @@ -include LICENSE.txt README.rst +include LICENSE.txt README.md diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/dotmap-1.3.24/PKG-INFO new/dotmap-1.3.26/PKG-INFO --- old/dotmap-1.3.24/PKG-INFO 2021-07-29 15:21:35.666164400 +0200 +++ new/dotmap-1.3.26/PKG-INFO 2021-12-10 15:29:14.237851100 +0100 @@ -1,6 +1,6 @@ Metadata-Version: 2.1 Name: dotmap -Version: 1.3.24 +Version: 1.3.26 Summary: ordered, dynamically-expandable dot-access dictionary Home-page: https://github.com/drgrib/dotmap Author: Chris Redford @@ -14,27 +14,32 @@ [](https://www.paypal.com/donate?business=N2GLXLS5KBFBY&item_name=Chris+Redford¤cy_code=USD) # Install + ``` pip3 install dotmap ``` ## Upgrade + Get updates for current installation + ``` pip3 install --upgrade dotmap ``` # Features + `DotMap` is a dot-access `dict` subclass that - * has dynamic hierarchy creation - * can be initialized with keys - * easily initializes from `dict` - * easily converts to `dict` - * is ordered by insertion + + - has dynamic hierarchy creation (autovivification) + - can be initialized with keys + - easily initializes from `dict` + - easily converts to `dict` + - is ordered by insertion The key feature is exactly what you want: dot-access - ``` python + ```python from dotmap import DotMap m = DotMap() m.name = 'Joe' @@ -44,7 +49,7 @@ However, `DotMap` is a `dict` and you can treat it like a `dict` as needed - ``` python + ```python print(m['name']) # Joe m.name += ' Smith' @@ -55,20 +60,20 @@ It also has fast, automatic hierarchy (which can be deactivated by initializing with `DotMap(_dynamic=False)`) - ``` python + ```python m = DotMap() m.people.steve.age = 31 ``` And key initialization - ``` python + ```python m = DotMap(a=1, b=2) ``` You can initialize it from `dict` and convert it to `dict` - ``` python + ```python d = {'a':1, 'b':2} m = DotMap(d) @@ -81,7 +86,7 @@ And it has iteration that is ordered by insertion - ``` python + ```python m = DotMap() m.people.john.age = 32 @@ -102,7 +107,7 @@ It also has automatic counter initialization - ``` python + ```python m = DotMap() for i in range(7): m.counter += 1 @@ -112,7 +117,7 @@ And automatic addition initializations of any other type - ``` python + ```python m = DotMap() m.quote += 'lions' m.quote += ' and tigers' @@ -124,7 +129,7 @@ There is also built-in `pprint` as `dict` or `json` for debugging a large `DotMap` - ``` python + ```python m.pprint() # {'people': {'dave': {'age': 55, 'job': 'manager'}, # 'john': {'age': 32, 'job': 'programmer'}, diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/dotmap-1.3.24/README.md new/dotmap-1.3.26/README.md --- old/dotmap-1.3.24/README.md 2021-05-30 03:46:17.000000000 +0200 +++ new/dotmap-1.3.26/README.md 2021-11-01 17:53:55.000000000 +0100 @@ -5,27 +5,32 @@ [](https://www.paypal.com/donate?business=N2GLXLS5KBFBY&item_name=Chris+Redford¤cy_code=USD) # Install + ``` pip3 install dotmap ``` ## Upgrade + Get updates for current installation + ``` pip3 install --upgrade dotmap ``` # Features + `DotMap` is a dot-access `dict` subclass that -* has dynamic hierarchy creation -* can be initialized with keys -* easily initializes from `dict` -* easily converts to `dict` -* is ordered by insertion + +- has dynamic hierarchy creation (autovivification) +- can be initialized with keys +- easily initializes from `dict` +- easily converts to `dict` +- is ordered by insertion The key feature is exactly what you want: dot-access -``` python +```python from dotmap import DotMap m = DotMap() m.name = 'Joe' @@ -35,7 +40,7 @@ However, `DotMap` is a `dict` and you can treat it like a `dict` as needed -``` python +```python print(m['name']) # Joe m.name += ' Smith' @@ -46,20 +51,20 @@ It also has fast, automatic hierarchy (which can be deactivated by initializing with `DotMap(_dynamic=False)`) -``` python +```python m = DotMap() m.people.steve.age = 31 ``` And key initialization -``` python +```python m = DotMap(a=1, b=2) ``` You can initialize it from `dict` and convert it to `dict` -``` python +```python d = {'a':1, 'b':2} m = DotMap(d) @@ -72,7 +77,7 @@ And it has iteration that is ordered by insertion -``` python +```python m = DotMap() m.people.john.age = 32 @@ -93,7 +98,7 @@ It also has automatic counter initialization -``` python +```python m = DotMap() for i in range(7): m.counter += 1 @@ -103,7 +108,7 @@ And automatic addition initializations of any other type -``` python +```python m = DotMap() m.quote += 'lions' m.quote += ' and tigers' @@ -115,7 +120,7 @@ There is also built-in `pprint` as `dict` or `json` for debugging a large `DotMap` -``` python +```python m.pprint() # {'people': {'dave': {'age': 55, 'job': 'manager'}, # 'john': {'age': 32, 'job': 'programmer'}, diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/dotmap-1.3.24/dotmap/__init__.py new/dotmap-1.3.26/dotmap/__init__.py --- old/dotmap-1.3.24/dotmap/__init__.py 2021-05-30 03:46:17.000000000 +0200 +++ new/dotmap-1.3.26/dotmap/__init__.py 2021-10-14 15:52:30.000000000 +0200 @@ -113,7 +113,10 @@ except AttributeError: pass - return self[k] + try: + return self[k] + except KeyError: + raise AttributeError(f"'{self.__class__.__name__}' object has no attribute '{k}'") from None def __delattr__(self, key): return self._map.__delitem__(key) @@ -435,8 +438,8 @@ try: d.no.creation print(d) - except KeyError: - print('KeyError caught') + except AttributeError: + print('AttributeError caught') d = {'sub':{'a':1}} dm = DotMap(d) print(dm) @@ -449,8 +452,8 @@ print(dm) dm2.sub.no.creation print(dm) - except KeyError: - print('KeyError caught') + except AttributeError: + print('AttributeError caught') # _dynamic print('\n== toDict() ==') diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/dotmap-1.3.24/dotmap/test.py new/dotmap-1.3.26/dotmap/test.py --- old/dotmap-1.3.24/dotmap/test.py 2020-06-04 17:33:56.000000000 +0200 +++ new/dotmap-1.3.26/dotmap/test.py 2021-10-14 15:52:30.000000000 +0200 @@ -171,17 +171,25 @@ m.sub.still.works nonDynamic = DotMap(_dynamic=False) - def assignNonDynamic(): + def assignNonDynamicAttribute(): nonDynamic.no - self.assertRaises(KeyError, assignNonDynamic) + self.assertRaises(AttributeError, assignNonDynamicAttribute) + + def assignNonDynamicKey(): + nonDynamic['no'] + self.assertRaises(KeyError, assignNonDynamicKey) nonDynamicWithInit = DotMap(m, _dynamic=False) nonDynamicWithInit.still.works nonDynamicWithInit.sub.still.works - def assignNonDynamicWithInit(): + def assignNonDynamicAttributeWithInit(): nonDynamicWithInit.no.creation - self.assertRaises(KeyError, assignNonDynamicWithInit) + self.assertRaises(AttributeError, assignNonDynamicAttributeWithInit) + + def assignNonDynamicKeyWithInit(): + nonDynamicWithInit['no'].creation + self.assertRaises(KeyError, assignNonDynamicKeyWithInit) class TestRecursive(unittest.TestCase): diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/dotmap-1.3.24/dotmap.egg-info/PKG-INFO new/dotmap-1.3.26/dotmap.egg-info/PKG-INFO --- old/dotmap-1.3.24/dotmap.egg-info/PKG-INFO 2021-07-29 15:21:35.000000000 +0200 +++ new/dotmap-1.3.26/dotmap.egg-info/PKG-INFO 2021-12-10 15:29:12.000000000 +0100 @@ -1,6 +1,6 @@ Metadata-Version: 2.1 Name: dotmap -Version: 1.3.24 +Version: 1.3.26 Summary: ordered, dynamically-expandable dot-access dictionary Home-page: https://github.com/drgrib/dotmap Author: Chris Redford @@ -14,27 +14,32 @@ [](https://www.paypal.com/donate?business=N2GLXLS5KBFBY&item_name=Chris+Redford¤cy_code=USD) # Install + ``` pip3 install dotmap ``` ## Upgrade + Get updates for current installation + ``` pip3 install --upgrade dotmap ``` # Features + `DotMap` is a dot-access `dict` subclass that - * has dynamic hierarchy creation - * can be initialized with keys - * easily initializes from `dict` - * easily converts to `dict` - * is ordered by insertion + + - has dynamic hierarchy creation (autovivification) + - can be initialized with keys + - easily initializes from `dict` + - easily converts to `dict` + - is ordered by insertion The key feature is exactly what you want: dot-access - ``` python + ```python from dotmap import DotMap m = DotMap() m.name = 'Joe' @@ -44,7 +49,7 @@ However, `DotMap` is a `dict` and you can treat it like a `dict` as needed - ``` python + ```python print(m['name']) # Joe m.name += ' Smith' @@ -55,20 +60,20 @@ It also has fast, automatic hierarchy (which can be deactivated by initializing with `DotMap(_dynamic=False)`) - ``` python + ```python m = DotMap() m.people.steve.age = 31 ``` And key initialization - ``` python + ```python m = DotMap(a=1, b=2) ``` You can initialize it from `dict` and convert it to `dict` - ``` python + ```python d = {'a':1, 'b':2} m = DotMap(d) @@ -81,7 +86,7 @@ And it has iteration that is ordered by insertion - ``` python + ```python m = DotMap() m.people.john.age = 32 @@ -102,7 +107,7 @@ It also has automatic counter initialization - ``` python + ```python m = DotMap() for i in range(7): m.counter += 1 @@ -112,7 +117,7 @@ And automatic addition initializations of any other type - ``` python + ```python m = DotMap() m.quote += 'lions' m.quote += ' and tigers' @@ -124,7 +129,7 @@ There is also built-in `pprint` as `dict` or `json` for debugging a large `DotMap` - ``` python + ```python m.pprint() # {'people': {'dave': {'age': 55, 'job': 'manager'}, # 'john': {'age': 32, 'job': 'programmer'}, diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/dotmap-1.3.24/setup.py new/dotmap-1.3.26/setup.py --- old/dotmap-1.3.24/setup.py 2021-07-29 15:21:27.000000000 +0200 +++ new/dotmap-1.3.26/setup.py 2021-12-10 15:29:03.000000000 +0100 @@ -4,7 +4,7 @@ long_description = fh.read() setup( - version = '1.3.24', + version = '1.3.26', name='dotmap', packages=['dotmap'], # this must be the same as the name above description='ordered, dynamically-expandable dot-access dictionary',