invalid option provided option=""

Describe the bug
I'm seeing this error in my ollama server.log with every auto-complete request from twinny. Auto complete does appear to be working and giving valid completion suggestions, but i'm confused as to why it's generating this error as the options seem to be submitted properly.
time=2024-05-18T20:38:10.530-06:00 level=INFO source=server.go:545 msg="llama runner started in 3.42 seconds"
[GIN] 2024/05/18 - 20:38:11 | 200 |    4.5533999s |    <ip redacted> | POST     "/api/generate"
time=2024-05-18T20:38:33.016-06:00 level=WARN source=types.go:384 msg="invalid option provided" option=""
[GIN] 2024/05/18 - 20:38:33 | 200 |    611.9007ms |    <ip redacted> | POST     "/api/generate"
time=2024-05-18T20:38:41.256-06:00 level=WARN source=types.go:384 msg="invalid option provided" option=""
[GIN] 2024/05/18 - 20:38:41 | 200 |     274.131ms |    <ip redacted> | POST     "/api/generate"
time=2024-05-18T20:38:59.734-06:00 level=WARN source=types.go:384 msg="invalid option provided" option=""
[GIN] 2024/05/18 - 20:38:59 | 200 |    170.3256ms |    <ip redacted> | POST     "/api/generate"
time=2024-05-18T20:39:00.653-06:00 level=WARN source=types.go:384 msg="invalid option provided" option=""
[GIN] 2024/05/18 - 20:39:00 | 200 |    297.9836ms |    <ip redacted> | POST     "/api/generate"
time=2024-05-18T20:39:01.752-06:00 level=WARN source=types.go:384 msg="invalid option provided" option=""
[GIN] 2024/05/18 - 20:39:02 | 200 |    293.5611ms |    <ip redacted> | POST     "/api/generate"
time=2024-05-18T20:39:02.723-06:00 level=WARN source=types.go:384 msg="invalid option provided" option=""
[GIN] 2024/05/18 - 20:39:03 | 200 |    337.9314ms |    <ip redacted> | POST     "/api/generate"

To Reproduce
paste this short script.
wait for autocomplete request
#!/bin/bash

# This script creates a backup of a directory and compresses it into a tar.gz file.

# Define the directory to backup
DIR_TO_BACKUP="/path/to/directory"

# Define the backup destination
BACKUP_DEST="/path/to/backup"

Expected behavior
Just trying to determine if Twinny is leveraging the options properly or if the errors mean options: {} is being discarded entirely.
Logging
[Extension Host]
***Twinny Stream Debug***
Streaming response from <ip redacted>:11434.
Request body:
{
  "model": "codellama:7b-code-q4_0",
  "prompt": "<PRE>#

# Language: Shell (shellscript)
# File uri: untitled:Untitled-2 (shellscript)
#!/bin/bash

# This script creates a backup of a directory and compresses it into a tar.gz file.

# Define the directory to backup
DIR_TO_BACKUP=\"/path/to/directory\"

# Define the backup destination
BACKUP_DEST=\"/path/to/backup\"

 <SUF>  <MID>",
  "stream": true,
  "keep_alive": "5m",
  "options": {
    "temperature": 0.2,
    "num_predict": 512
  }
}

Request options:
{
  "hostname": "<ip redacted>",
  "port": 11434,
  "path": "/api/generate",
  "protocol": "http",
  "method": "POST",
  "headers": {
    "Content-Type": "application/json",
    "Authorization": ""
  }
}

console.ts:137 [Extension Host] Streaming response end due to multiline not required  61
Completion: # Define the name of the backup

console.ts:137 [Extension Host] *** Twinny completion triggered for file: untitled:Untitled-2 ***
      Original completion: # Define the name of the backup

      Formatted completion: # Define the name of the backup
      Max Lines: 30
      Use file context: true
      Completed lines count 1
      Using custom FIM template fim.bhs?: false

API Provider
ollama -v
Warning: could not connect to a running Ollama instance
Warning: client version is 0.1.38
Chat or Auto Complete?
auto complete
Model Name
codellama:7b-code-q4_0
Desktop (please complete the following information):

OS: Windows 10
Browser: I don't think a browser is involved in this example

Additional context
Both Ollama and vscode are running from windows 10, though i have tried this with vscode using a remote linux container and got the same result.
I tried resetting all twinny settings back to default (except for the host ip), as i'm using this in remote containers sometimes, so it needs to be network accessible.

Running into a similar issue:
[GIN] 2024/06/01 - 14:47:55 | 200 |  639.312645ms |      <IP_ADDRESS> | POST     "/v1/chat/completions"
time=2024-06-01T14:47:59.879Z level=WARN source=types.go:384 msg="invalid option provided" option=""

I get same error via manual POST via python requests lib for /api/generate.  I pass options as a dictionary. weird.

Has anyone figured this out? Happens to me too. This is the dictionary that's sent:
data = {
     "model": model,
      "messages": [{
            "role": "user",
            "content": message
        }],
      "stream": False,
       "options": {
           "max_tokens": max_tokens,
            "temperature": temperature
            }
        }

Both max_tokens and temperature are never None
This is the log entry:
time=2024-06-25T20:13:55.877Z level=WARN source=types.go:430 msg="invalid option provided" option=""
[GIN] 2024/06/25 - 20:13:56 | 400 |  130.044154ms |    <IP_ADDRESS> | POST     "/api/chat"

Has anyone figured this out? Happens to me too. This is the dictionary that's sent:
data = {
     "model": model,
      "messages": [{
            "role": "user",
            "content": message
        }],
      "stream": False,
       "options": {
           "max_tokens": max_tokens,
            "temperature": temperature
            }
        }

Both max_tokens and temperature are never None
This is the log entry:
time=2024-06-25T20:13:55.877Z level=WARN source=types.go:430 msg="invalid option provided" option=""
[GIN] 2024/06/25 - 20:13:56 | 400 |  130.044154ms |    <IP_ADDRESS> | POST     "/api/chat"

I'm starting to think this is an Ollama issue as I found this github issue when searching for the same message despite not using twinny. In my case, I don't think my tool calls in options are being properly passed to Ollama

It happends to me as well. I am using OllamaFunctions from langchain-experimental package. When i make an invocation I see that. At first I thought it was related to a problem with the way the parameters are sent to the endpoint. But now I am starting to think  it is ollama related.

Running into a similar issue:
[GIN] 2024/06/01 - 14:47:55 | 200 |  639.312645ms |      <IP_ADDRESS> | POST     "/v1/chat/completions"
time=2024-06-01T14:47:59.879Z level=WARN source=types.go:384 msg="invalid option provided" option=""

I have the same error, apparently Ollama just decided not to resolve this warning and close the issue

Getting same message and unable to understand the issue.
time=2024-12-17T16:00:24.520Z level=INFO source=server.go:594 msg="llama runner started in 11.80 seconds"
[GIN] 2024/12/17 - 16:00:24 | 200 | 12.109073817s |       <IP_ADDRESS> | POST     "/api/chat"
time=2024-12-17T16:01:21.423Z level=WARN source=types.go:509 msg="invalid option provided" option=tfs_z
[GIN] 2024/12/17 - 16:01:21 | 200 |   25.909282ms |       <IP_ADDRESS> | POST     "/api/chat"


Add instructions

Why?
There is a very confusing side affect when you run rails new with --skip-test (since we use Rspec instead). In the latest versions of rails it will cause system tests to throw the following error
Unrecognized command "test:prepare" (Rails::Command::UnrecognizedCommandError)
Did you mean?  test:helpers

Using --skip-test generates config/application.rb with
require_relative "boot"

require "rails"
# Pick the frameworks you want:
require "active_model/railtie"
require "active_job/railtie"
require "active_record/railtie"
require "active_storage/engine"
require "action_controller/railtie"
require "action_mailer/railtie"
require "action_mailbox/engine"
require "action_text/engine"
require "action_view/railtie"
require "action_cable/engine"
# require "rails/test_unit/railtie"

Notice that last commented out line...
If you don't skip tests, it generates
require_relative "boot"

require "rails/all"

The issue is that test:prepare is a placeholder rake task brought in by rails/test_unit/railtie that rspec hooks into and adds the asset precompiling behavior to system tests. By skipping tests, it doesn't include this rake task which causes Rspec to fail.
What Changed

[X] Add directions to the Readme to add back the needed railtie require

The issue is that test:prepare is a placeholder rake task brought in by rails/test_unit/railtie that rspec hooks into and adds the asset precompiling behavior to system tests. By skipping tests, it doesn't include this rake task which causes Rspec to fail.

Are you sure? It seems the other way around. That is, gems like jsbundling-rails hook into test:prepare. rspec-rails defines spec:prepare (which jsbundling-rails also hooks into). Shouldn't the solution be to run spec:prepare instead of test:prepare?

The issue is that test:prepare is a placeholder rake task brought in by rails/test_unit/railtie that rspec hooks into and adds the asset precompiling behavior to system tests. By skipping tests, it doesn't include this rake task which causes Rspec to fail.

Are you sure? It seems the other way around. That is, gems like jsbundling-rails hook into test:prepare. rspec-rails defines spec:prepare (which jsbundling-rails also hooks into). Shouldn't the solution be to run spec:prepare instead of test:prepare?

I know it seems like it shouldn't be the solution... We ran into this on Tarsco, and the test:prepare should be what you use. Using what's built in to the core of rails seems like a better solution than throwing pieces from another gem into our application.rb file. That's my preference and what we did with Tarsco.

@reedrolemodel @Braden-077 Rspec generates code in the rails helper that calls test:prepare so my thought was make the default generated code work.
Changing that generated code to use spec:prepare does fix the issue though so is probably the better, quick change.

@reedrolemodel @Braden-077 So Rspec out of the box does generate that, however, we are overriding that file and generating it from a template anyway so we can just change what our template gives you.


Support TP for cacheblend

Changes dst_device to include worker_id. This will make it fetch to the correct device in TP.
This resolves #191

Closing because changes included in this PR


configure_azure_monitor failed to resolve 'westus-0.in.applicationinsights.azure.com'

Package Name:  azure-monitor-opentelemetry
Package Version: 1.3.0
Operating System: python:3.11-slim on Docker on Azure App Service
Python Version: 3.11.8

Describe the bug
I ran the following code on Azure App Service, but it gives me the error  Retrying due to server request error: <urllib3.connection.HTTPSConnection object at 0x72d28cec0dd0>: Failed to resolve 'westus-0.in.applicationinsights.azure.com' ([Errno -5] No address associated with hostname).. Also there is no logs on Application Insights.
from azure.monitor.opentelemetry import configure_azure_monitor
from opentelemetry import trace

configure_azure_monitor(
   connection_string="<Connection string>"
)

tracer = trace.get_tracer("test.tracer")
with tracer.start_as_current_span("test.span") as span:
    print("hello, telemetry span")
    span.set_attribute("span_test_string", "Here is a message in a span")

Additional context
What I don't get is that my App Service region is in Japan East (IngestionEndpoint=https://japaneast-1.in.applicationinsights.azure.com/;LiveEndpoint=https://japaneast.livediagnostics.monitor.azure.com/), but according to the error message, it looks like it tying to access to westus-0.in.applicationinsights.azure.com.

Please try setting an env var APPLICATIONINSIGHTS_STATSBEAT_DISABLED_ALL to True and see if you issue still persists.

@lzchen That did the trick. Thank you.


[WebJobs/ServiceBus] Validate distributed tracing

We are getting close to GA, should we do a quick verification?


Riscv Function Identification

