[Optimization, N/A] print response body when test fails

FYI, Here is the output of:
rspec spec/data/example_specs.rb
which runs the test specs that show now apivore handles various kinds of failures.
API testing scenarios
  unimplemented path
    fails (FAILED - 1)
  mismatched property type
XXXXXXXXXXXXXXXX
Response body for 'get /api/services/1.json'
{
  "id": 1,
  "name": "hello world"
}
XXXXXXXXXXXXXXXX
    fails (FAILED - 2)
  unexpected http response
XXXXXXXXXXXXXXXX
Response body for 'get /api/services.json'
[
  {
    "id": 1,
    "name": "hello world"
  }
]
XXXXXXXXXXXXXXXX
    fails (FAILED - 3)
  extra properties
XXXXXXXXXXXXXXXX
Response body for 'get /api/services.json'
[
  {
    "id": 1,
    "name": "hello world"
  }
]
XXXXXXXXXXXXXXXX
    fails (FAILED - 4)
XXXXXXXXXXXXXXXX
Response body for 'get /api/services/1.json'
{
  "id": 1,
  "name": "hello world"
}
XXXXXXXXXXXXXXXX
    also fails (FAILED - 5)
  missing required
XXXXXXXXXXXXXXXX
Response body for 'get /api/services.json'
[
  {
    "id": 1,
    "name": "hello world"
  }
]
XXXXXXXXXXXXXXXX
    fails (FAILED - 6)
XXXXXXXXXXXXXXXX
Response body for 'get /api/services/1.json'
{
  "id": 1,
  "name": "hello world"
}
XXXXXXXXXXXXXXXX
    also fails (FAILED - 7)
  missing non-required
    passes
    also passes
  fails custom validation
    passes
    fails (FAILED - 8)

Failures:

  1) API testing scenarios unimplemented path fails
     Failure/Error: expect(subject).to validate(:get, "/not_implemented.json", 200)
       Path /not_implemented.json did not respond with expected status code. Expected 200 got 404
       Response body:
     # ./spec/data/example_specs.rb:10:in `block (3 levels) in <top (required)>'

  2) API testing scenarios mismatched property type fails
     Failure/Error: expect(subject).to validate(:get, "/services/{id}.json", 200, { "id" => 1 })
        '/api/services/1.json#/name' of type String did not match one or more of the following types: integer, null
     # ./spec/data/example_specs.rb:17:in `block (3 levels) in <top (required)>'

  3) API testing scenarios unexpected http response fails
     Failure/Error: expect(subject).to validate(:get, "/services.json", 222)
       Path /services.json did not respond with expected status code. Expected 222 got 200
       Response body: [{"id":1,"name":"hello world"}]
     # ./spec/data/example_specs.rb:25:in `block (3 levels) in <top (required)>'

  4) API testing scenarios extra properties fails
     Failure/Error: expect(subject).to validate(:get, "/services.json", 200)
        '/api/services.json#/0' contains additional properties ["name"] outside of the schema when none are allowed
     # ./spec/data/example_specs.rb:33:in `block (3 levels) in <top (required)>'

  5) API testing scenarios extra properties also fails
     Failure/Error: expect(subject).to validate(:get, "/services/{id}.json", 200, { "id" => 1})
        '/api/services/1.json#/' contains additional properties ["name"] outside of the schema when none are allowed
     # ./spec/data/example_specs.rb:37:in `block (3 levels) in <top (required)>'

  6) API testing scenarios missing required fails
     Failure/Error: expect(subject).to validate(:get, "/services.json", 200)
        '/api/services.json#/0' did not contain a required property of 'test_required'
     # ./spec/data/example_specs.rb:45:in `block (3 levels) in <top (required)>'

  7) API testing scenarios missing required also fails
     Failure/Error: expect(subject).to validate(:get, "/services/{id}.json", 200, { "id" => 1})
        '/api/services/1.json#/' did not contain a required property of 'test_required'
     # ./spec/data/example_specs.rb:49:in `block (3 levels) in <top (required)>'

  8) API testing scenarios fails custom validation fails
     Failure/Error: expect(subject).to conform_to(Apivore::CustomSchemaValidator::WF_SCHEMA)
       The property '#/definitions/service' did not contain a required property of 'type' in schema file:///Users/charles/westfield/apivore/data/custom_schemata/westfield_api_standards.json#
     # ./spec/data/example_specs.rb:72:in `block (3 levels) in <top (required)>'

Finished in 0.26386 seconds (files took 1.51 seconds to load)
11 examples, 8 failures

Failed examples:

rspec ./spec/data/example_specs.rb:9 # API testing scenarios unimplemented path fails
rspec ./spec/data/example_specs.rb:16 # API testing scenarios mismatched property type fails
rspec ./spec/data/example_specs.rb:24 # API testing scenarios unexpected http response fails
rspec ./spec/data/example_specs.rb:32 # API testing scenarios extra properties fails
rspec ./spec/data/example_specs.rb:36 # API testing scenarios extra properties also fails
rspec ./spec/data/example_specs.rb:44 # API testing scenarios missing required fails
rspec ./spec/data/example_specs.rb:48 # API testing scenarios missing required also fails
rspec ./spec/data/example_specs.rb:71 # API testing scenarios fails custom validation fails

@hornc looks good to me, we get a print out of the response body for each failure, exactly was I wanted

small update to this PR here: https://github.com/westfieldlabs/apivore/pull/74 closing to merge #74 instead.


[Feature Request] Compatibility with Pytorch packed sequences

Can a newer version be created which is capable of handling PackedSequence? Working with time series requires batching different length sequences together, to which PackedSequence & these two are a great help.
Hence, compatibility with this data structure would be a great plus.

Yes, this was previously discussed in #11. I already have an implementation available locally (which uses PackedSequence) to handle inputs of different lengths, but the performance is quite poor and the code is not usable for training. If I find some free time, I may publicly release that implementation.


Add a 'service/' prefix when passing by reference

Mainly to make the generated name a bit more useful than it currently is now. @swankjesse and I were discussing how a name like "zipline/17" isn't very useful while debugging, so by specifying the way that the service is being handled by a prefix slightly aids with that.


Doesn't work with hash/chunking

Rollup allows hashing/chunking, your plugin only works with the singular static bundle file.
Would be nice if it worked with both solutions from Rollup.

Can you elaborate? Are you referring to multiple outputting multiple entry that are not dynamically loaded?

If you use rollups options like below, it throws errors:
{
dest: "somedir",
entryFileNames: "[name]-[hash].js",
chunkFileNames: "[name]-[hash].js"
}

Great, thanks! Will check this out tomorrow.

This should be fixed with v1.2.0, which should now be published to both NPM and Yarn.


Question about OctetString String()

In this method you are using strconv.IsPrint for what I assume is determining whether or not the byte slice can be converted to a string or should instead be returned as a hexadecimal string.
I've run into a problem with this method and the value returned by sysDesc. This will often times contain a carriage return (ASCII code 13), which is apparently not a printable character. This will lead to a large string of hexadecimal values instead of the plaintext equivalent. I have confirmed that just calling string(v.Value) works for this case, but will not work in the case of ifPhysAddress.
I was curious if you had run into this in the wild and what you thought may be the best course of action here.
Below is some code that reproduces what I am describing.
Thanks!
package main
import (
	"github.com/k-sone/snmpgo"
	"log"
	"time"
)

func main() {
	snmp, err := snmpgo.NewSNMP(snmpgo.SNMPArguments{
		Version: snmpgo.V2c,
		Address: "changeme:161",
		Community: "changeme",
		Timeout: time.Duration(3) * time.Second,
	})
	if err != nil {
		log.Fatalf("Error constructing snmp: %s", err)
	}

	if err = snmp.Open(); err != nil {
		log.Fatalf("Error opening snmp: %s", err)
	}

	oid, err := snmpgo.NewOids([]string{"<IP_ADDRESS>.<IP_ADDRESS>.0"}) // sysDesc
	if err != nil {
		log.Fatalf("Error creating sysDesc oid: %s", err)
	}

	pdu, err := snmp.GetRequest(oid)
	if err != nil {
		log.Fatalf("Error requesting sysDesc: %s", err)
	}

	log.Printf("sysDesc = %s", pdu.VarBinds()[0].Variable.String())

	oid, err = snmpgo.NewOids([]string{"<IP_ADDRESS>.<IP_ADDRESS>.1.6"}) // ifPhysAddress
	if err != nil {
		log.Fatalf("Error creating ifPhysAddress oid: ", err)
	}

	pdu, err = snmp.GetBulkRequest(oid, 0, 10)
	if err != nil {
		log.Fatalf("Error requesting sysDesc: %s", err)
	}

	log.Printf("ifPhysAddress = %s", pdu.VarBinds()[0].Variable.String())
}

Output:
2016/03/02 15:49:22 sysDesc = 43:69:73:63:6f:20:49:4f:53:20:53:6f:66:74:77:61:72:65:2c:20:43:33:37:35:30:20:53:6f:66:74:77:61:72:65:20:28:43:33:37:35:30:2d:49:50:53:45:52:56:49:43:45:53:4b:39:2d:4d:29:2c:20:56:65:72:73:69:6f:6e:20:31:32:2e:32:28:35:35:29:53:45:35:2c:20:52:45:4c:45:41:53:45:20:53:4f:46:54:57:41:52:45:20:28:66:63:31:29:0d:0a:54:65:63:68:6e:69:63:61:6c:20:53:75:70:70:6f:72:74:3a:20:68:74:74:70:3a:2f:2f:77:77:77:2e:63:69:73:63:6f:2e:63:6f:6d:2f:74:65:63:68:73:75:70:70:6f:72:74:0d:0a:43:6f:70:79:72:69:67:68:74:20:28:63:29:20:31:39:38:36:2d:32:30:31:32:20:62:79:20:43:69:73:63:6f:20:53:79:73:74:65:6d:73:2c:20:49:6e:63:2e:0d:0a:43:6f:6d:70:69:6c:65:64:20:54:68:75:20:30:39:2d:46:65:62:2d:31:32:20:31:38:3a:35:39:20:62:79:20:70:72:6f:64:5f:72:65:6c:5f:74:65:61:6d
2016/03/02 15:49:22 ifPhysAddress = 00:64:40:b9:38:40

Expected Output:
2016/03/02 15:51:24 sysDesc = Cisco IOS Software, C3750 Software (C3750-IPSERVICESK9-M), Version 12.2(55)SE5, RELEASE SOFTWARE (fc1)
Technical Support: http://www.cisco.com/techsupport
Copyright (c) 1986-2012 by Cisco Systems, Inc.
Compiled Thu 09-Feb-12 18:59 by prod_rel_team
2016/03/02 15:51:24 ifPhysAddress = 00:64:40:b9:38:40

