Commit Graph

262 Commits

Author SHA1 Message Date
izzy lyseggen ec94a42ac6 Merge pull request #69 from specklesystems/izzy/detached-lists
fix(serializer): detached lists
2021-03-18 11:09:47 +00:00
izzy lyseggen 6e64770380 test(serializer): test detachment within lists 2021-03-17 17:38:05 +00:00
izzy lyseggen ef92127ed2 feat(serializer): support detachment within lists
this was a borkage on my part - oops!
2021-03-17 17:37:45 +00:00
izzy lyseggen fb8a40bf76 Merge pull request #67 from specklesystems/izzy/objects
fix(serialiser): import geometry objects
2021-03-01 11:17:22 +00:00
izzy lyseggen 81fab3ec6b fix(serialiser): import geometry objects
default to using our obj for deserialisation
2021-03-01 11:15:51 +00:00
izzy lyseggen 9a0c36c665 Merge pull request #66 from specklesystems/izzy/objects
🧊 Basic Geometry Objects
2021-02-26 18:03:41 +00:00
izzy lyseggen 995526c786 feat(objects): jk i gotchu with dem breps 😉 2021-02-26 18:01:14 +00:00
izzy lyseggen 5a66d912ae test: update to use new geo objects 2021-02-26 16:56:49 +00:00
izzy lyseggen 78abbb18c4 feat(objects): geometry yoooo
all geo except for breps
2021-02-26 16:56:10 +00:00
izzy lyseggen 26abdc952a fix(units): add new none type 2021-02-26 16:28:38 +00:00
izzy lyseggen 9a0207ba09 feat(obj): update point class
remove value attribute
2021-02-24 18:34:40 +00:00
izzy lyseggen 4369f8c5c8 Merge pull request #64 from specklesystems/izzy/props
🥠 feat(base): support serialisation of all properties
2021-02-24 17:15:18 +00:00
izzy lyseggen bc432c2f13 feat(objects): override point type 2021-02-24 17:02:47 +00:00
izzy lyseggen d1d3876902 feat(serializer): traverse properties as well 2021-02-24 17:02:11 +00:00
izzy lyseggen b1b144969b feat(base): include properties in member names 2021-02-24 17:01:32 +00:00
izzy lyseggen 4e3ee488be refactor(operations): small simplification 2021-02-24 16:59:12 +00:00
izzy lyseggen b2e2455b16 Merge pull request #61 from specklesystems/izzy/bug-fixes
🐛 Even more bug fixes!
2021-02-22 18:27:06 +00:00
izzy lyseggen ede286f4c0 fix(serialiser): generalise receiving chunk check 2021-02-22 18:23:30 +00:00
izzy lyseggen 56547a4573 fix(client): register branches methods 2021-02-22 18:23:30 +00:00
izzy lyseggen 13886b9caf Merge pull request #58 from gjedlicska/base_type_registration
Custom Base subclasses are automatically registered for deserialization
2021-02-22 18:22:08 +00:00
Gergő Jedlicska 5342cc4827 fix(recomposition): add dictionary recomposition option
If speckle type is not defined for an object, its recomposition results a python dictionary.
2021-02-22 19:17:09 +01:00
Gergő Jedlicska 6fe338628d test(deserialization): undefined behavior of deserialization
Add failing test to uncover a possible bug in deserialization
2021-02-22 17:04:46 +01:00
Gergő Jedlicska 48883466fb Merge branch 'main' of github.com:specklesystems/speckle-py into base_type_registration 2021-02-22 16:59:22 +01:00
izzy lyseggen 47917d99b0 Merge pull request #60 from specklesystems/izzy/receive-fix
🐛 fix(serialiser): smol bug fixes
2021-02-22 10:53:24 +00:00
izzy lyseggen 7703de0a37 test: unknown type deserialisation 2021-02-22 10:22:02 +00:00
izzy lyseggen 81b96cb6ac fix(serialiser): smol bug fixes
- don't overwrite `speckle_type` when receiving unknown object
- check for empty lists on deserialisation
- explicit none check for ignored vals on serialisation
(was unintentionally ignoring `0`s)
2021-02-22 10:17:09 +00:00
Matteo Cominetti 2334aefb09 docs: updates readme with link to docs 2021-02-19 18:38:51 +00:00
Gergő Jedlicska 800b0018a0 style: ran formatter on codebase 2021-02-17 23:52:14 +01:00
Gergő Jedlicska e6cf22e97a feat(base.py): provide easy subclass type registration for (de)serialization
Implement automatic type register mechanism that stores all speckle Base model subclasses in a type
register for deserialization reuse in transports. This enables the Base to be useful as a base kit
object.

