Change number of iteration of MCM when fitting the model

Hi Will,
first of all, thank you and congrats for the gret work of translating this package in Python.
In my company I am currently working on implementing a Causal Inference use case, by using your library, and I am struggling with the possibility of changing the number of iteration of the Markov Chain estimation procedure.
Particularly in the docstring I see that in model_args there is not the possibility to set the niter argument, anyway when I run ci.model_args,  I get as output this dictionary
{'standardize': True,
'prior_level_sd': 0.01,
'nseasons': 7,
'season_duration': 1,
'fit_method': 'hmc',
'niter': 1000}
which is making me thinking that changing the number of iteration it is actually possible.
In the light of this idea I have tried to run the following code
ci = CausalImpact(data, pre_period, post_period, model_args= {"standardize" : True, "prior_level_sd" : 0.01,
"nseasons" : 7, "season_duration" : 1, "fit_method" : "hmc", "niter" : 5000})
which lead to an output of ci.model_args equal to
{'standardize': True,
'prior_level_sd': 0.01,
'nseasons': 7,
'season_duration': 1,
'fit_method': 'hmc',
'niter': 5000}
So I was totally sure that I founded the way to change the number of iteration of the Markov Chain procedure, but then I realized that all the posterior drawn from this model has a length equal to 100, while they should be equal to 5000. In other word if I run ci.model_samples[i].shape I got 100 as first number and not 5000, for any i in len(ci.model_samples)
Can you please explain to me what does it mean and,  and particularly what is the relationship between the length of the posterior sample drawn and the number of iterations of the Markov chain procedure and how to generally change it.
Thank you in advance for your support

Hi @alessandropicca ,
The value niter that you referred is used internally in the step of sampling time series from the posterior distribution, as you can see here. It's used in essence to find the p-value; currently it's not possible to change it as it doesn't really affect much final results.
Now for the number '100' that you mentioned, it's actually set when sampling the posterior of the model parameters. You can either change the values for vi or hmc algorithms, which is equivalent of setting their sampling rate when running the Markov Chain algorithm.
It'd also be possible to customize the main API to receive those values as input. Unfortunately I do not have available time for doing so now but if the community sends a PR I'd happily merge it.
Hope that helps, let me know if you still have any questions.
Best,
Will


[refactor][server-test] refactor RoundRobinHostManagerTest

refactor RoundRobinHostManagerTest
#3512

Codecov Report

Merging #3511 into dev will increase coverage by 0.03%.
The diff coverage is n/a.

@@             Coverage Diff              @@
##                dev    #3511      +/-   ##
============================================
+ Coverage     36.35%   36.39%   +0.03%
- Complexity     2639     2640       +1
============================================
  Files           449      449
  Lines         21255    21255
  Branches       2602     2602
============================================
+ Hits           7727     7735       +8
+ Misses        12813    12801      -12
- Partials        715      719       +4

Impacted Files
Coverage Δ
Complexity Δ

...er/master/dispatch/host/assign/RandomSelector.java
77.77% <0.00%> (-5.56%)
3.00% <0.00%> (-1.00%)

...inscheduler/service/zk/CuratorZookeeperClient.java
62.16% <0.00%> (-2.71%)
7.00% <0.00%> (-1.00%)

...inscheduler/common/task/sqoop/SqoopParameters.java
74.00% <0.00%> (ø)
25.00% <0.00%> (ø%)

...he/dolphinscheduler/common/thread/ThreadUtils.java
72.30% <0.00%> (+3.07%)
14.00% <0.00%> (ø%)

...he/dolphinscheduler/common/enums/SqoopJobType.java
88.88% <0.00%> (+88.88%)
3.00% <0.00%> (+3.00%)

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 a4ee351...f443d6e. Read the comment docs.

@dailidong @qiaozhanwei  Could you please review this for me?

please resolved conflicts
+1

I have completed the changes, please check


chore: update package.json versions

Update frontier version in demo-sdk to 0.30.0

Pull Request Test Coverage Report for Build<PHONE_NUMBER>8
Details

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 9.46%

Totals

Change from base Build<PHONE_NUMBER>0:
0.0%

Covered Lines:
10361

Relevant Lines:
109526

💛  - Coveralls


task: Add OkHttpToggleFetcher implementation

This PR adds a new ToggleFetcher using Square's OkHttp library to perform the HTTP calls, rather than using java.net's internal HttpClient.
Since OkHttp handles caching and redirect logic for use, it reduces logic we have to worry about, at the cost of adding a dependency that does bring with it some additional transitive dependencies.
This PR is not feature complete, because we will have to make sure the OkHttp client can also be convinced to use the proxy logic that has been written for the current java.net implementation. Copying all mocks and tests for the current HttpToggleFetcher and switching to using the OkHttpToggleFetcher did reveal a couple of differences that will need to be verified against our server.
One is that OkHttp apparently suffixes ETags with --gzip if it receives a gzip response; we'll have to make sure that our Unleash server still sees this as the same ETag, and if not, configure OkHttp to add the --gzip suffix.
The other is that apparently HttpUrl's toString() methods suffix toplevel URLs with / whereas the old code took the response header raw (without a trailing /). Semantically it's the same, and the redirect request does actually happen, so I'm pretty sure it confirms that we still do the same logic for a 308.
Created as Draft for now, open for discussion

@checketts - Good question. Yes, you can write your own fetcher and supply that to the config builder.


chore(ci): run noir-lang/big_curve tests on single thread

Description
Problem*
Resolves
Summary*
This PR sets the RAYON_NUM_THREADS environment variable to 1 when running the bigcurve tests in run-external-checks. This should allow us to run all of the bigcurve tests in our CI to help avoid regressions such as those caused by #6685.
Additional Context
Documentation*
Check one:

[x] No documentation needed.
[ ] Documentation included in this PR.
[ ] [For Experimental Features] Documentation to be submitted in a separate PR.

PR Checklist*

[x] I have tested the changes locally.
[x] I have formatted the changes with Prettier and/or cargo fmt on default settings.

Not necessary anymore as we can run tests on default settings.


DiamondSquare and MidpointDisplacement are not rescaled

When checking the extrema of either methods, the minimum is rarely 0.

so far i can't recreate this with
for i = 1:10000
           a = rand( MidpointDisplacement(), (50,50))
           b = rand(DiamondSquare(), (50,50))
           @assert max(a...) == 1 && max(b...) == 1 && min(a...) == 0 && min(b...) == 0
end

OK so, turns out it's not an issue with the algos but with masking (which I did manually).


change URL for canada/british columbia large donation site

resolves #554

sidenote, this won't reflect the new link on French pages until we get the Smartling translation back (even though it's not actually translating anything).


Suggested updates - MP 2021 Dec 21

Suggested list of criteria - add standard code checksum requirement
Forking code - formal process required to clearly identify code forking, why it was required, who will be responsible for maintenance of the fork; we need a standardize place and mechanism for the documentation
Bill of Materials (BOM) - required for any code "imported" into national repository; need to know the source of origin. As noted elsewhere we need to have proper vetting of the "imported" code
Liability of code provided in national repository - we probably need to clearly state that best effort is provided in any code (maybe we need a formal "code of conduct" acceptance for joining the repository?) however there is no liability to the submitter ("Good Samaritan Law" if you will) -- likely need legal counsel (or maybe multiple jurisdictional?) to write this -- not sure about the agreement method (is this intergovernmental affairs-like?)

Governance

we need to start formalizing the governance method
previously noted "benevolent dictatorship" but I think that we need to start the outline/high level of what this looks like in the Directives and Guidelines
will need to formalize a separate document that states the governance; who sits on the governance board, terms of members, terms of reference, etc. (Maybe Linux Kernel might be used as starting point?)

Language

Are official languages for documentation required? If so, who is responsible for translation (not all jurisdictions have this capability/capacity; note also the translation of technical information may be an additional challenge)
Are there requirements for other languages than the official languages? (likely more challenging)
No idea on this one: Thoughts of the language used in the actual code?

Standards

We need to split this into Directives, Standards and Guidelines
e.g., Directive: What has to be done: All code shall have a mechanism to ensure the integrity of the code
e.g., Standard: How it will be done: All code will use a SHA256 checksum included in the repository
e.g., Guidelines: What is recommended to be done: it is recommended when code is downloaded the checksum is validated prior to using the code

Thanks for the addition! Really good points, I think I need to reformat the documents to better articulate the nuances you brought here and the ones that were shared in the last workshop.

Defect Management/Urgent Updates:
Considering Mike's detailed comments, the only comment I can make is this. How would the process be during a crisis situation like the one we have all had for the last 2 weeks due to Log4J (Defect Management/Urgent Updates in Open Source)?

Who is going to modify all open source code, when?

Because everybody that makes contributions to the open-source codes would be taking care of proprietary codes first. Or every jurisdiction could try the fix the issue(s) locally at the same time and they would prefer to create MRs later.

Do we need to have something included in the guideline/directive?

Excellent point! I think that we might have to have a separate discussion specific to vulnerability management. I can see this requiring in the directives an item around projects needing to have a vulnerability alerting and response "mechanism".
The standard would be the how (could be one to many that everyone finds acceptable) vulnerabilities are communicated to the project maintainer (likely also in a directive), how the maintainer responds, how the vulnerability is communicated, etc.
The guideline would likely be something around monitoring for updates, vulnerability alerts, etc.
Overall, this is something that we need to "codify" especially given the cyber security world we all work in.
Excellent suggestion!


Fix keyboard show/hide for HL1 and WMR

Overview
We want our windows system keyboard to work not just for HoloLens 2, but also for HoloLens (HL1) and Windows Mixed Reality (WHR). In HL1 and WMR there are OS bugs where the keyboard showing and hiding events do not fire. Our keyboard example was assuming those events fired correctly, and therefore not showing a keyboard in OnShow if the keyboard was visible. Remove this check.
Changes

Fixes: #5363

Verification
Tested on HL1, HL2 and WMR

/azp run


Icon images turn black when using WebGLPointsLayer.

WebGLPointsLayer
The example is being used as is.
When the network is unstable or slow, the icon becomes black frequently.
Is there a way to prevent this from happening?
"ol": "^7.1.0"

