Support extracting data that is not affecting fabric bitstream

Motivate of the pull request

[ ] To address an existing issue. If so, please provide a link to the issue:
[x] Breaking new feature. If so, please describe details in the description part -- see https://github.com/lnis-uofu/OpenFPGA/issues/1507

Describe the technical details

Description

The original issue (https://github.com/lnis-uofu/OpenFPGA/issues/1507) that we are trying to solve is to extract BRAM Preload Data that was generated as ".param INIT_i" under blif model

This BRAM Preload Data is not part of fabric bitstream

In Neulink Semi, we have dedicated PCB [Preload Configuration Bits] configuration hardware path that we are able to update BRAM bits directly

This is different from FCB [Fabric Configuration Bits] configuration path which is dedicated for fabric bitstream

Few criteria of the proposed solution

The solution should be generic which is not limited to BRAM Preload Data
Any PB data should be supported as long as it is defined as ".param" or ".attr" under blif model
No matter what data that we would like to extract, it should not affect existing fabric bitstream generation. Fabric bitstream size and content should be 100% unchanged

Proposed solution

In bitstream setting XML, introduce a new <none_fabric> element, which it will define the data(s) that we would like to extract from PB under blif model. I choose to use naming "none_fabric", because this definition (or extraction) should not affect existing fabric data in anyway
At the end of fabric bitstream generation, introduce a new function to call. This function is to extract data that being defined in bitstream setting XML

What does this pull request change?

docs/source/manual/file_formats/bitstream_setting.rst

Update bitstream setting XML format document

libs/libarchopenfpga/src/read_xml_bitstream_setting.cpp, libs/libarchopenfpga/src/bitstream_setting.cpp and libs/libarchopenfpga/src/bitstream_setting.h

This is to support newly introduced <none_fabric> element in bitstream setting XML
These 3 files mainly is to update bitstream setting XML reader to recognize <none_fabric> element and store the information in new none_fabric structure
Example of XML format can be observed in https://github.com/lnis-uofu/OpenFPGA/pull/1566/files#diff-2d16cb2bf930371ab66dceb77f3d25fc5ebaf2be703d80d71ab00e1e6b46b1cfR4-R6

openfpga/src/base/openfpga_bitstream_template.h

At the end of bitstream generation generate template, call the newly introduced function which is able to extract the data

openfpga/src/fpga_bitstream/extract_device_none_fabric_bitstream.cpp and openfpga/src/fpga_bitstream/extract_device_none_fabric_bitstream.h

This is the main function that is able to extract PB data that is generated under blif model.
Support content is either ".param xxxx" or ".attr xxxx"
The extracted data will be written into the filepath that is defined in bitstream setting XML and it is in JSON format.
Example 1 (JSON generated in newly added openfpga_flow task test case)

Example 2 (BRAM Preload Data, locally generated by OpenFPGA for Neulink Semi use case)

openfpga_flow/regression_test_scripts/fpga_bitstream_reg_test.sh, openfpga_flow/tasks/fpga_bitstream/extract_dsp_mode_bit/config/bitstream_annotation.xml and openfpga_flow/tasks/fpga_bitstream/extract_dsp_mode_bit/config/task.conf

Add test

Which part of the code base require a change

[ ] VPR
[ ] Tileable routing architecture generator
[ ] OpenFPGA libraries
[ ] FPGA-Verilog
[x] FPGA-Bitstream
[ ] FPGA-SDC
[ ] FPGA-SPICE
[ ] Flow scripts
[x] Architecture library
[ ] Cell library
[ ] Documentation
[ ] Regression tests
[ ] Continous Integration (CI) scripts

Impact of the pull request

[x] Require a change on Quality of Results (QoR)
[ ] Break back-compatibility. If so, please list who may be influenced.

@alaindargelas

Please rename none_fabric to non_fabric

Already did via https://github.com/chungshien/OpenFPGA/commit/49cdb4e9c80d08de144269ad9aaae0d9c5660aea

@ganeshgore could you please help to review this code.
Per understanding, @tangxifan is busy and might not have time to review this.

Hello @chungshien, Thank you for your contribution. This is an excellent  PR. It ticks all the checkboxes Motivation, Implementation, and CI. Till now we used some external methods to capture preload data but this allows it capture from the OpenFPGA itself, which is very useful.
I am sure Xifan will have his comments, but let me give my opinions here.

I am ok with this but the non_fabric keyword seems difficult to interpret, can we discuss the possibility of using the preload or init_bits keyword
In the above example 2, why there is no data in the first item of grid x=7 and y=2
We should create separate syntax to output this preload information instead of integrating it with the existing write_fabric_bitstream syntax, the user will explicitly know from where they can get preload data.
What will happen If .blif does not contain this parameter, will it generate an error or be assumed to be 0
In the current JSON format is it possible to capture the .blif instance name placed in that grid, so we can update preload without regenerating the bitstream
This is a long-term suggestion that does not have to be part of this PR, but we can keep note of it in issues, I would imagine in the future the final data should be represented as a separate bitstream instead of a JSON file, as we generally use similar methods like bitstream configuration for preload configuration as well.

Thanks again for the PR

Hello @chungshien, Thank you for your contribution. This is an excellent PR. It ticks all the checkboxes Motivation, Implementation, and CI. Till now we used some external methods to capture preload data but this allows it capture from the OpenFPGA itself, which is very useful.
I am sure Xifan will have his comments, but let me give my opinions here.

I am ok with this but the non_fabric keyword seems difficult to interpret, can we discuss the possibility of using the preload or init_bits keyword
In the above example 2, why there is no data in the first item of grid x=7 and y=2
We should create separate syntax to output this preload information instead of integrating it with the existing write_fabric_bitstream syntax, the user will explicitly know from where they can get preload data.
What will happen If .blif does not contain this parameter, will it generate an error or be assumed to be 0
In the current JSON format is it possible to capture the .blif instance name placed in that grid, so we can update preload without regenerating the bitstream
This is a long-term suggestion that does not have to be part of this PR, but we can keep note of it in issues, I would imagine in the future the final data should be represented as a separate bitstream instead of a JSON file, as we generally use similar methods like bitstream configuration for preload configuration as well.

Thanks again for the PR

Hi @ganeshgore,
Here are my responds:

"preload" or "init_bits", I assume you mean the content keyword.

As I mentioned in this PR, the support is generic, it is not limited to only extract preload data (although this is the first use case for us). Any param data (.param xxxxx) that we defined in IP in post synthesis (or exist in blif) can be extracted. Hence everyone (or every application) has different use case. In our IP, when we write our BRAM IP, we define our preload data as "INIT_i". This approach is totally aligned with existing OpenFPGA implementation. Few examples different use case using different naming:
https://github.com/lnis-uofu/OpenFPGA/blob/master/openfpga_flow/tasks/quicklogic_tests/lut_adder_test/config/bitstream_annotation.xml#L2C76-L3
https://github.com/lnis-uofu/OpenFPGA/blob/master/openfpga_flow/tasks/fpga_verilog/adder/soft_adder/config/bitstream_annotation.xml#L2C76-L2C96
https://github.com/lnis-uofu/OpenFPGA/blob/master/openfpga_flow/tasks/fpga_bitstream/overload_dsp_mode_bit/config/bitstream_annotation.xml#L2C82-L2C103

We can only extract data if the resource(s) is being used. If the resource is not even used, there is no data you could extract data from it. In this example, in our device we have two BRAM resources/IPs. However the project design only uses one BRAM resource in my example. Hence you can see:

x7 y2 is empty because it is unused
There is data in x7 y5 because it is used

My original intention is to minimize the changes that we need to make at Tool level. For example, if we need to extract the preload data, hence we just need to update our bitstream setting XML: The JSON will be generated replying exiting command which will need to be called anyway. (If you do not update the bitstream setting XML with non_fabric syntax that you would like to extact, then no JSON will be generated).

But your suggestion will need to update bitstream setting XML as well as compilation flow to include new command.
If you insist to have new command, we can do that in next PR (we can create new issue to track that)

If the parameter is invalid (not exists), there won't be error. I want to leave the next application that consumed the extracted data in JSON file to deal with what to do if something is wrong. OpenFPGA will just try it best to extract the data defined in bitstream setting XML, if something is wrong, OpenFPGA won't error out and disrupt the existing flow.

Here are few examples if we purposely defined something wrong in the XML in the first place.

Line 19: I purposely defined an invalid param (note that PB is still valid)
Line 22: I purposely defined an invalid PB (this phy block does not even exist)

Here is the result:

For invalid related to line 19, because PB is still valid, hence we can still locate the resource (hence you can see the grid information will still be recorded). However in those particular resource, we cannot find any parameter named "invalid", then the data is empty

For invalid related to line 22, because PB is not even valid, hence we cannot even locate the resource. Hence there is no grid information

In summary, my approach is: OpenFPGA will try to generate as much information it could in JSON. It is up to application that consume the JSON to deal with invalid situation.

I do not understand what do you mean ".blif instance name". Can you give few example? If you know where to look in C++ to  know ".blif instance name" please let me know.

We can enhance this in next PR (together with other suggestion if needed)

To be honest, from my perspective, the JSON is equivalent to separate bitstream. It might not look exactly the same as regular bitstream that contain only raw 0 and 1 bits. The application that consumes the JSON (not only generate raw 0 and 1 bits but also as much information) need to post process the JSON, which will be different from case to case. Take our BRAM configuration path, in order to configuration the preload data, we need to set the bram configuration block register the location of XY, hence I need to include grid XY in the JSON.

Hi @ganeshgore, are you OK with all my responds that I posted last week?

Yes it sounds good to me. I already talked with @tangxifan

Yes it sounds good to me. I already talked with @tangxifan

Thanks @ganeshgore. Could you please do us a favor to approve this PR? Thanks


fix: fix build on macos

I hereby agree to the terms of the RisingWave Labs, Inc. Contributor License Agreement.
What's changed and what's your intention?
Fix the compile error on macos introduced by #8253.
error[E0432]: unresolved import `tikv_jemalloc_ctl`
   --> src/compute/src/memory_management/policy.rs:220:9
    |
220 |     use tikv_jemalloc_ctl::{epoch as jemalloc_epoch, stats as jemalloc_stats};
    |         ^^^^^^^^^^^^^^^^^ use of undeclared crate or module `tikv_jemalloc_ctl`

Checklist For Contributors

[x] I have written necessary rustdoc comments
[x] I have added necessary unit tests and integration tests
[x] I have added fuzzing tests or opened an issue to track them. (Optional, recommended for new SQL features #7934).
[x] I have demonstrated that backward compatibility is not broken by breaking changes and created issues to track deprecated features to be removed in the future. (Please refer to the issue)
[x] All checks passed in ./risedev check (or alias, ./risedev c)

Checklist For Reviewers

[ ] I have requested macro/micro-benchmarks as this PR can affect performance substantially, and the results are shown.

Documentation

[x] My PR DOES NOT contain user-facing changes.

IIRC we do not support jemalloc allocator on operating systems other than linux. I'm thinking of the correctness of this fix. (Maybe it should be fixed in the code rather than Cargo.toml)

Should we also enable jemalloc for macOS to make the value meaningful?

Is this way acceptable?

Is this way acceptable? @xx01cyx

LGTM


[3211] BabylonJS demo is not compiled with Bridge 16.4

Fixes #3211

It is not trivial to write an unit test case as the issue requires not only Retyped but also a Retyped library in order to be reproducible. The test case can be based on the demo project at BabylonJS Demo as of 2017-10-19.


Resolvers routes

Routes for resolvers, wiring comes in the next PR

For the rest it looks good to me


Save logs button added to logger screen

Added save logs floating button to logger screen. A call back function added so user can manually save logs using custom logic.

Please merge.


Where to download the pre-trained MobileNetv2 model?

I want to train ssd_lite with MobileNetv2 as the backbone. The pre-trained MobileNetv2 model should b loaded. Where can I download the pre-trained model? Thanks

Please download from the hyper-link in readme Performance section :)

Thanks. But those links refer to the SSD models, which can be used to do inference or evaluate the performance. When training the model by myself, MobileNetv2 model pre-trained on ImageNet should be loaded.

You can try this one: https://github.com/tonylins/pytorch-mobilenet-v2


Helm/injection with template

The mutating webhook config could not be generated when running helm template as it relied on a condition only available during helm install or upgrade. This adds an explicit option when not installing or upgrading istio.
New PR to clean up from #3785

Hi @Rigdon. Thanks for your PR.
I'm waiting for a istio member to verify that this patch is reasonable to test. If it is, they should reply with /ok-to-test on its own line. Until that is done, I will not automatically test new commits in this PR, but the usual testing commands by org members will still work. Regular contributors should join the org to skip this step.
I understand the commands that are listed here.

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.

@costinm thanks for the feedback. this is ready for review with your suggestions.

@costinm I'm more fond of the approach in this PR: https://github.com/istio/istio/pull/3935#issuecomment-374239560
Has no impact if helm template is used, otherwise, it works as expected.
Given @yusuoh 's statement that this problem would be generalized out of the deployment tools into the webhook implementation in the coming few weeks, I'd like to see how that shakes out before we merge.
Cheers
-steve

/hold

The Ansible approach: https://github.com/istio/istio/pull/4389

@Rigdon thanks a ton for the contribution.  At present, my understanding is @yusuoh is working on getting this problem (webhook automation) implemented in a generalized way so each deployment tool doesn't have to implement separately within the next few weeks.  I think it makes sense to wait for that work to be evaled before we merge one of the two approaches that have been submitted for Helm specifically (this also impacts Ansible in the same way - the less duplicated implementations, the better).
Cheers
-steve

Thanks @sdake that makes sense. I described our use case a bit more in #3935 but the strongest requirement is that we not be locked into using Tiller as you mentioned.

@Rigdon re tiller lock-in - there is an overriding desire not to be locked into TIller, but also enable the usage of TIller for those that desire it (IOW Tiller is optional).  Hopeful @yusuoh's work generalizes this problem so its not a deployment tooling problem :)
Cheers
-steve

Closing in favor of #4466


[feature request]: Allow proxy to untrusted SSL certificate websites.

Currently, it is not possible to proxy to websites that use untrusted SSL certificates. For example: curl -x http://<IP_ADDRESS>:3000 -H 'host: google.com' https://<IP_ADDRESS> -vv -k. When this request goes through hudsucker, it returns a 500 status. I have temporarily solved this issue using a change .
What kind of API implementation do you think would be acceptable?

This is already possible by providing a custom hyper client using with_client.


feat: add support to the optimistic governor in base

closes UMA-2544
Changes in this PR:

Add support to Optimistic Governor in Base

fyi dont merge here, pr to snapshot and we can close this out once accepted


Invalid config $uploadDir

Hi,
i followed steps that u said,
but when i want to upload an image, the ajax requests get "500 Internal Server Error" error
and the error is:
message: "Invalid config $uploadDir"
name: "Invalid Configuration"
what is the problem ?
thank you.

there was a problem with uploadDir and uploadURL, got fixed.

how to fix it?

@yanugto
Hi there, this issue is for about 2 years ago, the process of what i've done is a little blury :)
Navigate to the /vendor/yiidoc/yii2-redactor folder, and put the upload directory path in the RedactorModule.php file.
Simply change defaultRoute, uploadDir, uploadUrl variables. my config file looks like this:
public $defaultRoute = 'upload/editor';
public $uploadDir = '../upload/editor';
public $uploadUrl = '/upload/editor';

I have created a upload directory in my frontend web root.
I hope this will help you...

@AlaFalaki  It is not the proper way to fix things....
If you want to upload files in frontend/web than you can do in your config/main.php something like:
..
  'uploadDir' => \Yii::getAlias('@frontend') . '/web/uploads/blog',
 'uploadUrl' => '/uploads/blog',
..

@yanugto  I have the same problem, check if your path in config is correct. My uploadDir path was not correct and I was getting this error, once when I fixed my uploadDir path everything started to work properly...


⚠ Bofrost.at has degraded performance

In 604a744, Bofrost.at (https://www.bofrost.at) experienced degraded performance:

HTTP code: 200
Response time: 1409 ms

Resolved: Bofrost.at performance has improved in 6f3671c after 20 minutes.


shell commands - lexer rules + tests

As title says... lexer rules for shell commands has been fully implemented... I've added some more tests for this as well...
I've a question, though.
Now, it's possible to define a shell command in full single/double-quoted request mutation. For example, you can do this:
httpie post "`echo name`=value"

Is that the expected behavior, @eliangcs ?
If so, I'll add tests for this...
ps: I'm asking because I couldn't think of a reason why the full single/double-quoted request mutation feature  was implemented in first place...

Thanks, @fogine ! This was something I wanted to do in PR #61.
For your question, yes, it's possible to write a shell command in a full quoted mutation, see the test cases here: https://github.com/eliangcs/http-prompt/blob/e0308a106f02b20e3e62b17de2d1e344d1c4d624/tests/test_execution.py#L647
Full quoted mutation was implemented because it works on httpie. For instance, http post http://httpbin.org/post "my message=hello world".

I've added the "pipe to shell command redirection" to this pull request as discussed in  #61 PR.
Things which works now:
localhost> httpie get | tee /tmp/test # output of `httpie get` is redirected to shell subprocess cmd: `tee /tmp/test`
localhost> get some==data| tee /tmp/test # supports "action" commands

localhost> httpie | `echo "sed 's/localhost/<IP_ADDRESS>/' "` # this will be "transformed" to httpie | sed 's/localhost/<IP_ADDRESS>/' .... Also this is the case where I'm not sure if it's implemented in the best possible way

Lexer rules covers all the possible options now.
Tests updated/added...
I think this PR now implements all the remaining functionality to the #61 PR...

Overall looks good. Merged. We can keep fixing details after I resolve the conflicts between PR #61 and the master branch. Thanks!


Typo word "upi"

Get to know Firebase for Flutter
In the sction 6, I found the word "upi". I guess this word is typo.

I don't think this should be an open issue 😅

Hi @tamx, can you show where the typo is?

the below sentence.
"First up, you are instantiating a Form so upi can validate the message actually has some content, and show the user an error message if there isn't any."


chore: add funding field to package.json

https://github.com/npm/cli/pull/273

What kind of change does this PR introduce?
More funding infromation
Did you add tests for your changes?
not required
Does this PR introduce a breaking change?
No
What needs to be documented once your changes are merged?
Nothing

Thanks


Update art-of-illusion to 3.0.3

After making all changes to the cask:

[x] brew cask audit --download {{cask_file}} is error-free.
[x] brew cask style --fix {{cask_file}} left no offenses.
[x] The commit message includes the cask’s name and version.

Thank you for the contribution. It was merged directly as c318528bc16459178473a760a9d0f50061b5716d to keep commit history cleaner. Your contribution is still credited to you.


Running saml2aws login shell command using fastlane hangs

New Issue Checklist

[ x] Updated fastlane to the latest version
[ x] I read the Contribution Guidelines
[ x] I read docs.fastlane.tools
[x ] I searched for existing GitHub issues

Issue Description

When we run saml2aws login --skip-prompt -a xxxx command from terminal it works as following:
Using xxx Account xxx to access xxx https://xxxx
Authenticating as<EMAIL_ADDRESS>...
? Enter verification code
xxxx
Selected role: xxxx
Requesting AWS credentials using SAML assertion
Logged in as: xxxx

But when we are trying to run it using fastlane private lane but it hangs (maybe in reading the saved password or in showing Enter verification code step).
As following:
▸ Using xxx Account xxx to access xxx https://xxxx
▸ Authenticating as<EMAIL_ADDRESS>...

Command executed
private_lane :aws_login do |options|
    sh("saml2aws login --skip-prompt --force -a xxx")
  end

Fastlane --version
fastlane 2.181.0

Not sure if this is related to fastlne or the smal2aws script. I don't think shell commands are supposed to be interactive when called that way, so I think this is the expected behaviour.

There hasn't been any activity on this issue recently. Due to the high number of incoming GitHub notifications, we have to clean some of the old issues, as many of them have already been resolved with the latest updates.
Please make sure to update to the latest fastlane version and check if that solves the issue. Let us know if that works for you by adding a comment 👍
Friendly reminder: contributions are always welcome! Check out CONTRIBUTING.md for more information on how to help with fastlane and feel free to tackle this issue yourself 💪
This issue will be auto-closed if there is no reply within 1 month.

I don't think shell commands are supposed to be interactive when called that way, so I think this is the expected behavior.


End-to-end tests failure

Note: for support questions, please use one of these channels: Chat: AngularClass.slack or Twitter: @AngularClass

I'm submitting a ...
[x ] bug report
[ ] feature request
[ ] question about the decisions made in the repository

What is the current behavior?
I have errors if I run e2e tests:
In first terminal:
npm run webdriver:update
npm run webdriver:start
In second terminal:
npm run e2e

I get this error in second terminal:
E/launcher - Error: TSError: ? Unable to compile TypeScript
Conflicting definitions for 'selenium-webdriver' found at 'd:/web/angular2
<EMAIL_ADDRESS>and<EMAIL_ADDRESS>Consider installing a specific version of this library to resolve the conflict. (4090)
I also get an error if I run e2e:live tests:
npm run e2e:live
ERROR: Invalid Option: --elementExplorer

Please tell us about your environment:

Angular version: 2.4.2
Browser: [ Chrome 55.0.2883.87 m ]

Running the uninstall command did not change anything for me. I still get the same error.

Try this:
npm run clean
npm install
npm run build:prod
npm run e2e

webdriver:update and webdriver:start are uneccesary in the latest version of this starter. We probably need to update the docs to reflect this, and clean up deprecated scripts.

@colinskow , still same issue i run all command provided by you, however, while running e2e i am facing same issue as mentioned by  @Redigast13

This works for me fine after cloning master. What version of TypeScript are you using? (tsc --version) This project (and Angular) work with TypeScript 2.0.10 and are not yet compatible with TS 2.1.x.
This is unlikely to break here, as it is covered in the CI test suite.

With 2.4.1 and TS 2.1.4 everything works great
Sent from my iPhone

On Jan 12, 2017, at 12:14 AM, Colin Skow<EMAIL_ADDRESS>wrote:
This works for me fine after cloning master. What version of TypeScript are you using? (tsc --version) This project (and Angular) work with TypeScript 2.0.10 and are not yet compatible with TS 2.1.x.
This is unlikely to break here, as it is covered in the CI test suite.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub, or mute the thread.

My advice is check your versions of @types/selenium-webdriver and protractor against our package.json in master. You are likely using versions of something with incompatible types.

Finally, i got this working, thanks to @glendaviesnz for pointing out fact that protractor also has selenium, which was conflicting with @type/selenium version, I changed @type/selenium version to match protractor selenium version, and e2e run flawlessly.
However while running e2e:live I am getting following error

Not sure if this is the correct/best answer but since the error was saying it did not like finding two typings in the tsconfig.json file I just removed the reference to "selenium-webdriver" and e2e started working.

@yvChauhan  - for some reason Windows does not like the way the --elementExplorer param is passed in. I haven't got time to work out a proper fix at the moment, but in the meantime if you edit your package.json for e2e:live script and add the e2e:debug line as below e2e:live should then work:
"e2e:live": "npm-run-all -p -r server:prod:ci e2e:debug",
"e2e:debug": "protractor --elementExplorer",

Glen

--elementExplorer is fixed in #1367

When I tested master on Windows I ran into this issue. It is another Windows-specific issue.
The fix is to remove selenium-webdriver from types in tsconfig.json. I will submit this in my next PR.


Move QA scripts to "qa" directory

Codecov Report

Merging #72 into master will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master      #72   +/-   ##
=======================================
  Coverage   53.69%   53.69%
=======================================
  Files           5        5
  Lines         149      149
=======================================
  Hits           80       80
  Misses         69       69

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 e6548b2...e1d02fa. Read the comment docs.

@tisnik Your image is available in the registry: docker pull quay.io/openshiftio/rhel-fabric8-analytics-f8a-api-gateway:SNAPSHOT-PR-72

@tisnik Your image is available in the registry: docker pull quay.io/openshiftio/rhel-fabric8-analytics-f8a-api-gateway:SNAPSHOT-PR-72

@tisnik Your image is available in the registry: docker pull quay.io/openshiftio/rhel-fabric8-analytics-f8a-api-gateway:SNAPSHOT-PR-72


Sample code request url contains extra "bing"

https://github.com/microsoft/bing-search-sdk-for-python/blob/f9a60d68f5287a657e9e71aa0ba05a46b4dda257/samples/rest/BingWebSearchV7.py#L18C50-L18C50

Should be fixed now, please re-open / comment here if you can reproduce.


Install KEDA in tests (#3285)

Backport of https://github.com/knative-extensions/eventing-kafka-broker/pull/3285

/cc @matzew

/lgtm


Updated list of core developers

Names listed in order of date added.

[x] Closes #3892
[x] Fully documented, including whats-new.rst for all changes and api.rst for new API

Thanks @TomNicholas !

thanks, @TomNicholas


NVS runs out of space before expected. (IDFGH-11359)

Answers checklist.

[X] I have read the documentation ESP-IDF Programming Guide and the issue is not addressed there.
[X] I have updated my IDF branch (master or release) to the latest version and checked that the issue is present there.
[X] I have searched the issue tracker for a similar issue and not found a similar issue.

IDF version.
b4268c874a4cf8fcf7c0c4153cffb76ad2ddda4e
ESP-IDF v5.2-dev-3775-gb4268c874a
Espressif SoC revision.
ESP32-S3
Operating System used.
Linux
How did you build your project?
Command line with idf.py
If you are using Windows, please specify command line type.
None
Development Kit.
ESP32 S3 mini
Power Supply used.
USB
What is the expected behavior?
I try saving multiple blobs to the NVS. The NVS partition is 16KB, and the blob sizes are 6 KB and 6 KB respectively.
What is the actual behavior?
The NVS dos not have enough memory.
Steps to reproduce.

git clone git@github.com:amrsoll/nvs_rw_blobs.git
cd nvs_rw_blobs
idf.py flash monitor

Debug Logs.
I (341) main_task: Started on CPU0
I (351) main_task: Calling app_main()
Nothing saved yet!
I (541) storage: Saving blob, pass 1
Writing : 6000
Writing : 6000
W (601) storage: Error (ESP_ERR_NVS_NOT_ENOUGH_SPACE) saving run time blob to NVS!
Blob size : 6000
I (721) storage: Saving blob, pass 2
Writing : 6000
Writing : 6000
W (1031) storage: Error (ESP_ERR_NVS_NOT_ENOUGH_SPACE) saving run time blob to NVS!
I (1141) storage: Saving blob, pass 3
E (1141) storage: Error (ESP_FAIL) reading data from NVS!
Writing : 6000
Writing : 6000
W (1251) storage: Error (ESP_ERR_NVS_NOT_ENOUGH_SPACE) saving run time blob to NVS!
I (1361) storage: Saving blob, pass 4
E (1361) storage: Error (ESP_FAIL) reading data from NVS!

More Information.
See my repository for the source files to reproduce error
https://github.com/amrsoll/nvs_rw_blobs

I fixed a memory leak in the original example.
However, the NVS partition does not want to allocate space for 2x 6KB blobs. I updated the example

 * // Example of nvs_get_stats() to get the number of used entries and free entries:
 * nvs_stats_t nvs_stats;
 * nvs_get_stats(NULL, &nvs_stats);
 * printf("Count: UsedEntries = (%d), FreeEntries = (%d), AllEntries = (%d)\n",
          nvs_stats.used_entries, nvs_stats.free_entries, nvs_stats.total_entries);

So you're saying I should check for available space before committing? How does that explain the bahaviour I am seeing?

Hi @amrdoll,
Please look at the documentation of nvs_stats_t returned by nvs_get_stats. This structure was extended by the member available_entries (not shown in @AxelLin 's example) which indicates useable space for data. Please note, that (over)writing blobs requires extra entries for blob data (one entry per 32 bytes of data) and 2 entries for overhead data (index and key). If you are overwriting existing blob (re-using same key), the data occupied by the old value will be returned to the pool of available entries first after successful writing of the new value. It effectively means, that during the write operation, you will need space for both (data as well as overhead).


Document distributed computing issues & workflows

This PR adds a documentation page.
We may expand it to include:

Documentation (description only) of 1 or more workflows specific to certain systems.
1 or more CLI tools/commands to support those workflows—if the existing ones don't suffice.
Other things.

Please comment below with links/attachments of material to be included.
How to review

Build the documentation and look at the new page.
(TBA.)

PR checklist

[ ] Continuous integration checks all ✅
[ ] Add or expand tests; coverage checks both ✅
[x] Add, expand, or update documentation.
[ ] Update doc/whatsnew.

In Slack, @gidden mentioned Snakemake (GitHub) as one package/tool that could possibly be used to help with distributed computing.

Since there was no input, created #70 to collect that after this is merged and available.


Preview section not working

Hi, the Preview section does not work (spinning arrow) whereas the Code section is generated without issue.
I've tried with several models and several browsers FF, chrome and Safari, the Code always work but the Preview never works.
Are there any settings which are required to have on to have the Preview working?
Thanks

are you using the hosted version (fragments.e2b.dev) or are you self-hosting?

I am using the web version on fragments.e2b.dev.
PS: As shown in the picture, the Preview is greyed out with spinning wheel, not using any extension.

@akasaka99 it looks like you're generating Dart code. Fragments don't support that at the moment

Ah ok just saw the supported frameworks. Thanks


Multi-body and moorings dynamics with Chrono for Proteus

This PR is for merging the Chrono wrappers to Proteus for floating bodies and moorings simulation.
To do:

[ ] update stack to more recent version of Chrono (current stack outdated for this PR)
[ ] develop tests for chrono wrappers
[ ] finish documentation
[ ] clean up code (and separate into smaller files if it makes it clearer)

@tridelat just to verify, you're ready for this to go in even though your todo list above isn't checked off. I'll plan to finish reviewing and merge once I get the tests fixed.

@cekees yes, this can go in, and I can add tests later


Introduction of Github templates

Github templates for issues and pull requests to be configured for this repository.
https://github.com/camaraproject/WorkingGroups/blob/main/Commonalities/documentation/Issue and PR template Howto.md
@rartych  FYI.

Addressed in https://github.com/camaraproject/HomeDevicesQoD/pull/37


Question: Single file library?

The wrapper is currently only a single .h file, which is great!
However, when more functionality is added (especially functionality to wrap objects returned from matplotlib), I think it would become neccessary to split the wrapper into multiple .h files, and maybe outsource some code into .cpp files. (For example for matplotlib.patches and others)
What is you opinion on that?

In principle you're right - in fact, I even went ahead and made a "real" library based on the same principles (github.com/lava/wrappy), based on which it should be pretty easy to do a full-featured wrapper, and at the same time make the code cleaner.
However, after I made it I realized that I'm almost never using it, but I do use this one all the time, and the reason is that it can be useful in ~5 minutes without any complicated setup, just by downloading a single file and adding a few lines of code. The relative popularity of both projects shows that I'm not the only one to feel this.
So I would be extremely hesitant to split this project into multiple files. Instead, if it ever gets big enough to make it seem worthwile, I would probably start a new project and add a link from here for advanced users.

As far as I see it, wrappy is more general purpose?
You would probably not get autocompletion and such things from wrappy...
Your arguments for putting everything into a single file are valid, I think.
(So I'll not try to add new features in separate files in the future ;) )

I'm not sure what you mean by autocompletion? To me, it seems like both libraries would be valuable - a single-header file that you can throw in with your project to get a quick plot, and a "real" library which you can link against for more mature applications, maybe with a slightly more object-oriented interface.
I just think that these are seperate use-cases that call for different solutions, rather than starting with one and slowly morphing it into the other.

Wrappy looks like a general purpose python wrapper to me.
To the user, the functions are still "function.name"s and there are these PythonObjects.
(And I guess, some challenge is, that it somehow competes with boost::python)
For me, the benefit of matplotlib-cpp is not only, that I can use matplotlib in C++, but that I can do so in a very convenient way (by calling matplotlib::whateveriwant() ).
My IDE can tell which functions are available here, and I know at compile time, if the function calls make sense at all. (Maybe more advanced python IDEs can do so as well; have never used them)
(That is what I actually mean by "autocompletion")


[OAP-Cache][POAE7-348]Fix OAP not apply ReuseExchange Optimization

What changes were proposed in this pull request?
OAP  will not apply ReuseExchange optimization due to OAPFileFormat didn't override equals, hashcode, shortName, toString method.
Related issue: 1110, 1423
How was this patch tested?
add a UT, and run TPC-DS query64 , get about more than 2x performance gain(632s -> 289s, lower better).
(If this patch involves UI changes, please attach a screenshot; otherwise, remove this)

equals and hashcode is the key point

- test OAP accumulators on Parquet when join *** FAILED ***
  200 did not equal 100 (OapMetricsSuite.scala:72)

1 Test failed, @jikunshang

@jikunshang On the other hand, OapFileFormat and subclass are all stateful such as they have oapmeta, OapFileFormat holds different meta instance where read different tables, so just judge  the equality of OapFileFormat instance  has potential risks as following:

A OapFileFormat instance init table A meta will equals another OapFileFormat instance init table B meta

One OapFileFormat instance will equals one OptimizedOrcFileFormat instance

@jikunshang On the other hand, OapFileFormat and subclass are all stateful such as they have oapmeta, OapFileFormat holds different meta instance where read different tables, so just judge the type equality of OapFileFormat instance has potential risks as following:

A OapFileFormat instance init table A meta will equals another OapFileFormat instance init table B meta
A OapFileFormat instance will equals a OptimizedOrcFileFormat instance

@LuciferYang Thanks for your comments!
I noticed that ParquetFileFormat also implemnet equal method in a naive way. Will Parquet have the 1st risk too?
About risk 2, I override equals in OptimizedOrcFileFormat and OptimizedParquetFileFormat , I think this will not be a risk, correct me if I'm wrong.

I noticed that ParquetFileFormat also implemnet equal method in a naive way. Will Parquet have the 1st risk too?
No,ParquestFileFormat is Stateless

About risk 2, I override equals in OptimizedOrcFileFormat and OptimizedParquetFileFormat , I think this will not be a risk, correct me if I'm wrong.
@jikunshang You can test manually as following:

println(new OptimizedOrcFileFormat().equals(new OapFileFormat))
println(new OapFileFormat().equals(new OptimizedOrcFileFormat))

The results are false , true. a == b but b != a ? Isn't it strange? ,

I noticed that ParquetFileFormat also implemnet equal method in a naive way. Will Parquet have the 1st risk too?

No,ParquetFileFormat is Stateless

So we should judge OapDataFileMeta in equals method?  I heard from @zhixingheyi-tian that you are trying to refactor this part. Do you have any progress or code can share with us?

@jikunshang #1337 , there is a 2.4 base branch, no 3.0 base branch

@LuciferYang I have removed fix for OAPFileFormat, do you think it make sense now? Any other suggestion?

+1

@winningsix @jikunshang master does not need this patch?

@LuciferYang I have cherry-picked and pushed this patch to master branch.


About chorus

Traditional songs have single chorus and many different verses.
How to represent that in jianpu-ly please?

If the chorus comes at the end, you can just make verse 1 longer:
6, - 7, 1 2 - 1 7, 6, - - 5, 1 - 2 3 4 - 3 2 2 3 - -
L: this is the mi- nor key verse and this is the ma- jor key chorus
L: now for verse two we have this
L: this is the third dem- o verse

thanks


iOS 8 keyboard show "Return" instead of "Go" button for forms with ng-submit on input text focus

Hi All,
Not able to find a workaround or fix the forms with ng-submit when the input focus is on the "return" button shows up in the iOS keyboard instead of "Go" button. Form is placed to wrap the input texts
Regards,
Ravi

What does the HTML for that look like? Can you post a minimal demo, ideally on plnkr.co or similar?

It appears that iOS will only show the 'Go' button when there's an action attribute on the form element.
My workaround was to add the action attribute and to add a submit event handler to prevent the browser from submitting the form data.  This approach lets me send the form data myself via JavaScript.
Demo: http://plnkr.co/edit/cDFXoNs7b7Pbir3y7z1X?p=preview

Hello Narretz,
Please find the demo on the plnkr. This web page needs to be viewed on the iOS 8 phone/mobile device.
Let me know if you need any info. Thanks
http://plnkr.co/edit/sLsOqQ?p=info

Hi jmis,
Yes its works with action attr and preventing a on submit handler on form.
But since im using angular and usinh ng-submit, if you add action its against the principle of angular what it offers. Like the form validation goes for a toss and its not a good practise to have both action and ng-submit.
Regards,
Ravi

Sounds to me like ios is being overly strict here. Does it happen in Safari in iOs, in one of the embedded webviews, or in both?

Yes Narretz it happens in safari iOS not checked on webview.
Let me know if we can put a workaround with this ?

So this is either a browser bug or expected behavior. iOs must base the decision to display "Go" on something. Maybe they should do that when the form has a submit button, and not also when it has an action attribute, I don't know. You can open an issue with Apple for this.
Here's a very simple workaround:
app.directive('fakeAction', function() {
  return {
    link: function(s, e, a) {
      e.attr('action', '');
    }
  }
})

Add this to the form. This adds an empty action attribute. Since the angular form checks the existence of the action attribute in the preLink function, everything will work as before.

There is not much we can do about how iOS decides what to show to the user. At best we could create a directive that would say "ignore the action we provide - it is only so that iOS shows 'Go'" and then you should have to put a dummy action on your form (that's two attributes).
The work-around provided by @Narretz is more concise (just one attribute - or you can even name it form and have it apply to all forms automatically).
Considering this is something that iOS should improve upon (e.g. detecting the presense of a submit button) and there is an easy work-around for Angular apps, I'm going to close this as won't fix.

In my case, I am using wkwebview in my project. But I am not able to get go button. It always comes return button. I will/would appreciate any help.

In my case, I am usng ionic 3 and wkwebview. But this go button is not coming Ios. Instead of go button return button is coming. I will/would appreciate any help.

@Devashish09 As said before, this is iOS specific behavior, and a workaround has been posted in this thread already: https://github.com/angular/angular.js/issues/13070#issuecomment-151558050


Automatic-Module-Name clause added to jar manifest.

Resolves #355

This is a Java 9 and later feature. It won't hurt to have this in there though.


beon: init at 2024-02-26

Description of changes
Notably, this is the font used in the styleguide for the WHY2025 hacker camp.
Things done

Built on platform(s)

[x] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
24.11 Release Notes (or backporting 23.11 and 24.05 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[ ] Fits CONTRIBUTING.md.

Add a :+1: reaction to pull requests you find important.

rename your title to beon: init at2024-02-26

Updated, though TBH for all purely cosmetic changes I think you should petition for them to be included in nixfmt instead of proposing them through review.


Add az-datetime-names-convention rule

Add new rule(s) to check naming convention of properties/parameters that have format: date-time.

Closing in favor of #126


html content inside tabs

Hello
I was wondering if it's possible to insert html content inside ng2-bootstrap tabs.
When I try it the html is displayed as text inside the tabs.
thanks

Just use href="blablabla"
for example:

<tab heading="Static title" ">
Static content

Hi
thank you, it does work if I write each tab in the template explicitly.
If I try and use an array of tabs displayed using an *ngFor, some of the content is ignored.
I'm basing on the example in documentation: https://valor-software.com/ng2-bootstrap/#/tabs
In my code the id of the div is ignored:
typescript:
tabs: Array<any> = [         { title: 'Single Results - bushels per acre', content: '
lalala
', active: true, id: 'singles_bushels_per_acre' } ];
markup:
  <tabset>     <tab *ngFor="let tabz of tabs"          [heading]="tabz.title"          [active]="tabz.active"          (select)="tabz.active = true"          (deselect)="tabz.active = false"          [disabled]="tabz.disabled"          [removable]="tabz.removable"          (removed)="removeTabHandler(tabz)"          [customClass]="tabz.customClass"          [innerHTML]="tabz?.content"         >     </tab>   </tabset>


Fix typo in README.md

Type of changes

[x] Documentation / docstrings

Checklist

[x] I accept that @willmcgugan may be pedantic in the code review.

Description
Fixes typo in README.

Thanks


[Feature Request] Indication of linkage between images and corresponding derived series

Request
Indication of linkage between images and corresponding derived series (link icon under the image thumbnail).
Currently, in order to identify which series have annotations (segmentations or RTSTRUCT), the user should either drag individual series into the viewport and see, or select the annotation and drag it into the viewer.
It might be more intuitive if the availability of annotations could be indicated with an icon next to the series thumbnail (to keep it simple, this could be an icon that is grayed out or not depending on whether annotations referencing the series exist, without any count indicator). This icon could replace the current "Instance number" annotation under the series thumbnail.
Example in v2

this issue address similar problem as #3393  .

As an example, in Slicer, there's a subtle indicator if items are related.  Here the volume Lung-transformed has a curved grid icon on the right indicating that it's under a transform:

When you select the transform it becomes blue and the volume is highlighted:

Or if you select the volume the transform is highlighted:

@dan-rukas do you know if the design for this is being changed?

@james-hanks I do not see this feature implemented (at least not as requested). See example in https://viewer.imaging.datacommons.cancer.gov/v3/viewer/?StudyInstanceUIDs=1.2.840.1136<IP_ADDRESS>012426995727721871016249335309434385.


Polyphony_rnn_train cmd, Incompatible shapes: [50880] vs. [51520] & hparam no effect

I attempted to run:
polyphony_rnn_train --run_dir=/home/mark/ML/workplace/chopin/polyphony_rnn/logdir/run1 --sequence_example_file=/home/mark/ML/workplace/chopin/sequence_examples/training_poly_tracks.tfrecord --hparams={'rnn_layer_sizes':[64,64],'batch_size':64} --num_training_steps=20000
But it terminated with this error:
INFO:tensorflow:Error reported to Coordinator: <class 'tensorflow.python.framework.errors_impl.InvalidArgumentError'>, Incompatible shapes: [50880] vs. [51520]          [[Node: mul_6 = Mul[T=DT_FLOAT, _device="/job:localhost/replica:0/task:0/cpu:0"](ToFloat_3, Reshape_4)]]
and
Caused by op u'mul_6', defined at:   File "/home/mark/miniconda2/envs/magenta/bin/polyphony_rnn_train", line 11, in <module>     sys.exit(console_entry_point())   File "/home/mark/miniconda2/envs/magenta/lib/python2.7/site-packages/magenta/models/polyphony_rnn/polyphony_rnn_train.py", line 97, in console_entry_point     tf.app.run(main)   File "/home/mark/miniconda2/envs/magenta/lib/python2.7/site-packages/tensorflow/python/platform/app.py", line 43, in run     sys.exit(main(sys.argv[:1] + flags_passthrough))   File "/home/mark/miniconda2/envs/magenta/lib/python2.7/site-packages/magenta/models/polyphony_rnn/polyphony_rnn_train.py", line 78, in main     mode, config, sequence_example_file)   File "/home/mark/miniconda2/envs/magenta/lib/python2.7/site-packages/magenta/models/shared/events_rnn_graph.py", line 149, in build_graph     tf.to_float(tf.equal(labels_flat, no_event_label)) * mask_flat)   File "/home/mark/miniconda2/envs/magenta/lib/python2.7/site-packages/tensorflow/python/ops/math_ops.py", line 814, in binary_op_wrapper     return func(x, y, name=name)   File "/home/mark/miniconda2/envs/magenta/lib/python2.7/site-packages/tensorflow/python/ops/math_ops.py", line 987, in _mul_dispatch     return gen_math_ops.mul(x, y, name=name)   File "/home/mark/miniconda2/envs/magenta/lib/python2.7/site-packages/tensorflow/python/ops/gen_math_ops.py", line 1613, in mul     result = _op_def_lib.apply_op("Mul", x=x, y=y, name=name)   File "/home/mark/miniconda2/envs/magenta/lib/python2.7/site-packages/tensorflow/python/framework/op_def_library.py", line 759, in apply_op     op_def=op_def)   File "/home/mark/miniconda2/envs/magenta/lib/python2.7/site-packages/tensorflow/python/framework/ops.py", line 2240, in create_op     original_op=self._default_original_op, op_def=op_def)   File "/home/mark/miniconda2/envs/magenta/lib/python2.7/site-packages/tensorflow/python/framework/ops.py", line 1128, in __init__     self._traceback = _extract_stack() InvalidArgumentError (see above for traceback): Incompatible shapes: [50880] vs. [51520]          [[Node: mul_6 = Mul[T=DT_FLOAT, _device="/job:localhost/replica:0/task:0/cpu:0"](ToFloat_3, Reshape_4)]]
Also I noticed the hparam argument that I passed did not make any effect to the actual training since the log data returned rnn_layer_sizes:[256,256,256] which is the default when I set it to [64,64] from the tutorial page:
INFO:tensorflow:hparams = {'rnn_layer_sizes': [256, 256, 256], 'decay_rate': 0.95, 'dropout_keep_prob': 0.5, 'batch_size': 64, 'decay_steps': 1000, 'clip_norm': 5, 'initial_learning_rate': 0.001, 'skip_first_n_losses': 10} INFO:tensorflow:Train dir: /home/mark/ML/workplace/chopin/polyphony_rnn/logdir/run1/train WARNING:tensorflow:From /home/mark/miniconda2/envs/magenta/lib/python2.7/site-packages/tensorflow/python/training/supervisor.py:344 in __init__.: __init__ (from tensorflow.python.training.summary_io) is deprecated and will be removed after 2016-11-30. Instructions for updating: Please switch to tf.summary.FileWriter. The interface and behavior is the same; this is just a rename. INFO:tensorflow:global_step/sec: 0 INFO:tensorflow:Starting training loop...
I'm running this on a Xeon E5 with 8 cores and 16 GB of RAM, so performance shouldn't be bottlenecking I assume. I researched online, it seems that for another tensorflow application (https://github.com/dennybritz/chatbot-retrieval/issues/15) the incompatible shapes were fixed by modifiying the hparam, but that doesn't seem to be an option here?
Thanks for helping!

Similar issue with https://github.com/tensorflow/magenta/issues/549
This error can be avoided by changing the code in polyphony_model.py skip_first_n_losses to 0

Same issue here on Linux Ubuntu 14. The error log:
https://gist.github.com/lasconic/43654e8c75a8201b2d9cdabe20138899

This should have been fixed by #551. Can you verify that you're using the latest release of Magenta?


Update Configuring-Alternate-Login-ID.md

Spelling error

there to their
Thanks for catching that grammar issue.

#sign-off


introduce app logic to warn users when they create triggers less than 50 sq/m

closes #197 for real.
lets review this after the 0.2.2 release.

yolo.


Simplify external package requirements for CI and tox env

External packages to install are listed in individual yml file and in tox.ini. This can lead to a situation of having incorrect version of package installed if a specific version is pinned and if both places are not updated.
Solution is to have two common requirement files and refer these req files instead of individually listing packages.
ci_tools.txt which has ci required packages
test_tools.txt that has list of packages for test(pytest, pytect-cov etc)

Can one of the admins verify this patch?


unable to enable extension

hello,
it's impossible to activate the extention in back office.
I have install, and uninstall the extention, and the isse is the same.
the extention version is v2.1.1

Can I get the error when you trying to activate the extension and php flarum info output?

I don't have error message when i triy to activate the extention.
php flarum info output
Flarum core: 1.8.3
PHP version: 8.1.28
MySQL version: 5.7.42-log
Loaded extensions: Core, date, libxml, openssl, pcre, sqlite3, zlib, bcmath, bz2, calendar, ctype, curl, dba, dom, hash, FFI, fileinfo, filter, ftp, gd, gettext, gmp, json, iconv, SPL, session, intl, standard, mbstring, memcached, mongodb, mysqlnd, PDO, pdo_mysql, pdo_pgsql, pdo_sqlite, pgsql, Phar, posix, pspell, redis, Reflection, imagick, SimpleXML, soap, sockets, sodium, imap, ssh2, exif, sysvmsg, sysvsem, sysvshm, tokenizer, xml, xmlreader, xmlwriter, xsl, zip, mysqli, ionCube Loader, Zend OPcache
+----------------------------------+---------------+--------+
| Flarum Extensions                |               |        |
+----------------------------------+---------------+--------+
| ID                               | Version       | Commit |
+----------------------------------+---------------+--------+
| fof-pages                        | 1.0.8         |        |
| flarum-tags                      | v1.8.0        |        |
| flarum-markdown                  | v1.8.0        |        |
| flarum-flags                     | v1.8.0        |        |
| flarum-suspend                   | v1.8.1        |        |
| fof-sitemap                      | 2.2.1         |        |
| v17development-seo               | v1.8.0        |        |
| askvortsov-rich-text             | v2.1.7        |        |
| flarum-sticky                    | v1.8.0        |        |
| flarum-lock                      | v1.8.0        |        |
| afrux-forum-widgets-core         | v0.1.7        |        |
| fof-spamblock                    | 1.1.2         |        |
| blomstra-gdpr                    | 0.1.0-beta.20 |        |
| flarum-approval                  | v1.8.0        |        |
| webbinaro-calendar               | 1.7.0         |        |
| v17development-blog              | v0.7.7        |        |
| the-turk-stickiest               | 3.0.1         |        |
| nearata-prevent-double-posting   | 1.1.0         |        |
| nearata-cakeday                  | v2.2.0        |        |
| michaelbelgium-discussion-views  | v7.2.1        |        |
| littlecxm-whisper                | 0.1.5         |        |
| justoverclock-welcomebox         | 2.0.2         |        |
| justoverclock-hot-discussions    | 0.1.2         |        |
| jslirola-login2seeplus           | v0.2.1        |        |
| ianm-log-viewer                  | 0.1.1         |        |
| fof-user-bio                     | 1.3.1         |        |
| fof-upload                       | 1.4.6         |        |
| fof-terms                        | 1.3.0         |        |
| fof-stopforumspam                | 1.2.4         |        |
| fof-split                        | 1.1.1         |        |
| fof-socialprofile                | 1.1.6         |        |
| fof-pretty-mail                  | 1.1.2         |        |
| fof-oauth                        | 1.6.2         |        |
| fof-nightmode                    | 1.5.3         |        |
| fof-merge-discussions            | 1.4.1         |        |
| fof-links                        | 1.2.3         |        |
| fof-frontpage                    | 1.2.0         |        |
| fof-default-group                | 1.1.2         |        |
| fof-cookie-consent               | 1.1.3         |        |
| fof-clockwork                    | 1.0.4         |        |
| fof-best-answer                  | 1.4.2         |        |
| fof-ban-ips                      | 1.1.1         |        |
| fof-analytics                    | 1.1.0         |        |
| flarum-subscriptions             | v1.8.0        |        |
| flarum-statistics                | v1.8.0        |        |
| flarum-nicknames                 | v1.8.0        |        |
| flarum-mentions                  | v1.8.2        |        |
| flarum-likes                     | v1.8.0        |        |
| flarum-lang-french               | v4.17.0       |        |
| flarum-extension-manager         | v1.0.1        |        |
| flarum-bbcode                    | v1.8.0        |        |
| davwheat-custom-sidenav-links    | 1.0.1         |        |
| datlechin-simple-tour-guide      | v0.0.1        |        |
| datlechin-link-preview           | v1.4.0        |        |
| clarkwinkelmann-mass-actions     | 1.1.2         |        |
| clarkwinkelmann-mailing          | 1.1.0         |        |
| clarkwinkelmann-formatted-banner | 1.0.0         |        |
| clarkwinkelmann-emojionearea     | 1.0.0         |        |
| clarkwinkelmann-circle-groups    | 1.0.1         |        |
| askvortsov-pwa                   | v3.3.3        |        |
| askvortsov-markdown-tables       | v1.2.1        |        |
| askvortsov-categories            | v3.0.9        |        |
| afrux-top-posters-widget         | v0.1.4        |        |
| afrux-online-users-widget        | v0.1.6        |        |
| afrux-news-widget                | v0.1.1        |        |
+----------------------------------+---------------+--------+


squid.conf: reorder pre-auth plugins and local auth settings

Reason: to allow squid plugins define auth methods.
In my case I made plugin proxy-sso, which defines negotiate method for proxy authentication. This method included before basic to allow domain user to authenticate without appearing user credentials dialog.
squid.conf part:
icap_enable off
include /usr/local/etc/squid/pre-auth/*.conf
auth_param basic program /usr/local/etc/inc/squid.auth-user.php
auth_param basic realm OPNsense proxy authentication
auth_param basic credentialsttl 2 hours
auth_param basic children 5
acl local_auth proxy_auth REQUIRED
pre-auth plugin:
auth_param negotiate program /usr/local/libexec/squid/negotiate_kerberos_auth -d -i -s<EMAIL_ADDRESS>auth_param negotiate keep_alive on
auth_param negotiate children 5
In this case if user is domain member and logged in to domain, it authenticates without entering user credentials. If user is domain member, but not logged to domain, it enters credentials and authenticates using LDAP connector. If user is not domain member, it has ability to enter user credentials and authenticate on Local Database.

looks good to me, maybe eventually we would be better of to also move OPNsense/Proxy/squid.user.local_auth.conf to the pre-auth directory


Redis transport

Depends on https://github.com/portertech/em-redis/pull/4

Sensu specs are passing, using the Redis transport :+1:
portertech@d2o:~/projects/sensu/sensu (feature/redis-transport *)$ be rake
/home/portertech/.rubies/2.1.2/bin/ruby -I/home/portertech/.gem/ruby/2.1.2/gems/rspec-core-3.0.4/lib:/home/portertech/.gem/ruby/2.1.2/gems/rspec-support-3.0.4/lib -S /home/portertech/.gem/ruby/2.1.2/gems/rspec-core-3.0.4/exe/rspec ./spec/api/process_spec.rb ./spec/cli_spec.rb ./spec/client/process_spec.rb ./spec/client/socket_spec.rb ./spec/daemon_spec.rb ./spec/server/filter_spec.rb ./spec/server/handle_spec.rb ./spec/server/mutate_spec.rb ./spec/server/process_spec.rb ./spec/utilities_spec.rb
{"timestamp":"2015-05-18T22:51:44.824341-0700","level":"fatal","message":"transport connection error","error":"connection closed"}
...........................................................................................................................

Finished in 1 minute 10.06 seconds (files took 0.1808 seconds to load)
123 examples, 0 failures

Ready for review :+1:

It is possible for JIT Redis connection creation to trigger a reconnect, as connected?() may return false. Also, the connection monitor is currently enforcing a 3 second timeout :-1:

@grepory :boom:

We're ready for this to make it into a beta build :+1:


Update index.md

Fixed typo in Firewall section.


Forbid encryption of public rooms

Description
It also forbids change of join_rule for existing public rooms, otherwise someone can change to private and then enabled encryption, which is what the Android convert button is doing.
Test
On Dev :

[x] public room can not be encrypted - OK
external users can not access or be invited in public room nor private rooms
external users can access only external rooms
check encryption is enabled on private and external rooms

Deployment progression : https://github.com/tchapgouv/tchap-infra/pull/2524

Test - on dev

public room can not be encrypted (with Element Client) - OK

We try to enable the encryption on a public room

Click on OK on first confirmation box

Click on OK on second confirmation box

The switch widget for encryption did not change and the HTTP response to the request is 403


Lint

@fregante I went through them all only @typescript-eslint/require-await': 'error' am I not sure if they are correct.

Everything else looks good so far. Let me know when you’re done making changes, I might have other rule suggestions

I am good except for my first comment

Ok, can you sort them?

Group by state (2 groups: either disabled from the shared config, or new rule)
Alphabetically in each group

rules: {
	/* Disable rules */
	a: "off",
	b: "off",

	/* Add rules */
	c: "error",
	d: "error",
}

If you want to update the dependencies, this would be useful: https://github.com/fregante/webext-storage-cache/pull/20


docs: add some map functions

The latest updates on your projects. Learn more about Vercel for Git ↗
Name	Status	Preview	Comments	Updated (UTC)
databend	❌ Failed (Inspect)			May 13, 2024 5:44am

这个报错修复中


Cant package 4.27

The game works fine in editor, but when I try to package it it gives me this error:

Weird, find DefaultALS.ini, remove all text inside and try again, this should help.

I removed all text inside DefaultALS.ini and now it packages project, but when I press PLAY it just crashes.
Also in editor it also crashes. I guess it still requires that content from ini file.

When I use DefaultALS.ini from github it just give me this, but maybe its because of my file structure?
With "DefaultALS.ini" it works in Editor, but not in Packaged.
I have my project called ALS_Ref. It is empty C++ project, that contains plugins folder and the plugin itself is in the:
ALS_Ref/Plugins/ALS/ALS.uplugin. I used same structure when I tested ALS Community c++ version and it worked ok.

Thank you

Also open BP_Als_Character and assing correct MovementSettings as shown in this screenshot:

Thanks!


Implement cookieless web analytics

I don't want to use Google Analytics for this project for privacy and performance concerns.
If i were hosting on my own infrastructure, i could gather some basic analytics from HTTPd logs.
There are some ethical analytics services on the market, but none of them have free tier option and i'm currently running this project completely free on GitHub Pages.
GitHub itself does not currently seem to have any analytics for Pages https://github.com/orgs/community/discussions/31474

tl;dr: yes, there is no way to use Google Analytics without cookie consent: https://www.simpleanalytics.com/blog/website-analytics-without-cookies#how-do-i-use-google-analytics-lawfully

I don't want to pay 9$/month, i don't care how many people are visiting my website tbh https://www.simpleanalytics.com/pricing

Another privacy-focused analytics service: https://usefathom.com/pricing


Install Steps Do Not Work

Currently, the installation instructions specify that one should unzip the container, and add the bin folder to the path. However, the bin folder is now the scripts folder so the bin folder does not exist. The scripts inside search on paths that do not exist and the location the javacc.jar file should be placed is not specified. This makes it complex and difficult for a user to install and use javacc for the first time.
I suggest changing the classpath in javacc.bat, jjdoc.bat and jjtree.bat to %~dp0../target/javacc.jar. This will search for javacc.jar in javacc/target instead.
In addition, the fact that the jar must be added is not included in the install instructions. I suggest all build releases include javacc.jar in the target folder, or additional instructions such as:

Finally, you should download or build javacc.jar, and place it in the target folder in the main directory.

Should be added to the README.md and website, with the references to bin replaced with scripts

Fixed by #157


Error: Class 'League\Flysystem\AwsS3v3\AwsS3V3Adapter' not found

Hi,
I have upgraded my code to v2 and now I can't seem to get it working. I get the error bellow althouth the file exists in the correct path in vendor directory .
Error: Class 'League\Flysystem\AwsS3v3\AwsS3V3Adapter' not found
In my composer json I have the lines bellow and it installs 2.0.3 of both packages
"league/flysystem": "2.0.",
"league/flysystem-aws-s3-v3": "2.0.",
My code:
use Aws\S3\S3Client;
use League\Flysystem\AwsS3v3\AwsS3V3Adapter;
use League\Flysystem\Filesystem as FlySystem;
$client     = new S3Client($s3Configs);
$adapter    = new AwsS3V3Adapter($client, $configs["bucket"], $container);
$filesystem = new FlySystem($adapter, ["visibility" => "public"]);
I can't understand the issue. help would be welcome.

fixed. please ignore

fixed. please ignore


[Question] File downloading

I'd like the user to be able to download a file I have within the /app directory via an API call. Which is the best way to do this, given that this file can be considerably big?

you can use https://www.starlette.io/responses/#fileresponse
On Wed, Sep 4, 2019 at 3:37 PM driribarne<EMAIL_ADDRESS>wrote:

I'd like the user to be able to download a file I have within the /app
directory via an API call. Which is the best way to do this, given that
this file can be considerably big?
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/tiangolo/full-stack-fastapi-postgresql/issues/58?email_source=notifications&email_token=AAINSPRJK4FFE3WA5KSK2SLQH622FA5CNFSM4ITSA2X2YY3PNVWWK3TUL52HS4DFUVEXG43VMWVGG33NNVSW45C7NFSM4HJICUMA,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAINSPVJ4N4NXPKO4D5TIEDQH622FANCNFSM4ITSA2XQ
.

--
benoit barthelet
http://pgp.mit.edu/pks/lookup?op=get&search=0xF150E01A72F6D2EE

Yes, I had been trying with this but I got stuck... I do not get where to use this async def or if I even have to use it. If someone have done this and would be glad to share a bit more of detail about the implementation I'd be very appreciated :)

Thanks for the help here @euri10 ! :clap: :bow:
Thanks for reporting back and closing the issue @driribarne  :+1:


Add DNS Please

When my ESP8266 connected to router or wifi repeater, it automatically got DNS setting.  So no problem when using host name eg. "www.google.com" because it will return the host IP address automatically.
But unfortunately, this esp_wifi_repeater forgot included automatic DNS setting. Host IP address always return <IP_ADDRESS> because can't found any DNS setting.
Please add DNS

Don't undertstand the problem: a DNS address is distributed by the AP. It redistributes the DNS it receives from the uplink AP. If none available (yet), it uses Google's <IP_ADDRESS>.

Sorry... my mistake not explaining the details completely.
My network address is <IP_ADDRESS> and my router IP address is <IP_ADDRESS>. I have ESP-12F as repeater (installed with your esp_wifi_repeater) which has IP address <IP_ADDRESS>. Also I have ESP32 which connected to ESP-12F repeater.
1.  DHCP
With IP address from DHCP, ESP32 doesn't have an issue with DNS. DNS works perfectly.
ESP32 got IP address <IP_ADDRESS> from ESP-12F DHCP. Although IP address <IP_ADDRESS> in range of my network address, but ESP32 can not be found. It seems ESP-12F repeater created its own network, that is why ESP32 can not detected in my network. My network only found ESP-12F repeater (<IP_ADDRESS>) and can not found ESP32.
2. Fixed IP address
Try ESP32 with fixed IP address <IP_ADDRESS>. Same as #1 above, also can not found in my network (because ESP-12F repeater created separate netwok). And DNS not working in this mode, www.google .com got IP address <IP_ADDRESS>.
Those 2 issues not happen when I use real hardware repeater (TP-Link WA860RE).

Hardware repeater and ESP32 both found in my network range
No problem with DNS. With IP address from DHCP or with fixed IP address, both always has DNS setting from hardware repeater.

Please let me know, how to fix those 2 issues?
I need both ESP-12F and ESP32 found in my network and receive DNS setting.

The esp_wifi_repeater is in fact a NAT router as described in the Readme. This means it has two different IP network segments and does routing in between them. A node behind the AP cannot be reached directly from the STA side, even if it has an address of the range of the STA side (which is a strange/wrong IP config).
Do the following config:

repeater has an IP address at the STA side, let's say <IP_ADDRESS>
repeater has an IP address at the AP side, let's say <IP_ADDRESS> (default)
the ESP32 connected to the AP has a fixed IP, let's say <IP_ADDRESS>

Now configure a portmap on the repeater:
portmap add TCP 80 <IP_ADDRESS> 80
Now you can reach the ESP32 (on port 80) from the outside (<IP_ADDRESS>/24 network) at the address of the repeater, i.e. <IP_ADDRESS>. Configure and save this port mapping for any port you need to be accessible.
Hope this explains.

I got same problem like this issue but have little different.
Here is my situation:
Hardware router at <IP_ADDRESS> with ssid "WIFI" and config local dns server <IP_ADDRESS>
Local http server connect to hardware router and ip <IP_ADDRESS>
Local dns server <IP_ADDRESS> running dnsmasq,have a record like "www.example.com=<IP_ADDRESS>"
Esp repeater connect to "WIFI" and get STA dhcp ip like <IP_ADDRESS> from hardware router.
ComputerA connect to esp repeater get dhcp ip like <IP_ADDRESS>
If computerA request a website address "www.example.com" it will point to <IP_ADDRESS>?

Yes, it should: The esp_wifi_repeater by default distributes the same DNS server to its STA as the one it learned from its uplink AP. Usually standard home routers implement their own DNS server, so probabyl <IP_ADDRESS> with use <IP_ADDRESS> as DNS and resolve "www.example.com" to<IP_ADDRESS>.

So if here have 5 esp repeater and use automesh mode link like a chain.
It still work well?I know them will have a group like 10.24..
Any other computer if connect to any one of chain node still learn dns server from uplink hardware router?
Still will point to local webserver when them request "example.com"?

Yes, they all will use the <IP_ADDRESS> as DNS. As long a requests from somewhere in the chain go outbound to 192.168.1.xx or further to the Internet - no problem.

Hi, nice work.
I have been using my esp8266 as a repeater for a while now and it works quite well, but now I am connecting my Esp to a wifi with proxy and that resolves the connections through 2 DNS, but the fact is that I can only configure one and I think that that's what gives me connection instability.
How can i fix this?

The esp_wifi_repeater is in fact a NAT router as described in the Readme. This means it has two different IP network segments and does routing in between them. A node behind the AP cannot be reached directly from the STA side, even if it has an address of the range of the STA side (which is a strange/wrong IP config).
Do the following config:

repeater has an IP address at the STA side, let's say <IP_ADDRESS>
repeater has an IP address at the AP side, let's say <IP_ADDRESS> (default)
the ESP32 connected to the AP has a fixed IP, let's say <IP_ADDRESS>

Now configure a portmap on the repeater: portmap add TCP 80 <IP_ADDRESS> 80 Now you can reach the ESP32 (on port 80) from the outside (<IP_ADDRESS>/24 network) at the address of the repeater, i.e. <IP_ADDRESS>. Configure and save this port mapping for any port you need to be accessible.
Hope this explains.

In this example Repeater STN IP is <IP_ADDRESS> STA IP and Repeater AP IP is <IP_ADDRESS> and  portmap add TCP 80 <IP_ADDRESS> 80 .
So any TCP request to  STN <IP_ADDRESS>  will be routed  to <IP_ADDRESS> by <IP_ADDRESS> Repeater.
And above example working fine as this has to connect to one TCP port .
But in case if have more than one STNs  on <IP_ADDRESS>  then how it will work  ?
For example if have two STNS (ESP) connected on <IP_ADDRESS>  one is <IP_ADDRESS> as above And other is <IP_ADDRESS>
So Please if you have some idea how this can be achieved  ?
Thanks!!


Add Velociraptor App

Add initial Velociraptor app, allowing for the following actions:

Add client label
Add client quarantine (Only Windows hosts supported at this time)
Get client ID
Get client flows
Get client flow results
Get client label
Get hunt flows
Get hunt results
Remove client label
Remove client quarantine
Search filename (create a hunt for a particular file name)
Search hash (create a hunt for a particular file hash)
Search with custom query (free-form VQL command)

Authentication occurs through the use of a Velociraptor API config file uploaded to and referenced from the Shuffle Admin -> Files section via the $fileid value.

Super nice work Wes. Glad you got it running with the latest SDK! Looks like the "get client label" function didn't exist in python, so I commented it out for now.
From our analyzer:
===> Couldn't find action "get_client label" from ./velociraptor/1.0.0/api.yaml in script ./velociraptor/1.0.0/src/app.py

Could you also write a readme and paste in the info you have in this pull request + how to authenticate? Pictures always welcome for this ;)

Thanks! Looks like I actually renamed that action, but never changed it in the app code (https://github.com/Shuffle/python-apps/pull/294/commits/c6ac2af5930ba4f869e082dd4a1bb5ae5b071f81#diff-bad7c19484288be6fbca93ad238e5ad50bd924d973842957f2449580af1e08c6R62). I'll submit another PR soon to fix it. As for the other stuff, will do!


[ci skip] adding user @PhilippBach

Hi! This is the friendly automated conda-forge-webservice.
I've added user @PhilippBach as instructed in #11.
Merge this PR to add the user. Please do not rerender this PR or change it in any way. It has [ci skip] in the commit message to avoid pushing a new build and so the build configuration in the feedstock should not be changed.
Please contact conda-forge/core to have this PR merged, if the maintainer is unresponsive.
Fixes #11

@PhilippBach As discussed, with this PR you are added as maintainer :rocket:.


[incubator/haproxy-ingress] haproxy-ingress configurable side-car containers

What this PR does / why we need it:

Updates haproxy_exporter image to v0.10.0
Allows configuring the prometheus-exporter and access-logs side-car containers

image
resources
extra args (for haproxy_exporter)

I created the controller.logs section in the values file, and renamed controller.accessLogsSidecar to controller.logs.enabled, now defaulting to false. Resources are not set by default on the side-car containers.
Which issue this PR fixes
(optional, in fixes #<issue number>(, fixes #<issue_number>, ...) format, will close that issue when PR gets merged)
Special notes for your reviewer:
Checklist
[Place an '[x]' (no spaces) in all applicable fields. Please remove unrelated fields.]

[x] DCO signed
[x] Chart Version bumped
[x] Variables are documented in the README.md

/ok-to-test

/lgtm

/approve

/reset

/retest

/approve


Bring your own Decimal.js implementation

Problem

Right now Decimal in the Prisma Client is tied to the Decimal.js implementation.
Community libraries change over time, we shouldn't tie ourselves to a specific implementation
Suggested solution

Turn all the internal decimal operations we do in Prisma Client into an interface. This way Decimal.js implements that interface, but it's possible to bring your own Decimal implementation.
Additional context

We may also want to deprecate import { Decimal } from '@prisma/client' which imports Decimal.js. I'd also be fine leaving it since it doesn't cause much harm and it's convenient for the common case.

Could somebody clarify whether decimal.js has a fixed version bundled in with the runtime or are we able to provide the version used via a peer dependency?
Context: We want to use decimal.js to represent decimal values in postgres but we don't want a case where we have two versions of decimal.js bundled and don't want to make our core library (with decimal utilities) dependent on prisma runtime in order to avoid that.
Ie. Decimal below should be an identical constructor so that instanceof works as expected.
import { Decimal } from 'decimal.js'
import { Decimal } from '@scope/utilities'
import { Decimal } from '@prisma/client'


Problem setting voltage with CV mode

I have flashed the dps5005 unit successfully and tested cc mode which works ok (setting 1A results in 1.6A running). Then i tried cv mode but when i go to set the voltage it jumps from 0.00 to 17.46 then 17.63 then 17.80. I cannot set the voltage correctly, tried rebuilding/reflashing without success. Not sure if this issue is just me or the version i have compiled

I would guess the DPS hardware changed. It's neither you nor your setup ;) I will see if I can reproduce it on one of my newer DPS:es.

I have a similar problem. If I set the Voltage to 5V and turn it on, it measures ~4.7V. Same for other voltages (no load attached).

A calibration mode has been discussed some time ago and probably should be implemented. Still this variation is unexpected of the hardware unless the design changed.

I see exactly the same behaviour wrt. output voltage on my new '5005. I will look into solving this at build time.

As this is a duplicate of #17 I am closing this one.


China support

At beta.2 the alb-ingress-controller deployed to China regions fails with errors related to certain services not being available in AWS in China.
Example
E0628 14:11:42.981304       1 session.go:44] [ALB-INGRESS] [session] [ERROR]: caused by: Post https://waf-regional.cn-north-1.amazonaws.com.cn/: dial tcp: lookup waf-regional.cn-north-1.amazonaws.com.cn on <IP_ADDRESS>:53: no such host
F0628 14:11:42.981326       1 albingresses.go:161] [ALB-INGRESS] [ingress] [ERROR]: Failed to get associated WAF ACL. Error: RequestError: send request failed

This also causes issues when alb-ingress-controller attempts to call acm/DescribeCertificate, as acm is another service not available there.
So the services in use by alb-ingress-controller which are failing are:
acm
waf
waf-regional
We are deploying alb-ingress-controller like so:
# Application Load Balancer (ALB) Ingress Controller Deployment Manifest.
# This manifest details sensible defaults for deploying an ALB Ingress Controller.
# GitHub: https://github.com/kubernetes-sigs/aws-alb-ingress-controller
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
  labels:
    app: alb-ingress-controller
  name: alb-ingress-controller
  # Namespace the ALB Ingress Controller should run in. Does not impact which
  # namespaces it's able to resolve ingress resource for. For limiting ingress
  # namespace scope, see --watch-namespace.
  namespace: kube-system
spec:
  replicas: 1
  selector:
    matchLabels:
      app: alb-ingress-controller
  strategy:
    rollingUpdate:
      maxSurge: 1
      maxUnavailable: 1
    type: RollingUpdate
  template:
    metadata:
      creationTimestamp: null
      labels:
        app: alb-ingress-controller
      annotations:
        iam.amazonaws.com/role: arn:aws-cn:iam::123412341234:role/alb-ingress-controller_kube2iam
    spec:
      containers:
      - args:
        - /server
        # Ingress controllers must have a default backend deployment where
        # all unknown locations can be routed to. Often this is a 404 page. The
        # default backend is not particularly helpful to the ALB Ingress Controller
        # but is still required. The default backend and its respective service
        # must be running Kubernetes for this controller to start.
        - --default-backend-service=kube-system/default-http-backend
        # Limit the namespace where this ALB Ingress Controller deployment will
        # resolve ingress resources. If left commented, all namespaces are used.
        #- --watch-namespace=your-k8s-namespace
        # Setting the ingress-class flag below will ensure that only ingress resources with the
        # annotation kubernetes.io/ingress.class: "alb" are respected by the controller. You may
        # choose any class you'd like for this controller to respect.
        #- --ingress-class=alb
        env:
          # AWS region this ingress controller will operate in.
          # List of regions:
          # http://docs.aws.amazon.com/general/latest/gr/rande.html#vpc_region
        - name: AWS_REGION
          value: cn-north-1
          # Name of your cluster. Used when naming resources created
          # by the ALB Ingress Controller, providing distinction between
          # clusters.
        - name: CLUSTER_NAME
          value: foo-china-1.k8s.local
          # AWS key id for authenticating with the AWS API.
          # This is only here for examples. It's recommended you instead use
          # a project like kube2iam for granting access.
        #- name: AWS_ACCESS_KEY_ID
           #value: KEYVALUE
          # AWS key secret for authenticating with the AWS API.
          # This is only here for examples. It's recommended you instead use
          # a project like kube2iam for granting access.
        #- name: AWS_SECRET_ACCESS_KEY
           #value: SECRETVALUE
          # Enables logging on all outbound requests sent to the AWS API.
          # If logging is desired, set to true.
        - name: AWS_DEBUG
          value: "true"
          # Maximum number of times to retry the aws calls.
          # defaults to 20.
        - name: AWS_MAX_RETRIES
          value: "3"
        - name: POD_NAME
          valueFrom:
            fieldRef:
              apiVersion: v1
              fieldPath: metadata.name
        - name: POD_NAMESPACE
          valueFrom:
            fieldRef:
              apiVersion: v1
              fieldPath: metadata.namespace
        # Repository location of the ALB Ingress Controller.
        image:<PHONE_NUMBER>34.dkr.ecr.cn-north-1.amazonaws.com.cn/coreos/alb-ingress-controller:1.0-beta.1
        imagePullPolicy: Always
        name: server
        resources: {}
        terminationMessagePath: /dev/termination-log
      dnsPolicy: ClusterFirst
      restartPolicy: Always
      serviceAccountName: alb-service-account
      terminationGracePeriodSeconds: 30

Startup
I0628 14:11:42.497278       1 main.go:24] [ALB-INGRESS] [controller] [INFO]: Log level read as "", defaulting to INFO. To change, set LOG_LEVEL environment variable to WARN, ERROR, or DEBUG.
I0628 14:11:42.497639       1 launch.go:112] &{ALB Ingress Controller 1.0-alpha.9 git-11cdb4a8 git://github.com/kubernetes-sigs/aws-alb-ingress-controller}
I0628 14:11:42.497863       1 launch.go:282] Creating API client for https://<IP_ADDRESS>:443
I0628 14:11:42.506308       1 launch.go:295] Running in Kubernetes Cluster version v1.9 (v1.9.8) - git (clean) commit c138b85178156011dc934c2c9f4837476876fb07 - platform linux/amd64
I0628 14:11:42.507846       1 launch.go:134] validated kube-system/default-http-backend as the default backend
I0628 14:11:42.511812       1 albingresses.go:85] [ALB-INGRESS] [ingress] [INFO]: Building list of existing ALBs
I0628 14:11:42.514214       1 session.go:35] [ALB-INGRESS] [session] [INFO]: Request: elasticloadbalancing/DescribeLoadBalancers, Payload: {}
I0628 14:11:42.592825       1 albingresses.go:94] [ALB-INGRESS] [ingress] [INFO]: Fetching information on 1 ALBs
I0628 14:11:42.593056       1 session.go:35] [ALB-INGRESS] [session] [INFO]: Request: elasticloadbalancing/DescribeLoadBalancerAttributes, Payload: {  LoadBalancerArn: "arn:aws-cn:elasticloadbalancing:cn-north-1:123412341234:loadbalancer/app/foochina1k8-evelauncherdev-e3b4/b692450cb35591b5"}
I0628 14:11:42.611399       1 session.go:35] [ALB-INGRESS] [session] [INFO]: Request: waf-regional/GetWebACLForResource, Payload: {  ResourceArn: "arn:aws-cn:elasticloadbalancing:cn-north-1:123412341234:loadbalancer/app/foochina1k8-evelauncherdev-e3b4/b692450cb35591b5"}
I0628 14:11:42.660569       1 session.go:35] [ALB-INGRESS] [session] [INFO]: Request: waf-regional/GetWebACLForResource, Payload: {  ResourceArn: "arn:aws-cn:elasticloadbalancing:cn-north-1:123412341234:loadbalancer/app/foochina1k8-evelauncherdev-e3b4/b692450cb35591b5"}
I0628 14:11:42.736671       1 session.go:35] [ALB-INGRESS] [session] [INFO]: Request: waf-regional/GetWebACLForResource, Payload: {  ResourceArn: "arn:aws-cn:elasticloadbalancing:cn-north-1:123412341234:loadbalancer/app/foochina1k8-evelauncherdev-e3b4/b692450cb35591b5"}
I0628 14:11:42.976811       1 session.go:35] [ALB-INGRESS] [session] [INFO]: Request: waf-regional/GetWebACLForResource, Payload: {  ResourceArn: "arn:aws-cn:elasticloadbalancing:cn-north-1:123412341234:loadbalancer/app/foochina1k8-evelauncherdev-e3b4/b692450cb35591b5"}
E0628 14:11:42.981292       1 session.go:44] [ALB-INGRESS] [session] [ERROR]: Failed request: waf-regional/GetWebACLForResource, Payload: {  ResourceArn: "arn:aws-cn:elasticloadbalancing:cn-north-1:123412341234:loadbalancer/app/foochina1k8-evelauncherdev-e3b4/b692450cb35591b5"}, Error: RequestError: send request failed
E0628 14:11:42.981304       1 session.go:44] [ALB-INGRESS] [session] [ERROR]: caused by: Post https://waf-regional.cn-north-1.amazonaws.com.cn/: dial tcp: lookup waf-regional.cn-north-1.amazonaws.com.cn on <IP_ADDRESS>:53: no such host
F0628 14:11:42.981326       1 albingresses.go:161] [ALB-INGRESS] [ingress] [ERROR]: Failed to get associated WAF ACL. Error: RequestError: send request failed
caused by: Post https://waf-regional.cn-north-1.amazonaws.com.cn/: dial tcp: lookup waf-regional.cn-north-1.amazonaws.com.cn on <IP_ADDRESS>:53: no such host