fix #50
2021-02-17 23:51:07 +01:00
izzy lyseggen f5abcec6d0 Merge pull request #53 from CyrilWaechter/patch-1
Add infos and fix to README.md
2021-02-16 15:31:39 +00:00
Cyril Waechter fcd54a0899 Add info to README.md
* Add some import to make origin of objects / module used explicit
* Fix #L118:
```python
In [46]: received_base = client.object.get(hash)
---------------------------------------------------------------------------
TypeError                                 Traceback (most recent call last)
<ipython-input-46-8171539461b3> in <module>
----> 1 received_base = client.object.get(hash)

TypeError: get() missing 1 required positional argument: 'object_id'
```
2021-02-16 15:43:36 +01:00
Gergő Jedlicska adfba846ce Merge branch 'base_type_registration' of github.com:gjedlicska/speckle-py into base_type_registration 2021-02-13 14:48:10 +01:00
Gergő Jedlicska 4933ca4abf feat(base object): enforce unique speckle_type value
It was possible to override the builint types with a duplicate speckle_type, either via a duplicate
class name of an explicit speckle_type definition. It is now checked before registering the new type
in the subclass registry, and a meaningful error is thrown.
2021-02-13 14:46:54 +01:00
Gergő Jedlicska 8ce595cb4a feat(base object): enforce unique speckle_type value
It was possible to override the builint types with a duplicate speckle_type, either via a duplicate
class name of an explicit speckle_type definition. It is now checked before registering the new type
in the subclass registry, and a meaningful error is thrown.

#50
2021-02-13 14:45:14 +01:00
Gergő Jedlicska 1114b210f9 refactor(objects module def): remove redundant subclass discovery code
With the automated subclass registry, there is no need for the magic module lookup in objects
__init__
2021-02-13 14:06:32 +01:00
Gergő Jedlicska 00c1e378d5 feat(base model and deserialization): base model subclasses can now be automatically deserialized
Subclassing types of Base are stored in a class attribute that can be looked up via the
`speckle_type`.

fix #50
2021-02-13 10:19:12 +01:00
Gergő Jedlicska 1291b5799b Merge branch 'main' of github.com:specklesystems/speckle-py into base_type_registration 2021-02-13 09:51:32 +01:00
izzy lyseggen 75fb2da7c2 Merge pull request #57 from specklesystems/izzy/obj-fix
🧺 Trash the workarounds in ops and serialiser for `speckle_type` vs `speckleType`
2021-02-12 11:33:58 +00:00
izzy lyseggen d760fa47ec refactor(base): more cleanup 2021-02-12 11:32:38 +00:00
izzy lyseggen e61968d88c refactor(ops): remove this nonsense lol
related to specklesystems
/
speckle-server#78

fixed in specklesystems/speckle-server@aca61b8
2021-02-12 10:57:56 +00:00
izzy lyseggen 01e3e5aa47 refactor(serializer): remove speckleType check
related to specklesystems
/
speckle-server#78

fixed in specklesystems/speckle-server@aca61b8
2021-02-12 10:57:35 +00:00
Gergő Jedlicska 7f2c26eb6b refactor(test_base.py): refactor base object invalid prop tests
Utilizing a few pytest features to make invalid prop tests a bit sleeker
2021-02-11 22:04:20 +01:00
Gergő Jedlicska 5f35da3be9 style(black config): added explicit black config to pyproject.toml 2021-02-11 21:43:28 +01:00
Gergő Jedlicska 98c3b89d75 Merge branch 'main' of github.com:specklesystems/speckle-py into base_type_registration 2021-02-11 20:35:22 +01:00
Gergő Jedlicska 5796ff6cdb docs(example/base_registrar.py): add example implementation for SpeckleBase class register
re #50
2021-02-11 20:34:35 +01:00
izzy lyseggen df4706aa56 Merge pull request #56 from specklesystems/revert-54-delete_requirements
Revert "Repo housekeeping"
2021-02-11 09:15:56 +00:00
izzy lyseggen 855d499eb8 Revert "Repo housekeeping" 2021-02-11 09:13:54 +00:00
izzy lyseggen a19ce15168 Merge pull request #55 from gjedlicska/base_validation_cleanup
Base object code cleanup
2021-02-11 09:09:50 +00:00
izzy lyseggen b2d89cad21 Merge pull request #54 from gjedlicska/delete_requirements
Repo housekeeping
2021-02-11 08:45:58 +00:00
Gergő Jedlicska f6c28689ce refactor(base.py): simplify some base object methods 2021-02-11 09:35:13 +01:00