Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 7 additions & 0 deletions .github/hooks/pre-push
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
#!/bin/sh

elixir scripts/validate_version.exs

if [ $? -ne 0 ]; then
exit 1
fi
3 changes: 3 additions & 0 deletions CHANGES.txt
Original file line number Diff line number Diff line change
@@ -1,3 +1,6 @@
0.2.1 (February 24, 2025):
- Fixed the SDK language version to correctly reflect the package version when it's installed from hex.pm.

0.2.0 (February 14, 2025):
- Added new variations of the get treatment functions to support evaluating flags in given flag set/s: `Split.get_treatments_by_flag_set/3`, `Split.get_treatments_by_flag_sets/3`, `Split.get_treatments_with_config_by_flag_set/3`, and `Split.get_treatments_with_config_by_flag_sets/3`.
- Updated the `:socket_path` option for `Split.Supervisor.start_link/1` to be optional, defaulting to `"/var/run/splitd.sock"`.
Expand Down
4 changes: 2 additions & 2 deletions lib/split/rpc/message.ex
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ defmodule Split.RPC.Message do
use Split.RPC.Opcodes

@protocol_version 0x01
@client_id "Splitd_Elixir-" <> to_string(Application.spec(:split, :vsn))
@client_id "Splitd_Elixir-0.2.1-rc.0"

@type opcode :: unquote(Enum.reduce(@opcodes, &{:|, [], [&1, &2]}))
@type protocol_version :: unquote(@protocol_version)
Expand Down Expand Up @@ -37,7 +37,7 @@ defmodule Split.RPC.Message do
## Examples

iex> Message.register()
%Message{v: 1, o: 0, a: ["123", "Splitd_Elixir-", 1]}
%Message{v: 1, o: 0, a: ["123", "Splitd_Elixir-0.2.1-rc.0", 1]}
"""
@spec register() :: t()
def register, do: %__MODULE__{o: @register_opcode, a: ["123", @client_id, 1]}
Expand Down
2 changes: 1 addition & 1 deletion mix.exs
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ defmodule SplitThinElixir.MixProject do
def project do
[
app: :split,
version: "0.2.0",
version: "0.2.1-rc.0",
elixir: "~> 1.14",
elixirc_paths: elixirc_paths(Mix.env()),
start_permanent: Mix.env() == :prod,
Expand Down
22 changes: 22 additions & 0 deletions scripts/validate_version.exs
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
#!/usr/bin/env elixir

# Read mix.exs version
{:ok, mix_content} = File.read("mix.exs")
version = Regex.run(~r/version: "([^"]+)"/, mix_content)
|> Enum.at(1)

# Read message.ex @client_id
{:ok, message_content} = File.read("lib/split/rpc/message.ex")
client_id_version = Regex.run(~r/@client_id "Splitd_Elixir-([^"]+)"/, message_content)
|> Enum.at(1)

if version != client_id_version do
IO.puts :stderr, """
Error: Version mismatch!
mix.exs version: #{version}
message.ex @client_id version: #{client_id_version}

Please update the @client_id in lib/split/rpc/message.ex to match the version in mix.exs
"""
System.halt(1)
end
Loading