Makes sense. There will need to be some flags to disable some features.

I believe the SDK can dynamically detect which services are supported in each region:
https://aws.amazon.com/blogs/developer/using-the-aws-sdk-for-gos-regions-and-endpoints-metadata/
We could probably use that, disable WAF logic if its not supported in the current region, and log errors if an ingress uses a WAF annotation

Nice find, if we can use that API that would be best.
re: flags, I don't think we can switch since the usptream ingress library is using pflag.  You are welcome to try it out, i'm not attached to the current flag implementation.

Seems to be the same in ap-southeast-1 region since there is no WAF yet
caused by: Post https://waf-regional.ap-southeast-1.amazonaws.com/: dial tcp: lookup waf-regional.ap-southeast-1.amazonaws.com on <IP_ADDRESS>:53: no such host```

Is there any ongoing PR I can watch?

and London region too

caused by: Post https://waf-regional.eu-west-2.amazonaws.com/: dial tcp: lookup waf-regional.eu-west-2.amazonaws.com on <IP_ADDRESS>:53: no such host

@bhegazy : A colleague and I are working on this (Resolving endpoint first, through SDK).
Compiling and testing will be done tomorrow. I hope we can submit a PR by the end of the week.
@Andrea-Politi : the goal is to retrieve information about WAF regarding user's configuration (made in SDK).

