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

V5.4.0-rc1 to master #5272

Open
wants to merge 114 commits into
base: master
Choose a base branch
from
Open

V5.4.0-rc1 to master #5272

wants to merge 114 commits into from

Conversation

soloturn
Copy link
Contributor

@soloturn soloturn commented Aug 3, 2024

as we have a release v5.4.0-rc1 this should be on master. this has the advantage that master builds again.

keturn and others added 30 commits June 12, 2022 16:50
A new GitHub workflow based on https://github.com/marketplace/actions/assign-to-one-project that adds issues and PRs to project boards:
- new issues and PRs to "New (Inbox)" column of https://github.com/orgs/MovingBlocks/projects/26/views/1
- issues and PRs newly labeled with `Type: Bug` to "Backlog" column of https://github.com/orgs/MovingBlocks/projects/26/views/1
- issues and PRs newly labeled with `Type: Refactoring` / `Type: Chore` / `Topic: Stabilization` and not `Type: Bug` to "Backlog" column of https://github.com/orgs/MovingBlocks/projects/25/views/1
- issues and PRs newly labeled with `Type: Improvement` and not `Topic: Stabilization` to "Backlog" column of https://github.com/orgs/MovingBlocks/projects/27/views/1
A new GitHub workflow based on https://github.com/marketplace/actions/close-stale-issues that marks issues stale and eventually closes them if they need author input but their author doesn't respond.

