This is an automated email from the ASF dual-hosted git repository.

nickva pushed a commit to branch wh/connect_to_w_tests
in repository https://gitbox.apache.org/repos/asf/couchdb-ibrowse.git

commit 2772261a3bbeeb25edc6b009a7d754d9a397ad74
Author: Nick Vatamaniuc <[email protected]>
AuthorDate: Wed Sep 24 16:34:20 2025 -0400

    Bump min erlang ver and add CI (#181)
    
    * Add Github Actions CI tests - Travis CI doesn't work any longer
    * Update for Erlang version >= 25
---
 .github/workflows/ci.yml     | 26 ++++++++++++++++++++++++++
 .travis.yml                  | 14 --------------
 README.md                    |  2 +-
 rebar.config                 |  8 +++++---
 src/ibrowse.erl              | 16 ----------------
 test/ibrowse_load_test.erl   | 18 +-----------------
 test/ibrowse_test_server.erl |  8 +-------
 7 files changed, 34 insertions(+), 58 deletions(-)

diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
new file mode 100644
index 0000000..4bfd6ea
--- /dev/null
+++ b/.github/workflows/ci.yml
@@ -0,0 +1,26 @@
+on:
+  push:
+    branches:
+      - master
+  pull_request:
+jobs:
+  test:
+    name: test ${{matrix.otp}} on ${{matrix.os}}
+    runs-on: ${{matrix.os}}
+    container:
+      image: erlang:${{matrix.otp}}
+    strategy:
+      fail-fast: false
+      matrix:
+        os:
+          - ubuntu-latest
+        otp:
+          - "28"
+          - "27"
+          - "26"
+          - "25"
+    steps:
+      - uses: actions/checkout@v5
+      - run: make
+      - run: make unit_tests
+ 
diff --git a/.travis.yml b/.travis.yml
deleted file mode 100644
index 3993bf2..0000000
--- a/.travis.yml
+++ /dev/null
@@ -1,14 +0,0 @@
-language: erlang
-otp_release:
-   - R16B
-   - R16B03-1
-   - 17.0
-   - 17.1
-   - 18.0
-   - 18.1
-   - 18.2.1
-   - 19.3
-   - 20.0
-before_script:
-  - "./bootstrap_travis.sh"
-script: "./rebar3 eunit"
diff --git a/README.md b/README.md
index 8ee1223..6281094 100644
--- a/README.md
+++ b/README.md
@@ -1,4 +1,4 @@
-# ibrowse [![Build 
Status](https://secure.travis-ci.org/cmullaparthi/ibrowse.svg?branch=master)](http://travis-ci.org/cmullaparthi/ibrowse)
+# ibrowse 
![CI](https://github.com/cmullaparthi/ibrowse/actions/workflows/ci.yml/badge.svg)
 
 ibrowse is a HTTP client written in erlang.
 
diff --git a/rebar.config b/rebar.config
index eaa892c..bc386e9 100644
--- a/rebar.config
+++ b/rebar.config
@@ -3,9 +3,11 @@
           warnings_as_errors,
           warn_unused_vars,
           nowarn_shadow_vars,
-          warn_unused_import,
-          {platform_define, "18|19|^2", new_rand},
-          {platform_define, "^2", ets_ref}
+          warn_unused_import
           ]}.
+% rebar 2
+{require_min_otp_vsn, "25"},
+% rebar 3
+{minimum_otp_vsn, "25"}.
 {xref_checks, [undefined_function_calls, deprecated_function_calls]}.
 {eunit_opts, [verbose]}.
diff --git a/src/ibrowse.erl b/src/ibrowse.erl
index 5adf047..2202eea 100644
--- a/src/ibrowse.erl
+++ b/src/ibrowse.erl
@@ -688,7 +688,6 @@ all_trace_off() ->
 %% @doc Shows some internal information about load balancing. Info
 %% about workers spawned using spawn_worker_process/2 or
 %% spawn_link_worker_process/2 is not included.
--ifdef(ets_ref).
 show_dest_status() ->
     io:format("~-40.40s | ~-5.5s | ~-10.10s | ~s~n",
               ["Server:port", "ETS", "Num conns", "LB Pid"]),