If the image fails to load (e.g. you change "icon-src": "data/icon.png", to "icon-src": "data/icon_.png",) it will appear black in that example.  But make the same change in a canvas layer, e.g. https://openlayers.org/en/latest/examples/modify-icon.html it will appear transparent.
OpenLayers cannot prevent network errors, but maybe the result should be consistent in both renderers? (as with icon-color/fill-color in #15295).


Prime status?

Hi, would it be possible to find the prime status of a given user?

node-csgo currently doesn't support this.
I briefly looked into the protobuf definitions to see if this could become a feature and I don't believe it's possible. I've linked the files above; if you happen to find anything that seems to indicate a users prime status let me know and it can be added.

You could make a prime only server and verify the status.

You could make a prime only server and verify the status.


Make reground more pedantic

Add boolean to specify whether incoming text has already been canonicalized

thanks @kwalcock !!

It's headed to your branch, so I leave it up to you to press the button (or not).  I would personally have Ben supply all of the mention type, text, and canonicalNames, but maybe that's unrealistic.  I'm working on the deserializer so that the new mentions can be read back in and get officially regrounded.

FYI @bgyori -- API update


error: cannot convert 'double' to 'linsys_solver_type' in initialization

Hi everyone,
I am having trouble to use the code generated from OSQP. When I try to compile my own code including "osqp.h" and "workspace.h" as described in "example.c", I get the following error:
cannot convert 'double' to 'linsys_solver_type' in initialization
I faced the same problem using MATLAB and Python interface. I tried to compile using CMake and Codeblocks.
I resolved the problem doing a "cast" at OSQPSettings settings in "workspace.h":
OSQPSettings settings = {(c_float)0.10000000000000001000, (c_float)0.00000100000000000000, 10, 4000, (c_float)0.00100000000000000000, (c_float)0.00100000000000000000, (c_float)0.00010000000000000000, (c_float)0.00010000000000000000, (c_float)1.60000000000000010000, static_cast<linsys_solver_type>(0.00000000000000000000), 0, 25, 1, #ifdef PROFILING (c_float)0.00000000000000000000,  #endif  // PROFILING };
But I would not like to do this manually every time. Am I missing some Compiler or Linker configuration? The weird thing is that the "example.c" works fine.

I made a fix in both Python and Matlab. Could you please pull the latest master branch in osqp-matlab or the latest develop branch in osqp-python and try your code now?

Now it is working, thank you.


Add execution time in the demo and console log

Add execution time information for model.run(feeds) in the web page and the console log of dev tools which didn't show in the segment anything demo.
@fdwr PTAL.

Thank you Belem :).


Minor quality of life fixes pertaining to logging in with tenantId specified and the setting of the domain name when creating users

Added a mandatory LoginTenantId to specify tenant ID when authenticating with Azure AD
Added an option for users to manually enter a verified email domain for when Get-MgContext | Select-Object Account).Account fails to assign a value to the $domain variable, resulting in the failure of user creation in the Azure AD Tenant. As a result of this change, users may have to copy and paste the domain variable in multiple times into the PowerShell console when the script runs.
Removed the duplicated Util Function GetRandomUser
Edited the readme to reflect the addition of the mandatory LoginTenantId parameter

https://github.com/mvelazc0/BadZure/issues/4#issue-1815221449


Targets generated by extension of program end date: Mis-numbered periods

Affects: Annual, semi-annual, tri-annual, quarterly, monthly periodic targets
Issue: When new targets are generated by extending the program end date, you see this in the indicator rows that require target values to be completed.

Clicking on "Missing targets" opens the indicator's Targets tab and scrolls it to the area where you need to fill in missing values. The newly generated periods have correct date ranges, but incorrect period names. Here are some examples:

When generating missing target periods, the method responsible for generating the target periods (date ranges and period_name) had to start from after existing target periods. The bug was that the variable was getting incremented twice only after the first run because the loop value starts at 0


feat(entity-query): hasEntity with array of ID

PR Checklist
Please check if your PR fulfills the following requirements:

[ ] The commit message follows our guidelines: https://github.com/datorama/akita/blob/master/CONTRIBUTING.md#commit
[ ] Tests for the changes have been added (for bug fixes / features)
[ ] Docs have been added / updated (for bug fixes / features)

PR Type
What kind of change does this PR introduce?

[ ] Bugfix
[x] Feature
[ ] Code style update (formatting, local variables)
[ ] Refactoring (no functional changes, no api changes)
[ ] Build related changes
[ ] CI related changes
[ ] Documentation content changes
[ ] Other... Please describe:

What is the current behavior?

hasEntity() only support ID
Issue Number: #98
What is the new behavior?
hasEntity() will also support an array of ID
Does this PR introduce a breaking change?
[ ] Yes
[x] No

Other information

I'm not sure what you did. Didn't you write the feature?

To be honest, It was my first PR at all and I am fairly new to GItHub too.. So I wasn't sure about what you asked me to do..

Never mind, I will add it. To be clear, when you call the following code:
hasEntity([1, 2, 3])
It will return true only if all of them exists.

In my project, a user can have a list of services. I would like to check first if my services are not in the store before to do a call to the database.


hip_add_library

rocm-user@5398fc181728:~/rocALUTION/build$ cmake --debug-find ../ -DSUPPORT_HIP=ON -DSUPPORT_OMP=ON -DBUILD_EXAMPLES=ON
-- Setting build type to 'Release' as none was specified.
-- The CXX compiler identification is GNU 7.5.0
-- Check for working CXX compiler: /usr/bin/c++
-- Check for working CXX compiler: /usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Found Git: /usr/bin/git (found version "2.17.1")
-- Found OpenMP_CXX: -fopenmp (found version "4.5")
-- Found OpenMP: TRUE (found version "4.5")
-- Could NOT find MPI_CXX (missing: MPI_CXX_LIB_NAMES MPI_CXX_HEADER_DIR MPI_CXX_WORKS)
-- Could NOT find MPI (missing: MPI_CXX_FOUND)
-- MPI not found. Compiling WITHOUT MPI support.
-- Looking for C++ include pthread.h
-- Looking for C++ include pthread.h - found
-- Looking for pthread_create
-- Looking for pthread_create - not found
-- Looking for pthread_create in pthreads
-- Looking for pthread_create in pthreads - not found
-- Looking for pthread_create in pthread
-- Looking for pthread_create in pthread - found
-- Found Threads: TRUE
-- ROCclr at /opt/rocm/lib/cmake/rocclr
-- hip::amdhip64 is SHARED_LIBRARY
-- hip::amdhip64 is SHARED_LIBRARY
CMake Error at src/CMakeLists.txt:129 (hip_add_library):
  Unknown CMake command "hip_add_library".

-- Configuring incomplete, errors occurred!
See also "/home/rocm-user/rocALUTION/build/CMakeFiles/CMakeOutput.log".
See also "/home/rocm-user/rocALUTION/build/CMakeFiles/CMakeError.log".
rocm-user@5398fc181728:~/rocALUTION/build$ sudo apt install amdhip64
Reading package lists... Done
Building dependency tree
Reading state information... Done

E: Unable to locate package amdhip64

rocm-user@5398fc181728:~/rocALUTION/build$ ls /opt/rocm/ -lrt
total 84
drwxr-xr-x  3 root root 4096 Jun 11 15:44 rocclr
drwxr-xr-x  8 root root 4096 Jun 11 15:44 hip
drwxr-xr-x  3 root root 4096 Jun 11 15:44 hsa-amd-aqlprofile
drwxr-xr-x  3 root root 4096 Jun 11 15:44 amdgcn
drwxr-xr-x  5 root root 4096 Jun 11 15:44 opencl
drwxr-xr-x  7 root root 4096 Jun 11 15:44 llvm
drwxr-xr-x 10 root root 4096 Jun 11 15:44 share
drwxr-xr-x  5 root root 4096 Jun 11 15:44 roctracer
drwxr-xr-x  6 root root 4096 Jun 11 15:44 rocprofiler
drwxr-xr-x  6 root root 4096 Jun 11 15:44 rocm_smi
drwxr-xr-x  4 root root 4096 Jun 11 15:44 oam
drwxr-xr-x  4 root root 4096 Jun 11 15:44 hsa
drwxr-xr-x  2 root root 4096 Jun 11 15:44 bin
drwxr-xr-x  4 root root 4096 Jul  5 17:40 rocprim
drwxr-xr-x  4 root root 4096 Jul  5 18:28 rocblas
drwxr-xr-x  4 root root 4096 Jul  5 18:51 hiprand
drwxr-xr-x  4 root root 4096 Jul  5 18:51 rocrand
drwxr-xr-x  4 root root 4096 Jul  5 18:51 rocsparse
drwxr-xr-x  1 root root 4096 Jul  5 18:53 lib
drwxr-xr-x  1 root root 4096 Jul  5 18:53 include

this is a docker image
$ docker pull rocm/rocm-terminal
$ docker run -it --rm --device=/dev/kfd --device=/dev/dri --group-add video rocm/rocm-terminal

cmake --debug-find ../ -DSUPPORT_HIP=ON -DSUPPORT_OMP=ON -DBUILD_EXAMPLES=ON -DROCM_PATH=/path/to/rocm/

works


Socks support

This pull request includes support for socks5 proxies.
The brook server that speaks socks5 is added to the Docker testing environment so the functionality can be tested. The newly written test is set to the localhost IP <IP_ADDRESS> which should work as it is the externally mapped port from Docker, however it doesn't on my end. Workaround: The command docker network inspect aiographql-client_default lists the IP addresses involved and one could replace <IP_ADDRESS> in the test with the IP in the output of IPAM.Config.Gateway.
An additional linting environment is added to tox.ini.

@temrix thank you for contributing :heart:
So, with 1.x (now in pre-release) we have changed a lot of how the client is structured. This also introduces the ability to provide a custom session for usage with aiohttp. So you can, in-effect use a socks-proxy if required.
I have just added documentation for this at https://aiographql-client.readthedocs.io/en/latest/examples.html#using-behind-sock-proxies
Let me know if I missed something.

And if you are interested, the reason why the compose setup was not working is because for brook, <IP_ADDRESS> is loopback inside the container. It would need to use rdns=True and host=hasura, since that is what the container is named in the docker-compose network. Alternatively, you can also set the containers to run with --net=host.

Thank you for the documentation. Glad to see that it is possible now!

Closing this PR as this is no longer required. Feel free to contribute PRs/Issues as required.


add deprecation to nodejs 16

What does this PR do?:
Summarize the changes. Are any stacks or samples added or updated?
This PR adds the Deprecated tag to stacks with the Nodejs 16 image. It also adds these deprecated stacks to the renovate.json exclusion list and bumps the default version for all changed stacks up by 1 so the default version is not a deprecated stack.
Which issue(s) this PR fixes:
Link to github issue(s)
fixes https://github.com/devfile/api/issues/1364
PR acceptance criteria:

[ ] Contributing guide
Have you read the devfile registry contributing guide and followed its instructions?
[ ] Test automation
Does this repository's tests pass with your changes?
[ ] Documentation
Does any documentation need to be updated with your changes?
[ ] Check Tools Provider
Have you tested the changes with existing tools, i.e. Odo, Che, Console? (See devfile registry contributing guide on how to test changes)

How to test changes / Special notes to the reviewer:

/retest

/hold
This is going to need to be merged after the nodejs issue is fixed https://github.com/devfile/api/issues/1484

I think based on what we have discussed for devfile/api#1482 for the stacks we update the default version we can make the new default their latest version. WDYT?

That's okay with me, I know I just bumped them all up 1 but can update it to bump them all to latest. I'm going to also mark the issue as blocked since it isn't going to pass PR checks with the nodejs icon issue
cc @thepetk

/retest

Just need https://github.com/devfile/registry/pull/338 merged after hearing back from the stack owner before the builds will resume working again

/unhold
https://github.com/devfile/registry/pull/338 should have unblocked this PR.

