Does it matter that all_ can't have line breaks?
_all_ without line breaks
Without line breaks, _all_ to __all__ works great (o:
__all__ = ['_not_included_by_default', '_not_included_by_default2']
# Cell
def _not_included_by_default(): pass
def _not_included_by_default2(): pass
_all_ with line breaks
With line breaks, _all_ doesn't get picked up by _re_all_def
(... ([^\n\]]*) # Catching group with anything except a ] or newline
)
__all__ = []
# Cell
def _not_included_by_default(): pass
def _not_included_by_default2(): pass
# Cell
_all_=["_not_included_by_default",
"_not_included_by_default2"]
Note: _re__all__def
uses a different catching group ([^\]]*)
that allows line breaks
maybe the answer is to use multiple _all_
right next to the thing we need to include
that's what this nb has been changed to