From a80d40f630c7df735cfcc490895ab26b6b78b50b Mon Sep 17 00:00:00 2001 From: Kevin Moore Date: Tue, 28 Jan 2020 14:54:41 -0800 Subject: [PATCH] Enable and fix latest pedantic lints --- analysis_options.yaml | 6 ++ example/common.dart | 3 +- example/languages.dart | 6 +- example/organization.dart | 4 +- example/readme.dart | 2 +- example/releases.dart | 2 +- example/repos.dart | 8 +-- example/search.dart | 6 +- example/users.dart | 2 +- example/zen.dart | 2 +- lib/browser_helper.dart | 4 +- lib/src/browser/xplat_browser.dart | 4 +- lib/src/common/activity_service.dart | 20 +++---- lib/src/common/git_service.dart | 4 +- lib/src/common/github.dart | 72 ++++++------------------ lib/src/common/model/repos_contents.dart | 6 +- lib/src/common/orgs_service.dart | 2 +- lib/src/common/repos_service.dart | 37 ++++++------ lib/src/common/search_service.dart | 4 +- lib/src/common/util/pagination.dart | 14 ++--- lib/src/common/xplat_common.dart | 2 +- lib/src/server/xplat_server.dart | 6 +- lib/src/util.dart | 2 +- test/code_search_test.dart | 6 +- test/experiment/limit_pager.dart | 4 +- test/experiment/link_header.dart | 2 +- test/experiment/polling.dart | 2 +- test/git_test.dart | 18 +++--- test/helper/http.dart | 5 +- tool/language_color_generator.dart | 2 +- 30 files changed, 107 insertions(+), 150 deletions(-) diff --git a/analysis_options.yaml b/analysis_options.yaml index 1640f87e..41e58cae 100644 --- a/analysis_options.yaml +++ b/analysis_options.yaml @@ -932,3 +932,9 @@ linter: # reason: Trying to assigning a value to void is an error. # 0 issues - void_checks + + - camel_case_extensions + - omit_local_variable_types + - prefer_conditional_assignment + - prefer_final_fields + - use_function_type_syntax_for_parameters diff --git a/example/common.dart b/example/common.dart index 4a4cefcb..27a3c7f3 100644 --- a/example/common.dart +++ b/example/common.dart @@ -13,8 +13,7 @@ export 'package:github/browser_helper.dart'; Future initViewSourceButton(String script) async { // query the DOM for the view source button, handle clicks document.querySelector('#view-source')?.onClick?.listen((_) { - final WindowBase popup = - window.open('view_source.html?script=$script', 'View Source'); + final popup = window.open('view_source.html?script=$script', 'View Source'); String code; var fetched = false; diff --git a/example/languages.dart b/example/languages.dart index a684bc96..e8d657df 100644 --- a/example/languages.dart +++ b/example/languages.dart @@ -42,7 +42,7 @@ void reloadTable({int accuracy = 4}) { } isReloadingTable = true; - final String md = generateMarkdown(accuracy); + final md = generateMarkdown(accuracy); github.misc.renderMarkdown(md).then((html) { tableDiv.setInnerHtml(html, treeSanitizer: NodeTreeSanitizer.trusted); isReloadingTable = false; @@ -54,10 +54,10 @@ int totalBytes(LanguageBreakdown breakdown) { } String generateMarkdown(int accuracy) { - final int total = totalBytes(breakdown); + final total = totalBytes(breakdown); final data = breakdown.toList(); - String md = '|Name|Bytes|Percentage|\n'; + var md = '|Name|Bytes|Percentage|\n'; md += '|-----|-----|-----|\n'; data.sort((a, b) => b[1].compareTo(a[1])); diff --git a/example/organization.dart b/example/organization.dart index 7d238ca3..178b2041 100644 --- a/example/organization.dart +++ b/example/organization.dart @@ -24,8 +24,8 @@ Future main() async { Future loadOrganization(String orgToLoad) async { try { - final Organization org = await github.organizations.get(orgToLoad); - final String html = ''' + final org = await github.organizations.get(orgToLoad); + final html = '''
Name: ${org.name}
Id: ${org.id}
Company: ${org.company} diff --git a/example/readme.dart b/example/readme.dart index 07e835e7..fa572b52 100644 --- a/example/readme.dart +++ b/example/readme.dart @@ -12,7 +12,7 @@ Future main() async { readmeDiv = querySelector('#readme'); var repo = RepositorySlug('SpinlockLabs', 'github.dart'); final readme = await github.repositories.getReadme(repo); - String markdown = readme.content; + var markdown = readme.content; if (readme.encoding == 'base64') { markdown = String.fromCharCodes(base64.decode(markdown)); } diff --git a/example/releases.dart b/example/releases.dart index 44513acf..8b8b528b 100644 --- a/example/releases.dart +++ b/example/releases.dart @@ -24,7 +24,7 @@ void loadReleases() {

${release.name}

''', treeSanitizer: NodeTreeSanitizer.trusted); - final Element rel = releasesDiv.querySelector('#release-${release.id}'); + final rel = releasesDiv.querySelector('#release-${release.id}'); void append(String key, String value) { if (value == null) { return; diff --git a/example/repos.dart b/example/repos.dart index bc4718f9..829eaee4 100644 --- a/example/repos.dart +++ b/example/repos.dart @@ -42,7 +42,7 @@ List _reposCache; void updateRepos( List repos, [ - int compare(Repository a, Repository b), + int Function(Repository a, Repository b) compare, ]) { document.querySelector('#repos').children.clear(); repos.sort(compare); @@ -69,7 +69,7 @@ void updateRepos( } } -void loadRepos([int compare(Repository a, Repository b)]) { +void loadRepos([int Function(Repository a, Repository b) compare]) { final title = querySelector('#title'); if (title.text.contains('(')) { title.replaceWith(HeadingElement.h2() @@ -90,9 +90,7 @@ void loadRepos([int compare(Repository a, Repository b)]) { } } - if (compare == null) { - compare = (a, b) => a.name.compareTo(b.name); - } + compare ??= (a, b) => a.name.compareTo(b.name); github.repositories.listUserRepositories(user).toList().then((repos) { _reposCache = repos; diff --git a/example/search.dart b/example/search.dart index 60f223ca..116581c5 100644 --- a/example/search.dart +++ b/example/search.dart @@ -9,7 +9,7 @@ Future main() async { } Future search(_) async { - final Stream resultsStream = github.search.code( + final resultsStream = github.search.code( val('query'), language: val('language'), filename: val('filename'), @@ -28,13 +28,13 @@ Future search(_) async { final DivElement resultsDiv = querySelector('#results'); resultsDiv.innerHtml = ''; - int count = 0; + var count = 0; await for (final results in resultsStream) { count += results.items.length; querySelector('#nresults').text = '${results.totalCount} result${results.totalCount == 1 ? "" : "s"} (showing $count)'; - for (final CodeSearchItem item in results.items) { + for (final item in results.items) { final url = item.htmlUrl; final path = item.path; resultsDiv.append(DivElement() diff --git a/example/users.dart b/example/users.dart index 691509d5..40e22077 100644 --- a/example/users.dart +++ b/example/users.dart @@ -18,7 +18,7 @@ void loadUsers() { github.users.getUser(baseUser.login).then((user) { final userDiv = DivElement(); - for (int i = 1; i <= 2; i++) { + for (var i = 1; i <= 2; i++) { userDiv.append(BRElement()); } diff --git a/example/zen.dart b/example/zen.dart index 560f914f..b152e262 100644 --- a/example/zen.dart +++ b/example/zen.dart @@ -3,6 +3,6 @@ import 'common.dart'; Future main() async { await initViewSourceButton('zen.dart'); - final String msg = await github.misc.getZen(); + final msg = await github.misc.getZen(); querySelector('#zen').text = msg; } diff --git a/lib/browser_helper.dart b/lib/browser_helper.dart index 39e8800b..4c8485e3 100644 --- a/lib/browser_helper.dart +++ b/lib/browser_helper.dart @@ -9,11 +9,11 @@ import 'package:github/src/common.dart'; /// [selector] is the selector to use to find markdown elements. /// [indent] is the indent that needs to be stripped out. void renderMarkdown(GitHub github, String selector, {int indent = 4}) { - final ElementList elements = document.querySelectorAll(selector); + final elements = document.querySelectorAll(selector); elements.removeWhere((Element it) => it.attributes.containsKey('rendered')); - for (final Element e in elements) { + for (final e in elements) { final txt = e.text; final md = txt.split('\n').map((it) { diff --git a/lib/src/browser/xplat_browser.dart b/lib/src/browser/xplat_browser.dart index c7074a58..a5ba5d19 100644 --- a/lib/src/browser/xplat_browser.dart +++ b/lib/src/browser/xplat_browser.dart @@ -10,9 +10,7 @@ import 'package:github/src/common/xplat_common.dart' Authentication findAuthenticationFromEnvironment() { // search the query string parameters first var auth = findAuthenticationInMap(_parseQuery(window.location.href)); - if (auth == null) { - auth = findAuthenticationInMap(window.sessionStorage); - } + auth ??= findAuthenticationInMap(window.sessionStorage); return auth ?? Authentication.anonymous(); } diff --git a/lib/src/common/activity_service.dart b/lib/src/common/activity_service.dart index ef1a84e6..ceeb49eb 100644 --- a/lib/src/common/activity_service.dart +++ b/lib/src/common/activity_service.dart @@ -344,9 +344,7 @@ class EventPoller { _controller = StreamController(); void handleEvent(http.Response response) { - if (interval == null) { - interval = int.parse(response.headers['x-poll-interval']); - } + interval ??= int.parse(response.headers['x-poll-interval']); if (response.statusCode == 304) { return; @@ -374,17 +372,15 @@ class EventPoller { } } - if (_timer == null) { - _timer = Timer.periodic(Duration(seconds: interval), (timer) { - final headers = {}; + _timer ??= Timer.periodic(Duration(seconds: interval), (timer) { + final headers = {}; - if (_lastFetched != null) { - headers['If-None-Match'] = _lastFetched; - } + if (_lastFetched != null) { + headers['If-None-Match'] = _lastFetched; + } - github.request('GET', path, headers: headers).then(handleEvent); - }); - } + github.request('GET', path, headers: headers).then(handleEvent); + }); } final headers = {}; diff --git a/lib/src/common/git_service.dart b/lib/src/common/git_service.dart index d21aaa12..cdd0e708 100644 --- a/lib/src/common/git_service.dart +++ b/lib/src/common/git_service.dart @@ -61,7 +61,7 @@ class GitService extends Service { /// /// API docs: https://developer.github.com/v3/git/refs/#get-all-references Stream listReferences(RepositorySlug slug, {String type}) { - String path = '/repos/${slug.fullName}/git/refs'; + var path = '/repos/${slug.fullName}/git/refs'; if (type != null) { path += '/$type'; } @@ -93,7 +93,7 @@ class GitService extends Service { String sha, { bool force = false, }) { - final String body = jsonEncode({'sha': sha, 'force': force}); + final body = jsonEncode({'sha': sha, 'force': force}); // Somehow the reference updates PATCH request needs a valid content-length. final headers = {'content-length': body.length.toString()}; diff --git a/lib/src/common/github.dart b/lib/src/common/github.dart index 7fe90726..f0969d0b 100644 --- a/lib/src/common/github.dart +++ b/lib/src/common/github.dart @@ -80,10 +80,7 @@ class GitHub { /// Service for activity related methods of the GitHub API. ActivityService get activity { - if (_activity == null) { - _activity = ActivityService(this); - } - return _activity; + return _activity ??= ActivityService(this); } /// Service for autorizations related methods of the GitHub API. @@ -91,90 +88,57 @@ class GitHub { /// Note: You can only access this API via Basic Authentication using your /// username and password, not tokens. AuthorizationsService get authorizations { - if (_authorizations == null) { - _authorizations = AuthorizationsService(this); - } - return _authorizations; + return _authorizations ??= AuthorizationsService(this); } /// Service for gist related methods of the GitHub API. GistsService get gists { - if (_gists == null) { - _gists = GistsService(this); - } - return _gists; + return _gists ??= GistsService(this); } /// Service for git data related methods of the GitHub API. GitService get git { - if (_git == null) { - _git = GitService(this); - } - return _git; + return _git ??= GitService(this); } /// Service for issues related methods of the GitHub API. IssuesService get issues { - if (_issues == null) { - _issues = IssuesService(this); - } - return _issues; + return _issues ??= IssuesService(this); } /// Service for misc related methods of the GitHub API. MiscService get misc { - if (_misc == null) { - _misc = MiscService(this); - } - return _misc; + return _misc ??= MiscService(this); } /// Service for organization related methods of the GitHub API. OrganizationsService get organizations { - if (_organizations == null) { - _organizations = OrganizationsService(this); - } - return _organizations; + return _organizations ??= OrganizationsService(this); } /// Service for pull requests related methods of the GitHub API. PullRequestsService get pullRequests { - if (_pullRequests == null) { - _pullRequests = PullRequestsService(this); - } - return _pullRequests; + return _pullRequests ??= PullRequestsService(this); } /// Service for repository related methods of the GitHub API. RepositoriesService get repositories { - if (_repositories == null) { - _repositories = RepositoriesService(this); - } - return _repositories; + return _repositories ??= RepositoriesService(this); } /// Service for search related methods of the GitHub API. SearchService get search { - if (_search == null) { - _search = SearchService(this); - } - return _search; + return _search ??= SearchService(this); } /// Service to provide a handy method to access GitHub's url shortener. UrlShortenerService get urlShortener { - if (_urlShortener == null) { - _urlShortener = UrlShortenerService(this); - } - return _urlShortener; + return _urlShortener ??= UrlShortenerService(this); } /// Service for user related methods of the GitHub API. UsersService get users { - if (_users == null) { - _users = UsersService(this); - } - return _users; + return _users ??= UsersService(this); } /// Handles Get Requests that respond with JSON @@ -192,7 +156,7 @@ class GitHub { /// The default [convert] function returns the input object. Future getJSON(String path, {int statusCode, - void fail(http.Response response), + void Function(http.Response response) fail, Map headers, Map params, JSONConverter convert, @@ -228,7 +192,7 @@ class GitHub { Future postJSON( String path, { int statusCode, - void fail(http.Response response), + void Function(http.Response response) fail, Map headers, Map params, JSONConverter convert, @@ -251,7 +215,7 @@ class GitHub { String method, String path, { int statusCode, - void fail(http.Response response), + void Function(http.Response response) fail, Map headers, Map params, JSONConverter convert, @@ -304,7 +268,7 @@ class GitHub { Map params, dynamic body, int statusCode, - void fail(http.Response response), + void Function(http.Response response) fail, String preview, }) async { if (rateLimitRemaining != null && rateLimitRemaining <= 0) { @@ -314,7 +278,7 @@ class GitHub { await Future.delayed(waitTime); } - if (headers == null) headers = {}; + headers ??= {}; if (preview != null) { headers['Accept'] = preview; @@ -412,7 +376,7 @@ class GitHub { buff.writeln(' Message: $message'); if (errors != null) { buff.writeln(' Errors:'); - for (final Map error in errors) { + for (final error in errors) { final resource = error['resource']; final field = error['field']; final code = error['code']; diff --git a/lib/src/common/model/repos_contents.dart b/lib/src/common/model/repos_contents.dart index 3d1e9475..bee4f75f 100644 --- a/lib/src/common/model/repos_contents.dart +++ b/lib/src/common/model/repos_contents.dart @@ -57,10 +57,8 @@ class GitHubFile { /// The value in [content] Base-64 decoded. String get text { - if (_text == null) { - _text = utf8.decode(base64Decode(LineSplitter.split(content).join())); - } - return _text; + return _text ??= + utf8.decode(base64Decode(LineSplitter.split(content).join())); } String _text; diff --git a/lib/src/common/orgs_service.dart b/lib/src/common/orgs_service.dart index 011eacd3..a9b700ad 100644 --- a/lib/src/common/orgs_service.dart +++ b/lib/src/common/orgs_service.dart @@ -18,7 +18,7 @@ class OrganizationsService extends Service { /// /// API docs: : https://developer.github.com/v3/orgs/#list-user-organizations Stream list([String userName]) { - String requestPath = '/users/$userName/orgs'; + var requestPath = '/users/$userName/orgs'; if (userName == null) { requestPath = '/user/orgs'; } diff --git a/lib/src/common/repos_service.dart b/lib/src/common/repos_service.dart index 75a9110a..97743eb9 100644 --- a/lib/src/common/repos_service.dart +++ b/lib/src/common/repos_service.dart @@ -149,7 +149,7 @@ class RepositoriesService extends Service { /// Fetches a list of repositories specified by [slugs]. Stream getRepositories(List slugs) async* { - for (final RepositorySlug slug in slugs) { + for (final slug in slugs) { final repo = await getRepository(slug); yield repo; } @@ -167,7 +167,7 @@ class RepositoriesService extends Service { bool hasWiki, bool hasDownloads}) async { ArgumentError.checkNotNull(slug); - final Map data = createNonNullMap({ + final data = createNonNullMap({ 'name': name, 'description': description, 'homepage': homepage, @@ -289,7 +289,7 @@ class RepositoriesService extends Service { Future isCollaborator(RepositorySlug slug, String user) async { ArgumentError.checkNotNull(slug); ArgumentError.checkNotNull(user); - bool catchError = false; + var catchError = false; http.Response response; try { response = await github.request( @@ -380,7 +380,7 @@ class RepositoriesService extends Service { }) async { ArgumentError.checkNotNull(slug); ArgumentError.checkNotNull(commit); - final Map data = createNonNullMap({ + final data = createNonNullMap({ 'body': body, 'path': path, 'position': position, @@ -513,7 +513,7 @@ class RepositoriesService extends Service { ArgumentError.checkNotNull(slug); final headers = {}; - String url = '/repos/${slug.fullName}/readme'; + var url = '/repos/${slug.fullName}/readme'; if (ref != null) { url += '?ref=$ref'; @@ -525,7 +525,7 @@ class RepositoriesService extends Service { throw NotFound(github, response.body); } }, convert: (Map input) { - GitHubFile file = GitHubFile.fromJson(input); + var file = GitHubFile.fromJson(input); if (file != null && slug != null) { file.sourceRepository = slug; } @@ -552,7 +552,7 @@ class RepositoriesService extends Service { {String ref}) async { ArgumentError.checkNotNull(slug); ArgumentError.checkNotNull(path); - String url = '/repos/${slug.fullName}/contents/$path'; + var url = '/repos/${slug.fullName}/contents/$path'; if (ref != null) { url += '?ref=$ref'; @@ -587,7 +587,7 @@ class RepositoriesService extends Service { RepositorySlug slug, CreateFile file) async { ArgumentError.checkNotNull(slug); ArgumentError.checkNotNull(file); - final http.Response response = await github.request( + final response = await github.request( 'PUT', '/repos/${slug.fullName}/contents/${file.path}', body: jsonEncode(file), @@ -604,13 +604,13 @@ class RepositoriesService extends Service { {String branch}) async { ArgumentError.checkNotNull(slug); ArgumentError.checkNotNull(path); - final Map map = createNonNullMap({ + final map = createNonNullMap({ 'message': message, 'content': content, 'sha': sha, 'branch': branch, }); - final http.Response response = await github.request( + final response = await github.request( 'PUT', '/repos/${slug.fullName}/contents/$path', body: jsonEncode(map), @@ -626,9 +626,9 @@ class RepositoriesService extends Service { String message, String sha, String branch) async { ArgumentError.checkNotNull(slug); ArgumentError.checkNotNull(path); - final Map map = + final map = createNonNullMap({'message': message, 'sha': sha, 'branch': branch}); - final http.Response response = await github.request( + final response = await github.request( 'DELETE', '/repos/${slug.fullName}/contents/$path', body: jsonEncode(map), @@ -646,7 +646,7 @@ class RepositoriesService extends Service { ArgumentError.checkNotNull(slug); ArgumentError.checkNotNull(ref); ArgumentError.checkNotNull(format); - final http.Response response = await github.request( + final response = await github.request( 'GET', '/repos/${slug.fullName}/$format/$ref', statusCode: StatusCodes.FOUND, @@ -671,7 +671,7 @@ class RepositoriesService extends Service { /// API docs: https://developer.github.com/v3/repos/forks/#create-a-fork Future createFork(RepositorySlug slug, [CreateFork fork]) async { ArgumentError.checkNotNull(slug); - if (fork == null) fork = CreateFork(); + fork ??= CreateFork(); return github.postJSON, Repository>( '/repos/${slug.fullName}/forks', body: jsonEncode(fork), @@ -966,8 +966,7 @@ class RepositoriesService extends Service { }) async { ArgumentError.checkNotNull(slug); ArgumentError.checkNotNull(createRelease); - final Release release = - await github.postJSON, Release>( + final release = await github.postJSON, Release>( '/repos/${slug.fullName}/releases', convert: (i) => Release.fromJson(i), body: jsonEncode(createRelease.toJson()), @@ -1114,7 +1113,7 @@ class RepositoriesService extends Service { Release release, Iterable createReleaseAssets, ) async { - final List releaseAssets = []; + final releaseAssets = []; for (final createReleaseAsset in createReleaseAssets) { final headers = {'Content-Type': createReleaseAsset.contentType}; final releaseAsset = await github.postJSON( @@ -1140,8 +1139,8 @@ class RepositoriesService extends Service { RepositorySlug slug, ) async { ArgumentError.checkNotNull(slug); - final String path = '/repos/${slug.fullName}/stats/contributors'; - final http.Response response = await github.request('GET', path, + final path = '/repos/${slug.fullName}/stats/contributors'; + final response = await github.request('GET', path, headers: {'Accept': 'application/vnd.github.v3+json'}); if (response.statusCode == StatusCodes.OK) { diff --git a/lib/src/common/search_service.dart b/lib/src/common/search_service.dart index 3cb52e22..4418b6c6 100644 --- a/lib/src/common/search_service.dart +++ b/lib/src/common/search_service.dart @@ -23,7 +23,7 @@ class SearchService extends Service { final controller = StreamController(); - bool isFirst = true; + var isFirst = true; PaginationHelper(github) .fetchStreamed('GET', '/search/repositories', @@ -95,7 +95,7 @@ class SearchService extends Service { query += _searchQualifier('size', size); // build up the in: qualifier based on the 2 booleans - String _in = ''; + var _in = ''; if (inFile) { _in = 'file'; } diff --git a/lib/src/common/util/pagination.dart b/lib/src/common/util/pagination.dart index 53de656d..753a8457 100644 --- a/lib/src/common/util/pagination.dart +++ b/lib/src/common/util/pagination.dart @@ -17,10 +17,10 @@ class PaginationHelper { Map params, String body, int statusCode = 200}) async* { - int count = 0; - const Duration serverErrorBackOff = Duration(seconds: 10); - const int maxServerErrors = 10; - int serverErrors = 0; + var count = 0; + const serverErrorBackOff = Duration(seconds: 10); + const maxServerErrors = 10; + var serverErrors = 0; if (params == null) { params = {}; @@ -89,7 +89,7 @@ class PaginationHelper { int statusCode = 200, String preview, }) async* { - if (headers == null) headers = {}; + headers ??= {}; if (preview != null) { headers['Accept'] = preview; } @@ -137,9 +137,9 @@ Map parseLinkHeader(String input) { throw const FormatException('Invalid Link Header'); } final kv = part.split('; '); - String url = kv[0].substring(1); + var url = kv[0].substring(1); url = url.substring(0, url.length - 1); - String key = kv[1]; + var key = kv[1]; key = key.replaceAll('"', '').substring(4); out[key] = url; } diff --git a/lib/src/common/xplat_common.dart b/lib/src/common/xplat_common.dart index 91eda3d4..e251ba7f 100644 --- a/lib/src/common/xplat_common.dart +++ b/lib/src/common/xplat_common.dart @@ -4,7 +4,7 @@ Authentication findAuthenticationFromEnvironment() => Authentication.anonymous(); Authentication findAuthenticationInMap(Map map) { - for (final String key in COMMON_GITHUB_TOKEN_ENV_KEYS) { + for (final key in COMMON_GITHUB_TOKEN_ENV_KEYS) { if (map.containsKey(key)) { return Authentication.withToken(map[key]); } diff --git a/lib/src/server/xplat_server.dart b/lib/src/server/xplat_server.dart index 2093c75d..3bd6e100 100644 --- a/lib/src/server/xplat_server.dart +++ b/lib/src/server/xplat_server.dart @@ -15,12 +15,12 @@ Authentication findAuthenticationFromEnvironment() { 'security', const ['find-internet-password', '-g', '-s', 'github.com']); if (result.exitCode == 0) { - final String out = result.stdout.toString(); + final out = result.stdout.toString(); - String username = out.split('"acct"="')[1]; + var username = out.split('"acct"="')[1]; username = username.substring(0, username.indexOf('\n')); username = username.substring(0, username.length - 1); - String password = result.stderr.toString().split('password:')[1].trim(); + var password = result.stderr.toString().split('password:')[1].trim(); password = password.substring(1, password.length - 1); return Authentication.basic(username.trim(), password.trim()); } diff --git a/lib/src/util.dart b/lib/src/util.dart index 0f4d5ea3..9e21595d 100644 --- a/lib/src/util.dart +++ b/lib/src/util.dart @@ -7,7 +7,7 @@ String buildQueryString(Map params) { queryString.write('?'); } - int i = 0; + var i = 0; for (final key in params.keys) { i++; if (params[key] == null) { diff --git a/test/code_search_test.dart b/test/code_search_test.dart index 6187009d..06ade1aa 100644 --- a/test/code_search_test.dart +++ b/test/code_search_test.dart @@ -3,9 +3,9 @@ import 'package:github/github.dart'; Future main() async { print('Searching ...'); - final GitHub github = GitHub(); + final github = GitHub(); - final Stream resultsStream = github.search.code( + final resultsStream = github.search.code( 'github', repo: 'SpinlockLabs/github.dart', perPage: 5, @@ -13,7 +13,7 @@ Future main() async { ); final results = await resultsStream.first; print('${results.totalCount} results'); - int k = 1; + var k = 1; for (final i in results.items) { print('${k++} ${i.path}'); } diff --git a/test/experiment/limit_pager.dart b/test/experiment/limit_pager.dart index 28a9c33b..c8b14739 100755 --- a/test/experiment/limit_pager.dart +++ b/test/experiment/limit_pager.dart @@ -22,8 +22,8 @@ PaginationInformation solve(int limit) { return PaginationInformation(limit, limit ~/ MAX_PER_PAGE, MAX_PER_PAGE); } - const int itemsPerPage = 100; - final int pages = (limit / itemsPerPage).ceil(); + const itemsPerPage = 100; + final pages = (limit / itemsPerPage).ceil(); return PaginationInformation(limit, pages, itemsPerPage); } diff --git a/test/experiment/link_header.dart b/test/experiment/link_header.dart index b3856067..dd0230a0 100644 --- a/test/experiment/link_header.dart +++ b/test/experiment/link_header.dart @@ -1,7 +1,7 @@ import 'package:github/src/common/util/pagination.dart'; void main() { - final Map it = parseLinkHeader( + final it = parseLinkHeader( '; rel="next", ; rel="last"'); print(it); } diff --git a/test/experiment/polling.dart b/test/experiment/polling.dart index ddb3189b..b12b2ef6 100755 --- a/test/experiment/polling.dart +++ b/test/experiment/polling.dart @@ -3,7 +3,7 @@ import 'package:github/github.dart'; void main() { final github = GitHub(); - final EventPoller poller = github.activity.pollPublicEvents(); + final poller = github.activity.pollPublicEvents(); poller.start().listen((event) { print('New Event:'); diff --git a/test/git_test.dart b/test/git_test.dart index b11b759f..336c1a54 100644 --- a/test/git_test.dart +++ b/test/git_test.dart @@ -32,7 +32,7 @@ void main() { group('createBlob()', () { test('constructs correct path', () { - CreateGitBlob blob = CreateGitBlob('bbb', 'utf-8'); + var blob = CreateGitBlob('bbb', 'utf-8'); git.createBlob(repo, blob); verify(github.postJSON( @@ -44,7 +44,7 @@ void main() { }); test('creates valid JSON body', () { - CreateGitBlob blob = CreateGitBlob('bbb', 'utf-8'); + var blob = CreateGitBlob('bbb', 'utf-8'); git.createBlob(repo, blob); final body = captureSentBody(github); @@ -64,7 +64,7 @@ void main() { group('createCommit()', () { test('constructs correct path', () { - final CreateGitCommit commit = CreateGitCommit('aMessage', 'aTreeSha'); + final commit = CreateGitCommit('aMessage', 'aTreeSha'); git.createCommit(repo, commit); verify(github.postJSON( @@ -77,9 +77,9 @@ void main() { test('creates valid JSON body', () { // given - const String date = '2014-10-02T15:21:29Z'; + const date = '2014-10-02T15:21:29Z'; - final CreateGitCommit commit = CreateGitCommit('aMessage', 'aTreeSha') + final commit = CreateGitCommit('aMessage', 'aTreeSha') ..parents = ['parentSha1', 'parentSha2'] ..committer = GitCommitUser('cName', 'cEmail', parseDateTime(date)) ..author = GitCommitUser('aName', 'aEmail', parseDateTime(date)); @@ -134,7 +134,7 @@ void main() { group('editReference()', () { test('constructs correct path', () { // given - final http.Response expectedResponse = http.Response('{}', 200); + final expectedResponse = http.Response('{}', 200); when(github.request(any, any, body: any, headers: any)) .thenReturn(Future.value(expectedResponse)); @@ -149,7 +149,7 @@ void main() { test('creates valid JSON body', () { // given - final http.Response expectedResponse = http.Response('{}', 200); + final expectedResponse = http.Response('{}', 200); when(github.request(any, any, body: any, headers: any)) .thenReturn(Future.value(expectedResponse)); @@ -157,7 +157,7 @@ void main() { git.editReference(repo, 'heads/b', someSha, force: true); // then - final List captured = verify(github.request( + final captured = verify(github.request( any, any, body: captureAny, @@ -176,7 +176,7 @@ void main() { group('deleteReference()', () { test('constructs correct path', () { // given - final http.Response expectedResponse = http.Response('{}', 200); + final expectedResponse = http.Response('{}', 200); when(github.request(any, any)).thenReturn(Future.value(expectedResponse)); // when diff --git a/test/helper/http.dart b/test/helper/http.dart index 288462b7..566611d3 100644 --- a/test/helper/http.dart +++ b/test/helper/http.dart @@ -29,11 +29,10 @@ class MockResponse extends http.Response { : super(body, statusCode, headers: headers); factory MockResponse.fromAsset(String name) { - final Map responseData = + final responseData = jsonDecode(asset('responses/$name.json').readAsStringSync()) as Map; - final Map headers = - responseData['headers'] as Map; + final headers = responseData['headers'] as Map; final dynamic body = responseData['body']; final int statusCode = responseData['statusCode']; String actualBody; diff --git a/tool/language_color_generator.dart b/tool/language_color_generator.dart index b2a1cd83..3bed2d0b 100644 --- a/tool/language_color_generator.dart +++ b/tool/language_color_generator.dart @@ -21,7 +21,7 @@ Future main() async { final map = yaml.value as YamlMap; final languages = map.keys.cast().toList(growable: false)..sort(); - for (String language in languages) { + for (var language in languages) { final color = map[language]['color']?.toString()?.toUpperCase() ?? '#000000';