Yes, I think the same issue has been described here (by snmp4j).
To work around this problem, you can use directly OctetString.Value.
-log.Printf("sysDesc = %s", pdu.VarBinds()[0].Variable.String())
+log.Printf("sysDesc = %s", pdu.VarBinds()[0].Variable.(*snmpgo.OctetString).Value)

Thanks for the link. I will handle this in my library as you suggest.


[feat] Completed quests routes

When a user completes a quest, their completion status will be updated in the UserDailyQuests and UserMainQuests postgres tables.
This issue is to create a set of routes to get the completed user quests. Create 2 routes that take the user's address as a query param and return the data from UserDailyQuests and UserMainQuests for that user.
References

UserDailyQuests table
UserMainQuests table
Useful example backend route

@b-j-roberts can I work on this?

For sure @EjembiEmmanuel , glad to have you on the project!

Thank you!


Allow parsing of negative Max-Age attribute-values

Per RFC6265 Section 5.2.2, Max-Age may be negative or 0, which a server uses to expire a cookie. First parse max_age as a signed value, and then clamp the result to the positive range (as negative values have the same meaning as 0: expire the cookie). This limits the maximum parseable value to i64::max_value() (from u64::max_value()), but such large Max-Age values seem meaningless.

Thanks!


Use SPDX license for Nuget package?

Describe your question
It is recommended to use the SPDX license identifier for Nuget when using a common license like MIT:
https://docs.microsoft.com/en-us/nuget/reference/nuspec#license

An SPDX license expression or path to a license file within the package, often shown
in UIs like nuget.org. If you're licensing the package under a common license, like
MIT or BSD-2-Clause, use the associated SPDX license identifier.
For example:
<license type="expression">MIT</license>

The same also possible inside SDK-style .csproj files:
https://docs.microsoft.com/en-us/dotnet/standard/library-guidance/nuget#important-nuget-package-metadata:
<PackageLicenseExpression>MIT</PackageLicenseExpression>
This project currently uses a file reference to the 'LICENSE' file: <PackageLicenseFile>LICENSE</PackageLicenseFile>, the file contains the MIT license.
Is there a reason this project has not yet adapted this recommendation?
Which project is your question related to?

Generic

There is no reason. The topic is new to us. I will adopt the changes and release a new nuget verison quite soon.

Thank you for your reply.
I didn't want to sound like this is a problem, I just noticed a difference between MQTTnet and Microsoft packages (also MIT). Also I think this might make life easier for SBOM-tools (although I don't know definitely).

This is fixed with https://github.com/dotnet/MQTTnet/pull/1408, I guess. Correct me, if I'm wrong.


[core] Add localization

This pull request closes https://github.com/mui-org/material-ui/issues/18202.

[x] I have followed (at least) the PR section of the contributing guide.

Edit by @oliviertassinari
Benchmark

http://jquense.github.io/react-widgets/api/Combobox/#messages => messages prop
https://reactdatepicker.com/#example-today-button => todayButton prop
https://ant.design/components/config-provider/ => locale
https://ej2.syncfusion.com/react/documentation/common/localization/ => L10n singleton
https://ag-grid.com/javascript-grid-internationalisation/ => localeText  object option key
https://blueprintjs.com/docs/#datetime/dateinput.localization => todayButtonText prop
https://www.telerik.com/kendo-react-ui/components/intl/l10n/loading-messages/ => messages singleton config
https://devexpress.github.io/devextreme-reactive/react/grid/docs/guides/localization/ => messages prop
https://github.com/tannerlinsley/react-table/tree/v6.10.1 => xText props
https://github.com/mbrn/material-table/blob/3f47395a2c9f9d4b6f2606c43096205a273f3ba4/src/prop-types.js#L157 => localization prop
https://github.com/gregnb/mui-datatables/blob/23d8920fd2d42962ab2532bb7b13c32e5fe00b78/README.md#localization => textLabels prop
https://datatables.net/manual/i18n => language object option key
https://vuetifyjs.com/en/customization/internationalization

@soltanloo Alright, I have pushed the approach a bit further. I would love to get feedback on this. At first, I thought that a messages like object prop would be more interesting. However, at this point, we have a few components that would take advantage of this prop. I think that we can save it for later, for more text translation demanding components, maybe the data table.
I have introduced a new page in the documentation, that covers globalization. right-to-left is one part of it (maybe they should be merged?).
The quality of the translations I have done is not great. It would be awesome if native speakers can double-check them. (de-DE @eps1lon?, fr-FR @oliviertassinari, zh-CN @DDDDDanica?, ru-RU @dmtrKovalenko?, pt-BR @jaironalves?, es-ES @tkanzakic? ja-JP @yamuun?) 😄
cc @mui-org/core-contributors.

@jaironalves and the other translator, what do you think of contributing the better translations once this effort moves forward? I understand that the current crowding translation mechanism doesn't account for any contribution stats on your GitHub profile, at least, this would be a way to get you guys some credit?

@oliviertassinari Yes, a commit is a credit, given the size of this project. However, Crowdin is a good tool, I contribute whenever possible. I can make contributions without attaching myself to a pull request. Thus, I believe that the evolution of the source code is continuous, and internationalization comes incrementally according to the need of the community.

@oliviertassinari I appreciate your effort on this.
Can I go on and add fa-IR to the languages in this PR?

@soltanloo Sure, we will probably want to support as many locales as possible. I hope that the current locales/index.js format can support 100 of them. Otherwise, we will want to break it down into individual files.

I have asked CrowdIn if we can have a separate project to support the localisation of these strings to more languages than we support for the docs site. It would need a separate file per translation.

@mbrookes Thanks. Should we challenge the tradeoff of using Crowdin for this case? I see a couple of differences:

We will support more locales (50?).
The content will change much less frequently.
It's important for a contributor to easily add new locales.
Can we easily involve proofreaders? (maybe we could leverage GitHub code ownership so that they get notified when somebody suggests a change)

We will support more locales (50?).

+1 for CrowdIn

The content will change much less frequently.

So we might actually reach some stability compared to the docs site.

It's important for a new contributor to be able to easily add new locale.

With Crowdin we would have the locale files for all the enabled locales, whether translated or not, so it would be easy for a new contributor to translate the strings without having to open a pull request. since it's a small number of strings, it might be practical to pay for translations.

Can we easily involve proofreaders?

We can set up the workflow to prevent a PR for the translation being opened until it is proofed, however the Crowdin notification settings don't seem to allow for notifying proofreaders of new translations.

@mbrookes Thanks for the report on these points. Having read it, I don't have a specific preference. I guess we can explore both. Regarding the current file format, Crowdin would require one file per locale, right? Should we update the pull request?

Should we update the pull request?

Let's wait to see if they agree to let us have a second free project for the same repo.

Okay, we have a second Crowdin project if we want it. Yes, it would need separate files per translation:
https://github.com/mui-org/material-ui/pull/18219#issuecomment-553459849

Looking into this further, we would need a Crowdin to support custom file format due to the inline functions. I've asked, but we don't need to wait to go ahead with this PR.

@soltanloo Thank you for spending time with us on this problem

@oliviertassinari That is great. Thank you for that. This will make the internationalization a lot easier.
Is it possible to append a list of all components, which are affected by the change of the language, to the docs?

@Domino987 :). What would be the objective of such a list?

Because I already localize all my components currently and with these changes, I can remove my local localisation on the components, which already are localized now with the theme. For example the empty option of the select/autocomplete. I added that manually but I could remove that with the localisation. But I do not know, which components are affected.

@Domino987 I think that developers can expect all the components to be localized. You should be able to remove all your custom props.

I don't really understand the orientation chosen for i18n...
It seems really weird to attach it to theme... It's really two different things...
And with the power of packagers (ex: WebPack) it's too bad to include all your translations in a single file (and not loading them on the fly).
Just my 2 cents...
PS: I've just read my comment and it's prehaps irrevelevant because I speak about internationalization and not localization... (by the way, is it so different ?)

@dabretin Thanks for the feedback.

Is it possible to import only a specific locale instead of importing the entire locale.js file? We only need a handful of them yet we're importing all of it.
I'll open an issue if this is not yet possible.

@Floriferous What's your concern? The unused locales are tree shaken in production.


Build app failed in ios simulator

Steps to Reproduce

install env through flutter docoment: https://flutter.io/get-started
init project in android studio
choose iphone 8 simulator and click run,

Logs

after I click run in android studio ,the terminal display:
Launching lib/main.dart on iPhone 8 in debug mode...
Starting Xcode build...
Xcode build done.
Finished with error: Exit code 164 from: /usr/bin/xcrun simctl install 1CC993BD-B441-453B-8141-47CA21933443 /Users/AlphaDu/project/flutter_first/flutter_first/build/ios/iphonesimulator/Runner.app:
An error was encountered processing the command (domain=com.apple.CoreSimulator.SimError, code=164):
Unable to lookup in current state: Shutdown

flutter doctor:
➜  ~ flutter doctor
Doctor summary (to see all details, run flutter doctor -v):
[✓] Flutter (Channel beta, v0.6.0, on Mac OS X 10.13.6 17G65, locale zh-Hans-CN)
[!] Android toolchain - develop for Android devices (Android SDK 23.0.3)
   ! Some Android licenses not accepted.  To resolve this, run: flutter doctor --android-licenses
[✓] iOS toolchain - develop for iOS devices (Xcode 9.4.1)
[✓] Android Studio (version 3.1)
[!] IntelliJ IDEA Ultimate Edition (version 2018.2.2)
   ✗ Flutter plugin not installed; this adds Flutter specific functionality.
   ✗ Dart plugin not installed; this adds Dart specific functionality.
[✓] Connected devices (1 available)

Have you tried restarting the Emulator?
Perhaps the Emulator was not yet ready?

yes, it's worked after I restarted~ thank you