hi @grockeek. Do we have any updates here?

@YurkoHoshko, @bhegazy : @mikaelrandy just submitted the PR #622 regarding this issue.

Is someone working on the ACM regional availability check? We don't have acm yet in cn-north-1 and cn-northwest-1

Also in GovCloud region it doesn't work

will you be able to test #728 in eu-west-3? I don't have a cluster at hand at test it out 😄
The image i built is docker.io/m00nf1sh/alb-ingress-controller:pull-728, you can built it by checkout #728, and update the makefile to
@pahud It's resolved by #728
@carpenterm what's the problem in GovCloud? Is it due to Waf not available? Is you, #728 will solves it

@M00nF1sh  looks like https://github.com/kubernetes-sigs/aws-alb-ingress-controller/pull/728 can disable waf support, but can't disable acm support?

@pahud in the latest branch, ACM API is not used(only used in health check and should be removed).
I haven't remove it since we can introduce a feature to automatically discover and bind certificate.(there was an PR for that but got closed)


New line in output_image_spec ends in 'Connection reset by peer

Use of
self.docker_repository = (
    f"magdalena/{self.domain}-{self.user_name}-{self.repository_name}"
).replace(".", "-").replace(" ", "-").lower()
self.docker_image_name = f"{self.docker_repository}:{self.git_commit_id}"
r2d.output_image_spec = self.docker_image_name
r2d.start()

