Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

Unreleased

Removed

  • [BREAKING CHANGE] Support for Python 3.8, 3.9, and 3.10. The minimum supported version of Python is now 3.11. If running antlion as part of the Fuchsia tree, nothing is required; Python 3.11 is vendored with Fuchsia and will be found by GN. If running antlion out of tree, ensure your Python version is at least 3.11.
  • WlanRvrTest user params debug_pre_traffic_cmd and debug_post_traffic_cmd

0.3.0 - 2023-05-17

Deprecated

  • Support for ACTS JSON configs; instead, use Mobly YAML configs. To ease this transition, upon running act.py, a compatible YAML config will be generated for you and placed next to your JSON config.
  • The act.py binary; instead, invoke tests directly. Upon running act.py, a deprecation warning will provide instructions for how to invoke antlion tests without act.py and with the newly generated YAML config.

Added

  • Presubmit testing in CV (aka CQ). All tests specified with the qemu_env environment will run before every antlion CL is submitted.
  • Postsubmit testing in CI. See Milo for an exhaustive list of builders.
  • EditorConfig file for consistent coding styles. Installing an EditorConfig plugin for your editor is highly recommended.

Changed

  • Default test execution from ACTS to Mobly. antlion_host_test() now invokes the test file directly using the Mobly test runner, rather than using act.py.
    • All tests have been refactored to allow direct running with the Mobly test runner.
    • act.py now converts ACTS JSON config to compatible Mobly YAML config. The resulting config is passed directly to Mobly‘s config parser. See notes for this release’s deprecations above.
  • Generate YAML config instead of JSON config from antlion-runner.
  • FuchsiaDevice.authorized_file_loc config field is now optional. This field is only used during FlashTest; it is not used when the device is already provisioned (e.g. when tests are dispatched in Fuchsia infrastructure).

Removed

  • Unused controllers and tests (full list)

Fixed

  • Failure to stop session_manager using ffx in WlanRebootTest (@patricklu, bug)
  • Failure to parse ‘test_name’ in DHCP configuration file in Dhcpv4InteropTest (invalid option) introduced by previous refactor (@patricklu, bug)
  • Logging for Dhcpv4InteropTest changed to utilize a temp file instead of /var/log/messages to fix test error with duplicate PID log messages (@patricklu, bug)

0.2.0 - 2023-01-03

Added

  • Added snapshots before reboot and during test teardown in WlanRebootTest (@patricklu, bug)
  • Download radvd logs from AP for debugging IPv6 address allocation
  • Optional wlan_features config field to FuchsiaDevice for declaring which WLAN features the device supports, such as BSS Transition Management

Changed

  • All path config options in FuchsiaDevice expand the home directory (~) and environmental variables
    • Used by ssh_priv_key, authorized_file_loc, and ffx_binary_path for sensible defaults using $FUCHSIA_DIR
  • Running tests works out of the box without specifying --testpaths
    • Moved tests and unit_tests to the antlion package, enabling straight-forward packaging of tests.
    • Merged antlion and antlion_contrib packages
  • Converted several required dependencies to optional dependencies:
    • bokeh is only needed for producing HTML graphing. If this feature is desired, install antlion with the bokeh option: pip install ".[bokeh]"
    • usbinfo and psutil are not needed when a static IP address is assigned to the Fuchsia DUT. If assigning a static IP address is not an optional, install antlion with the mdns option: pip install ".[mdns]"

Removed

  • [BREAKING CHANGE] Dependencies for Python versions older than 3.8. Please upgrade your system to a newer version of Python to run antlion tests.
  • ssh_config from FuchsiaDevice config. SSH configs are generated to provide a reproducible connection method and ease initial setup.

Fixed

  • Failure to acquire IPv6 address in WlanRebootTest (bug)
  • Typo in ChannelSweepTest preventing use of iPerf (@patricklu)
  • “Country code never updated” error affecting all Fuchsia ToT builds (@karlward, bug)
  • Parsing new stderr format from ffx component destroy (@karlward, bug)
  • “Socket operation on non-socket” error during initialization of ffx on MacOS (@karlward, bug)
  • Python 3.8 support for IPv6 scope IDs (bug)

0.1.0 - 2022-11-28

Forked from ACTS with the following changes

Added

  • A modern approach to installation using pyproject.toml via pip install .

Changed

  • Directory structure to the src-layout
  • Package and import names from ACTS to antlion
  • Copyright notice from AOSP to Fuchsia Authors

Deprecated

  • Use of the setup.py script. This is only used to keep infrastructure compatibility with ACTS. Once antlion is moved to Fuchsia infrastructure, this script will be removed.

Removed

  • Dependency on protobuf and grpc Python packages. Removes the metric logger, which was unused by Fuchsia WLAN tests.
  • Unused Android-specific build files, tests, and utilities for features Fuchsia doesn't support, such as telephony and automotive

Fixed

  • KeyError for ‘mac_addr’ in WlanDeprecatedConfigurationTest (@sakuma, bug)