Thank you very much.
Now my project can run directly using Xcode.
But when I used VSCode for Start Deubgging, the following mistakes occurred:
`Launching lib/main.dart on 24h的 iPhone in debug mode...
Automatically signing iOS for device deployment using specified development team in Xcode project: 9UJ7X87G9E
Xcode build done.                                           28.9s
Failed to build iOS app
Error output from Xcode build:
↳
2019-02-17 21:56:36.159 xcodebuild[67240:28904833]  DTDeviceKit: deviceType from 7469ddc486b3c185bce4fa2aa4dfddc0282c4811 was NULL
** BUILD FAILED **
Xcode's output:
↳
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/flutter_sound-1.3.1/ios/Classes/FlutterSoundPlugin.m:202:3: warning: 'AudioSessionSetProperty' is deprecated: first deprecated in iOS 7.0 - no longer supported [-Wdeprecated-declarations]
AudioSessionSetProperty(kAudioSessionProperty_OverrideCategoryDefaultToSpeaker, sizeof(doChangeDefaultRoute), &doChangeDefaultRoute);
^
In module 'Flutter' imported from /Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/flutter_sound-1.3.1/ios/Classes/FlutterSoundPlugin.h:1:
In module 'CoreMedia' imported from /Users/zhangzhengyu/Documents/HKFamily_Flutter/flutterHK/hongka_flutter/ios/Pods/../.symlinks/flutter/ios/Flutter.framework/Headers/FlutterTexture.h:8:
In module 'AudioToolbox' imported from /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS12.1.sdk/System/Library/Frameworks/CoreMedia.framework/Headers/CMFormatDescription.h:27:
/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS12.1.sdk/System/Library/Frameworks/AudioToolbox.framework/Headers/AudioSession.h:748:2: note: 'AudioSessionSetProperty' has been explicitly marked deprecated here
AudioSessionSetProperty(            AudioSessionPropertyID              inID,
^
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/flutter_sound-1.3.1/ios/Classes/FlutterSoundPlugin.m:209:30: warning: sending 'FlutterSoundPlugin const __strong' to parameter of incompatible type 'id _Nullable'
[audioRecorder setDelegate:self];
^~~~
In module 'AVFoundation' imported from /Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/flutter_sound-1.3.1/ios/Classes/FlutterSoundPlugin.h:2:
/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS12.1.sdk/System/Library/Frameworks/AVFoundation.framework/Frameworks/AVFAudio.framework/Headers/AVAudioRecorder.h:64:57: note: passing argument to parameter 'delegate' here
@property(assign, nullable) id delegate;
^
2 warnings generated.
In file included from /Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/handler/FluwxAuthHandler.m:5:
In file included from /Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/public/FluwxAuthHandler.h:8:
In file included from /Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/public/WXApi.h:10:
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/public/WXApiObject.h:406:14: warning: empty paragraph passed to '@attention' command [-Wdocumentation]
* @attention
^
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/public/WXApiObject.h:411:14: warning: empty paragraph passed to '@attention' command [-Wdocumentation]
* @attention
^
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/public/WXApiObject.h:429:14: warning: empty paragraph passed to '@attention' command [-Wdocumentation]
* @attention
^
In file included from /Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/handler/FluwxAuthHandler.m:5:
In file included from /Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/public/FluwxAuthHandler.h:8:
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/public/WXApi.h:36:56: warning: empty paragraph passed to '@param' command [-Wdocumentation]
* @param resp具体的回应内容，是自动释放的
~^~
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/public/WXApi.h:36:11: warning: parameter 'resp具体的回应内容，是自动释放的' not found in the function declaration [-Wdocumentation]
* @param resp具体的回应内容，是自动释放的
^~
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/public/WXApi.h:36:11: note: did you mean 'resp'?
* @param resp具体的回应内容，是自动释放的
^~
resp
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/public/WXApi.h:64:11: warning: parameter 'typeFlag' not found in the function declaration [-Wdocumentation]
* @param typeFlag 应用支持打开的文件类型
^~
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/public/WXApi.h:190:11: warning: empty paragraph passed to '@param' command [-Wdocumentation]
*  @param
^
7 warnings generated.
In file included from /Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/handler/FluwxLaunchMiniProgramHandler.m:1:
In file included from /Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/public/FluwxLaunchMiniProgramHandler.h:4:
In file included from /Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/public/WXApi.h:10:
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/public/WXApiObject.h:406:14: warning: empty paragraph passed to '@attention' command [-Wdocumentation]
* @attention
^
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/public/WXApiObject.h:411:14: warning: empty paragraph passed to '@attention' command [-Wdocumentation]
* @attention
^
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/public/WXApiObject.h:429:14: warning: empty paragraph passed to '@attention' command [-Wdocumentation]
* @attention
^
In file included from /Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/handler/FluwxLaunchMiniProgramHandler.m:1:
In file included from /Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/public/FluwxLaunchMiniProgramHandler.h:4:
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/public/WXApi.h:36:56: warning: empty paragraph passed to '@param' command [-Wdocumentation]
* @param resp具体的回应内容，是自动释放的
~^~
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/public/WXApi.h:36:11: warning: parameter 'resp具体的回应内容，是自动释放的' not found in the function declaration [-Wdocumentation]
* @param resp具体的回应内容，是自动释放的
^~
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/public/WXApi.h:36:11: note: did you mean 'resp'?
* @param resp具体的回应内容，是自动释放的
^~
resp
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/public/WXApi.h:64:11: warning: parameter 'typeFlag' not found in the function declaration [-Wdocumentation]
* @param typeFlag 应用支持打开的文件类型
^~
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/public/WXApi.h:190:11: warning: empty paragraph passed to '@param' command [-Wdocumentation]
*  @param
^
7 warnings generated.
In file included from /Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/handler/FluwxPaymentHandler.m:5:
In file included from /Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/public/FluwxPaymentHandler.h:8:
In file included from /Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/public/WXApiRequestHandler.h:10:
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/public/WXApiObject.h:406:14: warning: empty paragraph passed to '@attention' command [-Wdocumentation]
* @attention
^
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/public/WXApiObject.h:411:14: warning: empty paragraph passed to '@attention' command [-Wdocumentation]
* @attention
^
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/public/WXApiObject.h:429:14: warning: empty paragraph passed to '@attention' command [-Wdocumentation]
* @attention
^
In file included from /Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/handler/FluwxPaymentHandler.m:5:
In file included from /Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/public/FluwxPaymentHandler.h:8:
In file included from /Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/public/WXApiRequestHandler.h:11:
In file included from /Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/public/FluwxResponseHandler.h:13:
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/public/WXApi.h:36:56: warning: empty paragraph passed to '@param' command [-Wdocumentation]
* @param resp具体的回应内容，是自动释放的
~^~
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/public/WXApi.h:36:11: warning: parameter 'resp具体的回应内容，是自动释放的' not found in the function declaration [-Wdocumentation]
* @param resp具体的回应内容，是自动释放的
^~
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/public/WXApi.h:36:11: note: did you mean 'resp'?
* @param resp具体的回应内容，是自动释放的
^~
resp
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/public/WXApi.h:64:11: warning: parameter 'typeFlag' not found in the function declaration [-Wdocumentation]
* @param typeFlag 应用支持打开的文件类型
^~
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/public/WXApi.h:190:11: warning: empty paragraph passed to '@param' command [-Wdocumentation]
*  @param
^
7 warnings generated.
In file included from /Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/FluwxPlugin.m:4:
In file included from /Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/public/FluwxAuthHandler.h:8:
In file included from /Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/public/WXApi.h:10:
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/public/WXApiObject.h:406:14: warning: empty paragraph passed to '@attention' command [-Wdocumentation]
* @attention
^
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/public/WXApiObject.h:411:14: warning: empty paragraph passed to '@attention' command [-Wdocumentation]
* @attention
^
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/public/WXApiObject.h:429:14: warning: empty paragraph passed to '@attention' command [-Wdocumentation]
* @attention
^
In file included from /Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/FluwxPlugin.m:4:
In file included from /Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/public/FluwxAuthHandler.h:8:
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/public/WXApi.h:36:56: warning: empty paragraph passed to '@param' command [-Wdocumentation]
* @param resp具体的回应内容，是自动释放的
~^~
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/public/WXApi.h:36:11: warning: parameter 'resp具体的回应内容，是自动释放的' not found in the function declaration [-Wdocumentation]
* @param resp具体的回应内容，是自动释放的
^~
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/public/WXApi.h:36:11: note: did you mean 'resp'?
* @param resp具体的回应内容，是自动释放的
^~
resp
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/public/WXApi.h:64:11: warning: parameter 'typeFlag' not found in the function declaration [-Wdocumentation]
* @param typeFlag 应用支持打开的文件类型
^~
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/public/WXApi.h:190:11: warning: empty paragraph passed to '@param' command [-Wdocumentation]
*  @param
^
7 warnings generated.
In file included from /Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/wechat/FluwxResponseHandler.m:9:
In file included from /Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/public/FluwxResponseHandler.h:12:
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/public/WXApiObject.h:406:14: warning: empty paragraph passed to '@attention' command [-Wdocumentation]
* @attention
^
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/public/WXApiObject.h:411:14: warning: empty paragraph passed to '@attention' command [-Wdocumentation]
* @attention
^
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/public/WXApiObject.h:429:14: warning: empty paragraph passed to '@attention' command [-Wdocumentation]
* @attention
^
In file included from /Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/wechat/FluwxResponseHandler.m:9:
In file included from /Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/public/FluwxResponseHandler.h:13:
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/public/WXApi.h:36:56: warning: empty paragraph passed to '@param' command [-Wdocumentation]
* @param resp具体的回应内容，是自动释放的
~^~
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/public/WXApi.h:36:11: warning: parameter 'resp具体的回应内容，是自动释放的' not found in the function declaration [-Wdocumentation]
* @param resp具体的回应内容，是自动释放的
^~
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/public/WXApi.h:36:11: note: did you mean 'resp'?
* @param resp具体的回应内容，是自动释放的
^~
resp
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/public/WXApi.h:64:11: warning: parameter 'typeFlag' not found in the function declaration [-Wdocumentation]
* @param typeFlag 应用支持打开的文件类型
^~
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/public/WXApi.h:190:11: warning: empty paragraph passed to '@param' command [-Wdocumentation]
*  @param
^
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/wechat/FluwxResponseHandler.m:59:40: warning: comparison between pointer and integer ('int' and 'void *')
type: messageResp.type == nil ? @2 : @(messageResp.type),
~~~~~~~~~~~~~~~~ ^  ~~~
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/wechat/FluwxResponseHandler.m:81:37: warning: comparison between pointer and integer ('int' and 'void *')
type: authResp.type == nil ? @1 : @(authResp.type),
~~~~~~~~~~~~~ ^  ~~~
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/wechat/FluwxResponseHandler.m:137:44: warning: comparison between pointer and integer ('int' and 'void *')
type: miniProgramResp.type == nil ? @1 : @(miniProgramResp.type),
~~~~~~~~~~~~~~~~~~~~ ^  ~~~
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/wechat/FluwxResponseHandler.m:166:44: warning: undeclared selector 'managerDidRecvPaymentResponse' [-Wundeclared-selector]
if ([_delegate respondsToSelector:@selector(managerDidRecvPaymentResponse)]) {
^
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/wechat/FluwxResponseHandler.m:177:36: warning: comparison between pointer and integer ('int' and 'void *')
type: payResp.type == nil ? @5 : @(payResp.type),
~~~~~~~~~~~~ ^  ~~~
12 warnings generated.
In file included from /Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/handler/FluwxShareHandler.m:6:
In file included from /Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/public/FluwxShareHandler.h:6:
In file included from /Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/public/WXApi.h:10:
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/public/WXApiObject.h:406:14: warning: empty paragraph passed to '@attention' command [-Wdocumentation]
* @attention
^
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/public/WXApiObject.h:411:14: warning: empty paragraph passed to '@attention' command [-Wdocumentation]
* @attention
^
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/public/WXApiObject.h:429:14: warning: empty paragraph passed to '@attention' command [-Wdocumentation]
* @attention
^
In file included from /Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/handler/FluwxShareHandler.m:6:
In file included from /Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/public/FluwxShareHandler.h:6:
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/public/WXApi.h:36:56: warning: empty paragraph passed to '@param' command [-Wdocumentation]
* @param resp具体的回应内容，是自动释放的
~^~
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/public/WXApi.h:36:11: warning: parameter 'resp具体的回应内容，是自动释放的' not found in the function declaration [-Wdocumentation]
* @param resp具体的回应内容，是自动释放的
^~
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/public/WXApi.h:36:11: note: did you mean 'resp'?
* @param resp具体的回应内容，是自动释放的
^~
resp
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/public/WXApi.h:64:11: warning: parameter 'typeFlag' not found in the function declaration [-Wdocumentation]
* @param typeFlag 应用支持打开的文件类型
^~
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/public/WXApi.h:190:11: warning: empty paragraph passed to '@param' command [-Wdocumentation]
*  @param
^
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/handler/FluwxShareHandler.m:428:66: warning: implicit conversion loses integer precision: 'NSInteger' (aka 'long') to 'int' [-Wshorten-64-to-32]
NSString *pathWithoutSchema = [originPath substringFromIndex:from toIndex:to];
~                              ^~
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/handler/FluwxShareHandler.m:428:79: warning: implicit conversion loses integer precision: 'NSInteger' (aka 'long') to 'int' [-Wshorten-64-to-32]
NSString *pathWithoutSchema = [originPath substringFromIndex:from toIndex:to];
~                                           ^~
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/handler/FluwxShareHandler.m:432:64: warning: implicit conversion loses integer precision: 'NSInteger' (aka 'long') to 'int' [-Wshorten-64-to-32]
path = [pathWithoutSchema substringFromIndex:0 toIndex:indexOfPackage];
~                                               ^~
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/handler/FluwxShareHandler.m:433:36: warning: implicit conversion loses integer precision: 'unsigned long' to 'int' [-Wshorten-64-to-32]
int begin = indexOfPackage + [fluwxKeyPackage length];
~~~~~   ~^~
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/handler/FluwxShareHandler.m:434:75: warning: implicit conversion loses integer precision: 'NSUInteger' (aka 'unsigned long') to 'int' [-Wshorten-64-to-32]
packageName = [pathWithoutSchema substringFromIndex:begin toIndex:[pathWithoutSchema length]];
~                                                   ^~~~~~~~~~~~~~
12 warnings generated.
In file included from /Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/handler/FluwxSubscribeMsgHandler.m:9:
In file included from /Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/public/WXApiRequestHandler.h:10:
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/public/WXApiObject.h:406:14: warning: empty paragraph passed to '@attention' command [-Wdocumentation]
* @attention
^
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/public/WXApiObject.h:411:14: warning: empty paragraph passed to '@attention' command [-Wdocumentation]
* @attention
^
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/public/WXApiObject.h:429:14: warning: empty paragraph passed to '@attention' command [-Wdocumentation]
* @attention
^
In file included from /Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/handler/FluwxSubscribeMsgHandler.m:9:
In file included from /Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/public/WXApiRequestHandler.h:11:
In file included from /Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/public/FluwxResponseHandler.h:13:
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/public/WXApi.h:36:56: warning: empty paragraph passed to '@param' command [-Wdocumentation]
* @param resp具体的回应内容，是自动释放的
~^~
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/public/WXApi.h:36:11: warning: parameter 'resp具体的回应内容，是自动释放的' not found in the function declaration [-Wdocumentation]
* @param resp具体的回应内容，是自动释放的
^~
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/public/WXApi.h:36:11: note: did you mean 'resp'?
* @param resp具体的回应内容，是自动释放的
^~
resp
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/public/WXApi.h:64:11: warning: parameter 'typeFlag' not found in the function declaration [-Wdocumentation]
* @param typeFlag 应用支持打开的文件类型
^~
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/public/WXApi.h:190:11: warning: empty paragraph passed to '@param' command [-Wdocumentation]
*  @param
^
7 warnings generated.
In file included from /Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/handler/FluwxWXApiHandler.m:10:
In file included from /Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/public/WXApi.h:10:
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/public/WXApiObject.h:406:14: warning: empty paragraph passed to '@attention' command [-Wdocumentation]
* @attention
^
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/public/WXApiObject.h:411:14: warning: empty paragraph passed to '@attention' command [-Wdocumentation]
* @attention
^
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/public/WXApiObject.h:429:14: warning: empty paragraph passed to '@attention' command [-Wdocumentation]
* @attention
^
In file included from /Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/handler/FluwxWXApiHandler.m:10:
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/public/WXApi.h:36:56: warning: empty paragraph passed to '@param' command [-Wdocumentation]
* @param resp具体的回应内容，是自动释放的
~^~
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/public/WXApi.h:36:11: warning: parameter 'resp具体的回应内容，是自动释放的' not found in the function declaration [-Wdocumentation]
* @param resp具体的回应内容，是自动释放的
^~
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/public/WXApi.h:36:11: note: did you mean 'resp'?
* @param resp具体的回应内容，是自动释放的
^~
resp
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/public/WXApi.h:64:11: warning: parameter 'typeFlag' not found in the function declaration [-Wdocumentation]
* @param typeFlag 应用支持打开的文件类型
^~
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/public/WXApi.h:190:11: warning: empty paragraph passed to '@param' command [-Wdocumentation]
*  @param
^
7 warnings generated.
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/handler/NSStringWrapper.m:62:15: warning: implicit conversion loses integer precision: 'NSUInteger' (aka 'unsigned long') to 'int' [-Wshorten-64-to-32]
int len = self.length;
~~~   ^
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/handler/NSStringWrapper.m:76:18: warning: implicit conversion loses integer precision: 'NSUInteger' (aka 'unsigned long') to 'int' [-Wshorten-64-to-32]
return range.location;
~~~~~~ ^~
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/handler/NSStringWrapper.m:85:18: warning: implicit conversion loses integer precision: 'NSUInteger' (aka 'unsigned long') to 'int' [-Wshorten-64-to-32]
return range.location;
~~~~~~ ^~
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/handler/NSStringWrapper.m:89:15: warning: implicit conversion loses integer precision: 'NSUInteger' (aka 'unsigned long') to 'int' [-Wshorten-64-to-32]
int len = self.length;
~~~   ^~~~~~~~~
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/handler/NSStringWrapper.m:99:15: warning: implicit conversion loses integer precision: 'NSUInteger' (aka 'unsigned long') to 'int' [-Wshorten-64-to-32]
int len = self.length;
~~~   ^~~~~~~~~~~
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/handler/NSStringWrapper.m:116:18: warning: implicit conversion loses integer precision: 'NSUInteger' (aka 'unsigned long') to 'int' [-Wshorten-64-to-32]
return range.location;
~~~~~~ ^~
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/handler/NSStringWrapper.m:125:18: warning: implicit conversion loses integer precision: 'NSUInteger' (aka 'unsigned long') to 'int' [-Wshorten-64-to-32]
return range.location;
~~~~~~ ^~
7 warnings generated.
In file included from /Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/wechat/SendMessageToWXReq+requestWithTextOrMediaMessage.m:9:
In file included from /Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/wechat/SendMessageToWXReq+requestWithTextOrMediaMessage.h:9:
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/public/WXApiObject.h:406:14: warning: empty paragraph passed to '@attention' command [-Wdocumentation]
* @attention
~~~~~~~~~~^
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/public/WXApiObject.h:411:14: warning: empty paragraph passed to '@attention' command [-Wdocumentation]
* @attention
~~~~~~~~~~^
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/public/WXApiObject.h:429:14: warning: empty paragraph passed to '@attention' command [-Wdocumentation]
* @attention
~~~~~~~~~~^
3 warnings generated.
In file included from /Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/helper/StringToWeChatScene.m:5:
In file included from /Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/helper/StringToWeChatScene.h:6:
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/public/WXApiObject.h:406:14: warning: empty paragraph passed to '@attention' command [-Wdocumentation]
* @attention
~~~~~~~~~~^
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/public/WXApiObject.h:411:14: warning: empty paragraph passed to '@attention' command [-Wdocumentation]
* @attention
~~~~~~^
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/public/WXApiObject.h:429:14: warning: empty paragraph passed to '@attention' command [-Wdocumentation]
* @attention
^
3 warnings generated.
In file included from /Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/wechat/WXApiRequestHandler.m:10:
In file included from /Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/public/WXApi.h:10:
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/public/WXApiObject.h:406:14: warning: empty paragraph passed to '@attention' command [-Wdocumentation]
* @attention
^
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/public/WXApiObject.h:411:14: warning: empty paragraph passed to '@attention' command [-Wdocumentation]
* @attention
^
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/public/WXApiObject.h:429:14: warning: empty paragraph passed to '@attention' command [-Wdocumentation]
* @attention
^
In file included from /Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/wechat/WXApiRequestHandler.m:10:
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/public/WXApi.h:36:56: warning: empty paragraph passed to '@param' command [-Wdocumentation]
* @param resp具体的回应内容，是自动释放的
~^~
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/public/WXApi.h:36:11: warning: parameter 'resp具体的回应内容，是自动释放的' not found in the function declaration [-Wdocumentation]
* @param resp具体的回应内容，是自动释放的
^~
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/public/WXApi.h:36:11: note: did you mean 'resp'?
* @param resp具体的回应内容，是自动释放的
^~
resp
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/public/WXApi.h:64:11: warning: parameter 'typeFlag' not found in the function declaration [-Wdocumentation]
* @param typeFlag 应用支持打开的文件类型
^~
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/public/WXApi.h:190:11: warning: empty paragraph passed to '@param' command [-Wdocumentation]
*  @param
^
7 warnings generated.
In file included from /Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/wechat/WXMediaMessage+messageConstruct.m:9:
In file included from /Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/wechat/WXMediaMessage+messageConstruct.h:9:
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/public/WXApiObject.h:406:14: warning: empty paragraph passed to '@attention' command [-Wdocumentation]
* @attention
^
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/public/WXApiObject.h:411:14: warning: empty paragraph passed to '@attention' command [-Wdocumentation]
* @attention
^
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/fluwx-0.5.6/ios/Classes/public/WXApiObject.h:429:14: warning: empty paragraph passed to '@attention' command [-Wdocumentation]
* @attention
^
3 warnings generated.
In file included from /Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/jpush_flutter-0.0.11/ios/Classes/JPushPlugin.m:6:
/Users/zhangzhengyu/Documents/HKFamily_Flutter/flutterHK/hongka_flutter/ios/Pods/Headers/Public/JPush/JPUSHService.h:166:11: warning: parameter 'advertisingIdentifier' not found in the function declaration [-Wdocumentation]
* @param advertisingIdentifier 广告标识符（IDFA） 如果不需要使用IDFA，传nil.
^
/Users/zhangzhengyu/Documents/HKFamily_Flutter/flutterHK/hongka_flutter/ios/Pods/Headers/Public/JPush/JPUSHService.h:636:34: warning: 'UNUserNotificationCenter' is only available on iOS 10.0 or newer [-Wunguarded-availability]
- (void)jpushNotificationCenter:(UNUserNotificationCenter *)center willPresentNotification:(UNNotification *)notification withCompletionHandler:(void (^)(NSInteger options))completionHandler;
^
In module 'UserNotifications' imported from /Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/jpush_flutter-0.0.11/ios/Classes/JPushPlugin.m:3:
/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS12.1.sdk/System/Library/Frameworks/UserNotifications.framework/Headers/UNUserNotificationCenter.h:37:12: note: 'UNUserNotificationCenter' has been explicitly marked partial here
@interface UNUserNotificationCenter : NSObject
^
In file included from /Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/jpush_flutter-0.0.11/ios/Classes/JPushPlugin.m:6:
/Users/zhangzhengyu/Documents/HKFamily_Flutter/flutterHK/hongka_flutter/ios/Pods/Headers/Public/JPush/JPUSHService.h:636:1: note: annotate 'jpushNotificationCenter:willPresentNotification:withCompletionHandler:' with an availability attribute to silence this warning
- (void)jpushNotificationCenter:(UNUserNotificationCenter *)center willPresentNotification:(UNNotification *)notification withCompletionHandler:(void (^)(NSInteger options))completionHandler;
^
API_AVAILABLE(ios(10.0))
/Users/zhangzhengyu/Documents/HKFamily_Flutter/flutterHK/hongka_flutter/ios/Pods/Headers/Public/JPush/JPUSHService.h:636:93: warning: 'UNNotification' is only available on iOS 10.0 or newer [-Wunguarded-availability]
- (void)jpushNotificationCenter:(UNUserNotificationCenter *)center willPresentNotification:(UNNotification *)notification withCompletionHandler:(void (^)(NSInteger options))completionHandler;
^
In module 'UserNotifications' imported from /Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/jpush_flutter-0.0.11/ios/Classes/JPushPlugin.m:3:
/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS12.1.sdk/System/Library/Frameworks/UserNotifications.framework/Headers/UNNotification.h:15:12: note: 'UNNotification' has been explicitly marked partial here
@interface UNNotification : NSObject <NSCopying, NSSecureCoding>
^
In file included from /Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/jpush_flutter-0.0.11/ios/Classes/JPushPlugin.m:6:
/Users/zhangzhengyu/Documents/HKFamily_Flutter/flutterHK/hongka_flutter/ios/Pods/Headers/Public/JPush/JPUSHService.h:636:1: note: annotate 'jpushNotificationCenter:willPresentNotification:withCompletionHandler:' with an availability attribute to silence this warning
- (void)jpushNotificationCenter:(UNUserNotificationCenter *)center willPresentNotification:(UNNotification *)notification withCompletionHandler:(void (^)(NSInteger options))completionHandler;
^
API_AVAILABLE(ios(10.0))
/Users/zhangzhengyu/Documents/HKFamily_Flutter/flutterHK/hongka_flutter/ios/Pods/Headers/Public/JPush/JPUSHService.h:643:164: warning: this block declaration is not a prototype [-Wstrict-prototypes]
- (void)jpushNotificationCenter:(UNUserNotificationCenter *)center didReceiveNotificationResponse:(UNNotificationResponse *)response withCompletionHandler:(void(^)())completionHandler;
^
void
/Users/zhangzhengyu/Documents/HKFamily_Flutter/flutterHK/hongka_flutter/ios/Pods/Headers/Public/JPush/JPUSHService.h:643:34: warning: 'UNUserNotificationCenter' is only available on iOS 10.0 or newer [-Wunguarded-availability]
- (void)jpushNotificationCenter:(UNUserNotificationCenter *)center didReceiveNotificationResponse:(UNNotificationResponse *)response withCompletionHandler:(void(^)())completionHandler;
^
In module 'UserNotifications' imported from /Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/jpush_flutter-0.0.11/ios/Classes/JPushPlugin.m:3:
/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS12.1.sdk/System/Library/Frameworks/UserNotifications.framework/Headers/UNUserNotificationCenter.h:37:12: note: 'UNUserNotificationCenter' has been explicitly marked partial here
@interface UNUserNotificationCenter : NSObject
^
In file included from /Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/jpush_flutter-0.0.11/ios/Classes/JPushPlugin.m:6:
/Users/zhangzhengyu/Documents/HKFamily_Flutter/flutterHK/hongka_flutter/ios/Pods/Headers/Public/JPush/JPUSHService.h:643:1: note: annotate 'jpushNotificationCenter:didReceiveNotificationResponse:withCompletionHandler:' with an availability attribute to silence this warning
- (void)jpushNotificationCenter:(UNUserNotificationCenter *)center didReceiveNotificationResponse:(UNNotificationResponse *)response withCompletionHandler:(void(^)())completionHandler;
^
API_AVAILABLE(ios(10.0))
/Users/zhangzhengyu/Documents/HKFamily_Flutter/flutterHK/hongka_flutter/ios/Pods/Headers/Public/JPush/JPUSHService.h:643:100: warning: 'UNNotificationResponse' is only available on iOS 10.0 or newer [-Wunguarded-availability]
- (void)jpushNotificationCenter:(UNUserNotificationCenter *)center didReceiveNotificationResponse:(UNNotificationResponse *)response withCompletionHandler:(void(^)())completionHandler;
^
In module 'UserNotifications' imported from /Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/jpush_flutter-0.0.11/ios/Classes/JPushPlugin.m:3:
/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS12.1.sdk/System/Library/Frameworks/UserNotifications.framework/Headers/UNNotificationResponse.h:18:12: note: 'UNNotificationResponse' has been explicitly marked partial here
@interface UNNotificationResponse : NSObject <NSCopying, NSSecureCoding>
^
In file included from /Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/jpush_flutter-0.0.11/ios/Classes/JPushPlugin.m:6:
/Users/zhangzhengyu/Documents/HKFamily_Flutter/flutterHK/hongka_flutter/ios/Pods/Headers/Public/JPush/JPUSHService.h:643:1: note: annotate 'jpushNotificationCenter:didReceiveNotificationResponse:withCompletionHandler:' with an availability attribute to silence this warning
- (void)jpushNotificationCenter:(UNUserNotificationCenter *)center didReceiveNotificationResponse:(UNNotificationResponse *)response withCompletionHandler:(void(^)())completionHandler;
^
API_AVAILABLE(ios(10.0))
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/jpush_flutter-0.0.11/ios/Classes/JPushPlugin.m:468:165: warning: this block declaration is not a prototype [-Wstrict-prototypes]
- (void)jpushNotificationCenter:(UNUserNotificationCenter *)center didReceiveNotificationResponse:(UNNotificationResponse *)response withCompletionHandler:(void (^)())completionHandler  API_AVAILABLE(ios(10.0)){
^
void
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/jpush_flutter-0.0.11/ios/Classes/JPushPlugin.m:360:15: warning: 'setTimeInterval:' is only available on iOS 10_0 or newer [-Wunguarded-availability]
trigger.timeInterval = interval;
^~
In file included from /Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/jpush_flutter-0.0.11/ios/Classes/JPushPlugin.m:6:
/Users/zhangzhengyu/Documents/HKFamily_Flutter/flutterHK/hongka_flutter/ios/Pods/Headers/Public/JPush/JPUSHService.h:125:46: note: 'setTimeInterval:' has been explicitly marked partial here
@property (nonatomic, assign) NSTimeInterval timeInterval NS_AVAILABLE_IOS(10_0);    // 用来设置触发推送的时间，iOS10以上有效，优先级为III
^
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/jpush_flutter-0.0.11/ios/Classes/JPushPlugin.m:360:15: note: enclose 'setTimeInterval:' in an @available check to silence this warning
trigger.timeInterval = interval;
^~
8 warnings generated.
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/photo_manager-0.1.10/ios/Classes/ImageScanner.m:44:13: warning: block implicitly retains 'self'; explicitly mention 'self' to indicate this is intended behavior [-Wimplicit-retain-self]
if (_idCollectionDict) {
^
self->
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/photo_manager-0.1.10/ios/Classes/ImageScanner.m:45:14: warning: block implicitly retains 'self'; explicitly mention 'self' to indicate this is intended behavior [-Wimplicit-retain-self]
[_idCollectionDict removeAllObjects];
^
self->
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/photo_manager-0.1.10/ios/Classes/ImageScanner.m:47:13: warning: block implicitly retains 'self'; explicitly mention 'self' to indicate this is intended behavior [-Wimplicit-retain-self]
_idCollectionDict = [NSMutableDictionary new];
^
self->
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/photo_manager-0.1.10/ios/Classes/ImageScanner.m:49:42: warning: block implicitly retains 'self'; explicitly mention 'self' to indicate this is intended behavior [-Wimplicit-retain-self]
for (PHCollection *collection in _galleryArray) {
^
self->
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/photo_manager-0.1.10/ios/Classes/ImageScanner.m:51:13: warning: block implicitly retains 'self'; explicitly mention 'self' to indicate this is intended behavior [-Wimplicit-retain-self]
_idCollectionDict[collection.localIdentifier] = collection;
^
self->
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/photo_manager-0.1.10/ios/Classes/ImageScanner.m:89:40: warning: block implicitly retains 'self'; explicitly mention 'self' to indicate this is intended behavior [-Wimplicit-retain-self]
PHCollection *collection = _idCollectionDict[id];
^
self->
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/photo_manager-0.1.10/ios/Classes/ImageScanner.m:98:14: warning: block implicitly retains 'self'; explicitly mention 'self' to indicate this is intended behavior [-Wimplicit-retain-self]
if (!_idAssetDict) {
^
self->
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/photo_manager-0.1.10/ios/Classes/ImageScanner.m:99:13: warning: block implicitly retains 'self'; explicitly mention 'self' to indicate this is intended behavior [-Wimplicit-retain-self]
_idAssetDict = [NSMutableDictionary new];
^
self->
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/photo_manager-0.1.10/ios/Classes/ImageScanner.m:103:36: warning: block implicitly retains 'self'; explicitly mention 'self' to indicate this is intended behavior [-Wimplicit-retain-self]
PHCollection *collection = _idCollectionDict[pathId];
^
self->
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/photo_manager-0.1.10/ios/Classes/ImageScanner.m:120:17: warning: block implicitly retains 'self'; explicitly mention 'self' to indicate this is intended behavior [-Wimplicit-retain-self]
_idAssetDict[id] = asset;
^
self->
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/photo_manager-0.1.10/ios/Classes/ImageScanner.m:131:13: warning: block implicitly retains 'self'; explicitly mention 'self' to indicate this is intended behavior [-Wimplicit-retain-self]
if (_idAssetDict) {
^
self->
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/photo_manager-0.1.10/ios/Classes/ImageScanner.m:132:14: warning: block implicitly retains 'self'; explicitly mention 'self' to indicate this is intended behavior [-Wimplicit-retain-self]
[_idAssetDict removeAllObjects];
^
self->
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/photo_manager-0.1.10/ios/Classes/ImageScanner.m:134:13: warning: block implicitly retains 'self'; explicitly mention 'self' to indicate this is intended behavior [-Wimplicit-retain-self]
_idAssetDict = [NSMutableDictionary new];
^
self->
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/photo_manager-0.1.10/ios/Classes/ImageScanner.m:147:17: warning: block implicitly retains 'self'; explicitly mention 'self' to indicate this is intended behavior [-Wimplicit-retain-self]
_idAssetDict[id] = asset;
^
self->
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/photo_manager-0.1.10/ios/Classes/ImageScanner.m:164:26: warning: block implicitly retains 'self'; explicitly mention 'self' to indicate this is intended behavior [-Wimplicit-retain-self]
PHAsset *asset = _idAssetDict[imgId];
^
self->
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/photo_manager-0.1.10/ios/Classes/ImageScanner.m:209:30: warning: unused variable 'wSelf' [-Wunused-variable]
__weak ImageScanner *wSelf = self;
^
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/photo_manager-0.1.10/ios/Classes/ImageScanner.m:246:35: warning: 'createDirectoryAtPath:attributes:' is deprecated: first deprecated in iOS 2.0 - Use -createDirectoryAtPath:withIntermediateDirectories:attributes:error: instead [-Wdeprecated-declarations]
BOOL createSuccess = [manager createDirectoryAtPath:dir attributes:nil];
^
In module 'Foundation' imported from /Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/photo_manager-0.1.10/ios/Classes/ImageScanner.h:5:
/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS12.1.sdk/System/Library/Frameworks/Foundation.framework/Headers/NSFileManager.h:217:1: note: 'createDirectoryAtPath:attributes:' has been explicitly marked deprecated here
- (BOOL)createDirectoryAtPath:(NSString *)path attributes:(NSDictionary *)attributes API_DEPRECATED("Use -createDirectoryAtPath:withIntermediateDirectories:attributes:error: instead", macos(10.0,10.5), ios(2.0,2.0), watchos(2.0,2.0), tvos(9.0,9.0));
^
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/photo_manager-0.1.10/ios/Classes/ImageScanner.m:246:10: warning: unused variable 'createSuccess' [-Wunused-variable]
BOOL createSuccess = [manager createDirectoryAtPath:dir attributes:nil];
^
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/photo_manager-0.1.10/ios/Classes/ImageScanner.m:256:10: warning: unused variable 'createFileResult' [-Wunused-variable]
BOOL createFileResult = [manager createFileAtPath:filePath contents:imageData attributes:nil];
^
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/photo_manager-0.1.10/ios/Classes/ImageScanner.m:246:35: warning: null passed to a callee that requires a non-null argument [-Wnonnull]
BOOL createSuccess = [manager createDirectoryAtPath:dir attributes:nil];
^                                    ~~~
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/photo_manager-0.1.10/ios/Classes/ImageScanner.m:317:18: warning: 'createDirectoryAtPath:attributes:' is deprecated: first deprecated in iOS 2.0 - Use -createDirectoryAtPath:withIntermediateDirectories:attributes:error: instead [-Wdeprecated-declarations]
[manager createDirectoryAtPath:dirPath attributes:@{}];
^
In module 'Foundation' imported from /Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/photo_manager-0.1.10/ios/Classes/ImageScanner.h:5:
/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS12.1.sdk/System/Library/Frameworks/Foundation.framework/Headers/NSFileManager.h:217:1: note: 'createDirectoryAtPath:attributes:' has been explicitly marked deprecated here
- (BOOL)createDirectoryAtPath:(NSString *)path attributes:(NSDictionary *)attributes API_DEPRECATED("Use -createDirectoryAtPath:withIntermediateDirectories:attributes:error: instead", macos(10.0,10.5), ios(2.0,2.0), watchos(2.0,2.0), tvos(9.0,9.0));
^
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/photo_manager-0.1.10/ios/Classes/ImageScanner.m:371:35: warning: 'createDirectoryAtPath:attributes:' is deprecated: first deprecated in iOS 2.0 - Use -createDirectoryAtPath:withIntermediateDirectories:attributes:error: instead [-Wdeprecated-declarations]
BOOL createSuccess = [manager createDirectoryAtPath:path attributes:@{}];
^
In module 'Foundation' imported from /Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/photo_manager-0.1.10/ios/Classes/ImageScanner.h:5:
/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS12.1.sdk/System/Library/Frameworks/Foundation.framework/Headers/NSFileManager.h:217:1: note: 'createDirectoryAtPath:attributes:' has been explicitly marked deprecated here
- (BOOL)createDirectoryAtPath:(NSString *)path attributes:(NSDictionary *)attributes API_DEPRECATED("Use -createDirectoryAtPath:withIntermediateDirectories:attributes:error: instead", macos(10.0,10.5), ios(2.0,2.0), watchos(2.0,2.0), tvos(9.0,9.0));
^
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/photo_manager-0.1.10/ios/Classes/ImageScanner.m:371:10: warning: unused variable 'createSuccess' [-Wunused-variable]
BOOL createSuccess = [manager createDirectoryAtPath:path attributes:@{}];
^
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/photo_manager-0.1.10/ios/Classes/ImageScanner.m:464:11: warning: initializing 'Byte *' (aka 'unsigned char *') with an expression of type 'const void *' discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers]
Byte *bytes = data.bytes;
^       ~~~~~~~~~~
24 warnings generated.
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/url_launcher-3.0.3/ios/Classes/UrlLauncherPlugin.m:27:31: warning: 'SFSafariViewController' is only available on iOS 9.0 or newer [-Wunguarded-availability]
- (void)safariViewController:(SFSafariViewController *)controller
^
In module 'SafariServices' imported from /Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/url_launcher-3.0.3/ios/Classes/UrlLauncherPlugin.m:5:
/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS12.1.sdk/System/Library/Frameworks/SafariServices.framework/Headers/SFSafariViewController.h:27:12: note: 'SFSafariViewController' has been explicitly marked partial here
@interface SFSafariViewController : UIViewController
^
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/url_launcher-3.0.3/ios/Classes/UrlLauncherPlugin.m:27:1: note: annotate 'safariViewController:didCompleteInitialLoad:' with an availability attribute to silence this warning
- (void)safariViewController:(SFSafariViewController *)controller
^
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/url_launcher-3.0.3/ios/Classes/UrlLauncherPlugin.m:43:40: warning: 'SFSafariViewController' is only available on iOS 9.0 or newer [-Wunguarded-availability]
- (void)safariViewControllerDidFinish:(SFSafariViewController *)controller {
^
In module 'SafariServices' imported from /Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/url_launcher-3.0.3/ios/Classes/UrlLauncherPlugin.m:5:
/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS12.1.sdk/System/Library/Frameworks/SafariServices.framework/Headers/SFSafariViewController.h:27:12: note: 'SFSafariViewController' has been explicitly marked partial here
@interface SFSafariViewController : UIViewController
^
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/url_launcher-3.0.3/ios/Classes/UrlLauncherPlugin.m:43:1: note: annotate 'safariViewControllerDidFinish:' with an availability attribute to silence this warning
- (void)safariViewControllerDidFinish:(SFSafariViewController *)controller {
^
API_AVAILABLE(ios(9.0))
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/url_launcher-3.0.3/ios/Classes/UrlLauncherPlugin.m:29:31: warning: comparison between pointer and integer ('NSInteger' (aka 'long') and 'void *')
if (_previousStatusBarStyle != nil) {
~~~~~~~~~~~~~~~~~~~~~~~ ^  ~~~
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/url_launcher-3.0.3/ios/Classes/UrlLauncherPlugin.m:111:45: warning: comparison between pointer and integer ('NSInteger' (aka 'long') and 'void *')
if (self->_previousStatusBarStyle != nil) {
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^  ~~~
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/url_launcher-3.0.3/ios/Classes/UrlLauncherPlugin.m:108:18: warning: 'openURL:options:completionHandler:' is only available on iOS 10.0 or newer [-Wunguarded-availability]
[application openURL:url
^
In module 'UIKit' imported from /Users/zhangzhengyu/Documents/HKFamily_Flutter/flutterHK/hongka_flutter/ios/Pods/Target Support Files/url_launcher/url_launcher-prefix.pch:2:
/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS12.1.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIApplication.h:135:1: note: 'openURL:options:completionHandler:' has been explicitly marked partial here
- (void)openURL:(NSURL)url options:(NSDictionary<UIApplicationOpenExternalURLOptionsKey, id> *)options completionHandler:(void (^ __nullable)(BOOL success))completion NS_AVAILABLE_IOS(10_0) NS_EXTENSION_UNAVAILABLE_IOS("");
^
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/url_launcher-3.0.3/ios/Classes/UrlLauncherPlugin.m:108:18: note: enclose 'openURL:options:completionHandler:' in an @available check to silence this warning
[application openURL:url
^~~~~~~~~~~
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/url_launcher-3.0.3/ios/Classes/UrlLauncherPlugin.m:140:3: warning: 'SFSafariViewController' is only available on iOS 9.0 or newer [-Wunguarded-availability]
SFSafariViewController *safari = [[SFSafariViewController alloc] initWithURL:url];
^~~~~~~~~~~~~~~~~~~~~~
In module 'SafariServices' imported from /Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/url_launcher-3.0.3/ios/Classes/UrlLauncherPlugin.m:5:
/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS12.1.sdk/System/Library/Frameworks/SafariServices.framework/Headers/SFSafariViewController.h:27:12: note: 'SFSafariViewController' has been explicitly marked partial here
@interface SFSafariViewController : UIViewController
^
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/url_launcher-3.0.3/ios/Classes/UrlLauncherPlugin.m:140:3: note: enclose 'SFSafariViewController' in an @available check to silence this warning
SFSafariViewController *safari = [[SFSafariViewController alloc] initWithURL:url];
^~~~~~~~~~~~~~~~~~~~~~
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/url_launcher-3.0.3/ios/Classes/UrlLauncherPlugin.m:140:38: warning: 'SFSafariViewController' is only available on iOS 9.0 or newer [-Wunguarded-availability]
SFSafariViewController *safari = [[SFSafariViewController alloc] initWithURL:url];
^~~~~~~~~~~~~~~~~~~~~~
In module 'SafariServices' imported from /Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/url_launcher-3.0.3/ios/Classes/UrlLauncherPlugin.m:5:
/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS12.1.sdk/System/Library/Frameworks/SafariServices.framework/Headers/SFSafariViewController.h:27:12: note: 'SFSafariViewController' has been explicitly marked partial here
@interface SFSafariViewController : UIViewController
^
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/url_launcher-3.0.3/ios/Classes/UrlLauncherPlugin.m:140:38: note: enclose 'SFSafariViewController' in an @available check to silence this warning
SFSafariViewController *safari = [[SFSafariViewController alloc] initWithURL:url];
^~~~~~~~~~~~~~~~~~~~~~
7 warnings generated.
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/video_player-0.8.0/ios/Classes/VideoPlayerPlugin.m:93:55: warning: block implicitly retains 'self'; explicitly mention 'self' to indicate this is intended behavior [-Wimplicit-retain-self]
if (_isLooping) {
^
self->
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/video_player-0.8.0/ios/Classes/VideoPlayerPlugin.m:97:57: warning: block implicitly retains 'self'; explicitly mention 'self' to indicate this is intended behavior [-Wimplicit-retain-self]
if (_eventSink) {
^
self->
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/video_player-0.8.0/ios/Classes/VideoPlayerPlugin.m:98:55: warning: block implicitly retains 'self'; explicitly mention 'self' to indicate this is intended behavior [-Wimplicit-retain-self]
_eventSink(@{@"event" : @"completed"});
^
self->
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/video_player-0.8.0/ios/Classes/VideoPlayerPlugin.m:115:15: warning: block implicitly retains 'self'; explicitly mention 'self' to indicate this is intended behavior [-Wimplicit-retain-self]
if (_disposed) return;
^
self->
/Users/zhangzhengyu/.pub-cache/hosted/pub.dartlang.org/video_player-0.8.0/ios/Classes/VideoPlayerPlugin.m:119:16: warning: block implicitly retains 'self'; explicitly mention 'self' to indicate this is intended behavior [-Wimplicit-retain-self]
[_player replaceCurrentItemWithPlayerItem:item];
^
self->
5 warnings generated.
=== BUILD TARGET Runner OF PROJECT Runner WITH CONFIGURATION Debug ===
/Users/zhangzhengyu/Documents/HKFamily_Flutter/flutterHK/hongka_flutter/build/ios/Debug-iphoneos/Runner.app: resource fork, Finder information, or similar detritus not allowed
Command /usr/bin/codesign failed with exit code 1
Could not build the precompiled application for the device.
Error launching application on 24h的 iPhone.
Exited (sigterm)
`

