Can't configure

Hi
Can't configure Music Assistant. So I stripped my settings to just one Chromecast:

And then only my Spotify account:

After applying these settings:

But the integration has an error:

Don't see hints in the logfile. Reload doesn't help.
Probably something I missed.
Eric

There should be a full message/error in the log. Can you please hunt for it so I can have a further look ?

Hi Marcel
I see this error, These devices were originally in the list, but I stripped them from the settings :
Logger: homeassistant.config_entries
Source: config_entries.py:366
First occurred: 20:03:47 (5 occurrences)
Last logged: 20:29:04

Config entry 'WoonkamerTV' for nfandroidtv integration not ready yet: Failed to connect; Retrying in background
Config entry 'SlaapkamerTV' for nfandroidtv integration not ready yet: Failed to connect; Retrying in background
Config entry 'Music Assistant' for mass integration not ready yet: 'NoneType' object is not subscriptable; Retrying in background

I think you only see the full stack trace if you press the "view full log" button

[services.d] starting services
[services.d] done.
2022-05-07 20:03:32 WARNING (SyncWorker_0) [homeassistant.loader] We found a custom integration hacs which has not been tested by Home Assistant. This component might cause stability problems, be sure to disable it if you experience issues with Home Assistant
2022-05-07 20:03:32 WARNING (SyncWorker_1) [homeassistant.loader] We found a custom integration mass which has not been tested by Home Assistant. This component might cause stability problems, be sure to disable it if you experience issues with Home Assistant
2022-05-07 20:03:32 WARNING (SyncWorker_0) [homeassistant.loader] We found a custom integration scheduler which has not been tested by Home Assistant. This component might cause stability problems, be sure to disable it if you experience issues with Home Assistant
2022-05-07 20:03:32 WARNING (SyncWorker_2) [homeassistant.loader] We found a custom integration spotcast which has not been tested by Home Assistant. This component might cause stability problems, be sure to disable it if you experience issues with Home Assistant
2022-05-07 20:03:32 WARNING (SyncWorker_3) [homeassistant.loader] We found a custom integration zha_toolkit which has not been tested by Home Assistant. This component might cause stability problems, be sure to disable it if you experience issues with Home Assistant
2022-05-07 20:03:47 WARNING (MainThread) [homeassistant.config_entries] Config entry 'WoonkamerTV' for nfandroidtv integration not ready yet: Failed to connect; Retrying in background
2022-05-07 20:03:47 WARNING (MainThread) [homeassistant.config_entries] Config entry 'SlaapkamerTV' for nfandroidtv integration not ready yet: Failed to connect; Retrying in background
2022-05-07 20:03:50 ERROR (MainThread) [aiohttp.server] Error handling request
Traceback (most recent call last):
  File "/usr/local/lib/python3.9/site-packages/aiohttp/web_protocol.py", line 435, in _handle_request
    resp = await request_handler(request)
  File "/usr/local/lib/python3.9/site-packages/aiohttp/web_app.py", line 504, in _handle
    resp = await handler(request)
  File "/usr/local/lib/python3.9/site-packages/aiohttp/web_middlewares.py", line 117, in impl
    return await handler(request)
  File "/usr/src/homeassistant/homeassistant/components/http/security_filter.py", line 60, in security_filter_middleware
    return await handler(request)
  File "/usr/src/homeassistant/homeassistant/components/http/forwarded.py", line 100, in forwarded_middleware
    return await handler(request)
  File "/usr/src/homeassistant/homeassistant/components/http/request_context.py", line 28, in request_context_middleware
    return await handler(request)
  File "/usr/src/homeassistant/homeassistant/components/http/ban.py", line 79, in ban_middleware
    return await handler(request)
  File "/usr/src/homeassistant/homeassistant/components/http/auth.py", line 219, in auth_middleware
    return await handler(request)
  File "/usr/src/homeassistant/homeassistant/components/http/view.py", line 137, in handle
    result = await result
  File "/usr/src/homeassistant/homeassistant/components/websocket_api/http.py", line 45, in get
    return await WebSocketHandler(request.app["hass"], request).async_handle()
  File "/usr/src/homeassistant/homeassistant/components/websocket_api/http.py", line 146, in async_handle
    await wsock.prepare(request)
  File "/usr/local/lib/python3.9/site-packages/aiohttp/web_ws.py", line 138, in prepare
    payload_writer = await super().prepare(request)
  File "/usr/local/lib/python3.9/site-packages/aiohttp/web_response.py", line 421, in prepare
    return await self._start(request)
  File "/usr/local/lib/python3.9/site-packages/aiohttp/web_response.py", line 429, in _start
    await self._write_headers()
  File "/usr/local/lib/python3.9/site-packages/aiohttp/web_response.py", line 502, in _write_headers
    await writer.write_headers(status_line, self._headers)
  File "/usr/local/lib/python3.9/site-packages/aiohttp/http_writer.py", line 131, in write_headers
    self._write(buf)
  File "/usr/local/lib/python3.9/site-packages/aiohttp/http_writer.py", line 76, in _write
    raise ConnectionResetError("Cannot write to closing transport")
ConnectionResetError: Cannot write to closing transport
2022-05-07 20:04:40 WARNING (MainThread) [homeassistant.bootstrap] Waiting on integrations to complete setup: fritz

I'm afraid that stacktrace is not from Music Assistant.
I'll do some testing to see if I can found out what's going on. I've only published this integration today (after 3 years of work) so sure there is still a bug somewhere ;-)

I fully understand :-)
The fact it can be tried in parallel with my current Spotify solution convinced me to give it a try immediately.
Let me know if I can give more info. I have limited all logging to warnings/errors only ( to limit the logging). But I can temporary enable detailed logging if you indicate what to enable:
logger:
  default: warning
  logs:
    fritzconnection: info

Maybe somthing like: custom_components.mass?

Yeah, try to enable (info or debug) logging for custom_components.mass and 'music_assistant'.
Normally I'd expect the error you mentioned above to be printed in full in the log.

I will give it a run :-) and come back

Hi
Changed the loggings to debug. At 21:10 I tried to reconfigure. That only reulsted in one line mass logging:
2022-05-07 21:04:07 WARNING (MainThread) [homeassistant.config_entries] Config entry 'WoonkamerTV' for nfandroidtv integration not ready yet: Failed to connect; Retrying in background
2022-05-07 21:04:07 WARNING (MainThread) [homeassistant.config_entries] Config entry 'SlaapkamerTV' for nfandroidtv integration not ready yet: Failed to connect; Retrying in background
2022-05-07 21:04:13 WARNING (MainThread) [homeassistant.setup] Setup of input_select is taking over 10 seconds.
2022-05-07 21:04:15 INFO (MainThread) [music_assistant.mass] Stop called, cleaning up...
2022-05-07 21:04:15 WARNING (MainThread) [homeassistant.config_entries] Config entry 'Music Assistant' for mass integration not ready yet: 'NoneType' object is not subscriptable; Retrying in background
2022-05-07 21:05:04 INFO (MainThread) [music_assistant.mass] Stop called, cleaning up...
2022-05-07 21:05:06 ERROR (MainThread) [custom_components.hacs] <HacsTask prosess_queue> failed: <Integration r-renato/hass-xiaomi-mi-flora-and-flower-care> Repository has been requested to be removed.
2022-05-07 21:05:14 INFO (MainThread) [music_assistant.mass] Stop called, cleaning up...
2022-05-07 21:05:19 WARNING (MainThread) [zigpy_deconz.api] No response to 'Command.aps_data_indication' command with seq id '0x84'
2022-05-07 21:05:34 INFO (MainThread) [music_assistant.mass] Stop called, cleaning up...
2022-05-07 21:06:14 INFO (MainThread) [music_assistant.mass] Stop called, cleaning up...
2022-05-07 21:06:19 WARNING (MainThread) [zigpy_deconz.api] No response to 'Command.aps_data_indication' command with seq id '0x93'
2022-05-07 21:07:34 INFO (MainThread) [music_assistant.mass] Stop called, cleaning up...
2022-05-07 21:08:54 INFO (MainThread) [music_assistant.mass] Stop called, cleaning up...
2022-05-07 21:09:19 WARNING (MainThread) [zigpy_deconz.api] No response to 'Command.aps_data_indication' command with seq id '0xc9'
2022-05-07 21:09:49 WARNING (MainThread) [zigpy_deconz.api] No response to 'Command.aps_data_indication' command with seq id '0xcf'
2022-05-07 21:10:14 INFO (MainThread) [music_assistant.mass] Stop called, cleaning up...
111

I reproduced it. Only happens on fresh setup. I will fix it now and provide update

Thanks. Glad you can reproduce. Looking forward for the update.
Have a nice day

I have released version 1.0.8 just now which has the fix for this issue. Thanks!

Great and really fast. I will give it a try :-)

I'm in :-)

Cool! Let me know if you find something else


Place android build shaders into build and disallow in-source builds

One alternative solution to https://github.com/google/bigwheels/issues/349

I'm fine with this.
I tried playing around with the gradle/cmake to avoid hard-coding the build directory, but there is one step I cannot solve: the gradle appends a "random" hash to the staging directory path. This is outside of the control of gradle, and before cmake...
This absolute path is suboptimal, but I haven't found a better solution either, so I'm fine with this 😊

Can we have it in build_android / android_build? Local cmake/tools usually defaults to /build

Can we have it in build_android / android_build? Local cmake/tools usually defaults to /build

We can have any path so both build_android, android_build are fine too. The build artifacts are currently being written to build/android, and with this change the assets will be written to build/assets which will then use the same folder for assets for both android and desktop (provided you use build directory), and I thought it might be nice to have the same assets folder for both? Do you think there might be problems with that? We can definitely switch to Android using build_android for both assets and build outputs

it might be nice to have the same assets folder for both

Android build might pick up different configuration than desktop build. That might cause problem when debugging
p.s. I guess build/android/assets should also works fine.