- only issues with label `Status: Needs Author Input` are affected
- issues will be marked stale via the `Status: Stale` label and a comment if there is no activity for 30 days
- issues will be closed as `not_planned` with a comment if there is no activity for 90 days after the issue was marked stale
- PRs are not affected by this workflow
A fix for the [`project-autoadd` github action](https://github.com/MovingBlocks/Terasology/blob/develop/.github/workflows/project-autoadd.yml) which failed because the utilized underlying action only supports classic projects but we're using v2 (beta) projects. The replacement action not only works but is a base action provided by GitHub which hopefully means better maintenance and higher security awareness.

The action requires a token with control privileges for projects. I added such a token to the organization secrets and wrote a [maintainer guide](https://github.com/MovingBlocks/Terasology/wiki/Maintenance#how-to-fix-an-expired-github-action-token) on what to do in case the action starts failing because this token expired.
While working on Terasology/FlexiblePathfinding#8 we noticed that there seem to be issues with sending events extending from BindButtonEvent programmatically (without the physical button press).

To avoid any future confusion (or at least find the issue sooner) I'm adding a brief docstring to the class stating it's intended use and that one should NOT use it directly.
We currently don't have a model that allows us to easily load (parts) of modules to make them more configurable in the game setup screens.

In particular, the `RenderingModuleRegistry` is not yet initialized, and thus the whole purpose of the rendering module configuration is defied.

Therefore, we remove the screen from the menu and also remove the (now dead) code from the repo.

Resolves to #5075 
Related to #5076
* add check for required facets in WorldBuilder
* throw IllegalStateException on missing provider for required facet
* adjust test cases for facet provider order
* add test case for incorrect order throwing
* remove .idea/kotlinc.xml

Fixes #4924

Co-authored-by: jdrueckert <jd.rueckert@googlemail.com>
…TE tests (#5046)

* make `@IntegrationEnvironment` automatically apply MTEExtension and tag "MteTest"
* replace `@UseWorldGenerator` with IntegrationEnvironment(worldGenerator)
* replace `@Dependencies` with IntegrationEnvironment(dependencies)
* if no dependencies are given, default to the module defined in the current directory
* deprecate `@UseWorldGenerator` annotation
* deprecate `@Dependencies` annotation

Fixes Terasology/ModuleTestingEnvironment#76
Change "Bobbing" to "Head Bobbing" for more clarity.
* rephrase stale and close message to be more friendly
* provide whitespace between the asperand symbol and github username
…ns running under Java 18 and above"

This reverts commit ca91326.
* remove OpenVRInput and usages
* remove OpenVRControllers
* remove OpenVRStereoCamera and usages
* remove vr support from rendering config and usages
* remove OpenVRProvider and usages
* remove OpenVRState
* remove OpenVRUtils and usages
* remove ControllerListener and openvrprovider rendering package
* git rm -r facades/TeraEd
* remove remaining references to TeraEd

TeraEd is a facade wrapping the game itself into a desktop application to provide additional tools "around" it.
For instance, it was used to tweak shader parameters while the game was running.
Ideas for extension of this facade included monitoring capabilities, for instance, inspecting the state of the ECS, but were never implemented.

The benefit of having this outer layer is that we could augment the game itself with additional developer information without baking those into the game itself.

TeraEd used Swing and AWT for its UI.

The TeraEd facade was unused for a long time and has fallen victim to bit rot.
The logic handling state changes to shader parameters was commented out 6 years ago in b10b0f6.
* refactor(network): use Map in PingStockComponent

We have introduced type handlers for generic maps some time ago, and there is no need anymore to keep the ping information as separate lists.

Therefore, refactor the internal storage of ping data to use a `Map<EntityRef, Long>`.

* refactor(network):  restructure and document ServerPingSystem

* fix: more resilience on empty maps

* refactor(network)!: merge PingSubscriberComponent and PingStockComponent into PingComponent

* feat(nui): improve online players visuals

* doc(nui): docs for OnlinePlayersOverlay
Our type handlers should be able to deserialize the empty array `[ ]`
correctly into different collection formats, for instance, basic
`Array`s, collections like `List<T>`, or `Map<K, V>`.

This PR adds more tests to ensure that this is indeed the case.

Closes #2343.
Remove code and abstractions related to mutli-word support during the "Advanced" game creation flow.

Co-authored-by: Josephine Rueckert <jd.rueckert@googlemail.com>
jdrueckert and others added 26 commits February 4, 2024 20:56
Co-authored-by: priya4991 <pdutta04@gmail.com>
* feat: prevent serialisation of private component fields

* log line shorter for ComponentTypeHandlerFactory

* feat(TypeHandlerLibrary): do not serialise private fields in ObjectFieldMapTypeHandler by default

* fix: fix ObjectFieldMapTypeHandlerFactoryTest tests

* fix: fix TypeSerializerTest tests

* fix: fix VectorTypeSerializerTest tests

* fix: fix BlockAreaTypeHandlerTest tests

* style: fix checkstyle issues in TypeSerializerTest.java

* fix: catch setter errors explicitly in ObjectFieldTypeMapHandler

---------

Co-authored-by: soloturn <soloturn@gmail.com>
Co-authored-by: jdrueckert <jd.rueckert@googlemail.com>
Gooey Tour (also known as Adventure Site) broke a while ago, is not accessible anymore since then and was not deemed revival-worthy in its current form.
Removing the broken/dead link
* doc: guidance on PMD guard log statement warning

* chore: address review comments

* chore: more detailed note on verbose fluent logging API variant

* chore: apply review suggestions
introduce JUnit tag "flaky", to exclude tests from running.

ExampleTest.testClientCreation fails without real reason, mark it flaky
at the moment. permit this tag in engine-tests/build.gadle.kts to
separate test runs for normal integration tests, and ones which are
not stable on github, for currently unknown reasons. normally of course
it would be better to fix these tests - but accepting pull requests
is coupled on tests running through. now two commands instead of one
run all integration tests:

    gradle integrationTest
    gradle integrationTestFlaky

please do not lightheartedly mark tests as flaky.

ci: split integration test stage into non-flaky and flaky, flaky integration
test stage is non-blocking.  the result of flaky test will be displayed 
also github, result of failing normal test is viewed in jenkins.

---------

Co-authored-by: Josephine Rueckert <jd.rueckert@googlemail.com>
Co-authored-by: BenjaminAmos <24301287+BenjaminAmos@users.noreply.github.com>
* interested parties can subscribe to receive change notifications for all or specific properties available
* change notifications include information about the changed property as well as the old and new values
* no longer interested parties can subscribe from all or specific properties
* subscriptions to all properties will remain intact in case a no longer interested party cancels their subscription for specific properties
* chore: update JNBullet to 1.0.4
---------

Co-authored-by: Josephine Rueckert <jd.rueckert@googlemail.com>
* remove unused time slider and label
* reorder UniverseSetupScreen UI elements
* merge WorldSetupScreen into UniverseSetupScreen
* observe WorldConfigurator property changes to request preview updates
* feat: make number of chunk processing threads configurable
fix(facades): fix command line args not working
* rename to build.gradle.kts

* timestamp cannot be ignored easily with ignoreproperties, so leave
it as is, and remove the todo.

* move down writing the jar file, to assure version is specified in
 typehandlerlibrary e.g. which has it like project(:engine).version

* add jmh gradle plugin

* intermediate jmh

* jmh now compiles again
* fix: screen name after merge

* chore: remove no longer used translation tags

* feat: return user to previous screen if no module with world generator in use

* feat: differentiate world generator creation errors

- add popup for user in case selected world generator cannot be resolved

* UnresolvedDependencyException is in package excpeptions.

---------

Co-authored-by: soloturn <soloturn@gmail.com>
address PMD GuardLogStatement warnings
---------

Co-authored-by: jdrueckert <jd.rueckert@googlemail.com>
Changed KinematicCharacterMover so that water super jump bug is stopped.
Closes #5198
@soloturn
Copy link
Contributor Author

soloturn commented Oct 4, 2024

@jdrueckert mind merging this?

@jdrueckert
Copy link
Member

We usually don't merge release candidates to master, only the final releases.
As you noticed yourself with the omega build, something is not right yet, so I'm hesitant to merge this until we fix that.
Also it's not like master builds are broken, there just hasn't been one since the new jenkins was freshly set up and I don't see a problem in that.

@soloturn
Copy link
Contributor Author

soloturn commented Oct 6, 2024

it is a good candidate, are you aware of any complaints? omega of 1.5.4-alpha24 work, not?

unrelated, current omega built from develop branch is not working, but rebuilding the modules should fix it. i rebuilt the 5 or so modules in iota which fixed them. omega contains 150 modules, i guess we need a better rebuilt logic than one clicking all of them :)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Status: No status
Development

Successfully merging this pull request may close these issues.