1
0
forked from mirrors/0ad
Commit Graph

52 Commits

Author SHA1 Message Date
Dunedan ae3fad73ce Add a markdownlint pre-commit hook
This adds a pre-commit hook to link Markdown files and fixes all
reported findings.
2024-08-27 10:06:31 +02:00
Dunedan 05e708f987 Refactor check_* functions for better readability 2024-08-25 21:24:00 +02:00
Dunedan 75949e1f5a Replace use of os.path with pathlib 2024-08-25 21:24:00 +02:00
Dunedan 4b77d7bb74 Compile regex pattern once
This should slightly increase the performance as the pattern has to be
only compiled once, instead of so during every loop iteration.
2024-08-25 21:24:00 +02:00
Dunedan 87029f2a91 Replace uses of re.split() with str.split() 2024-08-25 21:23:59 +02:00
Dunedan 24e67746f9 Log a warning when a specified mod can't be found 2024-08-25 21:23:59 +02:00
Dunedan 92d92fac1b Remove unnecessary default value for dict.get() 2024-08-25 21:23:59 +02:00
Dunedan 0dea22285e Fix the exit codes of checkrefs.py 2024-08-25 21:23:59 +02:00
Dunedan 39f2889cf7 Support calling checkrefs.py from other dirs 2024-08-25 21:23:59 +02:00
Dunedan e36c6a31fe Enable additional ruff rules
In the ruff config file added in #6954 explicitly selecting the ruff
rules to check was missed, resulting in ruff only checking a very small
subset of its available rules. That hasn't been desired, so this is the
first of a series of commits enabling more rules. In this PR all rules
whose violations can be either automatically fixed by ruff or are
trivial to fix manually get enabled. For the follow up PRs it's intended
to focus on one area of rules per PR to gradually improve the Python
code quality.
2024-08-25 06:29:39 +02:00
Dunedan c49d4eedd0 Lint and format Python files using ruff
To improve quality und uniformity of the included Python code this
lints and formats the included Python files with ruff.
2024-08-24 10:54:26 +02:00
Stan eeb0f1cce6 Make checkrefs and called scripts return an error 2024-08-23 17:54:56 +02:00
Stan 2a06eea08a Fix checkrefs.py for python 3.12
Fixes #6898
Reported by: @Itms
2024-08-23 15:59:36 +02:00
Freagarach 83b786dcf5 Tokens for required technologies.
Use tokens for required technologies, allowing `-tech` and easier
replacements.
Fixes requiring `replace=""` when replacing techs.
Also a minor fix in the TemplateParser.js for upgrade requirements.
Refs. 9bb9ff8b16.

Differential revision: https://code.wildfiregames.com/D4912
Comments by: @Stan
This was SVN commit r27505.
2023-01-30 08:05:34 +00:00
Freagarach 3e7bdc148e Update checkrefs.py after 9bb9ff8b16.
Reported by: @Langbart
Differential revision: https://code.wildfiregames.com/D4880
Tested by: @Langbart
Fixes #6682

This was SVN commit r27436.
2023-01-13 10:29:51 +00:00
Stan 88b426dc59 Fix the issues with entvalidate.py
It doesn't properly handle mixins / special templates
    On python 3.8+, XML elements are no longer sorted and this fails
validation against entity.rng
    mixins are not properly applied because the | split is incorrect (3
max items instead of 2)
    merge="" is not supported
    Parents aren't always passed when they should be.
    on windows it is incorrectly assumed that the encoding is 1252

Patch by: @baco
Tweaks by: @Stan
Based on a patch by: @wraitii
Differential Revision: https://code.wildfiregames.com/D4698
This was SVN commit r27161.
2022-10-22 16:24:45 +00:00
Stan 759aa333a5 Add a function to handle custom phase techs, so they do not show as unused.
Fix autostart files being marked as unused.
Fix an issue with the researcher component. Patch by: @marder
Refs https://code.wildfiregames.com/D4750
Refs #6587
Fixes ca82935dfc