How can I let ghidra identify the complete body of the main function. As you can see in the attached screenshot, Ghidra thinks that the function ends at the first instruction since it is Jal. Any idea how can I let it identify the main function body correctly?

It seems that the auto analyziz is not successfully detecting the target fo this jump, it should jump back to the main function, because t0 should be having the return address value

Which version of Ghidra are you using?
There were some changes to the use of GOTO vs CALL pcode operations on 12/02/02.  They would be in Ghidra 10.2.2 and 10.2.3 releases.
I think that may be the issue if you are using a version prior to these.

The issue is in February release 10.2.3.
This issue doesn’t appear on 10.2.2
On Fri 17. Mar 2023 at 14:22, emteere @.***> wrote:

Which version of Ghidra are you using?
There were some changes to the use of GOTO vs CALL pcode operations on
12/02/02. They would be in Ghidra 10.2.2 and 10.2.3 releases.
I think that may be the issue if you are using a version prior to these.
—
Reply to this email directly, view it on GitHub
https://github.com/NationalSecurityAgency/ghidra/issues/5092#issuecomment-1473836216,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AHYJNBBOJPHSWWSMERUSOCDW4RQPRANCNFSM6AAAAAAVY5ACHU
.
You are receiving this because you authored the thread.Message ID:
@.***>

--

I see the issue.  A bit of over-refactoring.  Normally the RA is used as the return address.  The JAL was refactored to mark as a CALL when the link address was saved in the RA, and a branch in all other cases.  The decode of the instruction can use BRANCH, CALL, or RETURN as a flow type.  This really is just the most common use of the instruction and the registers used.
We can change the JAL/JALR back to a call for all cases where the register for the link address is specified.
Is that the correct behavior in your/others opinion, or are the other registers used that should be a BRANCH, say in a switch case where the link address saved in a register is used in a unique way?
For now, you can use Modify Instruction Flow to override the instruction to a CALL which will fix the issue manually.
You can also change the riscv.rv32i.sinc file on line 137 to a CALL, and line 160 to a CALL.  The sleigh file can be recompiled with ReloadSleighLanguage script, or by restarting.  You may need to re-disassemble and re-analyze in either case if there are many locations that use an alternate register than the RA for JAL/JALR in your binary.

@emteere   Im not sure who added this comment, do you know the background?
#TODO  RAS: push inst_next if rd=x1/x5
Your refactor only accounted for x1 and not x5 (t0) which is the the register used in this issue.

I think that comment was in there before it was refactored, and was removed on the refactor.  I don't know where it came from, but think it was in there originally.  In the refactor, JALR was split into two base constructors from a single base constructor.
It was refactored into
JALR with link addr in RA a CALL.
JALR on any other register a GOTO
It could be changed to:
JALR with link addr in RA,T0 to a CALL
JALR with link addr any other register to a GOTO
Originally it was:
JALR with link addr in any reg to a CALL
I looked at two binaries I have and saw RA almost all.
JALR with link addr in T1 is definitely used as a GOTO in thunks.  It was a CALL before the refactor, which was not right.  I think this is what caused the refactor.
I've also seen JALR GP, to the next address, which is a trick to load GP relative to the current location, and should be a GOTO as well.  There is code on other processors to check for the next instruction as the target of the call (ARM I think).
So long story short, we can change it to
JALR/JAL with link addr in RA/T0 a CALL
JALR/JAL with link addr in any other REG a GOTO
I'll make that change unless there is an objection.

Oh RAS was me.  Return Address Stack is a hint that can be added to the jalr and jal instructions for x1 and x5, so maybe just an unimplemented feature I had as a Todo.
x5 is listed in the manual as an alternate link register and x1 as a return address register, so I think the above approach is correct


Question: Runtime/Build time?

Hello! Love this project. I do have one question. Do these checks only apply when it's runtime? Or, do they apply to build time? If I were to compile it down into just JS, would they still work?

Hi @vernak2539, I am sorry to disappoint you but if you are referring to assert(is<T>(val)) there is no test actually performed. You are just saying "trust me typescript I know val is of type T.  If you where wrong you won't get build or runtime error when evaluating the assert statement.
If there is a simple test that discriminate the type of your variable and that TypeScript can understand use it instead of is this way you will get runtime validation.

If there isn't such a test and you want to have an error at runtime in case you where wrong with your assertion you can use typeGuard.

Be careful though, it is up to you to make sure that your check obj.id.startsWith("foo-") actually validate that obj is of type Foo.


[Code health] Implement missing tests to LocationOfInterestRepository

Blocked by #1471

Duplicate of #1471

Duplicate of #2134


[PackageModel] Support swift-testing installed in a toolchain

Properly handle swift-testing installations in toolchain/SDK.
Motivation:
On macOS SwiftPM should prefer swift-testing installed into a custom toolchain when used. On Windows we need special logic to discover swift-testing location.
Modifications:

Add special swift compiler "extra" flags to favor swift-testing installed in a toolchain.
Inject -I, -L on Windows that point to where swift-testing is installed in SDKROOT.
Inject a path to testing on PATH environment variable on Windows to make sure that the library is always discoverable.

Resolves: rdar://132828246

@swift-ci please test

@swift-ci please test Windows platform

@swift-ci please test

@swift-ci please test Windows

@swift-ci please test Windows platform

@swift-ci please test Windows platform

@swift-ci please test Windows platform

https://github.com/apple/swift-testing/pull/581
https://github.com/swiftlang/swift-installer-scripts/pull/317
https://github.com/swiftlang/swift/pull/75515
@swift-ci Please test

https://github.com/apple/swift-testing/pull/581
https://github.com/swiftlang/swift-installer-scripts/pull/317
https://github.com/swiftlang/swift/pull/75515
@swift-ci Please test Windows

https://github.com/apple/swift-testing/pull/581
https://github.com/swiftlang/swift-installer-scripts/pull/317
https://github.com/swiftlang/swift/pull/75515
@swift-ci Please test

Obviously cross repo PR testing from non-swift repo doesn't support changes in update-checkout scheme.
@swift-ci Please test

@swift-ci Please test

Windows test fails as it fails to decode Info.plist.  Since swiftTestingVersion is not optional, it requires corresponding swift change.

@rintaro maybe it would be prudent to make it optional just in case people would try to run newer swiftpm with older toolchains?

Yeah, optional sounds reasonable to me.

@swift-ci please test

@swift-ci please test Windows platform

@swift-ci please test

@swift-ci please test Windows platform

@swift-ci please test

@swift-ci please test Windows platform

I'm going to land this is as a rebase because it has changes for both macOS and Windows and we should be revertible separately if we wanted to.


Workspace header UI

[#174239317]
Note: This does not include the new File menu or changes to the document toolbar as this PR is already large enough and those are separable pieces of functionality for which new stories can be made.

new publish and 1-up/4-up icons
replace share icon with toggle control
simplify layout (eliminate many margins/padding used for positioning)
use updated colors/sizes for many elements
fix/skip cypress tests

In the spec, there is slightly more horizontal space around the button

Good catch -- I added a commit to fix it.

is the ball in the toggle control supposed to be bigger?

I didn't think so. The specs of the one I ~stole~ ~borrowed~ reused from portal-report seemed to be identical and I didn't change any of the sizes. Oddly, I did have to adjust some of the positions by a half-pixel so that the ball completely covered the track, for instance.

is the ball in the toggle control supposed to be bigger?

I didn't think so. The specs of the one I ~stole~ ~borrowed~ reused from portal-report seemed to be identical and I didn't change any of the sizes. Oddly, I did have to adjust some of the positions by a half-pixel so that the ball completely covered the track, for instance.

On second thought, I wonder if it's a box-sizing (i.e. border-box/content-box) issue.

is the ball in the toggle control supposed to be bigger?

I didn't think so. The specs of the one I ~stole~ ~borrowed~ reused from portal-report seemed to be identical and I didn't change any of the sizes. Oddly, I did have to adjust some of the positions by a half-pixel so that the ball completely covered the track, for instance.

On second thought, I wonder if it's a box-sizing (i.e. border-box/content-box) issue.

Just confirmed that hypothesis and added a commit to fix it.


Add configuration option to mark workspace as public

Add configuration option to mark workspace as public, so anyone can listen to it. It might be worth allowing anyone to fork a public workspace.

Added as of caf4dfb


Merge facts into node when using Puppet 4.x.

This fixes #24.
I'm not really sure if I did the right thing with the new test, but it fails without the fix and passes with it.

Merged. Thanks for the fix.

just released 0.4.2


VSCode works really well. Worth adding setup instructions in to the docs?  (IDF-88)

Hey guys,
I've tried configuring Visual Studio Code for IDF development on Linux and it works really well (for example Eclipse would fail to resolve portTICK_PERIOD_MS for me, while VSCode resolves it  nicely).
Here's what I had to do to get basic functionality working:

Install C/C++ extension for VSCode
Create .vscode/c_cpp_properties.json with header search paths:

{
    "configurations": [
        {
            "name": "Linux",
            "includePath": ["/home/grisevg/esp/esp-idf/components/"],
            "browse" : {
                "limitSymbolsToIncludedHeaders" : true,
                "databaseFilename" : ""
            }
        }
    ]
}

Create .vscode/tasks.json with a build task and error parser

{
    "version": "0.1.0",
    "command": "bash",
    "args": ["-c"],
    "isShellCommand": true,
    "showOutput": "always",
    "suppressTaskName": true,
    "options": {
        "cwd": "${workspaceRoot}",
        "env": {
            "IDF_PATH" : "/home/grisevg/esp/esp-idf",
            "PATH" : "${env.PATH}:/home/grisevg/esp/xtensa-esp32-elf/bin"
        }
    },
    "tasks": [
        {
            "taskName": "build app",
            "args": ["make app"],
            "isBuildCommand": true,
            "problemMatcher": {
                "owner": "cpp",
                "fileLocation": "absolute",
                "pattern": {
                    "regexp": "^(.*):(\\d+):(\\d+):\\s+(warning|error):\\s+(.*)$",
                    "file": 1,
                    "line": 2,
                    "column": 3,
                    "severity": 4,
                    "message": 5
                }
            }
        },
        {
            "taskName": "clean app",
            "args": ["make app-clean"]
        },
        {
            "taskName": "monitor",
            "args": ["make monitor"]
        },
        {
            "taskName": "flash app",
            "args": ["make app-flash"]
        }
    ]
}

It's not perfect, as you have to manually specify include path, path to IDF and path to the toolchain, but same goes for Eclipse.
Do you guys think it's worth adding to the docs? Of course question of what IDE is better is a personal choice, but considering that VSCode is very popular, cross-platform and works really well, I think it's worth adding to the getting started docs.

I am using VSCode also and I vote for your suggestion. Couldn't be the json files a part of the idf repository? The path to the home directory is also an environment variable.

Eclipse would fail to resolve portTICK_PERIOD_MS

I see the same on Eclipse (both Windows 7 and Ubuntu 16.04 LTS) and it gets me frustrated.

It's not perfect, as you have to manually specify include paths, path to IDF and path to the toolchain, but same goes for Eclipse.

@grisevg do you need to specify all include paths in VSCode or just one to the components folder as described in https://github.com/espressif/esp-idf/pull/157#issuecomment-267762873 ?
Regarding both issues above there is a branch together with testing report https://github.com/espressif/esp-idf/pull/157#issuecomment-270134045, that indicate possible resolution.
So far I did not have a chance to check VSCode to say what the good things I like about Eclipse are provided by VSCode as well, to justify the switch. People familiar with both VSCode and Eclipse should post their comments so Espressif team can gauge the interest.

@krzychb I also include up to components folder, and it resolves the functions very well.
I shall try the tasks.json file with my VSCode on Mac.  It sounds like a good little shortcut.  Thanks!

@krzychb @seopyoon cheers, including just components folder works. I've updated the example config.
@krzychb most VSCode C/C++ features are covered here: https://code.visualstudio.com/docs/languages/cpp
Looks like it could be even possible to setup an interactive debugging with GDB right in the editor, but I don't have a JTAG device atm to test it.

I set up the tasks.json.  How do I use this functionality? @grisevg

+1 on adding docs. VSCode is (er, will soon be) really awesome for ESP debugging!
Note that I am really close, but instead using launch.json and perhaps only need to know the value for TargetArchitecture. See: https://github.com/Microsoft/vscode-cpptools/issues/763
I've been able to single step an STM32 using VSCode: very cool!
https://gojimmypi.blogspot.com/2017/05/vscode-remote-debugging-of-embedded.html
I really hope to be able to do this with ESP32 (and ESP8266?).

if esp-idf is in the project folder symbols get found automatically. for windows you can also add the msys2, mingw32 and xtensa-esp32-elf bin folders to the path in tasks.json. make monitor has some trouble starting a console, you can edit the idf_monitor.py to output to stderr(task output window), or make a .cmd file with the python command in it and run that command from tasks.
You can see how I work with it esp-idf-VSCode-template

It doesn't work in my vscode(Version 1.13.1).
"PATH" : "${env.PATH}:/home/grisevg/esp/xtensa-esp32-elf/bin"
change it to
"PATH" : "${env:PATH}:/home/grisevg/esp/xtensa-esp32-elf/bin"

@heymind Yeah, ${env.PATH} stopped working for me too after a update.
Thanks for the fix

Anyone use it on Mac?? It used to work well, but after an update, (Not sure VSCode update or esp-idf update) all of them get red underlines.  But, when command + click function, or struct, it successfully finds the referring ones.
So functionally, it is fine, but it's red everywhere.  Please give me advice.  My paths included in c_cpp_properties.json are:
"/usr/include",
"/Users//Developer/esp-sdk/esp-idf/components",

@seopyoon Add this to your settings.json
 "C_Cpp.intelliSenseEngine": "Tag Parser"
It is an issue with the new VSCode intellisense. This setting reverts it back to the old behavior.
See here https://github.com/Microsoft/vscode-cpptools/issues/690

It works but it's not context sensitive. So for me, Eclipse CDT is unfortunately better so far. I don't know much about VSCode to try to help but I am reading about it. It's lighter in memory for obvious reasons and it works faster than Eclipse in my opinion.
I am willing to donate my time regarding this matter. Any pointers, guidance and help will be greatly appreciated.
Thanks guys.

Some additional information ...
With the current version of VSCode, the includePath is not recursive. It says it right in the editor when you hover the mouse over the word includePath.

Hi guys,
I think it's possible to implement a tool which generates a compile_commands.json and use it in VSCode now, as the newest C/C++ plugin has added support for this, see here: https://github.com/Microsoft/vscode-cpptools/tree/v0.14.0
I'll have a research later when I finish my exam tomorrow.
Regards,
Jackson

Any progress from anyone on this? VSCode seems very popular nowadays, it would be great if the IDF would support it better :)

