mirror of
https://github.com/enso-org/enso.git
synced 2024-11-26 08:52:58 +03:00
2f2eeafceb
* Fix Logger's name in stdlib Somehow SLF4J is able to recognize correctly the provided Logger's name and print it to the user. Java's Logger is not. In addition, we setup SLF4J's configuration, meaning that log-levels are correctly respected. For a simple project: ``` from Standard.Base import all from Standard.Base.Logging import all type Foo main = IO.println "Hello World!" Foo.log_message level=..Warning "I should warn you about something..." Foo.log_message level=..Info "Should be seen? By default we only show up-to warnings level" Foo.log_message level=..Severe "Something went really bad!" ``` This change demonstrates the fix. Before: ``` > enso --run simple-logging.enso Hello World! Nov 08, 2024 6:08:07 PM com.oracle.truffle.host.HostMethodDesc$SingleMethod$MHBase invokeHandle WARNING: I should warn you about something... Nov 08, 2024 6:08:07 PM com.oracle.truffle.host.HostMethodDesc$SingleMethod$MHBase invokeHandle INFO: Should be seen? By default we only show up-to warnings level Nov 08, 2024 6:08:07 PM com.oracle.truffle.host.HostMethodDesc$SingleMethod$MHBase invokeHandle SEVERE: Something went really bad! Foo ``` After: ``` > enso --run simple-logging.enso Hello World! [WARN] [2024-11-08T18:03:37+01:00] [simple-logging.Foo] I should warn you about something... [ERROR] [2024-11-08T18:03:37+01:00] [simple-logging.Foo] Something went really bad! Foo ``` * Update distribution/lib/Standard/Base/0.0.0-dev/src/Logging.enso Co-authored-by: Radosław Waśko <radoslaw.wasko@enso.org> * Test stdlib logs by using MemoryAppender Added `getEvents` member to `MemoryAppender` so that it is possible to retrieve individual log messages from tests and test their presence. Required opening up to some modules to retrieve internals of loggers. * nit * small tweaks to eliminate module warnings --------- Co-authored-by: Radosław Waśko <radoslaw.wasko@enso.org> |
||
---|---|---|
.. | ||
java | ||
js/runner | ||
rust | ||
scala | ||
README.md |
Libraries
This directory contains the libraries that should remain in this project, but that are not technically part of the main language implementation itself.