This was SVN commit r27033.
2022-08-06 15:06:03 +00:00
Stan ca82935dfc Add techs and auras to the list of possibly missing files.
Refs: #6544
Accepted by: @Langbart
Differential Revision: https://code.wildfiregames.com/D4725
This was SVN commit r26991.
2022-06-27 14:31:16 +00:00
Stan b9adbbd8be Fix 557fa0312e by adding the js files to the list of dependencies. They were previously found under the gui folder.
Reported by: @Langbart
Fixes #6542

This was SVN commit r26909.
2022-05-28 17:01:42 +00:00
Freagarach b778caf146 Move FormationName and Icon from cmpFormation to cmpIdentity.
Reduces duplication across components.
Allows to provide specific names and history for formations.

Differential revision: https://code.wildfiregames.com/D4476
Comments by: @bb, @Stan
Fixes #6400

This was SVN commit r26476.
2022-02-24 06:51:07 +00:00
Stan 936fb5a172 Replace checkrefs.pl by a python script. This makes it easier to run on Windows for non technical persons.
- Add support for tips
- Fix other scripts not writing to the correct output (they were writing
info messages to stderr)

Based on a patch by: @mammadori	and @cyrille
Differential Revision: https://code.wildfiregames.com/D3213
This was SVN commit r26350.
2022-02-12 15:43:42 +00:00
Freagarach ea72437739 Move GenericName, History and Icon from the civ-JSON to cmpIdentity.
Since the players/civs already have cmpIdentity, use it.
This forces civs to have corresponding XML in the `special/players/`
folder.

Also moves the files from `special/player/` to `special/players/`
consistent with other folders. And moves the generic `player.xml` one
level up.

Differential revision: https://code.wildfiregames.com/D4473
Help and comments by: @Stan, @wraitii
This was SVN commit r26298.
2022-02-05 06:24:45 +00:00
wraitii 1b844606aa Implement mul_round in checkrefs.
Missed in 19f600cfa2. In use since 2078abdcc4.

This was SVN commit r25247.
2021-04-12 16:33:54 +00:00
wraitii d73a3f59ad Allow arbitrary compositions in TemplateLoader template names.
- Allows compositing any two templates in TemplateLoader, and not just
filters: 'A|B|C' is now valid for any template A, B and C.
- Allows parents to be composited paths 'A|B|C'. In such a schema, if A
or B themselves specify a parent, the actual composition becomes
A|pA|B|pB|C and so on.

This allows, by leveraging the common schema of our entities, to reduce
duplication.

For convenience, templates in "special/filters/" and "mixins/" can be
included by their direct name. Others have to be completely specified.

See the two provided cases for examples:
- 'hoplite' becomes a mixin that can be used to apply the Phalanx
formation
- 'builder' becomes a mixin that can be give a template the ability to
build the standard structures, and gives the 'Builder' identity class.
This also allows deduplicating that list of tokens.

Update checkrefs & swap std::map for std::unordered_map in
TemplateLoader.

Differential Revision: https://code.wildfiregames.com/D3801
This was SVN commit r25223.
2021-04-09 15:43:50 +00:00
wraitii 3b3a297cca Fix checkrefs following D11 / 1c9efa6fb5
Fixes D11 / 1c9efa6fb5.

The problem is that some GUI pages were simply named "page.xml" which
the regex didn't like.

Accepted By: Nescio
Differential Revision: https://code.wildfiregames.com/D3644
This was SVN commit r25022.
2021-03-06 13:57:11 +00:00
vladislavbelov 6ddbf75db1 Increase PMP version for checkrefs.pl after 2f8c7cf575.
This was SVN commit r24660.
2021-01-17 11:01:11 +00:00
wraitii ff924aaffc Fix no-PCH builds and checkrefs following a4852c4c01
Fixes D2814 / a4852c4c01.


Differential Revision: https://code.wildfiregames.com/D3123
This was SVN commit r24222.
2020-11-20 11:41:56 +00:00
Stan 8be20790b5 Check for missing selection textures and missing range overlay textures
Refs: D2618

This was SVN commit r23520.
2020-03-07 11:06:51 +00:00
wraitii 801d5cbe68 Fix checkrefs script following eab4f9fdde (phenotypes), and fix the unit_motion_integration_test map from b637fdbae9.
In eab4f9fdde the `gender`-tag was replaced with `phenotype`. the
checkrefs script however was not updated and complained.

b637fdbae9 introduced a map that checkrefs did not validate.

