trend 0.1.2 → 0.2.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 127d317059995d6c5ef713438f3c3ccbd61cac529a74fd9481a34f5429ecc59a
4
- data.tar.gz: ee6f4c72cb63f2582f41ec5efb82920fae6158ec87b31c84bc09fd83f1170de0
3
+ metadata.gz: c45555f23668c7c5b0c4b6852d117feb7ceadc27ef14bf036fb9e3d71ab8ead4
4
+ data.tar.gz: edcd7f8e0aead518dcb4e159c0fd3a0b0aa7037aaeca74791f922e321182b3d8
5
5
  SHA512:
6
- metadata.gz: b081882f557cfa7a9e27b55764d74afc9cb8c4692eb1e5aac45f7b86cf879d820f9585a9d31150087e443b7a4cd6455c358ae6200947352e9720b698396334a6
7
- data.tar.gz: 26e63588c546ef8fe71c6959ac63feaeb57989309e5f4f0b003ed40c12c535b8bbc832cc9f072e430cd38a2a920bce0c7b965890be73a54f3e49d11989679d94
6
+ metadata.gz: 860677a520c3ae9a6c997f3c046f94f798c42aac76cfe3e6d688eb0a8b32f25c0d54765d92d78f46fa81f2d34e452b5412dc78743ee555931bcde7c1b7b89f2c
7
+ data.tar.gz: 1636b2b82f27332f93eeaccaad3dcdcf62abd363e753390af1c822efbd35db9927ee215885cbbc2147fc8d167829ab099b7d2473e8053e00500507e1b5fa24ba
data/CHANGELOG.md CHANGED
@@ -1,13 +1,21 @@
1
- ## 0.1.2
1
+ ## 0.2.1 (2023-10-08)
2
+
3
+ - Added warning about hosted version shutdown
4
+
5
+ ## 0.2.0 (2023-05-03)
6
+
7
+ - Dropped support for Ruby < 3
8
+
9
+ ## 0.1.2 (2019-04-10)
2
10
 
3
11
  - Extended timeout
4
12
  - Added `timeout` option
5
13
 
6
- ## 0.1.1
14
+ ## 0.1.1 (2018-10-28)
7
15
 
8
16
  - Added support for API keys
9
17
  - Added experimental `correlation` method
10
18
 
11
- ## 0.1.0
19
+ ## 0.1.0 (2018-05-23)
12
20
 
13
21
  - First release
data/LICENSE.txt CHANGED
@@ -1,6 +1,6 @@
1
1
  The MIT License (MIT)
2
2
 
3
- Copyright (c) 2018 Andrew Kane
3
+ Copyright (c) 2018-2023 Andrew Kane
4
4
 
5
5
  Permission is hereby granted, free of charge, to any person obtaining a copy
6
6
  of this software and associated documentation files (the "Software"), to deal
data/README.md CHANGED
@@ -1,15 +1,23 @@
1
- # Trend
1
+ # Trend Ruby
2
2
 