it might be nice to have the same assets folder for both

Android build might pick up different configuration than desktop build. That might cause problem when debugging
p.s. I guess build/android/assets should also works fine.

Changed to build_android, probably cleaner to use a separate folder


Support for new operators introduced in 4.1.0

Resolving Issue #117

@robert-phe sorry for the extremely long delay. We're so back! Thanks for the PR.


FHS convention: local libs should be placed in /usr/local/lib

Usually on distros all files in /usr/lib are managed by the package managers. Perhaps it's better to follow convention to place it in /usr/local/lib?
https://github.com/d3cod3/Mosaic-Installer/blob/e7e377adfcd0a36ab97f2b89a5ea3829118055f6/mosaic_installer.sh#L402

Hi again, you're right, i'll change it right away and push the changes.
thanks for the help!


docs: redirect http -> https

SUMMARY
because   does NOT look good!

I'd say merge this and let's get back to the xits


feat: Tag component

Tag Component
References:
Ant Design : https://ant.design/components/tag
Vercel: https://vercel.com/design/tag
UI Patterns: http://ui-patterns.com/patterns/Tag
Although Tag component looks same as our Button component with icons on both sides and content. Use cases and the API can be a bit different since Tag is a closable/removable item.
When to use:

Organizing/Categorizing based on tags
Adding filters with removable tags

Props

closable - boolean | default - false
prefix - ReactNode | default - null
suffix - ReactNode | default - <CloseIcon />
onClose - (id) => void | callback to fire on close icon is clicked

By default Tag component will have x close icon in the suffix if the closable prop is true.
API
<Tag prefix={<UserIcon />} closable onClose={() => alert(1)}>
  Tag
</Tag>

Change suffix icon
<Tag suffix={<UserIcon />} closable onClose={() => alert(1)}>
  Tag
</Tag>

TagGroup
Reference: https://vercel.com/design/tag
We can also add a TagGroup component to handle the keyboard logic for the multiple tags
Ideally TagGroup will be a composite which would allows users to navigate the tags icons with ArrowLeft/Right
Note: The state logic for removing/adding the tags will be handled by the user not us.
Props

allowArrowNavigation - boolean | if true will enable arrow navigation for the close icons

const [tags, setTags] = useState(['One', 'Two', 'Three'])
return (
  <TagGroup>
    {tags.map(tag => (
      <Tag
        id={tag}
        key={tag}
        onClose={id => setTags(tags.filter(t => t !== id))}
  >
        {tag}
      </Tag>
    ))}
  </TagGroup>
)

Allow styling default close icon 🤔

Allow styling default close icon 🤔

If they want to style the default close icon they can provide their own close icon that's the idea here.

reduces props
simpler api
more flexiblity


Adding draft requirements page

@capsulecorplab, please verify and let me know if there are any issues

I would also do a rebase and drop the merge commit, but that's just personal preference.


Error when loading the recorder chrome extension

Expected Behavior
Can use the extension normally
Actual Behavior

Steps to Reproduce the Problem

Install the extension https://chrome.google.com/webstore/detail/codeceptjs-chrome-recorde/ojkfinikejhpchjenhafdlcmgaiaaclg
Try to export the steps after the recording

source code:
https://github.com/PeterNgTr/codeceptjs-recorder-extension
https://github.com/PeterNgTr/codeceptjs-chrome-recorder

Hey, it looks like you are not rolling up the JS code in the extension.

@OrKoN could you show me the documentation or some leads that I may follow? First time developing the extension so you know. 😸

I have built the version locally from https://github.com/PeterNgTr/codeceptjs-recorder-extension and it works fine for me except from two problems: 1) icons are missing: defined in the manifest but no icon files 2) the published extension error looks like a problem with the code that was uploaded: it looks like source was uploaded instead of the dist folder.

Thanks @OrKoN for looking into it. I sorted out the issue. Will try another publishing.

Hi @OrKoN out of curiosity, this preview is coming from Chrome itself or anything I could make to have this feature on. Looks convenient for me.

The preview is a Chrome feature, no need for additional actions. I think it was released in Chrome 110.


[crash] textDocument/definition request throws

.root {
    background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAQAAAAECAYAAACp8Z5+AAAAH0lEQVQYV2NkQAX/GZH4/xkYGBhhAmAOSBJEwDkgAQCCrgQEjpMcPgAAAABJRU5ErkJggg==);

    background: rgb(0, 0, 0);
}

open in vscode.
hold ctrl and hover the url(...).
extension crashes with:

[Error - 1:47:41 PM] Request textDocument/definition failed.
  Message: Request textDocument/definition failed with message: Invalid regular expression: /value\(\s*xkYGBhhAmAOSBJEwDkgAQCCrgQEjpMcPgAAAABJRU5ErkJggg==)/: Unmatched ')'
  Code: -32603

hold ctrl and hover the rgb(...).
extension crashes with:

[Error - 1:50:52 PM] Request textDocument/definition failed.
  Message: Request textDocument/definition failed with message: Cannot read property 'resolved' of undefined
  Code: -32603

Does not reproduce.


Stripe webhook failing with Vercel Supabase extention

Hi, I have the Supabase extension running and my app working locally and on Vecel. I also have Supabase set up to work locally and with the Vercel cloud env config.
When I run the preview webhook on my local and update the products (with the env vars config for the cloud DB) and the locally generated secret, it works, the products are updated on my Supabase cloud DB.
However, the Stripe Server Webhook just keeps throwing an error. I've set STRIPE_WEBHOOK_SECRET in my Vercel env vars and have repeatedly deleted, updated, and renewed the secret on the webhook and in Vercel, but I keep getting the same error.
Webhook Error: No signatures found matching the expected signature for payload. Are you passing the raw request body you received from Stripe?
Learn more about webhook signing and explore webhook integration examples for various frameworks at https://github.com/stripe/stripe-node#webhook-signing
The thing is, this was working, but then I moved to a copy of the DB in another Supabase account, everything else works fine, it's just this webhook. I also re-ran the extension as part of this migration. I don't think this has anything to do with it.
Any ideas, please?

When you update the env var, do you redeploy your project? In Vercel, env vars aren't automatically updated in the deployment, you need to redeploy in order for env var changes to be applied.

You have to make sure that you using your localhost route, I had the same issue. When you run the webhooks command in stripe make sure it matches your endpoint as such: localhost:3000/api/webhooks
Second I would try printing out your env var to see what is actually being passed through. I noticed I added a comment after my key and that messed it up because env vars capture comments after them.

thanks, @gooodsoil, the localhost webhook is working using the is actually working using: stripe listen --forward-to=localhost:3000/api/webhooks
Its the vercel webhook that isn't working, even though I have the STRIPE_WEBHOOK_SECRET set as an env var in Vercel and it 100% matches whats in Stripe under the Reveal Secret.
I might try and set it via the CLI and see if that works. When I print out via the CLI it doesn't provide the values, just the keys and the dates updated.

I had the same issue and it was a space in the env variables on vercel. Carefully paste it into vercel and make sure there are no spaces!

thanks @micheltucker , just checked and I have no spaces, honestly Im at my wits end :) Ive left no stone unturned.

@ripuser did you find a solution?

thanks, @micheltucker , Im using App Router, and I don't have any reference to bodyParser in the code.
@gooodsoil Unfortunately not, however, I've just spotted all the logic in the repo under helpers that running the updates:
https://github.com/vercel/nextjs-subscription-payments/tree/main/utils
I'm going to dive into this and debug this to see what I can find.
thanks!

I managed to resolve my issue.
What would be useful in the readme is a bit of a description on how things work in the code base. Its not clear what the role of the Supabase extension is or that the actual update logic is present in the code along with the webhook handler. Once I found this I could start to debug.
The second part is I had 2 issues, one was the webhook wasn't listening to the correct branch handler, so when I was deploying, the env vars were not updating on the same branch as the webhook was firing to (400 error), and the second was I had some auth set on the preview env in Vercel so I was getting a 401.
I figured out the branch issue pretty quickly when I was adding logging and it wasn't appearing in the Vercel logs.
Thanks all for the help,
Matt

Hey @mattmuller , can you share specifically what you did to fix the error? I have the same problem!

I spent a shameful amount of time dealing with this and just resolved it.
It seems there are 2 webhook secrets:

the one provided in the sample code when setting up the new endpoint

the other after the endpoint is created:

They are different.
(1) works in local development and (2) works when deployed to Vercel. IT EVEN SAYS IT IN THE COMMENT ABOVE (1).
I'm not sure what this is about and I tested several times to ensure I'm not hallucinating and can confirm, that's how it is.
Cheers,
Abe

Oh yes, that old chestnut 😅
On Sat, 9 Sep 2023 at 16:30, Abe Isleem @.***> wrote:

I spent a shameful amount of time dealing with this and just resolved it.
It seems there are 2 webhook secrets:

the one provided in the sample code when setting up the new endpoint
[image: image]
https://user-images.githubusercontent.com/29489334/266788818-8a722dc7-b1bb-47a8-ad1b-8f7a0887fe1c.png
the other after the endpoint is created:
[image: image]
https://user-images.githubusercontent.com/29489334/266789046-dbfa9e58-21bb-47ea-a91d-d03d18af3474.png

They are different.
(1) works in local development and (2) works when deployed to Vercel.
IT EVEN SAYS IT IN THE COMMENT ABOVE (1).
I'm not sure what this is about and I tested several times to ensure I'm
not hallucinating and can confirm, that's how it is.
Cheers,
Abe
—
Reply to this email directly, view it on GitHub
https://github.com/vercel/nextjs-subscription-payments/issues/240#issuecomment-1712537687,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AABB3DVHJNJAF2IGCMYPAOLXZSDRHANCNFSM6AAAAAA3X5CSRA
.
You are receiving this because you were mentioned.Message ID:
@.***>

For me, when I pasted the key, it added a new line, which caused the error. I removed the new line, and the error was fixed.