Will re run tests in a little bit, seems like the issue is still occuring but I don't know maybe it hasn't updated yet to CI. https://github.com/devfile/registry/actions/runs/8348517850/job/22941030162?pr=337

Will re run tests in a little bit, seems like the issue is still occuring but I don't know maybe it hasn't updated yet to CI. https://github.com/devfile/registry/actions/runs/8348517850/job/22941030162?pr=337

Most likely, ci/prow/v4.13-images is passing now.

@lholmquist Need your quick review on the changes done to the nodejs stack.
FYI @Jdubrick

@Jdubrick Just realized you haven't rebased since #338 was merged 🙈
So your version of the code is still got the broken nodejs icon links.

@michael-valdron i was trying to figure out why the builds were still failing, thank you. Just rebased so hopefully this fixes the issue!

@michael-valdron looks like the rebase and nodejs changes allowed checks to pass

@thepetk in response to your reviews the defaults were just bumped up 1 version from the one that was deprecated in this case. This was done before any discussion surrounding if we should keep the default updated to the latest version. wdyt?

@thepetk in response to your reviews the defaults were just bumped up 1 version from the one that was deprecated in this case. This was done before any discussion surrounding if we should keep the default updated to the latest version. wdyt?

I'd say in order to avoid back & forth for this PR we can move the default to latest with a separate PR!


get involved as co-maintainer

Hi @iHiD, @kytrinyx and @leenipper, would like to volunteer to help out as a co-maintainer on this repo if possible. Is there a process to apply?
Thanks!

@sebito91 ,  Thank you!.  I appreciate your willingness to help out.  We have  been a little light on coverage lately.
I would say for the short term, simply jump in and comment on issues and PRs, and submit updates too.
Adding you as maintainer can shortly follow.  That was the path taken in my case.

Wonderful, thanks for the feedback. Looking forward to helping out!


Zip File Thumbnail Preview Support

Description of the new feature / enhancement
More like peek, it just can take a peek into image. With this new feature, we can peek into zip file without extracting the file completely. I know the file explorer/ other zip application can do easily but they do not have preview; like thumbnail or some sort. its nice to be integrated into file explorer or reuse the feature built-in windows 10/ 11 just with thumbnail support without extracting it complete or with enhancement of peek. After done just preview the file, self-extracting will deleted the temp file it has created that use for thumbnails.
Scenario when this would be used?
As someone who used to working with zip file or just compress some big data to save space/ archiving into Nas. I find it very useful if

There will be 100-200 images in single zip file. Conveniently, the thumbnail would be very insanely useful just to find 1 specific image without to extract completely/ search randomly in zip file; hoping the image you just opened are the one you looking for.

1/ This're just the same scenario as Winzip application not Winrar; as they let user can see the thumbnail without extract the file.

Maybe we can integrated into windows file explorer/ peek enhancement/ new set zip preview tools with option to enable/ control or even temp directory.

With Peek, we can just peek into the file as the name suggest. With this new type of enhancement/ new tool feature, not just peek but browse through opened zip, and has basic/ advance exactly as winzip/ winrar whether to extract and so on.

2/ As for now, we focused on thumbnail for images only. Later maybe with thumbnail support for video.
Supporting information
No response

What exactly is the request? Because Peek can preview archives alreday.

/needinfo


Allow loading of downloaded BERT

Small enhancement recommendation, allow loading of BERT embedding via an already downloaded zip file so the package doesn't always download its own.

This is already supported but with the some caveats.   If you manually download the BERT zip file and store it in the ktrain_data folder (which is in your home directory),  ktrain will check to make sure everything needed is there.  If it looks good, then that unzipped folder is used, and the BERT zip file is not re-downloaded.  Arbitrary locations of zip files are not supported at this time.


challenge-setup-code: missing this. in create a stack class challenge

Describe your problem and - if possible - how to reproduce it
https://learn.freecodecamp.org/coding-interview-prep/data-structures/create-a-stack-class
the first line in the stack() function says collection = []; - it wont pass testing unless you change it to this.collection = [];

Browser Name: Firefox
Browser Version: 60.0.1
Operating System: High Sierra

If possible, add a screenshot here

You don't have to this it, but because of strict mode it does need to be declared with var, let, or const.

so its missing the let then

That's how I would update it.


As a teacher, I can change data source of the address book

So that I can organize the information efficiently.
Add command change data source,
also, kindly update it in the user guide and developer guide.

I am not sure whether I can do this, because I am quite confused about how the storage part works in AB3. But I'll try it.


Chef 1659

Passes specs.

Just a reminder that this branch needs additional tests and would need to be rebased now. See the ticket for additional information.
http://tickets.opscode.com/browse/CHEF-1659

I'm sorry, we haven't heard back from you in a while so we're going to close this pull request. We would really like your contribution though. If you're still interested, please ensure that you have completed the CLA process and that there is an issue open at http://tickets.opscode.com which has a link to your contribution, and that you've marked the issue as resolved.
http://wiki.opscode.com/display/chef/How+to+Contribute


Added test cases for formatDate functions

I added tests for all functions except getFutureEvents. I would suggest looking into using mocking the current date with sinon for testing that. https://sinonjs.org/releases/v6.3.4/fake-timers/

Fixes https://github.com/lifestonechurch/lifestonechurch.net/issues/482


No need to check branch name in get_tag.py

get_tag.py currently fails if you explicitly check out a commit (it
returns "-dev").
Now we are using commit based tags, there is no need to check for the
current branch.

I don't agree. It keeps development branches named explicitly as such. What is the motivation for this PR?

Sounds like I'm doing something wrong. I'm trying to work out how I can pin a particular version of Openlane, so future builds of a tape out use the same toolchain. Neither of these work:
# git checkout 85b6ceca9e38a2187226457ad398f8da3353e8e5
# dependencies/get_tag.py
-dev

# git checkout 2022.04.17_01.59.58
# dependencies/get_tag.py
-dev

Well, in this situation we'd typically use OPENLANE_IMAGE_NAME: but maybe get_tag.py should attempt to detect a detached HEAD. I'll look at it.

I can use OPENLANE_IMAGE_NAME. If nothing else, it might be nice for this to error out - it took me a while to realise make was not installing the PDK but rebuilding the entire docker image :)

Implemented in #1062.


[Enhancement] Optimize parquet scanner by arrow io coalesce

Why I'm doing:
What I'm doing:
performance test 0: tpcds store_sales, 23 columns, one file 649M, 7218819 lines
                 | file read time | file read count | memory
io coalesce 8M   | 13s            |   80            | 587M
buffer stream 8M | 15s            |   176           | 1313M
buffer stream 1M | 29s            |   1145          | 1157M

performance test 1: 1001 columns table, one file 147M, 50000 lines
                 | file read time | file read count | memory
io coalesce 8M   | 3s             |   20            | 1G
buffer stream 8M | 15s            |   1003          | 10.1G
buffer stream 1M | 15s            |   1003          | 3.3G

Compared with buffer stream, io coalesce achieves higher performance, uses less memory, especially when there are many columns.
Fixes #issue
What type of PR is this:

[ ] BugFix
[ ] Feature
[x] Enhancement
[ ] Refactor
[ ] UT
[ ] Doc
[ ] Tool

Does this PR entail a change in behavior?

[ ] Yes, this PR will result in a change in behavior.
[x] No, this PR will not result in a change in behavior.

If yes, please specify the type of change:

[ ] Interface/UI changes: syntax, type conversion, expression evaluation, display information
[ ] Parameter changes: default values, similar parameters but with different default values
[ ] Policy changes: use new policy to replace old one, functionality automatically enabled
[ ] Feature removed
[ ] Miscellaneous: upgrade & downgrade compatibility, etc.

Checklist:

[ ] I have added test cases for my bug fix or my new feature
[ ] This pr needs user documentation (for new or modified features or behaviors)

[ ] I have added documentation for my new feature or new function

[ ] This is a backport pr

Bugfix cherry-pick branch check:

[x] I have checked the version labels which the pr will be auto-backported to the target branch

[x] 3.3
[x] 3.2
[x] 3.1
[ ] 3.0
[ ] 2.5

https://github.com/Mergifyio backport branch-3.0

https://github.com/Mergifyio backport branch-2.5


Watch out USSR in the list!

Union of Soviet Socialist Republics... you are kidding!
Thanks for snippet but after this (USSR) I will need to check each country if it is not a joke.

@igsm What file?

country-list/country/cldr/en/country.postgresql.sql
I usually come across with ~250 countries offered in the html select field. Your is 264.
I have uploaded mine. I pulled this list from the one commercial website. Can't guarantee 100% accuracy but looks fine from the fist glance.
https://github.com/igsm/postgresql-country-list

@igsm I can't find USSR in https://github.com/umpirsky/country-list/blob/master/country/cldr/en/country.postgresql.sql?

line 249 - Union of Soviet Socialist Republics

I also checked one doubtful case - 'Serbia and Montenegro' and of course it is in the list. Now there are two separate countries, which are also included but you should remove S&M :)

@igsm I am from Serbia, no worries. :)
It's CLDR providing this regions.
You can consider using ICU data instead https://github.com/umpirsky/country-list/blob/master/country/icu/en/country.postgresql.sql.

Alrightttttt..... hah

:+1:


TestContainer fluent API returning 'this' type

Hello,
thanks for this useful library.
I am trying to extend (subclass) GenericContainer but the current typing for the withXxx method gets in the way. To be able to extend the fluent API, these methods should return the actual type of Container class, not the base TestContainer.
In other words, simply return a this type from the methods e.g.
export interface TestContainer {
  withEnv(key: EnvKey, value: EnvValue): this;
  withCmd(cmd: Command[]): this;
  // ...
}

Hi @r3mi
Could you show me an example of where it's getting in the way so that I can better understand the problem? I'd guess that the base interface of TestContainer is fine as GenericContainer implements it anyways. So you'd end up with CustomGenericContainer -> GenericContainer -> TestContainer.

Hi @cristianrgreco
sorry my issue was a bit short. Here are simplified examples:
class CustomGenericContainer extends GenericContainer {
  ...
  withSomething(): this
  ...
}
const container = await new CustomGenericContainer()
    .withStartupTimeout(new Duration(20, TemporalUnit.SECONDS))
    .withSomething() // <-- HERE can't compile because we are back on a TestContainer
    .start()

Another example:
class CustomGenericContainer extends GenericContainer {
  ...
  start(): Promise<CustomStartedTestContainer>
  ...
}
const container = await new CustomGenericContainer()
    .withStartupTimeout(new Duration(20, TemporalUnit.SECONDS))
    .start()
container.customMethod() // <-- HERE can't compile, container is not expected "CustomStartedTestContainer"

Both examples would be fine if withStartupTimeout was declared to return 'this type' instead of TestContainer.

@r3mi Please review https://github.com/testcontainers/testcontainers-node/pull/52

@r3mi Available in 2.4.0. Could you have a try and let me know?

works fine, thank you !


HDDS-3330. TestDeleteWithSlowFollower is still flaky.

What changes were proposed in this pull request?
Increased the watch timeout so that key.close() succeeds on the same pipeline with majority commit. Added some precondition checks to validate the follower.
What is the link to the Apache JIRA
https://issues.apache.org/jira/browse/HDDS-3330
How was this patch tested?
manual running the test.

