Commit Graph

30 Commits

Author SHA1 Message Date
izzy lyseggen bd4ae7c5c5 fix(base): specify full name for datachunk
would bork in other connectors with name as just `DataChunk`
2021-03-22 17:28:00 +00:00
izzy lyseggen 1bc0cf04f3 fix(base): grammar (detached -> detachable) 2021-03-19 10:20:17 +00:00
izzy lyseggen d0e2350ab7 feat(base): improve adding chunkables/detachables
adds helper methods on `Base` that can be called in the constructors
to prevent ppl messing this up when defining their own objects
2021-03-19 10:14:42 +00:00
izzy lyseggen 614eefc393 fix(serialisation): EMBARASSING BUG
so i'm a bit of a dumbo here.
i didn't realise that doing `.update()` on attr would update the parent
attr as well and extend to all objects every ahhhhhh

you have to do `self.thing = self.thing + blah blah` to just update
the instance attr. the more ya know!

#roastme @cristi8
2021-03-18 18:45:24 +00:00
izzy lyseggen d5b506f298 fix(base): swap getattr_static for getattr
brought serialisation time for a big object
down from 12 seconds to 1.7 seconds!!

ty cristi
2021-03-18 17:05:18 +00:00
izzy lyseggen dcd28b5d79 feat(base): don't return set id on get_id
align with core in that `get_id` _always_ fully serializes to get hash
2021-03-18 16:35:28 +00:00
izzy lyseggen b1b144969b feat(base): include properties in member names 2021-02-24 17:01:32 +00: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
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 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 f6c28689ce refactor(base.py): simplify some base object methods 2021-02-11 09:35:13 +01:00
izzy lyseggen aa032895b6 feat(base): add prop validation
addresses #43
2021-02-05 11:23:03 +00:00
izzy lyseggen 90f5e7602c feat(base): add units prop with helper setter 2021-01-26 10:01:45 +00:00
izzy lyseggen 4dda9b8fe5 fix: remove annotations for py 3.6 compatibility 2021-01-20 16:53:48 +00:00
izzy lyseggen f155129f7c feat(base): dynamic chunk default (1000) 2021-01-19 09:26:42 +00:00
izzy lyseggen 750657db19 feat(base): bypass setattr for prop setters 2021-01-18 15:27:29 +00:00
izzy lyseggen 11bc10d072 feat(base): get id method 2020-12-24 11:37:47 +00:00
izzy lyseggen 21abd5181a fix(base): make chunkable prop protected 2020-12-23 18:32:36 +00:00
izzy lyseggen 77dcf53c4b feat(chunking): add DataChunk class 2020-12-23 18:32:36 +00:00
izzy lyseggen 7fbfdb4b92 fix(base): always use class name for string repr 2020-12-23 18:32:36 +00:00
izzy lyseggen a4f7ce326e feat(Base): add chunks prop 2020-12-23 18:32:36 +00:00
izzy lyseggen a3830a95fd feat(Base): self populate speckleType 2020-12-23 18:32:36 +00:00
izzy lyseggen cf2c9d12a5 fix(Base): speckleType 👉 speckle_type 2020-12-22 11:27:21 +00:00
izzy lyseggen dd5b355305 fix(base): speckle_type 👉 speckleType 2020-12-04 15:54:45 +00:00
izzy lyseggen b00cc3d08e feat(base): to_dict convenience method 2020-11-30 18:39:24 +00:00
izzy lyseggen 91bf8c111d feat(base): add string override 2020-11-30 16:43:09 +00:00
izzy lyseggen cb5cbeaad6 feat(base): allow kwargs in initialisation 2020-11-30 10:12:07 +00:00
izzy lyseggen d01d7824bc feat(base): get total children count 2020-11-19 16:02:32 +00:00
izzy lyseggen f643ee8e89 refactor(base): simplify get_dynamic_member_names 2020-11-19 11:58:28 +00:00
izzy lyseggen 9a27ed1544 feat(base): start Base object with dict set/get 2020-11-19 09:24:13 +00:00