is failing with
magdalena-magdalena-1  | [2023-11-08 09:29:47,708] INFO in methodshub: Repository: https://github.com/GESIS-Methods-Hub/minimal-example-ipynb-python.git
magdalena-magdalena-1  | [2023-11-08 09:29:47,708] INFO in methodshub: Docker image name: magdalena/github-com-gesis-methods-hub-minimal-example-ipynb-python:93a3b377f042298a65811a17356e25f30b276456
...
magdalena-magdalena-1  | [Repo2Docker] Using CondaBuildPack builder
magdalena-magdalena-1  |
magdalena-magdalena-1  | [2023-11-08 09:29:50,473] ERROR in methodshub: ('Connection aborted.', ConnectionResetError(104, 'Connection reset by peer'))
magdalena-magdalena-1  | <IP_ADDRESS> - - [08/Nov/2023 09:29:50] "POST / HTTP/1.1" 500 -
magdalena-magdalena-1  | Traceback (most recent call last):
magdalena-magdalena-1  |   File "/usr/local/lib/python3.10/dist-packages/flask/app.py", line 1478, in __call__
magdalena-magdalena-1  |     return self.wsgi_app(environ, start_response)
magdalena-magdalena-1  |   File "/usr/local/lib/python3.10/dist-packages/flask/app.py", line 1458, in wsgi_app
magdalena-magdalena-1  |     response = self.handle_exception(e)
magdalena-magdalena-1  |   File "/usr/local/lib/python3.10/dist-packages/flask/app.py", line 1455, in wsgi_app
magdalena-magdalena-1  |     response = self.full_dispatch_request()
magdalena-magdalena-1  |   File "/usr/local/lib/python3.10/dist-packages/flask/app.py", line 869, in full_dispatch_request
magdalena-magdalena-1  |     rv = self.handle_user_exception(e)
magdalena-magdalena-1  |   File "/usr/local/lib/python3.10/dist-packages/flask/app.py", line 867, in full_dispatch_request
magdalena-magdalena-1  |     rv = self.dispatch_request()
magdalena-magdalena-1  |   File "/usr/local/lib/python3.10/dist-packages/flask/app.py", line 852, in dispatch_request
magdalena-magdalena-1  |     return self.ensure_sync(self.view_functions[rule.endpoint])(**view_args)