Thanks @adoroszlai for the review. I have committed this.


Set active to true

I'm going to deploy later today, and then I'll put this in the newsletter. Yay!


TimeSync feature missing on IOS version of Google Authenticator

Original issue 329 created by n2diving on 2013-09-29T14:40:16.000Z:
The successful use of Google Authenticator (GA) requires an accurate time on the device running the GA application.  Normally GA relies upon the device time to generate codes, however the Android version of GA also provides the TimeSync feature for addressing an issue where the device time is significantly inaccurate.  The Android version of the feature is described at  https://support.google.com/accounts?p=timesync
The lack of a GA TimeSync feature on IOS is particularly annoying with iPad tablets because they have a history of issues with maintaining an accurate time on the device.  The Wi-Fi only iPad in particular does not have a user accessible method for synchronizing the internal device clock to an external time server, and Apple has not documented what method (if any) the Wi-Fi only iPad does use for determining the time automatically.  Users of 3G iPad tablets that rely upon the cellular data network for determining the time occasionally report time and timezone inaccuracies as well, particularly when travelling.  Currently the only reliable solution to adjusting the device time is to use the 'settings' UI to manually enter the time and zone, as IOS does not provide a programmatic interface to adjust the device time and thus third party apps do not exist to sync the time on the tablet to a time server.  The granularity of manual entry using the UI is no finer than a minute, and this solution does not address the issue of 'drift'. The internal oscillating clock of the iPad appears to be so imprecise that the drift in a single day is can be several minutes.
The lack of the TimeSync feature of Google Authenticator for IOS means that GA on a Wi-Fi only iPad tablet is effectively very difficult to use.  The work around is to, immediately prior to retrieving a GA code, manually set the time on the iPad as closely as possible by observing the (hopefully more accurate) time from another source. This work around typically requires several attempts for successful authentication.
My request is for the TimeSync feature to be included in the IOS version of Google Authenticator.

Does anyone follow this issue?
W/O this feature for Google Authenticator on iPhone, it is very inconvenient!

Pasting standard template:
--
FYI: The version in Google Play Store / Apple App store is not the same as this opensource version. They've diverged. This opensource version is also unlikely to end up in the app stores. This open source version doesn't get much love, but I'll accept well-written pull requests. But don't expect this feature to be implemented by Google.


Failure on negative slope, positive offset

While experimenting with my own dataset I could not seem to get the SVM to converge to a hyper plane with negative slope, offset into the upper-right quadrant in 2-D, even though the dataset was very linearly separable. For a toy example;
dataset 1 : converges to a hyperplane that linearly separates the data points with a hyperplane of positive slope in the upper-right hand quadrant.
a = hcat(rand(10)+0,rand(10)+2)
b = hcat(rand(10)+2, rand(10)+0)
X = vcat(a,b)'
Y = vcat(ones(10),ones(10)*-1)
train = randbool(size(X,2))
model = svm((X)[:,train], Y[train])
#-> model.w == (-0.805, 0.601)
accuracy = countnz(predict(model, X[:,~train]) .== Y[~train])/countnz(~train)
#-> accuracy == 1
dataset 2: for this data set, separable by a hyperplane of negative slope, the SVM does not converge to a negative slope, but rather to another positive slope hyperplane that does not separate the two groups
a = hcat(rand(10)+2,rand(10)+2)
b = hcat(rand(10)+0,rand(10)+0)
X = vcat(a,b)'
Y = vcat(ones(10),ones(10)*-1)
train = randbool(size(X,2))
model = svm((X)[:,train], Y[train])
#-> model.w  == (-0.238, 0.535)
accuracy = countnz(predict(model, X[:,~train]) .== Y[~train])/countnz(~train)
#-> accuracy == 0.636
Perhaps I am not using the function correctly, or this is an inherent limitation of the optimization function that underlies this implementation. Any enlightenment on this subject would be greatly appreciated. Thank you!

Probably a bug in how we've implemented Pegasos. (Did you try the other method?)
I'm pretty unlikely to look into this for a couple of months, but would happily review a patch to fix whatever's wrong.

I assume you mean the cddual function? I tried calling it on dataset2, X and Y unmodified, with similar problems:
model = cddual(X[:,train],Y[train])
->model.w == (0.0844,0.316)
#-> accuracy == 0.3
However, it performed just fine on dataset1.
I'll try reviewing the papers and see whats up.

That would be great. Thanks!

I know this post is old and such but since I am here let me solve the puzzle for you. The SVM implementation doesn't treat the bias separately, so you need to either include one in X if you want one or type X = X - 1 before fitting to center the data on 0, then everything will work out.
There are quite a few issues with the code (of cddual at least), but since it is going to be removed I don't feel so guilty reimplementing it from scratch


Optionally install Fish autocomplete during HomeBrew installation

As a developer using Fish shell
I want the Fish autocompletion installed as part of installing Git Town
So that I can use this tool efficiently and am as productive as possible.

check if fish shell is installed
if it is, copy the git-town autocompletion file in place
this behavior can be prevented with the option brew install git-town --without-autocomplete

This is implemented in https://github.com/kevgo/homebrew-gittown/tree/kg-install-fish-autocomplete, but can only be merged after we release version 0.5

You can create the PR for this now

Blocking on #358

Implemented in #358


How to close pool and release all the connection in pool?

Is it possible?
If not, where should I add this functionality in the source ccode?

"Releasing" only has meaning in the context of a pool. If you don't need a pool and you want to gracefully close all connections belonging to that pool, just use pool.end()
https://github.com/felixge/node-mysql/blob/1720920f7afc660d37430c35c7128b20f77735e3/lib/Pool.js#L152-L182

I use a pool, and then the app decide to close the pool.
For example:
var pool=db.createPool({})
for(var i=1;i<100;i++)
pool.query()

// Now I want to close all the connection of the pool

Hi @AminaG, in your example, since you are simply using pool.query for every operation, just calling pool.end would close them all. Extending your example:
var pool=db.createPool({})
for(var i=1;i<100;i++)
pool.query()

// Now I want to close all the connection of the pool
pool.end()

Hello,
Is it possible to wait that all waiting queries are completed before closing the pool please?
Regards,
S

Ended up with:
		_shouldWeStopChild() {
			return new Promise((resolve, reject) => {
				setInterval(() => {
					// Ensure all queries has been executed before exiting the script
					let connectionQueue = this.Database.getCurrentConnection()._connectionQueue.length;
					if(connectionQueue == 0) {
						clearInterval(this.shouldWeStopChild);
						debug('All queries has been completed.');
						resolve();
					} else {
						debug('There are ' + connectionQueue + ' queries left');
					}
				}, 50);
			});
		}


[StatefulTable, TableHeader] support nodes as column labels

Summary
StatefulTable to be enhanced to support nodes in addition to strings as column label. In the current component adding icon and customization to specific column header is not supported. For instance:

Specific timeline issues / requests
We need this for our upcoming release in Sep 2020

@dianatran18 @lukefirth is there some design guidance around this? I'd prefer to be prescriptive as to what design configurations we intend to be used (versus, or in addition to) allowing any type of custom column header.

@dianatran18 Is there any guidance on custom column headers like this? I only see tooltip definitions in the AI Apps pages. https://pages.github.ibm.com/ai-applications/design/components/datatable/general#column-header

We currently don't have any, but there was a previous issue with a similar ask to add icons into the column header which we didn't move forward with.
(@davidicus I can't remember which one it was but it was from the ELM team I think if you know what I'm referring to.)
The issue with adding decorative icons in the column header is that it can start to compete with other icons in the column headers like sorting and an overflow icon if there are other actions. It starts to overload the column headers in such a small space. Another note on this is that if it's open for teams to drop in any custom icon, then we can run into accessibility concerns with the icons not having a high enough color contrast for the different column header states (if the icon has color in them).
That's my opinion at least. This looks like a pretty old issue so I'd be curious to hear from the team that needs this to see if they still went in this direction or had an alternative solution.
Side note: Watson Moments guidance might have a different perspective on how to display moments like this, but I'm not familiar with that set of guidance myself, so this is just my initial thoughts).

Closing as stale and no longer approved by design.


Export CMake targets

This patch is part of https://github.com/Microsoft/vcpkg/pull/5509 .

Let us merge!

@lemire Thanks! :-)

@myd7349  Did it help?

@lemire Yeah! I am able to remove the patch file used in the portfile now: https://github.com/Microsoft/vcpkg/pull/5509/commits/4327f4d82cc1e402794b145eb0d95f921277a71c


[release-3.1] test_server_pd_transfer_leader failed

raftstore::test_transfer_leader::test_server_pd_transfer_leader
[2019-12-03T08:22:14.069Z] stack backtrace:
[2019-12-03T08:22:14.069Z]    0: backtrace::backtrace::libunwind::trace
[2019-12-03T08:22:14.069Z]              at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.29/src/backtrace/libunwind.rs:88
[2019-12-03T08:22:14.069Z]    1: backtrace::backtrace::trace_unsynchronized
[2019-12-03T08:22:14.069Z]              at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.29/src/backtrace/mod.rs:66
[2019-12-03T08:22:14.069Z]    2: std::sys_common::backtrace::_print
[2019-12-03T08:22:14.069Z]              at src/libstd/sys_common/backtrace.rs:47
[2019-12-03T08:22:14.069Z]    3: std::sys_common::backtrace::print
[2019-12-03T08:22:14.069Z]              at src/libstd/sys_common/backtrace.rs:36
[2019-12-03T08:22:14.070Z]    4: std::panicking::default_hook::{{closure}}
[2019-12-03T08:22:14.070Z]              at src/libstd/panicking.rs:198
[2019-12-03T08:22:14.070Z]    5: std::panicking::default_hook
[2019-12-03T08:22:14.070Z]              at src/libstd/panicking.rs:212
[2019-12-03T08:22:14.070Z]    6: std::panicking::rust_panic_with_hook
[2019-12-03T08:22:14.070Z]              at src/libstd/panicking.rs:475
[2019-12-03T08:22:14.070Z]    7: std::panicking::continue_panic_fmt
[2019-12-03T08:22:14.070Z]              at src/libstd/panicking.rs:382
[2019-12-03T08:22:14.070Z]    8: std::panicking::begin_panic_fmt
[2019-12-03T08:22:14.070Z]              at src/libstd/panicking.rs:337
[2019-12-03T08:22:14.070Z]    9: integrations::raftstore::test_transfer_leader::test_pd_transfer_leader
[2019-12-03T08:22:14.070Z]              at tests/integrations/raftstore/test_transfer_leader.rs:108
[2019-12-03T08:22:14.070Z]   10: integrations::raftstore::test_transfer_leader::test_server_pd_transfer_leader
[2019-12-03T08:22:14.070Z]              at tests/integrations/raftstore/test_transfer_leader.rs:116
[2019-12-03T08:22:14.070Z]   11: integrations::raftstore::test_transfer_leader::test_server_pd_transfer_leader::{{closure}}
[2019-12-03T08:22:14.070Z]              at tests/integrations/raftstore/test_transfer_leader.rs:114
[2019-12-03T08:22:14.070Z]   12: core::ops::function::FnOnce::call_once
[2019-12-03T08:22:14.070Z]              at /rustc/0e4a56b4b04ea98bb16caada30cb2418dd06e250/src/libcore/ops/function.rs:231
[2019-12-03T08:22:14.070Z]   13: <alloc::boxed::Box<F> as core::ops::function::FnOnce<A>>::call_once
[2019-12-03T08:22:14.070Z]              at /rustc/0e4a56b4b04ea98bb16caada30cb2418dd06e250/src/liballoc/boxed.rs:746
[2019-12-03T08:22:14.070Z]   14: __rust_maybe_catch_panic
[2019-12-03T08:22:14.070Z]              at src/libpanic_unwind/lib.rs:82
[2019-12-03T08:22:14.070Z]   15: std::panicking::try
[2019-12-03T08:22:14.070Z]              at /rustc/0e4a56b4b04ea98bb16caada30cb2418dd06e250/src/libstd/panicking.rs:273
[2019-12-03T08:22:14.070Z]   16: std::panic::catch_unwind
[2019-12-03T08:22:14.070Z]              at /rustc/0e4a56b4b04ea98bb16caada30cb2418dd06e250/src/libstd/panic.rs:388
[2019-12-03T08:22:14.070Z]   17: test::run_test::run_test_inner::{{closure}}
[2019-12-03T08:22:14.070Z]              at src/libtest/lib.rs:1466
[2019-12-03T08:22:14.070Z] note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
[2019-12-03T08:22:14.070Z] test raftstore::test_transfer_leader::test_server_pd_transfer_leader ... FAILED

