Issue with the log4j s3 appender

Hello, blue denim. I tried to transmit logs to AWS S3 using the S3 appender, and I completed all of the configuration steps mentioned in the document, including adding the dependency to the pom.xml file. However, I was not able to connect to S3. Could you kindly help me determine whether the configuration I was using was correct?
<Log4j2Appender name="Log4j2Appender">
        <PatternLayout pattern="%d{HH:mm:ss,SSS} [%t] %-5p %c{36} - %m%n"/>
      <verbose>false</verbose>

      <!-- Examples of optional tags to attach to entries (applicable only to SOLR & Elasticsearch)-->
      <tags>TEST,ONE,TWO;THREE</tags>

      <!-- Number of messages (lines of log) to buffer before publishing out -->
      <stagingBufferSize>2</stagingBufferSize>

      <s3Bucket>xxxxx</s3Bucket>
      <s3Path>xxxxxx/</s3Path>
      <s3Region>us-west-2</s3Region>
      <s3AwsKey>xxxxxxxxxxxxx</s3AwsKey>
      <s3AwsSecret>xxxxxxxxxxxxxxxx</s3AwsSecret>
      <s3PathStyleAccess>true</s3PathStyleAccess>
      <s3CannedAcl>BucketOwnerFullControl</s3CannedAcl>
        <!-- Uncomment below to use SSE for S3. NOTE: SSE_S3 is the only supported option right now -->
<!--       <s3SseKeyType>SSE_S3</s3SseKeyType> -->
       <!-- Uncomment below to apply GZIP compression on content sent to S3 -->
  <!--<s3Compression>true</s3Compression>-->
        </Log4j2Appender>

Dependency:
<dependency>
    <groupId>com.therealvan</groupId>
    <artifactId>appender-log4j2</artifactId>
    <version>4.0.0</version>
</dependency>

Do I need to add any additional configurations in the log4j2 file. I tried with the different scenarios bur couldn't get that. Can you please assist me, how we can achieve this in the mule4. Thanks.

Without further details, i suggest first setting:
2
to be higher than 2. Try 200.
Get Outlook for Androidhttps://aka.ms/AAb9ysg

