Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Release 28.0.0-rc5. #116

Merged
merged 1 commit into from
Dec 11, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 5 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,10 @@
# Ramses Changelog

28.0.0-rc5
-------------------
### Fixed <a name=28.0.0-rc5.Fixed></a>
- Fixed renderer logging configuration caused by 2 logger instances

28.0.0-rc4
-------------------
### Changed <a name=28.0.0-rc4.Changed></a>
Expand Down
2 changes: 1 addition & 1 deletion CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ CMAKE_MINIMUM_REQUIRED(VERSION 3.13)
set(RAMSES_VERSION_MAJOR 28)
set(RAMSES_VERSION_MINOR 0)
set(RAMSES_VERSION_PATCH 0)
set(RAMSES_VERSION_POSTFIX "-rc4")
set(RAMSES_VERSION_POSTFIX "-rc5")
set(RAMSES_VERSION "${RAMSES_VERSION_MAJOR}.${RAMSES_VERSION_MINOR}.${RAMSES_VERSION_PATCH}${RAMSES_VERSION_POSTFIX}")

project(ramses-sdk
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@ cd test-cmake.config

SET PATH=%INSTALL_DIR%/bin;%PATH%

cmake -G%CMAKE_GENERATOR% -DCMAKE_PREFIX_PATH="%INSTALL_DIR%/lib" --build test-cmake.config %SCRIPT_DIR%/shared-lib-check/
cmake -G%CMAKE_GENERATOR% -DCMAKE_PREFIX_PATH="%INSTALL_DIR%/lib" %SCRIPT_DIR%/shared-lib-check/
cmake --build . --config %BUILD_CONFIG% --target run-all

::check for errors
Expand Down
49 changes: 36 additions & 13 deletions scripts/ci/installation-check/check-shared-lib-symbols.py
Original file line number Diff line number Diff line change
Expand Up @@ -40,8 +40,9 @@ def file_to_symbols(lib_file, is_shared_lib):
# run c++filt to demangle output from nm
cppfilt_command = ['c++filt', '-r']
cppfilt_process_result = subprocess.run(cppfilt_command, stdout=subprocess.PIPE, stderr=subprocess.STDOUT, input=nm_process_result.stdout)
cppfilt_process_output_std = cppfilt_process_result.stdout.decode('utf-8')
return cppfilt_process_result.stdout.decode('utf-8')

def find_api_symbols(symbols):
ignore_list = [
# ignore ramses internal and Impl
r'ramses::internal::',
Expand All @@ -53,22 +54,44 @@ def file_to_symbols(lib_file, is_shared_lib):
# 0000000000001d30 T ramses::Appearance::unbindInput(ramses::UniformInput const&)
symbol_regex = re.compile(rf"^([0-9A-Fa-f]+)(\s+)[TB](\s+)({ignore_regex}.*)", re.MULTILINE)

lib_symbols = [s.group(4) for s in re.finditer(symbol_regex, cppfilt_process_output_std)]
return [s.group(4) for s in re.finditer(symbol_regex, symbols)]

def check_missing_api_symbols(static_lib_symbols, shared_lib_symbols):
static_lib_symbols = find_api_symbols(static_lib_symbols)
shared_lib_symbols = find_api_symbols(shared_lib_symbols)
missing_symbols = [s for s in static_lib_symbols if s not in shared_lib_symbols]
if len(static_lib_symbols) == 0:
raise Exception("No API symbols found in static lib (internal error)")
if len(shared_lib_symbols) == 0:
raise Exception("No API symbols found in shared lib (internal error)")
if len(missing_symbols) > 0:
raise Exception(f"FOUND MISSING SYMBOLS: {missing_symbols}")

def check_unique_exports(headless, full):
# check interface between headless and full shared lib
symbols = [
'ramses::internal::ErrorReporting',
'ramses::internal::FrameworkFactoryRegistry',
'ramses::internal::RamsesFrameworkImpl',
'ramses::internal::GetRamsesLogger',
]
for s in symbols:
if s not in headless:
raise Exception(f"Symbol missing in headless-shared-lib: {s}")
if s in full:
raise Exception(f"Unexpected symbol in full-shared-lib:: {s}")

return lib_symbols
static_lib_headless_symbols = file_to_symbols(client_static_lib_dir, False)
static_lib_headless_symbols += file_to_symbols(framework_static_lib_dir, False)
shared_lib_headless_symbols = file_to_symbols(headless_shared_lib_dir, True)

static_lib_symbols = file_to_symbols(client_static_lib_dir, False)
static_lib_symbols += file_to_symbols(framework_static_lib_dir, False)
if not headless_only:
static_lib_symbols += file_to_symbols(renderer_static_lib_dir, False)
check_missing_api_symbols(static_lib_headless_symbols, shared_lib_headless_symbols)

shared_lib_symbols = file_to_symbols(headless_shared_lib_dir, True)
if not headless_only:
shared_lib_symbols += file_to_symbols(full_shared_lib_dir, True)

missing_symbols = [s for s in static_lib_symbols if s not in shared_lib_symbols]
if len(missing_symbols) > 0:
raise Exception(f"FOUND MISSING SYMBOLS: {missing_symbols}")
static_lib_symbols = file_to_symbols(renderer_static_lib_dir, False)
shared_lib_symbols = file_to_symbols(full_shared_lib_dir, True)
check_missing_api_symbols(static_lib_symbols, shared_lib_symbols)
check_unique_exports(shared_lib_headless_symbols, shared_lib_symbols)


if __name__ == "__main__":
Expand Down
1 change: 0 additions & 1 deletion src/client/impl/RamsesClientImpl.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,6 @@
#include "internal/PlatformAbstraction/Collections/HashMap.h"
#include "internal/PlatformAbstraction/PlatformTime.h"
#include "internal/Core/Utils/LogMacros.h"
#include "internal/Core/Utils/RamsesLogger.h"
#include "ClientFactory.h"
#include "impl/FrameworkFactoryRegistry.h"
#include "internal/Ramsh/Ramsh.h"
Expand Down
2 changes: 1 addition & 1 deletion src/framework/impl/RamsesFrameworkConfigImpl.h
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
#pragma once

#include "TCPConfig.h"
#include "internal/Core/Utils/RamsesLogger.h"
#include "impl/RamsesLoggerImpl.h"
#include "ramses/framework/IThreadWatchdogNotification.h"
#include "ramses/framework/EFeatureLevel.h"
#include "impl/ThreadWatchdogConfig.h"
Expand Down
2 changes: 1 addition & 1 deletion src/framework/impl/RamsesFrameworkImpl.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@
#include "ramses-sdk-build-config.h"
#include "internal/Communication/TransportCommon/CommunicationSystemFactory.h"
#include "internal/Communication/TransportCommon/ICommunicationSystem.h"
#include "internal/Core/Utils/RamsesLogger.h"
#include "impl/RamsesLoggerImpl.h"
#include "impl/RamsesFrameworkConfigImpl.h"
#include "ramses/framework/RamsesFrameworkConfig.h"
#include "internal/Ramsh/RamshStandardSetup.h"
Expand Down
18 changes: 18 additions & 0 deletions src/framework/impl/RamsesLoggerImpl.cpp
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
// -------------------------------------------------------------------------
// Copyright (C) 2023 BMW AG
// -------------------------------------------------------------------------
// This Source Code Form is subject to the terms of the Mozilla Public
// License, v. 2.0. If a copy of the MPL was not distributed with this
// file, You can obtain one at https://mozilla.org/MPL/2.0/.
// -------------------------------------------------------------------------

#include "impl/RamsesLoggerImpl.h"

namespace ramses::internal
{
RamsesLogger& GetRamsesLogger()
{
static RamsesLogger logger;
return logger;
}
}
19 changes: 19 additions & 0 deletions src/framework/impl/RamsesLoggerImpl.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
// -------------------------------------------------------------------------
// Copyright (C) 2023 BMW AG
// -------------------------------------------------------------------------
// This Source Code Form is subject to the terms of the Mozilla Public
// License, v. 2.0. If a copy of the MPL was not distributed with this
// file, You can obtain one at https://mozilla.org/MPL/2.0/.
// -------------------------------------------------------------------------

#pragma once

#include "ramses/framework/APIExport.h"
#include "internal/Core/Utils/RamsesLogger.h"

namespace ramses::internal
{
class RamsesLogger;

RAMSES_IMPL_EXPORT RamsesLogger& GetRamsesLogger();
}
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
#include "internal/Core/Utils/AndroidLogger/AndroidLogAppender.h"
#include "internal/Core/Utils/LogMessage.h"
#include "internal/Core/Utils/LogContext.h"
#include "internal/Core/Utils/RamsesLogger.h"
#include "impl/RamsesLoggerImpl.h"
#include "internal/Core/Utils/InplaceStringTokenizer.h"
#include <string>

Expand Down
1 change: 0 additions & 1 deletion src/framework/internal/Core/Utils/LogMacros.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,6 @@
// -------------------------------------------------------------------------

#include "internal/Core/Utils/LogMacros.h"
#include "internal/Core/Utils/RamsesLogger.h"

namespace ramses::internal
{
Expand Down
2 changes: 1 addition & 1 deletion src/framework/internal/Core/Utils/LogMacros.h
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@

#include "internal/Core/Utils/LogMessage.h"
#include "internal/Core/Utils/LogContext.h"
#include "internal/Core/Utils/RamsesLogger.h"
#include "impl/RamsesLoggerImpl.h"
#include "internal/PlatformAbstraction/Collections/StringOutputStream.h"
#include "internal/PlatformAbstraction/FmtBase.h"

Expand Down
6 changes: 0 additions & 6 deletions src/framework/internal/Core/Utils/RamsesLogger.h
Original file line number Diff line number Diff line change
Expand Up @@ -104,10 +104,4 @@ namespace ramses::internal
std::vector<LogAppenderBase*> m_logAppenders;
LogContext& m_fileTransferContext;
};

inline RamsesLogger& GetRamsesLogger()
{
static RamsesLogger logger;
return logger;
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
#pragma once

#include "internal/PlatformAbstraction/Runnable.h"
#include "internal/Core/Utils/RamsesLogger.h"
#include "impl/RamsesLoggerImpl.h"

#include <cassert>
#include <string>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@
#include "internal/Ramsh/RamshCommandPrintLogLevels.h"
#include "internal/Ramsh/Ramsh.h"
#include "internal/Core/Utils/LogMacros.h"
#include "internal/Core/Utils/RamsesLogger.h"
#include "impl/RamsesLoggerImpl.h"

namespace ramses::internal
{
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
#include "internal/Ramsh/RamshCommandSetConsoleLogLevel.h"
#include "internal/Ramsh/Ramsh.h"
#include "internal/Core/Utils/LogMacros.h"
#include "internal/Core/Utils/RamsesLogger.h"
#include "impl/RamsesLoggerImpl.h"
#include "internal/Core/Utils/LogHelper.h"

namespace ramses::internal
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
#include "internal/Ramsh/RamshCommandSetContextLogLevel.h"
#include "internal/Ramsh/Ramsh.h"
#include "internal/Core/Utils/LogMacros.h"
#include "internal/Core/Utils/RamsesLogger.h"
#include "impl/RamsesLoggerImpl.h"
#include "internal/Core/Utils/LogHelper.h"

namespace ramses::internal
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
#include "internal/Ramsh/RamshCommandSetContextLogLevelFilter.h"
#include "internal/Ramsh/Ramsh.h"
#include "internal/Core/Utils/LogMacros.h"
#include "internal/Core/Utils/RamsesLogger.h"
#include "impl/RamsesLoggerImpl.h"

namespace ramses::internal
{
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@
#include "internal/Ramsh/RamshCommunicationChannelConsoleSignalHandler.h"
#include "internal/Ramsh/Ramsh.h"
#include "internal/Ramsh/RamshTools.h"
#include "internal/Core/Utils/RamsesLogger.h"
#include "impl/RamsesLoggerImpl.h"
#include "internal/PlatformAbstraction/PlatformEnvironmentVariables.h"
#include "internal/Core/Utils/LogMacros.h"
#include "internal/PlatformAbstraction/ConsoleInput.h"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@
#include "internal/Ramsh/Ramsh.h"
#include "internal/Ramsh/RamshTools.h"
#include "internal/Core/Utils/LogMacros.h"
#include "internal/Core/Utils/RamsesLogger.h"
#include "impl/RamsesLoggerImpl.h"

#include <string>

Expand Down
2 changes: 1 addition & 1 deletion tests/benchmarks/logic/serialization.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
#include "benchmarksetup.h"
#include "ramses/client/logic/LuaScript.h"
#include "ramses/client/logic/Property.h"
#include "internal/Core/Utils/RamsesLogger.h"
#include "impl/RamsesLoggerImpl.h"

#include "fmt/format.h"
#include <fstream>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
#include "TestForkingController.h"
#include "TestForkerApplication.h"
#include "EmbeddedCompositingTestMessages.h"
#include "internal/Core/Utils/RamsesLogger.h"
#include "impl/RamsesLoggerImpl.h"

#include <sys/wait.h>

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
#include "RendererTestUtils.h"
#include "internal/Core/Utils/StringUtils.h"
#include "EmbeddedCompositingTests.h"
#include "internal/Core/Utils/RamsesLogger.h"
#include "impl/RamsesLoggerImpl.h"
#include "EmbeddedCompositingTestFramework/TestForkingController.h"
#include "ramses/framework/RamsesFrameworkConfig.h"
#include <pwd.h>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@

#pragma once

#include "internal/Core/Utils/RamsesLogger.h"
#include "impl/RamsesLoggerImpl.h"

namespace ramses::internal
{
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
#pragma once

#include "internal/Core/Utils/LogContext.h"
#include "internal/Core/Utils/RamsesLogger.h"
#include "impl/RamsesLoggerImpl.h"

namespace ramses::internal
{
Expand Down
2 changes: 1 addition & 1 deletion tests/unittests/framework/Ramsh/RamshTest.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@
#include <gtest/gtest.h>
#include "internal/Ramsh/RamshTools.h"
#include "internal/PlatformAbstraction/PlatformThread.h"
#include "internal/Core/Utils/RamsesLogger.h"
#include "impl/RamsesLoggerImpl.h"

namespace ramses::internal
{
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@
#include "impl/ErrorReporting.h"
#include "impl/RamsesObjectImpl.h"
#include "ramses/framework/RamsesObject.h"
#include "internal/Core/Utils/RamsesLogger.h"
#include "impl/RamsesLoggerImpl.h"
#include "internal/Core/Utils/LogMacros.h"
#include "internal/Core/Utils/ThreadBarrier.h"
#include "LogTestUtils.h"
Expand Down
2 changes: 1 addition & 1 deletion tools/ramses-daemon/main.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@
#include "impl/RamsesFrameworkConfigImpl.h"
#include "internal/Ramsh/RamshStandardSetup.h"
#include "internal/Ramsh/RamshCommandExit.h"
#include "internal/Core/Utils/RamsesLogger.h"
#include "impl/RamsesLoggerImpl.h"
#include "internal/Core/Utils/StatisticCollection.h"
#include "internal/Core/Utils/LogMacros.h"
#include <memory>
Expand Down
2 changes: 1 addition & 1 deletion tools/ramses-viewer/ViewerGui.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -148,7 +148,7 @@ namespace ramses::internal
{
ImGui::MenuItem("Show Scene Window", "F11", &m_settings.showWindow);
if (m_app.getLogicViewer())
ImGui::MenuItem("Show Logic Window", "F10", &m_settings.showLogicWindow);
ImGui::MenuItem(m_settings.showWindow ? "Undock Logic Window" : "Show Logic Window", "F10", &m_settings.showLogicWindow);
if (m_app.getGuiMode() == ViewerGuiApp::GuiMode::On)
{
ImGui::MenuItem("Show Scene in Window", nullptr, &m_settings.showSceneInWindow);
Expand Down