https://internal.pingcap.net/idc-jenkins/blue/rest/organizations/jenkins/pipelines/tikv_ghpr_test/runs/13590/nodes/161/steps/1133/log/?start=0

@NingLin-P PTAL, thx!

https://internal.pingcap.net/idc-jenkins/blue/organizations/jenkins/tikv_ghpr_test/detail/tikv_ghpr_test/18553/pipeline/121 Integration Part4

This issue has become out-of-date. Given that no further feedback regarding this issue has been reported, it can be safely closed.


Optimize performance of CSVLoader

The current implementation is very slow, I think a better approach would be to implement a custom solution rather than using a third-party library.

@inejc feel free to try and peak routines and tricks from jsoniter-scala-core module.
Here are results of benchmarks for estimation of possible throughput and allocations.

@plokhotnyuk thanks for the pointers! I will look at your solution. Are you perhaps aware of any existing and efficient CSV loading libraries on JVM?

There are lot of solutions for Java: https://github.com/uniVocity/csv-parsers-comparison
But a custom codec which based on jsoniter-scala-core outperform them greatly when strings are represented as JSON strings. That require wrapping all of them by " characters and using UTF-8 encoding or hexadecimal escaping for non-ASCII characters.

I merged https://github.com/picnicml/doddle-model/pull/106 but keeping this issue open as we want to improve the current solution. Preferably look into the examples given by @plokhotnyuk.


Adds an ACCEPT rule for untracked pkts in filter:CILIUM_OUTPUT

Currently, when no-track-port is specified for a pod (the only use
case for now is nodelocaldns), we insert several iptable rules to skip
conntrack for packet to and from the pod to achieve pararity with OSS
node-local-dns.
However, we need to add a specific accept rule int the CILIUM_OUTPUT
chain to accept such packets. Otherwise, a dns query pkt originated from
the hostns will skip conntrack and gets dropped in the filter OUTPUT
chain. This rule is however NOT needed for standard OSS node-local-dns
because it relies on the loopback rule installed by the OS to allowlist
this traffic pattern. With Cilium, we DNAT such packet in a way that its
dst is the pod IP of the local node-cache pod, so it will NOT hit the
loopback dev, hence we need to punch a specific hole to allowlist it.
Fixes: #16694
Signed-off-by: Weilong Cui<EMAIL_ADDRESS>

Thanks for tracking this down. Any idea why we need these additional rules only for packets originating from hostns pods destined to node-local dns pod? Traffic from regular pods destined to port 53 should also hit the NO-TRACK rules, no?
I was under the impression that only when endpoint routes are disabled, intra-node pod-pod traffic will be redirected by BPF code to the destination device, in which case we wouldn't hit the issue you described. OTOH, when endpoints are enabled (default on GKE) traffic is handed over to the network stack for routing.

I'm confused by this. The reason NO_TRACK rule was added for traffic going to node-local dns pods is because we wanted to skip tracking DNS traffic, no?
Here is your comment from the original issue - #13686 (comment).

These rules will be hit when we are running in endpoint routing mode where the pkts will be handed to the stack after existing the pod namespace.

There are 3 separate sets of NOTRACK rules:

https://github.com/cilium/cilium/blob/master/pkg/datapath/iptables/iptables.go#L807 This one matches pkt that goes into the node-local-dns pods, so if the originating pod is in pod namespace, it will hit this rule to skip conntrack
https://github.com/cilium/cilium/blob/master/pkg/datapath/iptables/iptables.go#L817 This one matches pkt that comes from node-local-nds
https://github.com/cilium/cilium/blob/master/pkg/datapath/iptables/iptables.go#L813 This one matches pkt that is originated from local process in the root ns, aka from host-network pods

Issue here is that for the first 2 rules, we added ACCEPT rules to allowlist them, but for the last, we are missing that ACCEPT rule.

However, we need to add a specific accept rule int the CILIUM_OUTPUT chain to accept such packets. Otherwise, a dns query pkt originated from the hostns will skip conntrack and gets dropped in the filter OUTPUT chain.

I might be missing something obvious, but what's the relation between skipping conntrack and not matching any rule in filter:output? You seem to suggest the first causes the second.

Issue here is that for the first 2 rules, we added ACCEPT rules to allowlist them, but for the last, we are missing that ACCEPT rule.

Why wasn't the ACCEPT rule added before? Was it simply an oversight?

I might be missing something obvious, but what's the relation between skipping conntrack and not matching any rule in filter:output? You seem to suggest the first causes the second.

Yes, if you look at the filter:output rules here https://github.com/cilium/cilium/issues/16694#issuecomment-941330398, specificaly
3     300K  136M ACCEPT     all  --  *      *       <IP_ADDRESS>/0            <IP_ADDRESS>/0            state NEW,RELATED,ESTABLISHED
4        0     0 ACCEPT     all  --  *      lo      <IP_ADDRESS>/0            <IP_ADDRESS>/0

rule 3 only allows for traffic that is conntracked, and rule 4 only allows for traffic to go through lo device

Why wasn't the ACCEPT rule added before? Was it simply an oversight?

When we added the rules, we followed the OSS node-local-dns implementation, where they do not require such rule because same traffic flow would hit lo dev in their deployment mode. So yes, we overlooked this subtlety.

rule 3 only allows for traffic that is conntracked, and rule 4 only allows for traffic to go through lo device

Aah :facepalm: Not sure how I missed that rule; that's exactly what I was looking for.

When we added the rules, we followed the OSS node-local-dns implementation, where they do not require such rule because same traffic flow would hit lo dev in their deployment mode.

Ah, makes sense :+1:

/test

/test

ci-eks

This change should not affect any of the failed tests, they are most likely flakes.

This change should not affect any of the failed tests, they are most likely flakes.

Can we ensure we have issues tracking those flakes?

/test


Developers telegram or other chat?

Is there a plugin developers TG or chat elsewhere now after the one affiliated with the original IITC project shut down after G+ disappeared? I know IITC-CE has a news feed but that's not it..

I want to run https://www.reddit.com/r/IITC/
In one of the next news, I'd like to write about him.
But I don't have much experience with Reddit. It would be great if I could find an experienced moderator.

I'd prefer a TG-Chat, but I know that RU has some problems with it,

TG chat is great, but there is no ability to divide discussion between topics, and if some message is not answered immediately - it just get drown under new posts.

What about Gitter?

What about Gitter?

Or slack, or discord, etc.
There are a lot of alternatives, but why not start from reddit?
https://www.reddit.com/r/IITC/

Or slack, or discord, etc.
There are a lot of alternatives, but why not start from reddit?
https://www.reddit.com/r/IITC/

Fair enough. I'm subbed, just spitballing messaging systems that would work/are popular

I guess in relation to topic separation (i.e. threads) then reddit might be a good candidate.. only problem there is that sometimes clients with be more focused on "hot/popular" posts, and hide/down-prioritize the new ones, so one has to remember to set the correct mode in their client for the type of subreddit it is..
(subbed for now)

