Installation Error on CentOS 7.2

ISSUE TYPE

Bug Report

Checklist

[x] .env file is attached
[x] ./check-config.sh output is added below
[x] docker-compose logs output is added below
[x] docker-compose.override.yml is attached (if exists)
[x] Custom configs from cfg/ dir are attached (if exist)
[x] I've looked through the docs: https://devilbox.readthedocs.io/en/latest/
[x] I've looked through existing issues: https://github.com/cytopia/devilbox/issues
[x] I've read troubleshooting: https://devilbox.readthedocs.io/en/latest/support/troubleshooting.html

dotENV.txt
OS / ENVIRONMENT

Host operating system and version:  linux-centos-7.2-x86_64
(Windows only) Native Docker or Docker Toolbox:
Docker version: 20.10.6, build 370c289
Docker Compose version: 1.29.2
(Linux) Is SELinux enabled?: No
What git commit hash are you on?: 59738601b2f940610ca89134690fbba7f26ad5ed

SUMMARY

After issue the docker-compose up command, the php-fpm files start downloading, pulling, and extracting...  I don't see anything wrong with the unlinkat command except that the resource it is trying to remove does not exist, but then again it's nvm which I know nothing about.
STEPS TO REPRODUCE

Install the same Devilbox on the same version of CentOS.

EXPECTED BEHAVIOUR

ACTUAL BEHAVIOUR

OTHER INFORMATION
Start command

docker-compose up httpd php mysql redis

[dotENV.txt](https://github.com/cytopia/devilbox/files/6499049/dotENV.txt)

Outputs

$ ./check-config.sh

# ==============================================================================
# Checking git
# ==============================================================================
[SUCC]  git is clean

# ==============================================================================
# Checking .env file
# ==============================================================================
[SUCC]  .env file exists
[SUCC]  .env file is readable
[SUCC]  All variables are present in .env file
[SUCC]  No variables is duplicated in .env file

# ==============================================================================
# Checking .env file values
# ==============================================================================
[SUCC]  All .env file variables have correct values

# ==============================================================================
# Checking required Devilbox core directories exist
# ==============================================================================
[SUCC]  All PHP cfg/ sub directories are present
[SUCC]  All PHP log/ sub directories are present
[SUCC]  All PHP mod/ sub directories are present
[SUCC]  All HTTPD cfg/ sub directories are present
[SUCC]  All HTTPD log/ sub directories are present

# ==============================================================================
# Checking devilbox core directory permissions
# ==============================================================================
[SUCC]  All devilbox directories have correct permissions
[SUCC]  All devilbox directories have correct uid
[SUCC]  All devilbox directories have correct gid

# ==============================================================================
# Checking devilbox core file permissions
# ==============================================================================
[SUCC]  All devilbox files have correct permissions
[SUCC]  All devilbox files have correct uid
[SUCC]  All devilbox files have correct gid

# ==============================================================================
# Checking projects permissions
# ==============================================================================
[SUCC]  All project dirs have correct permissions
[SUCC]  All project dirs have correct uid
[SUCC]  All project dirs have correct gid

# ==============================================================================
# Checking projects settings
# ==============================================================================
[SUCC]  All projects have valid DNS records
[SUCC]  All projects have valid HTTPD_DOCROOT_DIR

# ==============================================================================
# Checking customizations
# ==============================================================================
[INFO]  No custom configurations applied

# ==============================================================================
# SUMMARY
# ==============================================================================
[SUCC]  Found no errors
[INFO]  No custom configurations applied
[INFO]  Ensure to run 'docker-compose stop; docker-compose rm -f' on .env changes or custom configs

$ docker-compose logs

Attaching to

There seems to be an issue with pulling the images, which is still before the Devilbox starts.
Can you do a:
docker-compose pull

and see if you can successfully pull all docker images.

Thank you for the help!  Everything pulls except the PHP which seems to have the same problem in the same place:
[root@devbox devilbox]# docker-compose pull
Pulling bind  ... done
Pulling php   ... extracting (100.0%)
Pulling httpd ... done
Pulling mysql ... done
Pulling pgsql ... done
Pulling redis ... done
Pulling memcd ... done
Pulling mongo ... done
ERROR: for php  failed to register layer: ApplyLayer exit status 1 stdout:  stderr: unlinkat /opt/nvm/.cache/bin/node-v14.15.3-linux-x64: invalid
ERROR: failed to register layer: ApplyLayer exit status 1 stdout:  stderr: unlinkat /opt/nvm/.cache/bin/node-v14.15.3-linux-x64: invalid argument

Can you try the branch from this PR: https://github.com/cytopia/devilbox/pull/777
It's gonna be merged very soon, only requires some minor adjustments.

sorry for the noob question, but what's my command for that?  I tried "git clone https://github.com/cytopia/devilbox -b pull/777" but obviously that's wrong... :)

git clone https://github.com/cytopia/devilbox
cd devilbox
git checkout release/v1.9.1
docker-compose stop
docker-compose rm
docker-compose pull
docker-compose up

A new but similar error appeared... Any ideas...  It seems to be something about this VPS and Docker... Everything is loading fine on my bare metal server with CentOS7.2
[root@devbox home]# git clone https://github.com/cytopia/devilbox
Cloning into 'devilbox'...
remote: Enumerating objects: 26159, done.
remote: Counting objects: 100% (128/128), done.
remote: Compressing objects: 100% (94/94), done.
remote: Total 26159 (delta 50), reused 80 (delta 33), pack-reused 26031
Receiving objects: 100% (26159/26159), 43.85 MiB | 10.30 MiB/s, done.
Resolving deltas: 100% (12810/12810), done.
[root@devbox home]# cd devilbox
[root@devbox devilbox]# git checkout release/v1.9.1
Branch release/v1.9.1 set up to track remote branch release/v1.9.1 from origin.
Switched to a new branch 'release/v1.9.1'
[root@devbox devilbox]# cp env-example .env
[root@devbox devilbox]# docker-compose stop
[root@devbox devilbox]# docker-compose rm
No stopped containers
[root@devbox devilbox]# docker-compose pull
Pulling bind  ... done
Pulling php   ... extracting (100.0%)
Pulling httpd ... extracting (100.0%)
Pulling mysql ... done
Pulling pgsql ... done
Pulling redis ... done
Pulling memcd ... done
Pulling mongo ... done
ERROR: for httpd  failed to register layer: ApplyLayer exit status 1 stdout:  stderr: unlinkat //docker-entrypoint.d: invalid argument
ERROR: for php  failed to register layer: ApplyLayer exit status 1 stdout:  stderr: unlinkat /opt/nvm/.cache/bin/node-v14.17.0-linux-x64: invalid argument
ERROR: failed to register layer: ApplyLayer exit status 1 stdout:  stderr: unlinkat /opt/nvm/.cache/bin/node-v14.17.0-linux-x64: invalid argument

The whole thing just ran fine in CI multiple times. So I'd also assume that there's an issue with your local docker setup/installation.

Okay... Thank you for your help.  I will approach it as a Docker issue and keep working on it.  Have a great day!

Fixed!  I reinstalled CentOS and the problem "disappeared".  Thank you @cytopia for the incredible product and great support!  :)


build: build and cache all forc projects

Added a bash script which finds all forc projects in the repo, hashes their *.sw and Forc.toml files, stores that on disk, creates a workspace Forc.toml file with all those projects and builds them. Later on when a project's sway or Forc.toml file changes, the hash will change for that project and a new workspace file will be created which will only contain those projects whose files have changed and only those projects will be rebuilt. If there aren't any changes to any files that get hashed, the hashes will be the same and no rebuild will happen. The script is also tracking the forc version being used in the repo so it will rebuild the local caches on dev machines when we update the forc version.

The .forc-build-cache folder is in .gitignore so it won't be committed to version control.
I've removed all other Forc.toml workspace files as the auto-generated Forc.toml is the one to rule them all.
I've also removed/updated all package.json prebuild and pretest scripts where forc builds were happening.
I've updated some shell scripts where forc builds were happening to not build anymore; rather, they assume that forc builds already happened and then they do any additional logic based on it.
I've renamed two projects in the abi-typegen package because there were naming conflicts with projects in fuel-gauge. This is due to forc not allowing projects with the same name in one workspace.

This solution doesn't interfere with building single projects. You can go to a specific project and build it; it will just be rebuilt by this caching solution again when you run pnpm build in the root directory.
It also doesn't interfere with CI. The cache folder does get created in CI, but it's not used afterwards for anything.
As a side note, this caching solution has trimmed down ~15s off of build times on my computer.
Closes #1095.

@nedsalk Are you still going to address #1095 issue in this PR, or will you create a new one?

@arboleya This is the PR for it, but it's currently on hold.

Precisely, I'm asking because the last commit is 2x weeks old.
Can we help you with something to get it finished?

Can we help you with something to get it finished?

Thanks @arboleya! Sorry for not answering for so long, but I first wanted to gather my thoughts on it before I can comment any further.
After going through what you've mentioned, I remembered that I already tested the caching capabilities of turbo and this was/is what I noticed:

Turbo indeed caches forc builds,
Turbo rebuilds forc projects even when a non-sway file is changed

The reason why I went down this route was to avoid building sway projects when a non-sway file changes. This was primarily driven by not wanting to rebuild the call-test-script in the script package every time I change anything that's in the dependency chain below script, as that sway project rebuilding was being run via a build script. I figured that I could easily expand the solution to include all forc projects.
However, after #1164 got merged, there is indeed no need at all to build forc projects in build scripts. I tried out your

Ensure there's no relationship between forc:build (and pretest), build, and dev.

proposal in a separate branch and it works - it gets cached, with the caveat that turbo rebuilds forc projects even when a non-sway file is changed. But, given that it's a pretest step, it's not really that impactful on the dev workflow given that the pretest scripts are primarily run during pnpm ci:test, which runs the full test suite anyways.
I'll close this PR in favor of #1235 which is in the spirit of your comment.


Using Agent on blade

