Commit graph

338 commits

Author SHA1 Message Date
Dennis Felsing 68bcd21eff asan+ubsan clean 2022-05-26 01:22:14 +02:00
ChillerDrgon 05efc25f32 Add integration test script and coverage map 2022-05-26 00:37:45 +02:00
Dennis Felsing 1158bbfbc5 Don't assume script name/path 2022-05-23 17:10:19 +02:00
Chairn 76e6d0b120 Fix pylint error 2022-05-07 01:21:58 +02:00
Chairn 0cd61e6ae1 Added header guard exception 2022-05-07 01:08:51 +02:00
Chairn 5925181acc Updated unicode script generation 2022-05-06 20:31:24 +02:00
def cd87fc1ef7 Fix move_sqlite (fixes #4902) 2022-03-28 00:35:39 +02:00
Jupeyy bb1ed45c3d Emscripten support 2022-03-25 12:42:18 +01:00
Jupeyy e02ebca2c9 Rename lib generation scripts 2022-03-25 11:46:32 +01:00
Jupeyy fbeba9eb5f Add Vulkan backend 2022-03-21 12:39:51 +01:00
Dennis Felsing af36070c91 Update ddnet-libs, fix shellcheck 2022-02-24 10:51:31 +01:00
Jupeyy 8bed1c7267 Add module offset 2022-02-24 10:45:58 +01:00
heinrich5991 1820a0e168 Add some checksum functions to the client
Let's see if it works out, if not, we can revert it.
2022-01-31 21:31:26 +01:00
Jupeyy 55a1406641 Further android build fixes 2022-01-20 11:04:47 +01:00
Jupeyy 4bcddc8dae fix android curl cmake flags 2022-01-19 10:44:48 +01:00
def fec20679f1 Create custom look for DMG using dmgbuild
(nice background image still missing)
2021-12-26 00:24:55 +01:00
def 052502a3d1 Fix local shellcheck warnings in android/files/build.sh
In ./scripts/android/files/build.sh line 3:
[ x"$1" == x ] && {
  ^---^ SC2268 (style): Avoid x-prefix in comparisons as it no longer serves a purpose.

Did you mean:
[ "$1" == "" ] && {
2021-12-21 17:52:06 +01:00
def 28ac9396cc Support libfat directory for macOS, use arm64 libs (fixes #3250)
Builds and runs successfully with:
  cmake -DCMAKE_BUILD_TYPE=Release -GNinja -DPREFER_BUNDLED_LIBS=ON -DCMAKE_OSX_ARCHITECTURES="arm64;x86_64"
  ninja package_dmg

Tested successfully with native arm64 and rosetta

No discord support for universal binary
2021-12-20 00:17:38 +01:00
Jupeyy b216b6744a Add Android build scripts 2021-08-24 12:18:20 +02:00
heinrich5991 1f68e11445 Mark the inverted exclamation mark as confusable with i
They look pretty much the same in our font, but for some reason, the
inverted exclamation mark doesn't have confusables.
2021-07-27 02:43:04 +02:00
heinrich5991 707e13ff7a Update confusables_data.h to Unicode 13.0.0 2021-07-27 02:41:55 +02:00
def f867d9c2ac Only use correct clang-format version 2021-04-17 20:24:57 +02:00
def 8fc1fe3811 Retry hdiutil create if it fails (fixes #3711) 2021-03-16 17:56:36 +01:00
def 387b8ef51d Fix dmg.py
Traceback (most recent call last):
  File "/home/deen/isos/ddnet/ddnet-source/scripts/dmg.py", line 106, in <module>
    main()
  File "/home/deen/isos/ddnet/ddnet-source/scripts/dmg.py", line 103, in main
    dmg.create(volume_name=args.volume_name, directory=args.directory, dmg=args.output, symlinks=symlinks)
  File "/home/deen/isos/ddnet/ddnet-source/scripts/dmg.py", line 59, in create
    self._create_hfs(hfs, volume_name, output_size)
  File "/home/deen/isos/ddnet/ddnet-source/scripts/dmg.py", line 42, in _create_hfs
    with open(hfs, 'wb') as f:
TypeError: expected str, bytes or os.PathLike object, not tuple
2021-03-04 10:01:22 +01:00
Edgar 6e76c46c4c
Fix Insecure temporary file 2021-03-01 09:14:25 +01:00
def 13a8dfa307 Add pylint
and fix occurences
2020-12-09 10:40:28 +01:00
def 1dcc1e4026 Run shellcheck over check_dilate.sh 2020-12-08 15:02:16 +01:00
def 0822f9cecd Add check_dilate 2020-11-24 11:15:24 +01:00
def 5b24e95b29 Check translations in github, check formatting strings, fix 2020-11-12 08:57:20 +01:00
heinrich5991 091db3df32 Add scripts to detect variable name style violations
Currently very user-unfriendly, call like this:

```
env CXXFLAGS="-I<builddir>/src -I<includedir_lib1> -I<includedir_lib2> …" python scripts/extract_identifiers.py src/game/**.cpp src/engine/client/**.cpp src/engine/server/**.cpp src/engine/shared/**.cpp > identifiers
python scripts/check_identifiers.py < identifiers
```
2020-11-08 17:13:13 +01:00
def 06b534c07d Create fallback wordlist in sourcecode (fixes #3206) 2020-11-03 17:01:16 +01:00
heinrich5991 8427e99672 Don't run the style fixer for generated files
Fixes #2962.
2020-10-02 19:30:05 +02:00
def 2e8e19290e fix_style.py: Ignore generated key headers 2020-09-26 21:50:13 +02:00
heinrich5991 678b2b15c3 Change fix_style.py script to unconditionally format everything 2020-09-26 21:41:24 +02:00
def 2d8a1ee2b7 Make fix_style.py look at files, not lines 2020-09-26 21:41:20 +02:00
def 3daa798639 Implement script/languages support for contexts 2020-09-15 10:30:49 +02:00
heinrich5991 b235637713 Find the common ancestor for the style checking
This allows the style checker to only look at the changes done in the
current branch, and not the other commits that were done in the base
branch.
2020-09-11 00:57:03 +02:00
def ecdf648930 Make fix_style executable 2020-09-10 22:58:30 +02:00
heinrich5991 df46ff8557 Add a tools to fix the style of new pull requests 2020-09-10 04:11:58 +02:00
def 63f6ecd19d Ignore duplicate records when inserting (fixes #2636) 2020-08-29 08:26:03 +02:00
Zwelf ca24611c0c Do not recommend to deleting ddnet-server.sqlite database
as it might be still in use or there might be even new ranks added to the database
2020-08-12 23:38:09 +02:00
Zwelf 9848b3c759 SQLite transfer script: Warn if database does not exist yet and handle partially created sqlite tables 2020-08-12 23:38:09 +02:00
Zwelf 7834c2c1d8 Add file score import script by heinrich5991 2020-08-03 12:58:52 +02:00
Zwelf e483011df6 Add script to move SQLite ranks to MySQL 2020-08-03 12:58:52 +02:00
def 59cf78be24 Always recreate the language files in same order
Alphabetically as the files are located in directory structure.

Keeps the language files more stable
2020-06-30 21:38:14 +02:00
def 2d581e0612 copy_fix: Don't generate comment line, just add missing translations at the end 2020-06-26 23:28:44 +02:00
def 2d6e56fec8 Translation fixes
- Code didn't work with newlines, get rid of them
- Some stylistic improvements
2020-06-26 18:34:50 +02:00
def f925822c5e Add instructions for translation stats 2020-06-25 22:12:35 +02:00
Learath 09fad44b87 Strip rpath before adding the correct one 2020-04-30 15:04:51 +02:00
def 31ae4c4d5a use pid in file names of temporary files
to prevent race conditions with multiple clients running when saving
maps, config on quit, during upgrade
2020-02-12 23:14:30 +01:00
heinrich5991 96069f42a9 Add a script to generate a stub libcurl library
Linking to this library will make DDNet compatible with all distros that
ship libcurl.so.4 with arbitrary version data attached. Distros
sometimes add versioning information to the symbols exported by curl
that artificially (because they're compatible with each other) limit
where our releases can be executed if dynamically linked.

This should reduce release size a bit and let's us take advantage of
automatically updated libraries.
2020-01-05 17:58:52 +01:00
Dennis Felsing 0498df2508 Update localizations (Thanks to Cellegen for report)
- Remove duplicate laser entries
- Update menus_settings.cpp comment for scripts
- Update instructions for scripts
- Run script to get updated localizations
2019-12-02 09:09:01 +01:00
def 94f3d97ddf Remove unmaintained Android code (fixes #1575) 2019-04-10 19:40:50 +02:00
def faa3cc195d UTF8 nocase compare & use for chat TAB completion
- As suggested by Arseniy Zarche
- Also updated confusables to Unicode 12
2019-01-09 08:31:03 +01:00
12pm d46a5c7994 Fix output for usernames with double quotes and semicolons 2018-11-15 18:30:44 +01:00
12pm 59334a7068 Fix output for usernames with spaces 2018-11-10 13:52:13 +01:00
heinrich5991 41d0f86b12 Use __file__ instead of sys.argv[0]
Thanks to @bojidar-bg for the hint.
2018-07-25 09:17:10 +02:00
heinrich5991 945ea1cf28 Make language scripts callable from anywhere 2018-07-25 09:17:09 +02:00
heinrich5991 3a8cc43e13 Move language scripts to scripts/ 2018-07-25 00:34:02 +02:00
yangfl 81a39c229b Fix typo 2018-07-10 17:29:02 +08:00
heinrich5991 925aff21d4 Fix all the header guards and adjust the script a little 2018-07-06 16:11:38 +02:00
heinrich5991 d7f30c574f Update scripts/check_header_guards.py
Python 3 compatibility, return code, changing directory before script
starts.
2018-07-06 15:45:05 +02:00
heinrich5991 f46f811280 Remove a bunch of unused scripts
scripts/compiler.py: Looks like an older version of datasrc/datatypes.py
scripts/copyright.py: Checks copyright headers in files
scripts/count_source.sh: Counts source files, from SVN(!) times
scripts/dat2c: Writes a C constant with the contents of a file
scripts/font_converter.py: Conversion tool for an old font format
scripts/font_installer.sh: Calls the conversion tool on all fonts
scripts/linecount.sh: Counts source code lines (using `wc` and `find`)
scripts/make_docs.sh: Generates source code docs that haven't existed for a long time
scripts/mass_server.py: Starts a lot of `fake_server`
scripts/netobj.py: Looks like an older version of datasrc/datatypes.py
scripts/nicks.txt: Auxiliary file for scripts/mass_server.py
scripts/png.py: Conversion of image file formats
scripts/process_blame.py: SVN-era source count
2018-07-06 15:14:13 +02:00
heinrich5991 6d88a29910 Add LATIN SMALL LETTER L confusable
This makes `LATIN SMALL LETTER L` confusable with `LATIN SMALL LETTER I`
because `CYRILLIC SMALL LETTER PALOCHKA` "ӏ" (mapping to i) wasn't
confusable with `LATIN SMALL LETTER L` "l" (mapping to l) before.

Also add tests for `str_utf8_comp_confusable`.
2018-03-20 21:11:44 +01:00
heinrich5991 565f963a7b Properly hide stderr in scripts/git_revision.py 2018-03-02 03:31:45 +01:00
heinrich5991 b285d777f3 Python 2 support for scripts/git_revision.py on error /o\ 2018-03-02 03:22:44 +01:00
heinrich5991 1387ee9a3a Regenerate version file on git changes
Previously, this file had to be manually deleted if you wanted to have a
new version compiled in.
2018-03-01 16:50:29 +01:00
yangfl 1620fc9b0f Fix typo 2018-02-07 16:10:40 +08:00
Dennis Felsing efe053033b Remove make_src.py 2018-01-29 14:38:42 +01:00
Learath2 050a34295f Remove make_release, scrub references to lua files 2018-01-29 13:37:26 +01:00
Learath2 b26eeb235d Scrub more references to bam 2018-01-28 22:47:03 +01:00
bors[bot] a2f010c1fe Merge #941
941: Add cross-compiled DMG archives r=Learath2 a=heinrich5991

Currently they only contain the client and the archives are a lot larger
than the current release artifacts.
2017-12-08 14:20:49 +00:00
heinrich5991 3620e234db dmg.py: Add proper size calculation 2017-11-16 10:03:11 +01:00
heinrich5991 2f0b76f178 dmg.py: Compatibility with Python 3.2 and below 2017-11-16 00:11:30 +01:00
heinrich5991 eb6c8ea101 Allow DMG creation on macOS via hdiutil 2017-11-09 13:35:59 +01:00
heinrich5991 2593091380 Preliminary version of cross-compiled DMG archives
Currently they only contain the client and the archives are a lot larger
than the current release artifacts.
2017-11-09 00:16:52 +01:00
heinrich5991 17d3f4afa4 Put shaders into the data/ directory
Simplifies a lot of things
2017-11-08 22:19:47 +01:00
def 342c6048bf Use new opengl by default 2017-10-20 22:47:59 +02:00
Dennis Felsing 03ec3c0145 No glew32.dll 2017-10-20 13:41:30 +02:00
Dennis Felsing 96bad9f3f2 Add glew32.dll on Windows 2017-10-20 09:01:22 +02:00
heinrich5991 6ef9c8dbcd First working version of teehistorian
teehistorian records all inputs from the players as well as the player
positions in each tick. It stores this info in a highly compressible
output format (I've achived 5x compression using xz or bz2).
2017-09-20 02:16:11 +02:00
def c53f39c434 Let's try the nicer dll names on windows 2017-07-21 23:43:01 +02:00
def b57ffa429e Use scancodes instead of keycodes for input (fixes #796, please test) 2017-07-21 19:53:49 +02:00
def 41d9de997c ddnet-libs submodule and some fixes 2017-07-20 23:07:15 +02:00
def a72910bb4e Move external libraries to ddnet/ddnet-libs repo 2017-07-19 21:51:47 +02:00
def ed3b3f94c4 Further build fixes 2017-07-17 00:34:11 +02:00
def b1b4aa78ea Windows build fixes 2017-07-17 00:17:22 +02:00
def f94f567acf New curl and openssl versions 2017-07-16 23:52:55 +02:00
def 8580aa6b6c Bundle map_diff on OSX 2017-07-15 19:13:38 +02:00
def 8b111ab6c3 Distribute map_diff 2017-07-12 20:31:02 +02:00
def 66f6f16e81 Windows DPI fixes #2 2017-07-09 09:44:07 +02:00
def 12286fe2f9 Add map_extract to distribution 2017-06-12 21:12:26 +02:00
heinrich5991 72f2eb32ee Fix wording in scripts/hash_passwords.py, fix brace in other file 2017-03-09 13:37:54 +01:00
heinrich5991 e707749fac Add a tool to hash new passwords or to update config files
Usage:

```
$ python scripts/hash_passwords.py --new username admin password
auth_add_p username admin 9415aef5cc5043800377584cff32b90c 26fd308aad6b04f2
```

```
$ python scripts/hash_passwords.py autoexec.cfg
```
updates all instances of `auth_add` to `auth_add_p`.

```
$ python scripts/hash_passwords.py autoexec.cfg \
  --new user1 admin password1 \
  --new user2 admin password2
```
updates all instances of `auth_add` to `auth_add_p` and adds two new
users.

On Windows, you should be able to drag-and-drop your config file onto
this script and have it automatically updated (not tested).
2017-03-09 12:48:06 +01:00
heinrich5991 cd3b0ae855 Implement the confusable algorithm from Unicode more closely
See UTS#39 "Unicode Security Mechanisms":
http://www.unicode.org/reports/tr39/

This means that characters with accents or other things around them are
now considered the confusable with the base character.

Fixes #557. Fixes #575.
2016-10-30 13:45:55 +01:00
H-M-H 9ca7651cb1 fixed path to look for SDL2 on OS X 2016-05-26 21:13:27 +02:00
def 9f08b68a01 Info.plist entry for High DPI on Mac 2016-05-07 16:41:46 +02:00
def 4de7b45ea6 Select SDL2.framework instead of SDL.framework on Mac OS X 2016-05-02 10:31:39 +02:00
def cc1f80471b Use same key limit as SDL2 does 2016-04-29 21:56:38 +02:00
def 5a42d90ee6 More SDL.dll -> SDL2.dll 2016-04-29 21:56:38 +02:00