summarylogtreecommitdiffstats
path: root/CHANGELOG.md
blob: 27f1aa85dc6e7dc5490464d0428bc6c0be6164c5 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
# Version 2.0.3 (2020-01-06)

- Internal: Rubocop update and styling fixes
- Added Project#delete_envvar to remove envvars (@lacostenycoder)

# Version 2.0.2 (2018-01-28)

House cleaning update, no changes to API or new endpoints added.

- Upgrade Yard development dependency due to vulnerability
- Add CI workflow for building against latest ruby versions

# Version 2.0.1 (2017-08-22)

* Add params to `Project#recent_builds_branch`

# Version 2.0.0 (2017-05-26)

## Breaking Changes

> Please use branch v-1.1.0 or tag v1.1.0 for previous 1.x version of
> the gem until you can update to the latest version. 1.x will not be supported
> in the longer term.

* Remove all deprecated class methods in favor of instance API resources classes
  * Please look at the documentation in the README or rubydoc on changes. An example of a change might be:

    ```ruby
    #
    # Old way of getting recent builds
    #
    builds = CircleCi::Project.recent_builds 'mtchavez', 'circleci'

    #
    # New way with a project object
    #
    project = CircleCi::Project.new 'mtchavez', 'circleci'
    builds = project.recent_builds

    # Can interact with other calls for the project
    project.build # make a new build
    project.settings # get settings
    project.clear_cache #clear the cache
    ```



## Other changes

* Update default API version to `v1.1`
* Implement `:vcs_type` API endpoints for `v1.1` i.e. `/api/project/:vcs_type/:username/:project/follow`

# Version 1.1.0 - (2017-03-20)

**Breaking Changes**

* Deprecate all the class methods in favor of classes for object approach
* `Project#build_branch` build parameters changed how they are
   passed in. You now need to pass them as the API expects them to be
   nested under the `build_parameters` key.

   ```ruby
   # Passing build parameters in the post body
   build_params = { build_parameters: { 'MY_TOKEN' => '123asd123asd' } }
   res = CircleCi::Project.build_branch 'username', 'reponame', 'branch', {}, build_params
   ```

# Version 1.0.3 - (2016-09-30)

* Fix requiring of `forwardable`

# Version 1.0.2 - (2016-09-24)

* Fix requiring of `openssl` - fixed in [#81](https://github.com/mtchavez/circleci/pull/81)

# Version 1.0.1 - (2016-09-14)

* Fix regression of `CircleCi::Project.enable` HTTP method changing incorrectly to a `delete`

# Version 1.0 - (2016-08-31)

**Breaking Changes**

* CircleCi::Project#envvars renamed to envvar for consistency with API endpoint
* Deprecated CircleCi::Project#envvars
* Upgrade rspec to 3.5
* Require minimum ruby version `>= 2.0.0`
* Remove `RestClient` as a dependency and replace with stdlib `Net::HTTP`
* Add params and body as inputs to `CircleCi::Project#build_branch`
* Add configuration for proxy hosts

# Version 0.2.3 - (2016-03-12)

* CircleCi::RecentBuilds#get - Replaces old CircleCi#organization endpoint to return all recent builds
* Remove CircleCi#organization for CircleCi::RecentBuilds#get
* CircleCi::Project#recent_builds - Takes params to supply limit, offset, and filter query params
* RestClient::Request overrides or configuration per request is configurable via Config.request_overrides hash

# Version 0.2.2 - (2016-02-26)

* Fix regression from [#50](https://github.com/mtchavez/circleci/pull/50) which broke [#10](https://github.com/mtchavez/circleci/pull/10)
* Make host and port configurable for people using Enterprise CircleCi
* CircleCi::Project#envvar – Get environment variables for a project
* CircleCi::Project#set_envvar – Set environment variable for a project

# Version 0.2.1 - (2016-02-21)

**Yanked from rubygems**

# Version 0.2.0 - (2015-12-06)

* CircleCi::User#heroku_key – Add your Heroku API key to your account
* CircleCi::Project#ssh_key – Add an SSH key to a project
* CircleCi::Project#build_ssh_key – Add an SSH key to a project build
* CircleCi::Project#new_checkout_key – Add a checkout key to a project
* CircleCi::Project#list_checkout_keys – Get all checkout keys for a project
* CircleCi::Project#get_checkout_key – Get a project checkout key
* CircleCi::Project#delete_checkout_key – Delete a project checkout key

# Version 0.1.1 - (2015-3-29)

* Cancel a build merged in [#15](https://github.com/mtchavez/circleci/pull/15) from [@etiennebarrie](https://github.com/etiennebarrie)
* Tests endpoint for a build. Will return all tests ran with metadata.
  * Currently experimental tests endpoint needs to be turned on in Experimental Settings

# Version 0.1.0 - (2014-11-4)

* Loosen `rest-client` dependency to `~> 1.6`

# Version 0.0.9 - (2014-11-4)

* Deprecate `CircleCi::Response#parsed_body` to not use `hashie` gem

# Version 0.0.8 - (2014-11-4)

* Support [parameterized builds](https://circleci.com/docs/parameterized-builds)
  * Thanks to [@dlitvakb](https://github.com/dlitvakb) merged in [#15](https://github.com/mtchavez/circleci/pull/15)

# Version 0.0.7 - (2014-8-1)

* Add method to build specific branch of project - Thanks to [@hwartig](https://github.com/hwartig)

  * CircleCi::Project#build_branch - Triggers build for specific branch of project

# Version 0.0.6 - (2014-6-8)

* New hidden endpoints added to API - Thanks to [@EiNSTeiN-](https://github.com/EiNSTeiN-)

  * CircleCi::Project#build - Build the latest master push for this project
  * CircleCi::Project#enable - Enable a project in CircleCI
  * CircleCi::Project#follow - Follow a project in CircleCI
  * CircleCi::Project#unfollow - Unfollow a project in CircleCI
  * CircleCi::Project#settings - Get project configuration

# Version 0.0.3 - (2014-1-29)

* [Build artifacts](https://github.com/mtchavez/circleci/pull/3) added

# Version 0.0.2 - (2014-1-21)

* [Branch builds endpoint](https://github.com/mtchavez/circleci/pull/1)
* Ruby 2.0.0 in Gemfile
* More documentation

# Version 0.0.1 - (2013-4-16)

* Add basic endpoints