summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2023-11-02DRTVWR-589: StringVec's operator<<() overload must precede lltut.h.Nat Goodspeed
If not, the resulting error message is so mysterious that it's worth adding an error check to explain how to avoid it.
2023-11-02DRTVWR-589: Merge branch 'public/main' into DRTVWR-589Nat Goodspeed
to pick up tip commit that builds all branches.
2023-10-29DRTVWR-589: Unify hexdump.h headers from different branches.Nat Goodspeed
2023-10-29DRTVWR-589: Merge wonkiness: restore lualibs per previous D589Nat Goodspeed
2023-10-29DRTVWR-589: Merge branch 'main' of viewer-private into DRTVWR-589Nat Goodspeed
2023-10-25SL-18837: Build all branches on GitHub now.Nat Goodspeed
2023-10-25Increment viewer version to 6.6.17Nat Goodspeed
following promotion of DRTVWR-578
2023-10-19DRTVWR-589: Fix unreferenced LuaListener::mState member.Nat Goodspeed
2023-10-19DRTVWR-589: Merge 'DRTVWR-589' of viewer-private into DRTVWR-589Nat Goodspeed
2023-10-18PIE-1057: viewer-build-util's azure branch has been merged to main.Nat Goodspeed
2023-10-18PIE-1057: Merge branch 'actions-azure' into actionsNat Goodspeed
for new Windows code signing mechanism.
2023-10-18DRTVWR-589: Update with 3p-lua package build.Nat Goodspeed
2023-10-17DRTVWR-589: Add lua package built by new 3p-lua repo.Nat Goodspeed
2023-10-17SL-20476: Don't let the compiler know we intend to crash.Nat Goodspeed
clang has gotten smart enough to recognize an inline attempt to store to address zero. Fool it by storing to an address passed as a parameter, and pass nullptr from a different source file.
2023-10-17SL-18837: Avoid stuffing build number into 32-bit int.Nat Goodspeed
Even though LLVersionInfo::getBuild() already returns a 64-bit int, various consumers assumed it could fit into 32 bits. It was especially bad to pass it to a classic C style varargs function. Only on a little-endian CPU, and only because it was the last argument, the damage was limited to truncation -- instead of arbitrary undefined behavior. Where the consumer doesn't support 64-bit ints, pass as string instead.
2023-10-16SL-18837: Second Life Release.app=>Second Life Viewer.app in tarballNat Goodspeed
2023-10-16SL-18837: Create Second Life Viewer.app, not Second Life Release.appNat Goodspeed
2023-10-13PIE-1057: Pass sign-pkg-windows@azure the Azure-related secrets.Nat Goodspeed
2023-10-13SL-18837: Update dullahan to v118.0.5993.54Nat Goodspeed
This includes this week's CEF 118.
2023-10-12PIE-1057: Engage viewer-build-util azure branch.Nat Goodspeed
2023-10-12SL-18837: Unify all llrand_test.cpp in-range tests.Nat Goodspeed
The header file documents that no llrand function should ever return a value equal to the passed extent, so the one test in llrand_test.cpp that checked less than or equal to the high end of the range was anomalous. But changing that to an exclusive range means that we no longer need separate exclusive range and inclusive range functions. Replace ensure_in_range_using(), ensure_in_exc_range() and ensure_in_inc_range() with a grand unified (simplified) ensure_in_range() function.
2023-10-12SL-18837: Update openal to v1.23.1-18e315cNat Goodspeed
2023-10-12SL-18837: Update llca to v202310121525.0-d22bd98Nat Goodspeed
2023-10-07Merge branch 'DRTVWR-589-nested-table-bug' into DRTVWR-589Nat Goodspeed
2023-10-07DRTVWR-589: Solved the bug in traversing nested Lua tables.Nat Goodspeed
When lua_tollsd() makes a recursive call, it passes -1 as the index of the newly-encountered nested table. To traverse the nested table, lua_tollsd() starts by pushing nil as the initial key. But then calling lua_next(-1) finds nil -- NOT the nested table! Converting the index parameter to absolute before pushing nil solves.
2023-10-06SL-19826 Fix mac build issue (unused variable)Andrey Lihatskiy
(cherry picked from commit 08a3b56669880101aa705c98e60b76e92d26c93b)
2023-10-06SL-18837: Update Tracy to 0.8.1-235e98fNat Goodspeed
2023-10-06SL-18837: Remove 32-bit Windows package entries.Nat Goodspeed
glext, which contains only header files, now builds only a single common package instead of platform-specific ones. But as long as we retain the platform-specific URLs, autobuild will continue to prefer those over the common platform. Remove all platform-specific glext package entries.
2023-10-06SL-18837: Update to Dullahan 1.14.0 with CEF 117Nat Goodspeed
2023-10-05SL-18837: Name the release for the build number to readily find it.Nat Goodspeed
2023-10-05SL-18837: When llrand_test.cpp fails, display the failing value.Nat Goodspeed
It's frustrating and unactionable to have a failing test report merely that the random value was greater than the specified high end. Okay, so what was the value? If it's supposed to be less than the high end, did it happen to be equal? Or was it garbage? We can't reproduce the failure by rerunning! The new ensure_in_exc_range(), ensure_in_inc_range() mechanism is somewhat complex because exactly one test allows equality with the high end of the expected range, where the rest mandate that the function return less than the high end. If that's a bug in the test -- if every llrand function is supposed to return less than the high end -- then we could simplify the test logic.
2023-10-04DRTVWR-589: Add tests for LLSD-to-Lua round-trip conversions.Nat Goodspeed
Add from_lua() function to run a small Lua script that constructs a specified Lua object and posts it back to the test program via a temporary LLEventPump. Call this with a variety of Lua objects, comparing to the expected LLSD. Add round_trip() function to run another small Lua script that listens for incoming LLEventPump events and, for each, posts the received Lua data back to the test program as LLSD. Call this with a variety of LLSD objects, comparing to the expected LLSD. Also collect these objects into an LLSD array and send that for a round trip; also collect into an LLSD map and send that. Sadly, tests currently drive an access violation when trying to convert a nested Lua table to LLSD. Add verbose debug logging to lua_tollsd() to identify the context at which we hit the access violation. Add comments describing further exceptions to LLSD-to-Lua round trip identity. Add lua_what() iostream manipulator to stream whatever we can readily discover about a value at a specified Lua stack index. Add lua_stack() to report the contents of the Lua stack. Since the stack is created anew for every call to a C function, this shouldn't usually be enormous. Add hexdump.h with iostream manipulators to dump a byte range as hex digits, or to produce readable text from a mix of printing and nonprinting ASCII characters.
2023-10-04SL-18837: Merge branch 'actions-clean-manifest' into actions.Nat Goodspeed
This branch cleans up crufty code in build.yaml, build.sh and viewer_manifest.py that was packaging, signing and uploading installers before the SL-19242 work.
2023-10-04SL-18837: build.sh shouldn't even check for an installer.Nat Goodspeed
We no longer package the installer before this point, and we want to upload symbol files even so.
2023-10-04SL-18837: Upload symbol file and physics pkg without installer.Nat Goodspeed
build.sh logic used to test whether the installer existed and skip the symbol-file and llphysicsextensions uploads if not. Since we now sign and package the built viewer in a later build job, it's no longer appropriate to gate these uploads on existence of the installer.
2023-10-04SL-18837: Fix set-but-unreferenced in LLInventoryGallery::startDrag()Nat Goodspeed
2023-10-04Merge branch 'DRTVWR-589' of github.com:/secondlife/viewer-private into ↵Brad Payne (Vir Linden)
DRTVWR-589
2023-10-04SL-18837: Restore setting ViewerManifest.package_file.Nat Goodspeed
This is referenced after running the packaging.
2023-10-04SL-18837: Merge branch 'main' of secondlife/viewer into actionsNat Goodspeed
2023-10-04DRTVWR-589 - restore close_all_swindows()Mnikolenko Productengine
2023-10-03SL-19242: Remove signing and packaging from viewer_manifest.pyNat Goodspeed
for Mac and Windows. That's now done by subsequent jobs in the GitHub build. Remove workflow step to upload installers before signing and packaging jobs. Remove from viewer_manifest.py conditionals for 32-bit Windows or Mac. Also bump to actions/checkout@v4, per dependabot.
2023-10-03Merge branch 'DRTVWR-589' of github.com:/secondlife/viewer-private into ↵Brad Payne (Vir Linden)
DRTVWR-589
2023-10-03DRTVWR-589 - more demo workBrad Payne (Vir Linden)
2023-10-03DRTVWR-589: Clean up from merge from updated main.Nat Goodspeed
2023-10-03DRTVWR-589: Merge branch 'main' of viewer-private into DRTVWR-589Nat Goodspeed
2023-10-03Increment viewer version to 6.6.16Nat Goodspeed
following promotion of DRTVWR-567
2023-10-02SL-19242: Expect and pass Apple "Team ID" rather than "ASC Provider".Nat Goodspeed
"ASC Provider" was a credential accepted by altool, but switching from altool to notarytool requires a Team ID instead. Expect to find TEAM_ID in our repository secret NOTARIZE_CREDS_MACOS. Extract it and pass it to sign-pkg-mac.
2023-10-02DRTVWR-589: Give up on strongly timing-dependent LLIOPipe test.Nat Goodspeed
2023-10-02DRTVWR-589: Add initial integration test for LLLUAmanager.Nat Goodspeed
The first test runs a Lua script that calls post_on(), listen_events() and await_event() to engage in LLEventPump handshakes with the test program. Make llluamanager.cpp testable by putting LL_TEST conditionals around lots of viewer-internals headers and the lua_function definitions that engage them. Since LuaListener::connect() is called by its constructor, make it a static method that explicitly accepts the lua_State* (instead of finding it as mState). Add that parameter to its two existing calls. Add a debug log message when LuaListener is destroyed. This surfaced the need to pass a no-op deleter when listen_events() constructs a LuaListener::ptr_t. When compiled for LL_TEST, make LuaListener::mReplyPump an LLEventLogProxyFor<LLEventStream> instead of a plain LLEventStream. For debugging purposes, add a type string "LLEventLogProxy" for LLEventPumps::make(). A make() call with this type will return an LLEventLogProxyFor<LLEventStream>.
2023-09-30DRTVWR-589: Emulate print() better, show output on Lua floater.Nat Goodspeed
Break out a lua_print_msg() function common to print_debug(), print_info() and print_warning(). Instead of accepting a single argument, lua_print_msg() accepts arbitrary arguments, passing each to the Lua tostring() function and concatenating the results. In addition to returning the combined string to its caller for level-appropriate logging, it also posts the message to a "lua output" LLEventPump for any interested party. Make LLFloaterLUADebug listen on "lua output" when the floater is constructed, storing the connection in an LLTempBoundListener to stop listening when the floater is destroyed. Append each message to the floater's output panel with a line break. Make LLTextEditor::addLineBreakChar() public. insertText("\n") only appends a little rectangle glyph. Enlarge the text capacity of the floater's output panel to be able to report whatever messages a Lua script wants to print. Add diagnostic logging for posting events from Lua, and receiving events to forward to Lua. Since lua_pop() is a macro implemented on lua_settop(), replace the awkward construct lua_pop(L, lua_gettop(L)) with lua_settop(L, 0). Use lambdas instead of std::bind() to connect LuaListener and LLLeapListener.