Based on a patch by: Freagarach
Differential Revision: https://code.wildfiregames.com/D2141
This was SVN commit r22647.
2019-08-12 08:03:23 +00:00
elexis 3c2f15ee8b Fix lineendings.
This was SVN commit r22460.
2019-07-12 17:40:40 +00:00
Stan 0cc034fa6f Improve and fix checkrefs.pl, add a readme for usage, add mod support, add command line arguments.
Reviewed by: @Itms
Comments by: @elexis
Differential Revision: https://code.wildfiregames.com/D1381
This was SVN commit r22096.
2019-02-24 21:19:20 +00:00
elexis bcbf25bfbd Fix line endings of all files in source/ except source/third_party/.
This was SVN commit r18558.
2016-07-25 09:07:45 +00:00
Itms 6c3964f52a Cleanup of SoundGroup XML files.
Remove some useless settings using the default values.
Remove the obsolete <Replacement> tag.
Update some documentation in the code, fix whitespace and unify line
endings.

Patch by otero, fixes #3268

This was SVN commit r17976.
2016-04-04 20:54:48 +00:00
scythetwirler 987a7028bd Implements relative templates. Fixes #2936. Thanks to leper, wraitii, historicbruno and everyone else that helped.
This was SVN commit r17386.
2015-12-05 17:02:25 +00:00
historic_bruno 4e3b933b11 Fixes some issues in checkrefs.pl: soundgroups have new gender and lang tags, PMP version bump, GUI XML can include directories, civ data path changed
This was SVN commit r16987.
2015-09-06 04:42:28 +00:00
historic_bruno 6a70e3a62f Updates checkrefs.pl to support mod mod and GUI XML change
This was SVN commit r16242.
2015-01-28 03:26:39 +00:00
historic_bruno bb43a71460 Updates checkrefs.pl to support skirmish maps
This was SVN commit r15112.
2014-05-05 01:09:53 +00:00
historic_bruno 92f4391f51 Adds tech template support to checkrefs.pl
This was SVN commit r13696.
2013-08-18 02:52:05 +00:00
historic_bruno 791d392797 Fixes and improves terrain scanning of checkrefs.pl.
Removes some useless old actors.

This was SVN commit r13695.
2013-08-18 01:57:37 +00:00
leper 1e3bdc439b Fix MSVC warning. Refs #1838.
Remove special support for removed internal mod.

This was SVN commit r13180.
2013-02-21 19:59:39 +00:00
historic_bruno 03cc1b3a6b Fixes minor bugs in reference checker script.
Fixes missing template in pathfinding terrain demo

This was SVN commit r13140.
2013-02-01 00:26:23 +00:00
historic_bruno fdb3995141 Adds UTF-8 BOM stripping to checkrefs.pl when using JSON files, patch by retrosnub. Refs #1556
This was SVN commit r12456.
2012-08-17 19:24:23 +00:00
historic_bruno 97de77c6b6 Adds alternative materials to reference checker
This was SVN commit r12419.
2012-08-14 02:31:54 +00:00
historic_bruno 9f358abaed Adds particle and material files to reference checker
This was SVN commit r12411.
2012-08-13 19:39:09 +00:00
historic_bruno 13d7867a58 Fixes checkrefs.pl for latest actor format.
Adds checking for map preview textures.
Adds checking for random map scripts.

This was SVN commit r12395.
2012-08-12 21:00:58 +00:00
Ykkrosh ca56add718 Add GUI and civ files to reference checker
This was SVN commit r10833.
2011-12-29 19:25:41 +00:00
Ykkrosh a18195d0a1 Add checks for terrain texture references
This was SVN commit r10832.
2011-12-29 17:57:01 +00:00
Ykkrosh 7380d2c615 Add incomplete script for detecting data errors (broken references and unused files)
This was SVN commit r10830.
2011-12-29 17:39:27 +00:00
Ykkrosh ead45aa957 Report XML parse errors better in validator tool
This was SVN commit r9874.
2011-07-18 14:57:41 +00:00
Ykkrosh bec4c6437b Make non-combat units flee when under melee attack, and not attack enemies automatically.
Fixes #703.

This was SVN commit r9010.
2011-03-04 14:36:41 +00:00