This worked for me .
change headers().get'Stripe-Signature') line to
const sig = req.headers.get('stripe-signature') as string;


[Feature Request] schedule backup periodically and upload to google-drive

Hi there!
First thanks for this great plugin.
I would like to know if you think it's possible to add a feature to schedule backup periodically and add a google drive upload option such has this Wordpress plugin:
https://www.elegantthemes.com/blog/tips-tricks/how-to-create-a-google-drive-backup-of-your-wordpress-website
What do you think about it?

Sorry for the late reply. Some remote storage possibilities would be great. Yes, definitely. I will have a look into this.

That's great thanks 👍

If you need a Nextcloud server to use for development of a remote storage endpoint, please let me know and I can provide some space for you @leotiger .

@leotiger if you DM me on the discord server, I can get you credentials for a WebDav server to test with, if you want.  I'd love to have the ability to save to WebDav.


Benchmarking against React, Morphdom

You should benchmark your rendering against morphdom and react to see differences. I think it would be good information.

That's actually a good idea @SilentCicero , I will prepare something.

@wavesoft checkout how Patrick does it here:
https://github.com/patrick-steele-idem/morphdom#benchmarks
He is testing against virtual-dom.
May be easiest to wrap H in React.createElement then run comparison on the same code.

I would recommend we test against: Morphom, Virtual Dom, and React. Use the tests Patrick used there.

+1 it would be great to see how this framework compares with others


overriding stored language via URL

I had the following request:
To be able to provide a link to my site that will "force" a specific language based on the URL.
So I need  a clear what to define the order in what the language is resolve and in my case it should be:

If URL has language then use language extracted from URL [and store it] (should allow different schemata for embedding the language in the URL (e.g. - as sub domain, as path fragment, as query param or even just generally as a sub string)
If the language was previously stored use that language.
use some default language

I do understand that some people would prefer to switch 1 and 2 but I think having 1 as a higher priority is more easy to understand an use.
possibly there should be a way to specify if you want to use 1 before 2 or after if (or even have both - such as saying if I have "forceLang" query param in the URL it should be the strongest, then use stored value if exists then use "lang" query param from the URL and if none of those helps use "en".
I was trying to implement reading the language from the URL on my own but I had the following issue:
When using localStorage it would seem that by design it forces the language to what was already stored. So trying to just read the URL and use the language from it would cause double display (flicker) - first of the previously used language and then of the newly "used" language (parsed from the URL).
I could not drop the $localStorage because I DID want to to store the language from the URL.
Eventually what I did was to create a new angular-translate-storage-local-with-url-override.js uses the $localStorage as a dependency. on first request to read from $STORAGE_KEY it looks into the URL and if it finds any of my site's supported languages it would store that language using the $localStorage.
This is the code it uses:
angular.module('pascalprecht.translate').factory('$translateLocalWithURLOverrideStorage', [
  '$window',
  '$translateLocalStorage',
  '$STORAGE_KEY',
  function ($window, $translateLocalStorage,$STORAGE_KEY) {
	var store=$translateLocalStorage;

	var readFromURLOnce=false;
    var localWidthURLOverrideStorageAdapter = function () {
    	if (readFromURLOnce) return store;
    	else return {
    		get:function(name) {
    			if ((readFromURLOnce==false) && (name == $STORAGE_KEY)) {
    				for ( locale in {'en_US':1,'ru_RU':1,'he_IL':1}) {
    					if (document.location.href.indexOf(locale)!=-1) {
    						//alert('overriding with' + locale);
    						readFromURLOnce=true;
    						store.set($STORAGE_KEY,locale);
    						break;
    					}
    				}
    			}
   				return store.get(name);
    		},
			set:function(name,value) {
				store.set(name,value);
				readFromURLOnce=true;
			}
    	};
    }();

    return localWidthURLOverrideStorageAdapter;
  }
]);

even though this works for me I know it is not written for general use...
a public solution might go along the lines of providing a clearer set of prioritized language resolvers      as I previously mentioned. or could be one of the following [which would help circumvent the current issue]:
Allowing a write only storage model so that the site can use something like this within it config:
if (null!=(lang=extractLangFromURL())) {
        $translateProvider.useWriteOnlyLocalStorage();
        $translateProvider.use(lang);
}
else {
        $translateProvider.useLocalStorage();
}

[this has the disadvantage of having to include the JS files of both storage systems]
Allowing a language override to be passed to the storage model so that the site can use something like this within it config:
if (null!=(lang=extractLangFromURL())) {
        $translateProvider.useLocalStorage(lang);
}
else {
        $translateProvider.useLocalStorage();
}

or have useLocalStorage also handle null gracefully and use:
$translateProvider.useLocalStorage(extractLangFromURL());

or even allowing to provide a function that will look into the URL and determine if the language needs to be overridden.
$translateProvider.useLocalStorage(extractLocalFromURL);

I hope this is clear enough.

Closed due inactivity.
The specific feature "overriding stored language via URL" can be done by the user/developer on its own aligned the corresponding configuration of angular-translate. We are not against a contribution in general, but I'm not seeing the benefit right now.


Legacy PHP < 5.4 SEGFAULTs when reading from pipes

While working on react/child-process, I noticed occasional, but reproducible SEGFAULTs for really old PHP versions (< 5.4). I've managed to work around this in https://github.com/reactphp/child-process/pull/29, but this actually boils down to an issue in this component when instantiating a new Stream with a pipe stream. Here's the gist of the broken code:
$s = popen('echo test', 'r');

stream_set_blocking($s, 0);
stream_set_read_buffer($s, 0);

$data = stream_get_contents($s, 8000);
var_dump($data);

Or the same issue when using the STDIN pipe:
$s = STDIN;

stream_set_blocking($s, 0);
stream_set_read_buffer($s, 0);

$data = stream_get_contents($s, 8000);
var_dump($data);

Apparently, this reads beyond the resource limits and returns a corrupted string value where strlen($data) === -1.

It looks like the first example might in fact exhibit a race condition, while the second one can be used to reproduce this always when this is an interactive terminal. Also, if you explicitly close the input pipe via php second <&-, it crashed reproducible. Once you start piping stuff into the STDIN such as echo test | php second.php things start to work again, while interactive streams such as cat | php second.php keep crashing.
I've checked for a common denominator between the affected streams with fstat() and stream_get_meta_data(), but couldn't find a reliable source. I have only observed crashs on pipe streams, but while some pipe streams crash, others work just fine.
As such, we MAY want to look into simply enabling the read buffer again for ALL pipes, as I've not observed any side-effects of this. The read buffer was originally disabled via https://github.com/reactphp/stream/pull/20, but I've not managed to reproduce the original issue with pipe streams anyway.
Keep in mind that this only affected legacy PHP < 5.4, so it's not exactly the most pressing issue.

Sounds like a good reason to drop support for PHP < 5.4 :smile:


Windows flags the recent release as a trojan

If it isnt a virus could i get an explanation as to why i dont wanna risk it

Well first of all this project is open source look through the code yourself. It is a standard internal cheat, it does things that Trojans and viruses would do like manipulate memory and hook functions.
https://www.virustotal.com/gui/file/26cdfe3d99abecf591ca19604d8207f5efa0be67e33be14c69362127a98ffc0d?nocache=1
If you look here it flags it as a game hack.
But simply put of you don't trust it or don't want to risk it compile it yourself.


Fix: Spellbook in layer2 wasnt seen by Sphere (issue #951)

Thanks to @Jhobean and  @Tolokio, they made this fix. Apparently it should be possible to fix it in better way, but this would need someone more skillfull.
I tested it, and now the spellbook works in Layer 1, Layer 2 or from backpack.
#951
PS: the commits are a bit messy, still figuring out how to work with git and reversing changes, then pushing or doing PR, sorry for that.
🤠

Closing, since discussion has moved on #955.


Check presence of SSH keys for install user

During install process a set of ssh keys a re by default generated  for the install user.
1/Check first if install user exists
2/If user exists, check if ssh keys are present
3/if ssh keys are present, keep and reuse them  to prevent reexchanging keys with wod appliances

If using the -k option for build-vagrant or install script, then we force explicitely the receration of the SSH keys.
Otherwise, if key exists it's preserved with other .ssh conf files. If not, then even if the account exists, they are generated.


Write annotations for notebook 05 (going modular)

This notebook/section should turn the functions used in 04 into scripts that can be used for the rest of the course.
Should also make sure the model that comes out of 05, which will be a continuation of the model in 04 can fit the data of pizza, steak, sushi reasonably well.

Done, see here: https://www.learnpytorch.io/05_pytorch_going_modular/


Date not matching with weekday if language not english

Version of flutter_calendar_carousel
1.3.18
Expected behavior
I display a week format calendar widget starting with monday. This works well if english is set as language.

Actual behavior
If set to german the actual date is one day behind. See screenshot:

flutter doctor result (run flutter doctor in terminal)
Doctor summary (to see all details, run flutter doctor -v):
[√] Flutter (Channel stable, v1.5.4-hotfix.2, on Microsoft Windows [Version 10.0.17763.557], locale de-AT)
[√] Android toolchain - develop for Android devices (Android SDK version 28.0.3)
[√] Android Studio (version 3.2)
[√] VS Code (version 1.35.1)
[√] Connected device (1 available)
• No issues found!
Steps to reproduce the behavior
Change locale to german (or maybe another language, too)

Looks bit similar with #123.
I'll look on this.

This issue also happens in "en" mode.


etcher: 1.5.122 -> 1.6.0

Automatic update generated by nixpkgs-update tools. This update was made based on information from https://github.com/balena-io/etcher/releases.
meta.description for etcher is: "Flash OS images to SD cards and USB drives, safely and easily"
meta.homepage for etcher is: "https://etcher.io/"
meta.changelog for etcher is: ""
Updates performed

Version update

To inspect upstream changes

Release on GitHub

Compare changes on GitHub

Impact

Checks done (click to expand)

built on NixOS
The tests defined in passthru.tests, if any, passed
Warning: no invocation of /nix/store/jirnsfk8z7s1kfg7x0kah6mnbl9x0gy5-etcher-1.6.0/bin/etcher had a zero exit code or showed the expected version
0 of 1 passed binary check by having a zero exit code.
0 of 1 passed binary check by having the new version present in output.
found 1.6.0 with grep in /nix/store/jirnsfk8z7s1kfg7x0kah6mnbl9x0gy5-etcher-1.6.0
found 1.6.0 in filename of file in /nix/store/jirnsfk8z7s1kfg7x0kah6mnbl9x0gy5-etcher-1.6.0

Rebuild report (if merged into master) (click to expand)

2 total rebuild path(s)

1 package rebuild(s)

1 x86_64-linux rebuild(s)
1 i686-linux rebuild(s)
0 x86_64-darwin rebuild(s)
0 aarch64-linux rebuild(s)

First fifty rebuilds by attrpath
etcher

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/jirnsfk8z7s1kfg7x0kah6mnbl9x0gy5-etcher-1.6.0 \
  --option binary-caches 'https://cache.nixos.org/ https://nix-community.cachix.org/' \
  --option trusted-public-keys '
  nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

(The Cachix cache is only trusted for this store-path realization.)
For the Cachix download to work, your user must be in the trusted-users list or you can use sudo since root is effectively trusted.
Or, build yourself:
nix-build -A etcher https://github.com/r-ryantm/nixpkgs/archive/d91ff780504281636715b293819c2ebc6224cd43.tar.gz

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/jirnsfk8z7s1kfg7x0kah6mnbl9x0gy5-etcher-1.6.0
ls -la /nix/store/jirnsfk8z7s1kfg7x0kah6mnbl9x0gy5-etcher-1.6.0/bin

Pre-merge build results
We have automatically built all packages that will get rebuilt due to
this change.
This gives evidence on whether the upgrade will break dependent packages.
Note sometimes packages show up as failed to build independent of the
change, simply because they are already broken on the target branch.
Result of nixpkgs-review run on x86_64-linux 1

1 package built:

etcher

Maintainer pings
cc @Shou for testing.

@ofborg eval


Run Flowzone before e2e tests

Change-type: patch
Signed-off-by: Kyle Harding<EMAIL_ADDRESS>

@balena-ci I self-certify!


Document difference between two sizes in pdi table header

The table header in a pdt file has two numbers. For a sequential image table, they're both the number of images. For a matrix image table, the first is the total number of images, while the second is the number of images per row.
(The change at the end is just adding a final newline.)

good find!


Impossible to use data_readers.clj(c)

Expected Behavior
I have a data_readers.clj  at the top of my classpath, with the content
{t/inst my-data-readers-impl/instant}

I expect to be able to use #t/inst"..." in my code.
Current Behavior
The checkClojure phase tries to parse the file and obviously fails trying to resolve the t/inst symbol (namely with "No such namespace: t"). It should not parse the file.
(Perhaps Namespaces should just filter it out?)
INFO Compiling data-readers
ERROR Syntax error compiling at (data_readers.clj:0:0).
Syntax error compiling at (data_readers.clj:0:0).
No such namespace: t
...
at dev.clojurephant.plugin.common.internal.ClojureExecutor.exec(ClojureExecutor.java:30)
       at dev.clojurephant.plugin.common.internal.ClojureExecutor.exec(ClojureExecutor.java:25)
       at dev.clojurephant.plugin.clojure.tasks.ClojureCheck.check(ClojureCheck.java:119)

Steps to reproduce
Create clj-jobs/src/main/clojure/data_readers.clj.ignore with
{whatever/sym clojure.core/str}

and run gradlew test
Environment

clojurephant version: 0.5.0-alpha.5
Gradle version: 5.3
Java version: 1.8.0_192 (Oracle Corporation 25.192-b12)
OS version: Mac OS X 10.13.6 x86_64

Long delay, but a fix is incoming for this.

Awesome!
On Tue, 24 Dec 2019, 20:33 Andrew Oberstar<EMAIL_ADDRESS>wrote:

Closed #129 https://github.com/clojurephant/clojurephant/issues/129 via
f72609c
https://github.com/clojurephant/clojurephant/commit/f72609cc028d808fe1bd46534d60792c0291097c
.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/clojurephant/clojurephant/issues/129?email_source=notifications&email_token=AAEYSPR2ZBJ4BELLLTPTDG3Q2JPWTA5CNFSM4H7LW7A2YY3PNVWWK3TUL52HS4DFWZEXG43VMVCXMZLOORHG65DJMZUWGYLUNFXW5KTDN5WW2ZLOORPWSZGOVVEWVBI#event-2907269765,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAEYSPVFWDK27WWPXUUFCILQ2JPWTANCNFSM4H7LW7AQ
.


corrected typos and rephrased sentence

[x] I have read freeCodeCamp's contribution guidelines.
[x] My pull request has a descriptive title (not a vague title like Update index.md)
[x] My pull request targets the master branch of freeCodeCamp.
[x] None of my changes are plagiarized from another source without proper attribution.
[x] My article does not contain shortened URLs or affiliate links.

If your pull request closes a GitHub issue, replace the XXXXX below with the issue number.
Closes #XXXXX

Thank you @RBenBeach for your contribution and congratulations on your first PR merge to this repo! 🎉


[Issue] Crash while pulling resonnant Ore from storage

Hi,
here is the crash log : http://pastebin.com/GBvnijmm
By the way i have downgraded to 0.8.3 because the fix to resolve the storage drawers is working but as soon as you close and restart your SP save, the link between external storage and drawer controller doesn't work anymore (it needs the external storage to be removed and put back in place to work again  :'( )
Anyway you're doing an amazing job keep going ;)

This is already fixed for the next version (i've reworked the searchController stuff)
Thanks for reporting anyway


Auto merge Dependabot Workflow

Should be done, just have to wait until next PR from dependabot to confirm

Seems to not have worked. https://github.com/scoutmachine/web/pull/54

Yeah it didn't work again.

Deciding to remove it as of now - seems to not work globally.


Add AllowNullLiteral To FirestoreDocument

The document function returns null when the document is missing then when trying to use it raises a null pointer exception. To use a match doc with |null -> ... | _ -> ... syntax the type must be nullable, the FirestoreDocument type is not so type inference does not allow it and we get a compilation error. There may be a better way to deal with this situation. But adding the [<AllowNullLiteral>] works.
 let createOrUpdate<'a, 'b when 'a :> FirestoreDocument and 'a: not struct and 'a: null>
        collection
        id
        create
        update
        (obj: 'b)
        =
        let doc : 'a = document<'a> collection id

        match doc with
        | null ->
            obj
            |> create
            |> updateDocument collection id
            |> info "createDoc "
        | _ ->
            doc
            |> update obj
            |> updateDocument collection id
            |> info "updateDoc "

Hi @pre63, thank you for the interest in the project and the PR.
Although I am not sure if this is the right approach, it would solve the problem, but I generally dislike using null references in F# code.
I rather wrap the return value in an Option to pattern match on that.
 let createOrUpdate<'a, 'b when 'a :> FirestoreDocument and 'a: not struct and 'a: null>
        collection
        id
        create
        update
        (obj: 'b)
        =
        let doc : 'a = document<'a> collection id

        match doc with
        | None ->
            obj
            |> create
            |> updateDocument collection id
            |> info "createDoc "
        | Some data ->
            data
            |> update obj
            |> updateDocument collection id
            |> info "updateDoc "

Essentially turning the document function from:
document :: string -> string -> (a | null)
to
document :: string -> string -> Option a.
This should be done to all other null propagating functions aswell.
What do you think?

Hello mrbandler, I agree with your the optionality is a better design for the api. If you want to propose an implementation for the document  function I'm happy to generalize and test it. Cheers.


Deploy a version controlled application

When running the ansible command
ansible app -b -m git -a "repo=git://example.com/path/to/repo.git dest=/opt/myapp update=yes version=1.2.4"
The ansible command returns an error that the network is unreachable.

Your error is because you're trying to clone from 'git://example.com/' which is a fictitious site.  For a functional test, you might want to use https://github.com/geerlingguy/ansible-for-devops.git or https://github.com/geerlingguy/youtube.git instead.
Since this is not a bug in the "Ansible for DevOps" book or examples (that I can find), I suggest @geerlingguy close this as "Not a bug".
@objective-cnut you should look on-line for general Ansible mailing lists and news groups for problems like this in the future and save the Git repositories for reporting genuine errors in the code contained within them.

My apologies.


support optional elements and attributes

This is my attempt to fix #22. Does it make sense to you?

LGTM, thank you very much :)

Nice. Thanks!
Did we really need the new operator :=? though?

In the corresponding issue I have looked at the link from scalajs-react and implemented it with the same operator, which makes the semantics explicit. Overloading the := operator would also be fine with me; but trying it now, I am also not really able to convince the compiler to use the option overload :)

Being explicit might be a good idea actually. But... wouldn't having OptionIsEmptyModifier in scope make it work with := ? So that I could choose to import that if I want to use the normal operator and be implicit?

Well, the implicit is already in scope, you can already write it like so:
input(
  Option("bar").map(data.foo := _),
  Option.empty.map(data.bar := _)
)

However, I also tried importing the implicit but did not help. Ideas welcome!

Sorry, I slipped while thinking :-)


Question on logic

[$(date +%d) -le 15] == Won't run unless it's equal or less than the 15th day (3rd week). Meaning it will run every 3rd Sundays(7) of the month at 6:00 a.m. Pacific (UTC -8).

While technically correct, the intent implied by this document is not going to be satisfied by the crontab entry presented.
As written, the "update command" will occur on every Sunday where the calendar day is less than or equal to 15.  This will happen at least twice in every month.  If the month begins on a Sunday, the conditions will be satisfied 3 times - on the 1st, the 8th, and the 15th.
To have the update occur only on the third Sunday of every month, you can use this simpler entry:
0 6 15-21 * sun sudo **update command**

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

ID: 19248657-fdd4-e6d5-f61e-828181b38817
Version Independent ID: 2244848d-24df-ce71-4e36-89cf067eedd5
Content: How to schedule an update of the Microsoft Defender for Endpoint (Linux)
Content Source: microsoft-365/security/defender-endpoint/linux-update-mde-linux.md
Product: m365-security
Technology: mde
GitHub Login: @Dansimp
Microsoft Alias: dansimp

@Dansimp Please help us in resolving this issue. Thanks.

Upon further investigation, I discovered that my assumption of how cron works was incorrect  My changes will not work as I suggested it would.  (If the date (1-31) is not a wildcard, then the day of the week (0-6) becomes  a logical "OR".)
https://crontab.guru/cron-bug.html
My apologies, I would like to close this request.


Record incrementally, using a configurable timeslice (default is 1000 ms)

Fixes #64

Thanks for the PR and letting me know about this issue!
I would prefer the API to mirror the Web API as much as possible, so keeping the timeSlice value optional without a default value would then allow anyone who needs this param to use it without enforcing a value. I would also rather expose a complete Blob of the full recording rather than an array of blobs, which is tied more to the context of when timeSlice is defined.
Will look into this among other small improvements for the next version bump.


swift-mmio

swift-mmio is suitable for swift_os.
However, I have not succeeded in building swift_os with swift-mmio.
On the other hand, swift-embedded-examples has succeeded in doing it. I don't know what's the difference between them.
Logs:
$ git diff
diff --git a/Package.swift b/Package.swift
index 9e41ccc..253a73d 100644
--- a/Package.swift
+++ b/Package.swift
@@ -7,12 +7,16 @@ let package = Package(
     products: [
         .library(name: "Kernel", type: .static, targets: ["Kernel"])
     ],
+    dependencies: [
+        .package(url: "https://github.com/apple/swift-mmio", branch: "swift-embedded-examples")
+    ],
     targets: [
         .target(
             name: "Kernel",
             dependencies: [
                 "Volatile",
                 "MailboxMessage",
+                .product(name: "MMIO", package: "swift-mmio"),
             ],
             swiftSettings: [
                 .enableExperimentalFeature("Embedded"),
$ make
clang -x assembler -target aarch64-none-none-elf -c boot.s -o boot.o
clang -x assembler -target aarch64-none-none-elf -c asmfunc.s -o asmfunc.o
swift build --triple aarch64-none-none-elf -c release
Building for production...
<unknown>:0: error: unable to load standard library for target 'aarch64-none-none-elf'
<unknown>:0: error: unable to load standard library for target 'aarch64-none-none-elf'

make: *** [Makefile:25: swift] Error 1

I built with --static-swift-stdlib and nothing changed.

On Linux, stm32-uart-echo cannot be built with make too. So swift-mmio might be usable only on macOS.
$ swift --version
Swift version 6.0-dev (LLVM 3b959ba388a8ad9, Swift bb339b8f50f01fb)
Target: aarch64-unknown-linux-gnu
$ git diff
diff --git a/stm32-uart-echo/Makefile b/stm32-uart-echo/Makefile
index 5d1c929..df6269c 100755
--- a/stm32-uart-echo/Makefile
+++ b/stm32-uart-echo/Makefile
@@ -17,10 +17,10 @@ BUILDROOT := $(SRCROOT)/.build/release

 # Setup tools and build flags
 ARCH := armv7em
-TARGET := $(ARCH)-apple-none-macho
+TARGET := $(ARCH)-none-none-eabi
 VECTORS_ADDRESS=-0x00200000

-SWIFT_BUILD := $(shell xcrun -f swift-build)
+SWIFT_BUILD := swift build
 MACHO2BIN := $(SRCROOT)/../Tools/macho2bin.py

 .PHONY: build
diff --git a/stm32-uart-echo/Sources/Support/startup.S b/stm32-uart-echo/Sources/Support/startup.S
index 6e8c7c2..4328465 100644
--- a/stm32-uart-echo/Sources/Support/startup.S
+++ b/stm32-uart-echo/Sources/Support/startup.S
@@ -14,7 +14,6 @@

   .text
   .thumb
-  .section __TEXT,__text,regular,pure_instructions
   .syntax unified

 // reset handler, main entry point
$ make
...
<unknown>:0: error: unable to load standard library for target 'armv7em-none-none-eabi'
<unknown>:0: error: unable to load standard library for target 'armv7em-none-none-eabi'
make: *** [Makefile:29: build] Error 1


Incorrect line numbers in Python interactive window while showing the error(s)

Issue Type: Bug
The code line # and the traceback line numbers for ValueError do not match in Python interactive window.
Step to reproduce:

Execute below script
Check the ValueError in python interactive window
In code number_of_frames = int(sys.argv[1]) is at line#34, but in interactive window shows error at line#30

Start of script
""" RollDieDynamic.py """
"""Dynamically graphing frequencies of die rolls."""
import matplotlib.pyplot as plt
from matplotlib import animation
import numpy as np
import seaborn as sns
import random
import sys
def update(frame_number, rolls, faces, frequencies):
"""Configures bar plot contents for each animation frame."""
""" roll die and update frequencies """
for i in range(rolls):
frequencies[random.randrange(1,7) -1 ] += 1
""" reconfigure plot for updated die frequencies """
plt.cla() # clear old contents of figure
axes = sns.barplot(x=faces, y=frequencies, palette='bright')
axes.set_title(f'Die Frequncies for {sum(frequencies):,} Rolls')
axes.set(xlabel='Die Value', ylabel='Frequency')
axes.set_ylim(top=max(frequencies) * 1.10)

""" display frequncy & percentage ablive each patch (bar) """
for bar, frequency in zip(axes.patches, frequencies):
    text_x = bar.get_x() + bar.get_width() / 2
    text_y = bar.get_height()
    text = f'{frequency:,}\n{frequency/sum(frequencies):.3%}'
    axes.text(text_x, text_y, text, ha='center', va='bottom')

"""read command line arguments for the number of frames and rolls per frame"""
number_of_frames = int(sys.argv[1])
rolls_per_frame = int(sys.argv[2])
sns.set_style('whitegrid')
figure = plt.figure('Rolling a Six-sided Die')
values = list(range(1,7))
frequencies = [0] * 6
""" configure and start the animation that calls function update """
die_animation = animation.FuncAnimation(
figure, update, repeat = False, frames=number_of_frames, intervals=33,
fargs=(rolls_per_frame, values, frequencies))
plt.show() # display window
End of Script
Extension version: 2020.5.80290
VS Code version: Code 1.45.1 (5763d909d5f12fe19f215cbfdd29a91c0fa9208a, 2020-05-14T08:33:47.663Z)
OS version: Darwin x64 19.5.0

System Info

Item
Value

CPUs
Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz (8 x 2700)

GPU Status
2d_canvas: enabledflash_3d: enabledflash_stage3d: enabledflash_stage3d_baseline: enabledgpu_compositing: enabledmetal: disabled_offmultiple_raster_threads: enabled_onoop_rasterization: disabled_offprotected_video_decode: unavailable_offrasterization: enabledskia_renderer: disabled_off_okvideo_decode: enabledviz_display_compositor: enabled_onviz_hit_test_surface_layer: disabled_off_okwebgl: enabledwebgl2: enabled

Load (avg)
2, 2, 2

Memory (System)
16.00GB (2.11GB free)

Process Argv

Screen Reader
no

VM
0%

Thanks for the bug.
Would you be able to include an entire python file the repros the bug? This sort of thing is usually some problem with us parsing the lines above where the error should be.
Actually I can see part of it in the error itself. The blank line 36 isn't in the jupyter cell. There should be a blank line between 'rolls_per_frame' and 'sns.set_style'.

RollDieDynamic.txt
uploaded the file as RollDieDynamic.txt, it seems like the portal does not allow to upload .py files.
tips: On other IDEs, the error lines are shown correctly.


WebApp:az webapp config ssl list is not consistently listing all certificates imported on resource group

Did something change with the 'az webapp config ssl list' command, as it is nolonger working for me.
On Saturday I ran a deployment process from Azure DevOps that included getting the list of all SSL certificates for a webapp and it successfully ran and returned the list of certificates.   Today, running the same script against the same appservice it returns no certificates.   I double checked the Azure portal and the certificates exist.   I ran the exact az command from the Cloud Shell in the portal and I was also not able to retrieve the list of certificates. Using Get-AzWebAppCertificate command successfully returns the list of certificates.
To verify it wasn't an issue with just that one appservice  I then ran the 'az webapp config ssl list' against other services that we have run the same deployment process against and found that some returned all certificates, one returned a subset of the certificates and others did not return any certificates.
Running 'az webapp config ssl show' and specifying one of the certificates that was not showing using the list command successfully returned the certificate details.
The exact syntax of the command I used was 'az webapp config ssl list --resource-group .

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

ID: 2a3f984d-0d48-e075-7e2f-2da5667b15cf
Version Independent ID: 98e06d47-0ed4-4d8e-ccf5-d3a78e510539
Content: az webapp config ssl
Content Source: latest/docs-ref-autogen/webapp/config/ssl.yml
Service: app-service-web
GitHub Login: @rloutlaw
Microsoft Alias: routlaw

route to service team

@mkunze8187 - I am unable to repro the issue. Please try with latest CLI version 2.22.0. If you still face the issue check with --debug logs and share with us.

closing due to lack of response. Please file a new issue if this is still a problem.


Get rid of small memory lead in compress plugin.

[approve ci autest]

Might be better to convert those to std::unique_ptr to clear out the old stuff but this seems fine.


check vel_setpoint instead of stick input for position lock

When using the collision prevention library the position lock was broken when using the smooth velocity mode. This can be fixed by checking the velocity setpoint (which is modified by the collision prevention) instead of the raw stick input to determine whether the position lock is activated.

@PX4/testflights Could you test this PR, on a multicopter, mainly in position control and altitude modes please?

Tested on PixRacer V4:
Modes Tested
Position Mode: Good.
Altitude Mode: Good.
Stabilized Mode: Good.
Mission Plan Mode (Automated): Good.
RTL: Good.
- Procedure
Arm and Take off in position mode, after flying for approximately one minute, switched to altitude then stabilized mode proceed to switch to mission plan mode then make sure that vehicle follows all waypoints as shown in QGC, once completed all waypoin activate RTL and see landing behaviour.
Notes:
No issues noted, good flight in general.
Log:
https://review.px4.io/plot_app?log=ad7f07b7-e54a-4d32-83ac-88ea178b1499
Tested on CUAC+ V5:
Modes Tested
Position Mode: Good.
Altitude Mode: Good.
Stabilized Mode: Good.
Mission Plan Mode (Automated): Good.
RTL: Good.
- Procedure
Arm and Take off in position mode, after flying for approximately one minute, switched to altitude then stabilized mode proceed to switch to mission plan mode then make sure that vehicle follows all waypoints as shown in QGC, once completed all waypoin activate RTL and see landing behaviour.
Notes:
No issues noted, good flight in general.
Log:
https://review.px4.io/plot_app?log=3f6b8ba7-31b9-4b47-a989-15a2a4e226cc

Tested on Pixhawk Pro v4:
Modes Tested

Position Mode: Good.
Altitude Mode: Good.
Stabilized Mode: Good.
Mission Plan Mode (Automated): Good.
RTL: Good.

Procedure
Arm and Take off in position mode, after flying for approximately one minute, switched to altitude then stabilized mode proceed to switch to mission plan mode then make sure that vehicle follows all waypoints as shown in QGC, once completed all waypoint activate RTL and see landing behaviour.
Notes:
No issues noted, good flight in general.
Log:
https://review.px4.io/plot_app?log=d7b7af7d-2dea-42c8-acb4-933edcc44e68
Tested on Pixhawk 4mini v5:
Modes Tested

Position Mode: Good.
Altitude Mode: Good.
Stabilized Mode: Good.
Mission Plan Mode (Automated): Good.
-RTL: Good.

Procedure
Arm and Take off in position mode, after flying for approximately one minute, switched to altitude then stabilized mode proceed to switch to mission plan mode then make sure that vehicle follows all waypoints as shown in QGC, once completed all waypoint activate RTL and see landing behaviour.
Notes:
No issues noted, good flight in general.
Log:
https://review.px4.io/plot_app?log=7ed7e325-88ad-4183-880f-deda04048032

Thanks @jorge789 and @Junkim3DR !
@baumanta I merged master into the branch and we can merge once CI passes.


[Elasticsearch-sink] support multi Elasticsearch hosts

Motivation
Current Elasticsearch-sink do not support multi Elasticsearch hosts like "http://<IP_ADDRESS>:9200,<IP_ADDRESS>:9200"
Modifications
Add support for multi Elasticsearch hosts

/pulsarbot run-failure-checks

@freeznet @nlu90 @tuteng can you review this?

Can you add an integration test? https://github.com/apache/pulsar/blob/master/tests/integration/src/test/java/org/apache/pulsar/tests/integration/io/sinks/ElasticSearchSinkTester.java

@tuteng ElasticSearchSinkTester use ElasticSearchContainer to preform test. The container is one node es, it seems not possible to perfrom multi nodes test there.
I have add the test in ElasticSearchSinkTests, and made ElasticSearchSink.getClient from private to protected.

/pulsarbot run-failure-checks

/pulsarbot run-failure-checks

/pulsarbot run-failure-checks


[APMIdentity appInstanceID] + 152  It will jam the main thread for a while

#2575 The crash of this problem did not occur but It will jam the main thread for a while when I followed the latest version

Thanks for the report @wangjunhua1. Can you please provide some information from the bug template so we can try reproducing this?
  * Xcode version: _____
  * Firebase SDK version: _____
  * Firebase Component: Analytics
  * Component version: _____
  * Installation method: `CocoaPods | Carthage | Zip file` (select one)

Also, if there's any specific Analytics calls or screens where this happens, please provide some steps to reproduce.

Xcode version:11.3.1
Firebase SDK version:
pod 'Fabric', '1.10.2'
pod 'Crashlytics', '3.14.0'
pod 'Firebase/Core' , '6.18.0'
pod 'Firebase/Auth' , '6.18.0'
pod 'FirebaseInstanceID', '4.3.2'
pod 'FirebaseInstallations', '1.1.1'
pod 'GoogleDataTransport', '5.1.0'
pod 'GoogleDataTransportCCTSupport', '2.0.1'
pod 'GoogleUtilities','6.5.1'
Installation method: `CocoaPods
We used bugly to listen for the application  become  slow on the  main thread

and pod 'Google-Mobile-Ads-SDK', '7.55.1'

What's the y-axis? Is it the count or the latency?

it is the count about 300 users

have you solve it??

@baolocdo @allenktv see b/153380384.

When will a new version be released to fix this problem

We are still in the process of identifying a fix for this issue.

How's it going?

We have some ideas, but the code here is complex and it is difficult to verify a fix without being able to reproduce the issue. Are you able to create a sample project that freezes the main thread on this method somewhat reliably?

I'm sorry I can't reproduce this problem right now there's a lot of feedback from these logs online. The time for feedback is when the app is first launched

I want to ask if this is a problem that belongs to the SDK, how to avoid this problem

Currently, the SDK dispatches to synchronize this data from a background thread before returning it. This can cause a delay on the main thread in some cases. We could potentially speed this up, but the data still needs to be synchronized somehow, so the fix is not trivial.
The devices this issue is occurring on are all very old and may be subject to performance throttling as their batteries degrade, potentially exacerbating the issue.

Why didn't previous versions have this problem, and when can it be fixed

Which SDK version were you using previously? Unfortunately we cannot provide an estimate for the fix.

I have the same problem too

downgrade firebase to 6.10.0, it seems okay

I also encountered this problem and cannot reproduce it
Exception Type:  EXC_CRASH (SIGKILL)
Exception Codes: 0x0000000000000000, 0x0000000000000000
Exception Note:  EXC_CORPSE_NOTIFY
Termination Reason: Namespace SPRINGBOARD, Code 0x8badf00d
Termination Description: SPRINGBOARD, scene-update watchdog transgression: application<*******.ios2>:3428 exhausted real (wall clock) time allowance of 10.00 seconds | ProcessVisibility: Foreground | ProcessState: Running | WatchdogEvent: scene-update | WatchdogVisibility: Background | WatchdogCPUStatistics: ( | "Elapsed total CPU time (seconds): 47.920 (user 47.920, system 0.000), 100% CPU", | "Elapsed application CPU time (seconds): 0.131, 0% CPU" | )
Triggered by Thread:  0
Thread 0 name:  Dispatch queue: com.apple.main-thread
Thread 0 Crashed:
0   libsystem_kernel.dylib        	0x000000018908f9f4 kevent_id + 8
1   libdispatch.dylib             	0x0000000188f25e18 _dispatch_kq_poll + 332
2   libdispatch.dylib             	0x0000000188f267b4 _dispatch_event_loop_wait_for_ownership$VARIANT$mp + 412
3   libdispatch.dylib             	0x0000000188f15e84 DISPATCH_WAIT_FOR_QUEUE + 292
4   libdispatch.dylib             	0x0000000188f15ac0 _dispatch_sync_f_slow + 140
5   Speed                     	0x0000000102d988a8 -[APMIdentity appInstanceID] + 152
6   Speed                     	0x0000000102dafe3c -[APMIdentifiers appInstanceID] + 264
7   Speed                     	0x0000000102f3a23c GADAnalyticsAdRequestDictionary + 6021692 (GADAnalytics.m:67)
8   Speed                     	0x0000000102ef9f28 __GADAnalyticsSettingsSignalSource_block_invoke + 5758760 (GADBlockSignalSourceImplementations.m:111)
9   Speed                     	0x0000000102f2b3a8 __64-[GADSignals updatedSignalsWithSignalSources:completionHandler:]_block_invoke_2 + 5960616 (GADSignals.m:180)
10  libdispatch.dylib             	0x0000000188f62610 _dispatch_call_block_and_release + 24
11  libdispatch.dylib             	0x0000000188f63184 _dispatch_client_callout + 16
12  libdispatch.dylib             	0x0000000188f15190 _dispatch_main_queue_callback_4CF$VARIANT$mp + 1044
13  CoreFoundation                	0x00000001892133a8 CFRUNLOOP_IS_SERVICING_THE_MAIN_DISPATCH_QUEUE + 12
14  CoreFoundation                	0x000000018920e39c __CFRunLoopRun + 2004
15  CoreFoundation                	0x000000018920d8a0 CFRunLoopRunSpecific + 464
16  GraphicsServices              	0x0000000193165328 GSEventRunModal + 104
17  UIKitCore                     	0x000000018d2fe740 UIApplicationMain + 1936
18  VPN-Speed                     	0x0000000102a2f3a4 main + 734116 (main.m:14)
19  libdyld.dylib                 	0x0000000189098360 start + 4

@maksymmalyhin Could this be from the transition from InstanceID to Installations?

@paulb777 It doesn't looks like related. As far as I can see from the code APMIdentity may read previously set values and don't make any calls to Installations. I see extensive dispatch_sync usage in APMIdentity and it's dependencies so I guess there may be an unintentional deadlock related to it.
@wangjunhua1 @hufengiOS Could you please share call stacks for other threads to help with the potential deadlock investigation?

Same issue

Same issue there,For iOS 14,we have to update it. when update  'Firebase/Analytics' to 6.31.0,It happens.
And it's very ofen,now this is our top one main thread block.Please try to fix it.
Sdk version：
'Firebase/Analytics' 6.31.0
Google-Mobile-Ads-SDK (>= 7.55.0)
Key Stack Info Below：
Thread 0:
0   libsystem_kernel.dylib          0x188acb93c kevent_id (in libsystem_kernel.dylib) + 8
1   libdispatch.dylib               0x18892bbf0 _dispatch_kq_poll (in libdispatch.dylib) + 332
2   libdispatch.dylib               0x18892c6dc _dispatch_event_loop_wait_for_ownership$VARIANT$mp (in libdispatch.dylib) + 412
3   libdispatch.dylib               0x18891be9c DISPATCH_WAIT_FOR_QUEUE (in libdispatch.dylib) + 296
4   libdispatch.dylib               0x18891bad4 _dispatch_sync_f_slow (in libdispatch.dylib) + 140
5   XXXX                            0x102398bb4 -[APMIdentity appInstanceID] (in XXXX) + 144
6   XXXX                            0x1023ac194 -[APMIdentifiers appInstanceID] (in XXXX) + 188
7   XXXX                            0x10252a9a8 GADAnalyticsAdRequestDictionary (in XXXX) + 132
8   XXXX                            0x1024eb840 GADAnalyticsSettingsSignalSource (in XXXX) + 168
9   XXXX                            0x10251bb84 GAD_GADSignals_arm64_7_55_0 (in XXXX) + 3868
10   libdispatch.dylib               0x18896ca38 _dispatch_call_block_and_release (in libdispatch.dylib) + 24
11   libdispatch.dylib               0x18896d7d4 _dispatch_client_callout (in libdispatch.dylib) + 16
12   libdispatch.dylib               0x18891b004 _dispatch_main_queue_callback_4CF$VARIANT$mp (in libdispatch.dylib) + 1068
13   CoreFoundation                  0x188ebec1c CFRUNLOOP_IS_SERVICING_THE_MAIN_DISPATCH_QUEUE (in CoreFoundation) + 12
14   CoreFoundation                  0x188eb9b54 __CFRunLoopRun (in CoreFoundation) + 1924
15   CoreFoundation                  0x188eb90b0 CFRunLoopRunSpecific (in CoreFoundation) + 436
16   GraphicsServices                0x18b0b979c GSEventRunModal (in GraphicsServices) + 104
17   UIKitCore                       0x1b56ef978 UIApplicationMain (in UIKitCore) + 212
18   XXXX                            0x1030560ec _main (in XXXX) (main.m:49)
19   libdyld.dylib                   0x18897e8e0 start (in libdyld.dylib) + 4
Thread 42:
0   libsystem_kernel.dylib          0x188acb93c kevent_id (in libsystem_kernel.dylib) + 8
1   libdispatch.dylib               0x18892bbf0 _dispatch_kq_poll (in libdispatch.dylib) + 332
2   libdispatch.dylib               0x18892c2a0 _dispatch_event_loop_wake_owner$VARIANT$mp (in libdispatch.dylib) + 368
3   libdispatch.dylib               0x18891cc44 _dispatch_waiter_wake (in libdispatch.dylib) + 60
4   libdispatch.dylib               0x18891bf70 _dispatch_sync_complete_recurse (in libdispatch.dylib) + 60
5   libdispatch.dylib               0x18891bffc _dispatch_sync_invoke_and_complete_recurse (in libdispatch.dylib) + 88
6   libdispatch.dylib               0x18891baf0 _dispatch_sync_f_slow (in libdispatch.dylib) + 168
7   XXXX                            0x102398bb4 -[APMIdentity appInstanceID] (in XXXX) + 144
8   XXXX                            0x1023d2a20 -[APMMeasurement(Event) createRawEventMetadataWithUserAttributes:] (in XXXX) + 340
9   XXXX                            0x1023d53ec -[APMMeasurement(Event) writeEvent:isPublicEvent:isRealtime:] (in XXXX) + 796
10   XXXX                            0x1023d2888 __49-[APMMeasurement(Event) writeEventOnWorkerQueue:]_block_invoke (in XXXX) + 604
11   XXXX                            0x1023beda8 -[APMSqliteStore performTransactionWithError:block:] (in XXXX) + 176
12   XXXX                            0x10238bb14 -[APMDatabase performTransaction:] (in XXXX) + 48
13   XXXX                            0x1023d254c -[APMMeasurement(Event) writeEventOnWorkerQueue:] (in XXXX) + 820
14   XXXX                            0x1023d20a8 -[APMMeasurement(Event) handleEventOnWorkerQueue:] (in XXXX) + 540
15   XXXX                            0x10239e580 -[APMMeasurement logEventOnWorkerQueue:notifyEventListeners:] (in XXXX) + 148
16   XXXX                            0x10239e378 -[APMMeasurement logEventOnWorkerQueueWithOrigin:isPublicEvent:name:parameters:timestamp:enabled:ignoreEnabled:ignoreInterceptor:interceptor:addedScreenParameters:] (in XXXX) + 340
17   XXXX                            0x10239e17c __151-[APMMeasurement logEventWithOrigin:isPublicEvent:name:parameters:timestamp:enabled:ignoreEnabled:ignoreInterceptor:interceptor:addedScreenParameters:]_block_invoke (in XXXX) + 68
18   XXXX                            0x1023a9f84 __51-[APMScheduler scheduleOnWorkerQueueBlockID:block:]_block_invoke (in XXXX) + 44
19   libdispatch.dylib               0x18896ca38 _dispatch_call_block_and_release (in libdispatch.dylib) + 24
20   libdispatch.dylib               0x18896d7d4 _dispatch_client_callout (in libdispatch.dylib) + 16
21   libdispatch.dylib               0x188916320 _dispatch_lane_serial_drain$VARIANT$mp (in libdispatch.dylib) + 592
22   libdispatch.dylib               0x188916e3c _dispatch_lane_invoke$VARIANT$mp (in libdispatch.dylib) + 428
23   libdispatch.dylib               0x18891f4a8 _dispatch_workloop_worker_thread (in libdispatch.dylib) + 596
24   libsystem_pthread.dylib         0x188b4d114 _pthread_wqthread (in libsystem_pthread.dylib) + 304
Thread 68:
0   libsystem_kernel.dylib          0x188abf0f4 mach_msg_trap (in libsystem_kernel.dylib) + 8
1   libsystem_kernel.dylib          0x188abe5a0 mach_msg (in libsystem_kernel.dylib) + 72
2   libdispatch.dylib               0x188924880 _dispatch_mach_send_and_wait_for_reply (in libdispatch.dylib) + 500
3   libdispatch.dylib               0x188924d10 dispatch_mach_send_with_result_and_wait_for_reply$VARIANT$mp (in libdispatch.dylib) + 52
4   libxpc.dylib                    0x188b8391c xpc_connection_send_message_with_reply_sync (in libxpc.dylib) + 204
5   Foundation                      0x189aafa28 NSXPCCONNECTION_IS_WAITING_FOR_A_SYNCHRONOUS_REPLY (in Foundation) + 12
6   Foundation                      0x189892f60 -[NSXPCConnection sendInvocation:orArguments:count:methodSignature:selector:withProxy:] (in Foundation) + 3608
7   CoreFoundation                  0x188f3276c forwarding (in CoreFoundation) + 552
8   CoreFoundation                  0x188f3475c forwarding_prep_0 (in CoreFoundation) + 92
9   CoreServices                    0x1b1896ce4 -[LSApplicationWorkspace deviceIdentifierForAdvertising] (in CoreServices) + 160
10   AdSupport                       0x198f70a60 -[ASIdentifierManager advertisingIdentifier] (in AdSupport) + 56
11   XXXX                            0x100afc998 -[APMASIdentifierWrapper resettableDeviceIDStringIfAvailable] (in XXXX) + 140
12   XXXX                            0x1023997e0 __32-[APMIdentity updateIdentifiers]_block_invoke (in XXXX) + 452
13   libdispatch.dylib               0x18896ca38 _dispatch_call_block_and_release (in libdispatch.dylib) + 24
14   libdispatch.dylib               0x18896d7d4 _dispatch_client_callout (in libdispatch.dylib) + 16
15   libdispatch.dylib               0x188916320 _dispatch_lane_serial_drain$VARIANT$mp (in libdispatch.dylib) + 592
16   libdispatch.dylib               0x188916e3c _dispatch_lane_invoke$VARIANT$mp (in libdispatch.dylib) + 428
17   libdispatch.dylib               0x18891f4a8 _dispatch_workloop_worker_thread (in libdispatch.dylib) + 596
18   libsystem_pthread.dylib         0x188b4d114 _pthread_wqthread (in libsystem_pthread.dylib) + 304
I think it's thread 68 call [APMIdentity updateIdentifiers] and trigger xpc_connection_send_message.this may cost a lot of time sometimes.So when in main thread call -[APMIdentity appInstanceID],we must wait xpc done and main thrad block happen.maybe can we dispatch GADAnalyticsAdRequestDictionary to other thread?
If you need more info,please reply me thanks.


Add ARM support

Closes #4
This is a pretty quick fix to add arm support for versions above 0.2.0, although it doesn't check if the user has an architecture other than arm and amd. If you're fine with this, maybe we can add a short message to the NOTES.md going over supported architectures.
Maybe another way would be to check if https://github.com/typst/typst/releases/download/v${TYPST_VERSION}/typst-$(uname -m)-unknown-linux-musl.tar.xz is a valid url, and throwing an error if not. What do you think?

I actually prefer this offline check. Could we keep a list of every supported architecture and check against that if the version is larger than 0.2.0? In your implementation, we assume every architecture is valid as long as not 0.2.0 or 0.1.0.
We should also keep in mind, that they could potentially release a security fix under 0.2.1 for the old version in the future  (though unlikely).

Thanks for the update! I can finish up the offline architecture check.
Do you think a possible v0.2.1 won't add new architecture support? If we can assume so, I can just check if the string begins with "0.2" or "0.1".

Do you think a possible v0.2.1 won't add new architecture support? If we can assume so, I can just check if the string begins with "0.2" or "0.1".

Yeah I would make that assumption

Actually, below version 0.3.0 the script would not work anyways, because the linux binary was based on glib and not musl (and therefore the filename different).

But we always assume that the filename contains 'musl":
https://github.com/michidk/devcontainers-features/blob/main/src/typst/install.sh#L112
Could you also implement that it will use the glibc version for versions below 0.3.0 on the amd64 platform? This would be great.

Could you also implement that it will use the gnu version for versions below 0.3.0 on the amd64 platform? This would be great.

Haha good catch, I can add that in. I also realized that versions 0.1 and 0.2 have tar.gz extensions, while 0.3 and beyond have tar.xz. I put both of these variations in a LIBC_AND_EXTENSION variable

Thanks for the changes!
I get the following error with versions 0.1.0 and 0.2.0:
sudo VERSION=0.2.0 ./install.sh
TYPST_VERSION=0.2.0
Downloading typst version 0.2.0...
xz: (stdin): File format not recognized
tar: Child died with signal 13
tar: Error is not recoverable: exiting now

I also found an issue with Typst versions 0.2 and 0.1 running on the devcontainer for this repo.
The base image mcr.microsoft.com/devcontainers/javascript-node:0-18 has a libc version of 2.31 (via ldd --version), so although the install script works (I think), writing typst --version results in the following error:
typst: /lib/x86_64-linux-gnu/libm.so.6: version `GLIBC_2.35' not found (required by typst)
typst: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.32' not found (required by typst)
typst: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.33' not found (required by typst)
typst: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.34' not found (required by typst)

I'm pretty sure this is just a result of the feature starter template having an older version of the javascript-node image. When I used an updated version (either the 1-18 or 20 tag), everything worked fine. Since this might be a pretty confusing bug for others, do you want to put some sort of section in this feature's README? Maybe a "supported versions" section or something.

Yeah that's an known issue (https://github.com/typst/typst/issues/109, fixed in https://github.com/typst/typst/pull/847) with Typst and won't be fixed for those versions.
I don't know exactly how this stuff works, but I would assume that on a system with the right glibc version, this typst executable would still work.
Great what you implemented there! Love the tests as well.
The 'javascript-node-0-18' fails on the CI. As soon as this is fixed, I think this is ready to merge.

Thanks! I'll delete the javascript-node-0-18 test and add a note

Really cool! Thanks a lot for your changes!


Autocomplete should also show synonyms and columns from synonyms

I check both Oracle 12 and HANA 2 with DBeaver CE 21.2.5 on Windows 10 and there autocomplete works only for tables and views, but not synonyms. If I use autocomplete in SQL console also synonyms and columns from synonyms should be shown.
If I enter "SELECT * FROM schema1." and hit ctrl-space in SQL console, I see tables and views listed from that schema, but also synonyms should be shown for autocomplete
If I enter "SELECT * FROM schema1.synonym1 WHERE " and hit ctrl-space in SQL console I would like to get columns shown in autocomplete from the table the synonym is point to.

Hello @hski-github
What DBeaver version do you use?

Edited initial description. See above

Ok. Please check this setting for Oracle connection settings:

It was also implemented for Hana.
Let's try to figure out - why it doesn't work in your case.

Can you see synonyms objects in the Database Navigator tree?

The synonyms are shown for HANA (like in your screenshot), but not the columns from the table or view the synonym is pointing to.
If I enter "SELECT * FROM schema1.synonym1 WHERE " and hit ctrl-space in SQL console I would like to get columns shown in autocomplete from the table the synonym is point to.

Yes, I see the issue with the Hanas synonyms columns.
But what about this case:

If I enter "SELECT * FROM schema1." and hit ctrl-space in SQL console, I see tables and views listed from that schema, but also synonyms should be shown for autocomplete
Is it working for Hana?

Yes, that one works.

@hski-github ok, thanks for the investigation!


The no-ports end-to-end tests fail when executed with atSigns that are not production atSigns.

Describe the bug
In "main.c",since null is passed to the atclient_utils_find_atserver_address() function in "atclient.c", the default values of production root server and port are used. Hence the test pass. However, during local testing, if options are provided to the monitor_pkam_authenticate method (the last parameter in method), the atdirectory_host and atdirectory_port, corresponding to the root server and port, are assigned to atserver_host and atserver_port. This leads to the test failure.
Additionally, the "atclient_utils_find_atserver_address" method always sets the root server details to the production host and port. Any alternative root server and port provided through the atclient_pkam_authenticate_options are ignored.
noports/packages/c/sshnpd/src/main.c
res = atclient_monitor_pkam_authenticate(&monitor_ctx, params.atsign, &atkeys, NULL);

packages/atclient/src/atclient.c-> atclient_pkam_authenticate()
if (options != NULL) {
    if (atclient_pkam_authenticate_options_is_atdirectory_host_initialized(options) &&
        atclient_pkam_authenticate_options_is_atdirectory_port_initialized(options)) {
      atserver_host = options->atdirectory_host;
      atserver_port = options->atdirectory_port;
    }
  }

  if (atserver_host == NULL || atserver_port == 0) {
    atlogger_log(TAG, ATLOGGER_LOGGING_LEVEL_INFO,
                 "Missing atServer host or port. Using production atDirectory to look up atServer host and port\n");
    if ((ret = atclient_utils_find_atserver_address(ATCLIENT_ATDIRECTORY_PRODUCTION_HOST,
                                                    ATCLIENT_ATDIRECTORY_PRODUCTION_PORT, atsign, &atserver_host,
                                                    &atserver_port)) != 0) {
      atlogger_log(TAG, ATLOGGER_LOGGING_LEVEL_ERROR, "atclient_utils_find_atserver_address: %d\n", ret);
      goto exit;
    }
    // only free this memory if it was allocated internally (by atclient_utils_find_atserver_address)
    should_free_atserver_host = true;
  }

Log snippet of test failure:
Verbose mode enabled
[DEBG] 2024-09-30 13:45:35.769157 | sshnpd | Using atkeysfile<EMAIL_ADDRESS>[DEBG] 2024-09-30 13:45:35.838057 | connection | 	SENT: "bob🛠"
[DEBG] 2024-09-30 13:45:35.838395 | connection | 	RECV: "vip.ve.atsign.zone:25003"
[INFO] 2024-09-30 13:45:35.838444 | atclient | Missing atServer host or port. Using production atDirectory to look up atServer host and port
[DEBG] 2024-09-30 13:45:37.368938 | connection | 	SENT: "bob🛠"
[DEBG] 2024-09-30 13:45:37.675274 | connection | 	RECV: "null"
[ERROR] 2024-09-30 13:45:37.675314 | atclient_utils | Failed to parse port from atdirectory response

Steps to reproduce
Run no-ports e2e tests with local atSigns.
Steps to run noports e2e tests locally:
In a NoPorts repo clone
- build the binaries (cd /path/to/noports/packages/dart/sshnoports; buildBinaries)
- run an srvd
    - bin/srvd -a @chuck --root-domain vip.ve.atsign.zone --ip <IP_ADDRESS> -v
- run the e2e tests
     - /path/to/noports_repo/tests/e2e_all/scripts/main.sh @alice @bob @chuck -w 5 -r vip.ve.atsign.zone

Expected behavior
For the "atclient_pkam_authenticate", if null is passed for "atclient_pkam_authenticate_options" then the default values should be considered. If options are set, the root server and port from the options should be used to fetch the secondary server address.

I can pick this up


no-unused-vars issue when using ReactDOM (ES6)

I'm running into an issue with ESLint throwing a no-unused-vars issue when using ReactDOM.
I'm currently using React 0.14.5
import React from 'react';
import ReactDOM from 'react-dom';

ReactDOM.render(
    <MyComponent data="foo" />,
    document.getElementById('bar')
);

This code generates this error is ESLint:
React is defined but never used - no-unused-vars
I have to import React for ReactDOM to work. This issue is a bit annoying with ESLint shooting off warnings every time I work on this file.
I've been hunting around for a fix, but I just can't seem to find one after extensive Googling and browsing documentation. Anyone know of a fix? I appreciate it. Thanks in advance!

Hi, you must enable the react/jsx-uses-react rule to avoid this problem.

@yannickcr  - Thank you so much! I was looking around for this and I couldn't find it.
Appreciate all your help with this. You are the best!


Typo on README ?

            NavigationLink(destination: LazyView(Text("My details page")) {

Shouldn't it be :
            NavigationLink(destination: LazyView(Text("My details page"))) {

?

yes 😅 thank you


Fixed typo in CSS demo

I guess it shouldn't be :hover: as it's :hover in the next example.

Thanks :)


Dialogue boxes need to be tidier

Could we have a general tidy up of the dialogue boxes? For example, in the load file box

the icon for the 'load file' button squashes into the icon making it look untidy.
The height of the Browse button is less than the load file button and looks squashed.
Examples of layouts where there is consistency given below:

Save and load dialogue boxes should have an explicit cancel button.

I would prefer just the work 'save' rather than 'save file' and the tick is not really adding a lot.

The Browse... button is part of the file selecting control, which is a part of the browser internal design.  We cannot change it.

Cancel button is added.  By the way, the dialog X button, and keyboard ESC key can be used to close the dialog as well.

Fixed in 2016-12-15 update

Import and export now gives me a space to copy/paste into. This is probably fine for a HELM string, but becomes cumbersome for xHELM. why did it change?

The web service is not configured on site http://<IP_ADDRESS>/WebService/HWE.html, so import/export won't be able to to read/write files.
The demo site http://elncloud.com/helm/helm/App.htm does have web service configured, so it will popup file dialog to read/write files.

I thought http://<IP_ADDRESS>/WebService/HWE.html , was fully configured? How do we get this to a point where it can be tested?

Services are now configured and test and demo sites set up.


Feature/simulate by configuration document

#18
Support to simulate scheduling according to the configuration document and customize the scheduling sequence

忘了解冲突。。。

LGTM