@modos189
How about adding comments to the  channel's posts? (@discussbot)
Or attach 'Discuss' chat?
(https://telegram.org/blog/privacy-discussions-web-bots)

I am drowning in ChatAPPs and I hate it!
Several Ingress communities have tested SLACK. But the limit of 10.000 posts really is the culprit.
Most Ingress communities/agents have switches to Telegram and offering a support and a dev channel on TG will not only improve the usage of IITC-CE, it will create more activity in development as well.
When ever new agents complain about the stock intel they still get sent the link to the abandoned IITC. Even Operators still do not know about IITC-CE.
Thus it is a kind of marketing for IITC-CE.
@johnd0e I understand your wish to have a way to stick to a topic in a chat, but we are not developing for us, but for the users. And If IITC-CE keeps to be a niche solution, not broadly accepted as the future IITC successor I will likely drop out of the project sooner than later.
My personal skills in JS and debugging it are still developing. When I find time to develop and I get stuck I need a way to send a help and get a quick response withing minutes. A bad to follow TG-chat that many follow helps me much more than a Reddit chat with 4 members that get read hours if not days later.
my2ct
Matthias

but we are not developing for us, but for the users.

Ok. And what is difference?

And If IITC-CE keeps to be a niche solution, not broadly accepted as the future IITC successor [...]

Does IITC has any other successor?

When I find time to develop and I get stuck I need a way to send a help and get a quick response withing minutes.

I understand. But currently there is no any 'bad to follow TG-chat that many follow'.
And there never been any other chat or whatever.
Do you remember good old broadly accepted G+ channel?
There was no activity in it. Nobody posted there: neither users, nor developers.

Anyway, as we have TG channel - why not attach related TG chat, I agree.
And if it will appear more convenient than Github/Reddit, then...

The difference is the number of agents and operators using it.
IITC successors: iitc-mobile, iitczs.

Many agents still fear to get a ban when using IITC. As G+ was directly linked to their Ingress account it would have been easy to ban just from being a member in that group. I guess there were many more silent readers.

Yes, please provide a name to that Chat, a public link might be a bad idea due to spamers using it.

1. The difference is the number of agents and operators using it.

Perhaps there are a lot. But I still not get what are you trying to say.

2. IITC successors: the italians are working on something that I know of.

It's interesting. Is that work public? Could you provide some links?

Yes, please provide a name to that Chat

https://t.me/iitc_group


Fix incorrectly calling _delete_files_from_swift from eventlet spawn_n.

eventlet.GreenPool.spawn_n should invoke the function and its arguments
directly.
Signed-off-by: Zhao Chao<EMAIL_ADDRESS>

Fixes:
http://<IP_ADDRESS>/issues/9686


Export via sqoop with a TypedPipe

I have some concerns around the robustness of this. There is what Vineeth said about what happens if there is already data at this location, which can be quite likely considering that it not a random temporary location and the load doesn't clean up after. Why not use the Hdfs.createTempDir function? Also how do you know that everything in the type pipe can be written out  to PSV properly?
From a usability perspective it would probably be nicer if the load deleted any files it produced that the user does not directly know about.

:+1: once the comments are addressed.


Host array

Hi,
is there any way to define array of hosts in JSON query file instead putting each server one below each other? I tried to use following convention:
host : [host1, host2]
but unfortunately it doesn`t wotk.
Thank you

Nope. The idea with the json is that it is a format that is great for auto generation.
This is an issue tracker, not a forum, so please ask future questions on the mailing lists or gitter. I'm going to close this.


ROS-65 Create new tables in DB

Adding new tables systems, reports and accounts to store selected data for the systems which use ros, instead of calling inventory API.

Any additional comments/suggestions @semtexzv, @patilsuraj767 ?

As everything from main branch is pushed to stable branch. Refer link - https://github.com/RedHatInsights/ros-backend/pull/32#pullrequestreview-592938537
Merging this branch.


Error if selecting code segment.

When selecting a code segment on GitHub (for example), then select a prompt, it may cause an error like the following:
https://imgur.com/tFnobdD
It seems that some of the characters selected may be the cause of this error.
Example selected text: mongodb.js

Hi @sting8k, I have found the issue, and will soon publish a fix for it.
Thanks, for the feedback!

Hi @sting8k the new version <IP_ADDRESS>. should have that particular issue fixed.

Hi @sting8k the new version <IP_ADDRESS>. should have that particular issue fixed.

That's cool 👍


Update wokwi-servo.md

Suggestion: change to 6 digit hex to be more recognisable

Thanks! Maybe it's even better to use a color name instead of the number?


UncontrolledCollapse with tests and doc updates closes 334

This should close out #334. Let me know if there is anything I missed.

@TheSharpieOne I tried to address all of your comments from your review. I squashed the two commits just for the sake of keeping the git history clean (I didn't really find anything on this in terms of the contributing guidelines). A couple of issues could probably come out of this:

Update tooltip and other components to use addMultipleEventListeners (or a similar pattern).
Integrate prettier-eslint as mentioned above. I mean really this is your choice but you thumbs up it so I thought I would mention it. 😄
I was also thinking you could probably drop the dependency on lodash as well. There are only a couple of instances here and there of it which could easily be removed.

Anyway, let me know what you think. I'm happy to work on one or more of the above mentioned issues.


Plonky3 keccak optimization

Issue
#1832 is ready to be merged, but currently uses 100 links to increment memory pointer using add_sub machine, which is quite inefficient for proving. increment_ptr constraint API won't work in #1832, as explained in issue #2022. It succeeds at the witness generation stage but fails at the proving/verification stage, depending on which prover is used.
Solution Implemented
This PR aims to implement the same increment pointer logic without relying on increment_ptr, by directly implementing the constraints in the Keccak main machine. On the high level, instead of creating carry and inverse columns, which is used to check if the next memory address will overflow using a zero check, I moved these two columns to the second and the penultimate (second last) rows of each 24 row blocks. Because addr_h[50] and addr_l[50] only uses the first and last row of each block, I put the inverse values a row below/above the first/last row of addr_l[50] and the carry values a row below/above the first/last row of addr_h[50]. This solution should be more efficient than the increment_ptr API in the context of this machine, because we avoid creating 50 inverse columns and 50 carry columns. It also solves the prior issue with increment_ptr mentioned in #1832 by only enabling the is zero check constraint in proper rows.
Current Status
Witness generation is functional, proving works with Halo2 mock prover when using dynamic vadcop limiting dynamic machines to min_degree: 1024, max_degree: 2048 (though not setting this limit kills the process after a very long run). Proving doesn't work with Plonky3 (see CI error). It's a polynomial commitment scheme on commit polynomial evaluation.  I never reached a constraint error for Plonky3, which is what blocked our prior increment_ptr solution, but this could mean that we didn't even reach the stage for constraint errors. Previously Plonky3 errored out at verification stage.
I think this means that the implementation is correct, but am not sure how to debug the Plonky3 error. It seems that we might be able to just set some external parameters regarding size to make this work, so I'd appreciate some insights.
Here's my Plonky3 error:
Running `target/release/powdr pil test_data/std/keccakf16_memory_test.asm --force --field bb --prove-with plonky3`
[00:02:23 (ETA: 00:00:00)] ████████████████████ 100% - 102469 rows/s, 1639k identities/s, 100% progress                                                                                thread 'main' panicked at /Users/steve/.cargo/git/checkouts/plonky3-2a8c63bcd5ef83b0/2192432/fri/src/two_adic_pcs.rs:186:9:
assertion failed: lde.height() >= domain.size()

Additional Questions
Do we have a CLI option to provide the witness in future runs after it's generated in a specific run? I couldn't find an example from our official docs. This has been costing quite a bit of time as I was good with the witness but just wanted to test the prover with different parameters.

Here are the relevant changes: https://github.com/powdr-labs/powdr/pull/2089/files#diff-f9fcf1597f4c7e16da854fd1ded4cbcfed738cc44655382ec0cec5140701f8e9R60-R107

It's also based on a different commit from #1832 so a few comments addressed in that PR are not addressed here, as it's quite non trivial to move them here. I'd wait for that PR merged to merge main to this.

Can be rebased now :)
The error you have looks like a constraint has a too high degree. The error message is terrible, so I just opened #2091 to fix it.

Can be rebased now :)
The error you have looks like a constraint has a too high degree. The error message is terrible, so I just opened #2091 to fix it.

Thanks and that makes sense. It gotta be the degree-4 constraint I added then (https://github.com/powdr-labs/powdr/pull/2089/files#diff-f9fcf1597f4c7e16da854fd1ded4cbcfed738cc44655382ec0cec5140701f8e9R67-R69), because prior versions with degree-3 constraints worked.
However, it's confusing from the Plonky3 doc that they seem to support arbitrary high degree, so in theory degree 4 constraint should work here, but with a proving time cost: https://docs.polygon.technology/learn/plonky3/examples/rangecheck/#constraint-degree
I'm not sure for folks writing Plonky3 circuits, are we concerned about the degree of constraints and what's the max degree we are targeting for so far? @leonardoalt

So, currently in Plonky3, there is a dependency between the "blow up" parameter of FRI (which we set to 2) and the maximum degree (for this parameter, it would be 3). Otherwise this assertion fails. From the TODO comment above the assertion I conclude that it doesn't have to be like this, but right now it is...
But a degree bound of 3 seems to a typical choice (our parameters are inspired from Plonky3's examples), so I think we should make it work for a bound of 3. You can always make it work by introducing more witness columns.
BTW, in the future, this should be done automatically (see section "Intermediate polynomials can be turned into witness polynomials to reduce the constraint degree" in #2009). But currently, it still needs to be done manually.

So, currently in Plonky3, there is a dependency between the "blow up" parameter of FRI (which we set to 2) and the maximum degree (for this parameter, it would be 3). Otherwise this assertion fails. From the TODO comment above the assertion I conclude that it doesn't have to be like this, but right now it is...
But a degree bound of 3 seems to a typical choice (our parameters are inspired from Plonky3's examples), so I think we should make it work for a bound of 3. You can always make it work by introducing more witness columns.
BTW, in the future, this should be done automatically (see section "Intermediate polynomials can be turned into witness polynomials to reduce the constraint degree" in #2009). But currently, it still needs to be done manually.

Fully makes sense now. Technically I can make it work by sticking data to the next next row of the first row and the third last row, but might need to do hints to make witgen more efficient. I might also just use more columns if needed.

FYI this can be merged now. @georgwiese


Support nested property filters for child objects in PullAsync

The Mobile Queries don't support nested properties.
http://stackoverflow.com/questions/16570779/odata-filter-by-nested-property
It is useful to reduce the amount out data being synced, when we need to sync the order items on a customer sync, instead of making multiple requests for each order.

Right, this is not supported when using LINQ queries. FYI you can use the overload that takes a string OData query to do this kind of filter.

Sure?
There is only
public static Task PullAsync<T, U>(this IMobileServiceSyncTable<T> table, string queryId, IMobileServiceTableQuery<U> query, CancellationToken cancellationToken)
public static Task PullAsync<T, U>(this IMobileServiceSyncTable<T> table, string queryId, IMobileServiceTableQuery<U> query, CancellationToken cancellationToken, PullOptions pullOptions)
public static Task PullAsync<T, U>(this IMobileServiceSyncTable<T> table, string queryId, IMobileServiceTableQuery<U> query)
public static Task PullAsync<T, U>(this IMobileServiceSyncTable<T> table, string queryId, IMobileServiceTableQuery<U> query, PullOptions pullOptions)
public static Task PullAsync<T, U>(this IMobileServiceSyncTable<T> table, string queryId,
            IMobileServiceTableQuery<U> query, bool pushOtherTables, CancellationToken cancellationToken)
public static Task PurgeAsync<T, U>(this IMobileServiceSyncTable<T> table, IMobileServiceTableQuery<U> query)

available, all with IMobileServiceTableQuery. Can you point me which overload to use?
There are overloads to the untyped IMobileServiceSyncTable, but it is better to wait/implement than mess with my code.
I made 2 patches to make the correct request, but I need to implement server side. Since the data is small, I'm planning to do that later, since I can live with that for now.
ODataExpressionVisitor.cs
public override QueryNode Visit(MemberAccessNode nodeIn)
        {
			if (nodeIn.Instance != null)
			{
				nodeIn.Instance.Accept(this);
				this.Expression.Append("/");
			}
			this.Expression.Append(nodeIn.MemberName);
            return nodeIn;
        }

FilterBuildingExpressionVisitor.cs

public static string GetTableMemberName(Expression expression,
                                                  MobileServiceContractResolver contractResolver)
        {
            Debug.Assert(expression != null);
            Debug.Assert(contractResolver != null);

            // Only parameter references are valid in a query (any other
            // references should have been partially evaluated away)
            MemberExpression member = expression as MemberExpression;
            if (member != null &&
                member.Expression != null &&
			    member.Expression.NodeType == ExpressionType.Parameter &&
                member.Member != null)
            {
                // Lookup the Mobile Services name of the member and use that
                JsonProperty property = contractResolver.ResolveProperty(member.Member);
                return property.PropertyName;
            }

			if (member != null &&
				member.Expression != null &&
			    member.Expression.NodeType == ExpressionType.MemberAccess &&
				member.Member != null)
			{
				// Lookup the Mobile Services name and table name of the member and use that
				var tableName = contractResolver.ResolveTableName(member.Expression.Type);
				JsonProperty property = contractResolver.ResolveProperty(member.Member);
				return string.Format("{0}/{1}", tableName, property.PropertyName);
			}

			// Otherwise return null
			return null;
        }

Regards,

Yes, I was referring to the untyped sync table methods. They will still insert into your generic sync table just fine, as they are extension methods.
In your client data model, do you include the child objects as a nested object, or are you using separate sync tables for them?  This feature would be pretty hard to do when there are separate sync tables, since the parent would not have a child object as a member, just a foreign key.

Sorry about the delay.
    public class GrandFather : EntityData
    {
        [JsonIgnore]
        public ICollection<Father> Fathers { get; set; }
    }

    public class Father : EntityData
    {
        [JsonIgnore]
        public ICollection<Kid> Kids { get; set; }

        [JsonIgnore]
        public GrandFather GrandFather { get; set; }

        public string GrandFatherId { get; set; }

    }

    public class Kid : EntityData
    {
        [JsonIgnore]
        public Father Father { get; set; }

        public string FatherId { get; set; }
    }

I need to pull only the data relative to a specific grandfather.
			var fathers = client.GetSyncTable<Father>();
			fathers.PullAsync("some query id", fathers.CreateQuery().Where(f => f.GrandFatherId == "someid")); // OK

			var kids = client.GetSyncTable<Kid>();
			kids.PullAsync("some query id", kids.CreateQuery().Where(k => k.Father.GrandFatherId == "someid")); // This is what I need

(that reminded me that EntityTable should be in a PCL so we can share the models)

@drungrin And what does your client data model look like?  Is it identical?

Yes, identical.
On Thu, Jul 28, 2016 at 4:15 PM -0300, "Donna Malayeri"<EMAIL_ADDRESS>wrote:
@drungrin And what does your client data model look like?  Is it identical?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or mute the thread.

I have a "basemodel" on client side as base, with the same properties as EntityData.

In that case, I think you're actually asking for relationship support in offline sync. Related to https://github.com/Azure/azure-mobile-apps/issues/6.

No. There are other models related to GrandFather that I don't need to include. It is a nested property filter only.

@drungrin Right, but the nested property filter has to do with the fact that "kids" is a separate table that can change independently. So, it still seems related to relationship support. Perhaps it is only partial relationship support?

I think indirect relationship support fits better.
Kids don't have a direct relationship with GrandFather.
It should work also if you have a Toys table.
toys.Where(t => t.Kid.Father.GrandFatherId == "some")
(not my case, my schema stop on the Kid :D)

I'm still going to call this "relationship support", and I agree, it's very much needed.  I've got other issues open that require full relationship support, so I'm closing this one to keep things tidy.


add isRaw to Query annotation

Can achieve raw query like this:
@Query('SELECT * FROM Person WHERE :condition', isRaw: true)
Future<Person> findByCondition(String condition);

and condition like:
String condition = "isDeleted = 0 AND name = '$name'";

Are you finished already and want a review or is this WIP? If its a work in progress, please convert this PR into a draft for now(The option should be somewhere on the right).
If not, please add some test(s) and I will review.

@mqus Any better ideas to accomplish this feature?
This feature is useful if I need to build the query directly and dynamically.

I think the architecture of floor (or room for that matter) is not well-suited for dynamic querying or query-building, but your approach can definitely work and be a middle ground/workaround for that.
We could try to move to a more complex and powerful RawQuery like room has in the future but for now I think this is sufficient.
What are your thoughts, @vitusortner ?

I need this feature now, How can use your commit in my project?


docker build error: unsatisfiable constraints: gcc-9.3.0-r0

Hi,
I've been working with tegola in docker for a couple of months, regularly rebuilding my docker image using the Dockerfile in the tegola repo, and I recently started getting the following build error when the builder runs "apk add gcc=9.2.0-r4":

ERROR: unsatisfiable constraints:
gcc-9.3.0-r0:
breaks: world[gcc=9.2.0-r4]

I'm not aware of having changed anything that would cause this.  I'm wondering if it's possible that the golang:1.14.1-alpine3.11 container image used as a base has been updated to include gcc-9.3.0-r0 and is now incompatible with gcc-9.2?  I'm still relatively new to docker and would think that the tag golang:1.14.1-alpine3.11 would refer to a specific image that doesn't change, but maybe it does get periodic updates?
In any case, I wonder if others have also recently starting getting this error?

@embeepea I believe @gdey has a fix for this here: https://github.com/go-spatial/tegola/pull/700/commits/f72b52e91846386e3131661483d7f210d0872af4
This is about to hit the v0.12.x branch and we're just about ready for release. What branch are you working against?

I've mostly been using 0.11.2, but I tried with 0.12.x this morning and got the same error.
Changing the Dockerfile to "apk add gcc=9.3.0-r0" as in @gday's fix does seem to resolve the issue, at least in the sense that the build succeeds with no error.  (I haven't yet had a chance to actually confirm that the resulting image works correctly.)

@embeepea please let me know if you have any issues with the Dockerfile change as we're going to be cutting a new version of tegola here real soon with that change.

I just tested with  @gdey's fix f72b52e; it seems to work fine for me.  Thanks!

@embeepea great! I'm going to close this issue for now as we're about to merge v0.12.x and we're going to cut that version this week. If you have a chance it would be great if you could test v0.12.x branch in your deployment.

Just to clarify: the fix isn't currently in the v0.12.x branch because the PR (actually there are 2 PRs) containing haven't been accepted/merged yet, right?  When I tested, I did so using the head of the normalize_table_tests branch, which is the branch in https://github.com/go-spatial/tegola/pull/711.
I'll try to keep an eye on v0.12.x and will test again once I notice the fix is there.

Correct. @gdey should be merging those PRs into v0.12.x today / tomorrow.

@embeepea I have merged those two PR into v0.12.x. We should be releasing that version sometime this week.


Migrate CI/CD to Github Action

Hi.
I take all jobs from circle CI and migrate them to github actions.
I add additional action which builds a docker image and deploys it to docker hub when a new tag is created (#61).
You need to add a few secrets to ensure access to codecov and docker hub.
CODECOV_TOKEN - codecov token
DOCKER_USERNAME - docker username
DOCKER_PASSWORD - docker password (but I propose to use docker token)

wow that so fast! thanks!
could you change the docker login to use the token(DOCKER_TOKEN) instead user and password like you propose ? :D

You can see this workflows in my fork. Coverage workflow is falling because there is no CODECOV.

I can also add a step to deploy the image as latest. If it's needed.

I can also add a step to deploy the image as latest. If it's needed.

yes that will be nice

@joanlopez take a look, thanks :D


[Possible Bug] Payment link creation results in a 400(Bad Request) error

First, I want to express my gratitude for the amazing work you’ve done on this project. I've been using the library for quite some time now and I find it really easy to use.
I am not sure whether Paymongo has changed something on their API because right now I am getting 400 (Bad request) when creating a Payment Link. Upon checking their API doc, I found out that the Amount is integer but the library has decimal datatype - which perhaps is the culprit.
https://developers.paymongo.com/reference/create-a-link

Appreciate the love, thanks for letting me know about the issue @reignydeyz !
The difference in datatype is intentional, it is being converted by the client to the integer type that paymongo uses. Eg; 987.75 will be converted to 98775 or 300.00 will be converted to 30000 before being sent to the paymongo server and vice versa. This is a choice that is purely driven to better developer experience since decimals are a much better representation of monetary amounts in C#.
With the current tests it shows a passing result, although there might be an edge case at play.

Could you send in a snippet of the code so I can test with the same scenario? Thanks!

I tried testing it again, and I may have found the culprit.
This is how I do it...
return await _client.Links.CreateLinkAsync(new Link
{
    Amount = form.Amount / 100,
    Description = form.Description
});

Noticed I have to divide amount to 100 for PayMongo to get the correct value. If I don't do this, the transaction will push through but the amount is incorrect...

Given the image above, the actual amount passed is 80, but PayMongo thinks it's 8000

If the amount passed is lower than 100 it will throw an error and not push through.

Thanks for adding in the observations in addition to the code.
From what I can see in the case of the misrepresented amount (80 was read as 8000) it seems to be a problem with the decimal places.
This is how paymongo handles amount values (from docs):

Given this and the code snippet, the API interpreted the value 80.0000 as 8,000 because if translated to 800000 it would be read by paymongo as 8000.00 due to paymongo only accepting 2 decimal values.
limiting/rounding to 2 decimal places as stated in the docs would be the fix.
The links resource also stated that the minimum amount for a link is 100, so unfortunately amounts under 100 cannot be processed by the links api.

For this use case with items under 100 I would recommend using the checkout api instead as it supports amounts lower than 100.00. Do let me know if this fixes the issue for you

Thanks for the quick response. I may have overlooked the API doc and didn't notice the minimum amount required.
I have adjusted my logic to only allow minimum transaction amount of 100.
I've checked the Checkout API and I'm afraid it doesn't have the flexibility as Link's.
Appreciate your kind support. Consider to issue closed.

Thanks for the quick response. I may have overlooked the API doc and didn't notice the minimum amount required.
I have adjusted my logic to only allow minimum transaction amount of 100.
I've checked the Checkout API and I'm afraid it doesn't have the flexibility as Link's.
Appreciate your kind support. Consider the issue closed.


PlatformException when running in Isolate (using plugins that support platform code)

Good day! Could you help?
I am experiencing PlatformException when running PhotoManager in an isolate using a plugin that supports running platform code in an isolate.
More info:
Target API: 29
Dart SDK: 2.13.4
Flutter: 2.2.3
pubspec.yaml:
isolate_handler: 1.0.0
photo_manager: ^1.3.1

Exception has occurred.
PlatformException (PlatformException(error, Activity for the permission request is not exist., null, java.lang.NullPointerException: Activity for the permission request is not exist.
	at top.kikt.imagescanner.permission.PermissionsUtils.getPermissionsWithTips(PermissionsUtils.java:116)
	at top.kikt.imagescanner.permission.PermissionsUtils.getPermissions(PermissionsUtils.java:102)
	at top.kikt.imagescanner.core.PhotoManagerPlugin.onMethodCall(PhotoManagerPlugin.kt:221)
	at io.flutter.plugin.common.MethodChannel$IncomingMethodCallHandler.onMessage(MethodChannel.java:233)
	at io.flutter.embedding.engine.dart.DartMessenger.handleMessageFromDart(DartMessenger.java:85)
	at io.flutter.embedding.engine.FlutterJNI.handlePlatformMessage(FlutterJNI.java:818)
	at android.os.MessageQueue.nativePollOnce(Native Method)
	at android.os.MessageQueue.next(MessageQueue.java:335)
	at android.os.Looper.loop(Looper.java:183)
	at android.app.ActivityThread.main(ActivityThread.java:7664)
	at java.lang.reflect.Method.invoke(Native Method)
	at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:592)
	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:947)
))

import 'package:flutter/material.dart';

/// Welcome to the Isolate Handler example
///
/// In this example we will take a look at how to spawn an isolate and allow it
/// to communicate with the main isolate. The isolate will be using a plugin, too.
///
/// This will be a simple, but complete project. We will start an isolate and
/// send it a string, have it add a path to it and return the value.
///
/// We will also give our isolate a name to make it easy to access from
/// anywhere.

import 'package:isolate_handler/isolate_handler.dart';
// import 'package:path_provider/path_provider.dart';
import 'package:photo_manager/photo_manager.dart';

void main() => runApp(MyApp());

class MyApp extends StatefulWidget {
  @override
  _MyAppState createState() => _MyAppState();
}

class _MyAppState extends State<MyApp> {
// Let's create a new IsolateHandler instance. This is what we will use
// to spawn isolates.
  final isolates = IsolateHandler();

// Variable where we can store the message.
  String isolateMessage = '';

  @override
  void initState() {
    super.initState();

    isolates.spawn<String>(entryPoint,
        name: 'isolate',
        onReceive: communicationFromIsolate,
        onInitialized: () => isolates.send("test", to: "isolate"));
  }

  void communicationFromIsolate(dynamic data) {
    // Show the new message.
    setState(() {
      isolateMessage = data.toString();
    });

    // We will no longer be needing the isolate, let's dispose of it.
    isolates.kill('isolate');
  }

  @override
  Widget build(BuildContext context) => MaterialApp(
        home: Scaffold(
          appBar: AppBar(
            title: const Text('Isolate Handler example'),
          ),
          body: Center(child: Text(isolateMessage)),
        ),
      );
}

// This function happens in the isolate.
void entryPoint(Map<String, dynamic> context) async {
  final messenger = HandledIsolate.initialize(context);

  messenger.listen((msg) async {
    // Use a plugin to get some new value to send back to the main isolate.
    List<AssetPathEntity> _deviceAlbumList =
        await PhotoManager.getAssetPathList(onlyAll: true);
    messenger.send(_deviceAlbumList.length);
  });
}

2nd test:
using flutter_isolate plugin and obtaining Permissions at app start.
Still get the PlatformException.
Please see code using flutter_isolate plugin below:
import 'package:flutter/material.dart';
import 'dart:async';
import 'package:flutter_isolate/flutter_isolate.dart';
// import 'package:path_provider/path_provider.dart';
import 'package:photo_manager/photo_manager.dart';
import 'package:permission_handler/permission_handler.dart';
import 'dart:io';

void main() async {
  runApp(MyApp());
}

void isolatePhotoMgr(String arg) async {
  await PhotoManager.getAssetPathList(onlyAll: true);
}

Future<bool> getPermissions() async {
  var permission = Platform.isAndroid ? Permission.storage : Permission.photos;
  var status = await permission.status;
  switch (status) {
    case PermissionStatus.denied:
      status = await permission.request();
      if (status == PermissionStatus.permanentlyDenied) {
        return openAppSettings();
      }
      return status == PermissionStatus.granted;
    // break;
    case PermissionStatus.granted:
      return true;
    // break;
    case PermissionStatus.restricted:
      return false;
    case PermissionStatus.limited:
      return false;
    case PermissionStatus.permanentlyDenied:
      return openAppSettings();
  }
}

class MyApp extends StatefulWidget {
  @override
  _MyAppState createState() => _MyAppState();
}

class _MyAppState extends State<MyApp> {
  @override
  void initState() {
    super.initState();

    getPermissions().then((value) {
      print("Got permissions" + value.toString());
    });
  }

  Future<void> _run() async {
    final isolate =
        await FlutterIsolate.spawn(isolatePhotoMgr, "isolatePhotoMgr");
    Timer(Duration(seconds: 30), () {
      print("Killing Isolate PhotoMgr");
      isolate.kill();
    });
  }

  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      home: Scaffold(
        appBar: AppBar(
          title: const Text('Plugin example app'),
        ),
        body: Center(
          child: ElevatedButton(
            child: Text('Run'),
            onPressed: _run,
          ),
        ),
      ),
    );
  }
}

This means the plugin has been attached to an activity yet or detached, and permission requests require an activity.

So what's the workaround? Or fix? Right now, its not possible to run this in an isolate.

Tried that, same error and issue.  Any way to pass the permissions from the UI  to the isolate and then into your plugin?
Am using permissions_handler plugin (3rd party plugin) , so should I set this?
 static Future<void> setIgnorePermissionCheck(bool ignore) async {
    await _plugin.ignorePermissionCheck(ignore);
  }

Sure. If you're pretty sure that your calls will definitely have granted with permissions, you can ignore it.

Yes, the call to setIgnorePermissionCheck() seems to have fixed it.  Have only used getAssetPathList() for now, but this is encouraging.   Closing issue.


STORM-2825: Fix ClassCastException when storm-kafka-client uses consu…

…mer config with String-type 'enable.auto.commit'

This is not an issue in master because we don't try to decide processing guarantee from the enable.auto.commit setting there.

+1. Thanks @srdo. Can you please squash the commits before merging. Thanks.

Thanks for the reviews.


Error: TypeError: Cannot read property 'get' of undefined

Describe the bug

To Reproduce

Expected behavior

Screenshots

Applicable Versions:

Netlify CMS version: [e.g. 2.0.4]
Git provider: [e.g. GitHub, BitBucket]
OS: [e.g. Windows 7]
Browser version [e.g. chrome 22, safari 11]

Node.JS version:

CMS configuration

Additional context

Could you describe the bug, ways to reproduce, your config.yml etc? Just an error doesn't provide enough leads for people to help you out.


ValueError with mock_s3 decorator

I'm unable to get an s3 test case working with py.test - here's the exception:
  File "/Users/mperry/env/py3/lib/python3.4/site-packages/botocore/awsrequest.py", line 155, in _send_output
    read, write, exc = select.select([self.sock], [], [self.sock], 1)
ValueError: file descriptor cannot be a negative integer (-1)

Here's the test case
import boto3
from boto3.session import Session

from moto import mock_s3

def _upload(filepath, creds):
    session = Session(aws_access_key_id=creds['accessKeyId'],
                      aws_secret_access_key=creds['secretAccessKey'],
                      aws_session_token=creds['sessionToken'],
                      region_name="us-east-1")

    s3 = session.resource('s3')
    with open(filepath, 'rb') as data:
        s3.Object(creds['bucket'], creds['key']).put(Body=data)

    return True

@mock_s3
def test_fake_upload():
    creds = {
        "key": "_pending/testuser/key.test",
        "accessKeyId": "ak.test",
        "bucket": "mybucket",
        "secretAccessKey": "sak.test",
        "sessionToken": "st.test"}

    s3 = boto3.resource('s3', region_name='us-east-1')
    s3.create_bucket(Bucket=creds['bucket'])
    filepath = 'tests/test.csv'
    assert _upload(filepath, creds)
    with open(filepath) as fh:
        contents = fh.read()
    assert s3.Object(creds['bucket'],
                     creds['key']).get()['Body'].read().decode("utf-8") == contents

Versions; I'm on Python 3.4.3 with
boto==2.38.0
boto3==1.1.4
botocore==1.2.11
httpretty==0.8.10
moto==0.4.15
py==1.4.30
pytest==2.8.2
requests==2.8.1
responses==0.5.0

Any ideas?

This seems to be an issue with HTTPretty and python 3. If you use httpretty==0.8.0, it seems to work.
Feel free to reopen if that doesn't work.


pkg/blobserver/diskpacked: Implement TODO about StreamBlobs

Optimize StreamBlobs for not reading blobs

Hey! Thank you for working on this. Would you mind splitting it up into smaller changes? I see some of the changes here can be split into a separate PR.

Replace with #1400 and #1401.


Editor Crash After Creating Tilemap

Tested versions
4.3.dev 2d0ee20ff
System information
Windows 11
Issue description
I created an empty project, imported a tileset PNG, created a new tileset, placed a few tiles, undid the placements, upped the tileset size to 128x128px, placed a few more tiles, and then hit run, but the play window crashed. After closing the project and attempting to reopen, the editor crashes now as well.
I think information about those original placements is still stored somewhere when the tileset tile size was 16x16, and since there were more tiles present in the 16x16 tilemap, it crashes with an index out of bounds error now that there are fewer tiles.
A sample of the error spam (it is infinite):
ERROR: Cannot create tile. The tile is outside the texture or tiles are already present in the space the tile would cover.
   at: (scene\resources\tile_set.cpp:4153)
ERROR: The TileSetAtlasSource atlas has no tile at (21, 21).
   at: (scene\resources\tile_set.cpp:4590)
ERROR: TileSetAtlasSource has no tile at (21, 21).
   at: (scene\resources\tile_set.cpp:4538)
ERROR: Cannot create tile. The tile is outside the texture or tiles are already present in the space the tile would cover.
   at: (scene\resources\tile_set.cpp:4153)
ERROR: The TileSetAtlasSource atlas has no tile at (22, 21).
   at: (scene\resources\tile_set.cpp:4590)
ERROR: TileSetAtlasSource has no tile at (22, 21).
   at: (scene\resources\tile_set.cpp:4538)
ERROR: Cannot create tile. The tile is outside the texture or tiles are already present in the space the tile would cover.
   at: (scene\resources\tile_set.cpp:4153)
ERROR: The TileSetAtlasSource atlas has no tile at (23, 21).
   at: (scene\resources\tile_set.cpp:4590)
ERROR: TileSetAtlasSource has no tile at (23, 21).
   at: (scene\resources\tile_set.cpp:4538)
ERROR: Cannot create tile. The tile is outside the texture or tiles are already present in the space the tile would cover.
   at: (scene\resources\tile_set.cpp:4153)
ERROR: The TileSetAtlasSource atlas has no tile at (24, 21).
   at: (scene\resources\tile_set.cpp:4590)
ERROR: TileSetAtlasSource has no tile at (24, 21).
   at: (scene\resources\tile_set.cpp:4538)
ERROR: Cannot create tile. The tile is outside the texture or tiles are already present in the space the tile would cover.
   at: (scene\resources\tile_set.cpp:4153)
ERROR: The TileSetAtlasSource atlas has no tile at (25, 21).
   at: (scene\resources\tile_set.cpp:4590)
ERROR: TileSetAtlasSource has no tile at (25, 21).
   at: (scene\resources\tile_set.cpp:4538)

Steps to reproduce
Open the repro, it should crash immediately.
Minimal reproduction project (MRP)
TileMapPlayground.zip

Can't reproduce the crash, although the editor spams errors for a couple of minutes until the scene is loaded. After that it's possible to go to TileSet tab and cleanup the invalid tiles.

Can't reproduce the crash, although the editor spams errors for a couple of minutes until the scene is loaded

Same for me. Godot v4.3.dev (b94eb58d3) - Windows 10.0.19045 - Vulkan (Forward+) - dedicated NVIDIA GeForce RTX 3060 (NVIDIA; <IP_ADDRESS>19) - 11th Gen Intel(R) Core(TM) i7-11700K @ 3.60GHz (16 Threads)

Can someone confirm this on latest? It should have been fixed in:

https://github.com/godotengine/godot/pull/87470

Alternatively it might be fixed by:

https://github.com/godotengine/godot/pull/87478

Still in effect, possible related to:

https://github.com/godotengine/godot/issues/88100

Will look into this when I have the time