From: Siddartha9889 @.>
Sent: Monday, January 29, 2024 4:02:31 PM
To: bluedenim/log4j-s3-search-samples @.>
Cc: Subscribed @.***>
Subject: [bluedenim/log4j-s3-search-samples] Issue with the log4j s3 appender (Issue #19)
Hello, blue denim. I tried to transmit logs to AWS S3 using the S3 appender, and I completed all of the configuration steps mentioned in the document, including adding the dependency to the pom.xml file. However, I was not able to connect to S3. Could you kindly help me determine whether the configuration I was using was correct?
false

TEST,ONE,TWO;THREE

2
xxxxx
xxxxxx/
us-west-2
xxxxxxxxxxxxx
xxxxxxxxxxxxxxxx
true
BucketOwnerFullControl

</Log4j2Appender>

Dependency:
com.therealvan
appender-log4j2
4.0.0
Do I need to add any additional configurations in the log4j2 file. I tried with the different scenarios bur couldn't get that. Can you please assist me, how we can achieve this in the mule4. Thanks.
—
Reply to this email directly, view it on GitHubhttps://github.com/bluedenim/log4j-s3-search-samples/issues/19, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AAOPF6CPIRVL7IULDAW5O33YRA2BPAVCNFSM6AAAAABCQJ45CCVHI2DSMVQWIX3LMV43ASLTON2WKOZSGEYDMNRYGQ3DSMI.
You are receiving this because you are subscribed to this thread.Message ID: @.***>

Hi @bluedenim . I tried increasing the staging buffer size to 200, but it was not able to connect to the S3.
This is my log4j2.xml file where I made all configuration as mentioned in the document.
<?xml version="1.0" encoding="utf-8"?>
<Configuration status="INFO">
    <Appenders>
      <Console name="ConsoleAppender" target="SYSTEM_OUT">
      <PatternLayout pattern="%d{HH:mm:ss,SSS} [%t] %-5p %c{36} - %m%n"/>
      </Console>
	  <Log4j2Appender name="Log4j2Appender">
        <PatternLayout pattern="%d{HH:mm:ss,SSS} [%t] %-5p %c{36} - %m%n"/>
      <verbose>false</verbose>

      <!-- Examples of optional tags to attach to entries (applicable only to SOLR & Elasticsearch)-->
      <tags>TEST,ONE,TWO;THREE</tags>

      <!-- Number of messages (lines of log) to buffer before publishing out -->
      <stagingBufferSize>200</stagingBufferSize>

      <s3Bucket>bau-abc-app</s3Bucket>
      <s3Path>log4js3/</s3Path>
      <s3Region>us-west-2</s3Region>
      <s3AwsKey>-----------------</s3AwsKey>
      <s3AwsSecret>-------------</s3AwsSecret>
      <s3PathStyleAccess>true</s3PathStyleAccess>
      <s3CannedAcl>BucketOwnerFullControl</s3CannedAcl>
        <!-- Uncomment below to use SSE for S3. NOTE: SSE_S3 is the only supported option right now -->
<!--       <s3SseKeyType>SSE_S3</s3SseKeyType> -->
       <!-- Uncomment below to apply GZIP compression on content sent to S3 -->
  <!--<s3Compression>true</s3Compression>-->
        </Log4j2Appender>
    </Appenders>
    <Loggers>
      <Root level="INFO">
        <AppenderRef ref="ConsoleAppender" />
        <AppenderRef ref="Log4j2Appender" />
      </Root>
      <Logger name="com.van.logging" level="debug" additivity="false">
        <AppenderRef ref="ConsoleAppender" />
      </Logger>
	</Loggers>
</Configuration>

Here "bau-abc-app" is the bucket name.  "log4js3/" ,these is the another folder inside the bucket.
These are the configurations I used in my log4j2.xml file. Do I need to add any new configurations or remove any? Please guide me on these configurations, if I need to make minor changes or uncomment any configurations. Your feedback will be much appreciated.
Thanks in advance @bluedenim

Hello. Did you see any error messages that may explain why it wasn't able to connect to S3?
I suggest start with the sample repo at https://github.com/bluedenim/log4j-s3-search-samples/tree/master/appender-log4j2-sample. It is a setup that I know works.
Once you've pulled it down, modify the bucket and credentials as you need, and see how that works.

Hello, @bluedenim . I tried using these repo log4j2 files and modifying them with my S3 bucket credentials, but I was unable to send the logs to S3. There were some missing packages, but once they were added, everything worked great.

Good to hear.
We now have two log4f configs (one works and the original one that did not) to compare and isolate the changes that seem to give your original setup problems. You should be able to identify the problem with the original setup.

From: Siddartha9889 @.>
Sent: Tuesday, February 13, 2024 8:23:28 AM
To: bluedenim/log4j-s3-search-samples @.>
Cc: Van Ly @.>; Mention @.>
Subject: Re: [bluedenim/log4j-s3-search-samples] Issue with the log4j s3 appender (Issue #19)
Hello, @bluedenimhttps://github.com/bluedenim . I tried using these repo log4j2 files and modifying them with my S3 bucket credentials, but I was unable to send the logs to S3. There were some missing packages, but once they were added, everything worked great.
—
Reply to this email directly, view it on GitHubhttps://github.com/bluedenim/log4j-s3-search-samples/issues/19#issuecomment-1941941455, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AAOPF6GEZYXMBNG32GV24KTYTOHQBAVCNFSM6AAAAABCQJ45CCVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTSNBRHE2DCNBVGU.
You are receiving this because you were mentioned.Message ID: @.***>

Hi @bluedenim , there are few things that I need a clarity from you.

Is it possible to specify the file type of the file being uploaded? For example, if the json is uploaded and the json is added, the file type is json and it can be downloaded, or if the file type is zip, and we click the download button, it will download as a zip file. I haven't noticed any configurations in the log4j2 file for file type; are there any properties that we can specify explicitly?

The file in the S3 is coming with the machine name , I was not sure how it was coming with the machine name, we are expecting not to include the machine name in the file name.
For example:<PHONE_NUMBER>3043_MY-MACHINE-NAME_2cf52a167c3d48hj7t6edfcbb65213da
How we can remove that machine name in the file name.

Your inputs would be much appreciated. Thanks @bluedenim

Hi @bluedenim , can you provide some inputs on these, we are doing an POC on these.

Is it possible to specify the file type of the file being uploaded? For example, if the json is uploaded and the json is added, the file type is json and it can be downloaded, or if the file type is zip, and we click the download button, it will download as a zip file. I haven't noticed any configurations in the log4j2 file for file type; are there any properties that we can specify explicitly?

Typically, logs are uploaded as text files. They correspond to how the logs normally appear on the console, each line formatted by the PatternLayout you use for your logger. If you use a pattern that emits a JSON object, that is what will be uploaded.
If you set the "s3Compression" property to "true" in the log4j2 config, then the contents will be GZIPed, and the S3 key will end in ".gz" to hint that the content is compressed.

The file in the S3 is coming with the machine name , I was not sure how it was coming with the machine name, we are expecting not to include the machine name in the file name.
For example:<PHONE_NUMBER>3043_MY-MACHINE-NAME_2cf52a167c3d48hj7t6edfcbb65213da
How we can remove that machine name in the file name.

The machine name is used in order to correlate and group the log entries uploaded in case we need to scroll through them. This is to avoid cases when you have this logger set up on multiple machines and they all upload to the same bucket.
I don't believe there is an option to skip the machine name currently. However, if we need to remove the host name, these lines are the ones to change: https://github.com/bluedenim/log4j-s3-search/blob/master/appender-log4j2/src/main/java/com/van/logging/log4j2/Log4j2AppenderBuilder.java#L266-L268
I'll look into adding a way to do that in the next minor release.

I added the option to specify the hostName value in the config. If you give it a value, then it will use it instead of the real host name.
This is in release 5.1.0.


Update to elemental quick start

I updated the elemental quickstart to fix a few errors during deployment and also to make the process more point and click. The only thing I want to add is a note about the TPM hardware needing to be added but I'm not sure where to put that, or if I even should. Eventually would also like to clean it up and add more detail on the deployment + testing but will save that for later.

Also, I'm not sure if I messed up the formatting so please let me know


Compile error using array of textures

I have a simplified shader that illustrates a problem I'm having.
TextureCube t0; SamplerState s0;
TextureCube t1; SamplerState s1;

float4 fragmentProgram(float4 input : INPUT0) : SV_Target0
{
	float4 result = 0;

	TextureCube texCubeArray[2];
	texCubeArray[0] = t0;
	texCubeArray[1] = t1;

	[unroll]
	for (int i = 0; i < 2; ++i)
	{
		result += texCubeArray[i].Sample(s0, input.xyz);
	}

	return result;
}

If I compile this to SPIR-V and then into glsl, the result I get is the following:
uniform samplerCube _105[2];

layout(location = 0) in vec4 _input;
layout(location = 0) out vec4 _69;

void main()
{
    _0[0] = t0;
    _0[1] = t1;
    vec4 _103;
    _103 = vec4(0.0);
    for (int _102 = 0; _102 < 2; )
    {
        _103 += texture(_105[_102], _input.xyz);
        _102++;
        continue;
    }
    _69 = _103;
}

For some reason it has created a _0 variable that it's trying to assign into, and also hasn't declared t0 or t1 anywhere and it's failing to compile. The glsl I'm showing comes from optimized SPIR-V, but unoptimized SPIR-V presents the same problem. Fxc is ok with this setup if indices are known at compile time.
fragmentProgram_optimized.spv.txt

I'm pretty sure this is invalid SPIR-V, but I'll have a look tomorrow.

Ok, this is bogus SPIR-V, but the validation doesn't catch it.
The SPIR-V is trying to load the two textures, store them to a stack variable, then read from them. _0 is emitted because of an old, obsolete workaround for invalid SPIR-V.
This is not allowed in SPIR-V. The legalization pass in spirv-opt must unroll the array, and unroll the loop properly to make this work.

Understood, I'll send it over to glslang and continute the conversation there. Thanks for taking the time to look into it.


chore: Use secrets_gradle_plugin to provide GMP API Key.

Use secrets-gradle-plugin to provide Places API key

Do you still need this PR approved? So sorry I missed this request! If still needed, please resolve conflicts.

@wangela conflicts addressed. PTAL

Closing this since #167 adds this change


fix: 🐛 getAssets where ticker was not being padded for query

Description
fixes getAssets method which would fail for certain tickers
Breaking Changes
None
JIRA Link
N/A
Checklist

[ ] Updated the Readme.md (if required) ?

:tada: This PR is included in version 23.0.0-alpha.10 :tada:
The release is available on:

npm package (@alpha dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Set release to latest code in master / update pip repository

Hi,
I was wondering if it's possible to get the latest version of master as a new release available through pip?
I was trying to get the --autoversion working, but I realized the version I have is 1.5.2 which does not contain that feature.
Thanks

Right you are! I just pushed v1.6 to pypi

you should be able to upgrade with pip install --upgrade credstash

Thanks, it works great!!!


Queue Manager - No queue list by disabling increment storage

Question
PHP
8.0.20
Shopware version
<IP_ADDRESS>
froshtools version
0.2.12
If the usage of the increment storage is disabled with config/packages/shopware.yml file and following content
shopware:
increment:
user_activity:
type: 'array'
    message_queue:
      type: 'array'

The queue overview disappears in queue manager.
Is there a way to display the data anyway or is it no longer possible to read out the data with this deactivation?

It uses the same data. So it's "okay" that it is empty.
You should use for your queue services like rabbitmq there you have a better dashboard over the queue


[CELEBORN-775][FOLLOWUP] Fix executorCores calculation in SparkShuffleManager for Spark2 local mode

What changes were proposed in this pull request?
Why are the changes needed?
CELEBORN-775 The executorCores method was introduced in Spark2, but it was not used.
Does this PR introduce any user-facing change?
No
How was this patch tested?
GA

LGTM. Merged to main(v0.6.0) and branch-0.5(v0.5.1).

Oops, thanks for the fix.


[bug] archive file not being created when initially using youtube-dl library

[x] I've verified and I assure that I'm running youtube-dl 2016.07.17

[x] At least skimmed through README and most notably FAQ and BUGS sections

[x] Searched the bugtracker for similar issues including closed ones

[x] Bug report (encountered problems with youtube-dl)

I maintain [tubeup] (https://github.com/bibanon/tubeup), which uses youtube-dl to upload videos to the Internet Archive.
I've specified a location for the download file and video output location:
    ydl_opts = {
        'outtmpl': '~/.tubeup/downloads/%(title)s-%(id)s.%(ext)s',
        'download_archive': '~/.tubeup/downloads/.ytdlarchive',

This is the result:
tubeup https://www.youtube.com/watch?v=6VKyQj0UAsg
[debug] Encodings: locale UTF-8, fs utf-8, out UTF-8, pref UTF-8
[debug] youtube-dl version 2016.07.16
[debug] Python version 3.5.1+ - Linux-4.4.0-31-generic-x86_64-with-Ubuntu-16.04-xenial
[debug] exe versions: avconv 2.8.6-1ubuntu2, avprobe 2.8.6-1ubuntu2, ffmpeg 2.8.6-1ubuntu2, ffprobe 2.8.6-1ubuntu2
[debug] Proxy map: {}
{'downloaded_bytes': 8911347, '_total_bytes_str': '8.50MiB', 'elapsed': 1.9620885848999023, 'filename': '/home/vxbinaca/.tubeup/downloads/YTPMV_Sourcegore-6VKyQj0UAsg.f134.mp4', '_elapsed_str': '00:01', 'status': 'finished', 'total_bytes': 8911347}
:: Downloaded: /home/vxbinaca/.tubeup/downloads/YTPMV_Sourcegore-6VKyQj0UAsg.f134.mp4...
{'downloaded_bytes': 2790717, '_total_bytes_str': '2.66MiB', 'elapsed': 0.7879514694213867, 'filename': '/home/vxbinaca/.tubeup/downloads/YTPMV_Sourcegore-6VKyQj0UAsg.f251.webm', '_elapsed_str': '00:00', 'status': 'finished', 'total_bytes': 2790717}
:: Downloaded: /home/vxbinaca/.tubeup/downloads/YTPMV_Sourcegore-6VKyQj0UAsg.f251.webm...
Traceback (most recent call last):
  File "tubeup", line 238, in <module>
    main()
  File "tubeup", line 223, in main
    download(URLs, proxy_url)
  File "tubeup", line 98, in download
    ydl.download(URLs)
  File "/usr/local/lib/python3.5/dist-packages/youtube_dl/YoutubeDL.py", line 1775, in download
    url, force_generic_extractor=self.params.get('force_generic_extractor', False))
  File "/usr/local/lib/python3.5/dist-packages/youtube_dl/YoutubeDL.py", line 693, in extract_info
    return self.process_ie_result(ie_result, download, extra_info)
  File "/usr/local/lib/python3.5/dist-packages/youtube_dl/YoutubeDL.py", line 739, in process_ie_result
    return self.process_video_result(ie_result, download=download)
  File "/usr/local/lib/python3.5/dist-packages/youtube_dl/YoutubeDL.py", line 1421, in process_video_result
    self.process_info(new_info)
  File "/usr/local/lib/python3.5/dist-packages/youtube_dl/YoutubeDL.py", line 1761, in process_info
    self.record_download_archive(info_dict)
  File "/usr/local/lib/python3.5/dist-packages/youtube_dl/YoutubeDL.py", line 1868, in record_download_archive
    with locked_file(fn, 'a', encoding='utf-8') as archive_file:
  File "/usr/local/lib/python3.5/dist-packages/youtube_dl/utils.py", line 1408, in __init__
    self.f = io.open(filename, mode, encoding=encoding)
FileNotFoundError: [Errno 2] No such file or directory: '~/.tubeup/downloads/.ytdlarchive'

The folders exist to it, but the file doesn't exist and isn't created by youtube-dl when initially run using the library, but the script creates it if I recall. Youtube-dl also makes the folder for downloads if there isn't one. But for some reason, the archive file must pre-exist for it to write to it and won't be created if there is none.
What I'm looking for is a rule where: If theres no archive file in the specified location, create one. If there is one, append to it.
I'd just like the library to create a file is there isn't one already in place is all.
Edit:
It also doesn't use it when I create it.

Python doesn't automatically transform ~ into /home/xyz. You need os.path.expanduser.


Unable to use github signin

Issue Type: Bug
I am unable to use git authentication in vscode.
Error:
remote: No anonymous write access.
fatal: Authentication failed for 'https://github.com/amanv8060/testingvscode/'
By turning off
git.terminalAuthentication i can do git operations normally using userid and PAT as password.
VS Code version: Code 1.62.2 (3a6960b964327f0e3882ce18fcebd07ed191b316, 2021-11-11T20:51:30.084Z)
OS version: Linux x64 5.11.0-40-generic snap
Restricted Mode: No

System Info

Item
Value

CPUs
Intel(R) Core(TM) i5-8250U CPU @ 1.60GHz (8 x 1800)

GPU Status
2d_canvas: unavailable_softwaregpu_compositing: disabled_softwaremultiple_raster_threads: enabled_onoop_rasterization: disabled_offopengl: disabled_offrasterization: disabled_softwareskia_renderer: enabled_onvideo_decode: disabled_softwarevulkan: disabled_offwebgl: unavailable_softwarewebgl2: unavailable_software

Load (avg)
2, 3, 3

Memory (System)
15.52GB (4.65GB free)

Process Argv
--no-sandbox --force-user-env --unity-launch --crash-reporter-id 8658f06a-7cee-4cdf-be81-2831d25d660f

Screen Reader
no

VM
0%

DESKTOP_SESSION
ubuntu

XDG_CURRENT_DESKTOP
Unity

XDG_SESSION_DESKTOP
ubuntu

XDG_SESSION_TYPE
x11

Extensions (2)

Extension
Author (truncated)
Version

prettier-vscode
esb
9.0.0

copilot
Git
1.7.3733

A/B Experiments
vsliv368:30146709
vsreu685:30147344
python383:30185418
vspor879:30202332
vspor708:30202333
vspor363:30204092
pythontb:30283811
pythonptprofiler:30281270
vshan820:30294714
vstes263:30335439
pythondataviewer:30285071
vscod805:30301674
pythonvspyt200:30340761
binariesv615:30325510
vsccppwt:30382697
bridge0708:30335490
dockerwalkthru:30377721
bridge0723:30353136
pythonrunftest32:30373476
pythonf5test824:30373475
javagetstartedt:30391933
pythonvspyt187:30373474
vsqsis400:30386382
vsaa593:30376534
vssld246cf:30386378

Update : Installed previous version from here
Was able to see a prompt to allow access.
Looks like an issue with this release itself.
To confirm tried reinstalling latest version multiple times with deletion of ~/.vscode & ~/.config/Code , didn't work

Same issue here. Solved by rolling back to version 1.62.1.
For Mac users: https://update.code.visualstudio.com/1.62.1/darwin-universal/stable

Same issue here. Rolling back to version 1.61.2 helped as well.

Same issue here as well. Rolling back to 1.61.2 helped.

Same problem, downgrading vscode solved it

The problem appears to be hitting 1.63 Insiders on Ubuntu 20.04.3.

I have some problem in vscode windows
Failed authenticated git remoto
but working with github desktop.

I was having the same issue. I resolved it by reverting to version 1.61.2

Same problem here, downgrading to previous release solved it.

Same here, but how to downgrade?
sudo apt-get install code=1.62.1

Will not find the version.

Same here, but how to downgrade?
sudo apt-get install code=1.62.1

Will not find the version.
use sudo apt-cache policy code to see all version
or just sudo apt install code=1.62.1-1636111026 in your case

Same problem, use terminal on linux solved it

Same issue in Fedora 34! Downgraded to code-1.61.2 fixed the issue (basically as a local fix, but waiting for a real fix in next version)

is it a dup of https://github.com/microsoft/vscode/issues/137183?

is it a dup of #137183?

GitHub signin still works with 1.62.1, so this is probably a separate issue.

1.62.3 has fixed the problem for me! Thanks!

1.62.3 has fixed the problem for me! Thanks!

version 1.62.3 still not working for me.

1.62.3 works for me as well, hooray!
Operating System: elementary OS 5.1.7 Hera
Kernel: Linux 5.4.0-90-generic
Architecture: x86-64

Confirming that 1.62.3 is working for me too. Thanks!

1.62.3 has fixed the problem for me! Thanks!

version 1.62.3 still not working for me. VS Code - version 1.62.3 OS - Ubuntu 20.04.03 LTS

After reinstalling version 1.62.3 worked for me.

version 1.62.3 officialy fixed the issue, works for me now!

1.62.3 working as expected for me.

Version 1.62.3 works also fine in Fedora 35! Thank you so much!

Duplicate of #137183


Override connect timeout

See https://github.com/coder/coder/pull/10473
After this change you can see in the logs:
[13:50:25.629] > local-server-1> Running ssh connection command: "-v -T -D 43233 -o ConnectTimeout=1800 coder-vscode--code-asher--dev27--dev bash"

Made the changes!  One open question is whether there is a better way to detect when we are connected.  I am using findSSHProcessID() but I suppose we could reset the value early if we are unable to find it or it takes too long to spawn.  It might be good enough though.

Yup it would be possible that it exits fast, but findSSHProcessID() does also have a timeout (15 seconds) so it will eventually resolve and then we will revert the setting.  The remote extension activates right after we set this up so I think it is as good as we will get it!


Expose async request functionality

With Finch 0.17 out, we can begin to expose async_request/2, async_request!/2, parse_message/2, and cancel_async_request/1 in the public API. This PR exposes these functions in the documentation.
See https://github.com/wojtekmach/req/issues/195 for context.

note to self: double-check compressed/1 docs.

@wojtekmach anything I can help with to get this merged? I realize I can use this without the docs but it would be nice to use documented apis if possible.

hey @benjreinhart, thank you for the PR. I'be been holding on this for quite a while because I was pondering a different API that I hope will be more ergonomic and easier to use. See 935fdeead7dbd65ef8815552658bfeb719c306c1 and let me know what you think.


HDDS-8020. File checksum helper leaking client

What changes were proposed in this pull request?
Let file checksum helper release client in case of success to prevent memleak.
(It seems logic for releasing client was copied from BlockInputStream, which has been fixed in HDDS-7931 since then.)
https://issues.apache.org/jira/browse/HDDS-8020
How was this patch tested?
mvn clean test -am -pl :ozone-integration-test -Dtest='TestOzoneFileChecksum'

Verified no warning about ManagedChannelImpl was not shutdown properly appears in test log.
CI:
https://github.com/adoroszlai/hadoop-ozone/actions/runs/4257319915

Thanks @ayushtkn, @duongkame, @sodonnel for the review.


MetadataViews over complexity previous design

Instructions
While the MetadataViews proposal strives to add more structure to NFT metadata is actually adds unnecessary complexity.
Issue To Be Solved
Perviously, each contract defined their interface and a list of methods that could be called to get various data from the contract.
In the new proposal, each contract is defining their own custom views.
When a Dapp, needs to setup a new account to be used with a specific contract, that Dapp needs to setup the new account with all the views that were defined in the contract otherwise the metadata exposed by those views will not be available.
Additionally, the main problem, a metadata standard is not solved as the developer still needs to look through the contract code and define custom scripts to use the custom view functions defined in each contract.
(Optional): Suggest A Solution
Abandon MetadataViews and rely on previous design.
Propose new metadata standard.
(Optional): Context
When a user purchases an NFT on a marketplace, the marketplace needs to link all the metadata views defined by the contract that minted the NFT otherwise the views won't be accessible.
Previously the marketplace only needed to link one specific interface per contract.
As I see there are other issues proposing different types of views I suggest taking a pause and re-evaluating if this is not going in the wrong direction.

When a Dapp, needs to setup a new account to be used with a specific contract, that Dapp needs to setup the new account with all the views that were defined in the contract otherwise the metadata exposed by those views will not be available

can you give an example to this? This feels like wrong conclusion

Hi @bluesign
Here is a concrete example.
The Flovatar contract implements the previous NFT metadata standard:
https://flowscan.org/contract/A.921ea449dffec68a.Flovatar/overview
This CollectionPublic interface defined in the contract needs to be linked on a new account in order for that account to allow the reading of metadata.
pub resource interface CollectionPublic { .. }

A new user that acquires a Flovatar would have this link created by the marketplace or wallet that managed the purchase.
Once linked, metadata can be read by executing methods from these interface.
The BarterYardClub contract implements the new MetadataViews standard:
https://flowscan.org/contract/A.28abb9f291cadaf2.BarterYardClubWerewolf/overview
The contract does not have an interface but exposes data using Views.
So when setting up a new account the marketplace or wallet would need to link the NonFungibleToken.CollectionPublic and the MetadataViews.ResolverCollection:
signer.link<&BarterYardClubWerewolf.Collection{NonFungibleToken.CollectionPublic, MetadataViews.ResolverCollection}>
            (BarterYardClubWerewolf.CollectionPublicPath, target: BarterYardClubWerewolf.CollectionStoragePath)

to finally have access to the same data as the first example.
Given that the second contract uses a custom view CompleteDisplay one would still need to look over all the fields defined in the view and create a custom connector that would first get the view and then get the same data by calling the custom fields.
So IMO there is additional complexity both in creating the contract code to define views and the code needed on the connector to read from views while one could just read the public methods.

@cybercent ok but this is not per view type, it is MetadataViews.ResolverCollection for all view types.
But the reason for this is, MetadataViews standard came after NonFungibleToken. And as new NFT standard is on the way, updating old one didn't make sense. Otherwise we could do something like :
resource interface NonFungibleToken.Collection : MetadataViews.ResolverCollection
In the new standard it is roughly like below, it is even more embedded.  [0]
 pub resource interface NFT {
        // We also don’t want to restrict how an NFT defines its ID
        // They can store it, compute it, or use the UUID
        pub fun getID(): UInt64

        // Two functions for the NFT Metadata Standard
        pub fun getViews() : [Type]
        pub fun resolveView(_ view:Type): AnyStruct?
    }

It is a bit transition period in my opinion.
For the second part, design decision there is making a custom view or implementing some other standard view is decision left to developer.
As such for example viv3 can request from dapps to implement a viv3Display view or can use standard display view in the standard. But slowly standard views are getting added everyday too, it is still very young,
[0] https://forum.onflow.org/t/streamlined-token-standards-proposal/3075/9

Based on your experience @cybercent I see where you have doubts about this. But I would argue that the metadata standard has a lot of merrit.
Intention
The intention was never that each provider should defined their own views that should be used for interop against consumers. The intention was that there should be standardized views that the community agree upon that providers can then implement to expose their contracts to the functionality that consumers provide.
Another aspect that was always intended was that NFT.CP should have get getViewsand resolveView methods. And that they should be default implemented to return empty values. This way all existing links that link against NFT.CP should just work.
Status
The status so far is that the PR for default implementaion is done and awaiting review and merge thanks to @bluesign

https://github.com/onflow/cadence/pull/1076

There are many views that are already present in MetadataViews (https://github.com/onflow/flow-nft/blob/master/contracts/MetadataViews.cdc) such as

Display
Royalties/Royalty
ExternalView
File
Media
License
NFTCollectionData

And there are many more that are beeing worked on like

Edition
NFTView (That will compose the above to generate what alchemy need for their API)
Tags/Attributes
Serials


[ADAM-1716] Add adam- prefix to distribution module name.

Fixes #1716

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/ADAM-prb/2381/
Test PASSed.

Merged! Thanks @heuermh!


Error: spawn EACCES

Hey there. Thanks for building this out...obviously it has been very helpful to a lot people :)
I am having an issue launching a browser both when attempting to launch locally and when deployed to Lambda.
My setup:
Node: v8.10
const puppeteer = require('puppeteer-core');
const chromium = require('chrome-aws-lambda');

const browser = await puppeteer.launch({
    args: chromium.args,
    defaultViewport: chromium.defaultViewport,
    executablePath: await chromium.executablePath,
    headless: chromium.headless,
  });

The error message from Lambda console:
(node:1) UnhandledPromiseRejectionWarning: Error: spawn EACCES
    at _errnoException (util.js:1022:11)
    at ChildProcess.spawn (internal/child_process.js:323:11)
    at Object.exports.spawn (child_process.js:502:9)
    at Launcher.launch (/var/task/node_modules/puppeteer-core/lib/Launcher.js:126:40)
    at <anonymous>

I also got this error the first time I ran it locally but wasn't able to recreate:
Error --------------------------------------------------

  Cannot find module 'iltorb'

I've maxed out my memory allocation but still doesn't work. Any ideas?

I'm having the exact same issue. I tried reverting to version 1.12.0 for both chrome-aws-lambda and puppeteer-core, but I'm still having the same issue. I also cannot reproduce this locally.
This was working fine a couple of weeks ago. I'm really not sure what changed (maybe something in AWS Lambda changed, too, but I'm not sure yet).

I just figured it out. Somehow, my Lambda function's memory got reduced to 128 MB. I reset this back to 2048 MB and it's working again.

The error you get locally is expected, regarding the other one I'll take a look shortly and get back to you.

We are having the same issue. It not related to memory size of lambda. All our lambdas run with 2000MB

I cannot reproduce this issue, just launched a brand new 1.13 version and everything works as expected.
@tarikbellamine You only shared a snippet so I cannot really be sure, but I suspect the issue might be that you are not executing the awaits inside an async scope? Could you try with the sample code shared on the README and tell me if the issue is gone?

Just found what causes it for us, it’s when we add tracing from https://epsagon.com/. Works when we disable that.

this solved this problem for me: https://github.com/alixaxel/chrome-aws-lambda/issues/67#issuecomment-544902016


Http client adapters

This is a draft implementation of HTTP adapters solving #49.
The library now supports:

Guzzle 3
Guzzle 4
Buzz

The user has to choose an adapter when creating the API client :
<?php

$buzz = new \Gitlab\HttpClient\Adapter\BuzzAdapter();
$guzzle3 = new \Gitlab\HttpClient\Adapter\Guzzle3Adapter();
$guzzle4 = new \Gitlab\HttpClient\Adapter\Guzzle4Adapter();

$bgitlab = new \Gitlab\Client('http://git.foobar.com/api/v3/', $buzz);
$bgitlab->authenticate('foobar', \Gitlab\HttpClient\HttpClientInterface::AUTH_HTTP_TOKEN);

$g3gitlab = new \Gitlab\Client('http://git.foobar.com/api/v3/', $guzzle3);
$g3gitlab->authenticate('foobar', \Gitlab\HttpClient\HttpClientInterface::AUTH_HTTP_TOKEN);

$g4gitlab = new \Gitlab\Client('http://git.foobar.com/api/v3/', $guzzle4);
$g4gitlab->authenticate('foobar', \Gitlab\HttpClient\HttpClientInterface::AUTH_HTTP_TOKEN);

:warning: This will break user's code when updating the library :warning: but I think it's a minor change.

why not use https://github.com/egeloen/ivory-http-adapter here? it already handles everything related and is able to guess the best matching adapter

@digitalkaoz seems to be a really good alternative! :+1:

As posted in another issue:
There will not be a major new tag until the HTTP adaptor (#5, #50, #49), PHP version (#54) and PSR-4 (#55) discussions are concluded. I will also be doing a lot of house keeping over the coming days and weeks, which may include several breaking changes, mainly todo with models (#8, #10). I am not sure on the roadmap of Gitlab but envisage this to coincide with the release of 8.0 depending on @randx and co's plans.
However, I will tag a smaller release to coincide with the release of 7.8 next week.

I like the look of Ivory as it handles everything that we don't need to care about (ie Gitlab functionality only).

@digitalkaoz @m4tthumphrey Wow! Didn't even know about Ivory. Really nice.

@m4tthumphrey Any progress here? If you want i can integrate HTTPlug which is a psr-7 compatible http layer which supports:

cURL
Socket
Guzzle5
Guzzle6
React

If you say yes, i can send you a PR tomorrow. (I need that for a project anyways)

Crack on @Baachi. Probably best to create a new PR though!

@Baachi any progress with HTTPlug?

@sagikazarmark Hey, i started to work on it but have some problems with the listeners.

@Baachi I dont mind if some of the API has to change to support this. The client hasn't had a major (breaking) release for a long while.

@Baachi do you plan to finish this PR?

@jubianchi I think you should close this in favour of #191

Superseeded by #191.


Sparrow not updating and no sign of connection error.

I have few transaction that are waiting to be confirmed on sparrow but have multiple confirmation in reality.
The logs don't seems to show any recent connection attempt + error.
2022-05-30 21:23:40,331 WARN [Thread-1886] c.s.s.n.TcpTransport [null:-1] No response from server, setting read timeout to 34 secs
2022-05-31 07:03:06,918 WARN [Thread-2582] c.s.s.n.TcpTransport [null:-1] No response from server, setting read timeout to 34 secs
2022-05-31 07:03:42,461 WARN [Thread-2582] c.s.s.n.TcpTransport [null:-1] No response from server, setting read timeout to 34 secs
Time is currently 13:23

Clicked the connection toggle twice to try reconnecting, This is what the logs showed.
...
2022-05-31 07:03:42,461 WARN [Thread-2582] c.s.s.n.TcpTransport [null:-1] No response from server, setting read timeout to 34 secs
2022-05-31 13:23:29,978 ERROR [ElectrumServerReadThread] c.s.s.n.TcpTransport [null:-1] Error opening socket inputstream
java.net.SocketException: Socket is closed
at java.base/sun.security.ssl.SSLSocketImpl.getInputStream(Unknown Source)
at com.sparrowwallet.sparrow@1.6.5/com.sparrowwallet.sparrow.net.TcpTransport.readInputLoop(Unknown Source)
at com.sparrowwallet.sparrow@1.6.5/com.sparrowwallet.sparrow.net.ElectrumServer$ReadRunnable.run(Unknown Source)
at java.base/java.lang.Thread.run(Unknown Source)
2022-05-31 13:23:29,989 WARN [JavaFX Application Thread] c.s.s.t.TransactionController [null:-1] Failed to retrieve all referenced input transactions, aborting transaction fetch

Looks like the socket from the server remained open (from the client context, anyway), but was not sending data (or at least, enough data to complete a request).
That's my best guess, anyway - further investigation on the state of the socket connection (for example, with netstat) would be necessary to understand better what is going on. It would also have been helpful to see what the current thread dump looked like for Sparrow when this occurred. This can be obtained by issuing a kill -3 <PID> on Sparrow's process id in *nix type systems.

Thinking about this more, the most likely reason is that the server simply failed to notify Sparrow that the transactions had been confirmed (even while keeping the connection open). This is not unusual for Electrs-based implementations, but could also be due to simple connection errors (less likely).
I don't think it's a Sparrow bug however.

"I don't think it's a Sparrow bug however."
If it's not sparrow related is it caused by the underlying JVM?

If it's not sparrow related is it caused by the underlying JVM?

No, it's caused by the server.


Updated Font-Awesome to 4.6

I included the other font files in addition to .woff as well.

A few higher level feedback items:

As we discussed during the stand-up, PRs should be sent from a branch rather than master
Rather than creating a completely new Pull Request, it's preferred to attach the code to the existing ticket using hub (https://github.com/github/hub)

Visual regressions:

The icons on the landing page have increased in height by 5px. We should investigate what new FontAwesome rule is causing this and fix the regression

The icons in the left hand navigation have moved slightly down and are no longer vertically aligned with the text

Finished review. Back to @sallakarppinen for follow-up

As we discussed during the stand-up, PRs should be sent from a branch rather than master
Rather than creating a completely new Pull Request, it's preferred to attach the code to the existing ticket using hub (https://github.com/github/hub)

Acknowledged - I'll continue using this pull request for this task as it's already been created but will make sure to follow these guidelines in the future.

The icons on the landing page have increased in height by 5px. We should investigate what new FontAwesome rule is causing this and fix the regression

I can't reproduce this - the icons seem to be one pixel wider than previously but all seem the same height (35px) to me. Which browser was this discovered with? I've tried Chromium and Firefox with no luck. Do you mean the icons themselves, not the containing element?

The icons in the left hand navigation have moved slightly down and are no longer vertically aligned with the text

Fixed.

The icons on the landing page have increased in height by 5px. We should investigate what new FontAwesome rule is causing this and fix the regression
I can't reproduce this - the icons seem to be one pixel wider than previously but all seem the same height (35px) to me. Which browser was this discovered with? I've tried Chromium and Firefox with no luck. Do you mean the icons themselves, not the containing element?

I'm using Firefox 45.0.2.
Before:

After:

Ah, sorry. I think that should fix it.

A question regarding the higher level feedback from earlier: I tried hub and using the issue-to-pull request feature it offers and got a warning saying 'Issue to pull request conversion is deprecated and might not work in the future.' Should I keep using it and just make sure to never update the app or is there another method to achieve the same?

@sallakarppinen yea feel free to ignore the warning until the feature is removed, because for our workflow it keeps things a bit cleaner. For us, it's rare to have an issue opened, and have multiple substantially different approaches come in as PRs as we iterate over the issue. The problem of separate issue from PR for us is that it tends to split the conversation and leave cruft in the issue tracker after a PR is merged.
When the endpoint is removed we'll likely just iterate over this process, but I wouldn't be surprised if the endpoint is removed with a suitable alternative for this kind of use-case (i.e., better issue-linking or something).

Closed in favour of #4128.


Version bump to 1.1.0, upgrading deps

I’m upgrading the bower/npm deps in line with ember-cli 0.1.15 produces.
Fixing HTMLBars register helper since Ember.HTMLBars.helper no longer
exists

Lgtm


sshuttle won't build on Darwin

Issue description
sshuttle breaks during the building
source root is sshuttle-0.78.3
setting SOURCE_DATE_EPOCH to timestamp<PHONE_NUMBER> of file sshuttle-0.78.3/setup.cfg
patching sources
applying patch /nix/store/50mpb45s17vyfmifdfrwibvnhlkldav5-sudo.patch
patching file sshuttle/client.py
Hunk #1 succeeded at 185 (offset 27 lines).
configuring
building
running bdist_wheel
running build
running build_py
creating build
creating build/lib
creating build/lib/sshuttle
copying sshuttle/__init__.py -> build/lib/sshuttle
copying sshuttle/__main__.py -> build/lib/sshuttle
copying sshuttle/assembler.py -> build/lib/sshuttle
copying sshuttle/client.py -> build/lib/sshuttle
copying sshuttle/cmdline.py -> build/lib/sshuttle
copying sshuttle/firewall.py -> build/lib/sshuttle
copying sshuttle/helpers.py -> build/lib/sshuttle
copying sshuttle/hostwatch.py -> build/lib/sshuttle
copying sshuttle/linux.py -> build/lib/sshuttle
copying sshuttle/options.py -> build/lib/sshuttle
copying sshuttle/sdnotify.py -> build/lib/sshuttle
copying sshuttle/server.py -> build/lib/sshuttle
copying sshuttle/ssh.py -> build/lib/sshuttle
copying sshuttle/ssnet.py -> build/lib/sshuttle
copying sshuttle/ssyslog.py -> build/lib/sshuttle
copying sshuttle/stresstest.py -> build/lib/sshuttle
copying sshuttle/version.py -> build/lib/sshuttle
creating build/lib/sshuttle/methods
copying sshuttle/methods/__init__.py -> build/lib/sshuttle/methods
copying sshuttle/methods/ipfw.py -> build/lib/sshuttle/methods
copying sshuttle/methods/nat.py -> build/lib/sshuttle/methods
copying sshuttle/methods/pf.py -> build/lib/sshuttle/methods
copying sshuttle/methods/tproxy.py -> build/lib/sshuttle/methods
installing to build/bdist.macosx-10.6-x86_64/wheel
running install
running install_lib
creating build/bdist.macosx-10.6-x86_64
creating build/bdist.macosx-10.6-x86_64/wheel
creating build/bdist.macosx-10.6-x86_64/wheel/sshuttle
copying build/lib/sshuttle/__init__.py -> build/bdist.macosx-10.6-x86_64/wheel/sshuttle
copying build/lib/sshuttle/__main__.py -> build/bdist.macosx-10.6-x86_64/wheel/sshuttle
copying build/lib/sshuttle/assembler.py -> build/bdist.macosx-10.6-x86_64/wheel/sshuttle
copying build/lib/sshuttle/client.py -> build/bdist.macosx-10.6-x86_64/wheel/sshuttle
copying build/lib/sshuttle/cmdline.py -> build/bdist.macosx-10.6-x86_64/wheel/sshuttle
copying build/lib/sshuttle/firewall.py -> build/bdist.macosx-10.6-x86_64/wheel/sshuttle
copying build/lib/sshuttle/helpers.py -> build/bdist.macosx-10.6-x86_64/wheel/sshuttle
copying build/lib/sshuttle/hostwatch.py -> build/bdist.macosx-10.6-x86_64/wheel/sshuttle
copying build/lib/sshuttle/linux.py -> build/bdist.macosx-10.6-x86_64/wheel/sshuttle
creating build/bdist.macosx-10.6-x86_64/wheel/sshuttle/methods
copying build/lib/sshuttle/methods/__init__.py -> build/bdist.macosx-10.6-x86_64/wheel/sshuttle/methods
copying build/lib/sshuttle/methods/ipfw.py -> build/bdist.macosx-10.6-x86_64/wheel/sshuttle/methods
copying build/lib/sshuttle/methods/nat.py -> build/bdist.macosx-10.6-x86_64/wheel/sshuttle/methods
copying build/lib/sshuttle/methods/pf.py -> build/bdist.macosx-10.6-x86_64/wheel/sshuttle/methods
copying build/lib/sshuttle/methods/tproxy.py -> build/bdist.macosx-10.6-x86_64/wheel/sshuttle/methods
copying build/lib/sshuttle/options.py -> build/bdist.macosx-10.6-x86_64/wheel/sshuttle
copying build/lib/sshuttle/sdnotify.py -> build/bdist.macosx-10.6-x86_64/wheel/sshuttle
copying build/lib/sshuttle/server.py -> build/bdist.macosx-10.6-x86_64/wheel/sshuttle
copying build/lib/sshuttle/ssh.py -> build/bdist.macosx-10.6-x86_64/wheel/sshuttle
copying build/lib/sshuttle/ssnet.py -> build/bdist.macosx-10.6-x86_64/wheel/sshuttle
copying build/lib/sshuttle/ssyslog.py -> build/bdist.macosx-10.6-x86_64/wheel/sshuttle
copying build/lib/sshuttle/stresstest.py -> build/bdist.macosx-10.6-x86_64/wheel/sshuttle
copying build/lib/sshuttle/version.py -> build/bdist.macosx-10.6-x86_64/wheel/sshuttle
running install_egg_info
running egg_info
writing sshuttle.egg-info/PKG-INFO
writing dependency_links to sshuttle.egg-info/dependency_links.txt
writing entry points to sshuttle.egg-info/entry_points.txt
writing top-level names to sshuttle.egg-info/top_level.txt
reading manifest file 'sshuttle.egg-info/SOURCES.txt'
reading manifest template 'MANIFEST.in'
warning: no previously-included files matching '*' found under directory 'docs/_build'
writing manifest file 'sshuttle.egg-info/SOURCES.txt'
Copying sshuttle.egg-info to build/bdist.macosx-10.6-x86_64/wheel/sshuttle-0.78.3-py3.6.egg-info
running install_scripts
creating build/bdist.macosx-10.6-x86_64/wheel/sshuttle-0.78.3.dist-info/WHEEL
installing
/private/var/folders/f8/2_rc4tgd1gj9vbgv7q9gbk4c0000gn/T/nix-build-sshuttle-0.78.3.drv-0/sshuttle-0.78.3/dist /private/var/folders/f8/2_rc4tgd1gj9vbgv7q9gbk4c0000gn/T/nix-build-sshuttle-0.78.3.drv-0/sshuttle-0.78.3
Processing ./sshuttle-0.78.3-py2.py3-none-any.whl
Installing collected packages: sshuttle
Successfully installed sshuttle-0.78.3
/private/var/folders/f8/2_rc4tgd1gj9vbgv7q9gbk4c0000gn/T/nix-build-sshuttle-0.78.3.drv-0/sshuttle-0.78.3
post-installation fixup
stripping (with flags -S) in /nix/store/yn1arai6j8fic83my2z9rv37j3as363j-sshuttle-0.78.3/lib  /nix/store/yn1arai6j8fic83my2z9rv37j3as363j-sshuttle-0.78.3/bin
patching script interpreter paths in /nix/store/yn1arai6j8fic83my2z9rv37j3as363j-sshuttle-0.78.3
wrapping `/nix/store/yn1arai6j8fic83my2z9rv37j3as363j-sshuttle-0.78.3/bin/.sshuttle-wrapped'...
running install tests
running pytest
running egg_info
writing sshuttle.egg-info/PKG-INFO
writing dependency_links to sshuttle.egg-info/dependency_links.txt
writing entry points to sshuttle.egg-info/entry_points.txt
writing top-level names to sshuttle.egg-info/top_level.txt
reading manifest file 'sshuttle.egg-info/SOURCES.txt'
reading manifest template 'MANIFEST.in'
warning: no previously-included files matching '*' found under directory 'docs/_build'
writing manifest file 'sshuttle.egg-info/SOURCES.txt'
running build_ext
============================= test session starts ==============================
platform darwin -- Python 3.6.1, pytest-3.0.7, py-1.4.31, pluggy-0.4.0
rootdir: /private/var/folders/f8/2_rc4tgd1gj9vbgv7q9gbk4c0000gn/T/nix-build-sshuttle-0.78.3.drv-0/sshuttle-0.78.3, inifile:
collected 66 items

sshuttle/tests/client/test_firewall.py ..F
sshuttle/tests/client/test_helpers.py .......FF...
sshuttle/tests/client/test_methods_nat.py ........F
sshuttle/tests/client/test_methods_pf.py ..........FFF
sshuttle/tests/client/test_methods_tproxy.py ....F....F
sshuttle/tests/client/test_options.py ........
sshuttle/tests/client/test_sdnotify.py ......
sshuttle/tests/server/test_server.py .....

=================================== FAILURES ===================================
__________________________________ test_main ___________________________________

mock_get_method = <MagicMock name='get_method' id='4529715800'>
mock_setup_daemon = <MagicMock name='setup_daemon' id='4529490464'>
mock_rewrite_etc_hosts = <MagicMock name='rewrite_etc_hosts' id='4529713560'>

    @patch('sshuttle.firewall.rewrite_etc_hosts')
    @patch('sshuttle.firewall.setup_daemon')
    @patch('sshuttle.firewall.get_method')
    def test_main(mock_get_method, mock_setup_daemon, mock_rewrite_etc_hosts):
        stdin, stdout = setup_daemon()
        mock_setup_daemon.return_value = stdin, stdout

        mock_get_method("not_auto").name = "test"
        mock_get_method.reset_mock()

        sshuttle.firewall.main("not_auto", False)

        assert mock_rewrite_etc_hosts.mock_calls == [
            call({'<IP_ADDRESS>': 'existing'}, 1024),
            call({}, 1024),
        ]

        assert stdout.mock_calls == [
            call.write('READY test\n'),
            call.flush(),
            call.write('STARTED\n'),
            call.flush()
        ]
        assert mock_setup_daemon.mock_calls == [call()]
>       assert mock_get_method.mock_calls == [
            call('not_auto'),
            call().setup_firewall(
                1024, 1026,
                [(10, u'2404:6800:4004:80c::33')],
                10,
                [(10, 64, False, u'2404:6800:4004:80c::', 0, 0),
                    (10, 128, True, u'2404:6800:4004:80c::101f', 80, 80)],
                True),
            call().setup_firewall(
                1025, 1027,
                [(2, u'<IP_ADDRESS>')],
                2,
                [(2, 24, False, u'<IP_ADDRESS>', 8000, 9000),
                    (2, 32, True, u'<IP_ADDRESS>', 8080, 8080)],
                True),
            call().restore_firewall(1024, 10, True),
            call().restore_firewall(1025, 2, True),
        ]
E       AssertionError: assert [call('not_au...ET: 2>, True)] == [call('not_aut...025, 2, True)]
E         At index 1 diff: call().setup_firewall(1025, 1027, [(2, '<IP_ADDRESS>')], <AddressFamily.AF_INET: 2>, [(2, 24, False, '<IP_ADDRESS>', 8000, 9000), (2, 32, True, '<IP_ADDRESS>', 8080, 8080)], True) != call().setup_firewall(1024, 1026, [(10, '2404:6800:4004:80c::33')], 10, [(10, 64, False, '2404:6800:4004:80c::', 0, 0), (10, 128, True, '2404:6800:4004:80c::101f', 80, 80)], True)
E         Right contains more items, first extra item: call().restore_firewall(1024, 10, True)
E         Use -v to get the full diff

sshuttle/tests/client/test_firewall.py:116: AssertionError
_________________________ test_resolvconf_nameservers __________________________

mock_open = <MagicMock name='open' id='4530217984'>

    @patch('sshuttle.helpers.open', create=True)
    def test_resolvconf_nameservers(mock_open):
        mock_open.return_value = io.StringIO(u"""
    # Generated by NetworkManager
    search pri
    nameserver <IP_ADDRESS>
    nameserver <IP_ADDRESS>
    nameserver <IP_ADDRESS>
    nameserver <IP_ADDRESS>
    nameserver 2404:6800:4004:80c::1
    nameserver 2404:6800:4004:80c::2
    nameserver 2404:6800:4004:80c::3
    nameserver 2404:6800:4004:80c::4
    """)

        ns = sshuttle.helpers.resolvconf_nameservers()
>       assert ns == [
            (2, u'<IP_ADDRESS>'), (2, u'<IP_ADDRESS>'),
            (2, u'<IP_ADDRESS>'), (2, u'<IP_ADDRESS>'),
            (10, u'2404:6800:4004:80c::1'), (10, u'2404:6800:4004:80c::2'),
            (10, u'2404:6800:4004:80c::3'), (10, u'2404:6800:4004:80c::4')
        ]
E       AssertionError: assert [(<AddressFam...80c::2'), ...] == [(2, '192.168....80c::2'), ...]

No, but I'm not using a trusted connection right now. @fpletz Can you reproduce the issue with the reproduction steps I've mentioned?

I can indeed reprodce this on darwin.

Seems like tests shouldn't rely on the host's network configuration, especially since that'll break when we turn the Darwin sandbox back on. I'm surprised this works on Linux, come to think of it.

It looks like the darwin kernel does not support tproxy, but that probably is more of an upstream bug.

Fixed in nixpkgs-unstable.


can: iso-tp: implementation test failed with twister on nucleo_g474re

Describe the bug
Running the tests/subsys/canbus/isotp/implementation  with twister on the nucleo_g474re fails
The same test passed when running after west build and west flash and running twister --no-update
To Reproduce
Steps to reproduce the behavior:

twister --device-testing --device-serial /dev/ttyACM0 --disable-suite-name-check -p nucleo_g474re -T tests/subsys/canbus/isotp/implementation/
See error

Expected behavior
test passed
Logs and console output
*** Booting Zephyr OS build zephyr-v3.1.0-913-g6ede43b0789d  ***
Running TESTSUITE isotp
===================================================================
START - test_bind_unbind
PASS - test_bind_unbind in 2.509 seconds
===================================================================
START - test_send_receive_net_sf
PASS - test_send_receive_net_sf in 0.6 seconds
===================================================================
START - test_send_receive_net_blocks
PASS - test_send_receive_net_blocks in 1.20 seconds
===================================================================
START - test_send_receive_net_single_blocks
E: Reception of next FC has timed out
Assertion failed at WEST_TOPDIR/zephyr/tests/subsys/canbus/isotp/implementation/src/main.c:289: test_send_receive_net_single_blocks: (ret not equal to 0)
recv returned -14
Assertion failed at WEST_TOPDIR/zephyr/tests/subsys/canbus/isotp/implementation/src/main.c:55: send_complette_cb: (error_nr not equal to ISOTP_N_OK)
Sending failed (-2)
FAIL - test_send_receive_net_single_blocks in 1.65 seconds
===================================================================
START - test_send_receive_sf
Assertion failed at WEST_TOPDIR/zephyr/tests/subsys/canbus/isotp/implementation/src/main.c:91: get_sf: (ret not equal to 1)
recv returned -14
FAIL - test_send_receive_sf in 1.14 seconds
===================================================================
START - test_send_receive_blocks
E: No buffer for FF left
Assertion failed at WEST_TOPDIR/zephyr/tests/subsys/canbus/isotp/implementation/src/main.c:261: test_send_receive_blocks: (ret not equal to 0)
Binding failed (-11)
FAIL - test_send_receive_blocks in 0.18 seconds
===================================================================
START - test_send_receive_single_block
E: No buffer for FF left
Assertion failed at WEST_TOPDIR/zephyr/tests/subsys/canbus/isotp/implementation/src/main.c:313: test_send_receive_single_block: (ret not equal to 0)
Binding failed (-11)
FAIL - test_send_receive_single_block in 0.18 seconds
===================================================================
START - test_buffer_allocation
E: No buffer for FF left
Assertion failed at WEST_TOPDIR/zephyr/tests/subsys/canbus/isotp/implementation/src/main.c:390: test_buffer_allocation: (ret not equal to 0)
Binding failed (-11)
FAIL - test_buffer_allocation in 0.18 seconds
===================================================================
START - test_buffer_allocation_wait
E: No buffer for FF left
Assertion failed at WEST_TOPDIR/zephyr/tests/subsys/canbus/isotp/implementation/src/main.c:406: test_buffer_allocation_wait: (ret not equal to 0)
Binding failed (-11)
FAIL - test_buffer_allocation_wait in 0.18 seconds
===================================================================
TESTSUITE isotp failed.
===================================================================
RunID: 0ca4e10ffc023fffa65cc26e77dc6785
PROJECT EXECUTION FAILED

Environment (please complete the following information):

OS: ubuntu
Toolchain : zephyr-sdk-0.14.0
Commit SHA : 6ede43b0789d973d041bab0b61245248dcaf2f59

Confirmed. @alexanderwachter, @martinjaeger Any of you able to take a look at this? You are more familiar with the internal workings of ISO-TP than I am.

The same test passes on several other boards, including the lpcxpresso55s16 which uses the same Bosch M_CAN driver backend:
INFO    - 10705/10710 frdm_k64f                 tests/subsys/canbus/isotp/implementation/canbus.isotp.implementation PASSED (device 22.295s)
INFO    - 10706/10710 mimxrt1024_evk            tests/subsys/canbus/isotp/implementation/canbus.isotp.implementation PASSED (device 34.228s)
INFO    - 10707/10710 twr_ke18f                 tests/subsys/canbus/isotp/implementation/canbus.isotp.implementation PASSED (device 22.617s)
INFO    - 10708/10710 lpcxpresso55s16           tests/subsys/canbus/isotp/implementation/canbus.isotp.implementation PASSED (device 19.644s)
INFO    - 10709/10710 stm32f3_disco             tests/subsys/canbus/isotp/implementation/canbus.isotp.implementation PASSED (device 21.155s)
INFO    - 10710/10710 nucleo_g474re             tests/subsys/canbus/isotp/implementation/canbus.isotp.implementation FAILED Failed (device 9.651s)

@FRASTM, @alexanderwachter, @martinjaeger, @karstenkoenig, @str4t0m: I am tagging this issue as "future" as I do not foresee having the bandwidth to solve this before Zephyr v3.2. If any of you would like to attempt to address this for v3.2, please reach out.

Don't have enough time at the moment to take care of this either, so I agree to postpone.

recent PR #48995 and #48993 makes the tests/subsys/canbus/isotp/implementation PASSED on nucleo_g474re:
twister --device-testing --device-serial /dev/ttyACM0 --disable-suite-name-check -p nucleo_g474re -T tests/subsys/canbus/isotp/implementation/
*** Booting Zephyr OS build zephyr-v3.1.0-3684-gf3017aa787e7  ***
Running TESTSUITE isotp_implementation
===================================================================
START - test_bind_unbind
PASS - test_bind_unbind in 2.509 seconds
===================================================================
START - test_buffer_allocation
PASS - test_buffer_allocation in 1.551 seconds
===================================================================
START - test_buffer_allocation_wait
PASS - test_buffer_allocation_wait in 10.151 seconds
===================================================================
START - test_send_receive_blocks
PASS - test_send_receive_blocks in 0.455 seconds
===================================================================
START - test_send_receive_net_blocks
PASS - test_send_receive_net_blocks in 1.024 seconds
===================================================================
START - test_send_receive_net_sf
PASS - test_send_receive_net_sf in 0.006 seconds
===================================================================
START - test_send_receive_net_single_blocks
PASS - test_send_receive_net_single_blocks in 0.166 seconds
===================================================================
START - test_send_receive_sf
PASS - test_send_receive_sf in 0.006 seconds
===================================================================
START - test_send_receive_single_block
PASS - test_send_receive_single_block in 0.166 seconds
===================================================================
TESTSUITE isotp_implementation succeeded
------ TESTSUITE SUMMARY START ------
SUITE PASS - 100.00% [isotp_implementation]: pass = 9, fail = 0, skip = 0, total = 9 duration = 16.034 seconds
- PASS - [isotp_implementation.test_bind_unbind] duration = 2.509 seconds
- PASS - [isotp_implementation.test_buffer_allocation] duration = 1.551 seconds
- PASS - [isotp_implementation.test_buffer_allocation_wait] duration = 10.151 seconds
- PASS - [isotp_implementation.test_send_receive_blocks] duration = 0.455 seconds
- PASS - [isotp_implementation.test_send_receive_net_blocks] duration = 1.024 seconds
- PASS - [isotp_implementation.test_send_receive_net_sf] duration = 0.006 seconds
- PASS - [isotp_implementation.test_send_receive_net_single_blocks] duration = 0.166 seconds
- PASS - [isotp_implementation.test_send_receive_sf] duration = 0.006 seconds
- PASS - [isotp_implementation.test_send_receive_single_block] duration = 0.166 seconds
------ TESTSUITE SUMMARY END ------
===================================================================
RunID: 5b4c4cfd7f0ac3e07fce7a5192a2892b
PROJECT EXECUTION SUCCESSFUL

testcase PASSED on nucleo_g474re

I can still reproduce it on b6fadd16001b9680918cf897af2d3a7d52fd73b6.

I have been digging some more into this issue. The twr_ke18f consistently fail the ISO-TP conformance tests, but running the tests with -DCONFIG_MCUX_LPTMR_TIMER=n -DCONFIG_CORTEX_M_SYSTICK=y makes the test pass.
This looks like an issue related to the resolution of the system timer. Whether it only effects the tests or also the actual ISO-TP implementation is yet unknown.

True, I see the tests PASSED with  latest main 0934f705ebc2dc9bd6d6e1ce712504ef7269c76d

Ok. I cannot reproduce failure in the tests/subsys/canbus/isotp/implementation/ tests, only the tests/subsys/canbus/isotp/conformance/ tests seem to be affected by the ticks per second setting.
I have opened #54254 for that instead. Closing this one.


Update Get-CsOnlineDirectoryTenant.md - Deprecation Info

Docs Build status updates of commit bded58d:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

skype/skype-ps/skype/Get-CsOnlineDirectoryTenant.md
:white_check_mark:Succeeded
View (skype-ps)

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching the docs.microsoft.com contributor guidesPost your question in the Docs support channel

Copy review - @isrumnon, kindly commit the suggested changes. Many thanks.

Done!

Docs Build status updates of commit f25402b:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

skype/skype-ps/skype/Get-CsOnlineDirectoryTenant.md
:white_check_mark:Succeeded
View (skype-ps)

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching the docs.microsoft.com contributor guidesPost your question in the Docs support channel

Hi @isrumnon,
When 4.0 is arriving? Should we add this here in advance? Thanks!

@dariomws done!

Docs Build status updates of commit 2046faa:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

skype/skype-ps/skype/Get-CsOnlineDirectoryTenant.md
:white_check_mark:Succeeded
View (skype-ps)

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching the docs.microsoft.com contributor guidesPost your question in the Docs support channel

Docs Build status updates of commit aa167fe:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

skype/skype-ps/skype/Get-CsOnlineDirectoryTenant.md
:white_check_mark:Succeeded
View (skype-ps)

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching the docs.microsoft.com contributor guidesPost your question in the Docs support channel

@tseward


When I use sdk to publish and subscribe, my subscription is not available, and no error is reported. What problems can cause this phenomenon

my code is
@RestController
public class MessageSubscriberController {
/**
* Handles a registered publish endpoint on this app.
* @return A message containing the time.
*/
@Topic(name = "app_create", pubsubName = "pubsub")
@PostMapping(path = "/app_create")
public Mono handleMessage(@RequestBody(required = false) byte[] body) {
return Mono.fromRunnable(() -> {
try {
System.out.println("Subscriber got: " + new String(body));
} catch (Exception e) {
throw new RuntimeException(e);
}
});
}
}
and redis data is:
{"data":"{"topic":"app_create","data":"{\"name\":\"spa\",\"id\":\"I7x68nf3E4B4d2x95aq8spIa31sztcs7\",\"tenant\":\"http://demo.cipherchina.com:8444\"}","id":"f2986fbe-8cbd-4ac4-b04b-95f3e9f70bcc","specversion":"1.0","source":"app","traceid":"00-0de2b2b1589b711e465ed07b796419a9-0983524c9a443b89-01","expiration":"2021-09-10T07:13:13Z","datacontenttype":"application/json","type":"com.dapr.event.sent","pubsubname":"pubsub"}"}
my subscription cannot be accepted  What caused this

Do you have Spring configured correctly for your app? Is it listening to a port?


chore: sms opt in changes

PR summary
SMS opt in changes
Fixes: <! -- link to issue -->
PR Checklist
Please make sure that your PR fulfills the following requirements:

[x] The commit message follows the Angular Commit Message Guidelines.
[x] Tests for the changes have been added (for bug fixes / features)
[x] Docs have been added / updated (for bug fixes / features)

PR Type

[ ] Bugfix
[x] Feature
[ ] Code style update (formatting, local variables)
[ ] Refactoring (no functional changes, no api changes)
[x] New tests
[ ] Build/CI related changes
[ ] Documentation content changes
[ ] Other (please describe)

What is the current behavior?
sms opt in was not there
What is the new behavior?
added sms opt in feature as per the standards
Does this PR introduce a breaking change?

[ ] Yes
[x] No

Other information

Signed-off-by: Nitish Kulkrani<EMAIL_ADDRESS>

:tada: This PR is included in version 0.1.7 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Something about the Equation in paper

In the equation 29, is (i - 1) or (j - 1)?

yes you are right, it should be (i-1), we have updated the equation in our lastest version. Thanks for pointing this out!

I don't understand why your modification of the code lead to the equation  29, as hidden states are initialized in a different way but the updation remains the same.  Thank you!


Integration test fixes

Addressing Issue 104:
I have improved the auction test to check all error codes and scenarios.  I added the code to extract out the actual response payload from the info returned from the peer, and a function to be able to test on the response code.
I track how many failures occur and report at the end.
Ultimately, we will have a better integration test, but this will work for now.  I am pushing the code for auction first and will upgrade echo next.
I also added a green text function to the fabric utilities.

Turns out I don't see any changes that need to be made to Echo or Deployment tests except integrating the changes from PR 144. Please comment if there are other changes that should be made.

Turns out I don't see any changes that need to be made to Echo or Deployment tests except integrating the changes from PR 144. Please comment if there are other changes that should be made.

I would have assumed you also want to check the response for the other tests? E.g., that echo returns the expected value?  But then maybe i misunderstood your question above?

I was looking at the fact that there aren't any error conditions to test on.  I will confirm that it returns what it is called with.

@mbrandenburger Don't merge yet. I am going to restructure the try_r and check_result functions to move the string processing into check_result(). We can probably get rid of try_r () function and just change the try() function.

Ouch! Almost merged as it has many approvals already! Please change to WIP if still not ready to merge.

@mbrandenburger It is ready to merge now.  If everyone has reviewed.  I didn't change the description.  Not sure who took off the WIP.


formating of dates, numbers and more

I've been discussing the viability of mustache as a templating solution with a colleague and he raised some questions about a lacking key feature; formating. And I tend to agree with him - having this as part of the mustache spec would be very helpful.
The string representation of a date or time, the numbers of decimals of a price or the number of characters shown shouldn't be part of your viewmodel - it should (in a perfect world) be handled by the templating language.
I'm thinking something along the lines of being able to define a "format" in some form immediately after the variable name:
{
    price: 2.7532
}

{{price:0.00}}USD

2.75USD

I know JSON doesn't support a native date representation - maybe just treat an ISO datestring as a date object and present it through a format like php's date function (other formats might be more fitting/standard)?
I'm sorry if this issue has been raised a thousand times (it seems so obvious somehow) - but I haven't been able to find an answer to this yet ;D

What's the latest news?


Error with PCA / UMAP example

Testing the examples in Notebook, I'm encountering an error on the UMAP example.  Any ideas?

# orig_chart = emb.plot_interactive('man', 'woman')
pca_plot = emb.transform(pca(2)).plot_interactive('pca_0', 'pca_1')

emb.transform(umap(2)).plot_interactive('umap_0', 'umap_1')

<ipython-input-5-18f8db210390> in <module>
      2
      3 # orig_chart = emb.plot_interactive('man', 'woman')
----> 4 pca_plot = emb.transform(pca(2)).plot_interactive('pca_0', 'pca_1')
      5
      6 emb.transform(umap(2)).plot_interactive('umap_0', 'umap_1')

TypeError: 'module' object is not callable```

Ah! This is a capitalisation issue. From the top of my head:
from whatlies.transformer import Pca
pca_plot = emb.transform(Pca(2)).plot_interactive('pca_0', 'pca_1')

This is because the Pca object is implemented over at whatlies.transformer.pca. We should correct this because this is a common error. It would be better if our internal files followed the following name convention: whatlies.transformer._pca. This way you'd not get this error.

Would you mind if I change the name of this issue to reflect the internal name change that needs to happen?

That did the trick. Thank you!  Feel free to change the issue name.
I'm loving the library btw -- word analysis has taken the place of sleep this evening.

I'm happy to hear you enjoy the library!
If you ever end up doing something interesting with our tool, feel free to reach out and share it with us. We're trying to collect interesting examples here and we're certainly open to contributions.


step_info overshoot error

Hi, the overshoot calculate by step_info function is wrong for this transfer function:
import control as ctrl #control 0.8.3
import matplotlib.pyplot as plt #matplotlib 3.2.2

transferFunction = ctrl.tf([0.6287,37.74,774.4,5797,7515],[1.629,45.74,788.4,5809,7515])

time, out = ctrl.step_response(transferFunction)

plt.figure()
plt.grid()
plt.plot(time, out)

ctrl.step_info(transferFunction)

{'RiseTime': 0.051990934709959705,
'SettlingTime': 0.4289252113571676,
'SettlingMin': 0.9121688025464874,
'SettlingMax': 1.1826717168233585,
'Overshoot': 29.748622946474416,
'Undershoot': 0.3859422958870473,
'Peak': 1.1826717168233585,
'PeakTime': 0.13430991466739592,
'SteadyStateValue': 0.9999984629917944}

Thanks for bringing up the issue @juanodecc. I can confirm, although the plot is smoother with the new timevector calculation in 0.8.4 (#420), that the Overshoot value is still not what you would expect.

https://github.com/python-control/python-control/blob/8cba9493ab1efa54577846a421fe3ed7b2893339/control/timeresp.py#L817
yout[0] here is 0.386 instead of 0. Not sure, why this is referenced here. The step_response() of a system without any further specification of initial values should start from default initial value of 0.
@sawyerbfuller, do you think the response vector calculation should be adjusted or just the calculation of Overshoot?

This is a good catch. out[0] is not zero because this is not a strictly proper transfer function: the order of the numerator and denominator are the same.
My take on it is that the overshoot calculation has a bug that neglects this case. It should not depend on the value of yout[0].


Force usernames to start with a letter.

Closes: #1
Fixes #<issue_number_goes_here>

It's a good idea to open an issue first for discussion.

[ ] Tests pass
[ ] Appropriate changes to README are included in PR

Now I have signed a CLA.

Unfortunately, I couldn't find a way to trigger again the checks without creating a new commit.

The git history of this forked repository was overwritten by an interactive rebase. Check the comment above and its UPDATE section.


[security] Prototype pollution

Hello,
Snyk report a low security issue in<EMAIL_ADDRESS>due to<EMAIL_ADDRESS>usage
https://snyk.io/test/npm/fsevents/1.1.3?severity=high&severity=medium&severity=low
Is<EMAIL_ADDRESS>could be updated to<EMAIL_ADDRESS>where the issue is fixed
https://snyk.io/test/npm/node-pre-gyp/0.9.0?severity=high&severity=medium&severity=low
?
(issue was already fixed in<EMAIL_ADDRESS>and<EMAIL_ADDRESS>Thanks

Duplicate of #198 and others.  Will be fixed in the next release but it's basically a non-issue.


Updated range-formats in "acceptable formats"

The examples showed in "Acceptable formats" used the word *through" instead of what is actually accepted in PowerShell. Updated them to reflect real world scenarios to avoid confusion.

 Thank you for your submission, we really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.:x: roberthstrand sign nowYou have signed the CLA already but the status is still pending? Let us recheck it.

@JohanFreelancer9 Minor style checks is needed for this community contributed PR. Thanks.

@dariomws306 @get-itips @tseward
Peer review needed for this PR. Thanks.

Looks good.

Looks good.

@get-itips Any additional thoughts? Thanks.

Ok

@AndreaBarr This PR can be merged. Thanks.


Thaddius Maesun adjustment

#182

Gains spell at enlightened to replace banish shadow

I accidentally duplicated this in #287, which is now closed. This can be closed as well


IMX347 detected as IMX335

board MC-K45 ( SSC30KQ / IMX347 )
https://github.com/OpenIPC/ipctool/blob/792242207cc594ef38b708143cbd32eb84d3bdbe/src/sensors.c#L91
I think something like this would be better
int sensor_id = READ(0x57); // 0x3057
switch(sensor_id) {
  case 0x06: // IMX347
  break;
  case 0x07: // IMX335
  break;
}

Please fell free to make a PR, don't have IMX347 to test it but can test on IMX335 still


how to test if the encryption is working

Hi,
thanks for creating this wonderful plugin.
I have a question: How can I test if the encryption is working. If I run this code, it always displays me "abcd" on the console.
`
import * as appSettings from "tns-core-modules/application-settings";
import { SecureStorage } from "nativescript-secure-storage";
let secureStorage = new SecureStorage();
const success = secureStorage.setSync({
key: 'a',
value: 'abcd'
});
// I would expect the following statement to return me some encrypted text, but it returns "abcd"
console.log(appSettings.getString("a"));
// following statement displays "abcd"
console.log(secureStorage.getSync({ key: "a" }));
`
Any ideas? Or am I getting the concept wrong?

If getSync would return encrypted data then how would you be able to read it? So that's not how it works.
You put readable data into secure storage, and get the same readable data back when reading from seccure storage.
Without inspecting the encrypted data directly on the filesystem you have no way of verifying it's actually encrypted. But the plugin is open source so you can check the sourcecode and study how the native libraries used go about encrypting the data.

ok, thank you for your fast reply!


Consider not using webpack at all, ot at least being consistent about what we webpack and what we don't

Now that we're not gulping (https://github.com/mozilla/tofino/issues/76), and as of today babeling everything (https://github.com/mozilla/tofino/pull/142), we should consider not using webpack anymore. AFAICT, currently the only benefit of webpack is that we're able to use json loaders and import directly from json files. Since we're probably not going to rely on any other loaders [js and jsx are handled by babel, css is handled by react-free-style (https://github.com/mozilla/tofino/issues/113)], webpack has no real benefit.

@jsantell @Mossop what do you think?

Node already supports loading from json directly IIRC. My understanding is that the only thing webpack gives us at this point is packing all the module dependencies into one file. I don't know what that buys us. Maybe some perf? Probably only the same as if we used electron's asar thing but it complicated things.
I have heard that webpack has some support for dead code removal so maybe that might be useful, but at this early stage I don't think it is worth doing work for file size optimizations.

At the very least we should be consistent. We're webpacking the browser ui code, but not the main process code.

@Mossop Can we use require for files loaded in html documents? Currently we use webpack to bundle everything into lib/ui/browser.js, which is included as a script in static/browser.html, which is loaded by the main process code in app/main/browser.js. If we don't use webpack, do you know if modules would just work? Maybe we can't get rid of webpack after all.

Code loaded in BrowserWindows can use require and other node stuff just fine (unless you turn off nodeIntegration). Electron creates a node context and then appears to copy the require, process and other bits into the global for the html document.

Nice!


Add support for RFC 5940

Add module and test for RFC 5940

Codecov Report

Merging #41 into master will increase coverage by <.01%.
The diff coverage is 100%.

@@            Coverage Diff             @@
##           master      #41      +/-   ##
==========================================
+ Coverage   99.03%   99.03%   +<.01%
==========================================
  Files          42       43       +1
  Lines        3714     3726      +12
==========================================
+ Hits         3678     3690      +12
  Misses         36       36

Impacted Files
Coverage Δ

pyasn1_modules/rfc5940.py
100% <100%> (ø)

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 61b5149...c3db5af. Read the comment docs.

Awesome, thank you!


Upgrade release wrapper with Kotlin 1.8.10

This is a follow up to

https://github.com/gradle/gradle/pull/23749

@bot-gradle test and merge

I've triggered a build for you.


Create raw data-store concept

Rename database classes and packages for new raw-datastore concept
Move ygojson-id UUID-generator logic to new package (only some functionality)
Add Raw data-store basic implementation (with tests)

The codacy issue is about a field that is not yet used, but will be in follow-up implementation. Merging anyway.


create a "comprehensive list of kata to retire" accessible through the wiki

hi,
we already have something about troubles with the runner, duplicates, ... But that one is really lacking, imo. We could list there the katas that are beyond hope of restoration and/or are without any interest. That would be a starting point for the day we'll be able to purge the data base.
cheers
Note: close to the topic: https://github.com/Codewars/codewars.com/issues/940 The katas discussed there could be in that list.

mmm... Maybe that would be too close to the list of duplicates? thing is: some of them aren't duplicates. Maybe just change a bit the name of the list of duplicates, rather?

If you want to maintain a separate list, you can create a page and add it to the sidebar.

:+1:


pty.Getsize panics when pty.GetsizeFull returns an error

The function pty.Getsize in winsize.go is basically a wrapper for pty.GetsizeFull which returns a reference to a winsize struct and an error. If there is an error in GetsizeFull, the winsize will be nil. The winsize object, however, is accessed (ws.Rows and ws.Cols) without checking for an error here: https://github.com/creack/pty/blob/b135084511330383e4d0adc4504cf407cab59bb0/winsize.go#L23
This will cause a panic when GetsizeFull returns an error and winsize is nil. I believe a simple error check before accessing ws.Rows and ws.Cols would solve the problem?

Good catch! Thanks for pointing it out. Now fixed.


$listeners is readonly error

Version
1.0.0-beta.14
Reproduction link
https://codesandbox.io/s/0y2o4p8zvv
Steps to reproduce
Visit reproduction link.
What is expected?
Should not warn
What is actually happening?
Warn that $listerns and $attrs is readonly

@eddyerburgh Same problem here. Happened directly after upgrading from vue-test-utils Beta 12 to Beta 13! However, the problem stayed after upgrading from Beta 13 to Beta 14.

Might be related to #534

This is caused by the changes in beta.12 where we set all watchers to sync.
We set all watchers to sync, including the update watcher. This causes a re-render when the comonent updates the attrs. Then before the listeners have been updated, isUpdatingChildComponent is set to false, so when the listeners are mutated, the warning is logged.

Was able to circumvent this with localVue
import { createLocalVue } from '@vue/test-utils'
import Vuetify from 'vuetify'

const localVue = createLocalVue()
localVue.use(Vuetify)

Is there a workaround for this/plan to resolve?

The plan to resolve is to add an async option to Vue that we will set to false. I have a PR open but it won't be added until Vue 2.6 in a months time.
The only solution I can think of for this issue is to set Vue to silent when running update watchers.
You can see more info on the synchrnous issue —https://github.com/vuejs/vue-test-utils/issues/676

How can I silence these warnings?

@ticdenis, I believe @eddyerburgh is recommending you set Vue to silent.  See the documentation.
Vue.config.silent = true

Suppress all Vue logs and warnings.

Thanks! My mistake in silencing was to try it with the localVue instance.

I'm getting the following logged when running a test which appears related to this issue.
console.error node_modules/vue/dist/vue.runtime.common.js:589                                                                               [3/1000]
    [Vue warn]: $listeners is readonly.

    found in

    ---> <VAutocomplete>
           <Users>
             <Root>

  console.error node_modules/vue/dist/vue.runtime.common.js:589
    [Vue warn]: Avoid mutating a prop directly since the value will be overwritten whenever the parent component re-renders. Instead, use a data or co
mputed property based on the prop's value. Prop being mutated: "items"

    found in

    ---> <VAutocomplete>
           <Users>
             <Root>

  console.error node_modules/vue/dist/vue.runtime.common.js:589
    [Vue warn]: Avoid mutating a prop directly since the value will be overwritten whenever the parent component re-renders. Instead, use a data or co
mputed property based on the prop's value. Prop being mutated: "selectedItems"

    found in

    ---> <VSelectList>
           <VMenu>
             <VAutocomplete>
               <Users>
                 <Root>

I set Vue.config.silent = true in my test\unit\index.js file as suggested above by @eddyerburgh but this is not surpressing errors.
I have also tried using $nextTick and async/await with flushPromises() to see if either of those methods would work here but no such luck.
Here is what this particular test looks like.
import { shallowMount, createLocalVue } from '@vue/test-utils';
import Vuex from 'vuex';
import Vuetify from 'vuetify';
import Users from '@/components/Users';

addElemWithDataAppToBody();

describe('Users.vue', () => {
  test('should render correct contents', () => {
    const localVue = createLocalVue();
    localVue.use(Vuetify);
    localVue.use(Vuex);

    // For Vuex
    let storeOptions;
    let store;

    storeOptions = {
      actions: {
      },
      getters: {
        shouldRefreshUser: jest.fn(),
      }
    };

    store = new Vuex.Store(storeOptions);

    let wrapper = shallowMount(Users, {store, localVue});

    let response = {
      results: [
        { name_uiowadisplay: 'Banana' },
        { name_uiowadisplay: 'Apple' },
        { name_uiowadisplay: 'Dragon Fruit' },
        { name_uiowadisplay: 'Cantaloupe' },
      ]
    };

    wrapper.vm.setSearchResults(response);

    expect(response.results[0].name_uiowadisplay).toBe('Apple');
    expect(response.results[1].name_uiowadisplay).toBe('Banana');
    expect(response.results[2].name_uiowadisplay).toBe('Cantaloupe');
    expect(response.results[3].name_uiowadisplay).toBe('Dragon Fruit');

  });
});

/**
 * Adds a warapping `div data-app="true"` to the body so that we don't
 * get Vuetify complaining about missing data-app attribute for some components.
 *
 * @return undefined
 */
function addElemWithDataAppToBody() {
  const app = document.createElement('div');
  app.setAttribute('data-app', true);
  document.body.append(app);
};

I had the same issue @bigtunacan.  Modifying mount to use sync: false with the beta.16 version fixed the issue for me.
let wrapper = shallowMount(Users, { store,  localVue, sync: false })
My entire file looks like this (stubbing a child component, and we use apollo link state instead of Vuex).
import { mount, createLocalVue } from '@vue/test-utils'
import Vuetify from 'vuetify'
import VeeValidate from 'vee-validate'
import Component from '../search-panel'

const localVue = createLocalVue()
Vuetify.install(localVue)
localVue.use(VeeValidate)

describe('@components/search-panel', () => {
  let errors
  let $validator
  let $apollo

  beforeEach(() => {
    // Stub out errors to handle VeeValidate error display.
    errors = {
      any: jest.fn(),
      first: jest.fn(),
      split: jest.fn()
    }
    // Stub out Apollo so that calls are not made to the store or server.
    $apollo = {
      mutate: jest.fn(),
      query: jest.fn()
    }
    // Stub out VeeValidate validator
    $validator = new VeeValidate.Validator()

    // Handle errors with Vuetify not being able to locate the data-app target by stubbing an attribute.
    const el = document.createElement('div')
    el.setAttribute('data-app', true)
    document.body.appendChild(el)
  })

  it('has edit fields', () => {
    const wrapper = mount(Component, {
      localVue,
      sync: false,
      stubs: {
        MapInput: "

"
      },
      mocks: {
        errors,
        $apollo,
        $validator
      }
    })
    const fields = wrapper.findAll('.search-field')
    const fieldLabels = fields.wrappers.map(w => w.find('label').text())
    expect(fieldLabels.some(fl => fl === 'Mission ID')).toBeTruthy()
    expect(fieldLabels.some(fl => fl === 'Owner')).toBeTruthy()
    expect(fieldLabels.some(fl => fl === 'Agency')).toBeTruthy()
    expect(fieldLabels.some(fl => fl === 'Objects Detected')).toBeTruthy()
    expect(fieldLabels.some(fl => fl === 'Start Date')).toBeTruthy()
    expect(fieldLabels.some(fl => fl === 'Start Time')).toBeTruthy()
    expect(fieldLabels.some(fl => fl === 'End Date')).toBeTruthy()
    expect(fieldLabels.some(fl => fl === 'End Time')).toBeTruthy()
    expect(fieldLabels.some(fl => fl === 'Description')).toBeTruthy()
    expect(fieldLabels.some(fl => fl === 'Show Deleted')).toBeTruthy()
    expect(fieldLabels.some(fl => fl === 'Enterprise')).toBeTruthy()
  })

})

I was facing this problem while dealing with a component that was using :visible.sync and made use of transitions and solved by using:
{
  stubs: {
    transition: false
  }
}

I'm not sure if all cases are related to these specific settings but, maybe it can be helpful for people facing similar problems.

Is there any progress?

I believe the fix here is waiting on 2.5.18 for Vue. We have also refactored the entire bootstrap process but it is a breaking change that won't come until 2.0

The issue is still there

The fix relies on #1062


Add wait for condition for toggle test

This PR:

adds wait for condition for toggle test in setup method.
changed the APIs to get the list of instance configs in cached data accessor.

Codecov Report

Merging #4662 into master will increase coverage by 21.71%.
The diff coverage is 100%.

@@              Coverage Diff              @@
##             master    #4662       +/-   ##
=============================================
+ Coverage     42.97%   64.69%   +21.71%
- Complexity        0       16       +16
=============================================
  Files          1056     1056
  Lines         56200    56200
  Branches       8330     8330
=============================================
+ Hits          24152    36357    +12205
+ Misses        29917    17136    -12781
- Partials       2131     2707      +576

Impacted Files
Coverage Δ
Complexity Δ

...ntroller/helix/core/PinotHelixResourceManager.java
61.55% <100%> (+24.44%)
0 <0> (ø)
:arrow_down:

...n/java/org/apache/pinot/core/transport/Server.java
59.25% <0%> (-7.41%)
0% <0%> (ø)

...thandler/SingleConnectionBrokerRequestHandler.java
84.09% <0%> (-4.55%)
0% <0%> (ø)

...pache/pinot/core/util/SortedRangeIntersection.java
83.82% <0%> (-4.42%)
0% <0%> (ø)

...org/apache/pinot/client/DynamicBrokerSelector.java
69.69% <0%> (-3.04%)
0% <0%> (ø)

...der/HighLevelConsumerBasedRoutingTableBuilder.java
90.9% <0%> (-3.04%)
0% <0%> (ø)

...e/impl/dictionary/LongOnHeapMutableDictionary.java
64.63% <0%> (-2.44%)
0% <0%> (ø)

...pinot/core/operator/docidsets/OrBlockDocIdSet.java
84.9% <0%> (-1.89%)
0% <0%> (ø)

...er/routing/builder/RoutingTableInstancePruner.java
84.21% <0%> (ø)
0% <0%> (ø)
:arrow_down:

...r/validation/RealtimeSegmentValidationManager.java
81.96% <0%> (ø)
0% <0%> (ø)
:arrow_down:

... and 575 more

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 8a80760...05a3778. Read the comment docs.

Don't change the test. We need to fix the code

This PR isn't needed any more. Closing this PR.


Create Konserter “index”

Automatically generated by Netlify CMS

👷 Deploy Preview for xenodochial-jang-0ad7f2 processing.
🔨 Explore the source changes: 39f6d695a3f448de7d56b54408ee714ca849d06a
🔍 Inspect the deploy log: https://app.netlify.com/sites/xenodochial-jang-0ad7f2/deploys/61393c57696dc40008d900d6


Unable to load asset: icons/google.png

Error while trying to load an asset: Failed to load asset at "assets/icons/google.png" (404)
══╡ EXCEPTION CAUGHT BY IMAGE RESOURCE SERVICE ╞════════════════════════════════════════════════════
The following assertion was thrown resolving an image codec:
Unable to load asset: icons/google.png
When the exception was thrown, this was the stack:
C:/b/s/w/ir/cache/builder/src/out/host_debug/dart-sdk/lib/internal/js_dev_runtime/private/ddc_runtime/errors.dart 266:49  throw
packages/flutter/src/services/asset_bundle.dart 258:7                                                                      load
C:/b/s/w/ir/cache/builder/src/out/host_debug/dart-sdk/lib/_internal/js_dev_runtime/patch/async_patch.dart 45:50
C:/b/s/w/ir/cache/builder/src/out/host_debug/dart-sdk/lib/async/zone.dart 1653:54                                          runUnary
C:/b/s/w/ir/cache/builder/src/out/host_debug/dart-sdk/lib/async/future_impl.dart 147:18                                    handleValue
C:/b/s/w/ir/cache/builder/src/out/host_debug/dart-sdk/lib/async/future_impl.dart 766:44                                    handleValueCallback
C:/b/s/w/ir/cache/builder/src/out/host_debug/dart-sdk/lib/async/future_impl.dart 795:13                                    _propagateToListeners
C:/b/s/w/ir/cache/builder/src/out/host_debug/dart-sdk/lib/async/future_impl.dart 566:5                                     [_completeWithValue]
C:/b/s/w/ir/cache/builder/src/out/host_debug/dart-sdk/lib/async/future_impl.dart 639:7                                     callback
C:/b/s/w/ir/cache/builder/src/out/host_debug/dart-sdk/lib/async/schedule_microtask.dart 40:11                              _microtaskLoop
C:/b/s/w/ir/cache/builder/src/out/host_debug/dart-sdk/lib/async/schedule_microtask.dart 49:5                               _startMicrotaskLoop
C:/b/s/w/ir/cache/builder/src/out/host_debug/dart-sdk/lib/_internal/js_dev_runtime/patch/async_patch.dart 166:15
Image provider: AssetImage(bundle: null, name: "icons/google.png")
Image key: AssetBundleImageKey(bundle: PlatformAssetBundle#1514c(), name: "icons/google.png", scale:
1)
════════════════════════════════════════════════════════════════════════════════════════════════════

hi @khalid5555 ,
This does not seem to be a getwidget issue, you can raise here in related git repo.

is it fixed? if not can assign to me

Hi, @khalid5555 Please check
https://github.com/ionicfirebaseapp/getwidget/issues/313


Vision problems and models cleanup

added LeNet5 model (fixes #17 )
cleaned MNIST and CIFAR problems
cleaned SimpleCNN and AlexNet models
cleaned 5 related configuration files (added SubsetRandomSamplers, removed invalid options etc.)

fixes #53

This pull request introduces 3 alerts when merging 0bdfb99c83447b9115520eba87fd4ff0966d8c60 into 1ef2a445014153fcf3428343601846cd510105a0 - view on LGTM.com
new alerts:

3 for Unused import

Comment posted by LGTM.com


Fix BGR rendering

See https://github.com/alacritty/alacritty/issues/4100.
To my understanding, the issue is that freetype does not care about the subpixel order. It only differentiates between LCD and LCD_V and then generates a bitmap that either has threetimes the pixels in horizontal or vertical direction. We need to manually convert it into an RGB bitmap. Currently, this does not take into account the subpixel layout.
Arguably, my code is somewhat inelegant, but I thought it would still be better to try to fix this myself rather than just complain...

This is the equivalent code in cairo:
https://github.com/freedesktop/cairo/blob/1676935768b888b3e4038b6dddb4f6362c137345/src/cairo-ft-font.c#L1107
I suppose I could also do this directly in the normalize_buffer function. Would that be preferable to you?

This is the equivalent code in cairo:
https://github.com/freedesktop/cairo/blob/1676935768b888b3e4038b6dddb4f6362c137345/src/cairo-ft-font.c#L1107

I'm not sure if it is. This seems to always do a lot of conversions even in cases where it shouldn't be necessary.

It seems like maybe something like https://www.freetype.org/freetype2/docs/reference/ft2-lcd_rendering.html#ft_library_setlcdgeometry could help. Though I'm not sure if that works by default.

This function does nothing and returns FT_Err_Unimplemented_Feature in the context of ClearType-style subpixel rendering when FT_CONFIG_OPTION_SUBPIXEL_RENDERING is defined in your build of the library.

Sounds to me like this might not work, depending on how the user's libfreetype is compiled. The freetype-sys create does not seem to expose the function.
Could you maybe elaborate what your performance concerns are? normalize_buffer already copies the bitmap pixel by pixel. I don't think changing the order there (as opposed to my original implementation as an additional pass) will impact performance measurably. I haven't profiled this, but I would suspect that even an additional pass should be negligible compared to time freetype takes for actually rendering the glyph, but I understand that you want as little overhead as possible.

normalize_buffer already copies the bitmap pixel by pixel

Even more of a reason not to do it twice, especially in cases where it's just a no-op.

Oh, my RGB->BGR iteration already only runs if necessary.
        if face.reverse_rgb {
            if let BitmapBuffer::RGB(v) = &mut buf {
                for i in (0..v.len()).step_by(3) {
                    v.swap(i, i + 2);
                }
            }
        }

As previously mentioned, this could aslo be done directly in the normalize_buffer function:
            PixelMode::Lcd => {
                for i in 0..bitmap.rows() {
                    let start = (i as usize) * pitch;
                    let stop = start + bitmap.width() as usize;
                    if bgr {
                        for j in (start..stop).step_by(3) {
                            packed.push(buf[j + 2]);
                            packed.push(buf[j + 1]);
                            packed.push(buf[j]);
                        }
                    } else {
                        packed.extend_from_slice(&buf[start..stop]);
                    }
                }
                Ok((bitmap.rows(), bitmap.width() / 3, BitmapBuffer::RGB(packed)))
            },
            PixelMode::LcdV => {
                for i in 0..bitmap.rows() / 3 {
                    for j in 0..bitmap.width() {
                        for k in 0..3 {
                            let offset = ((i as usize) * 3 + if bgr {2 - k} else { k }) * pitch + (j as usize);
                            packed.push(buf[offset]);
                        }
                    }
                }
                Ok((bitmap.rows() / 3, bitmap.width(), BitmapBuffer::RGB(packed)))
            },

Oh, my RGB->BGR iteration already only runs if necessary (so it will never touch the data twice if not necessary).

It will touch the data twice, because the normalize_buffer function already touches it once.

Yes, that is why I proposed the above modification to the normalize_buffer function. Then it will only iterate over the data once. Would that be an acceptable solution for you? If so, I would change my pull request to that.

It would certainly be preferable, yes. Though I'd have to check myself in which of the branches it's even necessary.

Sure. I just pushed the changes.

Emoji work fine. According to the documentation Bgra is only used for color images, so it will not do any subpixel rendering.
There was a bug in the code where in the LcdV branch I matched againt Bgr and not Vbgr which I fixed.
To test different layouts, you can use in ~/.fonts.conf.
 <match target="font">
  <edit mode="assign" name="rgba">
   <const>bgr</const>
  </edit>
 </match>

Here are screenshots of all 4 subpixel layouts:
RGB:

BGR:

VRGB:

VBGR:

For comparison, here are all four layouts.

As for bgr it looks different, but I can't say much about it, since my monitor has rgb layout, but one thing that I can say that it's blurry compared to what it was, but if it was crisp on rgb display, then I guess it's expected?

Yes, that's exactly how it should be. Thanks for testing, LGTM.


Correct mismatched code examples

fix a bug that code examples don't match the corresponding descriptions  in section "存储Pod字段" and "存储容器字段" .

/assign @markthink

/lgtm
thanks
it seems that this translation is outdated.
see https://github.com/k8smeetup/website-tasks/issues
It would be best if you could update the translation of this file.