but hardcoding the name of the image like
self.docker_image_name = f'magdalena/github-com-gesis-methods-hub-minimal-example-ipynb-python:93a3b377f042298a65811a17356e25f30b276456'
r2d.output_image_spec = self.docker_image_name
r2d.start()

works as expected (image is built).
Any help to explain what is happening here?

I realise that the problem was a new line at the end of the name of the image. Should we sanitise the input?

We could check and reject invalid names with an error? I think any sanitisation should be done by the caller not r2d.

Check and reject invalid names with an error will be great. I will try to send a PR.


[FLINK-4510] [checkpoint] Always create CheckpointCoordinator

Thanks for contributing to Apache Flink. Before you open your pull request, please take the following check list into consideration.
If your changes take all of the items into account, feel free to open your pull request. For more information and/or questions please refer to the How To Contribute guide.
In addition to going through the list, please provide a meaningful description of your changes.

[x] General

The pull request references the related JIRA issue ("[FLINK-XXX] Jira title text")
The pull request addresses only one issue
Each commit in the PR has a meaningful commit message (including the JIRA id)

[ ] Documentation

Documentation has been added for new functionality
Old documentation affected by the pull request has been updated
JavaDoc for public methods has been added

[x] Tests & Build

Functionality added by the pull request is covered by tests
mvn clean verify has been executed successfully locally or a Travis build has passed

