Skip to content

0.4.0 - Rust user change, Initialize metadata in Java and performance improvement

Choose a tag to compare

@statsig-kong statsig-kong released this 19 May 16:16
· 1808 commits to main since this release
361dec3

⚠️ Important Changes

Only affecting rust sdk: StatsigUser data has moved one level deeper to StatsigUserData
This change means:

  • To create more complex StatsigUser, need to create StatsigUserData. StatsigUser only expose with customID and withUserID
  • Instead of serializing and deserializing StatsigUser, now need to serialize StatsigUserData.
  • Use StatsigUserBuilder to create StatsigUser objects:
let user = StatsigUserBuilder::new_with_user_id("user-123".to_string())
    .email(Some("user@example.com".to_string()))
    .ip(Some("192.168.1.1".to_string()))
    .user_agent(Some("Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36".to_string()))
    .country(Some("US".to_string()))
    .locale(Some("en-US".to_string()))
    .app_version(Some("1.0.0".to_string()))
    .custom_ids(Some(custom_ids))
    .custom(Some(custom_attributes))
    .private_attributes(Some(private_attributes))
    .build();

New Features

  • spec_source_api tag in emitted metrics
  • custom output logger in rust + python
  • initialize with details in java

Improvements

  • performance improvement
  • supports java 8

Included In This Release

  • 97e89b8 statsig-kong[bot]
    • [automated] chore: bump version to 0.3.2-beta.250517 (#1057)
  • 2bc098f Xin Li
    • expose UserData (#1055)
  • 6c2a963 kat-statsig
    • add spec url (#1018)
  • 2755675 kat-statsig
    • python output logger (#1030)
  • 9c4a6cd Weihao Ding
    • tool(java): hook spotless check into lint gh workflow (#1053)
  • 56ac74d Weihao Ding
    • tool(java): enforce format check (#1051)
  • 18a3c27 Weihao Ding
    • chore(java): reformat all java files (#1050)
  • 3f914a9 kat-statsig
    • fix ob client for adapter use case (#1049)
  • 74fa0ca Xin Li
    • Update log event api to match legacy java (#1045)
  • 75cb19c Weihao Ding
    • chore(java): fix syntax for init details (#1046)
  • aff40e1 statsig-kong[bot]
    • [automated] chore: bump version to 0.3.2-beta.250516 (#1047)
  • f35677b varshaa-statsig
    • Java Core - Initialize with details (#1022)
  • 5193c5d Daniel
    • tool(kong): parallelize test runs (#1036)
  • e670fe2 devin-ai-integration[bot]
    • Add event_logging_max_pending_batch_queue_size to Java bindings (#1041)
  • 2f3a64a Weihao Ding
    • test(java): mock http test (#1038)
  • ff7af2b Weihao Ding
    • chore(java): add getter for eval details (#1037)
  • 0170dbc Daniel
    • tool(kong): simplify matrix def (#1035)
  • fdd6778 Daniel
    • tool(kong): cache docker builds (#1033)
  • 8a6b0ce Daniel
    • tool: only run on pushes to main (#1032)
  • 896abd0 statsig-kong[bot]
    • [automated] chore: bump version to 0.3.2-beta.250515 (#1031)
  • 86c192e Daniel
    • chore: remove serialization of StatsigUserInternal (#1029)
  • b6716c3 Daniel
    • chore: clone UserData arc into StatsigUserLoggable (#1027)
  • 8cddefd Daniel
    • chore: move StatsigUser data to inner UserData arc (#1025)
  • 69fcebb Daniel
    • chore: add getter/setter to StatsigUser (#1023)
  • 62035b2 Xin Li
    • implement shared instance (#1026)
  • 3b4efdc Xin Li
    • Fix log level in java core (#1028)
  • 6c0f598 kat-statsig
    • rust custom output logger (#1007)
  • 3d0b8ef statsig-kong[bot]
    • [automated] chore: bump version to 0.3.2-beta.250514 (#1024)
  • bc9ecdb Daniel
    • chore: add spec directory for faster lookups (#1001)
  • 1bdc530 Daniel
    • refac: correct typo - rename to exposure_sampling (#1000)

Full Changelog: 0.3.1...0.4.0