This log should always be updated when doing backwards incompatible changes, resulting in a major version bump. Feel free to add a log for lesser version bumps as well, but for major bumps it's a must.
- Upgraded typing-extensions to be >=4.2.0,<5.0.0
- Needed for Solana compatibility in index-to-address
- Removing Python < 3.9
- Adding Github Actions checks to run test suite
- Minor fixes to previously failing tests
- Fixed
- Set as Optional a type initialized to None
- Changed
- "Returned from" log message is now more concise.
- Changed
- Set default log level to
INFO
- Set default log level to
- Changed
- Package renamed from
loggo
tologgo2
- Package renamed from
- Added
- Make Loggo init accept a new optional parameter log_formatter, which specifies a formatter used while writing log records to stdout or a file. Loggo remains backward compatible, as the default log formatter is LocalLogFormatter.
- Add a new log formatter JsonLogFormatter
- Changed
private_data
kwarg ofLoggo.__init__
no longer acceptsNone
value.
- Removed
- The remaining public data members of a Loggo object:
called
,returned
,returned_none
anderrored
- The remaining public data members of a Loggo object:
- Fixed
- Logging calls no longer mutate extra data
- Changed
- Graypy dependency is not installed by default. To install with Graylog support, install with the
graylog
extra:pip install loggo[graylog]
- Don't allow using @loggo.logme to decorate callables. Use @loggo instead.
- Make Loggo.write_to_file() a private method.
- Make Loggo init param
raise_logging_errors
default to True - Make loggo.loggo module private
- Reduce a Loggo object's public data members to minimum. Only
called
,returned
,returned_none
anderrored
remain public now.
- Graypy dependency is not installed by default. To install with Graylog support, install with the
-
Added
called
,returned
,returned_none
anderrored
kwargs on instantiation for custom log strings
-
Changed
- do not pass a config dict on instantiation, instead just keyword arguments
- Graylog address is given to init as tuple named graylog_address instead of having the ip and port in separate arguments.
- default obscured data string
[PRIVATE_DATA] -> ********
. This string is not configurable anymore. - default log level changed from logging.INFO to logging.DEBUG
-
Removed
- loggo.events; its functionality is still available during instantiation
- line_length config, which was not respected anyway, and not really needed.
- max_dict_depth config. Now always set to the previous default value 5.
- error_level config. Now always set to the LOG_LEVEL
- Loggo.verbose contextmanager
- Loggo.log_errors contextmanager
- Changed
Loggo.listen_to()
no longer takes positional argumentno_graylog_disable_log
. Instead of this, the key-value-pair'log_if_graylog_disabled': bool
can be included in the config dict when instantiating Loggo.- The
error_alert
kwarg ofLoggo.events()
was renamed toerror_level
and is now expected to be integer. - The signature
Loggo.log(self, message: str, alert: Optional[str] = None, extra: Optional[Dict] = None, safe: bool = False)
is nowLoggo.log(self, level: int, msg: str, extra: Optional[Dict] = None, safe: bool = False)
.
- Changed
- Drop support for Python versions lower than 3.6
-
Added
- Added config option:
truncation (int)
, which determines extra data value max length
- Added config option:
-
Changed
- Internals updated to allow auto-logging of static/class methods in uninstantiated classes.
- Slight reformatting of auto-generated messages (better getting of class name, no
__main__
)
-
Removed
- Loggo.everything (the class decorator), now simply use Loggo
-
Changed
- Major refactor, affecting numerous call signatures
-
Removed
- LoggedException
- colours