resource fork, Finder information, or similar detritus not allowed

Also filed a issue at: https://github.com/flutter/flutter/issues/28077

This fixed my issue - https://developer.apple.com/library/archive/qa/qa1940/_index.html


Update uuid to version 3.0.0

Version 3.0.0 of uuid just got published.
Hi there,
This week a new version of the uuid module got released. The old module which was available by the name node-uuid got deprecated and will show error message upon every install of the module.
To get rid of those install errors I've created this automated pull request. I've run some checks against your code base to test whether you're using one of the deprecated apis, but this isn't the case.
Please test the changes against your code. I didn't run any tests and therefore can't guarantee that it isn't breaking. You can also just close this pr if you don't want to update your module.
In case there's already another pr open to upgrade uuid, I'm sorry for the effort I'm causing.

@marcbachmann mind if I force-push to the branch this was sent from? Your change didn't remove the old node-uuid dependency from package.json and we don't use that style of commit message. (Or you can do it yourself, but I know this was automated, so...)

Sure, I gave you premission to do that.
I'm sorry, the regex I've used to remove node-uuid somehow didn't work in all cases.

@marcbachmann thanks, will merge this as soon as our test suite passes :)


Document differences between OCIO and Nuke's Vectorfield

As mentioned in #103

Also the Vectorfield causes a brightness change even with a noop LUT (almost certainly a bug, as the difference goes away if you enable GPU acceleration in the viewer..) - I thought this only happened with CSP files (which I reported a while ago), but seems to happen with .vf also
I guess these differences could cause confusion for people migrating to OCIO, but I don't think anything can be done to help (except mentioning these differences in the docs)