Hi all,
Maybe this is a bit off-topic, but I've made a CMake template for CLion users. Check here for more details: https://github.com/huming2207/esp32-cmake-helloworld
Currently this template can only used for CLion indexing, not ready for compiling the project.
Regards,
Jackson Hu

This all seems to be deprecated in new version of visual code. as a result it is ignored. does anyone have an updated tasks.json for reference?

Guess we should try the official CMake now. They are rolling out the official support for CMake build system since v3.1 and it works fine in CLion.
For VSCode using CMake, probably here is a solution: https://medium.com/audelabs/c-development-using-visual-studio-code-cmake-and-lldb-d0f13d38c563

Sorry I need to correct my previous reply
Just try this: https://marketplace.visualstudio.com/items?itemName=vector-of-bool.cmake-tools
Works mostly perfect for ESP-IDF v3.1+ for now, although it is a bit slower than CLion.

Some additional information ...
With the current version of VSCode, the includePath is not recursive. It says it right in the editor when you hover the mouse over the word includePath.

"${env:IDF_PATH}/components/**" seems to work for me.

Hi guys,
I have integrated ESP32 IDF development to VScode on windows. I'm only missing the make flash command that I can't make worw. At the moment I have to open a ming32 terminal and navigate to the project root and launch the make flash command manually.
I would like to have a VS code task to flash the device. Here is my current tasks.json :
{
    "version": "2.0.0",
    "command": "C:/Espressif/ESP32/msys32/usr/bin/bash",
    "args": ["--login","-c"],
    "type": "shell",
    "presentation": {
        "reveal": "always",
    },
    "suppresslabel": true,
    "options": {
        "cwd": "/c", //"${workspaceRoot}",
        "env": {
            "CHERE_INVOKING": "enabled_from_arguments",
            "MSYSTEM": "MINGW32"
        }
    },
    "tasks": [
        {
            "label": "build all",
            "group": "build",
            "command": "C:/Espressif/ESP32/msys32/usr/bin/bash",
            "type": "shell",
            "args": [
                "--login","-c",
                "make",
                "all",
                "-j10"
            ],
            "presentation": {
                "reveal": "always",
            },
            "problemMatcher": {
                "owner": "cpp",
                "fileLocation": "absolute",
                "pattern": {
                    "regexp": "^(.*):(\\d+):(\\d+):\\s+(warning|error):\\s+(.*)$",
                    "file": 1,
                    "line": 2,
                    "column": 3,
                    "severity": 4,
                    "message": 5
                }
            }
        },
        {
            "label": "build app",
            "group": "build",
            "command": "C:/Espressif/ESP32/msys32/usr/bin/bash",
            "type": "shell",
            "args": [
                "--login","-c",
                "make",
                "app",
                "-j10"
            ],
            "presentation": {
                "reveal": "always",
            },
            "problemMatcher": {
                "owner": "cpp",
                "fileLocation": "absolute",
                "pattern": {
                    "regexp": "^(.*):(\\d+):(\\d+):\\s+(warning|error):\\s+(.*)$",
                    "file": 1,
                    "line": 2,
                    "column": 3,
                    "severity": 4,
                    "message": 5
                }
            }
        },
        {
            "label": "clean app",
            "command": "C:/Espressif/ESP32/msys32/usr/bin/bash",
            "type": "shell",
            "args": [
                "--login","-c",
                "make",
                "app-clean",
                "-j10"
            ],
            "presentation": {
                "reveal": "always",
            },
        },
        {
            "label": "flash app",
            "command": "C:/Espressif/ESP32/msys32/usr/bin/bash",
            "type": "shell",
            "args": [
                "--login","-c",
                "make",
                "app-flash"
            ],
            "presentation": {
                "reveal": "always",
            },
        },
        {
            "label": "monitor",
            "type":"process",
            "windows": {
                "command": "C:/Espressif/ESP32/msys32/mingw32.exe",
                "args": [
                    "make",
                    "monitor"
                ],
            },
            "presentation": {
                "reveal": "always",
            },
            "problemMatcher": []
        },
        {
            "label": "menuconfig",
            "type":"process",
            "windows": {
                "command": "C:/Espressif/ESP32/msys32/mingw32.exe",
                "args": [
                    "make",
                    "menuconfig"
                ]
            },
            "presentation": {
                "reveal": "always",
            },
            "problemMatcher": []
        }
    ]
}

Launching the "flah app" task result in the following :

Toolchain path: /opt/xtensa-esp32-elf/bin/xtensa-esp32-elf-gcc
Toolchain version: crosstool-ng-1.22.0-80-g6c4433a5
Compiler version: 5.2.0
Python requirements from C:/Espressif/ESP32/msys32/home/theom/esp32/esp-idf/requirements.txt are satisfied.
Project is not inside a git repository, will not use 'git describe' to determine PROJECT_VER.
App "template" version: 1
To flash all build output, run 'make flash' or:
python /home/theom/esp32/esp-idf/components/esptool_py/esptool/esptool.py --chip esp32 --port COM29 --baud 921600 --before default_reset --after hard_reset write_flash
-z --flash_mode dio --flash_freq 40m --flash_size detect 0xd000 /home/theom/esp32/projects/template/build/ota_data_initial.bin 0x1000 /home/theom/esp32/projects/template/build/bootloader/bootloader.bin 0x10000 /home/theom/esp32/projects/template/build/template.bin 0x8000 /home/theom/esp32/projects/template/build/partitions_two_ota.bin

But nothing is uploaded. What can I do to integrate this functionnality to VScode?

Hello,  im using this for flash:
{
"label": "flash app",
"command": "idf.py",
"type": "shell",
"args": [
"-p",
"COM4",
"flash"
],
"presentation": {
"reveal": "always"
}
},

I have to agree. VSCode works much better as Eclipse

For added usefulness, you can use this vs extension. https://marketplace.visualstudio.com/items?itemName=cantonios.project-templates
There's a ESP32 project template here - https://github.com/albertsuwandhi/VSCode-ESP-IDF

I have found that adding the build folder after the ESP-IDF folder on the include path solves the problems with portTICK_PERIOD_MS etc:
{
    "configurations": [
        {
            "name": "Linux",
            "includePath": [
                "${workspaceRoot}/main/**",
                "${workspaceRoot}/build/**",
                "${env:IDF_PATH}/components/**"
            ],
            "browse": {
                "limitSymbolsToIncludedHeaders": true,
                "databaseFilename": ""
            },
            "intelliSenseMode": "gcc-x64"
        }
    ],
    "version": 4
}

Relevant lines:

${workspaceRoot}/build/**
${env:IDF_PATH}/components/**

For added usefulness, you can use this vs extension. https://marketplace.visualstudio.com/items?itemName=cantonios.project-templates
There's a ESP32 project template here - https://github.com/albertsuwandhi/VSCode-ESP-IDF

"/Users/albert/esp/esp-idf/components" A template wich just works on Albert's computer ;)

@JosuGZ Did you mean adding the build path before the IDF path?

@JosuGZ Did you mean adding the build path before the IDF path?

Oh, yes, in case of disagreement, code rules ;) Edited.

ESP-IDF v4.0
Hi folks! I post here my best attempt to run ESP-IDF v4.0 (idf.py, CMake, Ninja...) in VSCode.
From scratch:

Follow the new ESP-IDF Get Started Guide (latest)
Download and install VSCode
Install 3 VSCode extensions: C/C++, Native Debug, Task Explorer

Inside your VSCode project folder, add these files:

.vscode/tasks.json (click to expand)

// ======================== tasks.json ========================
{
  // See https://go.microsoft.com/fwlink/?LinkId=733558
  // for the documentation about the tasks.json format
  "version": "2.0.0",
  "tasks": [{
      "label": "Build",
      "group": "build",
      "type": "shell",
      "command": ". $HOME/esp/esp-idf/export.sh && idf.py build",
      "windows": {
        "command": "%userprofile%\\esp\\esp-idf\\export.bat && idf.py build"
      },
      "problemMatcher": {
        "owner": "cpp",
        "fileLocation": ["relative", "${workspaceFolder}/build"],
        "pattern": {
          "regexp": "^(.*):(\\d+):(\\d+):\\s+(warning|error):\\s+(.*)$",
          "file": 1,
          "line": 2,
          "column": 3,
          "severity": 4,
          "message": 5
        }
      }
    },
    {
      "label": "Get size",
      "group": "build",
      "type": "shell",
      "command": ". $HOME/esp/esp-idf/export.sh && idf.py size",
      "windows": {
        "command": "%userprofile%\\esp\\esp-idf\\export.bat && idf.py size"
      },
      "problemMatcher": {
        "owner": "cpp",
        "fileLocation": ["relative", "${workspaceFolder}/build"],
        "pattern": {
          "regexp": "^(.*):(\\d+):(\\d+):\\s+(warning|error):\\s+(.*)$",
          "file": 1,
          "line": 2,
          "column": 3,
          "severity": 4,
          "message": 5
        }
      }
    },
    {
      "label": "Clean",
      "group": "build",
      "type": "shell",
      "command": ". $HOME/esp/esp-idf/export.sh && idf.py clean",
      "windows": { "command": "%userprofile%\\esp\\esp-idf\\export.bat && idf.py clean" }
    },
    {
      "label": "Clean (full)",
      "group": "build",
      "type": "shell",
      "command": ". $HOME/esp/esp-idf/export.sh && idf.py fullclean",
      "windows": { "command": "%userprofile%\\esp\\esp-idf\\export.bat && idf.py fullclean" }
    },
    {
      "label": "Flash",
      "group": "test",
      "type": "shell",
      "command": ". $HOME/esp/esp-idf/export.sh && idf.py flash",
      "windows": { "command": "%userprofile%\\esp\\esp-idf\\export.bat && idf.py flash" },
      "problemMatcher": {
        "owner": "cpp",
        "fileLocation": ["relative", "${workspaceFolder}/build"],
        "pattern": {
          "regexp": "^(.*):(\\d+):(\\d+):\\s+(warning|error):\\s+(.*)$",
          "file": 1,
          "line": 2,
          "column": 3,
          "severity": 4,
          "message": 5
        }
      }
    },
    {
      "label": "Erase flash",
      "group": "build",
      "type": "shell",
      "command": ". $HOME/esp/esp-idf/export.sh && idf.py erase_flash",
      "windows": { "command": "%userprofile%\\esp\\esp-idf\\export.bat && idf.py erase_flash" }
    },
    {
      "label": "Monitor",
      "group": "test",
      "type": "shell",
      "command": ". $HOME/esp/esp-idf/export.sh && idf.py monitor",
      "windows": { "command": "%userprofile%\\esp\\esp-idf\\export.bat && idf.py monitor" },
      "isBackground": true,
      //"dependsOn": ["Flash"]
    },
    {
      "label": "OpenOCD",
      "type": "shell",
      "command": ". $HOME/esp/esp-idf/export.sh && openocd -f interface/ftdi/esp32_devkitj_v1.cfg -f board/esp32-wrover.cfg",
      "windows": { "command": "%userprofile%\\esp\\esp-idf\\export.bat && openocd -f interface/ftdi/esp32_devkitj_v1.cfg -f board/esp32-wrover.cfg" },
      "isBackground": true,
      "problemMatcher": {
        "pattern": {
          "regexp": "^(Info |Warn ):(.*)$", // Ignore errors
          "severity": 1,
          "message": 2
        },
        "background": {
          "activeOnStart": true,
          "beginsPattern": ".",
          "endsPattern": "Info : Listening on port \\d+ for gdb connections"
        }
      }
    }
  ]
}

.vscode/launch.json (click to expand)

// ======================== launch.json ========================
{
  // Use IntelliSense to learn about possible attributes.
  // Hover to view descriptions of existing attributes.
  // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
  "version": "0.2.0",
  "configurations": [
    {
      "type": "gdb",
      "request": "launch",
      "name": "Debug ESP32",
      "target": "build/${workspaceFolderBasename}.elf",
      "cwd": "${workspaceFolder}",
      "gdbpath": "${env:HOME}/esp/xtensa-esp32-elf/bin/xtensa-esp32-elf-gdb", // Path of the toolchain
      "autorun": [
        "target remote :3333", // Connect to OpenOCD
        "mon reset halt", // Reset the chip and keep the CPUs halted
        "set remote hardware-watchpoint-limit 2", // Restrict GDB to using two hardware watchpoints supported by ESP32
        "flushregs", // Force GDB to get new state from the target
        "thb app_main", // Insert a temporary hardware breakpoint at the main function
        "c" // Resume the program. It will then stop at breakpoint inserted at app_main
      ],
      "preLaunchTask": "OpenOCD"
    }
  ]
}

.vscode/c_cpp_properties.json (click to expand)

{
    "configurations": [
        {
            "name": "Generic",
            "includePath": [
                "${workspaceFolder}/main/**",
                "${workspaceFolder}/build/include/",
                "${env.HOME}/esp/esp-idf/components/**"
            ],
            "browse": {
                "limitSymbolsToIncludedHeaders": true,
                "databaseFilename": ""
            },
            "intelliSenseMode": "gcc-x64",
            "compileCommands": "${workspaceFolder}/build/compile_commands.json"
        }
    ],
    "version": 4
}

.vscode/settings.json (click to expand)

// ======================== settings.json ========================
{
  "taskExplorer.enableMake": false
}

You should now see the different tasks in the Explorer:

And you should be able to start a debug session:

Some quirks:

The correct firmware must be flashed manually before starting a debug session (OpenOCD is not configured to flash the ESP32).
OpenOCD is started automatically before a debug session, but is not terminated after the debug session. You must terminate it to flash a new firmware (just like the ESP Monitor)...
I tested on macOS only, but it should work on Windows as well. Please give some feedback.
If you're on a ESP-WROVER-KIT, specially on macOS, you can use ESP Monitor while debugging only if it was launched before the debug session. So the correct order is Flash CPU, Start Monitor, Start Debug. Also, you may have to unplug and replug your device after a debug session in order to access the UART functions again (this didn't work for me). Still looking for a workaround...

By the way, I don't want to spoil but I checked the job offers @ Espressif, and they probably hired some guy to make an official VSCode Extension. Great news for VSCode users that don't want to bother with PlatformIO 😃

I have an error when trying to build task:
running command$ bash -c Build make app
Failed to launch external program "bash" -c Build make app.
spawn bash ENOENT
Tried manually on the terminal:
"bash" -c Build make app
Works.
I am using VSCode v1.38.1
Any help appreciated.

ESP-IDF v4.0
Hi folks! I post here my best attempt to run ESP-IDF v4.0 (idf.py, CMake, Ninja...) in VSCode.
From scratch:

Follow the new ESP-IDF Get Started Guide (latest)
Download and install VSCode
Install 3 VSCode extensions: C/C++, Native Debug, Task Explorer

Inside your VSCode project folder, add these files:
.vscode/tasks.json (click to expand)
.vscode/launch.json (click to expand)
.vscode/c_cpp_properties.json (click to expand)
.vscode/settings.json (click to expand)
You should now see the different tasks in the Explorer:

And you should be able to start a debug session:

Some quirks:

You should adapt the OpenOCD script to your match your ESP-32 dev board (if not ESP-WROVER-KIT), and set the path to gdb manually.
The correct firmware must be flashed before starting a debug session (OpenOCD is not configured to flash the ESP32).
OpenOCD is started automatically before a debug session, but is not terminated after the debug session. You must terminate it to flash a new firmware (just like the ESP Monitor)...
I tested on macOS only, but it should work on Linux and Windows as well. Please give some feedback.
You can use ESP Monitor while debugging only if it was launched before the debug session. So the correct order is Flash CPU, Start Monitor, Start Debug.
If you're on a ESP-WROVER-KIT, specially on macOS, you may have to unplug and replug your device after a debug session in order to access the UART functions again (this guide didn't work for me). Still looking for a workaround...

Followed the instructions, but I'm experiencing issues with the included files:

#include errors detected. Consider updating your compile_commands.json or includePath. Squiggles are disabled for this translation unit (/xxxxx/esp32/Projects/hello_world/main/hello_world_main.c).
cannot open source file "../hal.h" (dependency of "freertos/FreeRTOS.h")

Additional info:

This error popped up trying to run the hello world example (which compiles fine through the command line), but I've tried a few other examples as well with the same issue
I've adapted C_CPP_Properties.json to reflect the correct path to esp-idf folder
Running on Mac

Any ideas on how to resolve this?

@trishaulr VSCode locates the include files in the build folder of your project, thus it has to be compiled once. Does the Build task runs fine ?

Hey folks, it's been 2 years, PlatformIO exists now and it works really well. I'm closing the issue.

@trishaulr VSCode locates the include files in the build folder of your project, thus it has to be compiled once. Does the Build task run fine ?

Thanks @motla tried Build but I get an error relating to the install: (Note all the tools have been installed; I'm able to compile and build from CLI without problems).
Adding ESP-IDF tools to PATH...
Not using an unsupported version of tool xtensa-esp32-elf found in PATH: 1.22.0-80-g6c4433a-5.2.0.
WARNING: directory for tool xtensa-esp32s2-elf version esp32s2-dev-4-g3a626e9-8.2.0 is present, but tool was not found
ERROR: tool xtensa-esp32s2-elf has no installed versions. Please run '/Users/Trishaul/esp32/esp-idf/install.sh' to install it.
ERROR: tool esp32ulp-elf has no installed versions. Please run '/Users/Trishaul/esp32/esp-idf/install.sh' to install it.
ERROR: tool openocd-esp32 has no installed versions. Please run '/Users/Trishaul/esp32/esp-idf/install.sh' to install it.
/bin/bash: idf.py: command not found
The terminal process terminated with exit code: 127
Terminal will be reused by tasks, press any key to close it.

@grisevg Yes it's a solution, but afaik PlatformIO it is not compatible with IDF 4.0 (we can't even specify the IDF version to use to compile a project so it's not suitable for a serious company - see here).
People should have the choice to use the default Espressif toolchain under VSCode with no extra overlay.
But it's not an issue indeed, more like a suggestion.

@motla Fair enough, I wasn't aware of that. But open a new issue, this one is exceeded it's purpose.

@trishaulr it's probably some mixing of IDF 3 and 4. Please be sure to remove all IDF 3 folders and calls in your .bash_profile file.

@trishaulr it's probably some mixing of IDF 3 and 4. Please be sure to remove all IDF 3 folders and calls in your .bash_profile file

@motla Apologies if I'm missing something basic, but there just seems to be one IDF link under the profile:
/Users/Trishaul/esp32/xtensa-esp32-elf/bin
/Library/Frameworks/Python.framework/Versions/3.6/bin
/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/share/dotne
:~/.dotnet/tools:/Library/Frameworks/Mono.framework/Versions/Current/Commands

@trishaulr Try to remove the first line. Toolchain path doesn't have to be in the bash profile file any more, as it's now defined by calling IDF script export.sh (see here). Moreover, it is now installed automatically under ~/.espressif/tools when you call install.sh

@trishaulr Try to remove the first line. Toolchain path doesn't have to be in the bash profile file any more, as it's now defined by calling IDF script export.sh (see here). Moreover, it is now installed automatically under ~/.espressif/tools when you call install.sh

@motla ; eventually gave up and did a clean rebuild of my entire machine. This time I came across a different error:
IDF_PATH must be set before sourcing this script
zsh:1: command not found: idf.py
The terminal process terminated with exit code: 127
I've opened a terminal in VCS and set IDF_PATH; but it doesn't seem to resolve this issue. Any suggestions as to how to resolve this?

@trishaulr Try to remove the first line. Toolchain path doesn't have to be in the bash profile file any more, as it's now defined by calling IDF script export.sh (see here). Moreover, it is now installed automatically under ~/.espressif/tools when you call install.sh

@motla ; eventually gave up and did a clean rebuild of my entire machine. This time I came across a different error:
IDF_PATH must be set before sourcing this script
zsh:1: command not found: idf.py
The terminal process terminated with exit code: 127
I've opened a terminal in VCS and set IDF_PATH; but it doesn't seem to resolve this issue. Any suggestions as to how to resolve this?

UPDATE: Managed to get around the IDF_PATH error by editing tasks.json to include the full path to idf.py. However now, a different error has popped up:
The following Python requirements are not satisfied:
click>=5.0
pyparsing>=2.0.3,<2.4.0
pyelftools>=0.22

Hello All,
It's saying this is closed so I may post a new thread.
I've been doing things via the command line in win10 thus far; but want to be able to debug via JTAG and a decent GUI - I've set up Eclipse and VS Code and have run into the various issues with various degrees of success - but, in the opinions of those here - which is the best environment for effective JTAG debugging - Eclipse or VS Code?
Also, I just picked up the ESP-Prog units - I do have a Segger - which one is better?
TIA,
John W.

Currently Visual Studio Code extension we haven't released Debugging support (coming really soon) but Eclipse have very nice debug experience.
You should definitely try them both and see which one works best for you.

OK Brian,
Any ETA on when that will show up in VS Code?
I'll focus on Eclipse then at the moment.  I'm also having an issue with VS
Code finding tools from other projects even though all of the IDF paths are
explicitly defined - need to figure out how to make VS Code stop that.
Thanks,
John
On Fri, Mar 20, 2020 at 4:29 AM Brian A. Ignacio<EMAIL_ADDRESS>wrote:

Currently Visual Studio Code extension we haven't released Debugging
support (coming really soon) but Eclipse have very nice debug experience.
You should definitely try them both and see which one works best for you.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/espressif/esp-idf/issues/303#issuecomment-601653285,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AARTWJ2PIBRJTXWTJONZ5NDRINHQ7ANCNFSM4C52QFYA
.

Although we don't have debug support in our extension, we do provide some templates for launch.json so you can debug with the C/C++ extension with the xtensa toolchain.
Please take a look at our repository https://github.com/espressif/vscode-esp-idf-extension for any ESP-IDF extension for Visual Studio Code issues and suggestions.

Brian,
Yes - thanks for that.
Best Regards,
John
On Sun, Mar 22, 2020 at 7:17 PM Brian A. Ignacio<EMAIL_ADDRESS>wrote:

Although we don't have debug support in our extension, we do provide some
templates for launch.json so you can debug with the C/C++ extension with
the xtensa toolchain.
Please take a look at our repository
https://github.com/espressif/vscode-esp-idf-extension for any ESP-IDF
extension for Visual Studio Code issues and suggestions.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/espressif/esp-idf/issues/303#issuecomment-602326192,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AARTWJ2QGFXN7ZFSDRFRJUTRI3BCFANCNFSM4C52QFYA
.

@motla I'm facing the same issue. It builds fine, but it complains of not finding a downstream dependency. Any ideas?

@julianiaccopucci This happens because you need to configure the C/C++ extension to resolve headers as suggested in the message try using compile_commands.json in your project's .vscode/c_cpp_properties.json as described in here

https://www.reddit.com/r/embedded/comments/11mdgz5/makefile_versus_cmake_build_system/jbkgob3/?context=3


chore: explicit Uint8List cast in at_lookup_impl.dart

- What I did

Add explicit as Uint8List cast

- How I did it
- How to verify it
- Description for the changelog

discussed in architecture call that explicit cast wouldn't do any harm
This is an issue that only I am running  into

- Context
../../.pub-cache/hosted/pub.dev/at_lookup-3.0.46/lib/src/at_lookup_impl.dart:181:16: Error: The argument type 'List<int>' can't be assigned to the parameter type 'Uint8List'.
 - 'List' is from 'dart:core'.
 - 'Uint8List' is from 'dart:typed_data'.
          utf8.encode(value), base64Decode(dataSignature));

I would get this error once I dart pub cache clean && dart pub get.
But by making the change in this PR, it would be fixed.
- Additional context
My pubspec.yaml:
name: dart_playground
description: A sample command-line application.
version: 1.0.0
# repository: https://github.com/my_org/my_repo

environment:
  sdk: ^3.1.3

# Add regular dependencies here.
dependencies:
  args: ^2.4.2
  at_client: ^3.0.75
  at_onboarding_cli: ^1.4.3
  at_utils: ^3.0.16
  version: ^3.0.2
  # path: ^1.8.0

dev_dependencies:
  lints: ^2.0.0
  test: ^1.21.0

https://github.com/dart-lang/sdk/issues/52801
From @XavierChanth :
Dart 3.2 had a breaking change in it, which is why you are experiencing the issue that you are.
So the options are either:

Add the cast back into at_lookup and all other places (and subsequently mark places to ignore unnecessary explicit casts because people running sdk >= 3.2.0 will get this lint warning)
Set the minimum sdk version to 3.2.0 across our packages (3.2.0 came out in November, so it is very recent, definitely a good chunk of people who haven't updated yet)

Option 1 has my vote 100%

I think this is the syntax for it then:
      // ignore: unnecessary_cast

Yes - if you search for "unnecessary cast" in at_libraries you'll see where we've done this before


Support multiple Infra Providers from a single Management Cluster

Feature Request
Add the ability to have CAPV,CAPZ,CAPA,CAPD, etc. Installed in a single management cluster.

Describe alternatives you've considered
Management cluster per infra provider

Additional context
Mgmt cluster per infra provider is a waist of resources.

Thanks for this features request!
I think we might be limited by the Cluster API implementations right now, since TCE relies on CAPI.
I'm not super familiar with adding multiple providers into a management cluster, but I do not believe it's currently supported upstream. This issue in CAPI was the closest thing I could find to your request.

I'm down with it. I need to sync with others on priority and related questions, though.


KubeOne not creating machinedeployment objects from Terraform integration

When running KubeOne with the Terraform integration. It does not create the machinedeployment objects for the machine-controller.
Terraform kubeone_workers output (some values redacted):
"value": {
      "us-west-1a": {
        "providerSpec": {
          "annotations": {
            "cluster.k8s.io/cluster-api-autoscaler-node-group-max-size": "32",
            "cluster.k8s.io/cluster-api-autoscaler-node-group-min-size": "2"
          },
          "cloudProviderSpec": {
            "ami": "ami-08e502a53ad0a281b",
            "assignPublicIP": false,
            "availabilityZone": "us-west-1a",
            "diskSize": 20,
            "diskType": "gp2",
            "instanceProfile": "us-west-1-staging-green-worker-node",
            "instanceType": "t3.large",
            "region": "us-west-1",
            "securityGroupIDs": [
              "<REDACTED>"
            ],
            "subnetId": "<REDACTED>",
            "tags": {
              "us-west-1-staging-green-workers": ""
            },
            "vpcId": "<REDACTED>"
          },
          "operatingSystem": "ubuntu",
          "operatingSystemSpec": {
            "distUpgradeOnBoot": false
          },
          "sshPublicKeys": [
            "<REDACTED>"
          ]
        },
        "replicas": 4
      }
}

KubeOne operations executed:
kubeone apply --manifest config.yaml -t tf.json
INFO[14:16:51 MDT] Determine hostname...
INFO[14:18:09 MDT] Determine operating system...
INFO[14:18:09 MDT] Running host probes...
INFO[14:18:13 MDT] Electing cluster leader...
INFO[14:18:13 MDT] Elected leader "ip-10-0-0-198.us-west-1.compute.internal"...
INFO[14:18:20 MDT] Building Kubernetes clientset...
INFO[14:18:21 MDT] Running cluster probes...
The following actions will be taken:
Run with --verbose flag for more information.

        ~ ensure nodelocaldns
        ~ ensure CNI
        ~ ensure credential
        ~ ensure machine-controller

Do you want to proceed (yes/no): yes

INFO[14:19:29 MDT] Patching static pods...
INFO[14:19:29 MDT] Patching static pods...
INFO[14:19:29 MDT] Patching static pods...
INFO[14:19:29 MDT] Patching static pods...
INFO[14:19:29 MDT] Patching static pods...
INFO[14:19:31 MDT] Downloading kubeconfig...
INFO[14:19:31 MDT] Downloading PKI...
INFO[14:19:33 MDT] Creating local backup...                      node=<IP_ADDRESS>
INFO[14:19:33 MDT] Ensure node local DNS cache...
INFO[14:19:35 MDT] Activating additional features...
INFO[14:19:41 MDT] Creating credentials secret...
INFO[14:19:43 MDT] Installing machine-controller...
INFO[14:19:50 MDT] Waiting for machine-controller to come up...

KubeOne version: 1.13.0-rc0
machine-controller version: 1.35.2
Kubernetes Version: 1.22.0

I just realized I opened this under the wrong project. I'll close it.


Send transaction test (main.go) gets "Transaction signature verification failure"

I'm trying to send transaction to api.devnet.solana.com via examples/tour/transfer-sol/main.go and always getting an error "Transaction signature verification failure". Solana response is :
{"jsonrpc":"2.0","error":{"code":-32003,"message":"Transaction signature verification failure"},"id":1}
What am I doing wrong?

Can't see your code. Just guessing your signer is wrong.
When you send a tx, there is must a fee payer should sign.
for a transfer instruction, there is another signer, from
Maybe you can check these two signer first.


Add module and supporting documentation to bevy_assets

Objective
Bevy's asset system is powerful and generally well-designed but very opaque.
Beginners struggle to discover how to do simple tasks and grok the fundamental data models, while more advanced users trip over the assorted traits and their relation to each other.
Reverts #15054 ;)
Solution
This PR adds module documentation to bevy_assets, tweaking the associated documentation on the items as needed to provide further details and bread crumbs.
If you have ideas for other important, hard-to-discover patterns or functionality in this crate, please let me know.
That said, I've left out a section on asset preprocessing which should eventually go here. That is substantially more uncertain, and requires both more time to investigate and more expertise to review.

Alright, all cleaned up. @bushrat011899 I've opted not to include the doc tests / code samples here: fragments like that require a lot of hidden code to actually make compile, which is very confusing to readers and annoying to maintain. We could ignore them so they don't get compiled, but then they become very prone to rot.

Something I think is missing is a more detailed talk of Assets vs asset "existing" vs disk. Especially for RenderAsset and RenderAssetUsages, where it may not exist in Assets but is still a "valid" asset, and generally Handle vs AssetServer vs Assets and how they play together (you can allocate a handle without an asset yet, or you can add an asset manually to Assets without going through AssetServer and have it tracking the asset, or you can go through AssetServer).

I don't feel qualified to write this.

Probably also mention that AssetServer and Assets are resources, e.g. wrap them in Res to use in a system.

Good call, done :) I trust that users will know how to use Res at this point, but it's good to call them resources at least once.

Thank you to everyone involved with the authoring or reviewing of this PR! This work is relatively important and needs release notes! Head over to https://github.com/bevyengine/bevy-website/issues/1686 if you'd like to help out.


[Discussion] Status Code as Constants

Related: https://github.com/slimphp/Slim/issues/2310

See https://github.com/php-fig/http-message-util/blob/master/src/StatusCodeInterface.php
Related to #62

Shouldn't we use the StatusCode class added on 3.11? https://github.com/slimphp/Slim/pull/2429

Shouldn't we use the StatusCode class added on 3.11? https://github.com/slimphp/Slim/pull/2429

Or should we have used the FIG ones in 3.11?

Migrated to https://github.com/slimphp/Slim-Psr7/issues/8


02 AUG 2023 - Diversity Equity & Inclusion Special Interest Group Meeting

Date
YYYYMMDD - 12:00pm EST / 5pm GMT
Untracked attendees

Fullname, Affiliation, (optional) GitHub username
...

Meeting notices

FINOS Project leads are responsible for observing the FINOS guidelines for running project meetings. Project maintainers can find additional resources in the FINOS Maintainers Cheatsheet.

All participants in FINOS project meetings are subject to the LF Antitrust Policy, the FINOS Community Code of Conduct and all other FINOS policies.

FINOS meetings involve participation by industry competitors, and it is the intention of FINOS and the Linux Foundation to conduct all of its activities in accordance with applicable antitrust and competition laws. It is therefore extremely important that attendees adhere to meeting agendas, and be aware of, and not participate in, any activities that are prohibited under applicable US state, federal or foreign antitrust and competition laws. Please contact<EMAIL_ADDRESS>with any questions.

FINOS project meetings may be recorded for use solely by the FINOS team for administration purposes. In very limited instances, and with explicit approval, recordings may be made more widely available.

Agenda

[ ] Convene & roll call (5mins)
[ ] Display FINOS Antitrust Policy summary slide
[ ] Review Meeting Notices (see above)
[ ] Approve past meeting minutes
[ ] Agenda item 1
[ ] Agenda item 2
[ ] ...
[ ] AOB, Q&A & Adjourn (5mins)

Decisions Made

[ ] Decision 1
[ ] Decision 2
[ ] ...

Action Items

[ ] Action 1
[ ] Action 2
[ ] ...

Meeting Info
Join Zoom Meeting
https://zoom.us/j/98492160513
Meeting ID: 984 9216 0513
Passcode: 691166

Julia / FINOS

Vicky Twomey-Lee - Coding Grace / PyLadies Dublin / GameCraft / TechFoundHer
Other 🧢: Python Software Foundation Grants Working Group / EuroPython Society Board / Women Who Code Dublin Alumni

Beeke-Marie Nelke - GS

Peter Smulovics / Morgan Stanley 🏦

Closed as part of DEI SIG project board grooming


Fix a memory leak in portaudio.c

Eliminate the malloc call altogether

Oops, the second commit is not related to the memory leak.


Resolving nested structured config with interpolation raises ValidationError

Describe the bug
When using interpolation on Structured Config, resolving the object is raising a validation error:
from omegaconf import OmegaConf, MISSING, II
from dataclasses import dataclass

@dataclass
class User:
    name: str = MISSING

@dataclass
class Config:
    user: User = User("John")
    admin: User = II("user")

cfg: Config = OmegaConf.structured(Config)
OmegaConf.resolve(cfg)

This raises the following error:
omegaconf.errors.ValidationError: Invalid type assigned: dict is not a subclass of User. value: {'name': 'John'}

Expected behavior
Resolving the object should work as intended, by passing the User object instead of a dictionary.

Thanks for reporting this, @Messlow!
I can reproduce the bug.

I am also facing the same issue, any updates on how to solve this issue?

Thanks for the nudge @subhankar-ghosh. I've just opened PR #902 which should resolve this issue.


Alternate constructor for dict of DataFrame -> Panel that doesn't nuke type information

Panel({k : df})

will cast everything to object if df is a mixed-type DataFrame

This was addressed by the new orient option in Panel.from_dict


need help: how to configuration devServer to flush browser when file change?

it's my code :

const setWebpackDevServer = () => config => {
  return {
    ...config,
    watchContentBase: true,
    hot: true,
    publicPath: "/",
    watchOptions: {
      ignored: "/node_modules/"
    }
  };
};
module.exports = {
 webpack:override( ... ),
 devServer: overrideDevServer(
    setWebpackDevServer()
  )
}

and  now when i change my  code ,terminal is re-compile the code ,but browser is not flush...
the dev-server is not initiate a websocket request to  flush browser.
looking forward your response

Hi @junjie-lean! customize-cra provides a way to inject webpack configuration into create-react-app, but we don't provide support for how to configure webpack itself. I suggest asking your question on Stack Overflow.


Stats Monitor shows different information than the docker stats command

Not sure if I just am not understanding something or if you app is monitoring something additionally than what the docker stats command monitors.  I'm noticing that your stats monitor are different (sometime considerably than the docker stats command).
For example memory is typically not even close.  I'll have a container that the docker stats command says is using 289mb of ram and your stats monitor says it is using 1.39gb of ram.  I guess if it is working correctly then what are you measuring that makes your numbers so much different.

Hi @cbdejavu Thanks for the issue. Can you say what is version of Docker you're using?

Here's the info from the docker version command:
Client:
Version:      18.03.1-ce
API version:  1.37
Go version:   go1.9.5
Git commit:   9ee9f40
Built:        Thu Apr 26 07:17:38 2018
OS/Arch:      linux/amd64
Experimental: false
Orchestrator: swarm
Server:
Engine:
Version:      18.03.1-ce
API version:  1.37 (minimum version 1.12)
Go version:   go1.9.5
Git commit:   9ee9f40
Built:        Thu Apr 26 07:15:45 2018
OS/Arch:      linux/amd64
Experimental: false

Also for note, the dockstation was installed using the ubuntu software center app and is version 1.4.1

Yep. I checked. It's very interesting, but it's the bug of Docker.
An example

Values on screenshot are different, but we use Docker API. I called
curl --unix-socket /var/run/docker.sock "http:/v1.24/containers/bf7d9e22d8f3/stats?stdout=1"
And I have next data:
{"read":"2018-06-17T10:05:15.245401953Z","preread":"2018-06-17T10:05:14.239553672Z","pids_stats":{"current":38},"blkio_stats":{"io_service_bytes_recursive":[{"major":8,"minor":0,"op":"Read","value":122744832},{"major":8,"minor":0,"op":"Write","value":21188608},{"major":8,"minor":0,"op":"Sync","value":0},{"major":8,"minor":0,"op":"Async","value":143933440},{"major":8,"minor":0,"op":"Total","value":143933440}],"io_serviced_recursive":[{"major":8,"minor":0,"op":"Read","value":3379},{"major":8,"minor":0,"op":"Write","value":56},{"major":8,"minor":0,"op":"Sync","value":0},{"major":8,"minor":0,"op":"Async","value":3435},{"major":8,"minor":0,"op":"Total","value":3435}],"io_queue_recursive":[],"io_service_time_recursive":[],"io_wait_time_recursive":[],"io_merged_recursive":[],"io_time_recursive":[],"sectors_recursive":[]},"num_procs":0,"storage_stats":{},"cpu_stats":{"cpu_usage":{"total_usage":30308612667,"percpu_usage":[8191916818,6891004021,8008310623,7217381205],"usage_in_kernelmode":2700000000,"usage_in_usermode":21870000000},"system_cpu_usage":35116340000000,"online_cpus":4,"throttling_data":{"periods":0,"throttled_periods":0,"throttled_time":0}},"precpu_stats":{"cpu_usage":{"total_usage":30307261677,"percpu_usage":[8191655599,6890933370,8007291503,7217381205],"usage_in_kernelmode":2700000000,"usage_in_usermode":21870000000},"system_cpu_usage":35112310000000,"online_cpus":4,"throttling_data":{"periods":0,"throttled_periods":0,"throttled_time":0}},"memory_stats":{"usage":596320256,"max_usage":597049344,"stats":{"active_anon":352874496,"active_file":42319872,"cache":189681664,"dirty":8192,"hierarchical_memory_limit":9223372036854771712,"hierarchical_memsw_limit":9223372036854771712,"inactive_anon":47181824,"inactive_file":147361792,"mapped_file":23511040,"pgfault":111158,"pgmajfault":208,"pgpgin":159626,"pgpgout":15647,"rss":400056320,"rss_huge":0,"total_active_anon":352874496,"total_active_file":42319872,"total_cache":189681664,"total_dirty":8192,"total_inactive_anon":47181824,"total_inactive_file":147361792,"total_mapped_file":23511040,"total_pgfault":111158,"total_pgmajfault":208,"total_pgpgin":159626,"total_pgpgout":15647,"total_rss":400056320,"total_rss_huge":0,"total_unevictable":0,"total_writeback":0,"unevictable":0,"writeback":0},"limit":2095771648},"name":"/opencv_jenkins_1","id":"bf7d9e22d8f37d454fb46b5ce13745de53ae544677a2b32d98e68740e1dd83c4","networks":{"eth0":{"rx_bytes":3512036,"rx_packets":2589,"rx_errors":0,"rx_dropped":0,"tx_bytes":107322,"tx_packets":1929,"tx_errors":0,"tx_dropped":0}}}

memory_stats -> usage = 596320256 bytes = 568.7 MB


linkify-html extra characters in parsed URL

Version: v4.0.0-beta.5
Here are a few instances of linkifyHtml adding extra characters to an URL. In all cases there's no explicit white space separating the URL and extra part.
Happens with brackets:
linkifyHtml('(https://example.com)EXTRA');
output:
(https://example.com)EXTRA

expected:
(https://example.com)EXTRA

... or quotes:
linkifyHtml('"https://example.com"EXTRA');
output:
"https://example.com"EXTRA

expected:
"https://example.com"EXTRA

... or text after '&' symbol which is not a query parameter separator in this case:
linkifyHtml('"https://example.com&THIS-IS-NOT-A-PARAM"');
output:
"https://example.com&THIS-IS-NOT-A-PARAM"

expected:
"https://example.com&THIS-IS-NOT-A-PARAM"

Hi @janroztocil, unfortunately most of these examples are technically valid URLs, note that even GitHub will not render them as expected.
(https://example.com)EXTRA
"https://example.com"EXTRA
"https://example.com&THIS-IS-NOT-A-PARAM"
This is a fundamental limitation of the parser and I am not be able to address it.


How do I invite the bot?

Hi, I wanted to know how i could get Tooga-Booga on my server, everytime i try to go on to the discord invite link, it wont allow me.

Hi there
The bot is currently not finished as we have not yet added the verification to the live system.
Also the instance has not been moved to a host yet.
Until then we are deciding to keep it private as to first get into an ideal state and then allow other servers to add it.

HI,
I just saw this, but yes -- Tooga is currently not available to the public due to some crucial features being missing. Once those features are added, I will release them. This should ideally be done by mid-summer.


HA setup?

How would one make an HA setup for this in AWS? By making an auto scaling group of Node JS boxes, and adding a load balancer in front of it, or are the reasons this would fail?

Could this alternatively be set up wit Serverless on AWS using API gateway and Lambda? That would make it scale best, and make for a really easy setup of the node.js part.

Making an autoscaling group would indeed work, as long as you use an Elvis API user (which supports concurrent logins).
Using an AWS Lambda would indeed even be better, it's something I want to test, didn't find the time to do so however.

as long as you use an Elvis API user

Per documentation (header 3) it's required to use an API user, so that's not an issue.
 Getting everything installed and configured automatically using puppet is almost done, and getting the service to start using systemd will be the last challenge.
Being able to run this in AWS Lambda with API gateway, S3 for storage if needed and something like DynamoDB for state management would be pretty cool.

I've now set this up, but I'm having trouble getting the load balancer to declare a node healthy. What could I use for a health check? As far as I can tell, nothing a "ping" has been implemented. Is there a URL you can recommend to use for a health check, or could you maybe add a ping URL to this application?

Code is merged to master.


navbar standalone app

We have this issue in FaceBase to have login/logout links on all our pages, of which we have several "static" (non-chaise) pages. Could we simply make a standalone app out of the existing chaise navbar? It would have to be done in a way that the app could be included on an arbitrary html page generated by jekyl (in other words don't assume that you can produce an index.html because we can't directly use or display that in this scenario).
Here's a reference to some notes from the facebase project including some comments on the subject from @RFSH as relayed by @crisaless.
https://github.com/informatics-isi-edu/facebase-www/issues/65

duplicate with #1697. Will close.


Requests with param in path don't work properly and throw exception

I use your client library to communicate with spotify api. It works well but I've caught exception with requests that contains path variables like v1/albums/{id} in request  path. Library doesn't replace path variable key correctly.
The project is for android. It configured with java 8.
I've added:

code to test
line with where exception occures
stacktrace
part of gradle config

Line that fires exception:
240: builtPath = builtPath.replaceAll("\\{" + nameValuePair.getName() + "}", nameValuePair.getValue());
Code to reproduce:
import com.wrapper.spotify.SpotifyApi;
import com.wrapper.spotify.exceptions.SpotifyWebApiException;
import com.wrapper.spotify.model_objects.specification.Album;
import com.wrapper.spotify.model_objects.specification.Artist;

import org.apache.hc.core5.http.ParseException;
import org.junit.Assert;
import org.junit.Test;

import java.io.IOException;

import dagger.hilt.android.testing.HiltAndroidTest;

@HiltAndroidTest
public class FetchByIdTest extends BaseSpotifyTest {

    @Test
    public void testAlbumById() throws ParseException, SpotifyWebApiException, IOException {
        //https://developer.spotify.com/console/get-album/?id=1IVuDXU95irZD6n7veVlUs
        SpotifyApi api = dataManager.getApi();
        String albumId = "1IVuDXU95irZD6n7veVlUs";
        Album album = api.getAlbum(albumId).build().execute();
        Assert.assertNotNull(album);
    }

    @Test
    public void testArtistById() throws ParseException, SpotifyWebApiException, IOException {
        //https://developer.spotify.com/console/get-artist/?id=0LyfQWJT6nXafLPZqxe9Of
        SpotifyApi api = dataManager.getApi();
        String artistId = "0LyfQWJT6nXafLPZqxe9Of";
        Artist artist = api.getArtist(artistId).build().execute();
        Assert.assertNotNull(artist);
    }
}

Error Stack Trace:
The stacktrace is the same for both tests
2021-02-16 15:35:19.797 E/TestRunner: java.util.regex.PatternSyntaxException: Syntax error in regexp pattern near index 5
    \{id}
         ^
        at java.util.regex.Pattern.compileImpl(Native Method)
        at java.util.regex.Pattern.compile(Pattern.java:1344)
        at java.util.regex.Pattern.<init>(Pattern.java:1328)
        at java.util.regex.Pattern.compile(Pattern.java:950)
        at java.lang.String.replaceAll(String.java:2286)
        at com.wrapper.spotify.requests.AbstractRequest$Builder.setPath(AbstractRequest.java:240)
        at com.wrapper.spotify.requests.data.albums.GetAlbumRequest$Builder.build(GetAlbumRequest.java:90)
        at com.dts.conrad.automotive.spotify.FetchByIdTest.testAlbumById(FetchByIdTest.java:25)
        at java.lang.reflect.Method.invoke(Native Method)
        at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
        at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
        at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
        at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
        at androidx.test.internal.runner.junit4.statement.RunBefores.evaluate(RunBefores.java:80)
        at dagger.hilt.android.internal.testing.MarkThatRulesRanRule$1.evaluate(MarkThatRulesRanRule.java:92)
        at org.junit.rules.RunRules.evaluate(RunRules.java:20)
        at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:325)
        at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:78)
        at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:57)
        at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
        at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
        at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
        at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
        at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
        at org.junit.runners.ParentRunner.run(ParentRunner.java:363)
        at org.junit.runners.Suite.runChild(Suite.java:128)
        at org.junit.runners.Suite.runChild(Suite.java:27)
        at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
        at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
        at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
        at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
        at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
        at org.junit.runners.ParentRunner.run(ParentRunner.java:363)
        at org.junit.runner.JUnitCore.run(JUnitCore.java:137)
        at org.junit.runner.JUnitCore.run(JUnitCore.java:115)
        at androidx.test.internal.runner.TestExecutor.execute(TestExecutor.java:56)
        at androidx.test.runner.AndroidJUnitRunner.onStart(AndroidJUnitRunner.java:395)
        at android.app.Instrumentation$InstrumentationThread.run(Instrumentation.java:2152)

Gradle config:
android {
//...
    compileOptions {
        sourceCompatibility JavaVersion.VERSION_1_8
        targetCompatibility JavaVersion.VERSION_1_8
    }
//...
}

Have you also read the bold text at the very beginning of this project's README?

Have you also read the bold text at the very beginning of this project's README?

Hm... No, I've not paid  attention to that bold text...
But lib works  for me on android. I'm working on app that uses android sdk api from 28.
And I didn't get any issue like in #120.
P.S: I've fixed the issue java.util.regex.PatternSyntaxException: Syntax error in regexp pattern near index 5 \{id} and I would like to create PR and try to continue use your library if you don't mind ;)

@dargmuesli
I've created PR #244 with fix of the issue. It contains minimal changes.

Thanks, this will be released as v6.5.2 :)
Just keep in mind that this library is not officially supporting Android.

Somehow the build fails with
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-gpg-plugin:1.6:sign (sign-artifacts) on project spotify-web-api-java: Execution sign-artifacts of goal org.apache.maven.plugins:maven-gpg-plugin:1.6:sign failed: Plugin org.apache.maven.plugins:maven-gpg-plugin:1.6 or one of its dependencies could not be resolved: The following artifacts could not be resolved: org.apache.maven:maven-project:jar:2.2.1, org.apache.maven:maven-profile:jar:2.2.1: Could not transfer artifact org.apache.maven:maven-project:jar:2.2.1 from/to central (https://repo.maven.apache.org/maven2): Transfer failed for https://repo.maven.apache.org/maven2/org/apache/maven/maven-project/2.2.1/maven-project-2.2.1.jar: Connection reset -> [Help 1]

I currently do not have enough time to look into this, but will do once that changes.

Somehow the build fails with
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-gpg-plugin:1.6:sign (sign-artifacts) on project spotify-web-api-java: Execution sign-artifacts of goal org.apache.maven.plugins:maven-gpg-plugin:1.6:sign failed: Plugin org.apache.maven.plugins:maven-gpg-plugin:1.6 or one of its dependencies could not be resolved: The following artifacts could not be resolved: org.apache.maven:maven-project:jar:2.2.1, org.apache.maven:maven-profile:jar:2.2.1: Could not transfer artifact org.apache.maven:maven-project:jar:2.2.1 from/to central (https://repo.maven.apache.org/maven2): Transfer failed for https://repo.maven.apache.org/maven2/org/apache/maven/maven-project/2.2.1/maven-project-2.2.1.jar: Connection reset -> [Help 1]

I currently do not have enough time to look into this, but will do once that changes.

I didn't get the build fail. I've used maven with command line to tests and build.
➜ ~ mvn -version
Apache Maven 3.6.3 (cecedd343002696d0abb50b32b541b8a6ba2883f)
Maven home: /usr/local/Cellar/maven/3.6.3_1/libexec
Java version: 1.8.0_242-release, vendor: JetBrains s.r.o, runtime: /Applications/Android Studio.app/Contents/jre/jdk/Contents/Home/jre
Default locale: en_UA, platform encoding: UTF-8
OS name: "mac os x", version: "10.16", arch: "x86_64", family: "mac"

It's failing on Travis when trying the gpg sign build step.

Got it fixed after countless tries. I really want to know what made it work now...

Got it fixed after countless tries. I really want to know what made it work now...

Are you about the issue or sign build step?

Well, about the sign build step. The issue was fixed by you ;)


04-test_encoder_decoder test is really slow

This test seems to generate a large number of keys before it starts which takes a long time (particularly with no-asm/sanitizer builds). Can we somehow avoid the key gen step?

Sure, we can generate the keys once and have them on file. It just seemed a lite weird to decode stuff just to have them encoded and decoded again.
I was thinking for a bit that since the first step of each test case is to encode the key, we could make that a one-time thing... except that we do use the original key to compare the decoding result against, so that would diminish the test for the lack of original data...
That's how far I have gotten in thinking about this.
I do question the need for speedier tests, though (there's a definite trend going on right now, at least in the minds of some). In the choice between speed and reliability, I wouldn't think twice, the latter wins.

Sure, we can generate the keys once and have them on file. It just seemed a lite weird to decode stuff just to have them encoded and decoded again.

I can see that - but if it doesn't break the purpose of the test, then this would seem like the preferred way forward. An alternative is to construct the keys "manually" in the code itself.

I do question the need for speedier tests

I am strongly in favour of faster tests. We absolutely must be careful not to kill the performance of the test suite unnecessarily. The intention I believe is to continue invest in our test suite and expand the testing considerably as we move forwards. The slower the tests are the more this will become a huge problem for us - both in terms of the resources required to run our tests as well as the time taken. I don't know about you but I run the test suite many times a day. It doesn't take much to multiply that up and equate to large amounts of time lost.

In the choice between speed and reliability, I wouldn't think twice, the latter wins.

I don't see it as an either/or situation. We must have test coverage and  it must be as performant as possible.

We now have this concept of extended tests in CI, but a default "make test" runs all the tests. And I actually want the default to have all the tests.
Are there some tests that we think take long to run and in most cases are not useful to run? Should we then have an easy way to exclude those tests?

My normal build process uses TESTS=-test_fuzz, but skips the external tests because they are not present/configured.  The CI extended tests include those external tests as one of (IIUC) the main differences from the non-extended tests.

On my machine time make test TESTS=test_encoder_decoder varies between 10 and 20 seconds,
and when the sanitizers are enabled this time doubles: between 20 and 44 seconds.
Which is a lot, in particular since it causes 100% load (for one CPU core).

Something I observed when looking at the github CI builds is that no-asm is really slow. I never combine that with sanitizers on my machine, which might be a reason why I never experienced the excruciating slowness...

Yeah, it would make sense to not use no-asm with the sanitizers build.

Yeah, it would make sense to not use no-asm with the sanitizers build.

A no-asm sanitizer build is useful, because the C code then
actually gets build and tested. If you use the assembler, the
assembler doesn't get sanitized.

A no-asm sanitizer build is useful, because the C code then
actually gets build and tested. If you use the assembler, the
assembler doesn't get sanitized.

But is that something we need to run on every PR? We could have a run-checker job that does this.

But is that something we need to run on every PR? We could have a run-checker job that does this.

Yes!

On my machine time make test TESTS=test_encoder_decoder varies between 10 and 20 seconds,
and when the sanitizers are enabled this time doubles: between 20 and 44 seconds.
Which is a lot, in particular since it causes 100% load (for one CPU core).

I ran some of my own tests on my laptop. I just did one run in each configuration so there may be some variability but it gives some kind of picture. I built with the following configurations:
./config -d --strict-warnings
./config -d --strict-warnings no-asm
./config -d --strict-warnings enable-asan enable-ubsan
./config -d --strict-warnings enable-ubsan enable-asan no-asm

I then ran just the TEST_encoder_decoder test and timed the result with time. The results were:
No options: 0m5.308s
no-asm: 7m45.533s
Sanitizers: 0m36.559s
Sanitizers plus no-asm: 45m54.454s
So approximately speaking it looks to me like the sanitizers add an overhead of approx. x7, while no-asm adds approximately x88. The two together gives a slow down of approx. x500.
45 mins to run one test seems unreasonably long!! I think it is primarily due to the large number of keys that this test generates before it starts. I think we should:

Move the no-asm plus sanitizers CI jobs to be run-checker only
Refactor the test to not generate large numbers of keys up front.

Refactor the test to not generate large numbers of keys up front.

It turns out that in endecode_test.c it's just 14 keys, and only the first two (DH and DHX) are very slow, in particular the DH one.
For a significant speedup it should be sufficient to use for them pre-established parameters (or short key sizes).

My suspicion was right, see #13552.

Note that various of the travis runs are failing because they timeout after 50 minutes, and all except the first job seems to be fixed by #13552.

Re-opening this issue because the following is not yet done:
Move no-asm sanitizer CI builds to a run-checker job.

@DDvO, thanks for the deeper analysis.  I had a first look at #13552 yesterday or so, and am very pleased with the solution...  I was afraid we'd had to sabotage the test to get it running in short enough time...

@levitte, pleased to hear.
Will you take care of moving the no-asm sanitizer builds to run-checker?

Will you take care of moving the no-asm sanitizer builds to run-checker?

https://github.com/openssl/tools/pull/77

Closing again since meanwhile also the remaining issue has been solved by openssl/tools#77.


OPCT-32 - Dev env: enable dev-count flag to limit e2e list in runtime

Intro to dev flag to allow developers fastly use the "e2e limit", feature of Plugins, when running a development environment.
To use the DEV_MODE env var on plugins, we need to change the plugins manifests and rebuild the CLI. It is very useful when I am trying other features on CLI or plugins, to make sure the complete flow is running, but with a small set of e2e (sometimes we don't need to check the e2e results, we want to know the flow will work).
But it's kinda boring to change the manifests every time and rebuild the CLI, it could be more useful when setting a CLI flag to run in "DEV MODE".
The quick implementation was done when running the upgrade feature, but a final change needs a more understanding of the impact of allowing this by default.
https://issues.redhat.com/browse/OPCT-32

/assign @rvanderp3

/lgtm
/approve


Provided Example GraphqlJavaToolsExampleApplication not run

Ive cloned this project and have built locally (mvn clean install completes with no issue). I'm trying to run GraphqlJavaToolsExampleApplication and see the app runs and shuts down immediately. DO I need to set something else to use the example
`
:: Spring Boot ::       (v1.5.10.RELEASE)
[2018-05-28 13:29:53.371] - 7252 INFO [main] --- com.coxautodev.graphql.tools.example.GraphqlJavaToolsExampleApplication: Starting GraphqlJavaToolsExampleApplication on AA184450 with PID 7252 (C:\Users\fvolz\Downloads\graphql-java-tools-master\graphql-java-tools-master\target\classes started by fvolz in C:\Users\fvolz\Downloads\graphql-java-tools-master\graphql-java-tools-master)
[2018-05-28 13:29:53.407] - 7252 INFO [main] --- com.coxautodev.graphql.tools.example.GraphqlJavaToolsExampleApplication: No active profile set, falling back to default profiles: default
[2018-05-28 13:29:53.499] - 7252 INFO [main] --- org.springframework.context.annotation.AnnotationConfigApplicationContext: Refreshing org.springframework.context.annotation.AnnotationConfigApplicationContext@5a8e6209: startup date [Mon May 28 13:29:53 AEST 2018]; root of context hierarchy
[2018-05-28 13:29:54.276] - 7252 INFO [main] --- org.springframework.jmx.export.annotation.AnnotationMBeanExporter: Registering beans for JMX exposure on startup
[2018-05-28 13:29:54.295] - 7252 INFO [main] --- com.coxautodev.graphql.tools.example.GraphqlJavaToolsExampleApplication: Started GraphqlJavaToolsExampleApplication in 1.514 seconds (JVM running for 2.407)
[2018-05-28 13:29:54.299] - 7252 INFO [Thread-2] --- org.springframework.context.annotation.AnnotationConfigApplicationContext: Closing org.springframework.context.annotation.AnnotationConfigApplicationContext@5a8e6209: startup date [Mon May 28 13:29:53 AEST 2018]; root of context hierarchy

I upgraded it to the latest versions, so when you pull the changes and try again it should work now.


Expose API endpoints for pin and unpin

For bytes, files and collections

Needs documentation. Perhaps we can expand our examples

Needs documentation. Perhaps we can expand our examples


APR sorting, TVL filter, APR response refactor (backwards compatibile)

closes #343
closes #338
closes #334

sounds good, I removed the APR response changes and added all reward tokens to the incentivised category.


Bug: Asset supply initial/circulation

Summary of Bug
Asset List and Asset single pages are not using the response.supply.initial value.
Asset List:
Currently using supply.circulation for the Circulation column, but the Supply column is empty. Should be using supply.initial. Also rename to Initial Supply.
holdingAccount: "tp1pr93cqdh4kfnmrknhwa87a5qrwxw9k3dhkszp0"
marker: "nhash"
status: "ACTIVE"
supply:
  circulation: "100000000000000000000"
  initial: "100000000000000000000"

Asset single:
For Supply field, currently showing supply.circulation / nothing. Should probably split them up for Circulation and Initial Supply with supply.circulation and supply.initial respectively.
attributes: []
holderCount: 221
holdingAccount: "tp1pr93cqdh4kfnmrknhwa87a5qrwxw9k3dhkszp0"
managingAccounts:
  allowGovControl: true
  managers: {tp1kmaut7y3psh46lw53hgm4967zfxpq5ls2m2w7v: ["WITHDRAW"]}
marker: "nhash"
markerStatus: "ACTIVE"
metadata: {}
mintable: false
supply:
  circulation: "100000000000000000000"
  initial: "100000000000000000000"
tokens:
  fungibleCount: 1
  nonFungibleCount: 0
txnCount: 920330

Also should be using SI abbreviations for super large numbers. Example: https://nyancat.iobscan.io/#/assets/ntvassets
Version
latest
Steps to Reproduce

For Admin Use

[ ] Not duplicate issue
[ ] Appropriate labels applied
[ ] Appropriate contributors tagged
[ ] Contributor assigned/self-assigned

Closing. Unnecessary due to changes coming from https://github.com/provenance-io/explorer-service/issues/78


[GHSA-4fq3-mr56-cg6r] Spring Data Commons remote code injection vulnerability

Updates

References

Comments
added fix commit ,jira reference

https://jira.spring.io/browse/DATACMNS-1282 is not redirecting properly for me so linked to the issue in GitHub.


Add Lua string and comment delimiter syntax groups

It's not currently possible to distinguish between comment and string delimiters and the respective content of these syntax groups.
While some users like to highlight these delimiters differently my current motivation for this change is to more accurately match these delimiters in the Lua ftplugin when defining match_words and ]/ comment mappings.
Any objections to this being included @marcuscf?

Any objections to this being included @marcuscf?

No objections as far as I can tell. I tested it too briefly to be of any real value, but it seems to work without any side effects.
While testing it I noticed that I had local changes related to strings too. If you intend to add more features to this syntax file you can ask me about them. For example, Lua >= 5.3 has has Unicode escapes in the form of syn match  luaSpecial contained #\\u{[[:xdigit:]]\+}#

@marcuscf, I'll send you a PR when this is merged here to sync you up. I'll also try and have a look at creating a PR from your repo as discussed in #10045 when I get some time in the next couple of weeks.

Thanks! If there are incompatible changes (e.g. the indent file) I can move them to another branch so that experimental changes don't cause trouble.

I'll include it, thanks.


FIPS Support

Community Note

Please vote on this issue by adding a 👍 reaction to the original issue to help the community and maintainers prioritize this request
Please do not leave "+1" or other comments that do not add relevant new information or questions, they generate extra noise for issue followers and do not help prioritize the request
If you are interested in working on this issue or have submitted a pull request, please leave a comment

What is the outcome that you are trying to reach?

Understand whether EKS Blueprints is already enabled for easy deployment of a FIPS compliant EKS cluster.
If not, understand if that use case seems worth of an example.

So far, even blogs shown through a google search for AWS EKS FIPS are all on 3rd party websites.
Describe the solution you would like
An example that:

Deploys an "as FIPS compliant as possible" cluster
Documents any additional steps to ensure the cluster stays FIPS compliant upon usage application deployment for common use cases.

Describe alternatives you have considered
Searching for blogs - but none seem to show up on AWS properties and the ones that can be found do not use EKS Blueprints.
Additional context

Understand whether EKS Blueprints is already enabled for easy deployment of a FIPS compliant EKS cluster.

We definitely haven't validated that clusters we deploy in our examples are FIPS compliant. But this seems like a good example to provide from our end. I will add it to our backlog. Thanks for the issue!

Thanks!
I am pretty sure you need to deploy FIPS compliant container hosts to be compliant, but not sure what else.
Also, I've heard rumor that the container images may not have to be FIPS compliant if the hosts are.

Here is some possibly relevant configuration information: https://aws.amazon.com/blogs/publicsector/enabling-fips-mode-amazon-linux-2


Not working in ios 10.2!!!

I can't reproduce. Working fine for me in iOS 10.2. Can you post what options you are setting for the image picker and what action you are performing (taking photo or choosing from library).

`chooseImageCard(id){
const options = {
quality: 1.0,
maxWidth: 400,
maxHeight: 200,
storageOptions: {
skipBackup: true
},
allowsEditing: true,
mediaType: 'photo'
};
ImagePicker.showImagePicker(options, (response) => {
  if (response.didCancel) {
    console.log('User cancelled photo picker');
  }
  else if (response.error) {
    console.log('ImagePicker Error: ', response.error);
  }
  else if (response.customButton) {
    ImagePicker.launchCamera(options, (response)  => {
      console.log(response);
    });
    console.log('User tapped custom button: ', response.customButton);
  }
  else {
    var source;

    //Or:
    if (Platform.OS === 'android') {
      source = {uri: response.uri, isStatic: true};
    } else {
      source = {uri: response.uri.replace('file://', ''), isStatic: true};
    }

    var _image = {
      image_type: 1,
      image_base_64: 'data:image/jpeg;base64,' + response.data,
      section_type: 'owner',
      filter: 1
    }
    var _arr = this.state.cards;
    var _this = this;
    this.props.insertGiftCardImage(_image, (data) => {
      _this.props.getListGifCardImage((data) => {});
    });
  }
});

}`
Hi you. Function worked in android but ios not work. When i touch taking photo or choosing from library then app have been crash ;(

I was just able to successfully choose a photo with your options, so I'm not sure what's going on here. Your crash stacktrace isn't particularly helpful, can you provide me any more info? Are you using the latest version on npm? Can you run the Example project?

yeah.
i'am using
react-native: 0.39
node v7.0.0
npm 3.10.8

Latest version of react-native-image-picker I meant:
npm install react-native-image-picker@latest --save

@tanmynguyen make sure you set NSPhotoLibraryUsageDescription. I got this error along with some console output:
connected handler
2016-12-24 17:06:16.348400 AnyoneWantTo[68689:6243634] [access] This app has crashed because it attempted to access privacy-sensitive data without a usage description.  The app's Info.plist must contain an NSPhotoLibraryUsageDescription key with a string value explaining to the user how the app uses this data.
(lldb)

Once I set that value everything worked swimmingly.