Skip to content

Commit f55fa68

Browse files
committed
Refactor client and improve testing
1 parent 47d1766 commit f55fa68

File tree

10 files changed

+950
-298
lines changed

10 files changed

+950
-298
lines changed

.github/workflows/ci.yml

Lines changed: 58 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,58 @@
1+
name: CI
2+
3+
on:
4+
push:
5+
branches: [ main, master ]
6+
pull_request:
7+
branches: [ main, master ]
8+
9+
jobs:
10+
build:
11+
runs-on: ubuntu-latest
12+
13+
strategy:
14+
matrix:
15+
java-version: [11, 17, 21]
16+
17+
steps:
18+
- uses: actions/checkout@v3
19+
20+
- name: Set up JDK ${{ matrix.java-version }}
21+
uses: actions/setup-java@v3
22+
with:
23+
java-version: ${{ matrix.java-version }}
24+
distribution: 'temurin'
25+
cache: 'lein'
26+
27+
- name: Install dependencies
28+
run: lein deps
29+
30+
- name: Run tests
31+
run: lein test
32+
33+
- name: Check formatting
34+
run: lein cljfmt check
35+
36+
deploy:
37+
needs: build
38+
if: github.event_name == 'push' && (github.ref == 'refs/heads/main' || github.ref == 'refs/heads/master')
39+
runs-on: ubuntu-latest
40+
41+
steps:
42+
- uses: actions/checkout@v3
43+
44+
- name: Set up JDK 11
45+
uses: actions/setup-java@v3
46+
with:
47+
java-version: '11'
48+
distribution: 'temurin'
49+
cache: 'lein'
50+
51+
- name: Install dependencies
52+
run: lein deps
53+
54+
- name: Deploy to Clojars
55+
env:
56+
CLOJARS_USERNAME: ${{ secrets.CLOJARS_USERNAME }}
57+
CLOJARS_PASSWORD: ${{ secrets.CLOJARS_PASSWORD }}
58+
run: lein deploy clojars

CHANGELOG.md

Lines changed: 46 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,49 @@
1-
# Change Log
1+
# Changelog
22

3-
All notable changes to this project will be documented in this file.
3+
All notable changes to this project will be documented in this file.
4+
5+
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
6+
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7+
8+
## [Unreleased]
9+
10+
### Added
11+
- Comprehensive documentation with examples
12+
- Test suite with clj-http-fake for mocking HTTP responses
13+
- GitHub Actions workflow for CI/CD
14+
- Utility functions for string/input-stream conversion
15+
- Convenience client builders for common configurations
16+
- Support for different response body types (string, bytes, stream, discard)
17+
18+
### Changed
19+
- Updated Clojure dependency to 1.11.1
20+
- Improved error handling
21+
- Enhanced API with better docstrings
22+
- Explicit Java 11+ requirement
23+
24+
## [0.3.0] - 2023-01-15
25+
26+
### Added
27+
- Support for asynchronous requests
28+
- Basic authentication support
29+
- Timeout configuration
30+
31+
### Changed
32+
- Improved request/response handling
33+
- Better error reporting
34+
35+
## [0.2.0] - 2022-09-10
36+
37+
### Added
38+
- Support for all HTTP methods
39+
- Custom header support
40+
- Client configuration options
41+
42+
## [0.1.0] - 2022-06-01
43+
44+
### Added
45+
- Initial release
46+
- Basic GET/POST functionality
47+
- Simple client configuration
448

549

0 commit comments

Comments
 (0)