This pull request always create checkpoint coordinator even if checkpointing interval is not configured.
I use a flag to indicate disabled periodic checkpoint,  Instead of using an interval of 0. Because the interval is checked everywhere, too scared to change it...

Thanks for looking into this.
I wonder if we can do this simpler, without changes to the CheckpointCoordinator.
The only thing that really needs to change is that without periodic checkpoints, the startCheckpointScheduler() method is not called, which means that the JobStatusListener that "CheckpointActivatorDeactivator" should not be created and started.

Make sense. I will update this PR.

Hi @StephanEwen , I have updated this PR according to your suggestion. In addition, I use an interval of Long.MAX_VALUE for disabled periodic checkpoint. In this way, we will not break interval sanity check and no changes will be attached to CheckpointCoordinator and JobSnapshottingSettings.

Will have a look at this again soon.

Thanks for the nice contribution.
I see one minor detail that could cause problems. Even if we do not register the CheckpointCoordinator as JobStatusListener, it might still be possible that triggerCheckpoint(long timestamp, CheckpointProperties props) gets called. In this case it can happen that a periodic trigger is registered. You could introduce another check on the interval to make sure that no periodic trigger can be registered when the CheckpointCoordinator is disabled.
Besides that, the changes look good to me.

Hi @StefanRRichter  , I fixed the conflicts, and add interval check in triggerCheckpoint.  Could you have a look again ?

Looks good to me now.

Thanks for the contribution. I'm going to merge this with slight modifications. We don't need the introduced checks with the current master as there is a check whether periodic checkpoints are activated.


Unchecking pre-checked checkbox

Platform: Google Chrome 43 on Windows 10
MDL Version: 1.1.1
If a checkbox has the "checked" attribute on page load, it refuses to uncheck. This is exhibited on the MDL component documentation. Demo: http://getmdl.io/components/index.html#toggles-section.

There is another checkbox with id="checkbox-1" on the referenced page, in the "Lists: avatars and controls" section, next to Bryan Cranston. That's the source of the difficulties. This baffled me for a while, too.

Ah, fantastic catch @jwashin! Merging this into the other related issue. Thanks for taking a look.
That issue is #4148.