Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Recurse KeyError when using several BaseModels #7611

Closed
1 task done
Tracked by #7617
hoorelbeke-jimmy opened this issue Sep 25, 2023 · 15 comments · Fixed by #7624 or #7646
Closed
1 task done
Tracked by #7617

Recurse KeyError when using several BaseModels #7611

hoorelbeke-jimmy opened this issue Sep 25, 2023 · 15 comments · Fixed by #7624 or #7646
Labels
bug V2 Bug related to Pydantic V2 unconfirmed Bug not yet confirmed as valid/applicable

Comments

@hoorelbeke-jimmy
Copy link

hoorelbeke-jimmy commented Sep 25, 2023

Initial Checks

  • I confirm that I'm using Pydantic V2

Description

The following code is working well with pydantic 2.3, but after upgrading it to 2.4 it fails with the following error:

Traceback (most recent call last):
  File "/home/ahoorelbeke/generator_v1_detailed/src/generator_source/parameters/parameters_equipment_design.py", line 23, in <module>
    class E(BaseModel):
  File "/home/ahoorelbeke/venv/lib/python3.10/site-packages/pydantic/_internal/_model_construction.py", line 184, in __new__
    complete_model_class(
  File "/home/ahoorelbeke/venv/lib/python3.10/site-packages/pydantic/_internal/_model_construction.py", line 495, in complete_model_class
    schema = apply_discriminators(simplify_schema_references(schema))
  File "/home/ahoorelbeke/venv/lib/python3.10/site-packages/pydantic/_internal/_core_utils.py", line 519, in simplify_schema_references
    schema = walk_core_schema(schema, count_refs)
  File "/home/ahoorelbeke/venv/lib/python3.10/site-packages/pydantic/_internal/_core_utils.py", line 439, in walk_core_schema
    return f(schema, _dispatch)
  File "/home/ahoorelbeke/venv/lib/python3.10/site-packages/pydantic/_internal/_core_utils.py", line 515, in count_refs
    recurse(state['definitions'][ref], count_refs)
  File "/home/ahoorelbeke/venv/lib/python3.10/site-packages/pydantic/_internal/_core_utils.py", line 215, in walk
    return f(schema, self._walk)
  File "/home/ahoorelbeke/venv/lib/python3.10/site-packages/pydantic/_internal/_core_utils.py", line 503, in count_refs
    return recurse(s, count_refs)
  File "/home/ahoorelbeke/venv/lib/python3.10/site-packages/pydantic/_internal/_core_utils.py", line 218, in _walk
    schema = self._schema_type_to_method[schema['type']](schema, f)
  File "/home/ahoorelbeke/venv/lib/python3.10/site-packages/pydantic/_internal/_core_utils.py", line 227, in _handle_other_schemas
    schema['schema'] = self.walk(sub_schema, f)  # type: ignore
  File "/home/ahoorelbeke/venv/lib/python3.10/site-packages/pydantic/_internal/_core_utils.py", line 215, in walk
    return f(schema, self._walk)
  File "/home/ahoorelbeke/venv/lib/python3.10/site-packages/pydantic/_internal/_core_utils.py", line 503, in count_refs
    return recurse(s, count_refs)
  File "/home/ahoorelbeke/venv/lib/python3.10/site-packages/pydantic/_internal/_core_utils.py", line 218, in _walk
    schema = self._schema_type_to_method[schema['type']](schema, f)
  File "/home/ahoorelbeke/venv/lib/python3.10/site-packages/pydantic/_internal/_core_utils.py", line 362, in handle_model_fields_schema
    replaced_field['schema'] = self.walk(v['schema'], f)
  File "/home/ahoorelbeke/venv/lib/python3.10/site-packages/pydantic/_internal/_core_utils.py", line 215, in walk
    return f(schema, self._walk)
  File "/home/ahoorelbeke/venv/lib/python3.10/site-packages/pydantic/_internal/_core_utils.py", line 515, in count_refs
    recurse(state['definitions'][ref], count_refs)
  File "/home/ahoorelbeke/venv/lib/python3.10/site-packages/pydantic/_internal/_core_utils.py", line 218, in _walk
    schema = self._schema_type_to_method[schema['type']](schema, f)
  File "/home/ahoorelbeke/venv/lib/python3.10/site-packages/pydantic/_internal/_core_utils.py", line 227, in _handle_other_schemas
    schema['schema'] = self.walk(sub_schema, f)  # type: ignore
  File "/home/ahoorelbeke/venv/lib/python3.10/site-packages/pydantic/_internal/_core_utils.py", line 215, in walk
    return f(schema, self._walk)
  File "/home/ahoorelbeke/venv/lib/python3.10/site-packages/pydantic/_internal/_core_utils.py", line 503, in count_refs
    return recurse(s, count_refs)
  File "/home/ahoorelbeke/venv/lib/python3.10/site-packages/pydantic/_internal/_core_utils.py", line 218, in _walk
    schema = self._schema_type_to_method[schema['type']](schema, f)
  File "/home/ahoorelbeke/venv/lib/python3.10/site-packages/pydantic/_internal/_core_utils.py", line 362, in handle_model_fields_schema
    replaced_field['schema'] = self.walk(v['schema'], f)
  File "/home/ahoorelbeke/venv/lib/python3.10/site-packages/pydantic/_internal/_core_utils.py", line 215, in walk
    return f(schema, self._walk)
  File "/home/ahoorelbeke/venv/lib/python3.10/site-packages/pydantic/_internal/_core_utils.py", line 503, in count_refs
    return recurse(s, count_refs)
  File "/home/ahoorelbeke/venv/lib/python3.10/site-packages/pydantic/_internal/_core_utils.py", line 218, in _walk
    schema = self._schema_type_to_method[schema['type']](schema, f)
  File "/home/ahoorelbeke/venv/lib/python3.10/site-packages/pydantic/_internal/_core_utils.py", line 227, in _handle_other_schemas
    schema['schema'] = self.walk(sub_schema, f)  # type: ignore
  File "/home/ahoorelbeke/venv/lib/python3.10/site-packages/pydantic/_internal/_core_utils.py", line 215, in walk
    return f(schema, self._walk)
  File "/home/ahoorelbeke/venv/lib/python3.10/site-packages/pydantic/_internal/_core_utils.py", line 515, in count_refs
    recurse(state['definitions'][ref], count_refs)
KeyError: '__main__.B:94275587272912'

Example Code

from pydantic import BaseModel


class A(BaseModel):
    a: int = None


class B(BaseModel):
    a_1: A = None
    a_2: A = None


class C(BaseModel):
    a: A = None
    b: B = None


class D(BaseModel):
    c_1: C = None
    c_2: C = None


class E(BaseModel):
    c: C

Python, Pydantic & OS Version

        pydantic version: 2.4.0
        pydantic-core version: 2.10.0
          pydantic-core build: profile=release pgo=true
                 install path: /home/ahoorelbeke/venv/lib/python3.10/site-packages/pydantic
               python version: 3.10.12 (main, Jun 11 2023, 05:26:28) [GCC 11.4.0]
                     platform: Linux-5.15.90.1-microsoft-standard-WSL2-x86_64-with-glibc2.35
             related packages: typing_extensions-4.7.1
@hoorelbeke-jimmy hoorelbeke-jimmy added bug V2 Bug related to Pydantic V2 unconfirmed Bug not yet confirmed as valid/applicable labels Sep 25, 2023
@davidhewitt
Copy link
Contributor

Also reported in #7523 (comment)

@lig
Copy link
Contributor

lig commented Sep 25, 2023

I've managed to simplify example a bit

from pydantic import BaseModel


class A(BaseModel):
    pass


class B(BaseModel):
    a_1: A = None
    a_2: A = None


class C(BaseModel):
    b: B = None


class D(BaseModel):
    c_1: C = None
    c_2: C = None


class E(BaseModel):
    c: C

Removing any attr in the example above makes code pass

@Fokko
Copy link

Fokko commented Sep 25, 2023

We're seeing this as well at PyIceberg: pola-rs/polars#11312

@adriangb
Copy link
Member

This should be fixed on main now (38bc2da). @hoorelbeke-jimmy, @Fokko could you try installing from main and see if it fixes things?

@Fokko
Copy link

Fokko commented Sep 26, 2023

Still seeing issues: apache/iceberg#8646

tests/conftest.py:58: in <module>
    from pyiceberg.catalog import Catalog
pyiceberg/catalog/__init__.py:42: in <module>
    from pyiceberg.serializers import ToOutputFile
pyiceberg/serializers.py:25: in <module>
    from pyiceberg.table.metadata import TableMetadata, TableMetadataUtil
pyiceberg/table/__init__.py:71: in <module>
    from pyiceberg.table.metadata import INITIAL_SEQUENCE_NUMBER, TableMetadata
pyiceberg/table/metadata.py:419: in <module>
    class TableMetadataWrapper(IcebergRootModel[TableMetadata]):
../../../../.cache/pypoetry/virtualenvs/pyiceberg-C6VdKk4a-py3.9/lib/python3.9/site-packages/pydantic/main.py:679: in __class_getitem__
    submodel = _generics.create_generic_submodel(model_name, origin, args, params)
../../../../.cache/pypoetry/virtualenvs/pyiceberg-C6VdKk4a-py3.9/lib/python3.9/site-packages/pydantic/_internal/_generics.py:142: in create_generic_submodel
    created_model = meta(
../../../../.cache/pypoetry/virtualenvs/pyiceberg-C6VdKk4a-py3.9/lib/python3.9/site-packages/pydantic/_internal/_model_construction.py:184: in __new__
    complete_model_class(
../../../../.cache/pypoetry/virtualenvs/pyiceberg-C6VdKk4a-py3.9/lib/python3.9/site-packages/pydantic/_internal/_model_construction.py:495: in complete_model_class
    schema = apply_discriminators(simplify_schema_references(schema))
../../../../.cache/pypoetry/virtualenvs/pyiceberg-C6VdKk4a-py3.9/lib/python3.9/site-packages/pydantic/_internal/_core_utils.py:481: in simplify_schema_references
    schema = walk_core_schema(schema, count_refs)
../../../../.cache/pypoetry/virtualenvs/pyiceberg-C6VdKk4a-py3.9/lib/python3.9/site-packages/pydantic/_internal/_core_utils.py:433: in walk_core_schema
    return f(schema.copy(), _dispatch)
../../../../.cache/pypoetry/virtualenvs/pyiceberg-C6VdKk4a-py3.9/lib/python3.9/site-packages/pydantic/_internal/_core_utils.py:477: in count_refs
    recurse(definitions[ref], count_refs)
../../../../.cache/pypoetry/virtualenvs/pyiceberg-C6VdKk4a-py3.9/lib/python3.9/site-packages/pydantic/_internal/_core_utils.py:209: in walk
    return f(schema, self._walk)
../../../../.cache/pypoetry/virtualenvs/pyiceberg-C6VdKk4a-py3.9/lib/python3.9/site-packages/pydantic/_internal/_core_utils.py:465: in count_refs
    return recurse(s, count_refs)
../../../../.cache/pypoetry/virtualenvs/pyiceberg-C6VdKk4a-py3.9/lib/python3.9/site-packages/pydantic/_internal/_core_utils.py:212: in _walk
    schema = self._schema_type_to_method[schema['type']](schema.copy(), f)
../../../../.cache/pypoetry/virtualenvs/pyiceberg-C6VdKk4a-py3.9/lib/python3.9/site-packages/pydantic/_internal/_core_utils.py:221: in _handle_other_schemas
    schema['schema'] = self.walk(sub_schema, f)  # type: ignore
../../../../.cache/pypoetry/virtualenvs/pyiceberg-C6VdKk4a-py3.9/lib/python3.9/site-packages/pydantic/_internal/_core_utils.py:209: in walk
    return f(schema, self._walk)
../../../../.cache/pypoetry/virtualenvs/pyiceberg-C6VdKk4a-py3.9/lib/python3.9/site-packages/pydantic/_internal/_core_utils.py:465: in count_refs
    return recurse(s, count_refs)
../../../../.cache/pypoetry/virtualenvs/pyiceberg-C6VdKk4a-py3.9/lib/python3.9/site-packages/pydantic/_internal/_core_utils.py:212: in _walk
    schema = self._schema_type_to_method[schema['type']](schema.copy(), f)
../../../../.cache/pypoetry/virtualenvs/pyiceberg-C6VdKk4a-py3.9/lib/python3.9/site-packages/pydantic/_internal/_core_utils.py:324: in handle_tagged_union_schema
    new_choices[k] = v if isinstance(v, (str, int)) else self.walk(v, f)
../../../../.cache/pypoetry/virtualenvs/pyiceberg-C6VdKk4a-py3.9/lib/python3.9/site-packages/pydantic/_internal/_core_utils.py:209: in walk
    return f(schema, self._walk)
../../../../.cache/pypoetry/virtualenvs/pyiceberg-C6VdKk4a-py3.9/lib/python3.9/site-packages/pydantic/_internal/_core_utils.py:477: in count_refs
    recurse(definitions[ref], count_refs)
../../../../.cache/pypoetry/virtualenvs/pyiceberg-C6VdKk4a-py3.9/lib/python3.9/site-packages/pydantic/_internal/_core_utils.py:212: in _walk
    schema = self._schema_type_to_method[schema['type']](schema.copy(), f)
../../../../.cache/pypoetry/virtualenvs/pyiceberg-C6VdKk4a-py3.9/lib/python3.9/site-packages/pydantic/_internal/_core_utils.py:221: in _handle_other_schemas
    schema['schema'] = self.walk(sub_schema, f)  # type: ignore
../../../../.cache/pypoetry/virtualenvs/pyiceberg-C6VdKk4a-py3.9/lib/python3.9/site-packages/pydantic/_internal/_core_utils.py:209: in walk
    return f(schema, self._walk)
../../../../.cache/pypoetry/virtualenvs/pyiceberg-C6VdKk4a-py3.9/lib/python3.9/site-packages/pydantic/_internal/_core_utils.py:465: in count_refs
    return recurse(s, count_refs)
../../../../.cache/pypoetry/virtualenvs/pyiceberg-C6VdKk4a-py3.9/lib/python3.9/site-packages/pydantic/_internal/_core_utils.py:212: in _walk
    schema = self._schema_type_to_method[schema['type']](schema.copy(), f)
../../../../.cache/pypoetry/virtualenvs/pyiceberg-C6VdKk4a-py3.9/lib/python3.9/site-packages/pydantic/_internal/_core_utils.py:221: in _handle_other_schemas
    schema['schema'] = self.walk(sub_schema, f)  # type: ignore
../../../../.cache/pypoetry/virtualenvs/pyiceberg-C6VdKk4a-py3.9/lib/python3.9/site-packages/pydantic/_internal/_core_utils.py:209: in walk
    return f(schema, self._walk)
../../../../.cache/pypoetry/virtualenvs/pyiceberg-C6VdKk4a-py3.9/lib/python3.9/site-packages/pydantic/_internal/_core_utils.py:465: in count_refs
    return recurse(s, count_refs)
../../../../.cache/pypoetry/virtualenvs/pyiceberg-C6VdKk4a-py3.9/lib/python3.9/site-packages/pydantic/_internal/_core_utils.py:212: in _walk
    schema = self._schema_type_to_method[schema['type']](schema.copy(), f)
../../../../.cache/pypoetry/virtualenvs/pyiceberg-C6VdKk4a-py3.9/lib/python3.9/site-packages/pydantic/_internal/_core_utils.py:221: in _handle_other_schemas
    schema['schema'] = self.walk(sub_schema, f)  # type: ignore
../../../../.cache/pypoetry/virtualenvs/pyiceberg-C6VdKk4a-py3.9/lib/python3.9/site-packages/pydantic/_internal/_core_utils.py:209: in walk
    return f(schema, self._walk)
../../../../.cache/pypoetry/virtualenvs/pyiceberg-C6VdKk4a-py3.9/lib/python3.9/site-packages/pydantic/_internal/_core_utils.py:465: in count_refs
    return recurse(s, count_refs)
../../../../.cache/pypoetry/virtualenvs/pyiceberg-C6VdKk4a-py3.9/lib/python3.9/site-packages/pydantic/_internal/_core_utils.py:212: in _walk
    schema = self._schema_type_to_method[schema['type']](schema.copy(), f)
../../../../.cache/pypoetry/virtualenvs/pyiceberg-C6VdKk4a-py3.9/lib/python3.9/site-packages/pydantic/_internal/_core_utils.py:221: in _handle_other_schemas
    schema['schema'] = self.walk(sub_schema, f)  # type: ignore
../../../../.cache/pypoetry/virtualenvs/pyiceberg-C6VdKk4a-py3.9/lib/python3.9/site-packages/pydantic/_internal/_core_utils.py:209: in walk
    return f(schema, self._walk)
../../../../.cache/pypoetry/virtualenvs/pyiceberg-C6VdKk4a-py3.9/lib/python3.9/site-packages/pydantic/_internal/_core_utils.py:465: in count_refs
    return recurse(s, count_refs)
../../../../.cache/pypoetry/virtualenvs/pyiceberg-C6VdKk4a-py3.9/lib/python3.9/site-packages/pydantic/_internal/_core_utils.py:212: in _walk
    schema = self._schema_type_to_method[schema['type']](schema.copy(), f)
../../../../.cache/pypoetry/virtualenvs/pyiceberg-C6VdKk4a-py3.9/lib/python3.9/site-packages/pydantic/_internal/_core_utils.py:221: in _handle_other_schemas
    schema['schema'] = self.walk(sub_schema, f)  # type: ignore
../../../../.cache/pypoetry/virtualenvs/pyiceberg-C6VdKk4a-py3.9/lib/python3.9/site-packages/pydantic/_internal/_core_utils.py:209: in walk
    return f(schema, self._walk)
../../../../.cache/pypoetry/virtualenvs/pyiceberg-C6VdKk4a-py3.9/lib/python3.9/site-packages/pydantic/_internal/_core_utils.py:465: in count_refs
    return recurse(s, count_refs)
../../../../.cache/pypoetry/virtualenvs/pyiceberg-C6VdKk4a-py3.9/lib/python3.9/site-packages/pydantic/_internal/_core_utils.py:212: in _walk
    schema = self._schema_type_to_method[schema['type']](schema.copy(), f)
../../../../.cache/pypoetry/virtualenvs/pyiceberg-C6VdKk4a-py3.9/lib/python3.9/site-packages/pydantic/_internal/_core_utils.py:221: in _handle_other_schemas
    schema['schema'] = self.walk(sub_schema, f)  # type: ignore
../../../../.cache/pypoetry/virtualenvs/pyiceberg-C6VdKk4a-py3.9/lib/python3.9/site-packages/pydantic/_internal/_core_utils.py:209: in walk
    return f(schema, self._walk)
../../../../.cache/pypoetry/virtualenvs/pyiceberg-C6VdKk4a-py3.9/lib/python3.9/site-packages/pydantic/_internal/_core_utils.py:465: in count_refs
    return recurse(s, count_refs)
../../../../.cache/pypoetry/virtualenvs/pyiceberg-C6VdKk4a-py3.9/lib/python3.9/site-packages/pydantic/_internal/_core_utils.py:212: in _walk
    schema = self._schema_type_to_method[schema['type']](schema.copy(), f)
../../../../.cache/pypoetry/virtualenvs/pyiceberg-C6VdKk4a-py3.9/lib/python3.9/site-packages/pydantic/_internal/_core_utils.py:221: in _handle_other_schemas
    schema['schema'] = self.walk(sub_schema, f)  # type: ignore
../../../../.cache/pypoetry/virtualenvs/pyiceberg-C6VdKk4a-py3.9/lib/python3.9/site-packages/pydantic/_internal/_core_utils.py:209: in walk
    return f(schema, self._walk)
../../../../.cache/pypoetry/virtualenvs/pyiceberg-C6VdKk4a-py3.9/lib/python3.9/site-packages/pydantic/_internal/_core_utils.py:465: in count_refs
    return recurse(s, count_refs)
../../../../.cache/pypoetry/virtualenvs/pyiceberg-C6VdKk4a-py3.9/lib/python3.9/site-packages/pydantic/_internal/_core_utils.py:212: in _walk
    schema = self._schema_type_to_method[schema['type']](schema.copy(), f)
../../../../.cache/pypoetry/virtualenvs/pyiceberg-C6VdKk4a-py3.9/lib/python3.9/site-packages/pydantic/_internal/_core_utils.py:356: in handle_model_fields_schema
    replaced_field['schema'] = self.walk(v['schema'], f)
../../../../.cache/pypoetry/virtualenvs/pyiceberg-C6VdKk4a-py3.9/lib/python3.9/site-packages/pydantic/_internal/_core_utils.py:209: in walk
    return f(schema, self._walk)
../../../../.cache/pypoetry/virtualenvs/pyiceberg-C6VdKk4a-py3.9/lib/python3.9/site-packages/pydantic/_internal/_core_utils.py:465: in count_refs
    return recurse(s, count_refs)
../../../../.cache/pypoetry/virtualenvs/pyiceberg-C6VdKk4a-py3.9/lib/python3.9/site-packages/pydantic/_internal/_core_utils.py:212: in _walk
    schema = self._schema_type_to_method[schema['type']](schema.copy(), f)
../../../../.cache/pypoetry/virtualenvs/pyiceberg-C6VdKk4a-py3.9/lib/python3.9/site-packages/pydantic/_internal/_core_utils.py:221: in _handle_other_schemas
    schema['schema'] = self.walk(sub_schema, f)  # type: ignore
../../../../.cache/pypoetry/virtualenvs/pyiceberg-C6VdKk4a-py3.9/lib/python3.9/site-packages/pydantic/_internal/_core_utils.py:209: in walk
    return f(schema, self._walk)
../../../../.cache/pypoetry/virtualenvs/pyiceberg-C6VdKk4a-py3.9/lib/python3.9/site-packages/pydantic/_internal/_core_utils.py:465: in count_refs
    return recurse(s, count_refs)
../../../../.cache/pypoetry/virtualenvs/pyiceberg-C6VdKk4a-py3.9/lib/python3.9/site-packages/pydantic/_internal/_core_utils.py:212: in _walk
    schema = self._schema_type_to_method[schema['type']](schema.copy(), f)
../../../../.cache/pypoetry/virtualenvs/pyiceberg-C6VdKk4a-py3.9/lib/python3.9/site-packages/pydantic/_internal/_core_utils.py:256: in handle_list_schema
    schema['items_schema'] = self.walk(items_schema, f)
../../../../.cache/pypoetry/virtualenvs/pyiceberg-C6VdKk4a-py3.9/lib/python3.9/site-packages/pydantic/_internal/_core_utils.py:209: in walk
    return f(schema, self._walk)
../../../../.cache/pypoetry/virtualenvs/pyiceberg-C6VdKk4a-py3.9/lib/python3.9/site-packages/pydantic/_internal/_core_utils.py:477: in count_refs
    recurse(definitions[ref], count_refs)
../../../../.cache/pypoetry/virtualenvs/pyiceberg-C6VdKk4a-py3.9/lib/python3.9/site-packages/pydantic/_internal/_core_utils.py:212: in _walk
    schema = self._schema_type_to_method[schema['type']](schema.copy(), f)
../../../../.cache/pypoetry/virtualenvs/pyiceberg-C6VdKk4a-py3.9/lib/python3.9/site-packages/pydantic/_internal/_core_utils.py:221: in _handle_other_schemas
    schema['schema'] = self.walk(sub_schema, f)  # type: ignore
../../../../.cache/pypoetry/virtualenvs/pyiceberg-C6VdKk4a-py3.9/lib/python3.9/site-packages/pydantic/_internal/_core_utils.py:209: in walk
    return f(schema, self._walk)
../../../../.cache/pypoetry/virtualenvs/pyiceberg-C6VdKk4a-py3.9/lib/python3.9/site-packages/pydantic/_internal/_core_utils.py:465: in count_refs
    return recurse(s, count_refs)
../../../../.cache/pypoetry/virtualenvs/pyiceberg-C6VdKk4a-py3.9/lib/python3.9/site-packages/pydantic/_internal/_core_utils.py:212: in _walk
    schema = self._schema_type_to_method[schema['type']](schema.copy(), f)
../../../../.cache/pypoetry/virtualenvs/pyiceberg-C6VdKk4a-py3.9/lib/python3.9/site-packages/pydantic/_internal/_core_utils.py:221: in _handle_other_schemas
    schema['schema'] = self.walk(sub_schema, f)  # type: ignore
../../../../.cache/pypoetry/virtualenvs/pyiceberg-C6VdKk4a-py3.9/lib/python3.9/site-packages/pydantic/_internal/_core_utils.py:209: in walk
    return f(schema, self._walk)
../../../../.cache/pypoetry/virtualenvs/pyiceberg-C6VdKk4a-py3.9/lib/python3.9/site-packages/pydantic/_internal/_core_utils.py:465: in count_refs
    return recurse(s, count_refs)
../../../../.cache/pypoetry/virtualenvs/pyiceberg-C6VdKk4a-py3.9/lib/python3.9/site-packages/pydantic/_internal/_core_utils.py:212: in _walk
    schema = self._schema_type_to_method[schema['type']](schema.copy(), f)
../../../../.cache/pypoetry/virtualenvs/pyiceberg-C6VdKk4a-py3.9/lib/python3.9/site-packages/pydantic/_internal/_core_utils.py:356: in handle_model_fields_schema
    replaced_field['schema'] = self.walk(v['schema'], f)
../../../../.cache/pypoetry/virtualenvs/pyiceberg-C6VdKk4a-py3.9/lib/python3.9/site-packages/pydantic/_internal/_core_utils.py:209: in walk
    return f(schema, self._walk)
../../../../.cache/pypoetry/virtualenvs/pyiceberg-C6VdKk4a-py3.9/lib/python3.9/site-packages/pydantic/_internal/_core_utils.py:465: in count_refs
    return recurse(s, count_refs)
../../../../.cache/pypoetry/virtualenvs/pyiceberg-C6VdKk4a-py3.9/lib/python3.9/site-packages/pydantic/_internal/_core_utils.py:212: in _walk
    schema = self._schema_type_to_method[schema['type']](schema.copy(), f)
../../../../.cache/pypoetry/virtualenvs/pyiceberg-C6VdKk4a-py3.9/lib/python3.9/site-packages/pydantic/_internal/_core_utils.py:221: in _handle_other_schemas
    schema['schema'] = self.walk(sub_schema, f)  # type: ignore
../../../../.cache/pypoetry/virtualenvs/pyiceberg-C6VdKk4a-py3.9/lib/python3.9/site-packages/pydantic/_internal/_core_utils.py:209: in walk
    return f(schema, self._walk)
../../../../.cache/pypoetry/virtualenvs/pyiceberg-C6VdKk4a-py3.9/lib/python3.9/site-packages/pydantic/_internal/_core_utils.py:465: in count_refs
    return recurse(s, count_refs)
../../../../.cache/pypoetry/virtualenvs/pyiceberg-C6VdKk4a-py3.9/lib/python3.9/site-packages/pydantic/_internal/_core_utils.py:212: in _walk
    schema = self._schema_type_to_method[schema['type']](schema.copy(), f)
../../../../.cache/pypoetry/virtualenvs/pyiceberg-C6VdKk4a-py3.9/lib/python3.9/site-packages/pydantic/_internal/_core_utils.py:283: in handle_tuple_variable_schema
    schema['items_schema'] = self.walk(items_schema, f)
../../../../.cache/pypoetry/virtualenvs/pyiceberg-C6VdKk4a-py3.9/lib/python3.9/site-packages/pydantic/_internal/_core_utils.py:209: in walk
    return f(schema, self._walk)
../../../../.cache/pypoetry/virtualenvs/pyiceberg-C6VdKk4a-py3.9/lib/python3.9/site-packages/pydantic/_internal/_core_utils.py:477: in count_refs
    recurse(definitions[ref], count_refs)
../../../../.cache/pypoetry/virtualenvs/pyiceberg-C6VdKk4a-py3.9/lib/python3.9/site-packages/pydantic/_internal/_core_utils.py:212: in _walk
    schema = self._schema_type_to_method[schema['type']](schema.copy(), f)
../../../../.cache/pypoetry/virtualenvs/pyiceberg-C6VdKk4a-py3.9/lib/python3.9/site-packages/pydantic/_internal/_core_utils.py:221: in _handle_other_schemas
    schema['schema'] = self.walk(sub_schema, f)  # type: ignore
../../../../.cache/pypoetry/virtualenvs/pyiceberg-C6VdKk4a-py3.9/lib/python3.9/site-packages/pydantic/_internal/_core_utils.py:209: in walk
    return f(schema, self._walk)
../../../../.cache/pypoetry/virtualenvs/pyiceberg-C6VdKk4a-py3.9/lib/python3.9/site-packages/pydantic/_internal/_core_utils.py:465: in count_refs
    return recurse(s, count_refs)
../../../../.cache/pypoetry/virtualenvs/pyiceberg-C6VdKk4a-py3.9/lib/python3.9/site-packages/pydantic/_internal/_core_utils.py:212: in _walk
    schema = self._schema_type_to_method[schema['type']](schema.copy(), f)
../../../../.cache/pypoetry/virtualenvs/pyiceberg-C6VdKk4a-py3.9/lib/python3.9/site-packages/pydantic/_internal/_core_utils.py:221: in _handle_other_schemas
    schema['schema'] = self.walk(sub_schema, f)  # type: ignore
../../../../.cache/pypoetry/virtualenvs/pyiceberg-C6VdKk4a-py3.9/lib/python3.9/site-packages/pydantic/_internal/_core_utils.py:209: in walk
    return f(schema, self._walk)
../../../../.cache/pypoetry/virtualenvs/pyiceberg-C6VdKk4a-py3.9/lib/python3.9/site-packages/pydantic/_internal/_core_utils.py:465: in count_refs
    return recurse(s, count_refs)
../../../../.cache/pypoetry/virtualenvs/pyiceberg-C6VdKk4a-py3.9/lib/python3.9/site-packages/pydantic/_internal/_core_utils.py:212: in _walk
    schema = self._schema_type_to_method[schema['type']](schema.copy(), f)
../../../../.cache/pypoetry/virtualenvs/pyiceberg-C6VdKk4a-py3.9/lib/python3.9/site-packages/pydantic/_internal/_core_utils.py:356: in handle_model_fields_schema
    replaced_field['schema'] = self.walk(v['schema'], f)
../../../../.cache/pypoetry/virtualenvs/pyiceberg-C6VdKk4a-py3.9/lib/python3.9/site-packages/pydantic/_internal/_core_utils.py:209: in walk
    return f(schema, self._walk)
../../../../.cache/pypoetry/virtualenvs/pyiceberg-C6VdKk4a-py3.9/lib/python3.9/site-packages/pydantic/_internal/_core_utils.py:477: in count_refs
    recurse(definitions[ref], count_refs)
E   KeyError: 'pyiceberg.types.IcebergType:[944](https://github.com/apache/iceberg/actions/runs/6309187940/job/17128641305?pr=8647#step:7:945)05463474192'
make: *** [Makefile:67: test-coverage] Error 4

The line numbers have changed, so it looks like it is installing the latest version. @hoorelbeke-jimmy any success on your end?

@hoorelbeke-jimmy
Copy link
Author

This should be fixed on main now (38bc2da). @hoorelbeke-jimmy, @Fokko could you try installing from main and see if it fixes things?

My snippet works when installing pydantic from main

@kefahi
Copy link

kefahi commented Sep 26, 2023

I, too, confirm still facing the same issue against 2.4.0 and that running off the main branch solves it.

pip uninstall pydantic
pip install -U git+https://github.com/pydantic/pydantic.git@main

@davidhewitt
Copy link
Contributor

We are planning to release v2.4.1 with the current fix on main and then investigate further the iceberg case above. Hopefully this mitigates the issue for the majority of folks.

@adriangb
Copy link
Member

Still seeing issues: apache/iceberg#8646

I'm going to take a look at this.

@Fokko
Copy link

Fokko commented Sep 26, 2023

Appreciate it, let me know if there is anything I can help with

@JrooTJunior
Copy link

his should be fixed on main now (38bc2da).

It works for me now, aiogram fixed by this update. Thanks!
Waiting for the release in pypi.

@kefahi
Copy link

kefahi commented Sep 26, 2023

I verified now from my end ( via pip install of the latest version 2.4.1 - not via git@main).

It works flawlessly!

😍

Thanks!

@nmichlo
Copy link

nmichlo commented Sep 27, 2023

This still seems broken for me in v2.4.1, reverting to v2.3.0 solved things.

@adriangb
Copy link
Member

@nmichlo can you try main (or 2.4.2 once it comes out)?

@nmichlo
Copy link

nmichlo commented Sep 28, 2023

v2.4.2 is working @adriangb, thank you!

object-Object added a commit to hexdoc-dev/hexdoc that referenced this issue Nov 3, 2023
object-Object added a commit to object-Object/HexMod that referenced this issue Nov 21, 2023
Squashed commit of the following:

commit 04f86af56dcae682a70ef31f97e9ab99e65af40a
Author: object-Object <object@objectobject.ca>
Date:   Fri Nov 3 02:52:49 2023 -0400

    Refactor hexdoc into a separate repo

commit 8ac0cd387323ad81aa0fd19ebf2df78a92677d97
Author: object-Object <object@objectobject.ca>
Date:   Thu Nov 2 01:38:14 2023 -0400

    Move most of the loading out of Book validation

commit ad2e9c7e2a1a13fd2ad5fc043584d5c16fa27b50
Author: object-Object <object@objectobject.ca>
Date:   Thu Nov 2 00:29:12 2023 -0400

    Refactor patchi text module

commit 47a8ef86dde96effc13f7405174163b7a7457ab5
Author: object-Object <object@objectobject.ca>
Date:   Wed Nov 1 23:43:32 2023 -0400

    Ensure all action-styled text has a link to the action

commit 4b90aca4e3cd996cf46a57fe3b35c5881f43a6b0
Author: object-Object <object@objectobject.ca>
Date:   Sun Oct 29 17:32:02 2023 -0400

    Fix minecraft-render version

commit 511daaac63ba2b3630188e02e32688fdef088565
Author: object-Object <object@objectobject.ca>
Date:   Sun Oct 29 17:29:41 2023 -0400

    Add quick integration with minecraft-render

commit 7d179e0f22f6ea6bcc0b8a78b1c6247f39a7c760
Author: object-Object <object@objectobject.ca>
Date:   Sun Oct 29 17:05:36 2023 -0400

    Refactor resource dirs into separate file

commit b5071ea6c83f3573ce19cb9459b1b088137632eb
Author: object-Object <object@objectobject.ca>
Date:   Fri Oct 27 01:53:04 2023 -0400

    oops

commit 8495e98e2974235e0e7feb3340cf26e2223de0c7
Author: object-Object <object@objectobject.ca>
Date:   Thu Oct 26 01:54:26 2023 -0400

    Fix sitemap breaking for legacy books

commit 85b30e09fcb363fe91415cbf39c4b2bf72c89bb4
Author: object-Object <object@objectobject.ca>
Date:   Thu Oct 26 01:51:37 2023 -0400

    Update snapshots

commit 0c293cab84f5ce371f364ec7a51f94c75e3fe375
Author: object-Object <object@objectobject.ca>
Date:   Thu Oct 26 01:49:36 2023 -0400

    Localize language names

commit 1539bb710d1cde110de51886d5821366f2381e34
Author: object-Object <object@objectobject.ca>
Date:   Thu Oct 26 01:15:20 2023 -0400

    Recommend Cruft

commit a732cb2a49724cc6e7b83c31adae0b193e33d227
Author: object-Object <object@objectobject.ca>
Date:   Thu Oct 26 01:06:48 2023 -0400

    Clean up nodemon config and add to cookiecutter

commit 36ef3cf771ab81810041faad19118012d102da7b
Author: object-Object <object@objectobject.ca>
Date:   Thu Oct 26 01:02:50 2023 -0400

    Add default values for all CLI arguments

commit 76ecf500f530e25ca1e420625333ed69d4588f5a
Author: object-Object <object@objectobject.ca>
Date:   Thu Oct 26 00:53:29 2023 -0400

    Export all languages

commit af3f2716e50292606becd54ccaf182164707ff81
Author: object-Object <object@objectobject.ca>
Date:   Thu Oct 26 00:30:35 2023 -0400

    Remove commented out code

commit 863089d1ac48a74226effbfc16bdc8faab0b5aff
Author: object-Object <object@objectobject.ca>
Date:   Thu Oct 26 00:23:58 2023 -0400

    Improve paragraph style names and add comments

commit ae4a1fa021dfb724be02c9954149127cc2982ec2
Author: object-Object <object@objectobject.ca>
Date:   Thu Oct 26 00:20:59 2023 -0400

    Fix weird formatting in the welcome component

commit 4b19f3a624892b6b2ce111fafbc82eabd75eb546
Author: object-Object <object@objectobject.ca>
Date:   Wed Oct 25 23:56:36 2023 -0400

    Move all style formatting into Jinja

commit 5a8bf87218120ef704b2e8603ee27ec9e72f2fff
Author: object-Object <object@objectobject.ca>
Date:   Wed Oct 25 22:39:54 2023 -0400

    Remove most of the html references outside of patchouli.text

commit 3afcc4c2e7c6e1751d56d45847fd743a0831a546
Author: object-Object <object@objectobject.ca>
Date:   Wed Oct 25 03:05:07 2023 -0400

    Run build and test in parallel

commit 2fa835dfa89e5f25768ee774c8258deec90efcb2
Author: object-Object <object@objectobject.ca>
Date:   Wed Oct 25 03:01:39 2023 -0400

    Sort animations

commit fb16bd787576533187099f1994c18bfff59fcb80
Author: object-Object <object@objectobject.ca>
Date:   Wed Oct 25 02:56:03 2023 -0400

    Monkeypatch environment variables for consistency

commit 5422b7a9286349f196b81c909022484cf34f54b6
Author: object-Object <object@objectobject.ca>
Date:   Wed Oct 25 02:45:26 2023 -0400

    Fix missing environment variable for tests

commit b6b23f70400a11bfbedada5d088855b46a0f04a4
Author: object-Object <object@objectobject.ca>
Date:   Wed Oct 25 02:38:30 2023 -0400

    Add hook to modify Jinja env

commit e930333fc286ce39484f71a00b1fc6e3d7e3ce3d
Author: object-Object <object@objectobject.ca>
Date:   Wed Oct 25 00:25:51 2023 -0400

    Update snapshot tests to only save snapshot for one render strategy

commit 8bb3ff52666f82d0168f8991543ffbe79e0eca3a
Author: object-Object <object@objectobject.ca>
Date:   Wed Oct 25 00:12:41 2023 -0400

    Update snapshots

commit 479d8f15f6e612a257731ee806b239f5323fb1d0
Author: object-Object <object@objectobject.ca>
Date:   Tue Oct 24 23:56:41 2023 -0400

    Add failing snapshot tests from before template refactor

commit 13369edb2646f1f8b194397d083506d61c402473
Author: object-Object <object@objectobject.ca>
Date:   Tue Oct 24 19:58:35 2023 -0400

    Update nodemon config

commit 6c0d7668695edc25e8875f23cbad6bd574ff9711
Author: object-Object <object@objectobject.ca>
Date:   Tue Oct 24 03:24:04 2023 -0400

    Refactor base rendered templates

commit e5586cf68f289857e64423a1d30215fd3d121eda
Author: object-Object <object@objectobject.ca>
Date:   Tue Oct 24 03:01:02 2023 -0400

    Add update_template_args hook

commit 50e71b79c2bb3dbb2f381f1717ca1cefbc96c4c0
Author: object-Object <object@objectobject.ca>
Date:   Tue Oct 24 02:45:01 2023 -0400

    Bump version

commit a5b905cb9f2bfeea4ba1a6042f23434ba36a26f9
Author: object-Object <object@objectobject.ca>
Date:   Thu Oct 19 00:08:34 2023 -0400

    Add namespaced template imports

commit 5c152a4c30ea1dce7ef8a35f5dd52ce1f02584ae
Author: object-Object <object@objectobject.ca>
Date:   Wed Oct 18 20:21:27 2023 -0400

    Actually trigger on tag push

commit 652b2488ac470c348600c7cf97599aae2cb137ee
Author: object-Object <object@objectobject.ca>
Date:   Wed Oct 18 20:06:42 2023 -0400

    Handle localize_key with the key. at the start

commit abd3956ec0a7c423af5f521a8ddff59460da9e21
Author: object-Object <object@objectobject.ca>
Date:   Tue Oct 24 02:40:55 2023 -0400

    Allow no textures

commit 42d338cfe75a19e72d477b9263ffbd38bd8e64ab
Author: object-Object <object@objectobject.ca>
Date:   Tue Oct 24 02:31:05 2023 -0400

    Use PydanticOrderedSet for tags

commit 6b4917c371a3e50919f68e8bb53f415228d26d72
Author: object-Object <object@objectobject.ca>
Date:   Tue Oct 24 00:11:05 2023 -0400

    Reenable all Pyright lints and refactor InternallyTaggedUnion

commit f612f181fc4365c5862171500c87c6bd24f79df5
Author: object-Object <object@objectobject.ca>
Date:   Wed Oct 18 18:38:04 2023 -0400

    Revert "Build web book from refs/heads/docgen-2-1.20"

    This reverts commit 9c388c9135d77467df09d8233b8d7986f9a38dcc.

commit 9c388c9135d77467df09d8233b8d7986f9a38dcc
Author: object-Object <object-Object@users.noreply.github.com>
Date:   Wed Oct 18 22:35:19 2023 +0000

    Build web book from refs/heads/docgen-2-1.20

commit 28825e01d86cc59d8a2220397ce4da65e986bb81
Author: object-Object <object@objectobject.ca>
Date:   Wed Oct 18 00:51:11 2023 -0400

    Improve addon docs/template

commit 505d083a4e10274af4520c1ec74b8a9a903aaeb0
Author: object-Object <object@objectobject.ca>
Date:   Tue Oct 17 19:00:11 2023 -0400

    Update hatch-gradle-version

commit 92b3b70d86a9c6392da78dc0071129979650f2c4
Author: object-Object <object@objectobject.ca>
Date:   Fri Oct 13 01:24:51 2023 -0400

    Remove allowed missing textures

commit 4876219b6142005d3534000455c9f1d23f3d9e58
Author: object-Object <object@objectobject.ca>
Date:   Fri Oct 13 01:23:10 2023 -0400

    Fix 3D asset scaling

commit 2fdf77bfdc4f4a9054d9384ad610d9ef3cfff465
Author: object-Object <object@objectobject.ca>
Date:   Fri Oct 13 01:16:39 2023 -0400

    Fix skillet loading

commit 4546bfb3a9a2109d241eeb3c4eb2cea4bf808b71
Author: object-Object <object@objectobject.ca>
Date:   Fri Oct 13 01:16:28 2023 -0400

    Move hexdoc resources out of _export

commit 5a7d0891cce786eafb0b5433f2add72ffc602d04
Author: object-Object <object@objectobject.ca>
Date:   Fri Oct 13 01:00:41 2023 -0400

    Reduce metadata file sizes

commit c1edd71c252446bdc558e0825ebef23bbc588fd9
Author: object-Object <object@objectobject.ca>
Date:   Thu Oct 12 20:20:12 2023 -0400

    Render mod_conditional ingredients, assorted schema improvements

commit 6a6b0e0d34a4fd36fbefde891197ec695ba40e57
Author: object-Object <object@objectobject.ca>
Date:   Thu Oct 12 19:16:09 2023 -0400

    Skip the failing test for now

commit 26aad5496a27d6bfcac0981ec3a035ace06462a3
Author: object-Object <object@objectobject.ca>
Date:   Thu Oct 12 19:14:39 2023 -0400

    Disable selecting obfuscated content

commit b12ef2b8f772981130d02249f76d4a1df694e79c
Merge: 948a59fa 0812964a
Author: [object Object] <object@objectobject.ca>
Date:   Fri Oct 13 00:11:23 2023 -0400

    Merge pull request #5 from gamma-02/object-Object_docgen-2-1.20

    good hell that was *HARD*

commit 0812964aeb1479e491409f129a17f06e30341d90
Author: Gamma_02 <66752879+gamma-02@users.noreply.github.com>
Date:   Thu Oct 12 18:22:35 2023 -0700

    fixed button texture

commit 284ee22e4dcfcb6ee4422f04b0d7206af40c5459
Author: gamma_02 <gammagames06@gmail.com>
Date:   Thu Oct 12 17:19:22 2023 -0700

    Added isometric renders of block models rendered in-game try #2 with funny pan

commit 0bbeefac17be67d285eec1b2a8e35a0da276d807
Author: gamma_02 <gammagames06@gmail.com>
Date:   Thu Oct 12 16:41:36 2023 -0700

    Added isometric renders of block models rendered in-game

commit 948a59fa6763c76ec204e282bd44340b0c90dd70
Author: object-Object <object@objectobject.ca>
Date:   Tue Oct 10 01:03:26 2023 -0400

    Refactor models

commit b7fbd2991684f66c651183e413f99ee215c90716
Author: object-Object <object@objectobject.ca>
Date:   Tue Oct 10 01:00:59 2023 -0400

    Add missing __init__.py

commit 98a68e1f15543b51f4fdd2e7a3c12ecb57061540
Author: object-Object <object@objectobject.ca>
Date:   Tue Oct 10 00:58:55 2023 -0400

    Refactor most of the core logic out of utils

commit 5b26c1d5494ec940f75e79ccdbbacea49759817d
Author: object-Object <object@objectobject.ca>
Date:   Mon Oct 9 22:10:36 2023 -0400

    Add test case for link entirely within colour

commit 84185805c36d93667b936e2dfcbee8fdf1ddbc5e
Author: object-Object <object@objectobject.ca>
Date:   Mon Oct 9 21:54:45 2023 -0400

    Fix test folder structure

commit efa34fcf652a9e11df805820ea95998889d465a5
Author: object-Object <object@objectobject.ca>
Date:   Mon Oct 9 21:40:26 2023 -0400

    Run pytest in CI

commit 36414b15929c9942d825fdfa340380f8f432ef8b
Author: object-Object <object@objectobject.ca>
Date:   Mon Oct 9 21:40:17 2023 -0400

    Add (failing) test case for the link lexing issue

commit 2517b2daa1b7456f64d625262cfef7d576df48b5
Author: object-Object <object@objectobject.ca>
Date:   Mon Oct 9 20:35:13 2023 -0400

    Improve watch mode behaviour

commit a92a4716a5b4c37ba78de028f3f9d0bc39449152
Author: object-Object <object@objectobject.ca>
Date:   Mon Oct 9 20:35:00 2023 -0400

    Handle close link tag

commit e91236a2bd8e3723b20205d6914e7a2042d6d78d
Author: object-Object <object@objectobject.ca>
Date:   Mon Oct 9 18:12:55 2023 -0400

    Fix missing close style tag

commit 6b94534f270dca648812e3df7b55085604b24b66
Author: object-Object <object@objectobject.ca>
Date:   Mon Oct 9 17:56:03 2023 -0400

    Add alt text to image page

commit 8227d2378269cf5dc252a9c3b03206320df51694
Author: object-Object <object@objectobject.ca>
Date:   Mon Oct 9 16:56:18 2023 -0400

    Fix multi-textures with noscript

commit a008bcab68af61512c09e031bec35760788898dd
Author: object-Object <object@objectobject.ca>
Date:   Mon Oct 9 16:33:57 2023 -0400

    Gaslight on tab switch, fix incorrect gaslight count when visible on load

commit 4720e1c5c7b8b90be63a2c794c6e4860918e9528
Author: object-Object <object@objectobject.ca>
Date:   Mon Oct 9 16:09:58 2023 -0400

    Remove colorizers from allowed missing textures

commit 319e54fb440083d76e3a844daace6fa988aca38e
Author: object-Object <object@objectobject.ca>
Date:   Mon Oct 9 16:07:45 2023 -0400

    add gaslighting !

commit c996b0319172ad71edfded96cdff6c5cd1d21138
Author: object-Object <object@objectobject.ca>
Date:   Sun Oct 8 21:46:32 2023 -0400

    Add spotlight textures

commit f63746270b4be38192231b57cbe88970ae40a5f6
Author: object-Object <object@objectobject.ca>
Date:   Sun Oct 8 21:01:33 2023 -0400

    Group recipe pages

commit 2c26234bb5257faadd3a63f9c87ac38709b6360f
Author: object-Object <object@objectobject.ca>
Date:   Sun Oct 8 18:19:26 2023 -0400

    Speed up item cycling and extend crafting in crafting_multi

commit 6f105bdcb8ce733d6f8059d17fbbdb944f9d5b19
Author: object-Object <object@objectobject.ca>
Date:   Sun Oct 8 18:05:58 2023 -0400

    Fix vertical align

commit 096ae917e4ed707788846cdd4e0c8414e7c40cb2
Author: object-Object <object@objectobject.ca>
Date:   Sun Oct 8 17:57:49 2023 -0400

    Slightly better crafting alignment i guess

commit 85f9d6cf21440a2f644ad7d0f8911c213467fb22
Author: object-Object <object@objectobject.ca>
Date:   Sun Oct 8 16:45:37 2023 -0400

    Load all textures in a cycle to prevent flickering

commit 00f7131d6fad8696ccd78626ca0116f35dae167c
Author: object-Object <object@objectobject.ca>
Date:   Sun Oct 8 16:30:51 2023 -0400

    Maybe optimize out some of the querySelectorAll

commit 20972c9b9364a60793adf3e134c51b8cd0fade66
Author: object-Object <object@objectobject.ca>
Date:   Sun Oct 8 16:16:39 2023 -0400

    Hopefully fix asset urls

commit 39f429c35d3d1ac1a8676467e8b67601ea0a75f3
Author: object-Object <object@objectobject.ca>
Date:   Sun Oct 8 15:58:38 2023 -0400

    Fully handle array ingredients

commit dab57062b4afc1c0a11beaddc21d8d030690b019
Author: object-Object <object@objectobject.ca>
Date:   Sun Oct 8 13:11:50 2023 -0400

    Add animated textures, refactor a lot of things

commit 8200465cdf92919ed4a8f03d185c1bcacf97ad47
Author: object-Object <object@objectobject.ca>
Date:   Sat Oct 7 17:39:35 2023 -0400

    Fix more i18n

commit b8223714b65b3be382f6b0dbeb903f73a8259fb9
Author: object-Object <object@objectobject.ca>
Date:   Sat Oct 7 17:27:10 2023 -0400

    Add Minecraft and EMI translations, add copyright disclaimer, refactor contextvars

commit 9c8ecdc2a37304877b0c8e3f2d51afb5bcf5097a
Author: object-Object <object@objectobject.ca>
Date:   Thu Oct 5 23:58:05 2023 -0400

    Refactor out InlineIDModel and prep for model loading

commit 085c61a0eb3d658f9dc05718551570ce2210e785
Author: object-Object <object@objectobject.ca>
Date:   Sun Oct 1 02:33:37 2023 -0400

    Re-add crafting blockquote style

commit 9cb66e40c44cb6cf569c0e4918314b334fe06b3f
Author: object-Object <object@objectobject.ca>
Date:   Sun Oct 1 02:18:19 2023 -0400

    Temporarily allow missing during export

commit 0f6050fccadd12c1f2860126f27df5100f97ac73
Author: object-Object <object@objectobject.ca>
Date:   Sun Oct 1 02:15:01 2023 -0400

    Add WIP crafting table rendering

commit aa7d927e28ce2dc00c859b0f5d72c6f781576cc2
Author: object-Object <object@objectobject.ca>
Date:   Sun Oct 1 00:30:20 2023 -0400

    Run xplat datagen

commit ce1939644c0e3896d45c107bce01b539591878e2
Author: object-Object <object@objectobject.ca>
Date:   Sat Sep 30 02:08:31 2023 -0400

    Update command examples in READMEs

commit 5755d922e7a2eb5acb8014c8d6892cf52d0e9de2
Author: object-Object <object@objectobject.ca>
Date:   Sat Sep 30 01:41:40 2023 -0400

    Fix ReleaseOption variable name

commit e43fcb48e85e0b47579d84e2f225eb9e171d6592
Author: object-Object <object@objectobject.ca>
Date:   Sat Sep 30 01:30:29 2023 -0400

    fix props path

commit 2393e53bc294bad112d4371dbfcfffb9fe610fe2
Author: object-Object <object@objectobject.ca>
Date:   Sat Sep 30 01:26:57 2023 -0400

    Fix export lang selection and use envvars for some options

commit 8ae198f00a71672f43b6e2592927c8efce285bf4
Author: object-Object <object@objectobject.ca>
Date:   Fri Sep 29 22:52:30 2023 -0400

    Use Typer for CLI and implement hexdoc serve

commit 63e8a44db108a876f6eb223173e186fcb70f69d3
Author: object-Object <object@objectobject.ca>
Date:   Fri Sep 29 20:51:43 2023 -0400

    Move stylesheet to separate file

commit 95a229ad5e681ce4732ceed275607f875245570b
Author: object-Object <object@objectobject.ca>
Date:   Fri Sep 29 02:18:09 2023 -0400

    Remove base_asset_urls

commit af2f4f7160388f11a0b09b09eae1d835ce2e05a3
Author: object-Object <object@objectobject.ca>
Date:   Tue Sep 26 01:55:19 2023 -0400

    Fix macros not actually being optional

commit 630f4bc02a2c6c306b2b7c57f3bff982c2f9afa4
Author: object-Object <object-Object@users.noreply.github.com>
Date:   Tue Sep 26 01:59:56 2023 +0000

    Build web book from refs/heads/docgen-2-1.20

commit 0c3ce02a154e9dd89f1b6955ad6e6ee30e82c036
Author: object-Object <object@objectobject.ca>
Date:   Mon Sep 25 21:51:44 2023 -0400

    Add negative dependency for Pydantic 2.4.0

    https://github.com/pydantic/pydantic/issues/7611

commit 68921389edbe317584d054240e5ad284b077eb06
Author: object-Object <object@objectobject.ca>
Date:   Mon Sep 25 21:35:26 2023 -0400

    Fix hexdummy pattern stub regex and duplicated entries

commit 485d7f9d338aa1dd6e7ac61847d6690d9130840c
Author: object-Object <object@objectobject.ca>
Date:   Mon Sep 25 21:34:54 2023 -0400

    Update cookiecutter lints

commit 476cd7ce05e7083c0197ccc6c06a89b75e3f191d
Author: object-Object <object@objectobject.ca>
Date:   Mon Sep 25 00:41:03 2023 -0400

    Re-add tag trigger for PyPI release

commit ff9dc7921c792aea8f1188a0ab11b8d3dc1eaa52
Author: object-Object <object@objectobject.ca>
Date:   Sun Sep 24 22:24:45 2023 -0400

    Fix reusable workflow sub-action

commit 343e3366bb7281871598fbfd0015e4c2eba56f8a
Author: object-Object <object@objectobject.ca>
Date:   Sun Sep 24 22:21:12 2023 -0400

    Fix cookiecutter workflow syntax error

commit edbede5f1dfa5a22dfecc9f30c8e47ae45d08e9f
Author: object-Object <object@objectobject.ca>
Date:   Sun Sep 24 22:16:05 2023 -0400

    Reorder cookiecutter template variables

commit c49a15ef248601f4eccfd0447ef510ef2e3397b5
Author: object-Object <object-Object@users.noreply.github.com>
Date:   Mon Sep 25 02:13:53 2023 +0000

    Build web book from refs/heads/docgen-2-1.20

commit 4356643658ac9ff60c89d7f402bda05cbeb5bb88
Author: object-Object <object@objectobject.ca>
Date:   Sun Sep 24 22:12:57 2023 -0400

    Checkout in publish so we can add the tag

commit b78834c8ec13c0ab5ed0b63e0f0a3699b626252a
Author: object-Object <object-Object@users.noreply.github.com>
Date:   Mon Sep 25 02:09:37 2023 +0000

    Build web book from refs/heads/docgen-2-1.20

commit 6647e75bb0b8ba32013ab5051c8f6ce6958628c5
Author: object-Object <object@objectobject.ca>
Date:   Sun Sep 24 22:08:07 2023 -0400

    Rename reusable workflow

commit acac3c6e67f41d400a5e0c70b3d5c7d1fdc8d88b
Author: object-Object <object@objectobject.ca>
Date:   Sun Sep 24 22:06:48 2023 -0400

    Disable reportIncompatibleVariableOverride

commit faff823268376f9cef5cb7cb6cc6682a86145f4e
Author: object-Object <object@objectobject.ca>
Date:   Sun Sep 24 22:00:57 2023 -0400

    Add ref to cookiecutter workflow

commit 7f34d01626fb60f0791712863d1c58d4d1cc1b65
Author: object-Object <object@objectobject.ca>
Date:   Sun Sep 24 21:51:59 2023 -0400

    Add hexdoc tag automatically and update cookiecutter

commit 84a9795f79ce8ed4919d38549b3ef88bb98524ff
Author: object-Object <object@objectobject.ca>
Date:   Sun Sep 24 21:39:35 2023 -0400

    Fix broken job summary text

commit 381905e591617d7d68473450af4b1feeb8f46b36
Author: object-Object <object@objectobject.ca>
Date:   Sun Sep 24 21:32:28 2023 -0400

    Fix artifact names and add python-version param

commit 7a445bccfd9f69d206eeaf63ed3ebb0c1a0b8e8f
Author: object-Object <object@objectobject.ca>
Date:   Sun Sep 24 21:27:59 2023 -0400

    Fix concurrency deadlock

commit 419d7d283ddb3f9064929edb69936959b2a1bfc4
Author: object-Object <object@objectobject.ca>
Date:   Sun Sep 24 21:26:49 2023 -0400

    Strip whitespace from inputs

commit a7bcc738aba82e022da698db306e896ad2e88e75
Author: object-Object <object@objectobject.ca>
Date:   Sun Sep 24 21:24:33 2023 -0400

    Refactor workflow

commit 1a73c9e3ad206382ef9344e4d06af6ece0f6f86b
Author: object-Object <object@objectobject.ca>
Date:   Sun Sep 17 18:00:26 2023 -0400

    Add more metadata to cookiecutter

commit a0c543bfad9d661b8e19f2394d71303390cb112c
Author: object-Object <object@objectobject.ca>
Date:   Sun Sep 17 17:42:28 2023 -0400

    Add more metadata

commit fe7842fa10de43811adbad09c2aa7014c02aaa28
Author: object-Object <object@objectobject.ca>
Date:   Fri Sep 15 09:20:48 2023 -0400

    While hexdoc is in developer preview, default dev version in cookiecutter

commit 59be3b8fff4879da9a7702488d7e9f668003615b
Author: object-Object <object@objectobject.ca>
Date:   Fri Sep 15 01:20:34 2023 -0400

    Add base_asset_urls to cookiecutter

commit e35cc4d92eb17430d0212f69bc0caff382401f17
Author: object-Object <object@objectobject.ca>
Date:   Fri Sep 15 01:14:39 2023 -0400

    Fix project name/slug underscore/hyphens

commit 897f18f6e719483045f54ed2afb7d80bfa4a237c
Author: object-Object <object@objectobject.ca>
Date:   Thu Sep 14 23:48:45 2023 -0400

    Improve summary formatting

commit 5c8434d68eae46698bfb4be138e422f88483d1fd
Author: object-Object <object@objectobject.ca>
Date:   Thu Sep 14 23:46:59 2023 -0400

    Add new workflow updates to cookiecutter

commit 0c7664251fe01a8adc7e285c03ea3d1629b554f8
Author: object-Object <object@objectobject.ca>
Date:   Thu Sep 14 23:31:56 2023 -0400

    Escape backticks

commit d4f6cb9efa8c63bcc1dd15c11afde2862c6732b3
Author: object-Object <object@objectobject.ca>
Date:   Thu Sep 14 23:27:20 2023 -0400

    Reorder jobs and add build summary

commit d2389d666282787d25d78b0dc836cfe3eeb45eeb
Author: object-Object <object-Object@users.noreply.github.com>
Date:   Fri Sep 15 02:20:09 2023 +0000

    Build web book from refs/heads/docgen-2-1.20

commit 7e3a783ce78d298f36635c7804349b5df7b501ec
Merge: e3aebf6b 3a866db9
Author: object-Object <object@objectobject.ca>
Date:   Sun Sep 10 13:25:45 2023 -0400

    Merge pull request #3 from ChuijkYahus/object-Object_docgen-2-1.20

    Update zh_cn.flatten.json5

commit 3a866db9c3fd596aa8c7f86b08c796aca5df04a9
Author: ChuijkYahus <94828194+ChuijkYahus@users.noreply.github.com>
Date:   Mon Sep 11 01:19:10 2023 +0800

    fix

commit e3aebf6b14e66f459274cb6b1eaf074597f11b53
Author: object-Object <object@objectobject.ca>
Date:   Sun Sep 10 13:08:31 2023 -0400

    Localize link text

commit f10d3e46fe003ea7d97120ec85e37df6a3e201be
Author: object-Object <object@objectobject.ca>
Date:   Sun Sep 10 11:48:00 2023 -0400

    Minor code style changes

commit 89106c664fc5ce37c7c777807d48b5396763cfe7
Author: object-Object <object-Object@users.noreply.github.com>
Date:   Sun Sep 10 15:17:43 2023 +0000

    Build web book from refs/heads/docgen-2-1.20

commit 9cb1136fff8ea4932473034eeb39c0ad0a65ca5b
Merge: ba9853d9 87115316
Author: object-Object <object@objectobject.ca>
Date:   Sun Sep 10 11:10:50 2023 -0400

    Merge pull request #2 from ChuijkYahus/object-Object_docgen-2-1.20

    Update zh_cn.flatten.json5

commit ba9853d91dfdae6f832e12faeb4f5d0306686de1
Author: object-Object <object@objectobject.ca>
Date:   Sun Sep 10 11:03:14 2023 -0400

    Switch back to specified branches in the cookiecutter too, actually

commit 0aeda9c2c849dde37268ca9280a515c7bbd63252
Author: object-Object <object@objectobject.ca>
Date:   Sun Sep 10 11:00:45 2023 -0400

    Switch back to specified branches

commit 8711531676302430e2bed2c480ef79ac2d61e81e
Author: ChuijkYahus <94828194+ChuijkYahus@users.noreply.github.com>
Date:   Sun Sep 10 15:10:55 2023 +0800

    fix

commit ab4497eda8ee684c495260b44e5a652487c7b997
Author: ChuijkYahus <94828194+ChuijkYahus@users.noreply.github.com>
Date:   Sun Sep 10 15:08:28 2023 +0800

    update

commit c24074f5b6fe6a6f42fb353fa63349de2c05c82b
Author: object-Object <object@objectobject.ca>
Date:   Sun Sep 10 01:46:49 2023 -0400

    Fix placeholder issues

commit df4b44bd02583b18969f79631fd1b3d5d95c21db
Author: object-Object <object@objectobject.ca>
Date:   Sun Sep 10 01:36:23 2023 -0400

    Fix broken links for zh_cn on 0.11

commit 504ec5b48c1f6ae03546daa4d812b9a37d3fb10e
Author: object-Object <object@objectobject.ca>
Date:   Sun Sep 10 01:19:49 2023 -0400

    Localize all of the template text

commit 790521df050a31c3bec65223d5ddf908505966f7
Author: object-Object <object@objectobject.ca>
Date:   Sat Sep 9 15:24:10 2023 -0400

    Create zh_cn.flatten.json5

    Co-authored-by: ChuijkYahus <94828194+ChuijkYahus@users.noreply.github.com>

commit 1a5d3c8f79efe785cddd42a5f8c0bf647b301e8a
Author: object-Object <object-Object@users.noreply.github.com>
Date:   Sat Sep 9 03:07:45 2023 +0000

    Build web book from refs/heads/docgen-2-1.20

commit 96f65e97c54e4373a408aecfdaf0b144f5297aea
Author: object-Object <object@objectobject.ca>
Date:   Fri Sep 8 23:01:27 2023 -0400

    Don't load external-only languages

commit 6f364f19900f077c3deeb24af889dc102410a43e
Author: object-Object <object-Object@users.noreply.github.com>
Date:   Sat Sep 9 02:20:59 2023 +0000

    Build web book from refs/heads/docgen-2-1.20

commit 2386d57e1b6fb594beb99a0bd0cea336be700e49
Author: object-Object <object@objectobject.ca>
Date:   Fri Sep 8 22:16:18 2023 -0400

    Fix issues with 0.10.x docgen for addons

commit a4e2f8266e8fe77fe2a4670fb98c658489c76ba1
Author: object-Object <object@objectobject.ca>
Date:   Fri Sep 8 01:45:36 2023 -0400

    add .vscode to cookiecutter

commit 6a76687c36a939db4802648a2745e532824e7fd0
Author: object-Object <object@objectobject.ca>
Date:   Fri Sep 8 01:37:31 2023 -0400

    more addon instructions

commit 1c44fb192bcd798f754d105e73f6dc32366db5b4
Author: object-Object <object-Object@users.noreply.github.com>
Date:   Fri Sep 8 05:32:21 2023 +0000

    Build web book from refs/heads/docgen-2-1.20

commit 61763592ee71d42425f62293d52cf795823131bf
Author: object-Object <object@objectobject.ca>
Date:   Fri Sep 8 01:29:00 2023 -0400

    Slightly better docs

commit 5362d11beff52b7543deabbe1c97ba7a37c3b352
Author: object-Object <object@objectobject.ca>
Date:   Fri Sep 8 01:17:20 2023 -0400

    Temporarily add .dev to template version spec

commit 3375ca1b3cb493bad69ccd6c44a0e8f8d7cb90fa
Author: object-Object <object@objectobject.ca>
Date:   Fri Sep 8 00:55:34 2023 -0400

    Add cookiecutter template

commit 7e2f60c243277661df7c824e485a871d50e77bfe
Author: object-Object <object@objectobject.ca>
Date:   Thu Sep 7 22:53:07 2023 -0400

    Make resource dirs modules

commit 1c130a7f73e57756a10d0c89e1702dfd467433b1
Author: object-Object <object@objectobject.ca>
Date:   Thu Sep 7 22:40:26 2023 -0400

    Move nodemon config into doc where it belongs

commit 241b25d5b369ed6230a03b9ba7da27997096c94e
Author: object-Object <object-Object@users.noreply.github.com>
Date:   Fri Sep 8 02:25:26 2023 +0000

    Build web book from refs/heads/docgen-2-1.20

commit 231fb30999a58fc6871f654ec5bd3e40c334507a
Author: object-Object <object@objectobject.ca>
Date:   Thu Sep 7 22:21:20 2023 -0400

    Fix entry point resource dirs

commit 169b223c9de46adca60414ee068f7f5f137a1efb
Author: object-Object <object-Object@users.noreply.github.com>
Date:   Fri Sep 8 02:01:26 2023 +0000

    Build web book from refs/heads/docgen-2-1.20

commit 7aac767b82814f083fd7e5e14402caed6407d5b0
Author: object-Object <object@objectobject.ca>
Date:   Thu Sep 7 21:48:15 2023 -0400

    Probably fix modulenotfound

commit 1518757a901abfec1e4c34d5e1c08e9b40b196eb
Author: object-Object <object@objectobject.ca>
Date:   Thu Sep 7 21:40:34 2023 -0400

    Maybe fix circular import? idk it's not happening locally

commit bbc16fa9ad38b9cb7fd7916c66a64b4c9ca30dd2
Author: object-Object <object@objectobject.ca>
Date:   Thu Sep 7 21:34:21 2023 -0400

    Replace all entry points with pluggy

commit a76a7e7b3b0e288b65adff8bc9da60195129d0a8
Author: object-Object <object@objectobject.ca>
Date:   Wed Sep 6 22:20:26 2023 -0400

    Alwinfy vh fix i guess

commit e2a5025ec8457004ea94bbe934c89dbd21020d3c
Author: object-Object <object@objectobject.ca>
Date:   Tue Sep 5 20:33:26 2023 -0400

    Move old version notice into template with .hidden

commit fbce5b421ef85cbb0217243e6b7731a865bddb71
Author: object-Object <object@objectobject.ca>
Date:   Tue Sep 5 20:22:10 2023 -0400

    Add a bit more logging

commit 8861ef25d587cd6bd59c0473b9403d311e78e041
Author: object-Object <object@objectobject.ca>
Date:   Tue Sep 5 20:03:12 2023 -0400

    Fix toc sidebar

commit ac3692ae43a4d237fcf831bbc6dab316de7890b4
Author: object-Object <object@objectobject.ca>
Date:   Tue Sep 5 17:51:31 2023 -0400

    Add floating table of contents

commit 6c43f01d86ee59f9f1e4a64fc0f69cb2e8d0546c
Author: object-Object <object-Object@users.noreply.github.com>
Date:   Tue Sep 5 05:42:55 2023 +0000

    Build web book from refs/heads/docgen-2-1.20

commit fd977fafffc59abcfb5229763b000ce47fdc30ff
Author: object-Object <object@objectobject.ca>
Date:   Tue Sep 5 01:37:57 2023 -0400

    okay maybe that was dumb

commit ebf79103e06df39bf632f4641dce19dca5a1b94c
Author: object-Object <object@objectobject.ca>
Date:   Tue Sep 5 01:32:01 2023 -0400

    i have no idea why this broke

commit 1e64a589a9ba2d491c2900fc2f87942fe3cf111b
Author: object-Object <object@objectobject.ca>
Date:   Tue Sep 5 01:26:00 2023 -0400

    Use pluggy for fetching mod version

commit 6493f56b835e4d4bba596edf4ea9fb4de160dee2
Author: object-Object <object@objectobject.ca>
Date:   Sun Sep 3 23:14:19 2023 -0400

    Refactor book rendering

commit 82690d98da86d32b0d196166ac29ea7503c65399
Author: object-Object <object@objectobject.ca>
Date:   Sun Sep 3 21:35:02 2023 -0400

    Runtime gradle-version and refactor targets

commit c925e8623d2878c2419762320315431cf3404f63
Author: object-Object <object@objectobject.ca>
Date:   Sun Sep 3 20:35:52 2023 -0400

    Move scripts to subdir

commit 4983d5f98cbad9520ecdc94f3e19e99ea6238240
Author: object-Object <object-Object@users.noreply.github.com>
Date:   Sun Sep 3 01:36:19 2023 +0000

    Build web book from refs/heads/docgen-2-1.20

commit 077eb40045f874ef875200ff19493ff63f240458
Author: object-Object <object@objectobject.ca>
Date:   Sat Sep 2 21:35:14 2023 -0400

    Fix context error for entry point resource dirs

commit 75e59b910ac898f76b9c0867be6b7ba103c4cb92
Author: object-Object <object-Object@users.noreply.github.com>
Date:   Sun Sep 3 01:17:56 2023 +0000

    Build web book from refs/heads/docgen-2-1.20

commit b719c042df57508c9d77586db5c7bbe1bf0170d4
Author: object-Object <object@objectobject.ca>
Date:   Sat Sep 2 17:56:43 2023 -0400

    Remove snapshots and improve some documentation

commit 1768b3759f84147ddc67be7fe392c58e8b4438ce
Author: object-Object <object-Object@users.noreply.github.com>
Date:   Sat Sep 2 21:39:22 2023 +0000

    Build web book from refs/heads/docgen-2-1.20

commit bcf901230bd48bdad6357819d7fbcf5aaf0ec40b
Author: object-Object <object@objectobject.ca>
Date:   Sat Sep 2 17:05:47 2023 -0400

    Custom error message for missing i18n

commit ddf1b86ac13055e8d0911fc90dd5deb06459ac84
Author: object-Object <object@objectobject.ca>
Date:   Sat Sep 2 16:49:09 2023 -0400

    Fix hexdoc_merge args not being passed

commit 208099c42d1fcd9e733f29bbdfafebcb12c54825
Author: object-Object <object@objectobject.ca>
Date:   Sat Sep 2 16:37:59 2023 -0400

    Fix branch condition

commit 7db9fd559fe77d012895d3efe6aded60c89a3a03
Author: object-Object <object@objectobject.ca>
Date:   Sat Sep 2 16:35:18 2023 -0400

    Checkout input during generate too

commit 298079d1277e800fde7905f7e5ff6128278b53f1
Author: object-Object <object@objectobject.ca>
Date:   Sat Sep 2 16:34:14 2023 -0400

    Refactor build step outputs

commit 420ebcd8b2114e96b320c263eff0fc4061b388d9
Author: object-Object <object@objectobject.ca>
Date:   Sat Sep 2 16:22:45 2023 -0400

    Improve merge validation logic

commit 0cd7a55bf37ec571deade6492103a5fb3c5a9f86
Author: object-Object <object@objectobject.ca>
Date:   Sat Sep 2 16:14:15 2023 -0400

    Fix quotes

commit b1b02907030820f9f603d77a1ac675d62af2ac49
Author: object-Object <object@objectobject.ca>
Date:   Sat Sep 2 16:11:51 2023 -0400

    Reorder branch options

commit 12eff5ee577af74f048f4e0c84a15442455293fb
Author: object-Object <object@objectobject.ca>
Date:   Sat Sep 2 16:10:58 2023 -0400

    Fix branch desc [no ci]

commit e17794b61094cf012218d2dea0c26e7f2d0e5ce9
Author: object-Object <object@objectobject.ca>
Date:   Sat Sep 2 16:10:11 2023 -0400

    Update choice descriptions and make branch a choice

commit 736047402d4af5bf139df3315fe12b0006a68591
Author: object-Object <object@objectobject.ca>
Date:   Sat Sep 2 16:03:19 2023 -0400

    Better hexdoc_block error message

commit 81fff3b1d750e2b72998404b3c9ff612018987c5
Author: object-Object <object@objectobject.ca>
Date:   Sat Sep 2 15:58:50 2023 -0400

    Stop changing working directory

commit 0b7d117de91047b7b6e0a5b43d72c33395e9d0fb
Author: object-Object <object@objectobject.ca>
Date:   Sat Sep 2 15:41:12 2023 -0400

    Change checkout directory name

commit d9e053f123d298dd9bc28cb77df23f12d4a34b4b
Author: object-Object <object@objectobject.ca>
Date:   Sat Sep 2 15:25:25 2023 -0400

    Add release input

commit 6e473acf37e3d9d4eca53dadae87a8f170c6f5bd
Author: object-Object <object@objectobject.ca>
Date:   Sat Sep 2 15:17:39 2023 -0400

    Add __gradle_version__ to artifacts, because it's gitignored

commit 924a476f755ac19847c83e6c7c360e28afdd8f16
Author: object-Object <object@objectobject.ca>
Date:   Sat Sep 2 15:13:14 2023 -0400

    debug log 2: electric boogaloo

commit 0cc43c16cf5e652b8bcec4b9454212f647f59b61
Author: object-Object <object@objectobject.ca>
Date:   Sat Sep 2 15:04:33 2023 -0400

    Remove 0.9.5 backport dir

commit cbadf511b0cc87cc1c91c7102314f5485d291bc7
Author: object-Object <object@objectobject.ca>
Date:   Sat Sep 2 15:02:24 2023 -0400

    Update to hatch-gradle-version 0.6.0

commit c36138a6db928cec7f84096e1e269a0cacbcd4fe
Author: object-Object <object@objectobject.ca>
Date:   Sat Sep 2 14:53:38 2023 -0400

    Fix update-latest again

commit 6e15524098cb16019415d8cf44685d6c6ad9bd8d
Author: object-Object <object@objectobject.ca>
Date:   Sat Sep 2 14:47:34 2023 -0400

    Fix generate hexdoc command

commit 6da6b7addc1508212653358e4c3c2b8eb40cc6ce
Author: object-Object <object-Object@users.noreply.github.com>
Date:   Sat Sep 2 18:45:19 2023 +0000

    Build web book from refs/heads/docgen-2-1.20

commit 29aedb3d8be283bce89399c4e59371dc554e27c4
Author: object-Object <object@objectobject.ca>
Date:   Sat Sep 2 14:44:42 2023 -0400

    Fix checkout directory for versioning

commit dae4c8c2c9730ed6cc8fd2728ff86b0bbda90e49
Author: object-Object <object@objectobject.ca>
Date:   Sat Sep 2 14:08:33 2023 -0400

    debug log

commit 767cd81473c2e6606f657d6ed1f4f0ecea64fa02
Author: object-Object <object@objectobject.ca>
Date:   Sat Sep 2 14:05:09 2023 -0400

    Fix arg quoting

commit ecedabab2816145b902de6380d70885f89cf3731
Author: object-Object <object@objectobject.ca>
Date:   Sat Sep 2 14:02:30 2023 -0400

    Add checkout input and fix update-latest

commit 3066cd95c0c39d27fd348993fbdfe707e78428e5
Author: object-Object <object@objectobject.ca>
Date:   Sat Sep 2 13:36:40 2023 -0400

    move fromJson back to the matrix

commit 21d56c8b1a1b89ed0041bb0115ec76fae68f168f
Author: object-Object <object@objectobject.ca>
Date:   Sat Sep 2 13:34:58 2023 -0400

    the past is a foreign country

commit 32cd536b69509a85f05f8ff1e385e1f497cac1fd
Author: object-Object <object@objectobject.ca>
Date:   Sat Sep 2 13:25:23 2023 -0400

    Properly sort versions, add separator

commit a819d5094546758860d907029e21a50d5b9e4ebd
Author: object-Object <object@objectobject.ca>
Date:   Sat Sep 2 02:13:55 2023 -0400

    Useful dispatch checkbox

commit c70075326657e9866f624975f2e69230a8f73253
Author: object-Object <object@objectobject.ca>
Date:   Sat Sep 2 02:04:11 2023 -0400

    [Release] 0.9.5 docs

commit 340f8f65bb2fcf6726d65fdf1a641706d95a4e60
Author: object-Object <object@objectobject.ca>
Date:   Sat Sep 2 01:25:26 2023 -0400

    Merge bundle- and deploy-pages

commit 824a341ea5872e371e6c366aa6dd72db266e4e23
Author: object-Object <object@objectobject.ca>
Date:   Sat Sep 2 01:20:54 2023 -0400

    [Release] Allow build step to commit changes

commit 62491380e80cf7236f41f41dc824e5bd27049030
Author: object-Object <object@objectobject.ca>
Date:   Sat Sep 2 01:16:24 2023 -0400

    Remove 0.10.3 stuff since we generated it already

commit 5211fd2a562d406778cc479d2a2a81d000528a4a
Author: object-Object <object@objectobject.ca>
Date:   Sat Sep 2 01:06:13 2023 -0400

    Fix fallback condition

commit 582c12721fc46dc88adeaf11ed48c2f885790740
Author: object-Object <object@objectobject.ca>
Date:   Sat Sep 2 01:03:52 2023 -0400

    Better output when the fallback is used

commit b18d7bdad58f1923471d84c43823308444529d24
Author: object-Object <object@objectobject.ca>
Date:   Sat Sep 2 01:00:34 2023 -0400

    Upload artifact for fallback but for real this time

commit 6eccddc466805a803f8dbf8cfa5653986fc94fe5
Author: object-Object <object@objectobject.ca>
Date:   Sat Sep 2 00:55:15 2023 -0400

    Upload artifact for fallback

commit 8e2bb16ffb01b117bcd57908157eea983d5e8e48
Author: object-Object <object@objectobject.ca>
Date:   Sat Sep 2 00:51:32 2023 -0400

    Add missing lang fallback

commit 9c47c35c1c6c5369fd0cbd1cc53653c2fc46f4dd
Author: object-Object <object@objectobject.ca>
Date:   Sat Sep 2 00:49:32 2023 -0400

    Fix HexVersion.check logging and props path

commit b4f305ec4b938a7cd79dca03f58abe66a3fc03f9
Author: object-Object <object@objectobject.ca>
Date:   Sat Sep 2 00:41:29 2023 -0400

    Re-add 0.10.3 support

commit 9f5f37246dec53d75e2b628e701794c1673df0d7
Author: object-Object <object@objectobject.ca>
Date:   Fri Sep 1 02:02:16 2023 -0400

    Reenable the brand link

commit 2a70a34222a61f9e103266bf0dd6882d9f674f69
Author: object-Object <object@objectobject.ca>
Date:   Fri Sep 1 01:53:04 2023 -0400

    hexxyn't

commit 5523d163c3e7a66fa5f24f88860e09fd0e7cfe80
Author: object-Object <object@objectobject.ca>
Date:   Fri Sep 1 01:44:02 2023 -0400

    [Release] Fix release dropdown

commit fcb808fe63dce5651a78dbbbf6b2702b605e1fab
Author: object-Object <object@objectobject.ca>
Date:   Fri Sep 1 01:33:46 2023 -0400

    WE GOT DROPDOWNS

commit f2cbe48d88f074172e3159eec000965f2dd6a2c1
Author: object-Object <object@objectobject.ca>
Date:   Thu Aug 31 23:39:31 2023 -0400

    Add navbar and auto-fetch Pages url

commit d0b91ba602e2c6d9394e61882c0a2d9fb8015aa2
Author: object-Object <object@objectobject.ca>
Date:   Thu Aug 31 21:10:37 2023 -0400

    Rename pypi choice

commit 60b237a40e317763dc7d6c5fee4171456e41cde7
Author: object-Object <object@objectobject.ca>
Date:   Thu Aug 31 20:49:35 2023 -0400

    Fix merge delete error and some other stuff

commit 8343e25a1b690630f291e59a5986fc7b2f67471d
Author: object-Object <object@objectobject.ca>
Date:   Thu Aug 31 20:22:57 2023 -0400

    Better sitemap strategy

commit 45c30989beb2a430102608ddef8f8d71707c52b5
Author: object-Object <object@objectobject.ca>
Date:   Thu Aug 31 04:00:08 2023 -0400

    [Release] Revert "Hexxy was not here"

    This reverts commit 6f5a00d00e683573369587a90b42bccd6f6db571.

commit 598f340afd7865206a41cda1553a4732bdab9578
Author: object-Object <object@objectobject.ca>
Date:   Thu Aug 31 03:56:35 2023 -0400

    [Release] Fix pypi release check

commit 30d2a76cf2b1949fd4b103cd53b901d6fc6be1f9
Author: object-Object <object@objectobject.ca>
Date:   Thu Aug 31 03:54:11 2023 -0400

    Remove CI pins and remember how basic logic works

commit a607428d1d52fdca51755ee150c815e35e925ebc
Author: object-Object <object@objectobject.ca>
Date:   Thu Aug 31 03:48:03 2023 -0400

    [Release] Test release

commit 3336dda406cae9695d52124da8961052d505a001
Author: object-Object <object@objectobject.ca>
Date:   Thu Aug 31 03:43:53 2023 -0400

    Pin CI deps and fix latest build naming

commit c409f6f58cdf71299ffffd94b786e5c0628e2459
Author: object-Object <object@objectobject.ca>
Date:   Thu Aug 31 03:38:43 2023 -0400

    Attempt to fix pages deployment

commit 565277d5891b8ffd7ca994930a8980f133b00aa2
Author: object-Object <object@objectobject.ca>
Date:   Thu Aug 31 03:27:07 2023 -0400

    Fix deletion path

commit 726becf519ec85945a3a0415562436c30eb95074
Author: object-Object <object@objectobject.ca>
Date:   Thu Aug 31 03:21:16 2023 -0400

    Fix latest check and remove pypi needs

commit ce3eec4dd456ba21b2a85686245c77b3e6c7ca3d
Author: object-Object <object@objectobject.ca>
Date:   Thu Aug 31 03:16:25 2023 -0400

    Fix release argument in build

commit 2838ce95b07e3873a15d612fae93c62782c7beb1
Author: object-Object <object@objectobject.ca>
Date:   Thu Aug 31 03:14:12 2023 -0400

    sure let's push a bunch of totally untested code

commit 6f5a00d00e683573369587a90b42bccd6f6db571
Author: object-Object <object@objectobject.ca>
Date:   Tue Aug 29 00:11:04 2023 -0400

    Hexxy was not here

commit 29e824f39d6dd307cb7e942d6e69d9158d2a58b1
Author: object-Object <object@objectobject.ca>
Date:   Tue Aug 29 00:05:04 2023 -0400

    Fix per-language favicons

commit de8c9ba561f0ec8b9659a7cb5c8d9197e962585a
Author: object-Object <object@objectobject.ca>
Date:   Mon Aug 28 23:50:56 2023 -0400

    Un-break en_us

commit c07a3c6a004aa400cf4b0a20a5579884bce6f475
Author: object-Object <object@objectobject.ca>
Date:   Mon Aug 28 23:43:37 2023 -0400

    oops

commit 9edd7d8874d3427bfbf65d35e2b706edd7f3c57a
Author: object-Object <object@objectobject.ca>
Date:   Mon Aug 28 23:39:55 2023 -0400

    Require at least the default lang to exist before deploying to Pages

commit 03f702a477cbdadb776bd73e2e45c7ef9a39eb0b
Author: object-Object <object@objectobject.ca>
Date:   Mon Aug 28 23:27:05 2023 -0400

    Break it a bit less

commit d7448f9352a7c32f1395dea5fdc7ac19e2da46eb
Author: object-Object <object@objectobject.ca>
Date:   Mon Aug 28 23:22:20 2023 -0400

    Break en_us for testing

commit 67eb47b7a6027ae402b93c762546bf990d12f4da
Author: object-Object <object@objectobject.ca>
Date:   Mon Aug 28 23:20:35 2023 -0400

    Fix permissions in bundle job

commit 89b9d71c4ba9d5cd4f0cacb8e3f529386eff1a70
Author: object-Object <object@objectobject.ca>
Date:   Mon Aug 28 23:17:43 2023 -0400

    Make the matrix stop overwriting itself

commit 05886ffb2519e78c7cdb60a88f1fe7fac2d4ca33
Author: object-Object <object@objectobject.ca>
Date:   Mon Aug 28 23:03:46 2023 -0400

    Reduce Pages deployment timeout

commit 2fd0180b1b277b060aa05f6a6276b16a2db9fdce
Author: object-Object <object@objectobject.ca>
Date:   Mon Aug 28 22:57:26 2023 -0400

    Fix pages condition

commit 1d0f65d76dd685768ef16ad6ef3ee89ffed82579
Author: object-Object <object@objectobject.ca>
Date:   Mon Aug 28 22:54:30 2023 -0400

    Don't unnecessarily re-build the docgen

commit cb1ff4d48588d94723504ebd954e6498951241c1
Author: object-Object <object@objectobject.ca>
Date:   Mon Aug 28 22:52:44 2023 -0400

    Fix he.xy and add extra conditional to deploy-pages

commit 7b416235b9c418b47b217f9404d9ded317c28917
Author: object-Object <object@objectobject.ca>
Date:   Mon Aug 28 22:41:40 2023 -0400

    Add dummy language for testing

commit 5f55ef81b91668f7f66801c12ebed69491d9ce64
Author: object-Object <object@objectobject.ca>
Date:   Mon Aug 28 22:39:12 2023 -0400

    Use correct matrix variable syntax

commit ee6a8876af90a9925a1a988ea5e282dca3a78fb8
Author: object-Object <object@objectobject.ca>
Date:   Mon Aug 28 22:33:57 2023 -0400

    Make the docs bilingual

commit 493eabf633f4ad14c572ec92f01248d24a5cfae1
Author: object-Object <object@objectobject.ca>
Date:   Mon Aug 28 03:12:13 2023 -0400

    Rearrange conditions

commit 3b8b6ef70eba434245231e97a32fd28c08f6dfb5
Author: object-Object <object@objectobject.ca>
Date:   Mon Aug 28 03:07:52 2023 -0400

    [Release] Test release

commit 42302958563c20d484bced1c0638cf9fa649a019
Author: object-Object <object@objectobject.ca>
Date:   Mon Aug 28 03:06:31 2023 -0400

    Fix artifact path for pypi

commit 480507013443bd31c4881f2b3de4464b7ee9e1d6
Author: object-Object <object@objectobject.ca>
Date:   Mon Aug 28 02:57:22 2023 -0400

    Artifact path

commit af6f168a44282dc52b04cd056f94bf391fd76528
Author: object-Object <object@objectobject.ca>
Date:   Mon Aug 28 02:46:32 2023 -0400

    Publishing default, again

commit dd8e2ffe0646c7a03e2eedcf708e6e6c82d68e67
Author: object-Object <object@objectobject.ca>
Date:   Mon Aug 28 02:39:51 2023 -0400

    publish default

commit 396b285a27069628b2b171b51547d069cd835dd2
Author: object-Object <object@objectobject.ca>
Date:   Mon Aug 28 02:35:03 2023 -0400

    Fix pypi urls and add PyPI step

commit 9540fba6db59e18f99c7898f4712f7c684b9059a
Author: object-Object <object@objectobject.ca>
Date:   Mon Aug 28 02:05:42 2023 -0400

    Publish on tag or [Release] commit

commit 23801f9ef9ee3478e7f695f970054d516e3f88f2
Author: object-Object <object@objectobject.ca>
Date:   Mon Aug 28 01:48:16 2023 -0400

    File permissions

commit 0aadc70fc75587031cc362a6a7556f048f396ba9
Author: object-Object <object@objectobject.ca>
Date:   Mon Aug 28 01:45:38 2023 -0400

    Permissions, maybe

commit dd6db88a03e7d85292a644fab4741f308fb23f7a
Author: object-Object <object@objectobject.ca>
Date:   Mon Aug 28 01:41:53 2023 -0400

    Publish via Actions

commit f7d3673376e780d78b861bbc7ffa0ba023755527
Author: object-Object <object@objectobject.ca>
Date:   Mon Aug 28 00:03:55 2023 -0400

    Update hatch-gradle-version, parametrize static_dir, make exporting optional

commit 37d31c88f89faeef071f90936a663c26407cc760
Author: object-Object <object@objectobject.ca>
Date:   Sun Aug 27 19:21:09 2023 -0400

    Maybe fix actions

commit e242e2e04686e16e78e57a435a9828c11e7bb7c5
Author: object-Object <object@objectobject.ca>
Date:   Sun Aug 27 19:14:01 2023 -0400

    Add optional static dir

commit d2ca57720b3f92279485c8b51a2c9c1403b77f9a
Author: object-Object <object@objectobject.ca>
Date:   Sun Aug 27 19:06:20 2023 -0400

    Use actions/deploy-pages

commit 3f1688c64467c1cd7b0f1aafbf2c09a5b2514f15
Author: object-Object <object@objectobject.ca>
Date:   Sun Aug 27 18:51:32 2023 -0400

    Update hatch-gradle-version

commit 8b32827c7e953bd20b1dacfb21f399cd1987fe82
Author: object-Object <object@objectobject.ca>
Date:   Sun Aug 27 18:26:41 2023 -0400

    Add hatch-gradle-version and restructure a lot of things

commit fec670294668c504528d9dd225b6e2679021fa37
Author: object-Object <object@objectobject.ca>
Date:   Sat Aug 26 22:35:22 2023 -0400

    Add hexdoc --export-only

commit d95a8fcc18e4cb6e1250a034e53835e79bbc48a1
Author: object-Object <object@objectobject.ca>
Date:   Sat Aug 26 21:31:46 2023 -0400

    Move templates to hexdoc_templates and restructure props a bit

commit 4e205871c857754983b09e93dbb1484dd489c469
Author: object-Object <object@objectobject.ca>
Date:   Sat Aug 26 21:13:31 2023 -0400

    Remove most of the HexContext arguments

commit c9f4941bad1e84e5efd59c4f54eac7efafc273b9
Author: object-Object <object@objectobject.ca>
Date:   Fri Aug 25 00:32:10 2023 -0400

    Improve model naming

commit 7b910897f2ae5c9c99fa8c6f5e0c44c327d3e8bf
Author: object-Object <object@objectobject.ca>
Date:   Thu Aug 24 00:28:25 2023 -0400

    Addon fixes

commit 4aedc0ff377f85544de36347ae31da077120cafe
Author: object-Object <object@objectobject.ca>
Date:   Wed Aug 23 21:50:55 2023 -0400

    Use black extension

commit 2e0e3dc17c61327ae48003461df33baea4d5dd00
Author: object-Object <object@objectobject.ca>
Date:   Wed Aug 23 21:46:42 2023 -0400

    Mildly scuffed lazy link resolution to handle addon links

commit e05c9ebeb977f6ab88a5baadde52be8af0948302
Author: object-Object <object@objectobject.ca>
Date:   Wed Aug 23 08:42:32 2023 -0400

    Resolve some TODOs and minor refactoring

commit 036579607cb7c38894bc1b3674957eac602ffc78
Author: object-Object <object@objectobject.ca>
Date:   Wed Aug 23 08:34:06 2023 -0400

    Add stricter pattern page validation

commit 2fa96babded22840f2a7dad606f9fb1ee3261ca7
Author: object-Object <object@objectobject.ca>
Date:   Wed Aug 23 08:10:10 2023 -0400

    Use SandboxedEnvironment

commit 96076c69ac022cb5b496a5a2699863979903703b
Author: object-Object <object@objectobject.ca>
Date:   Wed Aug 23 08:06:12 2023 -0400

    Fix before validator typing

commit 53175313b0cbccf72f896642bf6c20fe8926b9b0
Author: object-Object <object@objectobject.ca>
Date:   Wed Aug 23 07:54:09 2023 -0400

    Field refactors

commit 176ef30c4e4595626fe61e47ec7938706795b75e
Author: object-Object <object@objectobject.ca>
Date:   Wed Aug 23 01:42:57 2023 -0400

    Raise for broken links

commit 097299cb2b65b7f2c3e7b43319b4dc5caa2d385a
Author: object-Object <object@objectobject.ca>
Date:   Wed Aug 23 00:05:51 2023 -0400

    Pass context to formatting functions instead of props and i18n

commit 37902d5a009831d48f2457d0fe4274298e7e7546
Author: object-Object <object@objectobject.ca>
Date:   Tue Aug 22 23:58:03 2023 -0400

    Minor properties rearrange

commit 9e03f330db011bead2aa235b4964a71a645012a9
Author: object-Object <object@objectobject.ca>
Date:   Tue Aug 22 23:40:02 2023 -0400

    Support per-world patterns again

commit 4eb301e725bd785e0fa0d1307ff72139dbb4d91e
Author: object-Object <object@objectobject.ca>
Date:   Tue Aug 22 23:20:49 2023 -0400

    Move spoilered advancements to a tag

commit ab7108265e3c32d931f9014207cbee38d630b936
Author: object-Object <object@objectobject.ca>
Date:   Tue Aug 22 22:58:30 2023 -0400

    Implement tag loading

commit 12e4670b7e129800750e224eaebc7da2f036a2a0
Author: object-Object <object@objectobject.ca>
Date:   Sun Aug 20 22:10:11 2023 -0400

    Add ModResourceLoader, un-generic HexDocModel, class-based context

commit 1a19a1265951f12e19a9b663565fdbd8e32cf1d3
Author: object-Object <object@objectobject.ca>
Date:   Wed Aug 9 01:00:30 2023 -0400

    Search all namespaces for i18n

commit 496a851c598e24c491e5b9d4f11521422b1a7fc7
Author: object-Object <object@objectobject.ca>
Date:   Wed Aug 9 00:37:44 2023 -0400

    Use find_resources for i18n

commit 2e2f318be3c04dec75c00f0499abd429f46f5fa0
Author: object-Object <object@objectobject.ca>
Date:   Tue Aug 8 22:45:09 2023 -0400

    Somewhat improve resource loading

commit ed425f62803dd856dbb4dd7e45e2e7d061a3adcc
Author: object-Object <object@objectobject.ca>
Date:   Tue Aug 8 22:39:44 2023 -0400

    Update snapshots for 1.20

commit 4e3449ed379b06d54286022b4108697d27f6d821
Author: object-Object <object@objectobject.ca>
Date:   Sun Aug 6 20:37:28 2023 -0400

    that's pretty meta

commit c3090863892d6dacf844704439466c42b44677dc
Author: object-Object <object@objectobject.ca>
Date:   Sun Aug 6 20:13:34 2023 -0400

    Fix icon href

commit 5b4cc1a9222afb8605e80a479f089dc8fe63ecbe
Author: object-Object <object@objectobject.ca>
Date:   Sun Aug 6 20:11:52 2023 -0400

    Fix line spacing with backslashes

commit 8118d10ee64f78406d405f70cd395e6d4c575535
Author: object-Object <object@objectobject.ca>
Date:   Sun Aug 6 19:59:59 2023 -0400

    Check for RUNNER_DEBUG flag if running on CI

commit 5124e9770aa1f992202b370f1d1c1112b88ae7e7
Author: object-Object <object@objectobject.ca>
Date:   Sun Aug 6 19:44:27 2023 -0400

    Make paths relative to properties.toml

commit e6e2ebc50ed920adfeee0d5190b84d59f77a1c2b
Author: object-Object <object@objectobject.ca>
Date:   Sun Aug 6 19:31:44 2023 -0400

    Revert "temporary: trigger docgen so we can use dispatch"

    This reverts commit 5fc780232fef1b61bfaacd8d9bb91aac2b78c19a.

commit 5fc780232fef1b61bfaacd8d9bb91aac2b78c19a
Author: object-Object <object@objectobject.ca>
Date:   Sun Aug 6 19:30:51 2023 -0400

    temporary: trigger docgen so we can use dispatch

commit 3e2afd13a3490b5c3bea3368cc3d0fe2511b0e55
Author: object-Object <object@objectobject.ca>
Date:   Sun Aug 6 19:27:52 2023 -0400

    Update docgen to 0.11, mostly

commit b91b37b70abe691d00d2e21a22850ffe1cf97ff8
Author: object-Object <object@objectobject.ca>
Date:   Sun Aug 6 19:27:43 2023 -0400

    Run datagen

commit a0bb2214a52bdcd2685ceb036b49e164f1a1519d
Author: object-Object <object@objectobject.ca>
Date:   Sun Aug 6 12:27:03 2023 -0400

    Add trailing commas and unquote keys where possible

commit d6ef7971d6c5d800d433c1d133e83b4843e1cc4c
Author: object-Object <object@objectobject.ca>
Date:   Sun Aug 6 12:16:23 2023 -0400

    Unflatten lang file, remove >>>, fix interop and lore descriptions

commit a02723d4bff8f81cb4c1bfd8646b1f24c46671af
Merge: 4a2d1626 f15360e6
Author: object-Object <object@objectobject.ca>
Date:   Thu Aug 3 23:14:35 2023 -0400

    Merge branch 'docgen-2-but-older' into docgen-2-1.20

    # Conflicts:
    #	Common/src/main/resources/data/hexcasting/patchouli_books/thehexbook/en_us/categories/greatwork.json
    #	doc/collate_data.py
    #	doc/template.html

commit f15360e66cc4b6680f53f3dc36105b349a56740d
Author: object-Object <object@objectobject.ca>
Date:   Thu Aug 3 23:09:31 2023 -0400

    Update Pydantic and pin Pyright

commit 71258eb72b3b3f6240b905db884154a588eaca97
Author: object-Object <object@objectobject.ca>
Date:   Thu Jul 27 21:56:10 2023 -0400

    Minor refactors and some work on bundling book data

commit ba13bf38362aa466fa21016924b2884b5afcf6fc
Author: object-Object <object@objectobject.ca>
Date:   Tue Jul 25 18:07:04 2023 -0400

    Add workspace definition for qol

commit 9d9febe43c85eb6e7ee6eafd90c9b33fb46f23f9
Author: object-Object <object@objectobject.ca>
Date:   Tue Jul 25 08:42:26 2023 -0400

    Another refactor, but this time it actually makes sense

commit 178d7c2af560c45b99bb7647ecac04405d0d9be3
Author: object-Object <object@objectobject.ca>
Date:   Mon Jul 24 22:27:11 2023 -0400

    Move templates into hexdoc package

commit 03e7683ae126612fbb5557915a2de218af907ba7
Author: object-Object <object@objectobject.ca>
Date:   Mon Jul 24 20:40:28 2023 -0400

    The great refactoring (move to hexdoc package and add reexports)

commit 2960568e912dba3ee0365c05420ffcf84e5e99e4
Author: object-Object <object@objectobject.ca>
Date:   Sun Jul 23 02:39:17 2023 -0400

    Update snapshots

commit d78e057aa6647cf868a116694bad7e73ca1b6264
Author: object-Object <object@objectobject.ca>
Date:   Sun Jul 23 02:34:07 2023 -0400

    Remove minification, format html, break the tests

commit 5c0e410b766c1f881bea7e445d5ece5294058c27
Author: object-Object <object@objectobject.ca>
Date:   Thu Jul 20 00:00:14 2023 -0400

    Jinja cleanup

commit d0d30239852ab16378d57cc270ba4aaee0f48944
Author: object-Object <object@objectobject.ca>
Date:   Wed Jul 19 21:51:43 2023 -0400

    Remove scuffed whitespace stripping

commit 46767353b0bfeea148fb665bc396e11bc3c092e3
Author: object-Object <object@objectobject.ca>
Date:   Wed Jul 19 10:21:13 2023 -0400

    Delete collate_data.py(!!!) and remove unused imports

commit e6e9bfcba893c918bb534e6e5ee8c9e4e908f000
Author: object-Object <object@objectobject.ca>
Date:   Wed Jul 19 10:18:16 2023 -0400

    oh my god

commit 8c1bbc81790e652b8a0c83aa88ae3ebf251cd2ee
Author: object-Object <object@objectobject.ca>
Date:   Wed Jul 19 09:26:40 2023 -0400

    All the pages, but the tests are failing

commit 7678b74b2e12730ab36fbca5da8eeb181800fbe4
Author: object-Object <object@objectobject.ca>
Date:   Mon Jul 17 20:31:14 2023 -0400

    WIP pages

commit 0b7c8ca989d59cd4171f59678c35595ca1b7ec98
Author: object-Object <object@objectobject.ca>
Date:   Sun Jul 16 22:55:25 2023 -0400

    Entry

commit 047907d4bba4db14c363c9a1cc01985171882d9f
Author: object-Object <object@objectobject.ca>
Date:   Fri Jul 14 00:49:26 2023 -0400

    Category template, mostly

commit 9059cfe6a58e5464008738a43e0f80c8c3a9b474
Author: object-Object <object@objectobject.ca>
Date:   Thu Jul 13 23:14:36 2023 -0400

    Jinja, table of contents

commit 276ca5b73f2268d2593d5b17441d8f6822b20503
Author: object-Object <object@objectobject.ca>
Date:   Mon Jul 10 01:38:30 2023 -0400

    Use class_name instead of clazz, move spoilers/blacklist to props

commit 92f7770dc65618500fcb82c3cae95fec4c87527f
Author: object-Object <object@objectobject.ca>
Date:   Mon Jul 10 00:56:40 2023 -0400

    We do a bit of renaming

commit aeb737a4eb8597d7281d466bec0d6b51ec8c9731
Author: object-Object <object@objectobject.ca>
Date:   Mon Jul 10 00:21:04 2023 -0400

    Fix incorrect formatting

commit 016546473a5203390938fe98ac3f5b64fc905f5d
Author: object-Object <object@objectobject.ca>
Date:   Sun Jul 9 22:58:47 2023 -0400

    serves me right

commit f63ed876b6b17f69e36831b4ec70f8015e3e98e3
Author: object-Object <object@objectobject.ca>
Date:   Sun Jul 9 19:59:17 2023 -0400

    Prefer book.json macros instead of defaults

commit c7eb55edbbbddcf50d2e9dea4d35eef9fd8b3602
Author: object-Object <object@objectobject.ca>
Date:   Sun Jul 9 19:53:26 2023 -0400

    Make the Style impl less awful

commit 01d405772fd6126ca4719275b84d8a8d52198c9f
Author: object-Object <object@objectobject.ca>
Date:   Thu Jul 6 01:45:29 2023 -0400

    Forgot to un-none value

commit 7983afde4596a05e612951e9abf0498c1fcb0c61
Author: object-Object <object@objectobject.ca>
Date:   Thu Jul 6 01:40:06 2023 -0400

    Style dataclasses

commit 69be2991993af104c8fcbce7410872070daf30e9
Author: object-Object <object@objectobject.ca>
Date:   Wed Jul 5 08:51:37 2023 -0400

    Move formatting to patchouli.text

commit fa3e270fe69e49c9a115951c1262420bdb48994d
Author: object-Object <object@objectobject.ca>
Date:   Wed Jul 5 08:35:13 2023 -0400

    WIP serialization

commit 04b926cf425490439749b2785b568e46a0af4435
Author: object-Object <object@objectobject.ca>
Date:   Mon Jul 3 21:18:36 2023 -0400

    Fully convert from Dacite to Pydantic!

commit 0a949a2b56dc8f3c418a56ac632741c31ff6c8c1
Author: object-Object <object@objectobject.ca>
Date:   Thu Jun 29 02:01:08 2023 -0400

    Pydantic ResLoc

commit 31188b7332a21b2170d6c2bf75008cd6237cac83
Author: object-Object <object@objectobject.ca>
Date:   Thu Jun 29 01:27:55 2023 -0400

    Make PairTag a dataclass

commit a917513780f12a8b8dd253b73e6e69579fd09b7e
Author: object-Object <object@objectobject.ca>
Date:   Wed Jun 28 00:57:22 2023 -0400

    actually write the docstring

commit 5e61d3b8b938849240ecc0d9f041082e5ba8d2ef
Author: object-Object <object@objectobject.ca>
Date:   Tue Jun 27 22:08:10 2023 -0400

    Use entry hooks to load union types

commit 371d56033eaf14bb14173ef31fd4248fe0c04fbd
Author: object-Object <object@objectobject.ca>
Date:   Tue Jun 27 10:01:18 2023 -0400

    Switch to editable install

commit 549f9c4a080e8bf115a4f3577f581fcbc84cf03b
Author: object-Object <object@objectobject.ca>
Date:   Tue Jun 27 01:58:08 2023 -0400

    Make ItemIngredient a union

commit 0ad849597ea5c4c70dbaf5e016e99be4721881a7
Author: object-Object <object@objectobject.ca>
Date:   Mon Jun 26 23:26:09 2023 -0400

    Use mangled variables for union k/v and lookups

commit 58068c7b69d878ae6f0b8bd31f575c81f02d640d
Author: object-Object <object@objectobject.ca>
Date:   Mon Jun 26 19:35:50 2023 -0400

    Replace Type with type

commit 5188402be974305c28bb8838e7ba8d83436b6cba
Author: object-Object <object@objectobject.ca>
Date:   Sun Jun 25 22:58:36 2023 -0400

    Move formatting to patchouli

commit c7b038108a88f32b8c115669c96d6cd1f0b533f8
Author: object-Object <object@objectobject.ca>
Date:   Sun Jun 25 22:51:03 2023 -0400

    Extra assurance that everything will be registered

commit c5c4caf22afe7fefc55454561fdf6c29155fd7a8
Author: object-Object <object@objectobject.ca>
Date:   Sun Jun 25 22:47:46 2023 -0400

    Move state into patchouli

commit b8f2a78a6d5fc21fbccffc1ffd8bdf85f483a536
Author: object-Object <object@objectobject.ca>
Date:   Sun Jun 25 22:41:39 2023 -0400

    Remove the HexBook subclass, making Book generic

commit c8b432f1677f5aa7ef466ce67435b034b51925a6
Author: object-Object <object@objectobject.ca>
Date:   Sun Jun 25 22:32:10 2023 -0400

    Bit of restructuring

commit 8588a1b0cc1a7cccce8324a0317770222db8f289
Author: object-Object <object@objectobject.ca>
Date:   Sun Jun 25 22:14:03 2023 -0400

    Move hex recipes to hex

commit 84141544600722b63b8b5bd53f856f717e24e6d3
Author: object-Object <object@objectobject.ca>
Date:   Sun Jun 25 17:22:35 2023 -0400

    Fix Recipe impl and create TypeTaggedUnion

commit a6cfb0e244411228ad5c78ab7db5d5fa50883ff6
Author: object-Object <object@objectobject.ca>
Date:   Sun Jun 25 17:15:46 2023 -0400

    Basically create a registry via inheritance

commit 6478b3057ac68fbf9fbeebeddb4dbcb3d2f8e664
Author: object-Object <object@objectobject.ca>
Date:   Sun Jun 25 15:52:11 2023 -0400

    Make Book generic to fix type hints

commit c9ba636309af8230512b9ab3764823a0063e2eab
Author: object-Object <object@objectobject.ca>
Date:   Sun Jun 25 15:40:39 2023 -0400

    Use BookState to break all the dependency cycles

commit b2fd0bf094d5054a653220666ccb9937e0075c43
Author: object-Object <object@objectobject.ca>
Date:   Sun Jun 25 12:01:17 2023 -0400

    Update Dacite to 1.8.1 with generics fix

commit 0debb610f2fe7478b6271b2d38faa07ffc99f67d
Author: object-Object <object@objectobject.ca>
Date:   Wed Jun 21 09:50:11 2023 -0400

    Initial formatting refactors

commit 49c316cd558d4f3bb9eaf8aa9362e6da0031faca
Author: object-Object <object@objectobject.ca>
Date:   Wed Jun 21 01:03:25 2023 -0400

    Enormous snapshot energy

commit 3988539d555b52b4819b7e00528f4ca313ece6f4
Author: object-Object <object@objectobject.ca>
Date:   Wed Jun 21 00:35:42 2023 -0400

    Add pretty-printed @longrun test, disable diff for all other tests

commit e52bbc37be89a967e7dafa0bd75e37f13c7aeec0
Author: object-Object <object@objectobject.ca>
Date:   Tue Jun 20 22:54:28 2023 -0400

    Load Entries in Book instead of Category

commit d282ff8ffb27aad4a01bbf5b7695b726487d18ab
Author: object-Object <object@objectobject.ca>
Date:   Tue Jun 20 19:03:02 2023 -0400

    Remove _BookData, split HexBook from Book, and actually resolve the circular imports

commit 5baecea2fd9d80ffb38d35f4c06845277e1a7c0c
Author: object-Object <object@objectobject.ca>
Date:   Tue Jun 20 00:56:26 2023 -0400

    More files, actually

commit 99e1e899b911f50c58feab7c6ae13a57cf3fb3e5
Author: object-Object <object@objectobject.ca>
Date:   Tue Jun 20 00:54:25 2023 -0400

    Split recipe and page into a bunch of files

commit 5620b970604e5912e0a0c637b10e68057f2b79d8
Author: object-Object <object@objectobject.ca>
Date:   Tue Jun 20 00:42:49 2023 -0400

    holy SHIT it WORKS

commit 656c13179199f075be517c4b30e25453944ba8c5
Author: object-Object <object@objectobject.ca>
Date:   Sat Jun 17 20:03:26 2023 -0400

    Nothing works and everything's unfinished but this commit is big enough already

commit ac43647b2896f0e81c30ab15580a3c072a2c7118
Author: object-Object <object@objectobject.ca>
Date:   Thu Jun 15 02:51:04 2023 -0400

    Friendship ended with pyserde, now Dacite is my best friend

commit c58183d3cc0aa504454ebbe8d261d74965aaa365
Author: object-Object <object@objectobject.ca>
Date:   Sun Jun 11 16:25:52 2023 -0400

    Move most ABCs into common/abstract.py

commit e42a8272e4ba78f7f2d2783022493194f5fb5280
Author: object-Object <object@objectobject.ca>
Date:   Sun Jun 11 16:20:53 2023 -0400

    Entry dataclass

commit 25213840b918debdb4ff2897c8f6472f58b18267
Author: object-Object <object@objectobject.ca>
Date:   Sun Jun 11 13:33:54 2023 -0400

    Move i18n to its own class and add WithBook for composing classes with Book

commit 4dfa4312630fa534ee29c076b67f33f8b7d54a0c
Author: object-Object <object@objectobject.ca>
Date:   Sun Jun 11 12:51:38 2023 -0400

    Refactor Minecraft classes into their own directory

commit 6c46c06271a615d8f02b224dca7ce1866f6aa284
Author: object-Object <object@objectobject.ca>
Date:   Sun Jun 11 02:24:41 2023 -0400

    Convert Category to dataclass

commit 4200be14c8aabc480a8e17565c0a69a121017b2e
Author: object-Object <object@objectobject.ca>
Date:   Sun Jun 11 00:42:39 2023 -0400

    Add ResourceLocation and ItemStack types

commit 0cd6631c09e8219805f52b52f05ba47a7360f9bd
Author: object-Object <object@objectobject.ca>
Date:   Sat Jun 10 19:14:53 2023 -0400

    Book refactor (enormous)

commit b7be50bb24f5d658ac6668c923b74f1a003f1119
Author: object-Object <object@objectobject.ca>
Date:   Wed Jun 7 09:37:57 2023 -0400

    Add more types

commit e49e5f3cf8378c8288a3ce92cbfc878fbffbb0c7
Author: object-Object <object@objectobject.ca>
Date:   Wed Jun 7 00:12:51 2023 -0400

    good god that's a lot of warnings

commit ed5de30cb2b497332891219302ba989913359a43
Author: object-Object <object@objectobject.ca>
Date:   Tue Jun 6 23:19:08 2023 -0400

    Remove unuseds and move test format strings to a test case

commit c3d8fed16b612276f8094888e606d0509933c69a
Author: object-Object <object@objectobject.ca>
Date:   Tue Jun 6 23:01:25 2023 -0400

    Add snapshot test for stdout

commit 971e780f66efb26114d4631ba33892ae216ffb69
Author: object-Object <object@objectobject.ca>
Date:   Tue Jun 6 22:41:06 2023 -0400

    Improve argument help

commit 98b04d57cc79b0fec4e2e10440815b1b0d940915
Author: object-Object <object@objectobject.ca>
Date:   Tue Jun 6 22:34:41 2023 -0400

    Preliminary refactoring, more snapshots

commit 044d0978540a3dae18342e55eee9b66e9b48386a
Author: object-Object <object@objectobject.ca>
Date:   Tue…
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug V2 Bug related to Pydantic V2 unconfirmed Bug not yet confirmed as valid/applicable
Projects
None yet
8 participants