Would be nice to document this behaviour in the docs, perhaps along with a transform that could be added after a FileTransform to match the difference (since consistency is often more desirable than technical correctness)

Done in 2ac188ef2e2a69c7d4200e6a83a40289d477a2f2 \o/


Fix security issue from Quay report

Fix the following security issue:
https://quay.io/repository/janus-idp/backstage-showcase/manifest/sha256:692660768d9158f4f4a55da7da6aa6ec6eb69906b503a32d580cbcd7230150ff?tab=vulnerabilities&fixable=true

We cannot fix the issue directly. We have to wait until RH updates the base image.


Improve HF integration

Hi @weihaox,
Niels here from the open-source team at Hugging Face. I discovered your work through ECCV, I indexed your paper here: https://huggingface.co/papers/2404.07202 (feel free to claim authorship with your HF account). I work together with AK on improving the visibility of researchers' work on the hub.
I see you already pushed the models to the 🤗 hub which is great. I've got a couple of suggestions on improving the HF integration:

currently, the model is added to a dataset repo, with all checkpoints in a single repo. We encourage people to push checkpoints to separate model repos, so that things like model cards work. e.g. the llama model could be done repo, which will then automatically work using the from_pretrained method (if all files are at the root of the repo), the other decoder can be in a separate repo, etc. For custom PyTorch models, we recommend the PyTorchModelHubMixin class as explained here: https://huggingface.co/docs/hub/models-uploading#upload-a-pytorch-model-using-huggingfacehub.
I see there's https://huggingface.co/datasets/weihaox/umbrae but there's no model card, would be great to link to the Github repository, adding a "Usage" example. We can then also add tags to the model repos.
would be great to link the paper in the model card: https://huggingface.co/papers/2404.07202. Just including the link is enough.

