App fails with "Invalid Header provided"

Bug Description
I have a very minimal robyn server, and I am sending requests to it via node's fetch.
Locally everything is ok. But when deployed to AWS, sometimes the server would crash with the following logs:
Oct 28 16:58:34 ip-172-31-23-143.eu-north-1.compute.internal python[3595343]: ERROR:actix_http.h1.dispatcher:stream error: request parse error: invalid Header provided
Oct 28 19:23:56 ip-172-31-23-143.eu-north-1.compute.internal python[3595353]: ERROR:actix_http.h1.dispatcher:stream error: request parse error: invalid Header provided
Oct 29 00:54:35 ip-172-31-23-143.eu-north-1.compute.internal python[3595353]: ERROR:actix_http.h1.dispatcher:stream error: request parse error: invalid Header provided
Oct 29 03:59:47 ip-172-31-23-143.eu-north-1.compute.internal python[3595353]: ERROR:actix_http.h1.dispatcher:stream error: request parse error: invalid Header provided
Oct 29 05:02:56 ip-172-31-23-143.eu-north-1.compute.internal python[3595353]: ERROR:actix_http.h1.dispatcher:stream error: request parse error: invalid Header provided
Oct 29 05:04:18 ip-172-31-23-143.eu-north-1.compute.internal python[3595343]: ERROR:actix_http.h1.dispatcher:stream error: request parse error: invalid Header provided
Oct 29 05:15:22 ip-172-31-23-143.eu-north-1.compute.internal python[3595343]: ERROR:actix_http.h1.dispatcher:stream error: request parse error: invalid Header provided
Oct 29 05:23:39 ip-172-31-23-143.eu-north-1.compute.internal python[3595353]: ERROR:actix_http.h1.dispatcher:stream error: request parse error: invalid Header provided
Oct 29 05:32:04 ip-172-31-23-143.eu-north-1.compute.internal python[3595353]: ERROR:actix_http.h1.dispatcher:stream error: request parse error: invalid Header provided
Oct 29 05:41:15 ip-172-31-23-143.eu-north-1.compute.internal python[3595353]: ERROR:actix_http.h1.dispatcher:stream error: request parse error: invalid Header provided
Oct 29 05:49:47 ip-172-31-23-143.eu-north-1.compute.internal python[3595353]: ERROR:actix_http.h1.dispatcher:stream error: request parse error: invalid Header provided
Oct 29 06:06:52 ip-172-31-23-143.eu-north-1.compute.internal python[3595343]: ERROR:actix_http.h1.dispatcher:stream error: request parse error: invalid Header provided
Oct 29 06:14:32 ip-172-31-23-143.eu-north-1.compute.internal python[3595353]: ERROR:actix_http.h1.dispatcher:stream error: request parse error: invalid Header provided
Oct 29 06:21:47 ip-172-31-23-143.eu-north-1.compute.internal python[3595353]: ERROR:actix_http.h1.dispatcher:stream error: request parse error: invalid Header provided
Oct 29 08:59:04 ip-172-31-23-143.eu-north-1.compute.internal python[3595343]: ERROR:actix_http.h1.dispatcher:stream error: request parse error: invalid Header provided
Oct 29 09:04:41 ip-172-31-23-143.eu-north-1.compute.internal python[3595353]: thread 'actix-rt|system:0|arbiter:4' panicked at src/types/mod.rs:48:18:
Oct 29 09:04:41 ip-172-31-23-143.eu-north-1.compute.internal python[3595353]: Unsupported HTTP method
Oct 29 09:04:41 ip-172-31-23-143.eu-north-1.compute.internal python[3595353]: note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
Oct 29 11:20:43 ip-172-31-23-143.eu-north-1.compute.internal python[3595343]: thread 'actix-rt|system:0|arbiter:2' panicked at src/types/mod.rs:48:18:
Oct 29 11:20:43 ip-172-31-23-143.eu-north-1.compute.internal python[3595343]: Unsupported HTTP method
Oct 29 11:20:43 ip-172-31-23-143.eu-north-1.compute.internal python[3595343]: note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace

Seems to be related to https://github.com/actix/actix-web/issues/3102 and https://github.com/seanmonstar/httparse/issues/146
Steps to Reproduce
No response
Your operating system
None
Your Python version (python --version)
3.11
Your Robyn version
latest
Additional Info
No response

Hi @marchellodev, thanks for reaching out. It's disappointing to discover that you ran into problems. Can you share the code that you used for futher investigation?

I bumped node (alpine docker build) from 21 to 23, and now the issue seems to be resolved.
I think it would make sense to investigate this more deeply only if others face encounter this problem. So let's just use this issue for tracking that :)
Thanks for such a great library!

Closing this now. Will reopen if this is a recurring issue. 😄


Build pipeline

Completed setting up my Azure DevOps pipeline

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


Cypress/E2E: Fix message reply too long spec

Summary

Remove obsolete check

Ticket Link
NA

Looks like the fix here is included already at https://github.com/mattermost/mattermost-webapp/pull/7309/files#diff-7be1dbcf8e78c6c9d3de44533477ce093bb78d8ddbd480405028f91c9563fa09L50-R50

Looks like the fix here is included already at https://github.com/mattermost/mattermost-webapp/pull/7309/files#diff-7be1dbcf8e78c6c9d3de44533477ce093bb78d8ddbd480405028f91c9563fa09L50-R50

Closing PR as dupe

Closing PR as dupe


remove dead files

Codecov Report

Merging #208 (a96317d) into master (d71f66d) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master     #208   +/-   ##
=======================================
  Coverage   88.94%   88.94%
=======================================
  Files          74       74
  Lines       18237    18237
=======================================
  Hits        16220    16220
  Misses       2017     2017

Continue to review full report at Codecov.

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


Question on contributing

Hello @odsod! I see you are the owner of this repo. I was wondering if you are currently accepting PR for new features? I was looking at adding a new field here, https://pkg.go.dev/go.einride.tech/backstage/catalog#EntityRelation that would expose the target. I.E
        "type": "consumesApi",
        "targetRef": "component:default/artist-lookup",
        "target": {
          "kind": "component",
          "namespace": "default",
          "name": "artist-lookup"
        }
      }

@craigcooper11 Sounds good to me, please fire away a PR and let's have a look at it!

@craigcooper11 Just a quick question - the relation schema doesn't seem to have a target key - if what you're looking for is a parsed version of the entity ref, how about using a separate parser? As much as possible, let's try and stick to the schema!


Concurrent benchmarking

Add multi-threaded concurrent scenario benchmarking to address performance issue from #62

Benchmarking results from 935e324

threads count
with RwLock
with dashamp

16
1,100,155 ns/iter (+/- 213,668)
653,923 ns/iter (+/- 49,588)

50
1,542,176 ns/iter (+/- 354,667)
666,835 ns/iter (+/- 70,228)

the dashmap implementation introduced in #62 brought significant scalability on multi-thread scenarios. @SSebo


Fix #55

Thanks to @mbauman's troubleshooting it seems this was a quite easy fix; the following plots look reasonable for both linear and quadratic interpolation (only linear shown):
# using Gadfly, DataFrames
reload("Grid")

f(x) = sin(2pi * (x-1) / 10)
dfs = Array(DataFrame,0)

for (i,bc) in enumerate([
        Grid.BCnan,
        Grid.BCna,
        Grid.BCperiodic,
        Grid.BCreflect,
        Grid.BCnearest,
        Grid.BCfill])
    itp = bc != Grid.BCfill ? Grid.InterpGrid(f(1:11), bc, Grid.InterpLinear) :
        Grid.InterpGrid(f(1:11), 1, Grid.InterpLinear)
    push!(dfs, DataFrame(x=-9:.1:40,y=[itp[x]+(i-1)*3 for x in -9:.1:40],t="$bc"))
end

df = vcat(dfs)
plot(df,x=:x,y=:y,color=:t,Geom.path,Guide.colorkey("Boundary condition"))

I didn't test cubic interpolation yet simply because I know that it's not rock solid anyway, so I wanted to get this up for a Travis run first. (Did any tests break from this behavior before? If not, what's the best way to test that this actually works the way we want it?)

Coverage decreased (-20.61%) to 76.51% when pulling 73137f64b4588880c0f1ef01d435a1c4ee3dd03f on fix-extrap-issues into 2c7a96ce2563065748f2c5178cdb77e2182bf311 on master.

Failed on 0.4 because of Woodbury matrices - will merging #56 fix that?
I think a 20% coverage decrease because of these changes is very unlikely - could the difference be due to the "new" metric? (Has coverage results not been collected since it was introduced?)

YAY!  Nice work.  Is that one-sample hold in BCreflect and BCperiodic new?  Or is that an existing issue?  Or is it expected behavior?  (I've never really used boundary conditions)

@mbauman The one-cell shift is actually the desired behavior in some applications (notably for images, which happens to be the application Tim originally built the library for) - basically, it is to make sure that x[n+1:2n] == reverse(x). So it's not really a bug per se, although it's not the expected behavior in many other applications (for example when extrapolating sin(x), which happens to be the example I used...). Interpolations.jl has taken this into account by design, and so lets the user choose if they want this behavior or the one you were expecting.
tl;dr: it's neither new, unknown, optimal or unexpected :)

:+1:

I should have pushed that WIP a long time ago.  Thanks for finishing it up.

np. I had to change a total of one extra line :)

Thanks, folks. I am just swamped, and it's wonderful to have such awesome collaborators.

:cocktail: :tada: :beers:

Re the coverage stats: it's likely that the test failure caused the decrease. When it fails a tests, it doesn't run as much code, but it still submits the results to Coveralls.

Coverage decreased (-20.61%) to 76.51% when pulling 86baa24394d7241faec189ecc377589e64f3b59c on fix-extrap-issues into 2c7a96ce2563065748f2c5178cdb77e2182bf311 on master.

The build still fails on 0.4 with the message Woodbury is not defined; it turns out that it doesn't load the package, since the ppa for nightlies is still on an earlier build, but apparently it isn't available anyway. I'll drill down and see if I can figure out why.

The "push" failed, but the "pr" (pull request) succeeded. I'm not certain of the difference between them, but if I had to guess I'd say the "push" adds on to the branch that you started with, whereas the "pr" is for what would happen should you merge this to master. Since your Woodbury fix occurred after you got this started, I think that explains the difference.
So I'd say, merge at will.

Yeah, that might explain it. Might as well rebase to test the theory :)

Coverage remained the same at 81.26% when pulling 9eb54a8a921b8ed5f5337c4d42b1aa32f03e8fb3 on fix-extrap-issues into e02d09ff1fa05b734a810f8c842c1e7fdb97e8f2 on master.


Organic Titanic races lacking 5x power generation

Machine ones work a bit Too well though, with 5x to unity and science.

Intentional. Energy has changed meaning as mentioned earlier. Higher building upkeep was removed as well, so that shouldn't be a problem. Ship upkeep is still X5 or 4 or something, because I can't split upkeep into minerals and energy, but reducing it to <4 would be nonsensical anyway because their ships are 5 times as large and should require 5 times the energy.
Machines being extremely easy to exploit into mad high production numbers was foreseen, but I'm still undecided on what to actually do about it without making robo-traits a watered down boring version of Organic traits.

I asked because building prices indicate massive structures, which would imply larger generators to satisfy greater need. It simply made sense, bigger and more expensive power plants = more power.

