#43927: Clean up and modernize generate_packets.py Open Date: 2022-02-19 14:17 Last Update: 2022-09-30 20:28 URL for this Ticket: https://osdn.net//projects/freeciv/ticket/43927 RSS feed for this Ticket: https://osdn.net/ticket/ticket_rss.php?group_id=12505&tid=43927 --------------------------------------------------------------------- Last Changes/Comment on this Ticket: 2022-09-30 20:28 Updated by: alienvalkyrie * Details Updated --------------------------------------------------------------------- Ticket Status: Reporter: alienvalkyrie Owner: alienvalkyrie Type: Tasks Status: Open [Owner assigned] Priority: 5 - Medium MileStone: 3.2.0 Component: Bootstrap Severity: 5 - Medium Resolution: None --------------------------------------------------------------------- Ticket details: This is a meta-ticket for various tasks relating to making common/generate_packets.py more clean and concise. This is mostly a refactoring effort, though some of these changes improve the generated code or make the script work in more contexts. Apart from general code/style cleanup (which should happen at every step along the way), this includes: general cleanup: trailing whitespace, unused imports/variables/functions, etc. #43929 #44011 #44585 use pathlib to handle file paths (in a filesystem-agnostic way) #43930 #43972 use argparse to handle command line arguments #43931 #43938 #43939 #45752 #45753 use with-blocks and context managers to cleanly manage file access #43932 #43953 #43954 use iteration (generators, list comprehensions and itertools) where appropriate #44007 #44008 #44009 #44010 #44583 #44584 #45190 split large functions into smaller parts #43951 #43952 create new types to better represent certain components #45077 #45080 #45165 #45166 #45206 improve packets.def parsing code #44571 #44572 #44573 #44580 #44582 #45078 #45079 #45081 #45082 #45178 #45179 #45186 #45723 modernize string formatting #44574 #44575 #44576 #44577 make use of static type checkers / code analysis #44615 #44762 #44763 clean up fields and methods of classes #44761 #44764 #44765 #44768 remove unneeded / broken features #44975 #45012 simplify and uniformize definition and composition of generated code #44976 #44977 #44978 #45000 #45001 polish the code introduced as part of this cleanup #45715 #45716 #45717 #45754 #45755 (More to be added as they pop up.) -- Ticket information of Freeciv project Freeciv Project is hosted on OSDN Project URL: https://osdn.net/projects/freeciv/ OSDN: https://osdn.net URL for this Ticket: https://osdn.net/projects/freeciv/ticket/43927 RSS feed for this Ticket: https://osdn.net/ticket/ticket_rss.php?group_id=12505&tid=43927