@@ -702,21 +701,6 @@ show_dest_status() ->
                          integer_to_list(Size), 
                          Lb_pid])
       end, Metrics).
--else.
-show_dest_status() ->
-    io:format("~-40.40s | ~-5.5s | ~-10.10s | ~s~n",
-              ["Server:port", "ETS", "Num conns", "LB Pid"]),
-    io:format("~80.80.=s~n", [""]),
-    Metrics = get_metrics(),
-    lists:foreach(
-      fun({Host, Port, {Lb_pid, _, Tid, Size, _}}) ->
-              io:format("~40.40s | ~-5.5s | ~-5.5s | ~p~n",
-                        [Host ++ ":" ++ integer_to_list(Port),
-                         integer_to_list(Tid),
-                         integer_to_list(Size), 
-                         Lb_pid])
-      end, Metrics).
--endif.
 
 show_dest_status(Url) ->                                          
     #url{host = Host, port = Port} = ibrowse_lib:parse_url(Url),
diff --git a/test/ibrowse_load_test.erl b/test/ibrowse_load_test.erl
index 076c46b..dc4813a 100644
--- a/test/ibrowse_load_test.erl
+++ b/test/ibrowse_load_test.erl
@@ -1,7 +1,6 @@
 -module(ibrowse_load_test).
 %%-compile(export_all).
 -export([
-         random_seed/0,
          start/3,
          query_state/0,
          shutdown/0,
@@ -15,20 +14,6 @@
          update_unknown_counter/2
         ]).
 
--ifdef(new_rand).
-
--define(RAND, rand).
-random_seed() ->
-       ok.
-
--else.
-
--define(RAND, random).
-random_seed() ->
-       random:seed(os:timestamp()).
-
--endif.
-
 -define(ibrowse_load_test_counters, ibrowse_load_test_counters).
 
 start(Num_workers, Num_requests, Max_sess) ->
@@ -123,7 +108,6 @@ spawn_workers(0, _Num_requests, _Parent, Acc) ->
     lists:reverse(Acc);
 spawn_workers(Num_workers, Num_requests, Parent, Acc) ->
     Pid_ref = spawn_monitor(fun() ->
-                                    random_seed(),
                                     case catch worker_loop(Parent, 
Num_requests) of
                                         {'EXIT', Rsn} ->
                                             io:format("Worker crashed with 
reason: ~p~n", [Rsn]);
@@ -163,7 +147,7 @@ wait_for_workers([{Pid, Pid_ref} | T] = Pids) ->
 worker_loop(Parent, 0) ->
     Parent ! {done, self()};
 worker_loop(Parent, N) ->
-    Delay = ?RAND:uniform(100),
+    Delay = rand:uniform(100),
     Url = case Delay rem 10 of
               %% Change 10 to some number between 0-9 depending on how
               %% much chaos you want to introduce into the server
diff --git a/test/ibrowse_test_server.erl b/test/ibrowse_test_server.erl
index 631e93a..17af695 100644
--- a/test/ibrowse_test_server.erl
+++ b/test/ibrowse_test_server.erl
@@ -11,12 +11,6 @@
          get_conn_pipeline_depth/0
         ]).
 
--ifdef(new_rand).
--define(RAND, rand).
--else.
--define(RAND, random).
--endif.
-
 -record(request, {method, uri, version, headers = [], body = [], state}).
 
 -define(dec2hex(X), erlang:integer_to_list(X, 16)).
@@ -307,7 +301,7 @@ process_request(Sock, Sock_type, Req) ->
     do_trace("Recvd req: ~p~n", [Req]),
     Resp = <<"HTTP/1.1 200 OK\r\nContent-Length: 0\r\n\r\n">>,
     do_send(Sock, Sock_type, Resp),
-    timer:sleep(?RAND:uniform(100)).
+    timer:sleep(rand:uniform(100)).
 
 do_send(Sock, tcp, Resp) ->
     gen_tcp:send(Sock, Resp);

Reply via email to