That does make sense yes, but my rationale is that Titanic species also need all of that extra "power" (or organization) to run those buildings, and organize all of their other massive things.
Or approaching it from the other side: I did a quick Titanic testplay back when they still had their energy bonuses and it completely destroyed the balance, because all the other traits had had their energy bonuses nerfed. They could spam leaders and armies like nothing and it made me decide to bring them in line with the recent change in design.

This actually brings up a different point, Tiny races, they are strong, really strong, give them genius from the negative points Tiny costs and they can out-science literally any space faring empire by mass science planets and AI doesn't dare invade because fleet capacity regardless of how tiny their fleet actually is.

Yea I gave them the negative cost a while back, but I didn't know the AI views them as such a threat. I'll revert the cost to zero. I still need to remove their energy penalties anyway, so I'll improve the entire package where necessary.
Taking a +genius is always an option though, and I've taken a very straight-forward "not-my-problem" approach to people min-maxing this mod. Similarly, having no actual fleet and intimidating the AI into protectorates is really a cheesy tactic.


[SPARK-20534][SQL] Make outer generate exec return empty rows

What changes were proposed in this pull request?
Generate exec does not produce null values if the generator for the input row is empty and the generate operates in outer mode without join. This is caused by the fact that the join=false code path is different from the join=true code path, and that the join=false code path did deal with outer properly. This PR addresses this issue.
How was this patch tested?
Updated outer* tests in GeneratorFunctionSuite.

Test build #76309 has started for PR 17810 at commit e1dfe8d.

Test build #76310 has started for PR 17810 at commit 1722b9a.

Test build #76311 has started for PR 17810 at commit a24ba6c.

Test build #76309 has finished for PR 17810 at commit e1dfe8d.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

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

Merged build finished. Test PASSed.

Test build #76310 has finished for PR 17810 at commit 1722b9a.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

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

Test build #76311 has finished for PR 17810 at commit a24ba6c.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

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

Test build #76325 has started for PR 17810 at commit 0eca481.

LGTM

Test build #76325 has finished for PR 17810 at commit 0eca481.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

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

Merged build finished. Test PASSed.

Thanks! Merging to master/2.2
Since https://issues.apache.org/jira/browse/SPARK-13721 is only merged to 2.2 branch. Thus, I did not back port it to the earlier versions.


[Firestore] Does this library work with workload identity in GKE (Cloud Firestore in Native mode)?

Environment details

OS: Google Kubernetes Engine - fpm container
PHP version: 8.0.20
Package name and version: google/cloud-firestore / v1.24.0

Steps to reproduce

