Skip to content

Commit 4b40c17

Browse files
[cherrypick][rc] Revert "chore: fix py chore typing issues" (#2259)
[auto][cherrypick] 9a3a598 Revert "chore: fix py chore typing issues" (#2258)
1 parent 3b16573 commit 4b40c17

File tree

3 files changed

+61
-95
lines changed

3 files changed

+61
-95
lines changed

statsig-pyo3/py_src/statsig_python_core/__init__.py

Lines changed: 0 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -4,39 +4,3 @@
44
from statsig_python_core.data_store import *
55
from statsig_python_core.persistent_storage import *
66
from statsig_python_core.output_logger_provider import *
7-
8-
__all__ = [
9-
"StatsigBasePy",
10-
"Statsig",
11-
"StatsigOptions",
12-
"StatsigUser",
13-
14-
"FeatureGate",
15-
"DynamicConfig",
16-
"Experiment",
17-
"Layer",
18-
"ParameterStore",
19-
20-
"FeatureGateEvaluationOptions",
21-
"DynamicConfigEvaluationOptions",
22-
"ExperimentEvaluationOptions",
23-
"LayerEvaluationOptions",
24-
"ParameterStoreEvaluationOptions",
25-
26-
"EvaluationDetails",
27-
"FailureDetails",
28-
"InitializeDetails",
29-
30-
"DataStore",
31-
"DataStoreResponse",
32-
"ObservabilityClient",
33-
"PersistentStorage",
34-
"OutputLoggerProvider",
35-
36-
"StickyValues",
37-
"UserPersistedValues",
38-
"PersistedValues",
39-
40-
"ProxyConfig",
41-
"SpecAdapterConfig",
42-
]

statsig-pyo3/py_src/statsig_python_core/statsig_python_core.pyi

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -139,22 +139,22 @@ class OutputLoggerProviderBase:
139139

140140
class ParameterStore:
141141
name: builtins.str
142-
def get_string(self, param_name:builtins.str, fallback:builtins.str) -> builtins.str:
142+
def get_string(self, param_name:builtins.str, fallback:builtins.str) -> typing.Optional[builtins.str]:
143143
...
144144

145-
def get_float(self, param_name:builtins.str, fallback:builtins.float) -> builtins.float:
145+
def get_float(self, param_name:builtins.str, fallback:builtins.float) -> typing.Optional[builtins.float]:
146146
...
147147

148-
def get_integer(self, param_name:builtins.str, fallback:builtins.int) -> builtins.int:
148+
def get_integer(self, param_name:builtins.str, fallback:builtins.int) -> typing.Optional[builtins.int]:
149149
...
150150

151-
def get_bool(self, param_name:builtins.str, fallback:builtins.bool) -> builtins.bool:
151+
def get_bool(self, param_name:builtins.str, fallback:builtins.bool) -> typing.Optional[builtins.bool]:
152152
...
153153

154-
def get_array(self, param_name:builtins.str, fallback:list) -> typing.Any:
154+
def get_array(self, param_name:builtins.str, fallback:list) -> typing.Optional[typing.Any]:
155155
...
156156

157-
def get_map(self, param_name:builtins.str, fallback:dict) -> typing.Any:
157+
def get_map(self, param_name:builtins.str, fallback:dict) -> typing.Optional[typing.Any]:
158158
...
159159

160160

statsig-pyo3/src/statsig_types_py.rs

Lines changed: 55 additions & 53 deletions
Original file line numberDiff line numberDiff line change
@@ -229,79 +229,76 @@ pub struct ParameterStorePy {
229229
#[gen_stub_pymethods]
230230
#[pymethods]
231231
impl ParameterStorePy {
232-
pub fn get_string(&self, param_name: &str, fallback: String) -> String {
232+
pub fn get_string(&self, param_name: &str, fallback: String) -> Option<String> {
233233
match self.inner_statsig.upgrade() {
234-
Some(inner_statsig) => inner_statsig
235-
.get_string_parameter_from_store(
236-
&self.user,
237-
&self.name,
238-
param_name,
239-
Some(fallback.clone()),
240-
Some(self.options),
241-
)
242-
.unwrap_or(fallback),
234+
Some(inner_statsig) => inner_statsig.get_string_parameter_from_store(
235+
&self.user,
236+
&self.name,
237+
param_name,
238+
Some(fallback),
239+
Some(self.options),
240+
),
243241
None => {
244242
log_e!(TAG, "Failed to upgrade Statsig instance");
245-
fallback
243+
Some(fallback)
246244
}
247245
}
248246
}
249247

250-
pub fn get_float(&self, param_name: &str, fallback: f64) -> f64 {
248+
pub fn get_float(&self, param_name: &str, fallback: f64) -> Option<f64> {
251249
match self.inner_statsig.upgrade() {
252-
Some(inner_statsig) => inner_statsig
253-
.get_float_parameter_from_store(
254-
&self.user,
255-
&self.name,
256-
param_name,
257-
Some(fallback),
258-
Some(self.options),
259-
)
260-
.unwrap_or(fallback),
250+
Some(inner_statsig) => inner_statsig.get_float_parameter_from_store(
251+
&self.user,
252+
&self.name,
253+
param_name,
254+
Some(fallback),
255+
Some(self.options),
256+
),
261257
None => {
262258
log_e!(TAG, "Failed to upgrade Statsig instance");
263-
fallback
259+
Some(fallback)
264260
}
265261
}
266262
}
267263

268-
pub fn get_integer(&self, param_name: &str, fallback: i64) -> i64 {
264+
pub fn get_integer(&self, param_name: &str, fallback: i64) -> Option<i64> {
269265
match self.inner_statsig.upgrade() {
270-
Some(inner_statsig) => inner_statsig
271-
.get_integer_parameter_from_store(
272-
&self.user,
273-
&self.name,
274-
param_name,
275-
Some(fallback),
276-
Some(self.options),
277-
)
278-
.unwrap_or(fallback),
266+
Some(inner_statsig) => inner_statsig.get_integer_parameter_from_store(
267+
&self.user,
268+
&self.name,
269+
param_name,
270+
Some(fallback),
271+
Some(self.options),
272+
),
279273
None => {
280274
log_e!(TAG, "Failed to upgrade Statsig instance");
281-
fallback
275+
Some(fallback)
282276
}
283277
}
284278
}
285279

286-
pub fn get_bool(&self, param_name: &str, fallback: bool) -> bool {
280+
pub fn get_bool(&self, param_name: &str, fallback: bool) -> Option<bool> {
287281
match self.inner_statsig.upgrade() {
288-
Some(inner_statsig) => inner_statsig
289-
.get_boolean_parameter_from_store(
290-
&self.user,
291-
&self.name,
292-
param_name,
293-
Some(fallback),
294-
Some(self.options),
295-
)
296-
.unwrap_or(fallback),
282+
Some(inner_statsig) => inner_statsig.get_boolean_parameter_from_store(
283+
&self.user,
284+
&self.name,
285+
param_name,
286+
Some(fallback),
287+
Some(self.options),
288+
),
297289
None => {
298290
log_e!(TAG, "Failed to upgrade Statsig instance");
299-
fallback
291+
Some(fallback)
300292
}
301293
}
302294
}
303295

304-
pub fn get_array(&self, py: Python, param_name: &str, fallback: Bound<PyList>) -> PyObject {
296+
pub fn get_array(
297+
&self,
298+
py: Python,
299+
param_name: &str,
300+
fallback: Bound<PyList>,
301+
) -> Option<PyObject> {
305302
match self.inner_statsig.upgrade() {
306303
Some(inner_statsig) => {
307304
let result = inner_statsig.get_array_parameter_from_store(
@@ -313,21 +310,26 @@ impl ParameterStorePy {
313310
);
314311
if let Some(result) = result {
315312
match list_of_values_to_py_list(py, &result) {
316-
Ok(list) => list,
317-
Err(_) => fallback.into(),
313+
Ok(list) => Some(list),
314+
Err(_) => Some(fallback.into()),
318315
}
319316
} else {
320-
fallback.into()
317+
Some(fallback.into())
321318
}
322319
}
323320
None => {
324321
log_e!(TAG, "Failed to upgrade Statsig instance");
325-
fallback.into()
322+
Some(fallback.into())
326323
}
327324
}
328325
}
329326

330-
pub fn get_map(&self, py: Python, param_name: &str, fallback: Bound<PyDict>) -> PyObject {
327+
pub fn get_map(
328+
&self,
329+
py: Python,
330+
param_name: &str,
331+
fallback: Bound<PyDict>,
332+
) -> Option<PyObject> {
331333
match self.inner_statsig.upgrade() {
332334
Some(inner_statsig) => {
333335
let result = inner_statsig.get_object_parameter_from_store(
@@ -338,14 +340,14 @@ impl ParameterStorePy {
338340
Some(self.options),
339341
);
340342
if let Some(result) = result {
341-
map_to_py_dict(py, &result)
343+
Some(map_to_py_dict(py, &result))
342344
} else {
343-
fallback.into()
345+
Some(fallback.into())
344346
}
345347
}
346348
None => {
347349
log_e!(TAG, "Failed to upgrade Statsig instance");
348-
fallback.into()
350+
Some(fallback.into())
349351
}
350352
}
351353
}

0 commit comments

Comments
 (0)