Hi, i am new to laravel and I wonder if there is any way I can use the Agent directly on my blade file so that according to him I can change the type of content I'll use (so is better than having to use browserhack )
sorry for my english, google help me =]

Hi @leandroluk , I guess this should work perfect with you
@if((new Jenssegers\Agent\Agent)->isAndroidOS)

 From Android

@elseif((new Jenssegers\Agent\Agent)->isSafari)

 From Safari

@endif

@leandroluk Here's an example for using it globally in blade templates with a Service Provider.

Thx my friend!
Em 01/10/2016 11:43, "tim gavin"<EMAIL_ADDRESS>escreveu:

@leandroluk https://github.com/leandroluk Here's an example
http://stackoverflow.com/a/39800742/2101328 for using it globally in
blade templates with a Service Provider.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/jenssegers/agent/issues/64#issuecomment-250915943,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AINFZlSLO3EgJHlYFq8OiF_-aMdbtbYnks5qvnF0gaJpZM4J4bjQ
.

@leandroluk @hmedash95 @timgavin you guys can also follow the-Laravel-way and use the Facade (looks more readable):
@if (Agent::isAndroidOS() )

 From Android

@elseif (Agent::isSafari())

 From Safari

@endif

Don't know it has a facade class , nice hint @TonnyORG

@emergingdzns your config/app.php already has the respective alias to make it works as facade?
For more information read this:
https://github.com/TonnyORG/agent/blob/33043abec5a61d5ae6db2677c2c6457690801c71/README.md#laravel-optional (Laravel (optional))

Yes. I have the 'Agent' => Jenssegers\Agent\Facades\Agent::class, line in my app.php file.
I just can't seem to make it work. It's weird to me that in the blade, I have the use statement and then instantiate the $agent = new Agent(); but then the blade says that $agent isn't a valid variable... Makes no sense.

@emergingdzns try to use this in blade and tell me if it works for you
@if (\Jenssegers\Agent\Facades\Agent::isMobile())
    @include('mobile.dashboard')
@else
    @include('desktop.dashboard')
@endif

just to make sure if it reads the Agent facade path right or not

Ihave tried it countless times in laravel 5.3 and it does not work using Facades

My solution was to instantiate the agent class everytime I needed it, which is not the laravel way

I'm using Laravel 5.3 and it is working for me in the controller. Maybe the declaration is wrong?
// is this the declaration being used? This works for me.
use Jenssegers\Agent\Facades\Agent;

// use the facade as normal
'isTablet' => Agent::isTablet()

Looks like I am using v2.4 of the Agent

Why just don't user an helper function 😕


Simplify provider utils

Simplify provider 'has data' utils by removing fetch status
https://issues.redhat.com/browse/COST-2164

Codecov Report

Merging #2310 (6462f3a) into master (2fbb248) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master    #2310   +/-   ##
=======================================
  Coverage   70.02%   70.02%
=======================================
  Files         403      403
  Lines        7536     7536
  Branches     1532     1532
=======================================
  Hits         5277     5277
  Misses       2230     2230
  Partials       29       29

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 2fbb248...6462f3a. Read the comment docs.


Update README.md to include semver versioning of tagged docker images

What
Documentation on how we should be versioning our images, previously we relied on always using latest. This becomes less than ideal when our apps are running multiple tasks in ci using different images and these are out of step or worse latest updates and breaks ci tasks which would pass on an older version of an installation in the docker image; so would need to make sure we still have the older version at our disposal so we don't block feature work.
The new documentation is to consolidate a number of things around initial versioning of docker images using the tag naming convention based on semver versioning and additional use of labels to assist developers to understand what changes have been made to the image and where and when thos changes took place.
latest tag will always exist as it is ideal for applications to use latest in most situations.
How to review

Any further suggestions/improvements to how we can version the docker images
Check guide works

Who can review
Tech Leads

It has been decided by tech leads that explicit names for docker images is better than semver versioning and can handle non linear versioning, see this PR - https://github.com/ONSdigital/dp-concourse-tools/pull/42


[url_launcher] iOS Swift migration

Please refer to this umbrella issue for more details.
This is a relatively small plugin that's easier to backfill tests and migrate.

For anyone picking this up: see https://github.com/flutter/plugins/pull/7123 for an in-progress PR to do some of the testing backfill, which was never reviewed and landed.


vue-component for indexing

indexing and searching are two completely separate processes, so create a separate component for indexing.

Components:

[ ] List documents to be added

Inherit from Nowcontent.xyz:

[ ] List bookmarklets
[ ] Add bookmarklet


Flink aggregation is conditionally unstable

TbaseFlatMapper is ignorant of ordering items by event timestamp, so intrinsically having risk of invalidating some of the records with the watermark rule in flink
the bounded out of orderness, which is defined by flink community, is currently set 0 by using forMonotonousTimestamp method. It is completely equivalent with using forBoundedOutOfOrderness with parameter 0 secs, and this out of orderness needs to be parameterized

result aggregation of metrics

nearby metrics of each agents

This symptom is not such critical, and expected to be resolved by migrating feature into pinot-based


[Bug]: Terminate the task and execute it again. The status of the table to be executed is displayed as Cancelled.

ODC version
ODC430
OB version
independent
What happened?
Terminate the task and execute it again. The status of the table to be executed is displayed as Cancelled.

What did you expect to happen?
。
How can we reproduce it (as minimally and precisely as possible)?

Create a task containing multiple tables
Terminate the task
Execute the task again

Anything else we need to know?
No response

pass


Update app-insights-release-notes-java.md

V<IP_ADDRESS>

Hi @harelbr, I'm your friendly neighborhood Azure Pull Request Bot (You can call me AZPRBOT). Thanks for your contribution!

This seems like a small (but important) contribution, so no contribution license agreement is required at this point. Real humans will now evaluate your PR.

TTYL, AZPRBOT;


Search does not work at all

Description
When searching a file, clearly present in a sub-directory, by its exact name (copy-pasted from the file itself) Files search comes up empty everytime. Even when option to show un-indexed files is turned on.
The most basic use case, without clouds or anything, fails. Basic functionality.
Steps To Reproduce

Go to Search box on the top right when on target directory
Search for any file, folder by exact name
Zero results everytime

Expected behavior
Search should show the found files and/or folders.
Files Version
Versão: <IP_ADDRESS>
Windows Version
OS Version: 10.0.22621.317 (Win11 22H2 Release Preview)
Relevant Assets/Logs
debug.log
debug_fulltrust.log

How long did you wait since if it unindex it searches through the whole folder and sub folders before displaying results.

Well there is no progress/activity indicator anywhere whatsoever, so it looks like the search finished without finding anything.
But on shallower depths of directories, files do come up on searches.
If Files takes longer, I believe a progress/activity visual cue is necessary to let the user know search results are bound to be updated until the search is finished.
So from what I understood, Files only shows the search results after the entire search is finished? In this case, I believe that in a future update Files should show individual search results the moment they are found, (maybe using the same extremely fast mechanism of cmd.exe dir /S filename.ext) so that the user doesn't give up and just go to Windows Explorer or even cmd.exe dir /S.
Thanks.

Yeah its a know issue that the indication isnt working.

Loading indicator is tracked in #9495 and better searching methods is #6825


[FEATURE REQUEST]: Allow JWT as authentication method between client and server

Is there an existing issue for this?

[X] I have searched the existing issues

Feature
According to SSX docs, the only authentication method provided between the client and the server are session cookies.
Adding JWT authentication would allow users handle the session scalability problem easily by sharing the JWT secret key between servers. Once a JWT is emitted by one server, all the other ones can verify the validity of the token, by providing the verify function with the secret key and the token passed from the client.
As SSX doesn't rely on a database to store the current nonce of a given user, maybe JWT authentication would still need the use of ssx-nonce cookie to receive the nonce and verify the signature provided by the client. After the JWT is passed by the client, the nonce cookie can be destroyed.
In my opinion, ssx-nonce cookie is still required because that's the only way to guarantee that the nonce was emitted by the same server.
A constraint implied by this method is that the whole authentication process ('/nonce', '/login') would need to happen in a single server until the server responds to the client with a JWT, since it's cookie dependent. But I don't see a reason why a authentication process would happen on two servers.
This method also allows the creation of an "authentication service" package, which would be a wrapper around express that provides the three endpoints, (nonce, login and logout) and the user would only need to pass the secret key for signing the JWT. The rest of the ecosystem would simply verify the JWT using the same secret provided by this "authentication service"  package.
User Stories
As a web developer I would like to be able to implement JWT authentication using SSX because it allows to scale the server in a simpler form.

To add to this, cookies aren't viable solution when you need to implement iframe or avoid getting blocked by IPT2.
Same-site set to strict or lax doesn't work when someone embeds an iframe on a different domain than iframmed site.
So would be good to have this as an example.

Is this issue still open? @obstropolos

Is this issue still open? @obstropolos

Yes - @iankressin has provided a PR here that we will be reviewing shortly.


Community Articles updated

Hi,
I have updated the community articles section with my blog posts
Poornima

Amazing articles @poornimanayar!
This will be merged in right away!
#h5yr!


Button size doesn't change inside buttons class

Hi, i don't know there another way to change the button size inside button groups but when i put size class in button inside groups, it doesn't work.. how my code look like:

        <button class="ui labeled icon button small">update</button>
        <button class="ui red labeled icon button">delete</button>

Just putting the size class on groups do the thing

        <button class="ui labeled icon button">update</button>
        <button class="ui red labeled icon button">delete</button>


Refresh

Leave doc and rejoin to refresh all comments and buffer in case things get too far out of wack.

Marking won't fix. Can do this manually


NetworkManager with ifcfg-rh doesn't like routes with specified proto

