Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 2 additions & 1 deletion hier_config/base.py
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@
from itertools import chain
from logging import getLogger
from typing import TYPE_CHECKING, Optional, TypeVar, Union
from natsort import natsorted
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

natsort is an external dependency that would need to be installed to use use this fix. I'm not certain that we want to add the external required dependencies.


from .children import HConfigChildren
from .exceptions import DuplicateChildError
Expand Down Expand Up @@ -109,7 +110,7 @@ def add_deep_copy_of(

def all_children_sorted(self) -> Iterator[HConfigChild]:
"""Recursively find and yield all children sorted at each hierarchy."""
for child in sorted(self.children):
for child in natsorted(self.children, key=lambda child: child.text):
yield child
yield from child.all_children_sorted()

Expand Down
Loading