This is an automated email from the ASF dual-hosted git repository.

chaokunyang pushed a change to branch main
in repository https://gitbox.apache.org/repos/asf/fory.git


    from e13399532 feat(JavaScript):  Impl xlang Map and Collection (#3249)
     add 9891bdeb5 feat(compiler/runtime): use hash for generated class as id 
and refactor user type id encoding (#3248)

No new revisions were added by this update.

Summary of changes:
 .gitignore                                         |  48 +-
 compiler/README.md                                 |   4 +
 compiler/extension/fory_options.proto              |   7 +
 compiler/fory_compiler/cli.py                      |  43 +-
 compiler/fory_compiler/frontend/fbs/translator.py  |   1 +
 compiler/fory_compiler/frontend/fdl/parser.py      |  32 +-
 .../fory_compiler/frontend/proto/translator.py     |   1 +
 compiler/fory_compiler/generators/base.py          |  15 +
 compiler/fory_compiler/generators/cpp.py           |  20 +-
 compiler/fory_compiler/generators/go.py            |  12 +-
 compiler/fory_compiler/generators/java.py          |  38 +-
 compiler/fory_compiler/generators/python.py        |  18 +-
 compiler/fory_compiler/generators/rust.py          |  12 +-
 compiler/fory_compiler/ir/ast.py                   |  13 +-
 compiler/fory_compiler/ir/type_id.py               |  69 ++
 compiler/fory_compiler/ir/validator.py             |  71 ++
 compiler/fory_compiler/tests/test_auto_id.py       | 202 ++++++
 .../fory_compiler/tests/test_proto_frontend.py     |  15 +
 cpp/fory/meta/meta_string.cc                       |  17 +-
 cpp/fory/meta/meta_string_test.cc                  |   3 +-
 cpp/fory/serialization/any_serializer.h            |   7 +-
 cpp/fory/serialization/array_serializer.h          |  16 +-
 cpp/fory/serialization/basic_serializer.h          |  80 +--
 cpp/fory/serialization/collection_serializer.h     | 116 ++--
 .../serialization/collection_serializer_test.cc    |   1 +
 cpp/fory/serialization/context.cc                  | 234 +++++--
 cpp/fory/serialization/context.h                   |  41 +-
 cpp/fory/serialization/enum_serializer.h           |   4 +-
 cpp/fory/serialization/map_serializer.h            |  91 ++-
 cpp/fory/serialization/serialization_test.cc       |  46 +-
 cpp/fory/serialization/serializer.h                |  11 +-
 cpp/fory/serialization/skip.cc                     |  68 +-
 .../serialization/smart_ptr_serializer_test.cc     |   4 +
 cpp/fory/serialization/smart_ptr_serializers.h     |  28 +-
 cpp/fory/serialization/string_serializer.h         |  20 +-
 cpp/fory/serialization/struct_serializer.h         |  79 ++-
 cpp/fory/serialization/struct_test.cc              |   2 +
 cpp/fory/serialization/temporal_serializers.h      |  24 +-
 cpp/fory/serialization/tuple_serializer.h          |  20 +-
 cpp/fory/serialization/type_info.h                 |   6 +-
 cpp/fory/serialization/type_resolver.cc            | 190 ++++--
 cpp/fory/serialization/type_resolver.h             | 557 +++++++++++++---
 cpp/fory/serialization/union_serializer.h          |  16 +-
 cpp/fory/serialization/unsigned_serializer.h       |  74 +--
 cpp/fory/serialization/variant_serializer.h        |   8 +-
 cpp/fory/serialization/xlang_test_main.cc          |  13 +-
 cpp/fory/type/type.h                               |  53 +-
 cpp/fory/util/flat_int_map_test.cc                 |   7 +-
 dart/packages/fory/lib/src/const/obj_type.dart     |  10 +
 .../lib/src/exception/registration_exception.dart  |   4 +-
 dart/packages/fory/lib/src/fory_context.dart       |   8 +-
 dart/packages/fory/lib/src/meta/type_info.dart     |   8 +-
 .../resolver/impl/meta_string_resolver_impl.dart   |   5 +
 .../impl/meta_string_writing_resolver_impl.dart    |   4 +-
 .../lib/src/resolver/impl/xtype_resolver_impl.dart |  20 +-
 docs/compiler/fdl-syntax.md                        | 153 ++++-
 docs/compiler/generated-code.md                    |   3 +-
 docs/compiler/index.md                             |  54 +-
 docs/guide/cpp/custom-serializers.md               |   8 +-
 go/fory/array.go                                   |  24 +-
 go/fory/enum.go                                    |   2 +-
 go/fory/field_info.go                              |  31 +-
 go/fory/fory.go                                    |  62 +-
 go/fory/map.go                                     |   4 +-
 go/fory/map_primitive.go                           |  76 +--
 go/fory/meta_string_resolver.go                    |  19 +-
 go/fory/optional_serializer.go                     |   6 +-
 go/fory/pointer.go                                 |   6 +-
 go/fory/primitive.go                               |  56 +-
 go/fory/reader.go                                  |  53 +-
 go/fory/set.go                                     |  28 +-
 go/fory/skip.go                                    | 118 ++--
 go/fory/slice.go                                   |   8 +-
 go/fory/slice_primitive.go                         |   8 +-
 go/fory/string.go                                  |   8 +-
 go/fory/struct.go                                  |  89 +--
 go/fory/time.go                                    |   8 +-
 go/fory/type_def.go                                | 140 ++--
 go/fory/type_def_test.go                           |   3 +
 go/fory/type_resolver.go                           | 604 ++++++++---------
 go/fory/types.go                                   |  60 +-
 go/fory/union.go                                   |   4 +-
 go/fory/writer.go                                  |   3 +-
 integration_tests/idl_tests/cpp/CMakeLists.txt     |   2 +-
 integration_tests/idl_tests/cpp/main.cc            |  72 ++-
 integration_tests/idl_tests/generate_idl.py        |  56 +-
 .../idl_tests/go/idl_roundtrip_test.go             | 118 +++-
 .../idl_tests/go/root_roundtrip_test.go            |   6 +-
 integration_tests/idl_tests/idl/addressbook.fdl    |   2 +-
 .../idl_tests/idl/{graph.fdl => auto_id.fdl}       |  33 +-
 integration_tests/idl_tests/idl/complex_pb.proto   |   2 +-
 integration_tests/idl_tests/idl/tree.fdl           |   2 +-
 .../apache/fory/idl_tests/IdlRoundTripTest.java    |  70 +-
 .../python/{src => }/idl_tests/__init__.py         |   0
 .../python/{src => }/idl_tests/roundtrip.py        |  48 ++
 integration_tests/idl_tests/python/pyproject.toml  |   2 +-
 integration_tests/idl_tests/run_python_tests.sh    |   2 +-
 integration_tests/idl_tests/rust/src/lib.rs        |  38 +-
 .../idl_tests/rust/tests/idl_roundtrip.rs          |  62 +-
 .../src/main/java/org/apache/fory/Fory.java        | 257 ++++----
 .../fory/builder/BaseObjectCodecBuilder.java       | 111 ++--
 .../java/org/apache/fory/builder/CodecBuilder.java |  13 +-
 .../java/org/apache/fory/builder/CodecUtils.java   |  12 +-
 .../java/org/apache/fory/builder/Generated.java    |   6 +-
 .../fory/builder/MetaSharedCodecBuilder.java       |  28 +-
 .../fory/builder/MetaSharedLayerCodecBuilder.java  |  14 +-
 .../java/org/apache/fory/collection/LongMap.java   |   2 +-
 .../java/org/apache/fory/config/ForyBuilder.java   |   2 +-
 .../java/org/apache/fory/memory/MemoryBuffer.java  |  10 +-
 .../main/java/org/apache/fory/meta/ClassSpec.java  |  26 +-
 .../main/java/org/apache/fory/meta/FieldTypes.java | 188 ++++--
 ...ssDefDecoder.java => NativeTypeDefDecoder.java} |  79 ++-
 ...ssDefEncoder.java => NativeTypeDefEncoder.java} |  88 ++-
 .../fory/meta/{ClassDef.java => TypeDef.java}      |  81 +--
 .../java/org/apache/fory/meta/TypeDefDecoder.java  |  39 +-
 .../java/org/apache/fory/meta/TypeDefEncoder.java  |  61 +-
 .../org/apache/fory/resolver/ClassResolver.java    | 712 +++++++++++----------
 .../java/org/apache/fory/resolver/MetaContext.java |   4 +-
 .../apache/fory/resolver/MetaStringResolver.java   |  12 +-
 .../apache/fory/resolver/SerializationContext.java |   4 +-
 .../resolver/{ClassInfo.java => TypeInfo.java}     | 112 ++--
 .../{ClassInfoHolder.java => TypeInfoHolder.java}  |  14 +-
 .../org/apache/fory/resolver/TypeResolver.java     | 710 ++++++++++----------
 .../org/apache/fory/resolver/XtypeResolver.java    | 446 +++++++------
 .../apache/fory/serializer/ArraySerializers.java   |  18 +-
 .../apache/fory/serializer/CodegenSerializer.java  |   6 +-
 .../org/apache/fory/serializer/FieldGroups.java    |  34 +-
 .../apache/fory/serializer/ForwardSerializer.java  |   8 +-
 .../org/apache/fory/serializer/LazySerializer.java |   4 +-
 .../fory/serializer/MetaSharedLayerSerializer.java |  20 +-
 .../fory/serializer/MetaSharedSerializer.java      |  48 +-
 .../apache/fory/serializer/NonexistentClass.java   |   8 +-
 .../serializer/NonexistentClassSerializers.java    | 108 ++--
 .../apache/fory/serializer/ObjectSerializer.java   |  73 ++-
 .../fory/serializer/ObjectStreamSerializer.java    | 209 +++---
 .../fory/serializer/ReplaceResolveSerializer.java  |  24 +-
 .../fory/serializer/SerializationBinding.java      | 141 ++--
 .../apache/fory/serializer/SerializationUtils.java |   6 +-
 .../org/apache/fory/serializer/Serializers.java    |   6 +-
 .../apache/fory/serializer/UnionSerializer.java    |  46 +-
 .../collection/ChildContainerSerializers.java      |  10 +-
 .../collection/CollectionLikeSerializer.java       |  52 +-
 .../collection/CollectionSerializers.java          |  32 +-
 .../serializer/collection/MapLikeSerializer.java   | 107 ++--
 .../fory/serializer/collection/MapSerializers.java |  11 +-
 .../collection/SerializationBinding.java           |  20 +-
 .../apache/fory/serializer/struct/Fingerprint.java |   9 +-
 .../main/java/org/apache/fory/type/Generics.java   |   6 +-
 .../src/main/java/org/apache/fory/type/Types.java  |  36 +-
 .../java/org/apache/fory/util/LoaderBinding.java   |  12 +-
 .../src/main/java/org/apache/fory/util/Utils.java  |   2 +
 .../fory-core/native-image.properties              |  12 +-
 .../src/test/java/org/apache/fory/CyclicTest.java  |  33 +-
 .../test/java/org/apache/fory/ForyTestBase.java    |   4 +-
 .../src/test/java/org/apache/fory/TestUtils.java   |   6 +-
 .../apache/fory/annotation/ForyAnnotationTest.java |  10 +-
 .../apache/fory/annotation/ForyFieldTagIdTest.java |   6 +-
 .../org/apache/fory/builder/JITContextTest.java    |  26 +-
 .../java/org/apache/fory/meta/ClassDefTest.java    | 503 ---------------
 ...oderTest.java => NativeTypeDefEncoderTest.java} |  66 +-
 .../java/org/apache/fory/meta/TypeDefTest.java     | 507 ++++++++++++++-
 .../apache/fory/resolver/ClassResolverTest.java    |  50 +-
 .../org/apache/fory/resolver/MetaContextTest.java  |   2 +-
 .../{ClassInfoTest.java => TypeInfoTest.java}      |   4 +-
 .../fory/serializer/CodegenSerializerTest.java     |   6 +-
 .../fory/serializer/CompatibleSerializerTest.java  |   2 +-
 .../FinalFieldReplaceResolveSerializerTest.java    |  30 +-
 .../fory/serializer/MetaSharedCompatibleTest.java  |   4 +-
 .../serializer/ProtocolInteroperabilityTest.java   |   9 +-
 .../org/apache/fory/serializer/RegisterTest.java   |   4 +-
 .../serializer/collection/MapSerializersTest.java  |   8 +-
 .../java/org/apache/fory/xlang/XlangTestBase.java  |   2 +-
 ...DefEncoderTest.java => TypeDefEncoderTest.java} |  22 +-
 javascript/packages/fory/lib/fory.ts               |  18 +-
 javascript/packages/fory/lib/gen/any.ts            |  44 +-
 javascript/packages/fory/lib/gen/builder.ts        |  15 +-
 javascript/packages/fory/lib/gen/collection.ts     |   9 +-
 javascript/packages/fory/lib/gen/enum.ts           |  43 +-
 javascript/packages/fory/lib/gen/index.ts          |   6 +-
 javascript/packages/fory/lib/gen/map.ts            |  12 +-
 javascript/packages/fory/lib/gen/router.ts         |   2 +-
 javascript/packages/fory/lib/gen/serializer.ts     |  60 +-
 javascript/packages/fory/lib/gen/struct.ts         | 101 ++-
 javascript/packages/fory/lib/meta/TypeMeta.ts      |  76 ++-
 javascript/packages/fory/lib/metaStringResolver.ts |  19 +-
 javascript/packages/fory/lib/type.ts               |  50 +-
 javascript/packages/fory/lib/typeInfo.ts           |  31 +-
 javascript/packages/fory/lib/typeMetaResolver.ts   |  10 +-
 .../fory/lib/{classResolver.ts => typeResolver.ts} |  61 +-
 licenserc.toml                                     |   1 +
 python/pyfory/_fory.py                             |  32 +-
 python/pyfory/collection.pxi                       | 156 ++---
 python/pyfory/collection.py                        |  54 +-
 python/pyfory/includes/libserialization.pxd        |  14 +-
 python/pyfory/meta/typedef.py                      | 117 +++-
 python/pyfory/meta/typedef_decoder.py              |  28 +-
 python/pyfory/meta/typedef_encoder.py              |  16 +-
 python/pyfory/registry.py                          | 307 +++++----
 python/pyfory/serialization.pyx                    | 292 ++++++---
 python/pyfory/serializer.py                        |   6 +-
 python/pyfory/struct.py                            |  46 +-
 python/pyfory/tests/test_field_meta.py             |   8 +-
 python/pyfory/tests/test_metastring_resolver.py    |  73 ++-
 python/pyfory/tests/test_serializer.py             |   4 +-
 python/pyfory/types.py                             |  14 +-
 python/pyfory/union.py                             |  26 +-
 rust/fory-core/src/meta/type_meta.rs               | 109 +++-
 rust/fory-core/src/resolver/context.rs             |  48 +-
 rust/fory-core/src/resolver/meta_resolver.rs       |  61 +-
 .../fory-core/src/resolver/meta_string_resolver.rs |  17 +-
 rust/fory-core/src/resolver/type_resolver.rs       | 237 +++++--
 rust/fory-core/src/serializer/any.rs               |  67 +-
 rust/fory-core/src/serializer/arc.rs               |  11 +-
 rust/fory-core/src/serializer/array.rs             |  10 +-
 rust/fory-core/src/serializer/bool.rs              |  10 +-
 rust/fory-core/src/serializer/box_.rs              |  15 +-
 rust/fory-core/src/serializer/collection.rs        |  24 +-
 rust/fory-core/src/serializer/core.rs              |  39 +-
 rust/fory-core/src/serializer/datetime.rs          |  30 +-
 rust/fory-core/src/serializer/enum_.rs             |  39 +-
 rust/fory-core/src/serializer/heap.rs              |   8 +-
 rust/fory-core/src/serializer/list.rs              |  28 +-
 rust/fory-core/src/serializer/map.rs               |  44 +-
 rust/fory-core/src/serializer/marker.rs            |   8 +-
 rust/fory-core/src/serializer/mutex.rs             |  12 +-
 rust/fory-core/src/serializer/number.rs            |   8 +-
 rust/fory-core/src/serializer/option.rs            |   4 +-
 rust/fory-core/src/serializer/primitive_list.rs    |   4 +-
 rust/fory-core/src/serializer/rc.rs                |  11 +-
 rust/fory-core/src/serializer/refcell.rs           |  12 +-
 rust/fory-core/src/serializer/set.rs               |  16 +-
 rust/fory-core/src/serializer/skip.rs              | 187 +++---
 rust/fory-core/src/serializer/string.rs            |  10 +-
 rust/fory-core/src/serializer/struct_.rs           |  51 +-
 rust/fory-core/src/serializer/trait_object.rs      |  97 +--
 rust/fory-core/src/serializer/tuple.rs             |  24 +-
 rust/fory-core/src/serializer/unsigned_number.rs   |  16 +-
 rust/fory-core/src/serializer/util.rs              |  14 +-
 rust/fory-core/src/serializer/weak.rs              |  26 +-
 rust/fory-core/src/types.rs                        |  60 +-
 rust/fory-derive/src/object/derive_enum.rs         |  11 +-
 rust/fory-derive/src/object/misc.rs                |   7 +
 rust/fory-derive/src/object/read.rs                |  62 +-
 rust/fory-derive/src/object/serializer.rs          |  10 +-
 rust/fory-derive/src/object/util.rs                |  56 +-
 rust/fory/src/lib.rs                               |   2 +-
 rust/tests/tests/compatible/test_struct.rs         |   5 +-
 rust/tests/tests/test_cross_language.rs            |   2 +-
 rust/tests/tests/test_ext.rs                       |   2 +-
 rust/tests/tests/test_fory.rs                      |  28 +-
 rust/tests/tests/test_meta.rs                      |   5 +-
 .../fory/serializer/scala/RangeSerializer.scala    |   6 +-
 252 files changed, 8008 insertions(+), 5368 deletions(-)
 create mode 100644 compiler/fory_compiler/ir/type_id.py
 create mode 100644 compiler/fory_compiler/tests/test_auto_id.py
 copy integration_tests/idl_tests/idl/{graph.fdl => auto_id.fdl} (70%)
 rename integration_tests/idl_tests/python/{src => }/idl_tests/__init__.py 