Follow this doc to create activate workload identity (https://cloud.google.com/kubernetes-engine/docs/how-to/workload-identity)
Bind the KSA to GSA
Add Firebase Admin and Firestore Service Agent rights to the GSA (even try owner's right to check if it was missing rights)

Code example
<?php

declare(strict_types=1);
namespace Document;
use Google\Cloud\Firestore\FirestoreClient;

final class FirestoreContextFetcher implements DocumentFetcherInterface
{
    /**
     * @throws \Google\Cloud\Core\Exception\GoogleException
     * @throws \JsonException
     */
    public function getTenantContext(string $documentId): array
    {
        $db = new FirestoreClient(
            [
                'projectId' => $this->googleProjectId,
            ]
        );
        $docRef = $db->collection($this->collection)->document($documentId);
        $snapshot = $docRef->snapshot();
        if (!$snapshot->exists()) {
            throw new \RuntimeException(sprintf('Unable to fetch the "%s" document ID', $documentId));
        }
        $values = $snapshot->data()['values'] ?? null;
        if (!\is_string($values)) {
            throw new \RuntimeException(sprintf('Unable to fetch the "%s" document ID', $documentId));
        }
        return \json_decode(json: $values, associative: true, flags: \JSON_THROW_ON_ERROR);
    }
}

Problem
We have an authentication error
NOTICE: PHP message: PHP Fatal error:  Uncaught GuzzleHttp\Exception\ClientException: Client error: `GET http://<IP_ADDRESS>/computeMetadata/v1/instance/service-accounts/default/token?scopes=https://www.googleapis.com/auth/cloud-platform` resulted in a `403 Forbidden` response:
Unable to generate access token; IAM returned 403 Forbidden: The caller does not have permission

The workload identity should be correctly setup, as we are have to use it for bucket cloud storage.
And when we check the SA authenticate:
gcloud auth list
                             Credentialed Accounts
ACTIVE  ACCOUNT
*<EMAIL_ADDRESS>
When we are using credentials using GOOGLE_APPLICATION_CREDENTIALS env variable, it works with the same account's rights

A missing permission was missing roles/iam.serviceAccountTokenCreator
Adding it resolves the issue


Add issue and pull request templates for GitHub

Addresses #573
These templates are a ripoff of those written by [@ErisDS] for [Ghost].
TryGhost/Ghost@e5afddf
@ErisDS
Ghost

I did the link formatting wrong… need to fix that


Fix to patched Popen regarding iterable arguments

Wrapped patched Popen retrieval of original arguments in itertools.tee, to preserve original iterators. Closes #436

itertools.tee documentation warns about the considerable amount of space it can use. Not sure if this is to be worried about, as the thing we're iterating is the arguments to Popen, which is "empirically" known to be limited to a reasonable amount of data.

The other solution would be to convert args to a list, and then reinsert the list into a/kw in a process similar to what _init_argument does, but opposite.

Thanks for your PR! Unfortunately this introduces another bug, because tee returns two iterables and destroys the input. I hope this example illustrates what is happening:
from itertools import tee

old_iter = iter((1, 2, 3))
new_iter = tee(old_iter)

# should: 1 2 3
# is: <itertools.tee object at 0x10b99b830> <itertools.tee object at 0x10b99b8c0>
print(" ".join(map(str, new_iter)))

Hmm, it worked on my end, but I might have not tested it thoroughly in all possible scenarios. Apologies, I'll leave the issue up to you, then. Thanks for your feedback :)

@untitaker If you can decide what's the best way to fix this, I could try doing it myself and submitting a new PR. I am not very fond of converting args to a list and reinserting it into the a/kw, but if that's the best approach, please let me know.

I really apprechiate this! I can't think of any other way than to insert
args back into the a/kw. Just not the tee approach.
On Fri, Jul 19, 2019 at 3:02 AM Lorenzo Peña<EMAIL_ADDRESS>wrote:

@untitaker https://github.com/untitaker If you can decide what's the
best way to fix this, I could try doing it myself and submitting a new PR.
I am not very fond of converting args to a list and reinserting it into
the a/kw, but if that's the best approach, please let me know.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/getsentry/sentry-python/pull/437?email_source=notifications&email_token=AAGMPRI2L47TMYZASM4QSGTQAEHBZA5CNFSM4IEQN7Q2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOD2KIEOQ#issuecomment-513049146,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAGMPRMG2UAVM4BWWXBOO43QAEHBZANCNFSM4IEQN7QQ
.

Okay thanks, will submit a new PR. And totally sorry about the dumb tee approach.


How to check if there is an error on the form?

How I check:
var isValid = true;
form.validator('validate');

      if(form.find('div.has-error').length > 0){
        isValid = false;
      }

Doesn't feel right

That's the best you can do. I don't want to add any methods like .validator('has-errors') because by convention plugin methods should be chainable.


perf: Cache OperationPlan Creation

Currently for each request we create an OperationPlan which affects performance. We wish to add some caching capabilities here to ensure that query plan is created only once per request upto a certain limit.
Technical Requirements

Don't add additional libraries to implementing caching.
Cache should evict automatically if its full.
Keep the cache size hard coded to 100 queries for now.
Cache key will the unparsed query string.
Test Coverage should not drop.

/bounty 200


fix send race [review]

this is #1786 but with WIP debug stuff dropped for ease of a preliminary review. description from #1786 as follows:
This solves a similar problem as #1758: in some cases, currently emitting a metric or yielding an output can result in an EAGAIN error, and we believe Done events are sometimes dropped. In async land, we shouldn't need a lock; multiple writers should be able to write to a StreamWriter safely. We also keep a sync Lock when the predictor is not async.
However, I'm still not sure if StreamWriter is thread-safe.
After some research, StreamWriter.write calls self._transport.write and when StreamWriter is wrapping a unix socket and using the default selector, the _transport is a _SelectorSocketTransport, which calls [self._buffer.extend](https://github.com/python/cpython/blob/3.11/Lib/asyncio/selector_events.py#L1077), and self._buffer is a [bytearray](https://github.com/python/cpython/blob/3.11/Lib/asyncio/selector_events.py#L761). However, on 3.12, [append is called](https://github.com/python/cpython/blob/3.12/Lib/asyncio/selector_events.py#L1091) instead of extend.
After more soul-searching, I think write should be basically thread-safe: the two critical calls, socket.send() and bytearray.append/extend should be represented as a single bytecode instruction and some native code which works on python objects and does not release the GIL. As far as I understand, python threads are switched "between bytecodes". Even though the individual calls are thread-safe, the overall write method is not quite thread safe: a relevant thread switch could occur between the if not self._buffer, _sock.send, and _buffer.extend lines. However, in that case the race condition would result data could being sent out of order or incorrectly delayed/sent early, but it I think it shouldn't be corrupted, and we don't really care about the ordering of log lines vs outputs.

I can see two solutions:

Ideally, we would probably add an alternate implementation of StreamWriter that uses the main event loop and wraps stderr/stdout in StreamReaders, start a separate task for each stream, and use await wrapped_stream.read() so that threads are not necessary. there's a tricky moment where we need to use the threaded StreamRedirector to capture logs while the predictor is being imported, since we don't know if we're going to be async or not.
Alternatively, we could try to use a queue or deque to communicate between threads, so instead of calling stream_write_hook StreamRedirector would do queue.put, the main event loop would do queue.get and not worry about thread safety for the pipe. The problem with this is that asyncio.Queue is not thread-safe and queue.Queue could block the event loop. You could use a busy wait or similar and get_nowait, but that has other downsides.

Without a failing test to demonstrate the problem you're trying to solve, I really don't know how to evaluate this. Based on my limited understanding, this could fix the problem, but it could also not. It could also introduce new bugs that are even worse than the one we're trying to fix. I just don't have any framework to evaluate the change.
If we can't reproduce the bug in a test, I do wonder whether we really understand what the bug we're chasing even is.

thanks, that's very reasonable, I'll get on a test


add rake task to create sample admin account

This introduces a rake task that creates a sample admin account for use in testing and development.

Thanks!  Looks like it works.


Issues with setting Event Buffer to Maximum Value for an Outstation

I have 1000 outstations, each with 16 analogs. The simulator aborts when setting either of the following:
config.outstation.buffer.maxAnalogEvents = uint.MaxValue;
OR
config.outstation.buffer = new EventBufferConfig(uint.MaxValue);
It seems Automatak.DNP3.Interface.EventBufferConfig uses uint, however the underlying code in opendnp3/outstation/EventBufferConfig.cpp uses uint16_t, so one fix is to change EventBufferConfig to use ushort.
It will work when using byte.MaxValue. Maybe there is an overflow issue here?

Thanks Darren, will have a look before next release. It's probably an exception being thrown in a Convert.ToUInt16 method. Best solution is probably to change the .NET type to match the C++ type so that an exception is impossible.

I tested this with the debugger and the C# outstation example. UInt32.MaxValue was truncated without an exception to 65535... odd that compiler gives no warnings... I will look into the settings to see if this can be explicitly tweaked.
Any idea how/why the simulator aborts?
I've committed a fix to make the C# config type be UInt16.

Hi Adam,
To reproduce this issue, I am doing the following:
IDNP3Manager mgr = DNP3ManagerFactory.CreateManager(new PrintingLogAdapter());
for (ushort i = 20000; i < 21000; i++)
{
    var channel = mgr.AddTCPServer("server" + i,
        LogLevels.NONE, ChannelRetry.Default, "<IP_ADDRESS>", i);
    var config = new OutstationStackConfig();
    config.link.isMaster = false;
    config.link.localAddr = 2;
    config.link.remoteAddr = 1;
    config.outstation.buffer = new EventBufferConfig(ushort.MaxValue);
    var outstation = channel.AddOutstation("outstation" + i,
        RejectingCommandHandler.Instance, DefaultOutstationApplication.Instance, config);
    outstation.Enable();
}

No master is running. On reaching port 20066 it aborts.

This happens when using uint.MaxValue and ushort.MaxValue. It works fine when using byte.Maxvalue.
I haven't been able to find the cause as of yet.

I enabled native debugging:
"First-chance exception at 0x76a8dae8 (KernelBase.dll) in DNP3CLROutstationDemo.exe: Microsoft C++ exception: std::bad_alloc at memory location 0x06bff538."
native C++ exception b/c the operating system failed to give the program memory.
This is not really unexpected if you're allocating 65535 event buffer slots for every type.
sizeof(openpal::ListNodeopendnp3::SOERecord) == 56 bytes.
65535568 data types = 29359680 == ~30MB
So, just the event buffers alone, ignoring all other dynamic memory allocated for other buffers, are 30MB per instance.
30MB*66 = 1980 = ~2GB.
-Adam

Makes perfect sense, especially when we were trying to allocate uint.MaxValue per buffer :-S
The detail we were missing was buffers are pre-allocated rather than dynamically growing up to the set maximum.
Go ahead and close this.

I'm actually going to reopen this as there is room for improvement in the documentation here. We should document that buffers are preallocated in the EventBufferConfig class.


Please rewrite to use the Office 365 Cloud app instead

[Enter feedback here]
Please modify, so that the "preferred" Office 365 Cloud app is targeted instead of SharePoint Online
https://learn.microsoft.com/en-us/azure/active-directory/conditional-access/concept-conditional-access-cloud-apps#office-365
The Office 365 suite makes it possible to target these services all at once. We recommend using the new Office 365 suite, instead of targeting individual cloud apps to avoid issues with [service dependencies.
/Kenneth

Document Details
⚠ Do not edit this section. It is required for learn.microsoft.com ➟ GitHub issue linking.

ID: 2308e7ef-1a9a-0fd1-53c4-7b6e5387978a
Version Independent ID: 9d9a661f-841c-6b3b-b579-f4e507bcbddd
Content: Block access to SharePoint for specific users - Microsoft Teams
Content Source: Teams/block-access-sharepoint.md
Service: msteams
GitHub Login: @MikePlumleyMSFT
Microsoft Alias: mikeplum

Hi @kennethvs, thank you for your feedback.
Could you provide more detail? My apologies but I don't understand your feedback.
This article is intended to block access to SharePoint files yet allow their employees to use Teams desktop, mobile, and web clients on unmanaged devices.

Hi @dariomws,
So in the CA policy you currently target Office 365 SharePoint Online, while MS best practise is to target the "Office 365" cloud application which contains Office 365 SharePoint Online.
Also another point of feedback, having 2 CA policies automatically created, targeting all users and being on by default is not a really good idea. If you want to create them while modifying the Unmanaged devices settings, please ask the users and give them options. (but this feedback is not related to the documentation, but more for the product team.. i know)

But following the steps in this article, if you block Office 365, the user will lose access to the entire service. The purpose here is to block access to SharePoint files while the user still has access to Teams.

@dariomws. Owh.. then I misinterpreted the scenario. Why in that case not just block access to SharePoint from unmanaged devices in the CA policy, instead of using App Enforced Restrictions with a block on unmanaged as defined globally in the SharePoint Admin Center?

@kennethvs, sorry but I don´t have the answer for the last question. Reading the article, I understand that App Enforced Restrictions automatically create the CA policy. Then you modify it to apply only for a subset of users.

Hi @kennethvs does this answer your question? Thanks.

Hi @scanum ,
So to explain, in the scenario described here, you create a CA policy which uses the "global block" setting of SharePoint Admin Center to block this scenario. Using this setting though, doesn't leave room for using other CA policies also leveraging app enforced restrictions.
If you want to block access to SPO in certain scenario, just build a block CA policy and don't use App Enforced Restrictions, App Enforced Restrictions could leverage the Global SharePoint settings, but also respect manual settings set on a per-SharePoint Site level or leverage Sensitivity Labels for Containers as well.
By using this proposed CA policy, you pay the penalty of losing any flexibility in your CA setup.
/Kenneth


Updated documentation as per query conditions and spelling fixes

Checklist

[ ] Issue(s) linked

@akumar-99 Appreciate your feedback and the PR 👍
Some of the content is from CIS doc directly as we don't change them, or we might have missed appropriate updates. We will carefully review it and bring it on. Again thanks for using Steampipe.

Thanks @akumar-99 for catching and fixing these typos!


WIP - Implement anonymous oauth token

Uses a hack device-id, but hopefully soon we can drop that requirement.

@schwers feel free to re-open if you want to take this over


Update Blog “cat”

Automatically generated by Netlify CMS

👷 Deploy Preview for meuble-salon-canape-moderne-tunisie processing.
🔨 Explore the source changes: 9859fb26a951fc62717fb08980be42318952a581
🔍 Inspect the deploy log: https://app.netlify.com/sites/meuble-salon-canape-moderne-tunisie/deploys/61ddd38bb7a03d000766799e


Windows support

Is it possible to provide a download for Windows? I can't run Docker on my environment, but we use Windows.
(Migrated from https://github.com/opendistro/for-elasticsearch/issues/45)

@eluchsinger we're working on providing a Windows image. Stay tuned.
Please share more details about your Windows setup for us to factor the configuration in our tests.

Sorry, I meant we can use docker, but we only have Windows containers. I'll probably build my own Docker image with your Windows build so I can run it inside Windows containers.

Windows support for Open Distro was added in 1.3 - see https://opendistro.github.io/for-elasticsearch-docs/docs/install/windows/
Closing issue.


 It is faster than the heap because less comparisons are needed. Should be a nice improvement given that the merging is used in a lot of hot paths.
Since Prometheus also uses this library, it's tricky to import the "any" version. I tried doing https://github.com/bboreham/go-loser/pull/3 but it's still impossible to do that. Let's just copy/paste the code, it's not a lot.
Bench:
goos: linux
goarch: amd64
pkg: github.com/thanos-io/thanos/pkg/store
cpu: Intel(R) Core(TM) i9-10885H CPU @ 2.40GHz
             │   oldkway   │               newkway               │
             │   sec/op    │    sec/op     vs base               │
KWayMerge-16   2.292m ± 3%   2.075m ± 15%  -9.47% (p=0.023 n=10)

             │   oldkway    │               newkway               │
             │     B/op     │     B/op      vs base               │
KWayMerge-16   1.553Mi ± 0%   1.585Mi ± 0%  +2.04% (p=0.000 n=10)

             │   oldkway   │              newkway               │
             │  allocs/op  │  allocs/op   vs base               │
KWayMerge-16   27.26k ± 0%   26.27k ± 0%  -3.66% (p=0.000 n=10)

I know it is a dumb question. May I know why we have to use the any version, not the main one?

Because the main version works on:
type Value constraints.Ordered

In other words, any type that supports < and so on (https://pkg.go.dev/golang.org/x/exp/constraints#Ordered). It's not possible to do that with custom types like storepb.SeriesResponse.


[Identity] Simple OnBehalfOfCredential

This PR comes as a simplification of https://github.com/Azure/azure-sdk-for-js/pull/16995
This happens because of recent developments. The fully fledged OBO credential has more ramifications than originally thought.
This approach requires customers to make new client instances each time they want to switch the user assertion. Before taking this PR out of draft, I’ll wait until we confirm with our customers that this approach is good enough.
Fixes #15804

I’m adding a test soon.

These recent credential changes have made me curious of how to further reformat the Identity source 🤔 I’d like to take some days in the MQ milestone to keep thinking about this.


[NL Interface] Big update to the Titles (override) and Index update

Index update is only limited to removing the "Gaussian" SVs for temp (they aren't actually used) and replacing all of them with the Histogram ones (which was already the case with the titles). Also added three new SVs (which were part of the topics-additions earlier today) to the index (so that those SVs can be found for India and Brazil on their own too).

Titles updates are coming from https://docs.google.com/spreadsheets/d/1yRbtxrfUals1Nu1vFaH_VPkCnCAPEJ8hXmff7O_06mw/edit#gid=1060967321 and were ported over to https://docs.google.com/spreadsheets/d/1lmNAnqECpcvkuOlIkdo50Ve1KAalOoyP_lUlOuLmIAU/edit#gid=599439456 including several hundred more from this bullet point here: https://screenshot.googleplex.com/6HdzW6wZBCnPqy5

Sorry if the comments in my screenshot were unclear. We should standardize these (and their constrained SV's). If not too late, could we update these?
Current:
"Count_Person_Female_BelowPovertyLevelInThePast12Months": "Women below Poverty Line",
"Count_Person_Male_BelowPovertyLevelInThePast12Months": "Males in Poverty (in last year)",
New (smallest change given the many variants of these):
" Below Poverty Level in the Past Year"

Updated a whole lot of "poverty level" to "poverty line" and removed "in the past twelve months".


Tamr Export fails.

export fails with requests.exceptions.HTTPError: 404 Client Error: Not Found for url: {tamr_base_url}/api/urlExport/jdbc
apipath in tamr_toolbox.data_io.df_connect.client.export_dataset is hardcoded to /api/urlExport/jdbc. it should be /api/connect/urlExport/jdbc ?

It sounds like you are trying to use a core-connect endpoint. The function was developed for df-connect which was a precursor to core-connect. Compatibility with core-connect endpoints has not yet been enabled. But you are correct that you can use the client directly to call the core-connect endpoint using that apipath.


No order in template

kyaml/order/syncorder.go
// SyncOrder recursively sorts the map node keys in 'to' node to match the order of
// map node keys in 'from' node at same tree depth, additional keys are moved to the end
// Field order might be altered due to round-tripping in arbitrary functions.
// This functionality helps to retain the original order of fields to avoid unnecessary diffs.
func SyncOrder(from, to *yaml.RNode) error {


Add three hour timeout to test pipelines

If a pipeline runs for three hours, stop the pipeline. This can happen
if a network connection breaks down or if jenkins loses control of one
of its agents due to infrastructure issues.
Signed-off-by: Major Hayden<EMAIL_ADDRESS>

F32's weldr test timeout showed up again (unrelated).


Copying data out of Cord - CopyToArray/pread/memcpy like interface?

Cord has CopyCordToString(). Could there be a helper function to copy to a char* buffer? For example,
// Copies the data in the cord from |offset| up to buffer |size|. Returns the actual number of bytes copied.
// Returns 0 if offset is out of bound.
size_t CopyToArray(char* buffer, size_t size, size_t offset = 0);

Alternatives considered: use cord.Subcord(offset, size) and iterate chunks, but Subcord() seems to have the overhead of creating new cord reps.

Can you tell us more about your use case?

I'm using grpc to fetch some data. Since open source protobuf copies data, I didn't parse the response into protobuf. I convert grpc response data slices into a cord and plan to operate on the cord.

To be honest this sounds like premature optimization. Are you sure the overhead of Subcord matters for this use case?
However, I'd bet protobuf and/or grpc are currently working on getting a better zero-copy implementation in place now that Cord has been open source for some time. You might consider asking them for what you need.


DOP-4225: flag images for lazy loading depending on

Goal: Flag image directives for lazy loading, depending on their occurrence on the RST.
We can tweak the values for min_section_depth or min_img_index, but these were inspired from this article for when to use lazy loading.
The front end portion is ready here. This will use Gatsby Image to lazy load components once they are in viewport

If this is the heuristic we want, this looks good!

<3 open to tweaking values if we need to non-lazy load images earlier!


remove a lot of expirements comments.

remove a lot of expirement comments, deprecate some options, rename some options (old name was deprecated).
Doesn't remove anything now.
I hereby agree to the terms of the CLA available at: https://yandex.ru/legal/cla/?lang=en

Pull request type

Please check the type of change your PR introduces:

[x] Bugfix
[ ] Feature
[ ] Code style update (formatting, renaming)
[x] Refactoring (no functional changes, no api changes)
[ ] Build related changes
[ ] Documentation content changes
[ ] Other (please describe):

Codecov Report
Patch coverage has no change and project coverage change: -26.98% :warning:

Comparison is base (90a231a) 66.60% compared to head (13435ba) 39.63%.

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.
Additional details and impacted files
@@             Coverage Diff             @@
##           master     #836       +/-   ##
===========================================
- Coverage   66.60%   39.63%   -26.98%
===========================================
  Files         238      180       -58
  Lines       23342    19858     -3484
===========================================
- Hits        15548     7871     -7677
- Misses       6986    11646     +4660
+ Partials      808      341      -467

Flag
Coverage Δ

?

go-1.17.x
39.63% <0.00%> (-26.65%)
:arrow_down:

go-1.20.x
?

go-1.21.x
?

integration
?

macOS
39.63% <0.00%> (-0.28%)
:arrow_down:

ubuntu
?

unit
39.63% <0.00%> (-0.35%)
:arrow_down:

windows
?

ydb-22.5
?

ydb-23.1
?

ydb-23.2
?

ydb-23.3
?

Flags with carried forward coverage won't be shown. Click here to find out more.

Files Changed
Coverage Δ

internal/topic/topicreaderinternal/message.go
11.76% <ø> (-9.42%)
:arrow_down:

...rnal/topic/topicreaderinternal/public_callbacks.go
0.00% <ø> (ø)

topic/topicoptions/topicoptions_alter.go
25.42% <ø> (-3.39%)
:arrow_down:

topic/topicoptions/topicoptions_create.go
23.07% <ø> (-61.54%)
:arrow_down:

topic/topicoptions/topicoptions_reader.go
0.00% <0.00%> (-29.04%)
:arrow_down:

topic/topicoptions/topicoptions_writer.go
0.00% <0.00%> (-15.00%)
:arrow_down:

topic/topicreader/batch_options.go
0.00% <ø> (ø)

topic/topicreader/reader.go
0.00% <0.00%> (-61.23%)
:arrow_down:

topic/topictypes/topictypes.go
71.62% <ø> (-21.63%)
:arrow_down:

topic/topicwriter/topicwriter.go
0.00% <ø> (-38.10%)
:arrow_down:

... and 173 files with indirect coverage changes

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


Move fugue_sql into fugue

Codecov Report
Base: 100.00% // Head: 99.96% // Decreases project coverage by -0.03% :warning:

Coverage data is based on head (81f5612) compared to base (d55f736).
Patch coverage: 89.65% of modified lines in pull request are covered.

:exclamation: Current head 81f5612 differs from pull request most recent head 0613f8e. Consider uploading reports for the commit 0613f8e to get more accurate results

Additional details and impacted files
@@             Coverage Diff             @@
##            master     #390      +/-   ##
===========================================
- Coverage   100.00%   99.96%   -0.04%
===========================================
  Files          116      115       -1
  Lines        10588    10594       +6
===========================================
+ Hits         10588    10590       +2
- Misses           0        4       +4

Impacted Files
Coverage Δ

fugue/execution/factory.py
100.00% <ø> (ø)

fugue_sql/__init__.py
0.00% <0.00%> (-100.00%)
:arrow_down:

fugue/__init__.py
100.00% <100.00%> (ø)

fugue/exceptions.py
100.00% <100.00%> (ø)

fugue/sql/_utils.py
100.00% <100.00%> (ø)

fugue/sql/_visitors.py
100.00% <100.00%> (ø)

fugue/sql/workflow.py
100.00% <100.00%> (ø)

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

:umbrella: View full report at Codecov.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.


Undetermined behavior of SCRIPT_OUTPUT

The following Python3 UDF script looks for the shortest string in a given input set.
CREATE OR REPLACE PYTHON3 SET SCRIPT shortest_string(input_string VARCHAR(2000000)) RETURNS VARCHAR(2000000) AS
def run(ctx):
 short = ""
 l = 2e6

 print('outer')
 while True:
  _l = len(ctx.input_string)
  print('inner')
  if _l < l:
        l = _l
        short = ctx.input_string
        print('if_inner')

  if not ctx.next(): break
 return short
/

When pyexasols script_output is listening it prints:
1 * 'outer'
x * 'inner'
y < x * 'if_inner'

Where x depends on the number of rows in the set as it should be.
However if "print('inner')" is commented out nothing is printed at all to the listener. Neither 'outer' nor 'if_inner'. I can't explain this behaviour.

I just found out, that print('outer', flush=True) solves the issue.
Flushing should be handled by pyexasol. Or this behaviour should be documented if intended.

I guess, buffered output for STDOUT / STDERR is a general Python thing. Data does not leave the Python process, so nothing is being sent to script output server.
Please note that debug request handler currently flushes after every single line: https://github.com/badoo/pyexasol/blob/d111f951974c8d6f4d8594db1b423336da459295/pyexasol/script_output.py#L153

In theory, you should be getting the output as soon as SQL statement execution is finished and Python VM's are terminated. And this problem should affect long running queries only.
Is that correct?

Actually I encountered the problem on 40row table. My guess is that the buffer never got full and so was never pushed out. Flushing in the run() method solves the issue. So its pushed out for every input set.

It might be worth checking how Python 3 VM's are currently handled by Exasol UDF client. Maybe it's worth adding explicit .flush() for STDOUT / STDERR after every call of run() function.
Also, I think Python may not have a chance to terminate properly and do all the "finishing actions" due to SWIG <-> Python interactions.

Could you also try to run the same 40 rows query with .execute_udf_output() instead of debug mode? https://github.com/badoo/pyexasol/blob/master/docs/REFERENCE.md#execute_udf_output
It uses slightly different method of reading data and it should save all the output into files. Let's see if it's going to miss those lines or not.
Please set udf_output_dir connection option to make those files permanent, not the tmp-files.
Thank you.

@LennartAtExasol
I did some tests. Yes, it is purely the "output buffering" problem. All other parts, including PyEXASOL script output server, are working as intended. Output is simply not sent from VM's.
I've added an extra line to documentation mentioning the necessity of flushing while working with debug mode. .execute_udf_output() (normal mode) function is not affected since it returns only when SQL query is finished and all VM's outputs are flushed.
Please let me know if you think this logic can be improved even further. And thank you for raising this issue.

@wildraid
thanks for taking care!
I think it's important to document this behaviour so people don't have to explore the behaviour like I did. Apart from documenting the behaviour I do not think that there is more to do for now.  For now this issue is resolved. Thanks!


Linting does not work if project is setup within a subfolder

Describe the bug
Setting up projects with create-react-app within subfolders do not lint. However, when opening the project subfolder as root in VSCode (pictured below) or setting up a new create-react-app project as root, linting will work as expected.
Did you try recovering your dependencies?
Yes
Environment
I'm using create-react-app v3.1.1 and VSCode August 2019.
  System:
    OS: Windows 10
    CPU: (4) x64 Intel(R) Core(TM) i5-2500K CPU @ 3.30GHz
  Binaries:
    Node: 10.4.0 - C:\Program Files\nodejs\node.EXE
    Yarn: Not Found
    npm: 6.4.0 - C:\Program Files\nodejs\npm.CMD
  Browsers:
    Edge: 42.17134.1.0
    Internet Explorer: 11.0.17134.1
  npmPackages:
    react: ^16.9.0 => 16.9.0
    react-dom: ^16.9.0 => 16.9.0
    react-scripts: 3.1.1 => 3.1.1
  npmGlobalPackages:
    create-react-app: Not Found

Steps to reproduce

An application may have a folder structure where separate /node_modules and package.json files exist, such as the following :

my-app
│
├── client ( create-react-app sets up here )
│
├── server
│   ├── node_modules
│   └── package.json
│
└── package.json

cd into ~/my-app and setup a create-react-app project called client.

Introduce some lint errors in the main App component:

const App = () => {
    if (Math.random() > 0.5) {
        useEffect(() => console.warn("linting error"), []);
    }

    return (

    );
};

Observe that the linting rules included with create-react-app do not work in the /client subfolder where the project was created.  However, linting does work if the project was created as root, or if the project's subfolder is opened as root in VSCode.

Probably just how vscode-eslint works? I doubt there's much we can do on our end to fix this.

Thanks for pointing me in the right direction @heyimalex
The VSCode ESLint Extension includes settings for specifying working directories:

an array for working directories to be used. ESLint resolves
configuration files (e.g. eslintrc) relative to a working directory.
This new settings allows users to control which working directory is
used for which files.

Therefore, in this case, adding the following to my Workspace settings.json file solves the issue:
{
    "eslint.workingDirectories": [
        "./client",
        "./server"
    ]
}


Add deprecation warning to meltano ui command

Meltano UI is deprecated, and is scheduled for removal in Meltano v3. We should make that known to all who currently use the UI by printing a clear warning message when they run meltano ui that states that:

it is currently deprecated
it will be removed in Meltano v3

Relates to https://github.com/meltano/internal-general/discussions/460
Migration strategies likely fall outside the scope of this issue. From a chat with @aaronsteers on 2022-12-12 the priority will be providing feature-parity with equal-or-better UX via the CLI.
A UI as part of Meltano Cloud (possibly accessible after meltano login even if not running workloads on Meltano Cloud) may be available in the future for users who absolutely love UIs and have no interest in moving away from the Meltano UI to the CLI, but that's more or less entirely unplanned, so no promises at this point.
Because we cannot make promises about what we'll be doing to replace the UI, at this point I recommend we keep the deprecation warning minimal and fact-based. Doing so may lead to users asking (many) questions about the impending removal on Slack. This will be a good opportunity for us to discuss with them to figure out what the best path forward will be, i.e. we can ask them why they like the UI, if they'd be happy with the CLI, etc.
Once we've got a more concrete idea for what comes next (and likely after it has been implemented and released), we can update the deprecation warning to advertise it.
@sbalnojan @afolson @tayloramurphy

Love this - thanks for opening and taking @WillDaSilva


CSS not full recompiled after JEKYLL theme update via bundle

Situation
After a version update of Jekyll-Theme via bundle update the new theme version is listed in Gemfile.lock.
But jekyll sor jekyll bdo not create a new css including the changes of the new theme css.
_assets/main.scss links to the theme SCSS and does compile the SCSS into css, but just the old version.
Workaround: only when _/assets/main.scss content has changed, Jekyll Assets fetches and recompiles the theme SCSS.
Jekyll: v3.3.1
Jekyll-Assets: v2.2.8
Expected
New css is created including the latest css/scss of the theme for every Jekyll build when Theme version in bundler has changed, better theme code has changed.

This should be fixed in 3.x, which will be released this upcomming week.


Enhance service edit to accept attribute references

closes #13664
Allows for all id and href references for all the same attributes that it does in create.
@miq-bot add_label enhancement, api
@miq-bot assign @abellotti

NICE!! 😍 Thanks @jntullo for the enhancement.


Crate Versioning

As avr-hal is made up of quite a few crates, decision needs to be made how versioning is handled.  The two extremes would be

All crates are versioned in lock-step and interdependencies are listed as =X.Y.Z to enforce the lock-step versioning.
Releases and versions are managed on a per-crate basis.

Option 1. has the obvious drawback that a breaking change in any crate would lead to a major version bump for all crates.  OTOH, Option 2. would mean a lot of effort to ensure no errors are made and any crate needing an update gets it.  Especially breaking changes in the generic part are difficult to manage here ...
At first glance, I'm not a fan of either of those.  Maybe there is some middle-ground that is acceptable?

First option will suffer from this drawback only when we will publish generic part to frequent. Like now with #77 we want to move to new hal. For users will be easier to use first one. I will vote for for first option too.

First option will suffer from this drawback only when we will publish generic part to frequent.

Actually, I think it is the other way around:  when updating avr-hal-generic, it makes sense to bump all the other crates as well.  But when e.g. doing a change in arduino-leonardo, lock-step versioning would mean all other crates will get a version bump, too, even though nothing changed.
That's still somewhat acceptable for minor version bumps (semver-compatible), but for example when doing a breaking change in arduino-leonardo, this would mean a semver-incompatible bump for all other crates as well ... That's what I dislike about it.

Maybe will be worth to do features as in https://github.com/Rahix/avr-device ?
The other way will be split generic to another repo.
Maybe you can share why we have such design now. Will be easier to understand for me and provide some help.

It's definitely non-trivial and don't know if I can give you a straight recommendation. But at least some notes.
Independent versioning can certainly be done, but comes with error prone busywork. Do consider some amount of automation. For ESP it seems to be manual https://github.com/esp-rs/esp-hal/issues/800 and STM mostly leans on cargo publish as well https://github.com/search?q=org%3Astm32-rs+publish+language%3AMarkdown&type=code&l=Markdown
At Tauri we've been using https://github.com/jbolda/covector, example configs.
It comes with a process to get used to, but certainly makes option 2 more palatable.

In terms of versions themselves, avoid 0.0.x releases and start with the 0.1.0 as cargo init does or go straight to 1.0.0. Sooner or later you'll wish you could do a patch release. Better to use README to communicate stability/maintenance status. (Though alpha/beta/rc semver does work well when contrasted with normal releases.)

Finally, I would say it helps to think about audiences when deciding on this. For example:

As an avr-hal maintainer
As an #embedded-hal-driver maintainer
As a developer of a greenfield project
As a developer of a brownfield project

Because it can frame the tradeoffs better.
For instance, maybe you would prefer more breaking changes in the setup code for brownfield projects, if that buys you decent stability on drivers and faster releases on new boards or embedded-hal breaking changes.


[Test] Test Task for Github sync tool

This is a test task to test github -> tfs integration. Please ignore.

this is fixed by #1 (picked a random issue)

Testing ZenHub work estimates now.

Zenhub integration works!

Reopening to test email integration.

Email reporting successful.

Reopening to test what a tfs work item looks like when it has an associated PR.

Fixed by #520

Reopening to test non-Zenhub Days remaining


Projects in dropdown should be Normally sorted

:nut_and_bolt: Description: What code changed, and why?
This change updates the default sorting of the projects dropdown component so that when a user views their projects in a dropdown, they see them sorted Normally.  This matches our tables as well as the sorting we use in some of our other components.
:chains: Related Resources
[A2-338] fix admin UI list sorting
:+1: Definition of Done
The dropdown is sorted Normally.  First by numbers, and then Alphabetically.
:athletic_shoe: How to Build and Test the Change
Visually -

build components/automate-ui-devproxy && start_all_services
Navigate to https://a2-dev.test/settings/tokens
Create an API Token
Navigate to https://a2-dev.test/settings/projects
Create several projects
Navigate to https://a2-dev.test/settings/tokens/ your-api-token
Click on the projects dropdown to see your projects sorted normally.

Using the specfile

Run the spec file at src/app/components/projects-dropdown/projects-dropdown.component.spec.ts

:white_check_mark: Checklist

[x] Tests added/updated?
[ ] Docs added/updated?

:camera: Screenshots, if applicable
After: Dropdown is sorted normally.

I noticed I've got some differing prettier settings that should be altered to match whatever the team is using.  I'll look to get that updated.


MDI icons

Hi bremor - I'm totally wrapt that you put this together so quickly. It works very nicely. Just one request for me: the original core bom integration included weather icon sensors that mapped to MDI icons. This made it very easy to display the correct icon for the day. But your integration uses something else. Is it possible to use the MDI icon format in the icon sensors?

+1! Great integration.
I use Dark Sky for the icon's and would love to make the switch as my tileboard doesn't show anything when using this integrations icon:
DarkSky:

BOM:

No worries, leave it with me 👍
What was the format of the sensor state on the old platform? Was it for example “sunny” or “mdi:sunny”

Awesome. It was the latter: “mdi:sunny”.

I'm working on this now guys, I need to create a "map", to map BOMs values to MDI Icons, so far I have the below. If you could please help up by letting me know what BOM icons you have come across.
MDI_ICON_MAP = {
"cloudy": "mdi:weather-cloudy",
"light_shower": "mdi:weather-partly-rainy",
"sunny": "mdi:weather-sunny",
"windy": "mdi:weather-windy",
}

Someone asked me for these in the old ftp component but I couldn't get it to use a variable mapping. The numbers are the BOM available conditions
ICON_MAPPING = {
    '1': 'mdi:weather-sunny',
    '2': 'mdi:weather-night',
    '3': 'mdi:weather-partly-cloudy',
    '4': 'mdi:weather-cloudy',
    '6': 'mdi:weather-sunset',
    '8': 'mdi:weather-partly-rainy',
    '9': 'mdi:weather-windy',
    '10': 'mdi:weather-sunset',
    '11': 'mdi:weather-rainy',
    '12': 'mdi:weather-pouring',
    '13': 'mdi:weather-sunset',
    '14': 'mdi:snowflake-melt',
    '15': 'mdi:weather-snowy',
    '16': 'mdi:weather-lightning',
    '17': 'mdi:weather-light-showers',
    '18': 'mdi:weather-pouring',
    '19': 'mdi:weather-hurricane'
}

And here are all the possible values for the new BOM API, fortunately the numbers match up with the FTP component.
sunny=1
clear=2
partly_cloudy=3
cloudy=4
mostly_sunny=5
haze=6
hazy=6
light_rain=8
wind=9
windy=9
fog=10
shower=11
showers=11
rain=12
dust=13
dusty=13
frost=14
snow=15
storm=16
storms=16
light_shower=17
light_showers=17
heavy_shower=18
heavy_showers=18
tropical_cyclone=19
cyclone=19

yeah. They are published by BOM in a doc I found

mdi icons added in v0.7

Sensational - thanks @bremor.


CMake Error

Hello, while trying to use the example code, but i have an error when building with cmake:
error: « dummy » .... [-Werror=maybe-uninitialized]
 1301 |   StackLowerThanAddress(&dummy, &result);
      |   ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~
``` the return code is 2
Have you any idea ?

When using GCC 11.11 on fedora with cpr 1.6.2 I can reproduce this issue.
It looks like something in google test is broken.
As a way around try the following:
cmake .. -DCPR_BUILD_TESTS=OFF

https://github.com/google/googletest/issues/3219


[E2E -- CI] Store Builds and CI logs in CI server.

1, Store testing result/build logs into CI server.

Done.


pip install fail on Mac

Hi, use pip to install but it failed:
What I use:
source activate root
pip install lapjv

It is not clear from the screenshot, but is it python 2.x? It is officially not supported, sorry.

@vmarkovtsev  Hi, I use python3 in anaconda. I attached another photo. Any solution?
Thanks !

When install in windows anaconda , error also occered .

I am back from the vacation, fresh and already installing clean VMs with macOS and Windows to debug these problems. Will fix ASAP. The only difference I've noticed so far is that I am using xcode cmdline tools 7.3 and not the latest 8.2.

@GeekMe93 I used the fresh VM from https://github.com/AndrewDryga/vagrant-box-osx
Tested with clang 8.0 and 8.3. No problems.

Thanks for your reply, I used Anaconda’s default environment, I will check later, thanks you very much!

On 18 Apr 2017, at 12:33 AM, Vadim Markovtsev<EMAIL_ADDRESS>wrote:
@GeekMe93 https://github.com/GeekMe93 I used the fresh VM from https://github.com/AndrewDryga/vagrant-box-osx https://github.com/AndrewDryga/vagrant-box-osx
Tested with clang 8.0 and 8.3. No problems.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub https://github.com/src-d/lapjv/issues/1#issuecomment-294522641, or mute the thread https://github.com/notifications/unsubscribe-auth/APDwYFGutnkdg3BSvw_Ge0drwiXyaLuxks5rw5RSgaJpZM4M3s8T.

@qiliux You seem to use Python 2.7 which is unsupported. Nevertheless, I ported the code to Windows and checked that it works.

@vmarkovtsev  Thank you , the error is the ms-compiler. Now it can be installed successfuly with python 3.

@GeekMe93 were you able to resolve this? I'm currently having the same issue on OSX 10.11.6.


Backport "Fix handling of sequence_length w/ beam search decoder"

System information

OS Platform and Distribution: Ubuntu 16.04
TensorFlow version and how it was installed: binary
TensorFlow-Addons version and how it was installed: binary
Python version: 3.6
Is GPU used? No

Describe the bug
For some reasons, patches are still pushed to tf.contrib.seq2seq, see:
https://github.com/tensorflow/tensorflow/commit/8bbc0392bc2e843df07de38d8ab66414fbfa3e82
The bug is described in the commit message.
Code to reproduce the issue
None.
Other info / logs
@qlzh727 as you refactored the seq2seq module, do you confirm this bug is also applicable to the addons version?

Thanks for the notice, let me take a look for the change in contrib.
As a side note, since addons has been port into google internal yet, eng within google is still using existing contrib version of seq2seq.

I think tensorflow/tensorflow@8bbc039 should be mirrored to addons. let me send a PR quickly

@qlzh727 thanks so much for handling this!


Ensure storing array literal in storage works correctly on substrate and ewasm

Fixes https://github.com/hyperledger-labs/solang/issues/859
Signed-off-by: Sean Young<EMAIL_ADDRESS>

Does this fix apply only to Substrate?

ewasm too. This affects when storage is accessed through systems calls.
On Solana storage is a continuous piece of memory which is accessible directly from bpf.


Skipping library which is the wrong architecture

To Reproduce
Steps to reproduce the behavior:

Import a MachO 64-bit exectuable on e.g macOS 10.14.3
Enable loading of external libraries
Observe failure to load libraries

Searching for referenced library: /System/Library/Frameworks/IOKit.framework/Versions/A/IOKit ...
Skipping library which is the wrong architecture: /System/Library/Frameworks/IOKit.framework/Versions/A/IOKit
Unable to find external library: /System/Library/Frameworks/IOKit.framework/Versions/A/IOKit
Searching for referenced library: /usr/lib/libc++.1.dylib ...
Skipping library which is the wrong architecture: /usr/lib/libc++.1.dylib
Unable to find external library: /usr/lib/libc++.1.dylib

Expected behavior
External libraries are loaded, as the executable i 64-bit too (x86:LE:64:default (2.8)
Environment (please complete the following information):

OS: macOS 10.14.3
Java Version: 11.0
Ghidra Version: 9.0

Possibly related to #110

This appears to be a problem with loading any external libs that are universal binaries. Should be a simple fix. Thanks for finding this!


fix how flags are set

Summary

Inject correct flags into the template
use native flag update where possible.
correct flags paths in template

Type

Please delete options that are not relevant.

[x] Bug fix (non-breaking change which fixes an issue)

Fixes

closes #315

Checklist:

[x] My code follows the style guidelines of this project
[x] I have performed a self-review of my code
[x] I have commented my code, particularly in hard-to-understand areas
[x] I have made corresponding changes to the documentation
[x] My changes generate no new warnings
[x] Any dependent changes have been merged and published in downstream modules

Reviewers

You can use @mentions

closes #313


Many clicks to make text area editable

Hi Art!
I'm implementing the ckeditor plugin with grapesjs, but I've perceived that it is necessary so many clicks over the text area to becames editable this place. I think some persons will have some difficulties to deal with it and it could be a block barrier to user experience.
For example, trying to edit a text inside button is little bit hard, because the ckeditor does not allow to edit the text content directly

How can we set the editor to for example, if I click one time over the text, it enable the ckeditor bar and turn the place editable?
Thanks!

Try to extend the Text Component with something like this
  var textType = editor.DomComponents.getType('text');
  domComps.addType('text', {
    model: textType.model,
    view: textType.view.extend({
      events: {
        'click': 'enableEditing', // by default is 'dblclick'
      },
    }),
  });

Just in case someone needs this.
const comps = editor.DomComponents;
const textType = comps.getType('text');

comps.addType('text', {
  model: textType.model,
  view: textType.view.extend({
    events: {
      click: 'onActive',
    },
  }),
});

Neither of the above solutions are working for me.
const comps = editor.DomComponents;
const textType = comps.getType('text');

comps.addType('text', {
    model: textType.model,
    view: textType.view.extend({
        events: {
            click: 'enableEditing',
        },
    }),
});

I'm actually adding the 'text' block using block manager as below:
export default (bm, toAdd, category, opt = {}) => {
toAdd("text") &&
bm.add("text", {
label: opt.textBlkLabel,
category: category,
attributes: { class: "gjs-fonts gjs-f-text" },
content: {
type: "text",
content: "Insert your text here",
style: { padding: "5px" },
activeOnRender: 1,
droppable: true,
},
});
@artf , could you suggest something to make this work.
Thanks in advance!


Default Streams Cannot Be Private.

Testing Plan:
GIFs or Screenshots:

Closing since some parts of this are already fixed in master now.


Expand Readme

[x] project purpose
[ ] firebase configuration
[x] installation
[ ] configuration

4 not 3 types of beer

add link to cloud functions repo


GitHub Releases

Release-action publishes all packages to http://npmjs.com/. It would be nice to create GitHub releases and GitHub package registry.

Since in 0.4 we are migrating to single version for all repo, we can set up GitHub Releases after that 🤗


Use deprecated hidden constructors as last option only

Kotlinx-serialization uses apparently hidden deprecated constructors for instantiating objects.
This PR filters deprecated  hidden constructors and uses them when there is no other constructor only.

Hi @npryce, Is there any chance to get this merged, or some feedback on how to improve it?

releasing this now in <IP_ADDRESS>. Sorry for the delay :)


Freeze gs paramters during splatfacto optimization

Hi, thank you for the great work!
I'm trying to freeze certain properties of 3D-GS while still optimizing others (such as means). However, when I try setting self.gauss_params["scales"].requires_grad_(False), it results in an error in gsplat. Could you kindly provide guidance on how to achieve this in Splatfacto v1.4.0? Thank you in advance!

Correction: I'm working with NerfStudio v1.1.4 and gsplat v1.3.0.

Hi, thank you for the great work!
I'm trying to freeze certain properties of 3D-GS while still optimizing others (such as means). However, when I try setting self.gauss_params["scales"].requires_grad_(False), it results in an error in gsplat. Could you kindly provide guidance on how to achieve this in Splatfacto v1.4.0? Thank you in advance!

You can use with torch.no_grad():


Replace _t_complexity_ with build_call_graph in comparison gates

Fixes https://github.com/quantumlib/Qualtran/issues/1010
Helps support symbolics and better resource counting for comparison gates. Only comparison gate left is LessThanEqual

@tanujkhattar this PR becomes obsolete once I merge my upcoming PR that reimplements all comparison gates + adds missing comparison gates. I will send the PR today.

I think this is a fairly straightforward change, so lets merge this and then I will lookout for your PR with the revamp? In case we are not able to merge your PR in time for the release; this would be a good temporary solution to unblock other upgrades.

this broke the leq_symb bloq example, which tragically isn't included in a unit test

Yeah, I'll send a fix soon. Realized it when implementing symbolic state prep


Cannot read property 'yRatio' of null

Bug report
Codepen
https://codesandbox.io/s/vue-yratio-issue-with-treemap-dmct4
Explanation
I wanted to create a Vue treemap chart from the example in https://apexcharts.com/vue-chart-demos/treemap-charts/distributed/.
If you look at the codepen, you can see that there is the following error:
Cannot read property 'yRatio' of null
If you simply change the type of the chart to something like bar, it will work ...

@mlapeyre3 Please ensure that you are using the current  version 3.22. Treemap was added in version 3.21.
Release: 3.21.0
In your example you are using version 3.19.
"apexcharts": "3.19.3",
Please let me know if a npm update apexcharts helped.

Yes, upgrading to 3.21 will fix it.


qq: Add version <IP_ADDRESS>946

Closes #10558

[X] I have read the Contributing Guide.

/verify

Do QQ and TIM have English UI after installed? Since I'm using Simplified Chinese locale and could not test them.

I hope this gets merged, but I'm also not going to lie, the answer is No and No.
However after testing the system is in English, the software can display Simplified Chinese and work fine. Of course as a chat software, even if the interface is all in Simplified Chinese it still works (just chatting)

So, these manifests should go to other buckets IMO, e.g. @chawyehsu's https://github.com/chawyehsu/dorado, and there're many other Chinese only ones.

My review for it: objection.
Not only because of the language criteria. I do not think this will work by simply extracting files from the installers, neither QQ nor TIM. You have to investigate and ensure it really works in a new environment that did not have QQ/TIM, more specifically QQProtect, installed before. Otherwise: https://github.com/chawyehsu/dorado/issues/11, https://github.com/chawyehsu/dorado/issues/370.

So, these manifests should go to other buckets IMO, e.g. @chawyehsu's https://github.com/chawyehsu/dorado, and there're many other Chinese only ones.

I am actually aware of @chawyehsu's https://github.com/chawyehsu/dorado, but I still want to submit that inventory file to the Extras repository for several reasons.

Extras has a reputation as one of the few official repositories, maintained by a wide range of professional community members, and it would be convenient for many users who just want to install software to be added to it. (rather than finding an uncertain third party repository to run potentially risky scripts or software)
Searching through the Scoop.sh website, you can find at least 20+ repositories that provide QQ manifests, suggesting that many Scoop users actually use the software's configuration, perhaps because the official Extras don't have it and have to (painfully) create it themselves
In the face of objections from https://github.com/ScoopInstaller/Main/pull/2938#issuecomment-966830432, I would like to say that if a software has a large enough user base and if the users need it, it is possible to consider Allowing software to be added to a repository. Maintenance is not really a problem, because if the software is used by enough people and is open source, there will be users who will raise issues, or pull requests to fix them.
Of course, in the specific case of QQ and TIM, the software has a simplified Chinese interface, and there are at least two maintainers I know of who can read Chinese, so I don't think it should be too difficult to maintain. (All of this is debatable, of course).

My review for it: objection. Not only because of the language criteria. I do not think this will work by simply extracting files from the installers, neither QQ nor TIM. You have to investigate and ensure it really works in a new environment that did not have QQ/TIM, more specifically QQProtect, installed before. Otherwise: chawyehsu/dorado#11, chawyehsu/dorado#370.

Thank you for your comments.
I guess I didn't post a screenshot though, or you didn't actually go and test it to conclude that it wouldn't work without QQ Protect.
To be honest, I've tested both manifest files in Windows Sandbox (must admit the sandbox must be clean Windows. test was done by copying the finished QQ/TIM folder into the sandbox, running it manually and trying to log in) and both worked fine with no error messages.
I've posted screenshots of the test below for you to see, but a better way is to try it out for yourself. (Just a personal opinion, it would be a waste of time and emotion and not good for community dialogue and development if you just thought about it and didn't even bother to try it out before coming to a conclusion)

Claiming third-party buckets are risky is somewhat negative to the community. Most of them are created by community members because of their own pure needs. But do get me wrong, ppl should always double-check the packages they use.

..  @ chawyehsu's https://github.com/chawyehsu/dorado, and there're many ..

My bucket was not for such a situation from the beginning. I created it for myself and built up its reputation on my own. No one else has a duty to submit any manifest that does not satisfy Scoop org-owed buckets' criteria to my bucket. So please do not give such recommendations. We, at least I and @ rasa, expect there should be more buckets that are built and maintained by the community members themselves, and stuff related to buckets works in a more decentralized way. Remember you can create your own bucket. (Ross tell me if I'm wrong)
In fact, I don't quite care about the language-specific maintenance criteria after winget started to include almost all incoming packages without basically any clear requirements. I don't remember who introduced and enforced such criteria for our buckets. I do care about package usability, especially for restricted users whom Scoop was made for, naming convention, and maintainability, however. That's another story. Not going to discuss it here. On the other hand, I'll be excited if anyone makes these two apps work with Scoop without requiring admin rights. I'll be happy to adapt then. Anyways I'll apologize for my preconceived comment and have it a try under VMs using a restricted user account. I'll review the manifest and approve this when it works under my VM, but if there is any objection from other collaborators, it's up to them.

Okay, I'll not recommend your bucket since it's personal as you said.
I've checked git log of package_request issue template and the language criteria is introduced by me but I'm sure it's not from me, and also forget who said this first. If there's a need to accept all types of apps, we could remove any of these criteria and make official buckets more general ones.
But there're over 1800 apps in extras with over 100 package-adding PRs and the sub-directory structure (in any categories) is still not adopted 'cos incompatibility of search-engine, I'm really worried about the maintainability of this bucket.

But there're over 1800 apps in extras with over 100 package-adding PRs and the sub-directory structure (in any categories) is still not adopted 'cos incompatibility of search-engine, I'm really worried about the maintainability of this bucket.

I'm concerned about this, too. Still, you have to admit that ppl thinking of having a manifest included in org-owned buckets that would leverage the reputation will keep submitting new apps whatever criteria are there, they can actually create their own buckets as I comment above tho. We have to find a solution to solve this rather than add limitations. https://github.com/ScoopInstaller/Scoop/pull/5119 was great enough though.

Simplify script and change checkver url

Thank you. Local test passed.


readonly not supported

Describe the bug
Using tom select js, when I add a readonly attribute on my <select />, I can still edit the valuee
To Reproduce
https://jsfiddle.net/6trp3g1v/1/
<script src="https://cdnjs.cloudflare.com/ajax/libs/tom-select/2.2.2/js/tom-select.complete.js" integrity="sha512-KfTOBVJv8qnV1b+2tsbTLepS7+RAgmVV0Odk6cj1eHxbR8WFX99gwIWOutwFAUlsve3FaGG3VxoPWWLRnehX1w==" crossorigin="anonymous" referrerpolicy="no-referrer"></script>
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/tom-select/2.2.2/css/tom-select.default.min.css" integrity="sha512-+k6L1rcaTY8EY8hPjjh4Gfie0pUFGZxpofzDrEFV6oN/4UbzXWMIZBdUVJVg0v6vYmAN2EUuYZwRCNkAqzDOVw==" crossorigin="anonymous" referrerpolicy="no-referrer" />
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/tom-select/2.2.2/css/tom-select.bootstrap5.min.css" integrity="sha512-mNN7o87hQqtNCCGWxFVdlVdaKF6d4S1wVMi3+ftJYnW572YIo0KPjK1Cns5SPlyCtKGp1Nu+z26MJUNXmpbjKA==" crossorigin="anonymous" referrerpolicy="no-referrer" />

<input id="select" readonly />
<select id="select_2" readonly>
  <option value="opt1">Option 1</option>
  <option value="opt2">Option 2</option>
</select>
<script>
var settings = {
options: [
	{ value: "opt1", text: "Option 1" },
	{ value: "opt2", text: "Option 2" },
]
};
new TomSelect('#select',settings);
new TomSelect('#select_2',settings);
</script>

Expected behavior
Using readonly attribute, I expect the value to be non editable, but POSTED with the form
Additional context

OS: all
Browser : all
Version : latest
Device: all

Related to : https://github.com/orchidjs/tom-select/issues/537
Could this be priorized ?


Missing SoftAP documentation or feature for ESP32

I would like to configure ESP32 in SoftAP mode in NuttX, but look like the documentation in the corresponding page (Wi-Fi SoftrAP) is incomplete.

The commands suggested in the documentation of the SoftAP mode section does nothing. The SoftAP does not get enabled.

nsh> ifup wlan1
nsh> dhcpd_start wlan1
nsh> wapi psk wlan0 mypasswd 1
nsh> wapi essid wlan1 nuttxap 1

Also, the third command wapi psk wlan0 mypasswd 1 uses wlan0 while the rest of the commands use wlan1. Is that a mistake or is it intentional?
Using some external third-party documentations and examples, I enabled the debug messages and got error 19 when trying to use  dhcpd_start wlan1 which I found means that wlan1 is not found to be started.

nsh> dhcpd_start wlan1
dhcpd_openlistener: ERROR: socket failed: 19
dhcpd_run: ERROR: Failed to create socket

I tried looking in to the source code, but did not find much. Is there a way to enable wlan1? Please let me know if I am missing something. And, in that case, it would also be really good, if that part is also intcluded in the documentation of the SoftAP section.

@SrivamsiMalladi seems the issue is in your side. I tested here and everything is working fine:
From NuttX:

nsh> ifconfig
wlan0   Link encap:Ethernet HWaddr ac:67:b2:53:8b:ec at DOWN
        inet addr:<IP_ADDRESS> DRaddr:<IP_ADDRESS> Mask:<IP_ADDRESS>

wlan1   Link encap:Ethernet HWaddr ae:67:b2:53:8b:ec at DOWN
        inet addr:<IP_ADDRESS> DRaddr:<IP_ADDRESS> Mask:<IP_ADDRESS>

nsh> ifup wlan1
ifup wlan1...OK
nsh> dhcpd_start wlan1
nsh> wapi psk wlan0 mypasswd 1
nsh> wapi essid wlan1 nuttxap 1
nsh> ifconfig
wlan0   Link encap:Ethernet HWaddr ac:67:b2:53:8b:ec at DOWN
        inet addr:<IP_ADDRESS> DRaddr:<IP_ADDRESS> Mask:<IP_ADDRESS>

wlan1   Link encap:Ethernet HWaddr ae:67:b2:53:8b:ec at UP
        inet addr:<IP_ADDRESS> DRaddr:<IP_ADDRESS> Mask:<IP_ADDRESS>

nsh>

From Linux connected to nuttxap:

alan@dev:~$ ping <IP_ADDRESS>
PING <IP_ADDRESS> (<IP_ADDRESS>) 56(84) bytes of data.
64 bytes from <IP_ADDRESS>: icmp_seq=1 ttl=64 time=3.08 ms
64 bytes from <IP_ADDRESS>: icmp_seq=2 ttl=64 time=3.17 ms
64 bytes from <IP_ADDRESS>: icmp_seq=3 ttl=64 time=3.09 ms
64 bytes from <IP_ADDRESS>: icmp_seq=4 ttl=64 time=4.61 ms
64 bytes from <IP_ADDRESS>: icmp_seq=5 ttl=64 time=2.96 ms
64 bytes from <IP_ADDRESS>: icmp_seq=6 ttl=64 time=1.59 ms
64 bytes from <IP_ADDRESS>: icmp_seq=7 ttl=64 time=8.23 ms
64 bytes from <IP_ADDRESS>: icmp_seq=8 ttl=64 time=1.44 ms
64 bytes from <IP_ADDRESS>: icmp_seq=9 ttl=64 time=1.44 ms

I have the impression that you added a " ` " after the number 1:
wapi essid wlan1 nuttxap 1`

Please fix it!

I am not able to see wlan1 in my ifconfig. What configuration are you using?
This is what I did.
$ make distclean
$ ./tools/configure.sh esp32-devkitc:wapi
$ make download ESPTOOL_PORT=/dev/ttyUSB0
$ picocom -b 115200 /dev/ttyUSB0

Then, in nsh I did ifconfig.
nsh> ifconfig
wlan0   Link encap:Ethernet HWaddr 24:62:ab:d1:ef:30 at UP
        inet addr:<IP_ADDRESS> DRaddr:<IP_ADDRESS> Mask:<IP_ADDRESS>

             IPv4   TCP   UDP  ICMP
Received     0000  0000  0000  0000
Dropped      0000  0000  0000  0000
  IPv4        VHL: 0000   Frg: 0000
  Checksum   0000  0000  0000  ----
  TCP         ACK: 0000   SYN: 0000
              RST: 0000  0000
  Type       0000  ----  ----  0000
Sent         0000  0000  0000  0000
  Rexmit     ----  0000  ----  ----

And, this is my setup in case it is different from yours
nsh> uname -a
NuttX  11.0.0-RC2 72313301e2-dirty Sep 28 2022 11:03:47 xtensa esp32-devkitc

I have the impression that you added a " ` " after the number 1:

The " ` " got added by mistake. Added it for formatting here in GitHub, forgot to remove it. I did not use it in the shell like that.

No, the wapi board profile is not prepared to SoftAP, you need to use the sta_softap board profile!
You need to see wlan1:
nsh> ifconfig
wlan0   Link encap:Ethernet HWaddr ac:67:b2:53:8b:ec at DOWN
        inet addr:<IP_ADDRESS> DRaddr:<IP_ADDRESS> Mask:<IP_ADDRESS>

wlan1   Link encap:Ethernet HWaddr ae:67:b2:53:8b:ec at DOWN
        inet addr:<IP_ADDRESS> DRaddr:<IP_ADDRESS> Mask:<IP_ADDRESS>

nsh>

Oh yea! With sta_softap configuration, I can now see wlan1 in ifconfig. I think this should be clearly mentioned in the documentation.

It is possible to use ESP32 as an Access Point (SoftAP). Actually there are some boards with a sta_softap which enables this support.

I see this mentioned in the corresponding section, but I think it must be mentioned more clearly to avoid confusion.
So then, I am able to run the following in nsh
nsh> ifup wlan1
ifup wlan1...OK
nsh> dhcpd_start wlan1

Soon after this command I am able to see nuttxap in the list of available Wi-Fi networks from my Ubuntu system. When I try setting the essid, I get the following error.
nsh> wapi essid wlan1 abcdefg 1
esp_wifi_softap_essid: Failed to set Wi-Fi config data ret=12299
ioctl(SIOCSIWESSID): 1
ERROR: Process command (essid) failed.

What is it that I am missing again?

Did you try this way?
nsh> ifup wlan1
ifup wlan1...OK
nsh> dhcpd_start wlan1
nsh> wapi psk wlan0 mypasswd 1
nsh> wapi essid wlan1 nuttxap 1
nsh> ifconfig
wlan0   Link encap:Ethernet HWaddr ac:67:b2:53:8b:ec at DOWN
        inet addr:<IP_ADDRESS> DRaddr:<IP_ADDRESS> Mask:<IP_ADDRESS>

wlan1   Link encap:Ethernet HWaddr ae:67:b2:53:8b:ec at UP
        inet addr:<IP_ADDRESS> DRaddr:<IP_ADDRESS> Mask:<IP_ADDRESS>

nsh>

Also my original "wapi psk wlan0 mypasswd 1" was wrong, it should be "wapi psk wlan1 mypasswd 1" or more correctly "wapi psk wlan1 mypasswd 3" for WPA2. Thanks @tmedicci for noticing the issue!

Hello @SrivamsiMalladi,
I've just submitted a PR that is supposed to fix the issue you are facing. Could you please test it?
https://github.com/apache/incubator-nuttx/pull/7250

Hello @tmedicci (@acassis @xiaoxiang781216),
I pulled from the apache/incubator-nuttx git repo this morning (so your changes should be there too) and tried to start the SoftAP and it is still not working.
nsh> ifconfig
wlan0   Link encap:Ethernet HWaddr 24:62:ab:d1:ef:30 at DOWN
        inet addr:<IP_ADDRESS> DRaddr:<IP_ADDRESS> Mask:<IP_ADDRESS>

wlan1   Link encap:Ethernet HWaddr 26:62:ab:d1:ef:30 at DOWN
        inet addr:<IP_ADDRESS> DRaddr:<IP_ADDRESS> Mask:<IP_ADDRESS>

nsh> dhcpd_start wlan1
nsh> ifconfig
wlan0   Link encap:Ethernet HWaddr 24:62:ab:d1:ef:30 at DOWN
        inet addr:<IP_ADDRESS> DRaddr:<IP_ADDRESS> Mask:<IP_ADDRESS>

wlan1   Link encap:Ethernet HWaddr 26:62:ab:d1:ef:30 at UP
        inet addr:<IP_ADDRESS> DRaddr:<IP_ADDRESS> Mask:<IP_ADDRESS>
nsh> wapi psk wlan1 mypasswd 3
esp_wifi_softap_auth: Failed to set Wi-Fi config data ret=12299
ERROR: Process command (psk) failed.
nsh>

From the ESP-IDF error codes documentation, the error code 12299 (0x300B) means that the password is invalid. I tried to set passwords too (like abcdefgh or 12345678 etc.) and everything returns the same error. Despite everything, the AP has already started and I cannot connect to it.
Should I raise this as another issue as this one got closed because of the PR?

Should I raise this as another issue as this one got closed because of the PR?

I don't think it's necessary. Let's try to fix your issue here ;)
Could you please double-check if my commit is on your repository?
Also, may I ask you if you ran the make distclean before building it? It's a necessary step because the .config may contain old data. Could you try running:
make -j distclean && ./tools/configure.sh esp32-devkitc:sta_softap && make -j bootloader && make V=1 flash ESPTOOL_PORT=/dev/ttyUSB0 && minicom -D /dev/ttyUSB0, please?
I checked with my own board (using this same password) and everything seems to be normal (I didn't have a wireless network with the  mypasswd password. It does not check the password/try to connect on this step, so it shouldn't fail there.

Yes I have your commit.
iotdev@iotdev:~/nuttxspace/nuttx$ git show 5089c5d2fd446197b02c7367e444586aa4587d5e
commit 5089c5d2fd446197b02c7367e444586aa4587d5e
Author: Tiago Medicci Serrano<EMAIL_ADDRESS>Date:   Mon Oct 3 17:42:25 2022 -0300

    esp32: fix wapi stack size on board examples

    Fix the error on issue 7193:
    (https://github.com/apache/incubator-nuttx/issues/7193)

Yes I ran make distclean after pulling latest changes and then flashed.
So I did this now
$ make distclean
$ ./tools/configure.sh esp32-devkitc:sta_softap
$ make -j distclean && ./tools/configure.sh esp32-devkitc:sta_softap && make -j bootloader && make V=1 flash ESPTOOL_PORT=/dev/ttyUSB0 && minicom -D /dev/ttyUSB0

nsh> ifconfig
wlan0   Link encap:Ethernet HWaddr 24:62:ab:d1:ef:30 at DOWN
        inet addr:<IP_ADDRESS> DRaddr:<IP_ADDRESS> Mask:<IP_ADDRESS>

wlan1   Link encap:Ethernet HWaddr 26:62:ab:d1:ef:30 at DOWN
        inet addr:<IP_ADDRESS> DRaddr:<IP_ADDRESS> Mask:<IP_ADDRESS>

nsh> dhcpd_start wlan1
nsh> ifconfig
wlan0   Link encap:Ethernet HWaddr 24:62:ab:d1:ef:30 at DOWN
        inet addr:<IP_ADDRESS> DRaddr:<IP_ADDRESS> Mask:<IP_ADDRESS>

wlan1   Link encap:Ethernet HWaddr 26:62:ab:d1:ef:30 at UP
        inet addr:<IP_ADDRESS> DRaddr:<IP_ADDRESS> Mask:<IP_ADDRESS>

nsh> wapi psk wlan1 12345678 3
nsh> wapi essid wlan1 mysoftap 1
nsh>

This time I did not get any errors when I tried with this, but the end behaviour is still the same. The AP with the given name gets created, but I cannot connect to it when the password I have specified 12345678

@SrivamsiMalladi I think Tiago already discovered your issue: probably you just updated your repository, but still using your old .config that still setting the stack size to less than 4KB!

I just now discovered that I can connect to the softap created using the specified password from my Ubuntu machine, but I cannot do the same from my smartphone (Tried with Android). Also I cannot even see the network name in the list of available Wi-Fis in Windows machine.

nsh> ifconfig
wlan0   Link encap:Ethernet HWaddr 24:62:ab:d1:ef:30 at DOWN
        inet addr:<IP_ADDRESS> DRaddr:<IP_ADDRESS> Mask:<IP_ADDRESS>

wlan1   Link encap:Ethernet HWaddr 26:62:ab:d1:ef:30 at DOWN
        inet addr:<IP_ADDRESS> DRaddr:<IP_ADDRESS> Mask:<IP_ADDRESS>

nsh> dhcpd_start wlan1
nsh> ifconfig
wlan0   Link encap:Ethernet HWaddr 24:62:ab:d1:ef:30 at DOWN
        inet addr:<IP_ADDRESS> DRaddr:<IP_ADDRESS> Mask:<IP_ADDRESS>

wlan1   Link encap:Ethernet HWaddr 26:62:ab:d1:ef:30 at UP
        inet addr:<IP_ADDRESS> DRaddr:<IP_ADDRESS> Mask:<IP_ADDRESS>

nsh> wapi psk wlan1 12345678 3
nsh> wapi essid wlan1 mysoftap 1
nsh>

Hi! I'm missing the ifup wlan1 on your snippet. Did you run that command before those?
I'm able to connect on Android and Linux (manjaro) and Windows. On WIndows it appeared first as a hidden network, but soon the name appeared as expected.

Here it works fine on desktop e smartphone. Try to turn off and the WiFi on your smartphone. An issue that I faced was that my smartphone silently dropped the connection because it don't have Internet access. So I found an configuration knob to allow to keep connected even when the WiFi doesn't has Internet support.

I tried with the ifup wlan1 now and it is still the same.
On Android, after entering password, I get "Couldn't connect to network" dialogue box.
On Windows, I cannot see hidden network. Even after waiting for a while, nothing.
On Linus, everything works as expected.

Hi @SrivamsiMalladi
We found that this commit causes a software regression on our Wi-Fi library. We are working on a proper solution but we have no estimated date to submit it.
As a workaround, please revert this commit locally on your apps repository.
Regarding your results, please test it again making sure to erase the flash before flashing the new firmware (please adjust your serial port):
$ esptool.py -c esp32 -p /dev/ttyUSB0 -b 921600  erase_flash

Thanks.

Hello @tmedicci. Thank you so much for looking into the issue. I tired what you mentioned, but the behavior is still the same.
Cannot connect to the AP from my Android phone.

Hello @tmedicci. Thank you so much for looking into the issue. I tired what you mentioned, but the behavior is still the same. Cannot connect to the AP from my Android phone.

Hi @SrivamsiMalladi ,
@acassis also has found some difficulty to connect into his Android phone, but it was not related to the device, but to the phone dropping the connection without internet access. Could you, please, try:

Check if your phone has some configuration setting to drop connections without internet or to enable mobile data automatically if wi-fi does not provide an internet connection;
Setup a different Wi-Fi network on your router/Wi-Fi (without an internet connection and on <IP_ADDRESS> range) to test if your phone is able to connect directly to the softAP;
Try using another Android device to test;

Hi @tmedicci,
I am able to connect to other Wi-Fi that do not offer internet. Also I was able to connect to a network with ip 10.42.5.x
When trying to connect to the nuttxap, my phone just prompts "Couldn't connect to network", but when I try to connect to other networks without internet, my phone prompts something like "This network does not offer internet. Do you still want to connect to this network?" But this kind of popup does not appear with nuttxap. So, could it be something else?

I also tried changing the ip address from <IP_ADDRESS> (0x0a000001) to <IP_ADDRESS> (0xc0a80101) by making the following changes in the config.h
#define CONFIG_NETUTILS_DHCPD_STARTIP 0xC0A80102
#define CONFIG_NETUTILS_DHCPD_ROUTERIP 0xC0A80101

With the above changes, I flashed the sta_softap config and did ifconfig.
nsh> ifconfig
wlan0   Link encap:Ethernet HWaddr 24:62:ab:d1:ef:30 at DOWN
        inet addr:<IP_ADDRESS> DRaddr:<IP_ADDRESS> Mask:<IP_ADDRESS>

wlan1   Link encap:Ethernet HWaddr 26:62:ab:d1:ef:30 at DOWN
        inet addr:<IP_ADDRESS> DRaddr:<IP_ADDRESS> Mask:<IP_ADDRESS>

nsh> dhcpd_start wlan1
nsh> ifconfig
wlan0   Link encap:Ethernet HWaddr 24:62:ab:d1:ef:30 at DOWN
        inet addr:<IP_ADDRESS> DRaddr:<IP_ADDRESS> Mask:<IP_ADDRESS>

wlan1   Link encap:Ethernet HWaddr 26:62:ab:d1:ef:30 at UP
        inet addr:<IP_ADDRESS> DRaddr:<IP_ADDRESS> Mask:<IP_ADDRESS>

Connected to the nuttxap network from Ubuntu system and <IP_ADDRESS> got assigned to the ubuntu system.
Tried to connect to the nuttxap network from Android smartphone, I get a prompt saying "Couldn't connect to the network".

Oh! I just now tried with an Apple device (iPhone) and another android device and they both got connected.
Probably something is wrong or differently configured with my previous android device like you said @tmedicci.
Sorry for causing the trouble, but I will check and report if I find what it is with my android device.
Closing the issue for now.

Oh! I just now tried with an Apple device (iPhone) and another android device and they both got connected. Probably something is wrong or differently configured with my previous android device like you said @tmedicci.
Sorry for causing the trouble, but I will check and report if I find what it is with my android device. Closing the issue for now.

Thank you for your report and, please, let us know if you find the problem regarding your android device.
Best regards,


Update plugin.py

sometimes there will be no 'node_modules/.bin'.

Do you know why would that be the case? Some global npm settings that override the behavior?

I use this under Windows 10, and after install the server, there has no such .bin directory.

Thanks.
I'm not sure why the starter script is not created on Windows but even if it would, it would have a .cmd extension so it wouldn't work anyway.

Do you know why would that be the case? Some global npm settings that override the behavior?
https://docs.npmjs.com/files/folders#executables only mentions that for the global mode the behavior is different but we are not installing globally.

https://github.com/sublimelsp/lsp_utils/blob/master/st3/lsp_utils/server_npm_resource.py#L118
It may caused by the '--prefix'.


script for collecting TSP service adoption info

All changed packages have been documented.

You can try these changes at https://cadlplayground.z22.web.core.windows.net/typespec-azure/prs/548/
Check the website changes at https://tspwebsitepr.z22.web.core.windows.net/typespec-azure/prs/548/


Move GitHub actions to test 5.1.0~beta1

This PR moves the GitHub actions CI to test the fresh 5.1.0~beta1 release, by building on a custom Windows opam package as we've done for 5.1.0~alpha2 https://github.com/shym/custom-opam-repository/pull/1

CI summary:

32-bit trunk and linux-s390x-5.1 unexpectedly triggered a Lin CList int test with Thread counterexample #358
both macOS 5.1 and trunk failed to trigger STM int64 ref test parallel asymmetric #364
linux-arm64-5.1 and  linux-ppc64le-5.2 failed to trigger Lin DSL Out_channel test with Domain #360
Cygwin trunk part1 timed out due to general slowness (1181.9s Domain.spawn/join - atomic, 2995.9s domain_spawntree - with Atomic, 1356.7s Lin DSL Atomic test with Domain, 1824.0s Lin DSL Bytes test with Domain
macos-arm64-5.1 failed with an Internal error

So a few things to look into, but nothing caused by this PR. I'll therefore merge.


file path must be ascii ?

file path must be ascii ?

MParallel is fully Unicode aware (i.e. it uses wmain() function and wide strings all the way), as you can see easily by looking at the source code. So I assume the program that you are invoking (avifenc.exe in your example) uses ANSI strings and therefore can only support characters that exist in your local ANSI Codepage. MParallel can not do anything about that, obviously...

Also you may want to try starting cmd.exe with the /u option.

It works by using "chcp 65001" in bat file.


Translate /docs/concepts/configuration/manage-compute-resources-container/ into Japanese

Close #21004

sorry, I made a mistake.


Migrate from ethers-rs to alloy

Move all middleware interactions from ethers-rs to alloy. Blocked by contract bindings.

Now that forge bind supports alloy, it's time to use uniswap-lens-rs instead of aperture-lens.

@shuhuiluo will pull something nxt wk


Add a part which describes which dependencies must be installed for m…

…onitoring services

Markdownlint issue not related:
[✖] https://www.wireguard.com/ → Status: 500
[340](https://github.com/osism/osism.github.io/actions/runs/8077827170/job/22068893705?pr=331#step:4:341)


OSIE image should use multi stage builds

We build a few packages from source, some of them may go away with #128 but some are likely to still be needed. Using multi stage builds would allow making better use layer caching and likely help with the final image size (#2).

Nope, we closed the PR until some time could be found to finish it up (https://github.com/tinkerbell/osie/pull/223). Most of the work was done already, the last bit needed was some hacking around buildx's lack of squash support.

Archiving repo, closing issue per GitHub's recommendation.