Ns-3.46 errata

From Nsnam
Revision as of 01:27, 17 October 2025 by Tomh (talk | contribs) (update Errata)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

Note: The ns-3.46.1 release fixes the below issue.

On October 1, 2025, ns-3.46 was published. This page lists some issues that have been fixed in the mainline since that time. This issue is fixed in the ns-3.46.1 release.

ns3 script incompatibility with Python 3.14

On October 5, 2025, Python 3.14 was released and created an issue with the ns3 build script. If you notice an error when configuring ns-3 such as:

$ ./ns3 configure --enable-modules=core
Traceback (most recent call last):
  File "/builds/nsnam/ns-3-dev/./ns3", line 2110, in <module>
    main()
    ~~~~^^
  File "/builds/nsnam/ns-3-dev/./ns3", line 1882, in main
    args = parse_args(sys.argv[1:])
  File "/builds/nsnam/ns-3-dev/./ns3", line 129, in parse_args
    parser_help.add_argument(
    ~~~~~~~~~~~~~~~~~~~~~~~~^
        "help", help="Print a summary of available commands", action="store_true", default=False
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    )
    ^
  File "/usr/local/lib/python3.14/argparse.py", line 1543, in add_argument
    raise ValueError(f'action {action_name!r} is not valid for positional arguments')
ValueError: action 'store_true' is not valid for positional arguments  

The fix has been committed to ns-3-dev but can be cherry-picked from this commit.

The alternative, if you still have an older version of Python 3 available, is to invoke ns3 from the older Python interpreter, (e.g., "python3.13 ns3 ...") or else use a virtualenv.