Jozef Behran [Thu, 7 Mar 2019 07:20:33 +0000 (02:20 -0500)]
Optimize string handling in path search (#8098)
Use "append" method to construct the various game paths
instead of wasteful string concatenation. Additionally, use a
temporary to extract and reuse a result of a few common
subexpressions to further reduce the overhead.
Jozef Behran [Thu, 7 Mar 2019 07:19:13 +0000 (02:19 -0500)]
Optimize interaction distance checker (#8193)
The "what" parameter is being passed by value, most likely by
accident as the type is "const std::string". Convert it to a
reference by adding the missing "&".
sfan5 [Thu, 7 Mar 2019 07:17:01 +0000 (08:17 +0100)]
Update a few dependency versions for buildbot (#8319)
rubenwardy [Thu, 7 Mar 2019 06:41:21 +0000 (06:41 +0000)]
Fix detach inventory serialisation (#8331)
rubenwardy [Wed, 6 Mar 2019 22:24:39 +0000 (22:24 +0000)]
Fix incorrect string length check after cast
rubenwardy [Wed, 6 Mar 2019 14:41:37 +0000 (14:41 +0000)]
Fix clang tidy error due to incorrect use of quotes for character
Paramat [Tue, 5 Mar 2019 22:58:38 +0000 (22:58 +0000)]
Change 'num_emerge_threads' default to 1 (#8303)
HybridDog [Tue, 5 Mar 2019 09:11:21 +0000 (10:11 +0100)]
Add math.factorial (#8298)
Loic Blot [Tue, 5 Mar 2019 07:34:54 +0000 (08:34 +0100)]
Add Android keystore to the repository
Password is not included :)
DS [Tue, 5 Mar 2019 07:17:48 +0000 (08:17 +0100)]
Add sounds for falling and attached nodes (#7719)
* Add sounds for falling and attached nodes
The sound specified in `node_definition.sounds.fall` is used.
When a falling node is spawned at a position or an attached node drops, the sound is played at this position.
* allow all sorts of soundspecs
HybridDog [Tue, 5 Mar 2019 07:14:33 +0000 (08:14 +0100)]
Fix --color command line parameter ignorance (#7173)
* Fix color command line parameter ignorance
* coloured log: Support detecting the tty on windows
* Print an error message when setting something invalid as color mode instead of silently using mode never
* Revert "coloured log: Support detecting the tty on windows"
This reverts commit
4c9fc6366487ac0e6799e181796ca594797bb6f8.
It didn't work for travis and belongs to a separate PR
* Allow adjusting the log color with an environment variable
If --color is not passed to minetest, is used to decide on the log colorization.
Minetest settings can not be used instead of an environment variable because logs may appear before loading them.
* fix empty if body
Benjamin Lindley [Tue, 5 Mar 2019 07:13:15 +0000 (01:13 -0600)]
Replace for loop with call to standard library function (#8194)
This loop makes multiple passes over m_stack (type std::list) in order to remove all elements with a specified value. Replacing the loop with a call to std::list::remove does the same job, but in only one pass.
rubenwardy [Tue, 5 Mar 2019 07:12:58 +0000 (07:12 +0000)]
Hide uninstall package button on unmodifiable paths (#8255)
sofar [Tue, 5 Mar 2019 07:12:02 +0000 (23:12 -0800)]
Add referer to remote media requests. (#8135)
This sends the following header to a remote media server:
Referer: minetest://<server_name>:port
This was verified with CTF and the Minetest Public Remove Media
server. If the servername was a plain IPv6 address it will
contain `:` characters and will be encapsulated in `[]` to
be a valid URI.
sofar [Tue, 5 Mar 2019 07:11:13 +0000 (23:11 -0800)]
getS16NoEx() returns true unless syntactical error in conf. (#8304)
The getS16NoEx() handler will return true unless there is a
`[num_emerge_threads]` line in the `minetest.conf` at which
point the excption handler part is reached. Due to the fact that
`defaultsettings.cpp` has a default value set for this setting,
that never will happen.
Because of this, the code will never check the number of threads on
the system, and keep `nthreads = 0`. If that happens, the value is
changed to `1` and only 1 emerge thread will be used.
The default should be set to `1` instead, due to the potential unsafe
consequences for the standard sqlite map files, but that should be a
separate commit that also adds documentation for that setting. This
commit focuses on removing this `hiding` bug instead.
sfan5 [Mon, 4 Mar 2019 22:43:18 +0000 (23:43 +0100)]
Continue with 5.1.0-dev
sfan5 [Mon, 4 Mar 2019 22:43:14 +0000 (23:43 +0100)]
Bump version to 5.0.0
Loïc Blot [Sun, 3 Mar 2019 22:59:24 +0000 (23:59 +0100)]
Bump android version code
adrido [Sat, 2 Mar 2019 09:56:01 +0000 (10:56 +0100)]
Don't include and link to gettext if gettext is not found (#8305)
ANAND [Sat, 2 Mar 2019 03:44:35 +0000 (09:14 +0530)]
README: Remove references to Minecraft and InfiniMiner (#8260)
Loïc Blot [Fri, 1 Mar 2019 19:16:11 +0000 (20:16 +0100)]
Fix particle spawners not visible since CSM spawner implementation (#8289)
* Drop the ID mapper, use a big u64 instead. This will permit to resync server ids properly with the manager code
* Modernize some code parts (std::unordered_map, auto)
* generate id on client part on U32_MAX + 1 ids, lower are for server ids
Loïc Blot [Tue, 26 Feb 2019 07:53:53 +0000 (08:53 +0100)]
Revert "Revert CSM particles commit to fix particle spawner bug for 5.0.0 (#8288)"
This reverts commit
01cd63bd3bca0192dab2834faf414b022706a77e.
Loïc Blot [Tue, 26 Feb 2019 07:52:10 +0000 (08:52 +0100)]
Fix build since translation updates
Paramat [Tue, 26 Feb 2019 04:26:25 +0000 (04:26 +0000)]
Revert CSM particles commit to fix particle spawner bug for 5.0.0 (#8288)
Reverts
5dab7426451842793b183fbd961ad2ae83c8acbd
"[CSM] Add functions to create particles and particlespawners."
Translations [Sun, 24 Feb 2019 17:43:32 +0000 (18:43 +0100)]
Run updatepo.sh
Translations [Thu, 14 Feb 2019 07:31:44 +0000 (07:31 +0000)]
Update translations
Paramat [Sat, 23 Feb 2019 20:24:59 +0000 (20:24 +0000)]
Update minetest.conf.example and settings_translation_file.cpp (#8278)
Nathanaël Courant [Sat, 23 Feb 2019 19:55:54 +0000 (20:55 +0100)]
Fix files with CRLF line endings in translations (#8280)
SmallJoker [Sat, 23 Feb 2019 14:54:49 +0000 (15:54 +0100)]
Minimap: Fix radar restriction broken by
9649e47
Server-side radar restriction is now possible again
Thanks to @pgimeno for this nice catch.
Paramat [Sat, 23 Feb 2019 03:15:56 +0000 (03:15 +0000)]
Settingtypes.txt: Remove 2 lines missed in a recent commit (#8277)
Paramat [Sat, 23 Feb 2019 02:41:36 +0000 (02:41 +0000)]
Attend to LINT sillyness (#8276)
ANAND [Sat, 23 Feb 2019 01:12:33 +0000 (06:42 +0530)]
Remove 's' from 'automatic forwards' (#8272)
rubenwardy [Fri, 22 Feb 2019 03:19:52 +0000 (03:19 +0000)]
Content store: Ignore '_game' in game names in ID generation (#8270)
Fixes 'install' button continuing to be displayed after installing a game whose
name ends with '_game'.
Paul Ouellette [Mon, 18 Feb 2019 21:04:43 +0000 (16:04 -0500)]
Update gamebar on tab enter (#8192)
rubenwardy [Mon, 18 Feb 2019 16:36:13 +0000 (16:36 +0000)]
Fix games not updating on deletion
As reported by @random-geek
Paul Ouellette [Mon, 18 Feb 2019 11:46:55 +0000 (06:46 -0500)]
Fix content store crash (#8244)
Paramat [Mon, 18 Feb 2019 02:53:33 +0000 (02:53 +0000)]
lua_api.txt, settingtypes.txt: Various improvements (#8252)
Wuzzy [Sun, 17 Feb 2019 20:49:51 +0000 (21:49 +0100)]
Update many things in Lua API docs (#8236)
- minetest.get_hit_params
- minetest.get_dig_params
- table.indexof
- Scope of minetest.register_alias
- Vector function parameters
- More explanation of when `minetest.on_player_receive_fields` is called
- Syntax/semantics of the fields in `minetest.on_player_receive_fields`
Paramat [Sun, 17 Feb 2019 02:52:53 +0000 (02:52 +0000)]
lua_api.txt: Various additions and improvements (#8245)
Paul Ouellette [Sat, 16 Feb 2019 20:06:04 +0000 (15:06 -0500)]
Fix profiler crash by builtin since
eea1fda (#8239)
Default to '??' (common Minetest notation) for unknown mods.
rubenwardy [Sat, 16 Feb 2019 00:41:30 +0000 (00:41 +0000)]
Update credits (#8162)
ANAND [Fri, 15 Feb 2019 23:39:22 +0000 (05:09 +0530)]
Revert RTT fixes (#8187)
The reverted commit
968ce9af598024ec71e9ffb2d15c3997a13ad754
is suspected (through the use of bisection) of causing network slowdowns.
Revert for now as we are close to release.
random-geek [Fri, 15 Feb 2019 19:44:21 +0000 (11:44 -0800)]
Fix coloured fog in main menu (#8181)
Fixes #4727. The issue was due to the video driver fog colour never getting reset after closing the game.
Loïc Blot [Fri, 15 Feb 2019 11:27:29 +0000 (12:27 +0100)]
LINT fix
Wuzzy [Fri, 15 Feb 2019 11:22:30 +0000 (12:22 +0100)]
Don't regain breath while in ignore node (#8218)
* Don't regain breath while in ignore node
Fixes #8217
Wuzzy [Thu, 14 Feb 2019 22:38:24 +0000 (23:38 +0100)]
Update minetest.conf.example, settings strings and locale files (#8230)
rubenwardy [Thu, 14 Feb 2019 20:03:45 +0000 (20:03 +0000)]
Fix extract zip writing lowercase files (#8221)
Translation [Thu, 14 Feb 2019 06:47:08 +0000 (07:47 +0100)]
Run updatepo.sh
Translations [Fri, 1 Feb 2019 21:07:33 +0000 (21:07 +0000)]
Update translations
SmallJoker [Sun, 20 May 2018 15:58:41 +0000 (17:58 +0200)]
Statbars: Reduce initial update interval
Centralize HUD updating in update_builtin_statbars.
Fixes race condition in 'on joinplayer' that causes stat bar bugs.
Correctly scales stat bars to custom max values set by mods.
SmallJoker [Sun, 10 Feb 2019 23:03:26 +0000 (00:03 +0100)]
Consistent HP and damage types (#8167)
Remove deprecated HUDs and chat message handling.
Remove unused m_damage variable (compat break).
HP: s32 for setter/calculations, u16 for getter.
SmallJoker [Sun, 10 Feb 2019 16:04:04 +0000 (17:04 +0100)]
Slippery: Do not apply when swimming (#8198)
SmallJoker [Sat, 9 Feb 2019 20:32:39 +0000 (21:32 +0100)]
Builtin: Fix grayed-out but enabled modpacks
SmallJoker [Sat, 9 Feb 2019 20:44:04 +0000 (21:44 +0100)]
Autojump: Disable in fly mode, support continuous forward (#8200)
Correctly disable in fly mode (issue #8199)
Also autojump in continuous forward mode (issue #8201)
Wuzzy [Sat, 9 Feb 2019 18:35:13 +0000 (19:35 +0100)]
Remove fgettext("") in builtin
This call is useless and wrong, the empty string has a special meaning in Gettext.
Loic Blot [Sat, 9 Feb 2019 18:52:38 +0000 (19:52 +0100)]
Fix Address::isLocalhost algorithm
rubenwardy [Sun, 3 Feb 2019 12:31:55 +0000 (12:31 +0000)]
Disable confirmation dialog on localhost
SmallJoker [Sat, 9 Feb 2019 17:33:31 +0000 (18:33 +0100)]
numeric: Fix clang, broken since
d5456da
Wuzzy [Sat, 9 Feb 2019 14:46:02 +0000 (15:46 +0100)]
Don't append itemname to itemname in tooltip (#8176)
Paul Ouellette [Thu, 7 Feb 2019 21:26:06 +0000 (16:26 -0500)]
Use true pitch/yaw/roll rotations without loss of precision by pgimeno (#8019)
Store the rotation in the node as a 4x4 transformation matrix internally (through IDummyTransformationSceneNode), which allows more manipulations without losing precision or having gimbal lock issues.
Network rotation is still transmitted as Eulers, though, not as matrix. But it will stay this way in 5.0.
random-geek [Mon, 4 Feb 2019 19:11:02 +0000 (11:11 -0800)]
Fix cloud color in loading screen and main menu (#8174)
random-geek [Sun, 3 Feb 2019 23:12:15 +0000 (15:12 -0800)]
Update color of main menu clouds (#8172)
Paul Ouellette [Sun, 3 Feb 2019 23:11:32 +0000 (18:11 -0500)]
Update manpage (#8169)
rubenwardy [Sun, 3 Feb 2019 19:54:43 +0000 (19:54 +0000)]
Content store: Fix assertion failed on unsuccessful package list fetch
Fixes #8168
rubenwardy [Sun, 3 Feb 2019 18:07:14 +0000 (18:07 +0000)]
Rename 'Content Store' to 'Online Content Repository' in Advanced Settings
rubenwardy [Sun, 3 Feb 2019 17:54:56 +0000 (17:54 +0000)]
Add setting to hide mature content from ContentDB
rubenwardy [Sun, 3 Feb 2019 17:30:33 +0000 (17:30 +0000)]
Fix core.download_file() creating empty files on HTTP error
rubenwardy [Sun, 3 Feb 2019 01:49:53 +0000 (01:49 +0000)]
Fix rename modpack dialog not appearing to take affect
number Zero [Sun, 10 Jun 2018 22:40:00 +0000 (01:40 +0300)]
Fix modpack rename dialog selecting the wrong mod
Leonid Bobrov [Sun, 3 Feb 2019 08:53:54 +0000 (10:53 +0200)]
DragonFly BSD is somewhat identical to FreeBSD (#8159)
Loïc Blot [Sun, 3 Feb 2019 08:11:45 +0000 (09:11 +0100)]
Force player save before kicking on player shutdown (#8157)
Julien Palard [Sun, 3 Feb 2019 01:32:37 +0000 (02:32 +0100)]
Protocol Docs: Python check bump to Python 3
rubenwardy [Sun, 3 Feb 2019 01:14:15 +0000 (01:14 +0000)]
Content store: Fix overlapping labels
Translations [Wed, 30 Jan 2019 09:22:27 +0000 (09:22 +0000)]
Update translations
Nathanaël Courant [Sat, 2 Feb 2019 11:00:06 +0000 (12:00 +0100)]
Move missing translations warnings to verbosestream (#8156)
They should not spam the console and logs.
Paramat [Thu, 31 Jan 2019 19:28:14 +0000 (19:28 +0000)]
Settings: Slightly increase block generate, block send, object send distances (#8147)
rubenwardy [Thu, 31 Jan 2019 16:35:55 +0000 (16:35 +0000)]
Content store: Fix storage leak by storing screenshots in cache (#8137)
rubenwardy [Wed, 30 Jan 2019 16:43:28 +0000 (16:43 +0000)]
Content store: Use composite key to track installations (#8054)
Fixes #7967 'Package manager doesn't track content reliably'.
Loïc Blot [Mon, 28 Jan 2019 13:35:41 +0000 (14:35 +0100)]
Cleanup translation files
These were broken on the previous commits
Loïc Blot [Mon, 28 Jan 2019 12:07:14 +0000 (13:07 +0100)]
Fix wrong it minetest.po file
Loic Blot [Sat, 26 Jan 2019 23:48:17 +0000 (00:48 +0100)]
Run updatepo.sh
Translations [Sun, 6 Jan 2019 08:41:56 +0000 (08:41 +0000)]
Update translations
Muhammad Rifqi Priyo Susanto [Sat, 26 Jan 2019 19:26:37 +0000 (02:26 +0700)]
Add setting to disable confirmation on new player registration (#8102)
Paramat [Sat, 26 Jan 2019 13:14:06 +0000 (13:14 +0000)]
Rename 'Advanced Settings' button to 'All Settings' (#8131)
Paul Ouellette [Sat, 26 Jan 2019 13:12:20 +0000 (08:12 -0500)]
Fix pkgmgr game install with RUN_IN_PLACE=0 (#8113)
Paramat [Fri, 25 Jan 2019 19:01:00 +0000 (19:01 +0000)]
blitToVManip: Check out-of-bounds using node position not index (#8127)
Previously, when using 'place on vmanip' to add a schematic to a
lua voxelmanip, if part of the schematic was outside the voxelmanip
volume, the outside part would often appear in a strange place
elsewhere inside the voxelmanip instead of being trimmed off.
This was due to the out-of-bounds check checking the index.
A position outside the voxelmanip can have an index that satisfies
'0 <= index <= voxelmanip volume', causing the node to be placed
at a strange position inside the voxelmanip.
Use 'vm->m_area.contains(pos)' instead.
Move index calculation to later in the code to optimise.
Paramat [Tue, 22 Jan 2019 21:13:06 +0000 (21:13 +0000)]
Fix warnings about dungeongen.cpp memcpy() and unused variable in MapBlock::deSerializeNetworkSpecific() (#8122)
* Fix warning about dungeongen.cpp memcpy()
* Fix unused variable in MapBlock::deSerializeNetworkSpecific()
* Fix unused variable a simpler way
Jozef Behran [Mon, 21 Jan 2019 08:53:09 +0000 (03:53 -0500)]
Fix randomly rejected form field submits (#8091)
If a formspec is submitted from a form fields handling
callback of another form (or "formspec shown from another
formspec"), the fields submitted for it can get
rejected by the form exploit mitigation subsystem with a
message like "'zorman2000' submitted formspec
('formspec_error:form2') but server hasn't sent formspec to
client, possible exploitation attempt" being sent to logs.
This was already reported as #7374 and a change was made
that fixed the simple testcase included with that bug
report but the bug still kept lurking around and popping
out in more complicated scenarios like the advtrains TSS
route programming UI.
Deep investigation of the problem revealed that this
sequence of events is entirely possible and leads to the
bug:
1. Server: show form1
2. Client *shows form1*
3. Client: submits form1
4. Server: show form2
5. Client: says form1 closed
6. Client *shows form2*
7. Client: submits form2
What happens inside the code is that when the server in
step 4 sends form2, the registry of opened forms is
updated to reflect the fact that form2 is now the valid
form for the client to submit. Then when in step 5 client
says "form1 was closed", the exploit mitigation subsystem
code deletes the registry entry for the client without
bothering to check whether the form client says was
closed just now is indeed the form that is recorded in
that entry as the valid form. Then later, in step 7 the
client tries to submit its valid form fields, these will
be rejected because the entry is missing.
It turns out the procedure where the broken code resides
already gets the form name so a simple "if" around the
offending piece of code fixes the whole thing. And
advtrains TSS agrees with that.
Wuzzy [Sun, 20 Jan 2019 18:49:17 +0000 (19:49 +0100)]
Make advanced settings noiseparams strings translatable (#8062)
Various minor language improvements in settingtypes.txt.
srifqi [Thu, 10 Jan 2019 17:56:48 +0000 (18:56 +0100)]
Advanced settings noiseparams: No tailing comma for empty flags
Previously, when editing noiseparams and disabling all the noise
flags, the noiseparam is displyed in advanced settings with a
tailing comma.
SmallJoker [Thu, 10 Jan 2019 17:54:10 +0000 (18:54 +0100)]
Advanced settings noiseparams: Remove '}' left in .conf
Previously, when editing noiseparams then restoring them to the default,
the final '}' was not removed from minetest.conf.
Paul Ouellette [Sat, 19 Jan 2019 14:17:05 +0000 (09:17 -0500)]
Remove incorrect feature flag (#8086)
And document the versions that introduced the features.
Jozef Behran [Fri, 18 Jan 2019 09:47:50 +0000 (04:47 -0500)]
Optimize subgames search a little bit (#8096)
Reserve space for the list of games in findWorldSubgame. The
performance gain is pretty much negligible but this change
also gets rid of a performance warning by CLANG TIDY.
Paul Ouellette [Wed, 16 Jan 2019 12:39:13 +0000 (07:39 -0500)]
Fix some misspellings (#8104)
SmallJoker [Sun, 13 Jan 2019 15:22:32 +0000 (16:22 +0100)]
world.mt: Only accept true/false/nil values (#8055)
This patch will make distinguishable mods in modpacks possible in the future
`nil` checks are required to provide backwards-compatibility for fresh configured worlds
Jozef Behran [Sun, 13 Jan 2019 14:11:47 +0000 (09:11 -0500)]
Speed up the craft definition handling (#8097)
The craft definition handling code that collects the names of
the craftable nodes suffers from vector reallocation
performance hits, slowing down instances with lots of
crafting recipes (VanessaE's DreamBuilder and most public
server some to my mind when thinking about this). As in each
instance the size of the resulting vector is already known,
add a reserve() call before the offending loops to allocate
the needed chunk of memory within the result vector in one
go, getting rid of the overhead.
Jozef Behran [Sat, 12 Jan 2019 15:57:26 +0000 (10:57 -0500)]
Optimize path finalization in pathfinder (#8100)
The pathfinder needs quite a bunch of items to add to the
resulting list. It turns out the amount of the space needed
for the finalized path is known in advance so preallocate it
to avoid a burst of reallocation calls each time something
needs to look for a path.
Jozef Behran [Sat, 12 Jan 2019 15:15:42 +0000 (10:15 -0500)]
Fix fake LINT check success (#8092)
The code 'if [ -z ${something} ]; then ... fi' means "if
${something} is an empty string, yell at the command line
about 'binary operator expected' and ignore the body of the
if statement, if ${something} is not an empty string,
the condition is false so ignore the body of the if
statement" which clearly isn't what the author wanted. Fix
it by adding a few quotes around the offending ${something}.
Paul Ouellette [Thu, 10 Jan 2019 06:54:20 +0000 (01:54 -0500)]
Make sqlite3 the default auth backend (#8085)
Loic Blot [Wed, 9 Jan 2019 20:14:04 +0000 (21:14 +0100)]
Import strstr function from FreeBSD 11 libc