Mason Proffitt

Results 15 comments of Mason Proffitt

Related to this is a large increase in the execution time of `pyhf.Model.__init__()` due to the network request. For example, using the "Hello World" case from the README in v0.6.3,...

> > For any code that builds many `Model`s often (as some of mine does), this 50x slowdown can suddenly dominate the execution time. > > The network request should...

Every time `pyhf.schema.validate()` is called, [a new `jsonschema.RefResolver` is created](https://github.com/scikit-hep/pyhf/blob/v0.7.0rc1/src/pyhf/schema/validator.py#L29-L33). The default remote cache is [a per-instance attribute of `RefResolver`](https://github.com/python-jsonschema/jsonschema/blob/v4.7.1/jsonschema/validators.py#L684-L701), so the cache will never be fully utilized by `pyhf`...

Division is in boostorg/histogram now, so it can get included here, right?

I've adjusted it so that now it will reproduce the lack of braces: ```python >>> TexSoup.TexSoup(r'\def\foo{bar}') \def\foo{bar} ```

This is done outside of math mode as well, generally to get a space after a macro. This is causing the same problems there.

This might be the consequence of a tricky thing I just ran into: `project()` will include bins in the underflow/overflow of axes other than the one you're projecting onto, whereas...

`ak.flatten()` doesn't remove `None` (I wouldn't have run into this issue if it did): ```python >>> ak.flatten(ak.Array([[1], [2, None]])) ```

Ah, so `ak.flatten` seems to only remove `None`s that are on the `axis-1` axis: ```python >>> ak.flatten(ak.Array([[[0]], None, [[1], None], [[2, None]]]), axis=1) >>> ak.flatten(ak.Array([[[0]], None, [[1], None], [[2, None]]]),...

I suppose I can use `boolmask()` as a workaround for my original purpose, although it's not quite *exactly* the same as the behavior I'm looking for. The issues above are...