(100%)
 rename integration_tests/idl_tests/python/{src => }/idl_tests/roundtrip.py 
(94%)
 rename java/fory-core/src/main/java/org/apache/fory/meta/{ClassDefDecoder.java 
=> NativeTypeDefDecoder.java} (74%)
 rename java/fory-core/src/main/java/org/apache/fory/meta/{ClassDefEncoder.java 
=> NativeTypeDefEncoder.java} (82%)
 rename java/fory-core/src/main/java/org/apache/fory/meta/{ClassDef.java => 
TypeDef.java} (84%)
 rename java/fory-core/src/main/java/org/apache/fory/resolver/{ClassInfo.java 
=> TypeInfo.java} (70%)
 rename 
java/fory-core/src/main/java/org/apache/fory/resolver/{ClassInfoHolder.java => 
TypeInfoHolder.java} (77%)
 delete mode 100644 
java/fory-core/src/test/java/org/apache/fory/meta/ClassDefTest.java
 rename 
java/fory-core/src/test/java/org/apache/fory/meta/{ClassDefEncoderTest.java => 
NativeTypeDefEncoderTest.java} (74%)
 rename 
java/fory-core/src/test/java/org/apache/fory/resolver/{ClassInfoTest.java => 
TypeInfoTest.java} (90%)
 rename 
java/fory-extensions/src/test/java/org/apache/fory/extension/meta/{ClassDefEncoderTest.java
 => TypeDefEncoderTest.java} (70%)
 rename javascript/packages/fory/lib/{classResolver.ts => typeResolver.ts} (82%)


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to