On systems with the initscripts package controlling the network, such as RHEL 7, it was normal to use proto kernel in routes in the configurations /etc/sysconfig/network-scripts/route-*, because they were used literally by network initscript. On systems with NetworkManager, these configurations are interpreted by the ifcfg-rh plugin, and it seems to not allow specificproto and instead prefers nothing (which means the static proto will be used).
c2-ec2-netutils for rhel generate route configs with routes with proto kernel in them.
https://github.com/C2Devel/c2-ec2-netutils/blob/6505e30dd0e402579afd6736ab856e81062bc1a3/ec2net-functions#L118-L121
This causes a warning on RHEL8-9:
NetworkManager[756]: <warn>  [1685325176.7685] ifcfg-rh:     ignoring invalid route at "        <IP_ADDRESS>/20 dev eth1 proto kernel scope link src <IP_ADDRESS> table 10001" (/etc/sysconfig/network-scripts/route-eth1:2): Unrecognized argument ("to" is duplicate or "proto" is garbage)

And routes are applied with proto static:
~# ip r s t 10001
default via <IP_ADDRESS> dev eth1 proto static metric 104
<IP_ADDRESS> dev eth1 proto static scope link metric 104
~#

On Fedora 38 (aka RHEL 10) this causes the same warning:
NetworkManager[541]: <warn>  [1685325497.1294] ifcfg-rh:     ignoring invalid route at "        <IP_ADDRESS>/20 dev eth1 proto kernel scope link src <IP_ADDRESS> table 10001" (/etc/sysconfig/network-scripts/route-eth1:2): Unrecognized argument ("to" is duplicate or "proto" is garbage)

But the routes are not applied at all:
~# ip r s t 10001
default via <IP_ADDRESS> dev eth1 proto static metric 104
~#

Fixed in https://github.com/C2Devel/c2-ec2-netutils/pull/8


Import sp_runtime::generic::Era

From the Substrate Technical channel:

Hello @here,
I am tring to run light clint code :-

use substrate_api_client::{Api, node_metadata::Metadata, XtStatus,compose_extrinsic,extrinsic::xt_primitives::UncheckedExtrinsicV4};
use sp_core::sr25519;
use keyring::AccountKeyring;
use sp_core::crypto::Pair;

fn main() {
    // instantiate an Api that connects to the given address
    let url = "<IP_ADDRESS>:9944";
    // if no signer is set in the whole program, we need to give to Api a specific type instead of an associated type
    // as during compilation the type needs to be defined.
    let from = AccountKeyring::Alice.pair();
    let mut api = Api::new(format!("ws://{}", url)).set_signer(from);
    let xt: UncheckedExtrinsicV4<_> = compose_extrinsic!( api.clone(),"System", "create_claim");
    println!("[+] Composed Extrinsic:\n {:?}\n", xt);
    let signer = AccountKeyring::Alice.pair();
    api.signer = Some(signer);
    let tx_hash = api.send_extrinsic(xt.hex_encode(), XtStatus::Finalized).unwrap();
    println!("[+] Transaction got finalized. Hash: {:?}", tx_hash);

}

But getting error :-
error[E0433]: failed to resolve: use of undeclared type or module `sp_runtime`
  --> src/main.rs:14:39
   |
14 |     let xt: UncheckedExtrinsicV4<_> = compose_extrinsic!( api.clone(),"System", "create_claim");
   |                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ use of undeclared type or module `sp_runtime`
   |
   = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)

error[E0433]: failed to resolve: use of undeclared type or module `Era`
  --> src/main.rs:14:39
   |
14 |     let xt: UncheckedExtrinsicV4<_> = compose_extrinsic!( api.clone(),"System", "create_claim");
   |                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ use of undeclared type or module `Era`
   |
   = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)

Cause by: https://github.com/scs/substrate-api-client/blob/ee31f4e6d2004ed9b841f31011516d81b23f6f11/src/extrinsic/mod.rs#L71
Some better re-exporting will solve this

