Skip to content

fix: Default decode any UTF-8 characters #895

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
wants to merge 99 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
99 commits
Select commit Hold shift + click to select a range
70e192a
fix: Default decode any UTF-8 characters
Mar 21, 2023
ad0e1cf
Fix some spelling (#885)
bahaafathi Apr 3, 2023
ffb4438
Fix maxRedirects documentation to mention ClientException rather than…
brianquinlan Apr 4, 2023
877f134
latest CI actions (#908)
kevmoo Apr 6, 2023
fa53651
Document that RetryClient may consume a lot of memory (#915)
brianquinlan May 1, 2023
f581ff7
Prepare to publish (#914)
natebosch May 1, 2023
61dcb91
Switch to "dart format" from "flutter format" (#922)
brianquinlan May 4, 2023
406ce74
Add "base", "final" and "interface" modifiers (#920)
brianquinlan May 9, 2023
db84d12
Require the release version of Dart 3.0.0 (#925)
brianquinlan May 10, 2023
981b63b
Support the NSURLSession WebSocket API (#921)
brianquinlan May 11, 2023
fb3b4be
Revert "Support the NSURLSession WebSocket API (#921)" (#931)
brianquinlan May 16, 2023
d845560
blast_repo fixes (#933)
devoncarew May 17, 2023
bf114eb
Disable package:cupertino_http tests because they are failing at head…
brianquinlan May 22, 2023
ba84ac0
Increment package:http version to 1.0.0 (#928)
brianquinlan May 22, 2023
5c29eea
Update CHANGELOG for 0.2.1 release (#941)
brianquinlan May 22, 2023
512d453
Update pubspec for 0.2.1 release (#942)
brianquinlan May 22, 2023
6e998db
Require Dart 3.0 (#943)
brianquinlan May 22, 2023
d673df6
fix typo in cupertino_http documentation (#879)
knaeckeKami May 24, 2023
dfec389
Update prepare_for_embedded.dart (#944)
AlexV525 May 24, 2023
5c1f1ad
regenerate with the latest mono_repo (#947)
devoncarew May 25, 2023
8a4a4a6
Add a better toString to _ClientSocketException (#948)
brianquinlan May 25, 2023
18a43a2
Fix the failing cupertino_http tests (#949)
brianquinlan May 30, 2023
4c0eb48
Prepare to publish cupertino_http 1.0.0 (#951)
brianquinlan May 31, 2023
7a238a9
Bump actions/labeler from 4.0.2 to 4.0.4 (#952)
dependabot[bot] May 31, 2023
aca7f0e
Bump futureware-tech/simulator-action from 1 to 2 (#936)
dependabot[bot] May 31, 2023
8834aec
Update readme and prepare for a new release (#954)
brianquinlan May 31, 2023
5312366
Reland "support the nsurl session web socket api" (#950)
brianquinlan Jun 2, 2023
1746017
Support delegate methods for WebSocketTask (#958)
brianquinlan Jun 9, 2023
ba7eb60
Run common URLSessionTask tests on URLSessionWebSocketTask (#959)
brianquinlan Jun 9, 2023
8c25057
Unskip a skipped test (#966)
natebosch Jun 16, 2023
ff1fcfe
Make StreameRequest.sink a StreamSink (#965)
natebosch Jun 20, 2023
067bff3
Create java http package (#971)
alex-james-dev Jun 26, 2023
d68081f
Prepare to publish package:http (#973)
natebosch Jun 26, 2023
d3e78a0
Bump actions/labeler from 4.0.4 to 4.2.0 (#976)
dependabot[bot] Jul 1, 2023
9833a20
Support Steam<List<int>> as a provider of request data (#975)
brianquinlan Jul 5, 2023
98e4112
Fix a bug where ...WebSocketClosed had two different initializer sign…
brianquinlan Jul 5, 2023
474999f
Document that the network entitlement is required when running in the…
brianquinlan Jul 5, 2023
c148a3a
Java http BaseClient implementation (#980)
alex-james-dev Jul 7, 2023
b206771
Make native bindings pass `dart analysis` (#985)
brianquinlan Jul 11, 2023
db276f8
Java http send method (#987)
alex-james-dev Jul 21, 2023
1a42b4a
Harmonize response header behavior (#993)
brianquinlan Jul 21, 2023
4289e8b
Ignore generated flutter plugin files (#996)
natebosch Jul 28, 2023
e8e35db
[java_http] send request body (#995)
alex-james-dev Jul 31, 2023
7e9ed12
Bump actions/labeler from 4.2.0 to 4.3.0 (#1000)
dependabot[bot] Aug 1, 2023
9f167a7
Remove example test from java_http (#1001)
alex-james-dev Aug 8, 2023
df1f625
Add some additional header tests (#1006)
brianquinlan Aug 15, 2023
58a5462
JavaClient can stream the HTTP response body (#1005)
alex-james-dev Aug 17, 2023
631d4ec
Add java_http .gitattributes file (#999)
alex-james-dev Aug 18, 2023
0e6e58a
Don't check the formatting of `ffigen`ed code (#1010)
brianquinlan Aug 23, 2023
5ac7cfe
JavaClient stream response body using byte arrays (#1007)
alex-james-dev Aug 24, 2023
cad7d60
Add response status code test (#1009)
alex-james-dev Aug 26, 2023
7fb6fd6
Clarify how to set the body without a content type header (#1014)
brianquinlan Aug 31, 2023
de19214
Avoid passing a nullable value to Completer<nn-type>.complete (#1015)
srawlins Sep 12, 2023
2cbb703
Switch `cronet_http` to use jnigen (#1016)
brianquinlan Sep 12, 2023
eafbbb0
Separate the cronet callbacks from the `send` method (#1017)
brianquinlan Sep 12, 2023
d7e4375
Cleanup `package:http` utils (#1011)
parlough Sep 14, 2023
e19094a
Use efficient operations when copying bytes between Dart and Java (#1…
brianquinlan Sep 14, 2023
decefa6
Remove invalid status line tests and replace them with valid status l…
brianquinlan Sep 15, 2023
1251619
Add the ability to control the URL cache. (#1020)
brianquinlan Sep 19, 2023
2c99da1
Bump actions/cache from 3.3.1 to 3.3.2 (#1023)
dependabot[bot] Oct 1, 2023
08143d1
Bump dart-lang/setup-dart from 1.5.0 to 1.5.1 (#1024)
dependabot[bot] Oct 1, 2023
88ec75e
Bump actions/checkout from 3 to 4 (#1025)
dependabot[bot] Oct 1, 2023
827f4fe
Prepare to release cronet 0.4.0 (#1031)
brianquinlan Oct 10, 2023
7240d0a
Remove obsolete pigeon-generated file (#1032)
brianquinlan Oct 11, 2023
d7c36ae
Bump dart-lang/setup-dart from 1.5.1 to 1.6.0 (#1038)
dependabot[bot] Nov 1, 2023
b9389fe
Bump futureware-tech/simulator-action from 2 to 3 (#1037)
dependabot[bot] Nov 1, 2023
04777ac
Add a skeleton "http_profile" package (#1036)
brianquinlan Nov 2, 2023
f953aec
Fix obsolete `CronetClient()` constructor usage (#1042)
brianquinlan Nov 2, 2023
a2f3c1d
Require package:jni >= 0.7.1 to fix macOS build (#1041)
brianquinlan Nov 2, 2023
b2717ba
Create a flutter example application that uses multiple client implem…
brianquinlan Nov 7, 2023
f0a02f9
Require a package:jni version without known buffer overflows (#1044)
brianquinlan Nov 9, 2023
a2f0b25
[http] use pkg:web, require Dart 3.2 (#1049)
kevmoo Nov 21, 2023
8c9feb5
[http] Fix type cast for dart2wasm (#1050)
kevmoo Nov 21, 2023
5e84d9f
Update platform-specific imports for wasm (#1051)
kevmoo Nov 21, 2023
9fb4cfa
Update lints to latest, etc (#1048)
kevmoo Nov 22, 2023
c125ed5
[http] Allow pkg:web v0.3.0 (#1055)
kevmoo Nov 27, 2023
40a46d8
Fix a bug where cronet_http sends incorrect HTTP request methods (#1058)
brianquinlan Nov 29, 2023
22f52e2
Update pubspec.yaml to 0.4.2 (#1059)
brianquinlan Nov 30, 2023
064f510
misc cleanup of yaml files (#1061)
devoncarew Nov 30, 2023
5dd5140
Bump actions/setup-java from 3 to 4 (#1065)
dependabot[bot] Dec 1, 2023
c8536e4
[http_client_conformance_tests] Updates to support wasm compilation (…
kevmoo Dec 2, 2023
c90496e
Document how to use replacement `Client` implementations (#1063)
brianquinlan Dec 4, 2023
d8983fa
Add support for setting headers for all requests (#1060)
brianquinlan Dec 4, 2023
7c05dde
Add documentation for "no_default_http_client" (#1068)
brianquinlan Dec 4, 2023
f585947
Test persistentConnection with large request bodies (#984)
brianquinlan Dec 4, 2023
cd748b6
Document that runWithClient must be called for every isolate (#1069)
brianquinlan Dec 5, 2023
db7f165
Provide an example of configuring IOClient with an HttpClient. (#1074)
brianquinlan Dec 7, 2023
36f98e9
Fix a bug where BrowserClient was listed as requiring Flutter (#1077)
brianquinlan Dec 12, 2023
db2cb76
Run web tests with wasm with dev Dart sdk (#1078)
kevmoo Dec 14, 2023
c114aa0
Add a fake response for PNG images (#1081)
brianquinlan Dec 15, 2023
a5b8eec
Prepare to publish cupertino 1.2.0 (#1080)
brianquinlan Dec 19, 2023
b10f448
[cronet_http] Enables CI for `cronet_http_embedded` (#1070)
AlexV525 Dec 21, 2023
26e55c3
cronet_http: require android API level 28 (#1088)
brianquinlan Dec 21, 2023
15ec3ba
Prepare to publish `package:cronet_http` as 1.0.0 (#1087)
brianquinlan Dec 21, 2023
671d0c2
chore: format analysis configuration
Dec 22, 2023
4afabae
chore(WIP): create headers
Dec 22, 2023
525ed21
feat: support multiple headers #24
Dec 22, 2023
25d480f
Merge branch 'master' of https://github.com/medz/http
Dec 22, 2023
e29c719
Undo
Dec 22, 2023
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
11 changes: 11 additions & 0 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
# Dependabot configuration file.
# See https://docs.github.com/en/code-security/dependabot/dependabot-version-updates

version: 2
updates:
- package-ecosystem: github-actions
directory: /
schedule:
interval: monthly
labels:
- autosubmit
4 changes: 2 additions & 2 deletions .github/labeler.yml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Configuration for .github/workflows/pull_request_label.yml.
# Configuration for .github/workflows/pull_request_label.yml.

'infra':
'type-infra':
- '.github/**'

'package:cronet_http':
Expand Down
60 changes: 30 additions & 30 deletions .github/workflows/cronet.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,10 +6,12 @@ on:
- main
- master
paths:
- '.github/workflows/cronet.yaml'
- 'pkgs/cronet_http/**'
- 'pkgs/http_client_conformance_tests/**'
pull_request:
paths:
- '.github/workflows/cronet.yaml'
- 'pkgs/cronet_http/**'
- 'pkgs/http_client_conformance_tests/**'
schedule:
Expand All @@ -19,50 +21,48 @@ env:
PUB_ENVIRONMENT: bot.github

jobs:
analyze:
name: Lint and static analysis
runs-on: ubuntu-latest
defaults:
run:
working-directory: pkgs/cronet_http
verify:
name: Format & Analyze & Test
runs-on: macos-latest
strategy:
matrix:
package: ['cronet_http', 'cronet_http_embedded']
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
- uses: actions/setup-java@v4
with:
distribution: 'zulu'
java-version: '17'
- uses: subosito/flutter-action@v2
with:
# TODO: Change to 'stable' when a release version of flutter
# pins version 1.21.1 or later of 'package:test'
channel: 'master'
channel: 'stable'
- name: Make cronet_http_embedded copy
if: ${{ matrix.package == 'cronet_http_embedded' }}
run: |
cp -r pkgs/cronet_http pkgs/cronet_http_embedded
cd pkgs/cronet_http_embedded
flutter pub get && dart tool/prepare_for_embedded.dart
- id: install
name: Install dependencies
working-directory: 'pkgs/${{ matrix.package }}'
run: flutter pub get
- name: Check formatting
working-directory: 'pkgs/${{ matrix.package }}'
run: dart format --output=none --set-exit-if-changed .
if: always() && steps.install.outcome == 'success'
- name: Analyze code
working-directory: 'pkgs/${{ matrix.package }}'
run: flutter analyze --fatal-infos
if: always() && steps.install.outcome == 'success'

test:
# Test package:cupertino_http use flutter integration tests.
needs: analyze
name: "Build and test"
runs-on: macos-latest
steps:
- uses: actions/checkout@v3
- uses: actions/setup-java@v3
with:
distribution: 'zulu'
java-version: '17'
- uses: subosito/flutter-action@v2
with:
# TODO: Change to 'stable' when a release version of flutter
# pins version 1.21.1 or later of 'package:test'
channel: 'master'
- name: Run tests
uses: reactivecircus/android-emulator-runner@v2
if: always() && steps.install.outcome == 'success'
with:
# api-level/minSdkVersion should be help in sync in:
# - .github/workflows/cronet.yml
# - pkgs/cronet_http/android/build.gradle
# - pkgs/cronet_http/example/android/app/build.gradle
api-level: 28
target: playstore
arch: x86_64
target: ${{ matrix.package == 'cronet_http_embedded' && 'google_apis' || 'playstore' }}
profile: pixel
script: cd ./pkgs/cronet_http/example && flutter test --timeout=1200s integration_test/
script: cd 'pkgs/${{ matrix.package }}/example' && flutter test --timeout=1200s integration_test/
45 changes: 34 additions & 11 deletions .github/workflows/cupertino.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,10 +8,12 @@ on:
paths:
- 'pkgs/cupertino_http/**'
- 'pkgs/http_client_conformance_tests/**'
- '.github/workflows/cupertino.yml'
pull_request:
paths:
- 'pkgs/cupertino_http/**'
- 'pkgs/http_client_conformance_tests/**'
- '.github/workflows/cupertino.yml'
schedule:
- cron: "0 0 * * 0"

Expand All @@ -26,17 +28,22 @@ jobs:
run:
working-directory: pkgs/cupertino_http
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
- uses: subosito/flutter-action@v2
with:
# TODO: Change to 'stable' when a release version of flutter
# pins version 1.21.1 or later of 'package:test'
channel: 'master'
channel: 'stable'
- id: install
name: Install dependencies
run: flutter pub get
- name: Check formatting
run: flutter format --output=none --set-exit-if-changed .
# Don't lint the generated file native_cupertino_bindings.dart
# This approach is simpler than using `find` and excluding that file
# because `dart format` also excludes other file e.g. ones in
# directories start with '.'.
run: >
mv lib/src/native_cupertino_bindings.dart lib/src/native_cupertino_bindings.tmp &&
dart format --output=none --set-exit-if-changed . &&
mv lib/src/native_cupertino_bindings.tmp lib/src/native_cupertino_bindings.dart
if: always() && steps.install.outcome == 'success'
- name: Analyze code
run: flutter analyze --fatal-infos
Expand All @@ -46,19 +53,35 @@ jobs:
# Test package:cupertino_http use flutter integration tests.
needs: analyze
name: "Build and test"
strategy:
matrix:
# Test on the minimum supported flutter version and the latest
# version.
flutter-version: ["3.10.0", "any"]
runs-on: macos-latest
defaults:
run:
working-directory: pkgs/cupertino_http/example
steps:
- uses: actions/checkout@v3
- uses: futureware-tech/simulator-action@v1
- uses: actions/checkout@v4
- uses: futureware-tech/simulator-action@v3
with:
model: 'iPhone 8'
- uses: subosito/flutter-action@v2
with:
# TODO: Change to 'stable' when a release version of flutter
# pins version 1.21.1 or later of 'package:test'
channel: 'master'
flutter-version: ${{ matrix.flutter-version }}
channel: 'stable'
- name: Run tests
run: flutter test integration_test/
# TODO: Remove the retries when
# https://github.com/flutter/flutter/issues/121231 is fixed.
# See https://github.com/dart-lang/http/issues/938 for context.
run: |
for i in {1..6}
do
flutter test integration_test/main.dart && break
if [ $i -eq 6 ]
then
exit 1
fi
echo "Retry $i"
done
Loading