@@ -44,7 +44,10 @@ def vetiver_pin_write(board, model: VetiverModel, versioned: bool = True):
4444 >>> vetiver.vetiver_pin_write(model_board, v)
4545 """
4646 if not board .allow_pickle_read :
47- raise NotImplementedError # must be pickle-able
47+ raise ValueError (
48+ "board does not allow pickled models. Set "
49+ "allow_pickle_read to True on board creation."
50+ )
4851
4952 inform (
5053 _log ,
@@ -61,8 +64,6 @@ def vetiver_pin_write(board, model: VetiverModel, versioned: bool = True):
6164 if isinstance (model .metadata , dict ):
6265 model .metadata = VetiverMeta .from_dict (model .metadata )
6366
64- required_pkgs = get_board_pkgs (board ) + model .metadata .required_pkgs
65-
6667 board .pin_write (
6768 model .model ,
6869 name = model .model_name ,
@@ -71,7 +72,7 @@ def vetiver_pin_write(board, model: VetiverModel, versioned: bool = True):
7172 metadata = {
7273 "user" : model .metadata .user ,
7374 "vetiver_meta" : {
74- "required_pkgs" : required_pkgs ,
75+ "required_pkgs" : model . metadata . required_pkgs ,
7576 "prototype" : None if not model .prototype else model .prototype ().json (),
7677 "python_version" : None
7778 if not model .metadata .python_version
@@ -117,7 +118,7 @@ def vetiver_pin_read(board, name: str, version: str = None) -> VetiverModel:
117118 return v
118119
119120
120- def get_board_pkgs (board ) -> List [str ]:
121+ def _get_board_pkgs (board ) -> List [str ]:
121122 """
122123 Extract packages required for pin board authorization
123124
@@ -144,7 +145,7 @@ def get_board_pkgs(board) -> List[str]:
144145 return ["gcsfs" ]
145146 else :
146147 warnings .warn (
147- f"required packages unknown for protocol: { prot } , "
148- "add to model's metadata to ensure they are exported "
148+ f"required packages unknown for board protocol: { prot } , "
149+ "add to model's metadata to export "
149150 )
150151 return []
0 commit comments