[dependencies.sp-runtime]
version = '2.0.0-rc5'
package = "sp-runtime"
default-features=false```

Adding this to Cargo.toml worked for me

@Gauthamastro yes, that will work, but instead this library could simply re-export it so that you dont need to import other libraries that you would not otherwise need.

@Gauthamastro yes, that will work, but instead this library could simply re-export this dependency so that you dont need to import other libraries that you would not otherwise need.

Sure that will be nice and clean!


Sign in UI updates

Issue #, if available:
Description of changes:
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

update to vuetify and amplify authentication forms


Add color zilla

ColorZilla is the most user friendly, full-featured, secure and reliable color picker and color related suite of tools. It is one of the most popular Chrome and Firefox developer extensions with over 10 million downloads worldwide.

Please go ahead @Ahlyab

Closing this as resolved in #25


feat: add ult_ofNat

[ ] depends on: #25

You want 'feat: ' in the commit message.

I've simplified the proof by extracting two more intermediate simp-lemmas. One of which I've extracted into a separate PR, #25.
The other is a lemma about Fin. Maybe we bundle that one in this PR, so that it's clear why we care about a non-bitvector lemma? Or should we keep sticking to the one-lemma-per-PR workflow?

We should not pull them apart further than needed. If they are individually simple and can be reviewed in less than 5', we are good.

@alexkeizer I'll PR this once your PR goes through.

@alexkeizer I'll PR this once your PR goes through.

That PR was merged, and I've merged it in this branch

Opened at https://github.com/leanprover/std4/pull/664


rework: Copy trait explanation

The important thing to note here is that this is a completely free operation because variables are a Cairo abstraction only and because values in Cairo are always immutable.

This line is a bit confusing when it comes to explaining the Copy trait. The copy mechanism plays only when interacting with functions: a value is either moved or copied (or snapped!).
In Rust, copy is a bit different:
let x: i32 = 1;
let y:i32 = x;

This will allocate 8 bits of memory for both x and y. Conceptually, in Cairo, this would only allocate one cell, x and y being "labels" to this cell. In reality, it's up to the compiler to determine how x and y might be used later and figure out what to do with memory, as Cairo is a high level language. Unless x and y are consumed by something else (a computation, a function...) no memory would even be alocated.
All in all, copy is more of a guardrail mechanism that ensures a value owns no mutable memory, and is thus safe to use without moving it. And the only types in Cairo that do own mutable memory are Dicts and Arrays.

Can I take this?


Migrate to EXPath HTTP Client module

Since the eXist httpclient module is deprecated and will be removed in eXistDB 5.0.0 we should replace calls to httpclient:get() with http:send-request() of the EXPath HTTP Client module.

done in #86


OWASP config does not need copyright verbage

https://github.com/8x8Cloud/fiql-elasticsearch/blob/ff8e626d30493824d7346ac1524b4c34d2c297b2/build/owasp-scan-suppression.xml#L3

@rljohnsn - yeah, I'd set those up in IDEA and they sorta came along for the ride. Thinking about it though it's probably just best to remove the notices. I'll be doing most of the maintenance as a free agent anyway...


connection timed out

Accessing the frontpage or trying to select the libraries to display, i got this error: Connection timed out after 10000 milliseconds
PMS is on a server at home.
PLPP is on a webserver not at home.
pasting the url "http://xxxx.xxxx.xxx:32400/library/sections?X-Plex-Token=xxxxxxxxxxxxxxxxx" in the browser, it perfectly fetches all the data.

Can the Server hosting PLPP reach your Home, IE: via ping? If no, that's your issue. If yes, then I would see if the Server can telnet to your Home on port 32400 to see if it's just a firewall issue.


where to download dataset

when I run vision/references/classification/train.py, where to download datasets01/imagenet_full_size/061417?

You can download it from http://image-net.org/download


Add PiecewiseLinearNumericalEncoder

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 100.00%. Comparing base (9cf25a1) to head (89d084d).
Report is 1 commits behind head on main.

Additional details and impacted files
@@            Coverage Diff            @@
##              main      #358   +/-   ##
=========================================
  Coverage   100.00%   100.00%
=========================================
  Files          101       102    +1
  Lines         3240      3268   +28
  Branches       283       284    +1
=========================================
+ Hits          3240      3268   +28

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


Unr 3408

…device
Description
remove the UE4Commandline.txt from the device when the session ends (when click Cancel button from Running GDKShooter on xx message window)
Release note
REQUIRED: add new class FSpatialGDKEditorCommandLineArgsManager to push or remove the ue4commandlineargs.txt. Modify class FSpatialGDKEditorLayoutDetails to use the interface from
FSpatialGDKEditorCommandLineArgsManager to push or remove it.
Do not modify the Unreal Engine source code
Register delegate to hook the event when the Cancel button was clicked.
Clean up some unused code from FSpatialGDKEditorLayoutDetails
Add log when the file was removed.
Tests
I test it on Android device but I haven't the iOS device to test this issue.
If success show 'LogSpatialGDKEditorCommandLineArgsManager: Remove ue4commandline.txt from the Android device.  ' on Output Log window.

Does this only remove the command line if you cancel the launch session?
We should also handle the case of running the session to completion (e.g. finishing the session by killing the app on the phone), as that will currently still leave the command line file on the device.

Also, for iOS, we need to first check if this is an issue at all, since AFAIK the command line file goes directly into the bundle, so I believe it may be overwritten when installing the app for the playtest so it wouldn't have this problem.
Once again, I'm not 100% sure about that so should test first.

Also, for iOS, we need to first check if this is an issue at all, since AFAIK the command line file goes directly into the bundle, so I believe it may be overwritten when installing the app for the playtest so it wouldn't have this problem.
Once again, I'm not 100% sure about that so should test first.

Yes it goes in the bundle, this issue should not exist with iOS.


Update City Council

They have the wrong City Council Districts in the data, and we're trying to quickly patch the data.

Info here:
https://stackoverflow.com/questions/1746125/update-columns-values-with-column-of-another-table-based-on-condition
CSV of this table:
https://docs.google.com/spreadsheets/d/1FCJQ3Ms8WNRVz6Wu77pwIrMujm3leuJ0/edit?pli=1#gid=1021466727
Uploaded here (but will delete after task complete): https://cityenergy-seattle.carto.com/dataset/propertyccupdates_2014_xlsx_carto_import
I duplicated a copy of the live data as is in case things go sideways
https://cityenergy-seattle.carto.com/dataset/seattle_buildings_2022_update_copy
This seems correct but it exceeds CARTO's API limit:
UPDATE public.seattle_buildings_2022_update
   SET councildistrict=(SELECT _2014_c_district FROM propertyccupdates_2014_xlsx_carto_import WHERE public.seattle_buildings_2022_update.id =propertyccupdates_2014_xlsx_carto_import.buildingid)

It's the subquery that's the problem. This worked fine:
UPDATE public.seattle_buildings_2022_update
   SET councildistrict=_2014_c_district
FROM propertyccupdates_2014_xlsx_carto_import where public.seattle_buildings_2022_update.id=propertyccupdates_2014_xlsx_carto_import.buildingid

But now why are some null?
There are 10 with councildistrict as null

Looks like it is these two buildings:
29069
49911

I'll ask Mike about those

Confirmed from Mike we can delete those, so
DELETE FROM public.seattle_buildings_2022_update where id in (29069,49911)

For the record:

29069 – The Lakeshore is a property we just discovered that was benchmarking in unincorporated King County down near Renton. This is a weird case where they came up in our records as having a Seattle address, but they definitely are outside of Seattle city limits. We can remove it from the dataset.
49911 – Same thing, this building is just outside of city limits in unincorporated King County. They were on our list for benchmarking, but were not actually required to do so. You can remove it from the dataset.

Null is no longer an option:

Looking back, I believe this was an issue in the source data from Seattle. But today we had a similar issue come up but it seems like the cause is different.
Including notes here for future if it comes up again:

For whatever reason, I’m seeing the earlier issue with the map where it is showing a bunch of properties as erroneously being in council district 1. Can you figure out how this might have happened?
The only time we recently edited the data was when we fixed the percentage calculations a few weeks ago, but that dataset on the Sharepoint appears to not have this issue. Is this possibly something that is happening within Carto? Can we recover the old CC districts from a prior upload?

@tomay findings:

I just uploaded the Excel file from sharepoint (presumably the same one we worked with three weeks ago, and uploaded to CARTO), and it has 0 nulls. Weird.

that is this file
https://seattlegov.sharepoint.com/:x:/r/sites/OSE-External/Shared Documents/Benchmarking/GreenInfo OSE 2023/CARTO files/2022 Carto/seattle_buildings_2022_update MR 20240502.csv?d=w9e6ab26685c04477852aeb2acfbfc329&csf=1&web=1&e=NrV6aZ
Sharepoint links are notoriously unstable. This is the path:

So this doesn't seem like a source data issue, but also supposedly it was working when we updated the data a couple of weeks ago, and then it stopped working?
A mystery.
Tom used the re-uploaded data to join back in the correct council districts.
If this happens again we'll have to really dig in and find out what the heck is going on!

This is the query that time:
UPDATE public.seattle_buildings_2022_update
   SET seattle_buildings_2022_update.councildistrict=councildistrict
FROM seattle_buildings_2022_update_mr_20240425_v21 where public.seattle_buildings_2022_update.id=seattle_buildings_2022_update_mr_20240425_v21.id


Dep 618/cost reporting to slack

Description
Adds a scheduled weekly workflow for AWS billing trends and posts to slack. Currently going to devops alerts pending any tweaks/input from the team that we might want to make before updating the slack webhook to point at team-tech.
Context
Part of the devops team's efforts to control AWS costs and make teams accountable.
N.B. Will update github settings file etc. in separate PR

Can this be merged?


benchmarks of arraymorph vs "standard" morphology

Todo:
Retest the arraymorph functionality and add example script to show plot of time to save for arraymorph vs "standard" morphology


Help text & sample config improvements

Adds color and alias examples to the sample config, closes #682
Also clarifies the behavior of externalip when no port is specified, which caused confusion in #683, closes #651

@Roasbeef done, thanks :)


Reserved keywords are not picked up

Initial Checks

[X] I confirm that I'm using Pydantic V2

Description
I get an external json, and I want to parse it through Pydantic dataclasses.
However, when reserved keywords are used, I can't (obviously) use these as class variables. So I thought the alias was a good way to handle these, but this doesn't work either as they are injected through generate_dataclass_signature.
How can I handle this within pydantic2?
Example Code
from pydantic.dataclasses import dataclass, Field

incoming_json = {'class': 'Math', 'score': '10/10'}

@dataclass
class Course:
    score: str
    class_: str = Field(alias='class')

assert Course(**incoming_json).class_ == 'Math', "Should be math!"

Python, Pydantic & OS Version
pydantic version: 2.0.3
        pydantic-core version: 2.3.0 release build profile
                 install path: [..]\Lib\site-packages\pydantic
               python version: 3.11.6 | packaged by conda-forge | (main, Oct  3 2023, 10:29:11) [MSC v.1935 64 bit (AMD64)]
                     platform: Windows-10-10.0.19045-SP0
     optional deps. installed: ['typing-extensions']

Somehow when installing pydantic via pip with "pydantic>1", installed "2.0.3" for me. Removing it and just letting it float installed 2.5.0 which already resolved this issue.


langchain[patch]: Migrate tools to treat community imports as optional

Migrate tools to treat community imports as optional

https://github.com/langchain-ai/langchain/issues/21080


User account not received

Azure Data Studio Version: Latest
OS Version: Windows 11 22H2 22621.1702

Steps to Reproduce:

Updated ADS
Database connections no longer work

Microsoft.Data.SqlClient.SqlException (0x80131904): User account not received.
---> System.Exception: User account not received.
at Microsoft.SqlTools.Authentication.Authenticator.GetTokenAsync(AuthenticationParams params, CancellationToken cancellationToken) in //src/Microsoft.SqlTools.Authentication/Authenticator.cs:line 110
at Microsoft.SqlTools.Authentication.Sql.AuthenticationProvider.AcquireTokenAsync(SqlAuthenticationParameters parameters) in //src/Microsoft.SqlTools.Authentication/Sql/AuthenticationProvider.cs:line 90
at Microsoft.Data.SqlClient.SqlInternalConnectionTds.<>c__DisplayClass147_1.<b__1>d.MoveNext()
--- End of stack trace from previous location ---
at Microsoft.Data.SqlClient.SqlInternalConnectionTds.GetFedAuthToken(SqlFedAuthInfo fedAuthInfo)
at Microsoft.Data.SqlClient.SqlInternalConnectionTds.GetFedAuthToken(SqlFedAuthInfo fedAuthInfo)
at Microsoft.Data.SqlClient.SqlInternalConnectionTds.OnFedAuthInfo(SqlFedAuthInfo fedAuthInfo)
at Microsoft.Data.SqlClient.TdsParser.TryRun(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj, Boolean& dataReady)
at Microsoft.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj)
at Microsoft.Data.SqlClient.SqlInternalConnectionTds.CompleteLogin(Boolean enlistOK)
at Microsoft.Data.SqlClient.SqlInternalConnectionTds.AttemptOneLogin(ServerInfo serverInfo, String newPassword, SecureString newSecurePassword, Boolean ignoreSniOpenTimeout, TimeoutTimer timeout, Boolean withFailover)
at Microsoft.Data.SqlClient.SqlInternalConnectionTds.LoginNoFailover(ServerInfo serverInfo, String newPassword, SecureString newSecurePassword, Boolean redirectedUserInstance, SqlConnectionString connectionOptions, SqlCredential credential, TimeoutTimer timeout)
at Microsoft.Data.SqlClient.SqlInternalConnectionTds.OpenLoginEnlist(TimeoutTimer timeout, SqlConnectionString connectionOptions, SqlCredential credential, String newPassword, SecureString newSecurePassword, Boolean redirectedUserInstance)
at Microsoft.Data.SqlClient.SqlInternalConnectionTds..ctor(DbConnectionPoolIdentity identity, SqlConnectionString connectionOptions, SqlCredential credential, Object providerInfo, String newPassword, SecureString newSecurePassword, Boolean redirectedUserInstance, SqlConnectionString userConnectionOptions, SessionData reconnectSessionData, Boolean applyTransientFaultHandling, String accessToken, DbConnectionPool pool)
at Microsoft.Data.SqlClient.SqlConnectionFactory.CreateConnection(DbConnectionOptions options, DbConnectionPoolKey poolKey, Object poolGroupProviderInfo, DbConnectionPool pool, DbConnection owningConnection, DbConnectionOptions userOptions)
at Microsoft.Data.ProviderBase.DbConnectionFactory.CreateNonPooledConnection(DbConnection owningConnection, DbConnectionPoolGroup poolGroup, DbConnectionOptions userOptions)
at Microsoft.Data.ProviderBase.DbConnectionFactory.<>c__DisplayClass48_0.b__0(Task1 _)    at System.Threading.Tasks.ContinuationResultTaskFromResultTask2.InnerInvoke()
at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state)
--- End of stack trace from previous location ---
at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state)
at System.Threading.Tasks.Task.ExecuteWithThreadLocal(Task& currentTaskSlot, Thread threadPoolThread)
--- End of stack trace from previous location ---
at Microsoft.SqlTools.ServiceLayer.Connection.ReliableConnection.ReliableSqlConnection.<>c__DisplayClass30_0.<b__0>d.MoveNext() in //src/Microsoft.SqlTools.ManagedBatchParser/ReliableConnection/ReliableSqlConnection.cs:line 313
--- End of stack trace from previous location ---
at Microsoft.SqlTools.ServiceLayer.Connection.ConnectionService.TryOpenConnection(ConnectionInfo connectionInfo, ConnectParams connectionParams) in //src/Microsoft.SqlTools.ServiceLayer/Connection/ConnectionService.cs:line 692
ClientConnectionId:e2c36b21-edfd-45cc-a3cd-6361fa610244

Does this issue occur when all extensions are disabled?: Yes/No
Yes

Hi @DoblerDanRolfe
Please share verbose logs from "Azure accounts" output pane or Azure Accounts log file as per details above. You may need to reload ADS to enable verbose logging.

1-Azure Accounts.log

Hi @DoblerDanRolfe
Thanks for the logs, I'm able to reproduce the error, please follow below steps to mitigate the issue:

Close Azure Data Studio
Remove the cache files in folder: C:\Users\~\AppData\Roaming\azuredatastudio\Azure Accounts
Delete these credentials in "Windows Credentials Manager":

Restart Azure Data Studio and refresh credentials as prompted.

These files/creds will be regenerated fresh for you and you should be unblocked. I'll look into making sure the cleanup happens when this situation arises.

Still nothing after completing the steps.
Microsoft.Data.SqlClient.SqlException (0x80131904): User account not received.
---> System.Exception: User account not received.
at Microsoft.SqlTools.Authentication.Authenticator.GetTokenAsync(AuthenticationParams params, CancellationToken cancellationToken) in //src/Microsoft.SqlTools.Authentication/Authenticator.cs:line 110
at Microsoft.SqlTools.Authentication.Sql.AuthenticationProvider.AcquireTokenAsync(SqlAuthenticationParameters parameters) in //src/Microsoft.SqlTools.Authentication/Sql/AuthenticationProvider.cs:line 90
at Microsoft.Data.SqlClient.SqlInternalConnectionTds.<>c__DisplayClass147_1.<b__1>d.MoveNext()
--- End of stack trace from previous location ---
at Microsoft.Data.SqlClient.SqlInternalConnectionTds.GetFedAuthToken(SqlFedAuthInfo fedAuthInfo)
at Microsoft.Data.SqlClient.SqlInternalConnectionTds.GetFedAuthToken(SqlFedAuthInfo fedAuthInfo)
at Microsoft.Data.SqlClient.SqlInternalConnectionTds.OnFedAuthInfo(SqlFedAuthInfo fedAuthInfo)
at Microsoft.Data.SqlClient.TdsParser.TryRun(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj, Boolean& dataReady)
at Microsoft.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj)
at Microsoft.Data.SqlClient.SqlInternalConnectionTds.CompleteLogin(Boolean enlistOK)
at Microsoft.Data.SqlClient.SqlInternalConnectionTds.AttemptOneLogin(ServerInfo serverInfo, String newPassword, SecureString newSecurePassword, Boolean ignoreSniOpenTimeout, TimeoutTimer timeout, Boolean withFailover)
at Microsoft.Data.SqlClient.SqlInternalConnectionTds.LoginNoFailover(ServerInfo serverInfo, String newPassword, SecureString newSecurePassword, Boolean redirectedUserInstance, SqlConnectionString connectionOptions, SqlCredential credential, TimeoutTimer timeout)
at Microsoft.Data.SqlClient.SqlInternalConnectionTds.OpenLoginEnlist(TimeoutTimer timeout, SqlConnectionString connectionOptions, SqlCredential credential, String newPassword, SecureString newSecurePassword, Boolean redirectedUserInstance)
at Microsoft.Data.SqlClient.SqlInternalConnectionTds..ctor(DbConnectionPoolIdentity identity, SqlConnectionString connectionOptions, SqlCredential credential, Object providerInfo, String newPassword, SecureString newSecurePassword, Boolean redirectedUserInstance, SqlConnectionString userConnectionOptions, SessionData reconnectSessionData, Boolean applyTransientFaultHandling, String accessToken, DbConnectionPool pool)
at Microsoft.Data.SqlClient.SqlConnectionFactory.CreateConnection(DbConnectionOptions options, DbConnectionPoolKey poolKey, Object poolGroupProviderInfo, DbConnectionPool pool, DbConnection owningConnection, DbConnectionOptions userOptions)
at Microsoft.Data.ProviderBase.DbConnectionFactory.CreateNonPooledConnection(DbConnection owningConnection, DbConnectionPoolGroup poolGroup, DbConnectionOptions userOptions)
at Microsoft.Data.ProviderBase.DbConnectionFactory.<>c__DisplayClass48_0.b__0(Task1 _)    at System.Threading.Tasks.ContinuationResultTaskFromResultTask2.InnerInvoke()
at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state)
--- End of stack trace from previous location ---
at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state)
at System.Threading.Tasks.Task.ExecuteWithThreadLocal(Task& currentTaskSlot, Thread threadPoolThread)
--- End of stack trace from previous location ---
at Microsoft.SqlTools.ServiceLayer.Connection.ReliableConnection.ReliableSqlConnection.<>c__DisplayClass30_0.<b__0>d.MoveNext() in //src/Microsoft.SqlTools.ManagedBatchParser/ReliableConnection/ReliableSqlConnection.cs:line 313
--- End of stack trace from previous location ---
at Microsoft.SqlTools.ServiceLayer.Connection.ConnectionService.TryOpenConnection(ConnectionInfo connectionInfo, ConnectParams connectionParams) in //src/Microsoft.SqlTools.ServiceLayer/Connection/ConnectionService.cs:line 692
ClientConnectionId:f8d164b1-8a31-493b-909e-6227d3e1cc8d
From: Cheena Malhotra @.>
Sent: Thursday, June 1, 2023 3:40 PM
To: microsoft/azuredatastudio @.>
Cc: Daniel Rolfe @.>; Mention @.>
Subject: Re: [microsoft/azuredatastudio] User account not received (Issue #23286)
Hi @DoblerDanRolfehttps://github.com/DoblerDanRolfe
Thanks for the logs, I'm able to reproduce the error, please follow below steps to mitigate the issue:

Close Azure Data Studio
Remove the cache files in folder: C:\Users~\AppData\Roaming\azuredatastudio\Azure Accounts
Delete these credentials in "Windows Credentials Manager":
*   [image] https://user-images.githubusercontent.com/13396919/242706828-b7851f01-6a08-43fb-bfa8-22800777ca3f.png
*   [image] https://user-images.githubusercontent.com/13396919/242707106-8c47a3a0-8a9c-4bc3-a346-7d7e8b2b35f7.png
Restart Azure Data Studio and refresh credentials as prompted.

These files/creds will be regenerated fresh for you and you should be unblocked. I'll look into making sure the cleanup happens when this situation arises.
—
Reply to this email directly, view it on GitHubhttps://github.com/microsoft/azuredatastudio/issues/23286#issuecomment-1572668567, or unsubscribehttps://github.com/notifications/unsubscribe-auth/BAH7UAGAFFDRCR3XQY3UGJTXJDV23ANCNFSM6AAAAAAYXJLUY4.
You are receiving this because you were mentioned.Message ID<EMAIL_ADDRESS>CONFIDENTIALITY NOTE: The information contained in this message and any attachments are privileged and confidential and intended only for the named recipient(s). If you have received this message in error, you are prohibited from reviewing, copying, distributing or using the information. Please contact the sender immediately by return e-mail and delete the original message and attachments. The contents of this e-mail do not necessarily represent the views or policies of or its employees.

They were attached to my previous reply, did they not come through?
Those messages are not found in the logs.
From: Cheena Malhotra @.>
Sent: Thursday, June 1, 2023 3:56 PM
To: microsoft/azuredatastudio @.>
Cc: Daniel Rolfe @.>; Mention @.>
Subject: Re: [microsoft/azuredatastudio] User account not received (Issue #23286)
Can you provide new 'VERBOSE' logs and confirm that the credentials (IV/KEY) are created for you?
You should see these logs if credentials were saved to Credential Manager:
[Information]: FileEncryptionHelper: Successfully saved encryption key accessTokenCache-iv for MSAL persistent cache encryption in system credential store. - []
[Information]: FileEncryptionHelper: Successfully saved encryption key accessTokenCache-key for MSAL persistent cache encryption in system credential store. - []
—
Reply to this email directly, view it on GitHubhttps://github.com/microsoft/azuredatastudio/issues/23286#issuecomment-1572685335, or unsubscribehttps://github.com/notifications/unsubscribe-auth/BAH7UACSLGPKK3H4BY6RMMLXJDXUBANCNFSM6AAAAAAYXJLUY4.
You are receiving this because you were mentioned.Message ID: @.***>
CONFIDENTIALITY NOTE: The information contained in this message and any attachments are privileged and confidential and intended only for the named recipient(s). If you have received this message in error, you are prohibited from reviewing, copying, distributing or using the information. Please contact the sender immediately by return e-mail and delete the original message and attachments. The contents of this e-mail do not necessarily represent the views or policies of or its employees.

FYI  I was able to resolve this by rebooting PC – and repeating the steps.
Including fully removing the account from the Connected Accounts Screen.
From: Cheena Malhotra @.>
Sent: Thursday, June 1, 2023 3:56 PM
To: microsoft/azuredatastudio @.>
Cc: Daniel Rolfe @.>; Mention @.>
Subject: Re: [microsoft/azuredatastudio] User account not received (Issue #23286)
Can you provide new 'VERBOSE' logs and confirm that the credentials (IV/KEY) are created for you?
You should see these logs if credentials were saved to Credential Manager:
[Information]: FileEncryptionHelper: Successfully saved encryption key accessTokenCache-iv for MSAL persistent cache encryption in system credential store. - []
[Information]: FileEncryptionHelper: Successfully saved encryption key accessTokenCache-key for MSAL persistent cache encryption in system credential store. - []
—
Reply to this email directly, view it on GitHubhttps://github.com/microsoft/azuredatastudio/issues/23286#issuecomment-1572685335, or unsubscribehttps://github.com/notifications/unsubscribe-auth/BAH7UACSLGPKK3H4BY6RMMLXJDXUBANCNFSM6AAAAAAYXJLUY4.
You are receiving this because you were mentioned.Message ID: @.***>
CONFIDENTIALITY NOTE: The information contained in this message and any attachments are privileged and confidential and intended only for the named recipient(s). If you have received this message in error, you are prohibited from reviewing, copying, distributing or using the information. Please contact the sender immediately by return e-mail and delete the original message and attachments. The contents of this e-mail do not necessarily represent the views or policies of or its employees.

Closing issue as fix has been merged in Main, will be available in July release!

Hi @DoblerDanRolfe
Thanks for the logs, I'm able to reproduce the error, please follow below steps to mitigate the issue:

Close Azure Data Studio

Remove the cache files in folder: C:\Users\~\AppData\Roaming\azuredatastudio\Azure Accounts

Delete these credentials in "Windows Credentials Manager":

Restart Azure Data Studio and refresh credentials as prompted.

These files/creds will be regenerated fresh for you and you should be unblocked. I'll look into making sure the cleanup happens when this situation arises.

These steps resolved the "User account<EMAIL_ADDRESS>not found in MSAL cache, please add linked account or refresh account credentialsl."

Thanks @RyanGDay  - looks like this bugfix has already been implemented into main branch and will come out in july release

Is there a work around for this issue until the July release?
Installed the latest release (1.44.1 Linux Generic) on Ubuntu 23.04. Azure DS can browse available databases but as soon as I try to connect to one of them this error pops.

I'm still unable to resolve the issue on Linux, unfortunately.
Azure Data Studio Version: 1.44.1
Commit: 8f53a316fa00a98264f1ab119641cd540b5af25c
Date: 2023-06-01T02:10:44.473Z
OS: Linux x64 6.4.1-arch1-1
I tried unlinking account from Azure Data Studio, removing directories ~/.config/azuredatastudio/Azure Accounts and ~/.config/azuredatastudio/CachedData, and logging back in via private chrome window to ensure there is no cached login, but to no avail, I still get the error when I try to connect.
Any more tips how could I resolve the problem, while waiting for the July release?
Stacktrace:
'''
Microsoft.Data.SqlClient.SqlException (0x80131904): User account '[redacted]@[redacted]' not found in MSAL cache, please add linked account or refresh account credentials.
---> System.Exception: User account '[redacted]@[redacted]' not found in MSAL cache, please add linked account or refresh account credentials.
at Microsoft.SqlTools.Authentication.Authenticator.GetTokenAsync(AuthenticationParams params, CancellationToken cancellationToken) in //src/Microsoft.SqlTools.Authentication/Authenticator.cs:line 129
at Microsoft.SqlTools.Authentication.Sql.AuthenticationProvider.AcquireTokenAsync(SqlAuthenticationParameters parameters) in //src/Microsoft.SqlTools.Authentication/Sql/AuthenticationProvider.cs:line 90
at Microsoft.Data.SqlClient.SqlInternalConnectionTds.<>c__DisplayClass147_1.<b__1>d.MoveNext()
--- End of stack trace from previous location ---
at Microsoft.Data.SqlClient.SqlInternalConnectionTds.GetFedAuthToken(SqlFedAuthInfo fedAuthInfo)
at Microsoft.Data.SqlClient.SqlInternalConnectionTds.GetFedAuthToken(SqlFedAuthInfo fedAuthInfo)
at Microsoft.Data.SqlClient.SqlInternalConnectionTds.OnFedAuthInfo(SqlFedAuthInfo fedAuthInfo)
at Microsoft.Data.SqlClient.TdsParser.TryRun(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj, Boolean& dataReady)
at Microsoft.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj)
at Microsoft.Data.SqlClient.SqlInternalConnectionTds.CompleteLogin(Boolean enlistOK)
at Microsoft.Data.SqlClient.SqlInternalConnectionTds.AttemptOneLogin(ServerInfo serverInfo, String newPassword, SecureString newSecurePassword, Boolean ignoreSniOpenTimeout, TimeoutTimer timeout, Boolean withFailover)
at Microsoft.Data.SqlClient.SqlInternalConnectionTds.LoginNoFailover(ServerInfo serverInfo, String newPassword, SecureString newSecurePassword, Boolean redirectedUserInstance, SqlConnectionString connectionOptions, SqlCredential credential, TimeoutTimer timeout)
at Microsoft.Data.SqlClient.SqlInternalConnectionTds.OpenLoginEnlist(TimeoutTimer timeout, SqlConnectionString connectionOptions, SqlCredential credential, String newPassword, SecureString newSecurePassword, Boolean redirectedUserInstance)
at Microsoft.Data.SqlClient.SqlInternalConnectionTds..ctor(DbConnectionPoolIdentity identity, SqlConnectionString connectionOptions, SqlCredential credential, Object providerInfo, String newPassword, SecureString newSecurePassword, Boolean redirectedUserInstance, SqlConnectionString userConnectionOptions, SessionData reconnectSessionData, Boolean applyTransientFaultHandling, String accessToken, DbConnectionPool pool)
at Microsoft.Data.SqlClient.SqlConnectionFactory.CreateConnection(DbConnectionOptions options, DbConnectionPoolKey poolKey, Object poolGroupProviderInfo, DbConnectionPool pool, DbConnection owningConnection, DbConnectionOptions userOptions)
at Microsoft.Data.ProviderBase.DbConnectionFactory.CreateNonPooledConnection(DbConnection owningConnection, DbConnectionPoolGroup poolGroup, DbConnectionOptions userOptions)
at Microsoft.Data.ProviderBase.DbConnectionFactory.<>c__DisplayClass48_0.b__0(Task1 _)    at System.Threading.Tasks.ContinuationResultTaskFromResultTask2.InnerInvoke()
at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state)
--- End of stack trace from previous location ---
at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state)
at System.Threading.Tasks.Task.ExecuteWithThreadLocal(Task& currentTaskSlot, Thread threadPoolThread)
--- End of stack trace from previous location ---
at Microsoft.SqlTools.ServiceLayer.Connection.ReliableConnection.ReliableSqlConnection.<>c__DisplayClass30_0.<b__0>d.MoveNext() in //src/Microsoft.SqlTools.ManagedBatchParser/ReliableConnection/ReliableSqlConnection.cs:line 313
--- End of stack trace from previous location ---
at Microsoft.SqlTools.ServiceLayer.Connection.ConnectionService.TryOpenConnection(ConnectionInfo connectionInfo, ConnectParams connectionParams) in //src/Microsoft.SqlTools.ServiceLayer/Connection/ConnectionService.cs:line 692
ClientConnectionId:[redacted]
'''
1-Azure-Acount-redacted.log

@mishioo
Please try clearing token cache with command: Azure Accounts: Clear Azure Account token cache and refresh account credentials again when prompted, that should help resolve any cache issues.

I am also running 1.44.1 with linux. Clearing the Account token cache did not help. Same error.
bye
Microsoft.Data.SqlClient.SqlException (0x80131904): User account '[redacted]' not found in MSAL cache, please add linked account or refresh account credentials.
 ---> System.Exception: User account '[redacted]' not found in MSAL cache, please add linked account or refresh account credentials.
   at Microsoft.SqlTools.Authentication.Authenticator.GetTokenAsync(AuthenticationParams params, CancellationToken cancellationToken) in /_/src/Microsoft.SqlTools.Authentication/Authenticator.cs:line 129
   at Microsoft.SqlTools.Authentication.Sql.AuthenticationProvider.AcquireTokenAsync(SqlAuthenticationParameters parameters) in /_/src/Microsoft.SqlTools.Authentication/Sql/AuthenticationProvider.cs:line 90
   at Microsoft.Data.SqlClient.SqlInternalConnectionTds.<>c__DisplayClass147_1.<<GetFedAuthToken>b__1>d.MoveNext()
--- End of stack trace from previous location ---
   at Microsoft.Data.SqlClient.SqlInternalConnectionTds.GetFedAuthToken(SqlFedAuthInfo fedAuthInfo)
   at Microsoft.Data.SqlClient.SqlInternalConnectionTds.GetFedAuthToken(SqlFedAuthInfo fedAuthInfo)
   at Microsoft.Data.SqlClient.SqlInternalConnectionTds.OnFedAuthInfo(SqlFedAuthInfo fedAuthInfo)
   at Microsoft.Data.SqlClient.TdsParser.TryRun(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj, Boolean& dataReady)
   at Microsoft.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj)
   at Microsoft.Data.SqlClient.SqlInternalConnectionTds.CompleteLogin(Boolean enlistOK)
   at Microsoft.Data.SqlClient.SqlInternalConnectionTds.AttemptOneLogin(ServerInfo serverInfo, String newPassword, SecureString newSecurePassword, Boolean ignoreSniOpenTimeout, TimeoutTimer timeout, Boolean withFailover)
   at Microsoft.Data.SqlClient.SqlInternalConnectionTds.LoginNoFailover(ServerInfo serverInfo, String newPassword, SecureString newSecurePassword, Boolean redirectedUserInstance, SqlConnectionString connectionOptions, SqlCredential credential, TimeoutTimer timeout)
   at Microsoft.Data.SqlClient.SqlInternalConnectionTds.OpenLoginEnlist(TimeoutTimer timeout, SqlConnectionString connectionOptions, SqlCredential credential, String newPassword, SecureString newSecurePassword, Boolean redirectedUserInstance)
   at Microsoft.Data.SqlClient.SqlInternalConnectionTds..ctor(DbConnectionPoolIdentity identity, SqlConnectionString connectionOptions, SqlCredential credential, Object providerInfo, String newPassword, SecureString newSecurePassword, Boolean redirectedUserInstance, SqlConnectionString userConnectionOptions, SessionData reconnectSessionData, Boolean applyTransientFaultHandling, String accessToken, DbConnectionPool pool)
   at Microsoft.Data.SqlClient.SqlConnectionFactory.CreateConnection(DbConnectionOptions options, DbConnectionPoolKey poolKey, Object poolGroupProviderInfo, DbConnectionPool pool, DbConnection owningConnection, DbConnectionOptions userOptions)
   at Microsoft.Data.ProviderBase.DbConnectionFactory.CreateNonPooledConnection(DbConnection owningConnection, DbConnectionPoolGroup poolGroup, DbConnectionOptions userOptions)
   at Microsoft.Data.ProviderBase.DbConnectionFactory.<>c__DisplayClass48_0.<CreateReplaceConnectionContinuation>b__0(Task`1 _)
   at System.Threading.Tasks.ContinuationResultTaskFromResultTask`2.InnerInvoke()
   at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state)
--- End of stack trace from previous location ---
   at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state)
   at System.Threading.Tasks.Task.ExecuteWithThreadLocal(Task& currentTaskSlot, Thread threadPoolThread)
--- End of stack trace from previous location ---
   at Microsoft.SqlTools.ServiceLayer.Connection.ReliableConnection.ReliableSqlConnection.<>c__DisplayClass30_0.<<OpenAsync>b__0>d.MoveNext() in /_/src/Microsoft.SqlTools.ManagedBatchParser/ReliableConnection/ReliableSqlConnection.cs:line 313
--- End of stack trace from previous location ---
   at Microsoft.SqlTools.ServiceLayer.Connection.ConnectionService.TryOpenConnection(ConnectionInfo connectionInfo, ConnectParams connectionParams) in /_/src/Microsoft.SqlTools.ServiceLayer/Connection/ConnectionService.cs:line 692
ClientConnectionId:e2078ec1-4f4b-47d1-8f69-c70fc4a5fcc6

Hi @mishioo @Anganthier
Opened a new issue to investigate (https://github.com/microsoft/azuredatastudio/issues/23688) as it's a different error message and specific to Linux. Please follow the same for updates on this.

@cheenamalhotra I am still receiving this error after trying all the recommendations. I've tried the manual clearing and also using the Azure Accounts: Clear Azure Account token cache. It keeps asking me to sign in and when I do I get the error.

Hi @tylerberens
Could you please capture logs as per comment (restart ADS after enabling setting) and upload them in a new issue for investigation?

For users on macOS, simply find and toggle the Mssql: Enable Sql Authentication Provider setting. It will clear the cache. I was having this issue on 1.45.1 after months of not having accessed a particular server but where my AAD account's password had since changed.

For users on macOS, simply find and toggle (off and back on) the Mssql: Enable Sql Authentication Provider setting. It will clear the cache and resolve the "User account<EMAIL_ADDRESS>not found in MSAL cache, please add linked account or refresh account credentials" issue. I was having this issue on 1.45.1 after months of not having accessed a particular server but where my AAD account's password had since changed.

This quick fix works on Linux too, but I left it disabled and used MFA access.


HTML in figcaptions?

Hey again.  Your work is priceless.  I was wondering if you could consider HTML to be rendered in figcaptions? To me figcaption content seem to be rendered as text, for example a link is rendered as <a href=" ... Have tried to figure out how to solve it in core.js, but honestly I do not dare to alter the code :) It is not a major problem at all, I just rerender the content in a timeout, but perhaps you have simply not thought about rendering HTML in figcaptions?

Hi, @davidkonrad
Are you saying that the HTML inside the "figcaption" tag doesn't render?
Sorry, can you show me an example of what's going on?

Thank you for the reply. Sorry, dont have an online example.  It seems to me that the figcaption content is rendered inside a div (why?), and that content is sanitized, e.g < is rendered as < and so on.
Test please if the problem is resolved.
Thank you.

Sorry for the long delay. Using your recent version and it is still the same. Everything you can call HTML is cleaned in view-mode. That is links, strong, italic and so on.  It is saved and still present in editor-mode, but when you view the article it is rendered as without HTML. Regards 💓


Allow title of game in alt text to be set in configuration.

Make it possible to define the name of the game in the properties file. Existing properties files will need to be updated to reflect this change.

Added configurable poll duration, too.

I'm of half a mind to turn this into a big configuration update and add a bunch of other options.


get colors from Xresources

The next i3 release will support this feature by using this fresh new lib, could that be possible on pentadactyl?

It's a bad idea because it encourages dependency on X11. Wayland and eventually most terminal emulators following in Wayland's footsteps will not any Xresources, which leads me to think this dependency is a bad idea. Pentadactyl should still be configured with CSS styling, since it is in a browser anyway. You can use :source and select your style sheet to change the browser appearance, even using XUL. Thankfully, XUL has not phased out of Firefox just yet, but they are sure to replace it with something in the future.

Yeah nowadays I do agree to that also, thanks.


Not able to pull parliament2:hgsc ?

Hi,
I tried notable to figure out. I deleted all my images too, how to sort it out ?
sudo docker pull dnanexus/parliament2:hgsc
23cb891a20c: Waiting
7d0b35ba0798: Waiting
c7f65657d722: Waiting
95d76f17846a: Waiting
42e613c0c2f1: Waiting
write /var/lib/docker/tmp/GetImageBlob878237277: no space left on device

I tried Not working in my Linux Cluster. (write /var/lib/docker/tmp/GetImageBlob098952352: no space left on device) sam error after deleting docker images why ?
docker images
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
[doctor]$ docker images prune -a
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
[doctor]$ docker container prune
WARNING! This will remove all stopped containers.
Are you sure you want to continue? [y/N] y
Deleted Containers:
062da04f59be9a7270af14d64274452ff023b77bf9138b3db14af5960eefc915
b7e5675188614748de241c9aa2887d328b7a26619f77a80d9c2724738c55a7d5
Total reclaimed space: 0 B
[doctor]$ docker volume prune
WARNING! This will remove all volumes not used by at least one container.
Are you sure you want to continue? [y/N] y
Total reclaimed space: 0 B
[doctor]$ ./docker pull dnanexus/parliament2:hgsc
Trying to pull repository docker.io/dnanexus/parliament2 ...
hgsc: Pulling from docker.io/dnanexus/parliament2
99ad4e3ced4d: Pulling fs layer
ec5a723f4e2a: Pulling fs layer
2a175e11567c: Pulling fs layer
write /var/lib/docker/tmp/GetImageBlob098952352: no space left on device

I usually run docker system prune -f to remove everything (-f is force though, so I would use this flag with caution).
The image itself should only be ~3GB (the hgsc version is larger than v0.1.8), so it shouldn't take up that much space. What else is on your machine?

My Linux cluster has 90 TB storage free space..
[doctor $]docker system prune -f
Total reclaimed space: 0 B
Why I'm getting this error write "/var/lib/docker/tmp/GetImageBlob098952352: no space left on device"

The cluster may have 90TB, but do you have space on the individual machine you're running this on? Have you tried running df -H? It looks like you've run out of disk space on the individual machine.

Filesystem               Size  Used Avail Use% Mounted on
/dev/mapper/centos-root  197G   78G  110G  42% /
devtmpfs                 504G     0  504G   0% /dev
tmpfs                    504G   52K  504G   1% /dev/shm
tmpfs                    504G  494M  504G   1% /run
tmpfs                    504G     0  504G   0% /sys/fs/cgroup
/dev/sda2                2.0G  324M  1.7G  16% /boot
/dev/mapper/centos-home  765G  506G  220G  70% /home
/dev/mapper/centos-var   9.8G  9.2G   39M 100% /var
/dev/sdb                  82T   73T  5.3T  94% /data
tmpfs                    101G   52K  101G   1% /run/user/0
tmpfs                    101G     0  101G   0% /run/user/1009
tmpfs                    101G     0  101G   0% /run/user/1004
tmpfs                    101G     0  101G   0% /run/user/1002
tmpfs                    101G     0  101G   0% /run/user/1006
tmpfs                    101G     0  101G   0% /run/user/1013

Is it possible to install install docker image in a specified folder ? Though I'm running out of space in my cluster.


Destroying opensearch application results in 2/3 errored units

Seems it is not possible to remove opensearch application without --force anymore. In the end, it ends with 2x openseach units, both in error with:
Model       Controller         Cloud/Region   Version  SLA          Timestamp
opensearch  aws-tf-controller  aws/us-east-1  3.4.2    unsupported  14:16:53+02:00

SAAS                             Status  Store              URL
alertmanager-karma-dashboard     active  aws-tf-controller  admin/cos.alertmanager-karma-dashboard
grafana-grafana-dashboard        active  aws-tf-controller  admin/cos.grafana-grafana-dashboard
loki-logging                     active  aws-tf-controller  admin/cos.loki-logging
prometheus-receive-remote-write  active  aws-tf-controller  admin/cos.prometheus-receive-remote-write

App                       Version  Status   Scale  Charm                     Channel        Rev  Exposed  Message
grafana-agent                      unknown      0  grafana-agent             latest/stable   65  no
opensearch                         active       2  opensearch                2/edge          60  no
self-signed-certificates           active       1  self-signed-certificates  latest/stable   72  no
ubuntu                    22.04    active       1  ubuntu                    latest/stable   24  no

Unit                         Workload  Agent  Machine  Public address   Ports  Message
opensearch/1*                error     idle   2        <IP_ADDRESS>         hook failed: "storage-detaching"
opensearch/2                 error     idle   3        <IP_ADDRESS>         hook failed: "storage-detaching"
self-signed-certificates/0*  active    idle   0        <IP_ADDRESS>
ubuntu/0*                    active    idle   4        <IP_ADDRESS>

Machine  State    Address          Inst id              Base          AZ          Message
0        started  <IP_ADDRESS>   i-071c5e7d69b1c481e<EMAIL_ADDRESS>us-east-1a  running
2        started  <IP_ADDRESS>  i-088477c2ef3b121f9<EMAIL_ADDRESS>us-east-1a  running
3        started  <IP_ADDRESS>  i-01d8ebfd3ae8d2a24<EMAIL_ADDRESS>us-east-1a  running
4        started  <IP_ADDRESS>  i-074de4290a1500f16<EMAIL_ADDRESS>us-east-1a  running

Full logs: https://pastebin.ubuntu.com/p/vHxJX9rWdr/
Core error being:
Traceback (most recent call last):
  File "/var/lib/juju/agents/unit-opensearch-1/charm/lib/charms/opensearch/v0/opensearch_distro.py", line 272, in request
    resp = call(urls[0])
  File "/var/lib/juju/agents/unit-opensearch-1/charm/lib/charms/opensearch/v0/opensearch_distro.py", line 224, in call
    for attempt in Retrying(
  File "/var/lib/juju/agents/unit-opensearch-1/charm/venv/tenacity/__init__.py", line 347, in __iter__
    do = self.iter(retry_state=retry_state)
  File "/var/lib/juju/agents/unit-opensearch-1/charm/venv/tenacity/__init__.py", line 325, in iter
    raise retry_exc.reraise()
  File "/var/lib/juju/agents/unit-opensearch-1/charm/venv/tenacity/__init__.py", line 158, in reraise
    raise self.last_attempt.result()
  File "/usr/lib/python3.10/concurrent/futures/_base.py", line 451, in result
    return self.__get_result()
  File "/usr/lib/python3.10/concurrent/futures/_base.py", line 403, in __get_result
    raise self._exception
  File "/var/lib/juju/agents/unit-opensearch-1/charm/lib/charms/opensearch/v0/opensearch_distro.py", line 251, in call
    response.raise_for_status()
  File "/var/lib/juju/agents/unit-opensearch-1/charm/venv/requests/models.py", line 1021, in raise_for_status
    raise HTTPError(http_error_msg, response=self)
requests.exceptions.HTTPError: 503 Server Error: Service Unavailable for url: https://<IP_ADDRESS>:9200/.charm_node_lock/_source/0

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/var/lib/juju/agents/unit-opensearch-1/charm/./src/charm.py", line 94, in <module>
    main(OpenSearchOperatorCharm)
  File "/var/lib/juju/agents/unit-opensearch-1/charm/venv/ops/main.py", line 544, in main
    manager.run()
  File "/var/lib/juju/agents/unit-opensearch-1/charm/venv/ops/main.py", line 520, in run
    self._emit()
  File "/var/lib/juju/agents/unit-opensearch-1/charm/venv/ops/main.py", line 509, in _emit
    _emit_charm_event(self.charm, self.dispatcher.event_name)
  File "/var/lib/juju/agents/unit-opensearch-1/charm/venv/ops/main.py", line 143, in _emit_charm_event
    event_to_emit.emit(*args, **kwargs)
  File "/var/lib/juju/agents/unit-opensearch-1/charm/venv/ops/framework.py", line 352, in emit
    framework._emit(event)
  File "/var/lib/juju/agents/unit-opensearch-1/charm/venv/ops/framework.py", line 851, in _emit
    self._reemit(event_path)
  File "/var/lib/juju/agents/unit-opensearch-1/charm/venv/ops/framework.py", line 941, in _reemit
    custom_handler(event)
  File "/var/lib/juju/agents/unit-opensearch-1/charm/lib/charms/opensearch/v0/opensearch_base_charm.py", line 467, in _on_opensearch_data_storage_detaching
    self.node_lock.release()
  File "/var/lib/juju/agents/unit-opensearch-1/charm/lib/charms/opensearch/v0/opensearch_locking.py", line 327, in release
    if self._unit_with_lock(host) == self._charm.unit.name:
  File "/var/lib/juju/agents/unit-opensearch-1/charm/lib/charms/opensearch/v0/opensearch_locking.py", line 199, in _unit_with_lock
    document_data = self._opensearch.request(
  File "/var/lib/juju/agents/unit-opensearch-1/charm/lib/charms/opensearch/v0/opensearch_distro.py", line 284, in request
    raise OpenSearchHttpError(
charms.opensearch.v0.opensearch_exceptions.OpenSearchHttpError: HTTP error self.response_code=503
self.response_body={'error': {'root_cause': [{'type': 'no_shard_available_action_exception', 'reason': 'No shard available for [get [.charm_node_lock][0]: routing [null]]'}], 'type': 'no_shard_available_action_exception', 'reason': 'No shard available for [get [.charm_node_lock][0]: routing [null]]'}, 'status': 503}

Only solution was to remove machines with --force. Using force=True neither with remove-application nor remove-unit work.

I did some digging, and this is essentially related to the nodes allocation exclusion on the departing node holding the primary shard of the locking index.
The charm is too fast in the stop procedures for OpenSearch to take the allocation exclusion into consideration and have the primary shard of the locking index moved immediately ==> primary shard lost ==> cluster health red
This is addressed and fixed in https://github.com/canonical/opensearch-operator/pull/175 - where we block until the allocation exclusion fully takes effect

Trying to reproduce the issue with the current main (revision 95 in channel 2/edge) did not show the error anymore. Assumption is it was resolved with one of the recent fixes, presumably https://github.com/canonical/opensearch-operator/pull/312.

So, #312 will affect the lock release. Here, the issue was reachng out to the cluster so we can acquire the lock, or check its state.
I think what may have changed now and then is the error handling when issue a request.

I think what may have changed now and then is the error handling when issue a request.

Hi @phvalguima Could you please explain what you mean with that?

I've further investigated here, especially the error seen in juju debug-logs:
charms.opensearch.v0.opensearch_exceptions.OpenSearchHttpError: HTTP error self.response_code=503
self.response_body={'error': {'root_cause': [{'type': 'no_shard_available_action_exception', 'reason': 'No shard available for [get [.charm_node_lock][0]: routing [null]]'}], 'type': 'no_shard_available_action_exception', 'reason': 'No shard available for [get [.charm_node_lock][0]: routing [null]]'}, 'status': 503}

This error happens here: https://github.com/canonical/opensearch-operator/blob/main/lib/charms/opensearch/v0/opensearch_locking.py#L241-L243
Instead of returning False when it can't check the node locks (in OpenSearch), shouldn't it instead try to aquire the peer databag lock as a fallback?
I've tested this now locally, and it seems to be working fine. What do you think @phvalguima ?

With https://github.com/canonical/opensearch-operator/pull/272 we added a workaround to avoid this deadlock situation when removing an application. The observed behaviour is now no longer keeping the application from being removed.
Nevertheless, the root cause will need to be investigated further. This will be done in https://github.com/canonical/opensearch-operator/issues/327.


update golang to 1.16

Thanks. The test failure is not related to the change you made. I'll see why it keeps failing.


Exporting Graphics to React on unix fails because of case sensitive file names

I was trying to set up a GitHub pipeline following this example and using the default template.
this is my currect figmagic.json
{
  "outputFormatTokens": "json",
  "outputFormatStorybook": "mdx",
  "outputFolderElements": "./src/elements",
  "outputFolderGraphics": "./src/graphics",
  "outputFolderTokens": "./src/tokens",
  "syncElements": true,
  "syncGraphics": true,
  "syncTokens": true,
  "refreshType": "hard",
  "templates": {
    "templatePathReact": "./templates/react",
    "templatePathGraphic": "./templates/graphic",
    "templatePathStyled": "./templates/styled"
  },
  "tokensRelativeImportPrefix": "../../../",
  "outputGraphicElements": true,
  "overwrite": {
    "css": true,
    "description": true,
    "graphic": true,
    "react": true,
    "storybook": true,
    "styled": true
  }
}

This is the output I get from GitHub:

This process works flawless on my local windows machine, so I've added a few extra steps to see if the Graphics where generated:

I've started debugging the code and I've noticed that this is the piece of code that it is throwing the error in bin/usecases/interactors/elements/writeElements.ts:
      if (type === 'graphic') {
        const SVG_DATA = getSvgFileData(`${config.outputFolderGraphics}/${config.name}.svg`);
        return cleanSvgData(SVG_DATA);
      }

And config.name is defined like this:
const name = toPascalCase(element.name);

so, basically, it is looking for ./src/graphics/Check.svg instead of ./src/graphics/check.svg.
This works fine on a windows machine, but it won't work on unix.
Desktop:

OS: ubuntu-latest
Node: 14.x
Version: 4.3.3

I guess exporting the actual SVG using Pascal Case notation would potentially fix the issue.

Hi! I will look into this after the other ongoing issues. This issue shouldn't happen and was supposed to be covered by other recent work, though.... :/

Thanks, your work is very much appreciated.
For now I just wrote a temporary script that reads the graphics path and generate the react components.

Lol, sorry, I hit the wrong button and closed the issue accidentally

I was starting work on this last night and it is related to one other current issue.
One way to deal with this is by simply not using transforms like toPascalCase() on anything. Probably that will be my ”solution”, thus exactly representing whatever names one might use in Figma.

I am trying to push out 4.3.5 now which should fix this.
This release changes the previous behaviour of using pascal case or camelcase to adjust names that are passed through. The new behaviour is that names are taken "as-is".
The change should fix your exhibited issue.


fix(#158): load saved addresses on successful authentication during checkout

With this PR, when a user logs in during the checkout process, the saved addresses will be loaded.
Description

I've added a watcher for isAuthenticated value, which loads necessary data if a user gets authenticated on the shipping/billing page. The watcher updates already filled form values with checkoutShippingAddress/checkoutBillingAddress, so that the user won't lose provided data (Imagine a case, where a user filled some of the form fields and decided to log in afterward; we don't want to lose that data).
I've also removed reused code in lifecycle methods for form.value.country and transformed already existing watcher into the eager watcher where I've implemented removed code.
Related Issue

#158
Motivation and Context

A user couldn't get their saved addresses during the checkout process if they decided to log-in in the meantime.
How Has This Been Tested?

Screenshots (if appropriate):
https://user-images.githubusercontent.com/18665370/159030333-8c55f1f9-4e8b-4a36-988d-b67c1d70e2f5.mov
Types of changes

[x] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)

Checklist:

[x] My code follows the code style of this project.
[ ] My change requires a change to the documentation.
[ ] I have updated the documentation accordingly.
[x] I have read the CONTRIBUTING document.
[ ] I have added tests to cover my changes.
[x] All new and existing tests passed.

@letelete so technically it looks ok, but this will require a bit more testing.
Could you create a draft list of edge case scenarios that we'd need to go through?

@letelete so technically it looks ok, but this will require a bit more testing.
Could you create a draft list of edge case scenarios that we'd need to go through?

Sure, I will create such list as soon as I finish working on the  #170

@rafalcymerys I've updated #158 the "Expected behavior" section with edge cases and checks that mention expected behavior for a particular case. Let me know if the list goes in the right direction in the context of your request.