3
- Ruby client for [Trend](https://trendapi.org), the anomaly detection and forecasting API
3
+ Ruby client for [Trend](https://github.com/ankane/trend-api), the anomaly detection and forecasting API
4
4
 
5
- [![Build Status](https://travis-ci.org/ankane/trend.svg?branch=master)](https://travis-ci.org/ankane/trend)
5
+ **Note: The [hosted version](https://trendapi.org/) is shutting down on May 1, 2024. [See how to run the API on your own infrastructure.](https://github.com/ankane/trend-api)**
6
+
7
+ [![Build Status](https://github.com/ankane/trend-ruby/workflows/build/badge.svg?branch=master)](https://github.com/ankane/trend-ruby/actions)
6
8
 
7
9
  ## Installation
8
10
 
9
11
  Add this line to your application’s Gemfile:
10
12
 
11
13
  ```ruby
12
- gem 'trend'
14
+ gem "trend"
15
+ ```
16
+
17
+ And set the URL to the API:
18
+
19
+ ```ruby
20
+ Trend.url = "http://localhost:8000"
13
21
  ```
14
22
 
15
23
  ## Anomaly Detection
@@ -19,7 +27,7 @@ Detect anomalies in a time series
19
27
  ```ruby
20
28
  # generate series
21
29
  series = {}
22
- date = Date.parse("2018-04-01")
30
+ date = Date.parse("2023-04-01")
23
31
  28.times do
24
32
  series[date] = rand(100)
25
33
  date += 1
@@ -31,7 +39,7 @@ series[date - 8] = 999
31
39
  Trend.anomalies(series)
32
40
  ```
33
41
 
34
- Works great with libraries like [Groupdate](https://github.com/ankane/groupdate)
42
+ Works great with [Groupdate](https://github.com/ankane/groupdate)
35
43
 
36
44
  ```ruby
37
45
  series = User.group_by_day(:created_at).count
@@ -44,7 +52,7 @@ Get future predictions for a time series
44
52
 
45
53
  ```ruby
46
54
  series = {}
47
- date = Date.parse("2018-04-01")
55
+ date = Date.parse("2023-04-01")
48
56
  28.times do
49
57
  series[date] = date.wday
50
58
  date += 1
@@ -74,34 +82,24 @@ Get the correlation between two time series
74
82
  Trend.correlation(series, series2)
75
83
  ```
76
84
 
77
- ## Authentication
78
-
79
- An API key is needed for more than 1,000 requests per day per IP. [Email us](mailto:hi@trendapi.org) to get one.
80
-
81
- If you have one, set `ENV["TREND_API_KEY"]` or use:
82
-
83
- ```ruby
84
- Trend.api_key = "secret"
85
- ```
86
-
87
85
  ## History
88
86
 
89
- View the [changelog](https://github.com/ankane/trend/blob/master/CHANGELOG.md)
87
+ View the [changelog](https://github.com/ankane/trend-ruby/blob/master/CHANGELOG.md)
90
88
 
91
89
  ## Contributing
92
90
 
93
91
  Everyone is encouraged to help improve this project. Here are a few ways you can help:
94
92
 
95
- - [Report bugs](https://github.com/ankane/trend/issues)
96
- - Fix bugs and [submit pull requests](https://github.com/ankane/trend/pulls)
93
+ - [Report bugs](https://github.com/ankane/trend-ruby/issues)
94
+ - Fix bugs and [submit pull requests](https://github.com/ankane/trend-ruby/pulls)
97
95
  - Write, clarify, or fix documentation
98
96
  - Suggest or add new features
99
97
 
100
- To get started with development and testing:
98
+ To get started with development:
101
99
 
102
100
  ```sh
103
- git clone https://github.com/ankane/trend.git
104
- cd trend
101
+ git clone https://github.com/ankane/trend-ruby.git
102
+ cd trend-ruby
105
103
  bundle install
106
- rake test
104
+ bundle exec rake test
107
105
  ```
data/lib/trend/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module Trend
2
- VERSION = "0.1.2"
2
+ VERSION = "0.2.1"
3
3
  end
data/lib/trend.rb CHANGED
@@ -1,10 +1,12 @@
1
+ # stdlib
1
2
  require "date"
2
3
  require "json"
3
4
  require "net/http"
4
5
  require "time"
5
6
 
6
- require "trend/client"
7
- require "trend/version"
7
+ # modules
8
+ require_relative "trend/client"
9
+ require_relative "trend/version"
8
10
 
9
11
  module Trend
10
12
  class Error < StandardError; end
@@ -22,7 +24,7 @@ module Trend
22
24
  end
23
25
 
24
26
  def self.url
25
- @url ||= ENV["TREND_URL"] || "https://trendapi.org"
27
+ @url ||= ENV["TREND_URL"] || hosted_url
26
28
  end
27
29
 
28
30
  def self.url=(url)
@@ -43,4 +45,10 @@ module Trend
43
45
  def self.client
44
46
  @client ||= Client.new
45
47
  end
48
+
49
+ # private
50
+ def self.hosted_url
51
+ warn "[trend] WARNING: The hosted version is shutting down on May 1, 2024. See https://github.com/ankane/trend-api for how to run the API on your own infrastructure."
52
+ "https://trendapi.org"
53
+ end
46
54
  end
metadata CHANGED
@@ -1,73 +1,17 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: trend
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.2
4
+ version: 0.2.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Andrew Kane
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2019-04-11 00:00:00.000000000 Z
12
- dependencies:
13
- - !ruby/object:Gem::Dependency
14
- name: benchmark-ips
15
- requirement: !ruby/object:Gem::Requirement
16
- requirements:
17
- - - ">="
18
- - !ruby/object:Gem::Version
19
- version: '0'
20
- type: :development
21
- prerelease: false
22
- version_requirements: !ruby/object:Gem::Requirement
23
- requirements:
24
- - - ">="
25
- - !ruby/object:Gem::Version
26
- version: '0'
27
- - !ruby/object:Gem::Dependency
28
- name: bundler
29
- requirement: !ruby/object:Gem::Requirement
30
- requirements:
31
- - - ">="
32
- - !ruby/object:Gem::Version
33
- version: '0'
34
- type: :development
35
- prerelease: false
36
- version_requirements: !ruby/object:Gem::Requirement
37
- requirements:
38
- - - ">="
39
- - !ruby/object:Gem::Version
40
- version: '0'
41
- - !ruby/object:Gem::Dependency
42
- name: rake
43
- requirement: !ruby/object:Gem::Requirement
44
- requirements:
45
- - - ">="
46
- - !ruby/object:Gem::Version
47
- version: '0'
48
- type: :development
49
- prerelease: false
50
- version_requirements: !ruby/object:Gem::Requirement
51
- requirements:
52
- - - ">="
53
- - !ruby/object:Gem::Version
54
- version: '0'
55
- - !ruby/object:Gem::Dependency
56
- name: minitest
57
- requirement: !ruby/object:Gem::Requirement
58
- requirements:
59
- - - ">="
60
- - !ruby/object:Gem::Version
61
- version: '0'
62
- type: :development
63
- prerelease: false
64
- version_requirements: !ruby/object:Gem::Requirement
65
- requirements:
66
- - - ">="
67
- - !ruby/object:Gem::Version
68
- version: '0'
69
- description:
70
- email: andrew@chartkick.com
11
+ date: 2023-10-08 00:00:00.000000000 Z
12
+ dependencies: []
13
+ description:
14
+ email: andrew@ankane.org
71
15
  executables: []
72
16
  extensions: []
73
17
  extra_rdoc_files: []
@@ -78,11 +22,11 @@ files:
78
22
  - lib/trend.rb
79
23
  - lib/trend/client.rb
80
24
  - lib/trend/version.rb
81
- homepage: https://github.com/ankane/trend
25
+ homepage: https://github.com/ankane/trend-ruby
82
26
  licenses:
83
27
  - MIT
84
28
  metadata: {}
85
- post_install_message:
29
+ post_install_message:
86
30
  rdoc_options: []
87
31
  require_paths:
88
32
  - lib
@@ -90,15 +34,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
90
34
  requirements:
91
35
  - - ">="
92
36
  - !ruby/object:Gem::Version
93
- version: '2.2'
37
+ version: '3'
94
38
  required_rubygems_version: !ruby/object:Gem::Requirement
95
39
  requirements:
96
40
  - - ">="
97
41
  - !ruby/object:Gem::Version
98
42
  version: '0'
99
43
  requirements: []
100
- rubygems_version: 3.0.3
101
- signing_key:
44
+ rubygems_version: 3.4.10
45
+ signing_key:
102
46
  specification_version: 4
103
47
  summary: Ruby client for Trend, the time series API
104
48
  test_files: []