Let me know if you need any help regarding this!
Cheers,
Niels
ML Engineer @ HF 🤗

Hi @NielsRogge, thank you for the great tips. I’ve created a model card: https://huggingface.co/weihaox/umbrae and added links to both the GitHub repository and the paper https://huggingface.co/papers/2404.07202. I’ll also work on adding a Space demo to further enhance accessibility and interaction.

Hi @weihaox thanks! It seems the model repo is still empty: https://huggingface.co/weihaox/umbrae/tree/main, I assume you're planning to push weights to it?

I may do this in the future. I'll look into how to upload the model weights to facilitate the Space demo, as you suggested, by pushing the checkpoints to separate model repositories.


setfacl error once webserver has written files to directories

capistrano/symfony has been working great to deploy my code. It's only now, once people have started uploading files to the website, that a problem has appeared.
This is using capistrano-symfony (1.0.0.rc1)
Files are deployed as myuser and PHP runs as www-data. At the end of a deployment, I now get the following error:
INFO [bdb5172c] Running /usr/bin/env setfacl -Rn -m u:www-data:rwX -m u:myuser:rwX /var/www/mysite.com/shared/var /var/www/mysite.com/shared/web/uploads as<EMAIL_ADDRESS>DEBUG [bdb5172c] Command: ( export SYMFONY_ENV="prod" ; /usr/bin/env setfacl -Rn -m u:www-data:rwX -m u:myuser:rwX /var/www/mysite.com/shared/var /var/www/mysite.com/shared/web/uploads )
DEBUG [bdb5172c]        setfacl: /var/www/mysite.com/shared/web/uploads/temp/56dd9248c5ac4.jpg: Operation not permitted
(Backtrace restricted to imported tasks)
cap aborted!
SSHKit::Runner::ExecuteError: Exception while executing as<EMAIL_ADDRESS>Exception while executing as<EMAIL_ADDRESS>setfacl exit status: 1
setfacl stdout: Nothing written
setfacl stderr: setfacl: /var/www/mysite.com/shared/web/uploads/temp/56dd9248c5ac4.jpg: Operation not permitted

SSHKit::Runner::ExecuteError: Exception while executing as<EMAIL_ADDRESS>setfacl exit status: 1
setfacl stdout: Nothing written
setfacl stderr: setfacl: /var/www/mysite.com/shared/web/uploads/temp/56dd9248c5ac4.jpg: Operation not permitted

SSHKit::Command::Failed: setfacl exit status: 1
setfacl stdout: Nothing written
setfacl stderr: setfacl: /var/www/mysite.com/shared/web/uploads/temp/56dd9248c5ac4.jpg: Operation not permitted

Tasks: TOP => symfony:set_permissions
(See full trace by running task with --trace)
The deploy has failed with an error: Exception while executing as<EMAIL_ADDRESS>Exception while executing as<EMAIL_ADDRESS>setfacl exit status: 1
setfacl stdout: Nothing written
setfacl stderr: setfacl: /var/www/mysite.com/shared/web/uploads/temp/56dd9248c5ac4.jpg: Operation not permitted

All folders are owned as myuser, and files in uploads/temp are owned by www-data. In my deploy.rb I have:
set :permission_method, :acl
set :file_permissions_users, ["www-data"]
set :file_permissions_paths, ["var", "web/uploads"]

set :linked_files, ["app/config/parameters.yml"]
set :linked_dirs, ["var", "web/uploads"]

getfacl on the uploads directory and the uploads/temp directory gives:
$ getfacl uploads
# file: .
# owner: myuser
# group: myuser
user::rwx
user:www-data:rwx
user:myuser:rwx
group::rwx
mask::rwx
other::r-x
default:user::rwx
default:user:www-data:rwx
default:user:myuser:rwx
default:group::rwx
default:mask::rwx
default:other::r-x

And on one of the uploaded images:
$ getfacl 56dd83459edf0_thumb.jpg
# file: 56dd83459edf0_thumb.jpg
# owner: www-data
# group: www-data
user::rw-
user:www-data:rwx               #effective:rw-
user:myuser:rwx      			#effective:rw-
group::rwx                      #effective:rw-
mask::rw-
other::r--

What have I misunderstood and misconfigured?

I deleted everything, re-deployed, and it worked.


Comparison to Parameter Store?

credstash was created prior to AWS's Parameter Store. A number of blog posts have come out since Parameter Store was released indicating it is a preferred way of managing secrets on AWS, such as this recent post: https://aws.amazon.com/blogs/mt/the-right-way-to-store-secrets-using-parameter-store/
If someone were starting a new project today, would you recommend credstash or Parameter Store?  One benefit of credstash is an ability to backup the secrets.  Any other considerations?

Not adding an opinion, but it's important to consider the AWS service limits [1] and see if it's fit for purpose.
Key limits affecting parameter store are:

10,000 parameters per account
4096 chars max per parameter
100 past values

So there's no official rate-limit on requests per second, compared to DynamoDB provisioned reads.
However, the 4096char parameter size (not sure if that's pre or post encryption) could be a pain if storing certificate chains or whole configuration files.
[1] AWS Service Limits for Systems Manager

I imagine an answer here in an issue probably isn't the best location, but if somebody familiar with both of these could add a section about this to the README, that would be great (assuming there is a reason to use this over Parameter Store, such as the limits Nathan mentions).

To Nathan's comment, the 4096 limit also applies to credstash. I'm pretty sure Parameter Store uses KMS under the hood, which is where that limit comes from.

http://docs.aws.amazon.com/systems-manager/latest/APIReference/API_Parameter.html#EC2-Type-Parameter-Value
http://docs.aws.amazon.com/kms/latest/APIReference/API_Encrypt.html#API_Encrypt

Additionally, the default limits can be increased for the parameters per account and the maximum history.

@artburkart Incorrect. Credstash uses GenerateDataKey [1], not Encrypt.
The only limitation on size would be imposed by DynamoDB, which is ~400kb [2] (post encryption, minus overheads)
[1] http://docs.aws.amazon.com/kms/latest/APIReference/API_GenerateDataKey.html
[2] http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Limits.html#limits-items

@nathan-muir - Oh huh, I feel like I should've realized this since I've definitely stored items slightly longer than 4096 bytes.

Probably not a deal breaker for most enterprise projects, but the cost of secrets manager seems pretty high in comparison to parameter store (pretty sure that's free, except maybe storage).  And of course credstash is also free except dynamo db charges and kms cmk charges.  It all depends on the kind and number of secrets you are storing.
If you end up storing 1000 secrets for some reason, secrets manager would be $400/month not including api calls.  Now, I don't know what features, be it security, usability, or automation, secrets manager brings to the table vs parameter store, so maybe for the use cases that warrant it, it makes sense.  But for myself, I feel like if I have a LOT of secrets, I have to look at one of the "freeish" solutions due to the high cost of secrets manager.   And yet if I have just a little amount of secrets, I have to look at the freeish solutions anyways because why pay tens of dollars a month on tens of secrets I can easily manage with parameter store or credstash?
If anyone is an expert in these aws secret sharing systems like to chime in that'd be cool.


The plugin from the "add asterisk plugin" guide doesn't work for dynamic validation

Reproduction
https://formkit.link/465701012fc89ec73d7183f0c6a06330
Describe the bug
The example plugin guide for "automatically adding asterisk" does not work when the validation on the inputs are dynamic. Looking at the plugin code, I see it wasn't necessarily built for this but I still believe the expected behaviour for this plugin should be dynamic so I'm opening a bug report for this.
Thank you! :)
Environment
• OS: All
• Browser: All

Does this work for you as a new example for it?: https://formkit.link/06a3e7555c3ca4f28adbc135e77d658f

Does this work for you as a new example for it?: https://formkit.link/06a3e7555c3ca4f28adbc135e77d658f

@GustavoFenilli
Yes! from the repro you sent, it seems to work very well, I'll add it to the project and see how it works there too. Thanks!

Great, changed at examples page: https://github.com/formkit/docs-content/pull/124 .

Great, changed at examples page: formkit/docs-content#124 .

@GustavoFenilli Hey man, I just realised that the version you linked to was causing some issues for autocomplete and group components for me so I made a small addition here: https://formkit.link/6db603c59d0a151139d06288cd3f218d
Does that look right? If so, I'll open a follow-up PR to yours :)

Looks like autocomplete might not have a memokey? that is why it gives a problem? or they might share? @justin-schroeder
This indeed should fix it:
node.props.definition.schemaMemoKey = `required_${isCheckboxAndRadioMultiple(node) ? 'multi_' : ""}${node.props.definition.schemaMemoKey || Math.random()}`

How to also add class to label, dependent on context.isRequired?

How to also add class to label, dependent on context.isRequired?

You can easily add that like so: https://formkit.link/0e49b9bf5187e28441571a16542242bb

@fenilli actually a cool thing we did in 1.4.0 is adding context.state.required — so this plugin could get even simpler now.

@fenilli this will replace classes completely. Is there a way to add to already existing classes?

@fenilli actually a cool thing we did in 1.4.0 is adding context.state.required — so this plugin could get even simpler now.

Oh that is awesome I will play around with it and make a new example with that.

@fenilli this will replace classes completely. Is there a way to add to already existing classes?

You can instead do this then: '$classes.label + " bg-red-500"'


JobCollection CreateAsync mode

Version: 2.2.3
Does not look like mode is being used in the CreateAsync method on line 172 in JobCollection.cs.  I did not see when I set the value to blocking and observed the request with Fiddler.

This SDK is deprecated and no longer under active development.


Issue 442

@homu r+

:pushpin: Commit 927d1da has been approved by kbknapp

:hourglass: Testing commit 927d1da with merge 3f26d2b...

:sunny: Test successful - status


Update analytics dashboard and change link on site

This PR updates the link to the new analytics dashboard. The dashboard is very similar to the old analytics dashboard.

page one: User over view page
page 2: top 50 pages by page views
page 3: top 50 search terms
page 4: top blogs

One thing to note is that there are still permission issues which @divya-mohan0209 calls out in https://github.com/kubernetes/website/issues/44292. I'm not sure the best way to make this more sustainable. There can only be one set of credentials to pull the data from GA4 into the dashboard, right now I have it set up to use mine.  @natalisucks @reylejano @divya-mohan0209 if you have any suggestions on who this should be, please let me know and I can update it.
fixes https://github.com/kubernetes/website/issues/43281

note to reviewers: Please take a look at the dashboard as well as the content updates.
page update: https://deploy-preview-45247--kubernetes-io-main-staging.netlify.app/docs/contribute/analytics/
dashboard link: https://lookerstudio.google.com/u/0/reporting/fe615dc5-59b0-4db5-8504-ef9eacb663a9/page/4VDGB

Additionally, for the permissions issues, I feel like we could have it point to the SIG Docs leads google group DL instead of a personal email. Is that a possibility?

@dipesh-rawat thanks! i've updated the dashboard title and the top blogs page.
@divya-mohan0209, do you mean the archived data collected before Aug 2022 in Universal Analytics? If yes, can export that into google sheets or CSV files which we can put into a dashboard. I did a quick mock up of what that could look like, https://kubernetes.slack.com/archives/C1J0BPD2M/p1708007203831999?thread_ts=1707922811.911829&cid=C1J0BPD2M. but we'd still have the same permission issues
I've tried adding the<EMAIL_ADDRESS>to the GA4 property as well as for the dashboard data credentials, but it needs to be an email user. I give<EMAIL_ADDRESS>access to edit the dashboard, @divya-mohan0209 can you check if you can edit the dashboard? hopefully those permissions go to everyone in the group.

Speaking more broadly around permissions (and tangentially to this PR), there is a long list of uses that have access to google analytics. I don't think we have any processes currently to review and remove users who do not need access anymore. There are lots of folks still listed as editor/admin who were chairs or no long active in the community. So it might be something to clean up.

I think the there are 2 separate things 1)  updating the dashboard link on website so folks in the community can use it, which is solved by this PR and 2) figuring the best permissions to keep this running longer term, which is covered in  https://github.com/kubernetes/website/issues/44292

I think the there are 2 separate things 1) updating the dashboard link on website so folks in the community can use it, which is solved by this PR and 2) figuring the best permissions to keep this running longer term, which is covered in https://github.com/kubernetes/website/issues/44292

I agree with Abbie's assessment above, and with @dipesh-rawat's and @divya-mohan0209's reviews of this PR already, this looks ready for our community.
/lgtm
/approve
Thanks for showing great ownership with this work @a-mccarthy! 👏


Update mne.pick_channels() to mne.pick()

Update mne.pick_channels() to mne.pick(), as mne.pick_channels() is a legacy function.
I wasn't sure how to deal with the changelog as I only updated mne.pick() which works just like mne.pick_channels().
@raphaelvallat, if you have a moment to review?

Unit tests are failing because pick does not have argument ordered=, unlike pick_channels:
>       raw_pick = raw.copy().pick(ch_names, ordered=True)
E       TypeError: pick() got an unexpected keyword argument 'ordered'

Could you verify on your own data that pick returns the channels in the specified order? (e.g. as if using .pick_channels(..., ordered=True)

Just tested it and both returned the same. mne.pick() orders the channels based their order in ch_names.
I removed ordered=True as it is not available in mne.pick()

Unit tests are failing because pick does not have argument ordered=, unlike pick_channels:
>       raw_pick = raw.copy().pick(ch_names, ordered=True)
E       TypeError: pick() got an unexpected keyword argument 'ordered'

Could you verify on your own data that pick returns the channels in the specified order? (e.g. as if using .pick_channels(..., ordered=True)

Thank you! Merging now