Move resources across modules

Feature Overview
Support moving resources across modules.
e.g.
null_resource.foo => module.foo.null_resource.foo
module.foo.null_resource.foo => module.bar.null_resource.foo
module.foo.null_resource.foo => null_resource.foo
In this case, it's hard to fix resource addresses, though it's possible to change resource references.
Why is the feature needed?
Feedback from users:
https://sweetops.slack.com/archives/CB6GHNLG0/p1735314890198529?thread_ts=1734997150.187929&cid=CB6GHNLG0
Sometimes we want to move resources across modules (a.b => module.c.a.d).
Example Code
No response
Note
No response

tfmv doesn't refer files such as plan files and state files.
tfmv gets a list of resources from Terraform Configuration files, so it can't get resources in modules.
So it's hard to move specific resources in modules to others.
e.g.
module.foo.null_resource.foo => null_resource.foo


Reach out to JMD about single sign on integration

Description
Definition of done

[ ]
[ ]
[ ]

Attachments
title

This conversation is getting them ready for https://github.com/18F/crt-portal/issues/14
Here are the instructions on our side https://docs.acquia.com/site-factory/manage/sso/
Here is the module we should already have in our distro https://www.drupal.org/project/simplesamlphp_auth
We need to work with JMD on configuration.


Can you add Google Translate?

Is your feature request related to a problem? Please describe.
Discord web app doesn't allow for google translate to work like telegram, slack and many others do.
Describe the solution you'd like
I would like to be able to translate conversations instantly like how it works if I go to telegram or slack web app in chrome and right click to translate the page.

I don't think we can implement this into Ferdi:
The Google Translate API is commercial but Ferdi tries to stay free for everybody.
If anyone wants to implement this and finds a translation API that we can use for free, PRs are welcome.

This should also be do-able with https://github.com/getferdi/ferdi/issues/113 and the Google Translate extension.


Media group

Hi! Is it possible to implement sending a group of media in one message? That is, without separation according to different messages?

Dear @vlab97,
I have added the feature but has some small bug, which will be solved when ever i am free.
Thank you

Dear @vlab97, I have added the feature but has some small bug, which will be solved when ever i am free. Thank you

You left the bot token and other confidential information in the comment

2023-02-22 16:55:31,575 - pyrogram.dispatcher - ERROR - Invalid parse mode "html"
Traceback (most recent call last):
File "D:\SOFT\Bot\Feedback-bot-Heroku\lib\site-packages\pyrogram\dispatcher.py", line 240, in handler_worker
await handler.callback(self.client, *args)
File "D:\SOFT\Bot\Feedback-bot-Heroku\bot.py", line 127, in start
await bot.send_message(
File "D:\SOFT\Bot\Feedback-bot-Heroku\lib\site-packages\pyrogram\methods\messages\send_message.py", line 124, in send_message
message, entities = (await utils.parse_text_entities(self, text, parse_mode, entities)).values()
File "D:\SOFT\Bot\Feedback-bot-Heroku\lib\site-packages\pyrogram\utils.py", line 354, in parse_text_entities
text, entities = (await client.parser.parse(text, parse_mode)).values()
File "D:\SOFT\Bot\Feedback-bot-Heroku\lib\site-packages\pyrogram\parser\parser.py", line 54, in parse
raise ValueError(f'Invalid parse mode "{mode}"')
ValueError: Invalid parse mode "html"


registered+modules in .app.src

Not really sure having that there makes a difference.

The main point was to keep the same base template what is provided by rebar3 and expand it. But maybe make sense update it as described above.

Yeah, but in the case of rebar3 templates, you're creating an application (usually bundled with a release) for which those elements might make sense. I wonder if it's the same for rebar3 plugins, though. Mind you my experience with coding these is somewhat limited. @elbrujohalcon, care to comment on the presence of those elements?


Use a single CTTelephonyNetworkInfo instance

Avoid intermittent crash on server callback to presumably deleted CTTelephonyNetworkInfo object.
Create fewer active queues/threads.

if it works, :+1: looks fine to me


Gauge Reporting: inconsistent scenario count reporting

Expected behavior
the numbers/stats should be consistent also with data driven specifications.
See examples below, where I would expect the following counts:
Specifications Executed=4, Passed=4, 0 Failed, 0 skipped
Scenarios Executed=10, Passed =10, 0 failed, 0 skipped
Actual behavior
I have 4 specifications:

2 specs with 1 scenario each
1 spec with 6 scenarios
1 spec with one data driven scenario, with currently 2 rows in the data table

The number of specifications is correct (=4) in all reports.
The number of scenarios is usually wrong, except in the total of the HTML report (but not in the Passed count of the same report)
In the log on stdout, gauge writes at the end:
Specifications:	4 executed	4 passed	0 failed	0 skipped
Scenarios:	9 executed	9 passed	0 failed	0 skipped
In the HTML report:
(screenshot)

In the JSON report:
at the end of the json:
"passedSpecsCount": 4,
"failedSpecsCount": 0,
"skippedSpecsCount": 0,
"passedScenariosCount": 9,
"failedScenariosCount": 0,
"skippedScenariosCount": 0
within the table driven scenario, there are 2 table rows, but in the JSON, it says:
"passedScenarioCount": 1,
"failedScenarioCount": 0,
"skippedScenarioCount": 0
in the XML report:
<testsuite tests="?" ...>
the number of tests (the ?) is - I think - supposed to be equal to the number of  subtags within the testsuite.
This is true e.g. for the specification with 6 scenarios, where there are 6  blocks within the tag <testsuite tests="6" ...>
For the data/table driven spec, the xml looks like this:
<testsuite tests="1" .....>
<testcase ... name="scenario name 1" time=.... />
<testcase ... name="scenario name 2" time=.... />

We have other test suites with more data driven specs, where the exact same behaviour is observed.
Steps to reproduce

Gauge version
Run gauge -v on your system and paste the results here.

Gauge version: 1.0.3
Commit Hash: ff6c0c3
Plugins
flash (0.0.1)
html-report (4.0.6)
java (0.6.9)
json-report (0.2.2)
screenshot (0.0.1)
spectacle (0.1.3)
xml-report (0.2.0)

@thjenny As of now, a data-driven scenario is considered as a single scenario in the report statistics regardless of the rows in the data table. We will work on the html-report to make it consistent.
Please refer to this issue to track progress on the proposal to consider the data-driven execution in statistics.


feat(services/github): support list recursive

Part #4253

Hi, I'm working on a refactor that might conflict with this PR. Would you like to wait me for one week?

Hi, I'm working on a refactor that might conflict with this PR. Would you like to wait me for one week?

Of course.

@Xuanwo Can this merge now?


[Suggestion] Clarify how we support distributed indexing in FAQ

Note: This repository is ONLY used to solve issues related to DOCS.
For other issues, please move to other repositories.

Is there anything that's missing or inappropriate in the docs? Please describe.
Users are not sure how we support distributed indexing. This info is not covered in the doc, either.
Describe your suggestion
We can provide such info in the FAQ.

Fixed.


Resize Cover is not working correctly

With "Resize Cover" option off cover is still resized to fit the screen (at least by width), but it will have a huge vertical padding (most likely enough to fit original cover by height).
Example: Rune Troopers.

do you also enable 'Use Hi-Res Cover? I suspect because the height is not resized if the image is larger than the available screen.

Indeed. I'm not sure if the size with "Use Hi-Res Cover" off is correct or not, but with "Use Hi-Res Cover" on there is definitely extra padding.


getConfigForTokenFetch is not defined - destination.js

When using 'csrfprotection:true' for connecting csrf protected APIs, it is failing with "getConfigForTokenFetch is not defined" ( Line 240 in destination.js)
I see a similar function in jcailan's repo
Can you please let me know how to proceed further on this issue?
Sample:
const service = await cdsapi.connect.to(""SCPDestination");
return await service.run({
url: "/Products",
method: "post",
headers: {
'content-type': 'application/json'
},
data: product,
csrfProtection: true
})

Please fork the project, create the correction on a new branch and send a pull request.


django_router component

Current Situation
ReactPy router exists now, but there is currently no Django-specific version of this.
Proposed Actions
Create a django_router that can handle django-style URL patterns.

Blocked on https://github.com/reactive-python/reactpy/issues/1079

Unblocked due to creating out our ReactPyDjangoClient


BeforeClass doesn't work when BeforeGroup run on Class with excluded tests

TestNG Version
6.10
Expected behavior
BeforeClass should be invoked when BeforeGroup run on Class with excluded tests
Actual behavior
BeforeClass doesn't work when BeforeGroup run on Class with excluded tests
Is the issue reproductible on runner?

[x] Maven

Test case sample
Minimal case

Thanks for the report but I'm not sure to understand.
Configuration methods are only run if a test method exists in their own scope.
According to your sample, what is the expected/actual behavior? Which are the methods run?

Thanks for the response.
Try to run my sample. You will get NPE:
$ mvn clean test
...
-------------------------------------------------------
 T E S T S
-------------------------------------------------------
Running TestSuite
Tests run: 2, Failures: 1, Errors: 0, Skipped: 1, Time elapsed: 0.305 sec <<< FAILURE! - in TestSuite
groupSetUp(com.pavetok.testng_group_setup.SecondTest)  Time elapsed: 0.237 sec  <<< FAILURE!
java.lang.NullPointerException

Results :

Failed tests:
  SecondTest>BaseTest.groupSetUp:16 » NullPointer

Tests run: 2, Failures: 1, Errors: 0, Skipped: 1

[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 2.336 s
[INFO] Finished at: 2017-02-22T08:12:49+03:00
[INFO] Final Memory: 15M/169M
[INFO] ------------------------------------------------------------------------

Is NPE correct behavior in that case?
It seems correct behavior could be "first test passed and second test omitted":
$ mvn clean test
...
-------------------------------------------------------
 T E S T S
-------------------------------------------------------
Running TestSuite
Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.26 sec - in TestSuite

Results :

Tests run: 1, Failures: 0, Errors: 0, Skipped: 0

[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 2.059 s
[INFO] Finished at: 2017-02-22T08:19:26+03:00
[INFO] Final Memory: 15M/195M
[INFO] ------------------------------------------------------------------------

@BeforeGroups is run before @BeforeClass because a group may have many classes.
And that's why you have the NPE.

@BeforeGroups was invoked on the SecondTest instance because it first in the testng.xml.
Would it be possible to invoke @BeforeGroups on the FisrtTest instance?

Ok, I got it!  SecondTest instance or ThirdTest instance?
And as you understood, TestNG takes the first instance it finds for the moment.
BTW, we are open to any better ideas :)

Yet another couple of questions.

@BeforeGroups is run before @BeforeClass because a group may have many classes.

If you look at the report, @BeforeGroups is run after FirstTest instance @BeforeClass. Why?

TestNG takes the first instance it finds for the moment.

If TestNG executes methods in FisrtTest instance, why it can't invoke @BeforeGroups on that instance?

I've just had a look with my IDE this time and I was wrong: before group is run AFTER before class.
@cbeust Could you explain why? Is it expected? As a group is defined on a <test>, I think it is more logic to have @BeforeTest -> @BeforeGroup -> @BeforeClass. WDYT?
@pavetok I reproduced the issue and we can expect to have "the first instance involved in the suite" instead of "the first instance"

@juherr Sounds reasonable, but there might be reasons I forgot. If the
behavior is easy to change, go ahead and change it and let's see what tests
break...
--
Cédric
On Wed, Feb 22, 2017 at 6:48 AM, Julien Herr<EMAIL_ADDRESS>wrote:

I've just had a look with my IDE this time and I was wrong: before group
is run AFTER before class.
@cbeust https://github.com/cbeust Could you explain why? Is it
expected? As a group is defined on a , I think it is more logic to
have @BeforeTest -> @BeforeGroup -> @BeforeClass. WDYT?
@pavetok https://github.com/pavetok I reproduced the issue and we can
expect to have "the first instance involved in the suite" instead of "the
first instance"
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/cbeust/testng/issues/1338#issuecomment-281689827, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AAFooh6nhCrYh2VQR-oC7C2V9gnuSJpCks5rfErHgaJpZM4MG89l
.


Response headers/cookies example/test?

I have a mock with response login-ok.json and added login-ok.header.json (sic: header not headers) that contains {"Set-Cookie":"sessionid=asdfasdf", "Other": "asdfasdf" }, yet I detect neither with the response.
Do you have a test or sample?  Can you see what I'm doing wrong?

Hi @leegee,
yes it's documented here: https://github.com/smollweide/node-mock-server/blob/master/doc/readme-response-header.md
You can define headers globally witch will be set for every response or a specific one like you did it.
Here is an example:
https://github.com/smollweide/node-mock-server/blob/master/demo/rest/products/%23/GET/mock/success.headers.json
If you rename the file to login-ok.headers.json it should work.

Thanks. I've tried with a file name that uses header (as in the docs' Add an *.header.json beside the expected response file) and the plural you suggested, but I'm not seeing any headers in the response, which does contain the expected body.

It works fine, thanks --- it was the typo in the docs that threw me.


Add setting to hide devices that haven't updated after a timeout

Hi again :)
This pull request does a couple things:

Adds GTK separators between settings, to make the interface more manageable
Adds a tooltip to the "Hide ELAN devices" setting, for consistency with the other 2
Adds a new setting to hide devices that haven't updated in a while

Some devices (like drawing pens) don't update their battery until they're brought near the screen, and the digitiser never disconnects. This means that using a drawing pen, then putting it away will cause the battery indicator to be shown until the device driver restarts. To work around this, I added a setting that will hide devices that haven't updated their battery status after a number of settings.
This works by cancelling any running timeout when the extension settings change or the device status updates, then creating a new one. This timeout will hide the device when it reaches 0, if an update hasn't cancelled the timer by this point. If the setting is high enough, the device will always refresh before the timeout is reached, and the device is always visible. If the device is unresponsive, it'll go away until it updates itself.
This is turned off by default, (setting the timeout to 0 will disable the setting, and 0 is the default), because the timeout required depends on the user's hardware.
Let me know if you have any questions or suggestions for the code :)

Thank you for your useful contribution:-)


Question: capture errors

Good day awesome Click team,
I have a multi-level command where I want to:

configure logging to a file in the root group (no issue)
run the actual sub-commands
if the above fails - print log file location.

Usually logging gets in a way of CLI messages, but when things go wrong it's nice to have a look at them.
My problem is that I fail to figure out how to programatically invoke sub-commands from the main group:
@click.group()
@click.pass_context
def main_cli(ctx):
    logfile = NamedTemporaryFile(delete=False)
    # setup logging
    try:
        ctx.CALL_WHATS_NEEDED()  # <-- This is the one I miss
    except Exception as err:
        click.echo(f"Command failed: {err}")
        click.echo(f"See {logfile.name} for details")
        sys.exit(1)

Is there a way? I can wrap the whole main_cli, but I wonder if it's idiomatic click-wise (and a bit hacky for controlling logger verbosity)

https://click.palletsprojects.com/en/7.x/advanced/#invoking-other-commands
Please use Stack Overflow for questions about your own code. This tracker is for issues related to the project itself. Be sure to include a minimal, complete, and verifiable example.


Prerelease to try reusable workflow for the release pipeline

:tada: This PR is included in version 1.2.0-test.2 :tada:
The release is available on:

npm package (@test dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Old link

[Enter feedback here]
The link on the left side navigation for the Security and Compliance  blog points to obsolete information

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

ID: adc789ad-f5b0-3ac9-a302-c95e8092e7a7
Version Independent ID: 13f1a0d4-249f-fb78-fcd7-000c13fb6b91
Content: Baseline and custom checks - Azure Security Center for IoT
Content Source: articles/asc-for-iot/concept-baseline.md
Service: asc-for-iot
Sub-service: asc-for-iot
GitHub Login: @mlottner
Microsoft Alias: mlottner

@DeanGross Thanks for the feedback !  I have assigned this issue to content author to investigate and update the document as appropriate.


Not available via Community plugins ?

Is it a transphobic bill or do they just not like the changes you're proposing?


[SPARK-9458] Avoid object allocation in prefix generation.

In our existing sort prefix generation code, we use expression's eval method to generate the prefix, which results in object allocation for every prefix. We can use the specialized getters available on InternalRow directly to avoid the object allocation.
I also removed the FLOAT prefix, opting for converting float directly to double.

cc @JoshRosen @davies

Merged build triggered.

Merged build started.

Test build #38935 has started for   PR 7763 at commit 5dc2f06.

LGTM.

Test build #38935 has finished for   PR 7763 at commit 5dc2f06.

This patch fails PySpark unit tests.
This patch merges cleanly.
This patch adds the following public classes (experimental):
case class TungstenSort(

Merged build finished. Test FAILed.

Merging this since the failed test is an unrelated streaming test.

I reverted this patch, since it prevents turning unsafe on by default (fails aggregation generated sort).


UDF String returned results always \x00...

What happens?
The returned results of a UDF is always "\x00\x00..." when the returned type is a String.
To Reproduce
Created a sandbox here:
https://codesandbox.io/p/sandbox/small-feather-n3p688?file=%2Fsrc%2FDuckDb.js
Basically create a UDF that returns the exact value. The results will all turn into \x00...
  await c.createScalarFunction('base64', new Utf8(), (a) => {
    console.log(a) // Mark
    return a
  });
  await c.query(`CREATE TABLE people(id INTEGER, name VARCHAR);`);
  await c.query(`INSERT INTO people VALUES (6, 'Mark');`);
  let r = await c.query(`SELECT id, name, base64(name)::VARCHAR as base64 FROM people;`);

  let array = r.toArray().map((row) => row.toJSON());
  console.log(array) // {id: 6, name: 'Mark', base64: '\x00\x00\x00\x00'}

Browser/Environment:
Chrome  124.0.6367.79
Device:
macOS
DuckDB-Wasm Version:
1.28.0
DuckDB-Wasm Deployment:
browser
Full Name:
seeya
Affiliation:
None

Getting the same issue


fix: use correct Code Of Conduct link in README.md

Reapply https://github.com/inrupt/solid-ui-react/pull/686 so that CI/CD runs.

Actually looks like this wasn't necessary.

So actually actually it WAS necessary ^^


Remove pkg/httpx dependency

Tests may fail right now, which is because of an unrelated change and fixed in https://github.com/remind101/empire/pull/972
Depends on https://github.com/remind101/empire/pull/971
This removes the pkg/httpx dependency, and moves all internal packages to use context from the stdlib, rather than from golang.org/x/net/context, and updates all http handlers to implement http.Handler rather than httpx.Handler.
First commit is just changes to ./vendor (remove pkg/httpx and update gorilla/mux to support Go 1.7 context).
Second commit is the actual changes.

Gonna close this one for now. I'll move this over incrementally later.


Pre-building is suddenly inconsistently working

Hey,
I'm running the Elastic stack at the moment and I haven't re-provisioned it in months so literally nothing has changed in my configuration that I'm aware of.
However, starting this week, more than half of build steps don't use the pre-built image and instead start building their own, which shows as increased buildtime (8m -> 30m in my case, due to having more steps than agents in the project):

Any idea how I can debug this change? The only thing I can think is that my elastic stack is using different versions of the plugin when agent boxes spin down and come back up the next day. The actual base EC2 images shouldn't be changing though as I'm using the same Elastic stack I have been for months.
Is there any info I can give to try to get to the root cause of this?

Ugh, sorry about that. I'll investigate. One thing to check would be the agent version, you should see a line in your build output like:

Running plugin github.com/buildkite-plugins/docker-compose-buildkite-plugin#5f09af2884c7cf7b0ee90edcde27c96d46b993d9 command hook

Could I trouble you to DM me a link to a broken build or a slow build on slack and I'll troubleshoot?

One thing to check would be the agent version, you should see a line in your build output like:

There is now version printed out in my logs. It just has Running plugin github.com/buildkite-plugins/docker-compose-buildkite-plugin command hook. Maybe that means it's pulling from master... I don't know.
My elastic stack is still v2.0.0-rc3-16-ga9726c7 for the agent runners. However, my docker builder is old enough to not be recording the version in it's CloudFormation stack description. It was built only a day before the other ones though, so should be about the same version.
I don't see any reason to need to DM the link as there's nothing secret about the URL. An example of a build where the image was pre-built and uploaded but yet each later step re-built it is here.
The build log for the later steps print out :docker: Found 0 pre-built services, despite the image <snip>.dkr.ecr.us-east-1.amazonaws.com/covidence/ci:app-tests-build-445 existing. Perhaps there is some latency between when an image is pushed to ECR and when ECR makes it available to be pulled? Though... the later steps ran sometime after the initial steps (due to having less agents than steps) and so I'd expect the building behaviour to differ between those steps if that were the case.

Ah-hah! Your docker-builders are running an older version of the plugin. If you pin your versions like below, your builders will pick up the new compose version.
steps:
  - name: ":docker: Build"
    plugins:
      docker-compose#v1.2.1:
        build: app

The technical reason for this not working is that the new version looks for a different metadata key, so the metadata set by the older version isn't detected by the new version in the subsequent steps. I'll think about whether this is worth handling.

Currently the plugins stick to the last version they find, so this is using the master as it was the first time it was found. IMO it's a bug, @sj26 and I have talked over a few different solutions.

@lox ah cool.
So that 95% makes sense, but doesn't totally explain my build 444, which did use the pre-built image but which is sandwiched between builds that did not (443 and 445). Did I just happen to run a build during some kind of revert on master or something?
Is the best recourse here just updating my pipeline definition or also upgrading my stack?
I have been meaning to upgrade it soon because I still experience buildkite/elastic-ci-stack-for-aws#236 which I believe might now be fixed (right?)...

It didn't use the prebuilt image, you just got lucky and hit an agent with a hot build cache :)

You don't strictly speaking have to, but I'd suggest updating, the latest stack is quite stable.

Thanks for your patience and the excellent bug reports, have a great weekend :)


Test Time 8

Test Time 8

@amihaiemil this is your task now, please go ahead. Deadline (when this ticket should be closed) is 2020-12-23T10:38:57.443380.
Estimation here is 128 minutes, that's how much you will be paid.
Remember, you don't have to solve everything in this ticket - you can solve it partially and leave todo markers in the code, which will become future tasks.
If you have any questions don't ask me, I'm not a technical person. Open new tickets instead.
If you don't have time or simply don't want to work on this, you can always resign.

@MihaiDejeu please keep in mind that manual assignment of tickets is a bad practice and it is discouraged. Next time, please let me elect the assignee.

@amihaiemil thank you for resolving this ticket. I've just added it to your active invoice. You can always check all your invoices and more on the Contributor Dashboard.


Differences In Ratings

Any idea why the ratings aren't matching up with the AHF official ratings?

The simple answer I don't know exactly what algorithm they use.  This was all a bit of trial-and-error trying to get as close as possible, which is why there are so many command line options to tweak the parameters.
Some other things I'd like to investigate when I have the time:

#4
#5

When I started, one of the main questions I had was how are shootouts weighted ... when I asked someone in the league about it, they claimed shootouts count as normal wins/losses. But if I use that in my calculations I get numbers way off from what the AHF produces.  The only way for me to get fairly close is to treat all shootouts as a tie.  So either I was given bad information, or my tool is really far off from what the AHF uses.
Also, my tool seems to get closest if it iterates exactly 10 times.    This has led me down a thought experiment where I try to imagine how someone without formal programming experience would go about trying to calculate the KRACH ratings.  My guess would be an Excel spreadsheet with each team in a row, and each column one iteration of the algorithm.  The first column would be the initial seed rating of 100 for all teams, and then 10 more columns, with each one feeding off of the column before it.  They'd probably use the (wins * losses / Sos) algorithm, and possibly only using integer data types.  The loss of precision from using integers rather than floating points might explain at least part of the mismatch in ratings.


How does Binance Binance Public API Connector Python get the error location? , just report the error reason

#!/usr/bin/env python
import logging
import time
from binance.lib.utils import config_logging
from binance.websocket.spot.websocket_api import SpotWebsocketAPIClient
config_logging(logging, logging.DEBUG)
def on_close(_):
logging.info("Do custom stuff when connection is closed")
sample code，error in print(1/0)
def message_handler(_, message):
logging.info(message)
print(1/0)
my_client = SpotWebsocketAPIClient(on_message=message_handler, on_close=on_close)
my_client.aggregate_trades(symbol="BNBBUSD", limit=1, fromId=0)
time.sleep(2)
logging.info("closing ws connection")
my_client.stop()

@1163849662 Are you still experiencing this error with the latest version? I tried to replicate it but couldn't.


[85] Use latest Sentry

Summary
The newest Sentry SDK is 7.2.1 but we're still on 5.2.0, so that's quite behind. We should use the latest SDK to minimize chances of problems with the reporting.
Solution

Updated Sentry version markers
Bumped Steamclog version

Changelog updated. Merging and releasing v0.5.2


The App Name you entered has already been used

I am getting "The App Name you entered has already been used" if I'm resubmitting an update to an existing app. If I change the name in name.txt with the reference of https://github.com/fastlane/fastlane/issues/1580, my appname is getting changed in itunesconnect. How can I run fastlane multiple times for same app?.
Your help would be highly appreciated. Thanks.

🚫 fastlane environment 🚫
Stack

Key
Value

OS
10.11.6

Ruby
2.2.4

Bundler?
false

Git
git version 2.7.4 (Apple Git-66)

Installation Source
~/.fastlane/bin/bundle/bin/fastlane

Host
Mac OS X 10.11.6 (15G31)

Ruby Lib Dir
~/.fastlane/bin/bundle/lib

OpenSSL Version
OpenSSL 1.0.2g  1 Mar 2016

Is contained
true

Is homebrew
false

Is installed via Fabric.app
false

Xcode Path
/Applications/Xcode.app/Contents/Developer/

Xcode Version
7.3.1

System Locale

Variable
Value

LANG
en_US.UTF-8
✅

LC_ALL
en_US.UTF-8
✅

LANGUAGE
en_US.UTF-8
✅

fastlane files:
`./Fastfile`
# Customise this file, documentation can be found here:
# https://github.com/fastlane/fastlane/tree/master/fastlane/docs
# All available actions: https://docs.fastlane.tools/actions
# can also be listed using the `fastlane actions` command

# Change the syntax highlighting to Ruby
# All lines starting with a # are ignored when running `fastlane`

# If you want to automatically update fastlane if a new version is available:
# update_fastlane

# This is the minimum version number required.
# Update this, if you use features of a newer version
fastlane_version "2.1.1"

actions_path './actions'

bundle_install

lane :iosprod do
produce(
app_name:ENV["APPNAME”])
pem(
pem_name:ENV["APNS_FILE_NAME"],
output_path:ENV["APNS_OUTPUT_PATH"],
generate_p12:true,
p12_password:ENV["PEM_P12_PASS"]
)
aipushupload(
p12:"./"+ENV["APNS_FILE_NAME"]+".p12"
)
set_info_plist_value(
path: "./platforms/ios/" + ENV["APPNAME"] + "/" + ENV["APPNAME"] + "-Info.plist",
key: "UIRequiredDeviceCapabilities",
value: [“telephony”]
)

match(
force_for_new_devices:true,
type:"appstore"
)
ENV["FASTLANE_XCODE_LIST_TIMEOUT"]="100"
recreate_schemes(project:ENV['XCODEPROJFILE'])
gym(export_method:"app-store")
deliver(
ipa:lane_context[SharedValues::IPA_OUTPUT_PATH],
force: true,
price_tier: 0,
app_rating_config_path: ‘fastlane/metadata/ratings_config.json’,
#submit_for_review: true,
#submission_information: {
# "add_id_info_uses_idfa": false,
# "content_rights_contains_third_party_content": false,
# "export_compliance_uses_encryption": false
#},
automatic_release: true
)

#hockey(
#    api_token: ENV['HOCKEYAPP_TOKEN'],
#    public_identifier: "#{lane_context[SharedValues::HOCKEY_PRODUCE_NEW_PUBLIC_IDENTFIER]}",
#    notes: ENV['notes'],
#    notes_type: "1"
#  )
end

# More information about multiple platforms in fastlane: https://github.com/fastlane/fastlane/blob/master/fastlane/docs/Platforms.md
# All available actions: https://docs.fastlane.tools/actions

# fastlane reports which actions are used
# No personal data is recorded. Learn more at https://github.com/fastlane/enhancer

`./Appfile`
app_identifier "xx.xxxxxx.DynamicData" # The bundle identifier of your app
apple_id<EMAIL_ADDRESS># Your Apple email address

team_id "xxxxxx"  # Developer Portal Team ID

# you can even provide different app identifiers, Apple IDs and team names per lane:
# More information: https://github.com/fastlane/fastlane/blob/master/fastlane/docs/Appfile.md

fastlane gems

Gem
Version
Update-Status

fastlane
2.62.1
🚫 Update available

Loaded fastlane plugins:
No plugins Loaded
Loaded gems

Gem
Version

CFPropertyList
2.3.5

activesupport
<IP_ADDRESS>

addressable
2.5.2

babosa
1.0.2

bigdecimal
1.2.6

bundler
1.14.3

claide
1.0.2

colored
1.2

colored2
3.1.2

commander
4.4.3

commander-fastlane
4.4.5

declarative
0.0.10

declarative-option
0.1.0

domain_name
0.5.20161129

dotenv
2.2.0

excon
0.54.0

faraday
0.11.0

faraday-cookie_jar
0.0.6

faraday_middleware
<IP_ADDRESS>

fastimage
2.1.0

gh_inspector
1.0.3

google-api-client
0.13.6

googleauth
0.5.1

highline
1.7.8

http-cookie
1.0.3

httpclient
2.8.3

hurley
0.2

i18n
0.7.0

io-console
0.4.3

json
1.8.1

jwt
1.5.6

libxml-ruby
2.9.0

little-plugger
1.1.4

logging
2.1.0

memoist
0.15.0

mime-types
3.1

mime-types-data
3.2016.0521

mini_magick
4.5.1

minitest
5.4.3

multi_json
1.12.1

multi_xml
0.6.0

multipart-post
2.0.0

nanaimo
0.2.3

nokogiri
1.5.6

os
0.9.6

plist
3.2.0

power_assert
0.2.2

psych
2.0.8

public_suffix
2.0.5

rake
10.4.2

rdoc
4.2.0

representable
3.0.4

retriable
2.1.0

rouge
1.11.1

rubygems-update
2.5.2

rubyzip
1.2.0

security
0.1.3

signet
0.7.3

slack-notifier
1.5.1

sqlite3
1.3.13

terminal-notifier
1.7.1

terminal-table
1.7.3

test-unit
3.0.8

thread_safe
0.3.5

tty-screen
0.5.0

tzinfo
1.2.2

uber
0.0.15

unf
0.1.4

unf_ext
<IP_ADDRESS>

unicode-display_width
1.1.3

word_wrap
1.0.0

xcodeproj
1.5.3

xcpretty
0.2.4

xcpretty-travis-formatter
0.0.4

generated on: 2017-11-10

Hi! Can you explain a bit more what are you trying to do or what do you expect to fastlane to do?


Reach out efforts

The most important issue. We need students.
Current status as of September 22
1. Girl Develop It RDU

@yokolet contacted one of organizers and she promised to put info in their September news letter
@annejohnson attended GDI RDU meetup on August 8
@yokolet will join GDI RDU meetup on August 26

2. Triangle Clojure meetup

the first announcement done on July 30 at the last meetup
again, @yokolet will make announce on Aug 27
@yokolet wrote info to mailing list on Aug 24
announcement done ClojureBridge as an event on Sep 17

3. Tweet

the first tweets have been done - thanks all who tweeted!
should plan the second tweet batch, and possible the third
created @cljbridgedurham account and made the first tweet on Aug 24

4. Triangle Ruby Meetup

@yokolet will attend on September 8. Topic is timely, Clojure to Rubyists :smile:
small but good response. (attendance was really worse, about 50%)

5. Ironyard

emailed to<EMAIL_ADDRESS>on Aug 25
got a good response

6. Astro Code School

emailed to<EMAIL_ADDRESS>on Aug 25

7. PyLadies

@yokolet contacted to the organizer
the organizer will add the event url to their web site

8. Durham Women in Tech

@yokolet contacted to the organizer
got a response. she is organizing DjangoGirls Durham on Oct 3
the info will be passed to members, also, we will pass the info to alumni list

9. (college) UNC

@MaggieL contacted

10. (college) NC State

@MaggieL contacted

11. (college) Elon University

@MaggieL contacted

12. (college) Duke

@MaggieL contacted

13. (college) Meredith College

@MaggieL contacted

14. Black Girls Code

needs a contact

15. Durham workshop alumni

@yokolet emailed to alumni on Sep 7

16 Triangle Java Users Group

@yokolet contacted the organizer
Jeanne (organizer) sent out a message to the group. Thanks!

17 http://www.flashchorus.org/

@daveyarwood introduced ClojureBridge
one spread the word at listserv for Duke undergrad

As a tool to spread the word, this flyer may help:
https://github.com/clojurebridge-durham/organizing/blob/master/ClojureBridgeDurham2015_flyer.pdf

Got 23 signups and plus one - Anne's friend looks failed to register. Added her manually.
Two canceled just before the workshop. Two didn't show up. Considering that rainy weather, 19 would be a good number.


Automate checks to verify 'tests' (and other files) are removed from source release TAR files

We need some utility that can programmatically confirm that specific folder/files are removed from the final TAR/ZIP files we release (as part of source release primarily).
For example, we exclude all tests directories (and all their contents) from all repos. final source code release TAR files we upload to Apache SVN; however, we have no separate tool to verify the build step correctly removed files/folders we have identified.
Other examples includes a "test" folder from apigateway repo. that is not named "tests":
lua_modules

and "ignore" files (from tooling) such as:
.bin
.dockerignore
.git
.gitattributes
.github
.gitignore
.jshintrc
.profiling.*
.pydevproject
.rat-excludes

@houshengbo if you have confirmed this by inspection of a TAR you generated for the apigateway repo. then feel free to close this issue.

@mrutkows I confirm this issue is resolved.


fix: Extra spaces are not trimmed in the next page for the routing number and Account number.

Details

Fixed Issues
$ https://github.com/Expensify/App/issues/43135
PROPOSAL: https://github.com/Expensify/App/issues/43135#issuecomment-2150628569
Tests

Go to a workspace
Enable workflows
Click on connect bank account
Select manual and enter the routing number as : 011401533 and account number<PHONE_NUMBER>331111 give some space before both these numbers and press next
Verify the routing number and account number is trimmed on the confirmation page

[x] Verify that no errors appear in the JS console

Offline tests

Go to a workspace
Enable workflows
Click on connect bank account
Select manual and enter the routing number as : 011401533 and account number<PHONE_NUMBER>331111 give some space before both these numbers and press next
Verify the routing number and account number is trimmed on the confirmation page

QA Steps

Go to a workspace
Enable workflows
Click on connect bank account
Select manual and enter the routing number as : 011401533 and account number<PHONE_NUMBER>331111 give some space before both these numbers and press next
Verify the routing number and account number is trimmed on the confirmation page

[x] Verify that no errors appear in the JS console

PR Author Checklist

[x] I linked the correct issue in the ### Fixed Issues section above
[x] I wrote clear testing steps that cover the changes made in this PR

[x] I added steps for local testing in the Tests section
[x] I added steps for the expected offline behavior in the Offline steps section
[x] I added steps for Staging and/or Production testing in the QA steps section
[x] I added steps to cover failure scenarios (i.e. verify an input displays the correct error message if the entered data is not correct)
[x] I turned off my network connection and tested it while offline to ensure it matches the expected behavior (i.e. verify the default avatar icon is displayed if app is offline)
[x] I tested this PR with a High Traffic account against the staging or production API to ensure there are no regressions (e.g. long loading states that impact usability).

[x] I included screenshots or videos for tests on all platforms
[x] I ran the tests on all platforms & verified they passed on:

[x] Android: Native
[x] Android: mWeb Chrome
[x] iOS: Native
[x] iOS: mWeb Safari
[x] MacOS: Chrome / Safari
[x] MacOS: Desktop

[x] I verified there are no console errors (if there's a console error not related to the PR, report it or open an issue for it to be fixed)
[x] I followed proper code patterns (see Reviewing the code)

[x] I verified that any callback methods that were added or modified are named for what the method does and never what callback they handle (i.e. toggleReport and not onIconClick)
[x] I verified that the left part of a conditional rendering a React component is a boolean and NOT a string, e.g. myBool && <MyComponent />.
[x] I verified that comments were added to code that is not self explanatory
[x] I verified that any new or modified comments were clear, correct English, and explained "why" the code was doing something instead of only explaining "what" the code was doing.
[x] I verified any copy / text shown in the product is localized by adding it to src/languages/* files and using the translation method

[x] If any non-english text was added/modified, I verified the translation was requested/reviewed in #expensify-open-source and it was approved by an internal Expensify engineer. Link to Slack message:

[x] I verified all numbers, amounts, dates and phone numbers shown in the product are using the localization methods
[x] I verified any copy / text that was added to the app is grammatically correct in English. It adheres to proper capitalization guidelines (note: only the first word of header/labels should be capitalized), and is either coming verbatim from figma or has been approved by marketing (in order to get marketing approval, ask the Bug Zero team member to add the Waiting for copy label to the issue)
[x] I verified proper file naming conventions were followed for any new files or renamed files. All non-platform specific files are named after what they export and are not named "index.js". All platform-specific files are named for the platform the code supports as outlined in the README.
[x] I verified the JSDocs style guidelines (in STYLE.md) were followed

[x] If a new code pattern is added I verified it was agreed to be used by multiple Expensify engineers
[x] I followed the guidelines as stated in the Review Guidelines
[x] I tested other components that can be impacted by my changes (i.e. if the PR modifies a shared library or component like Avatar, I verified the components using Avatar are working as expected)
[x] I verified all code is DRY (the PR doesn't include any logic written more than once, with the exception of tests)
[x] I verified any variables that can be defined as constants (ie. in CONST.js or at the top of the file that uses the constant) are defined as such
[x] I verified that if a function's arguments changed that all usages have also been updated correctly
[x] If any new file was added I verified that:

[x] The file has a description of what it does and/or why is needed at the top of the file if the code is not self explanatory

[x] If a new CSS style is added I verified that:

[x] A similar style doesn't already exist
[x] The style can't be created with an existing StyleUtils function (i.e. StyleUtils.getBackgroundAndBorderStyle(theme.componentBG))

[x] If the PR modifies code that runs when editing or sending messages, I tested and verified there is no unexpected behavior for all supported markdown - URLs, single line code, code blocks, quotes, headings, bold, strikethrough, and italic.
[x] If the PR modifies a generic component, I tested and verified that those changes do not break usages of that component in the rest of the App (i.e. if a shared library or component like Avatar is modified, I verified that Avatar is working as expected in all cases)
[x] If the PR modifies a component related to any of the existing Storybook stories, I tested and verified all stories for that component are still working as expected.
[x] If the PR modifies a component or page that can be accessed by a direct deeplink, I verified that the code functions as expected when the deeplink is used - from a logged in and logged out account.
[x] If the PR modifies the UI (e.g. new buttons, new UI components, changing the padding/spacing/sizing, moving components, etc) or modifies the form input styles:

[x] I verified that all the inputs inside a form are aligned with each other.
[x] I added Design label and/or tagged @Expensify/design so the design team can review the changes.

[x] If a new page is added, I verified it's using the ScrollView component to make it scrollable when more elements are added to the page.
[x] If the main branch was merged into this PR after a review, I tested again and verified the outcome was still expected according to the Test steps.

Screenshots/Videos

Android: Native
https://github.com/Expensify/App/assets/85894871/4ea64825-cfdb-4778-94a1-749f1f753ec5

Android: mWeb Chrome
https://github.com/Expensify/App/assets/85894871/2c3df53e-1c2f-4456-8939-dd986c5ac0f7

iOS: Native
https://github.com/Expensify/App/assets/85894871/012f7b82-6368-44db-ac02-e80c6d185c49

iOS: mWeb Safari
https://github.com/Expensify/App/assets/85894871/9c576bd5-0be4-413e-a364-9d04c6bbda85

MacOS: Chrome / Safari
https://github.com/Expensify/App/assets/85894871/8e40d58b-a5ef-4db7-99d2-72301148ad9a

MacOS: Desktop
https://github.com/Expensify/App/assets/85894871/5848f541-e895-4f20-b53c-a6ac7d6850c6

:hand: This PR was not deployed to staging yet because QA is ongoing. It will be automatically deployed to staging after the next production release.

🚀 Deployed to staging by https://github.com/iwiznia in version: 1.4.85-0 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
failure ❌

🕸 web 🕸
success ✅

🚀 Deployed to staging by https://github.com/iwiznia in version: 1.4.85-0 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
failure ❌

🕸 web 🕸
success ✅

🚀 Deployed to staging by https://github.com/iwiznia in version: 1.4.85-0 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
failure ❌

🕸 web 🕸
success ✅

🚀 Deployed to production by https://github.com/AndrewGable in version: 1.4.85-7 🚀

platform
result

🤖 android 🤖
failure ❌

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅


Weird Behavior of MultiProgressBar

I'm still trying to get my multi-progress-bar to work with this library.
Simplified Working Example
The sleep() calls in there makes sure that my updates will be scheduled slower than the drawing interval.
import { MultiProgressBar } from<EMAIL_ADDRESS>import { sleep } from "https://deno.land/x/sleep/mod.ts";

const multibar = new MultiProgressBar({
  title: "Multi-Progress Bars",
  complete: "=",
  incomplete: "-",
  interval: 1,
  display: "[:bar] :text :percent :time :completed/:total",
});

multibar.render([
  { text: "progress_1", completed: 1 },
]);

await sleep(0.002);

multibar.render([
  { text: "progress_1", completed: 2 },
  { text: "progress_2", completed: 1 },
]);

await sleep(0.002);

multibar.render([
  { text: "progress_1", completed: 2 },
  { text: "progress_2", completed: 2 },
]);

await sleep(0.002);

multibar.render([
  { text: "progress_1", completed: 3 },
  { text: "progress_2", completed: 2 },
  { text: "progress_3", completed: 1 },
]);

Output
Multi-Progress Bars
[==------------------------------------------------] progress_1 3.00% 0.0s 3/100
[=-------------------------------------------------] progress_2 2.00% 0.0s 2/100
[=-------------------------------------------------] progress_3 1.00% 0.0s 1/100

Problematic Code
Here is a file with 3 mocked progress readables:
https://github.com/codemonument/deno_downstream/blob/main/test/units/multiProgressCliRenderer.test.ts
When I activate the simpleCallbackTarget(), I get a stream of all the state events based on the aforementioned  format:
[
  { text: "progress_1", completed: 3 },
  { text: "progress_2", completed: 2 },
  { text: "progress_3", completed: 1 },
]

But when I activate the multiProgressCliRenderer() it only outputs two progress bars at first until they finished and then outputs the third one all at once, like this:
While running:
Multi-Progress Bars
[============================================------] progress_1 87.00% 4.5s 87/100
[============================================------] progress_2 87.00% 4.5s 87/100

When Finished:
Multi-Progress Bars
[==================================================] progress_1 100.00% 5.1s 100/100
[==================================================] progress_2 100.00% 5.1s 100/100
[==================================================] progress_3 100.00% 5.1s 100/100

Test: Adding a sleep
I also tried to add a await sleep(0.002) together with 'interval: 1' in 'multiProgressCliRenderer.ts':
Source File: https://github.com/codemonument/deno_downstream/blob/main/lib/streamAdapters/MultiProgressCliRenderer.ts
return new WritableStream({
    start(_controller) {
      // do init logic, if needed
    },
    async write(state: MultiProgressState, _controller) {
      await sleep(0.002);
      multibar.render(state);
    },
    close() {
    },
    abort(reason) {
      console.error("Stream error:", reason);
    },
  });

But this did not work.
Current State

I think, my sleep is not working correctly here, since it might run in 'parallel' to all the other invocations of 'write' on this writable stream. => So I have to figure something out for that
But I also think that the API for drawing here is inconvenient and that It would be nice to brainstorm with you how to improve at least error reporting, when render requests are dropped by the progress library because of being smaller than the interval.

You can try interval: 0
const multibar = new MultiProgressBar({
  title: "Multi-Progress Bars",
  complete: "=",
  incomplete: "-",
  interval: 0,
  display: "[:bar] :text :percent :time :completed/:total",
});

I have been out of JS/TS for more than three years.
I can only deal with simple issue.

Suggestion
Replace sleep to delay(which is in Deno Standard Modules)
setTimeout in deno test will throw error

https://deno.com/blog/v1.20#tracing-operations-while-using-deno-test

Replace https://deno.land/x/sleep/mod.ts to<EMAIL_ADDRESS>import { sleep } from "https://deno.land/x/sleep/mod.ts";

https://github.com/michael-spengler/sleep/blob/master/sleep.ts

export function sleep(seconds: number) {
  return new Promise((resolve) => setTimeout(resolve, seconds * 1000));
}

import { delay } from<EMAIL_ADDRESS>delay is better(clearTimeout,Deno.unrefTimer).

Deno Standard Modules
These modules do not have external dependencies and they are reviewed by the Deno core team. The intention is to have a standard set of high quality code that all Deno projects can use fearlessly.

https://github.com/denoland/deno_std/blob/main/async/delay.ts

// Copyright 2018-2023 the Deno authors. All rights reserved. MIT license.
// This module is browser compatible.

export interface DelayOptions {
  /** Signal used to abort the delay. */
  signal?: AbortSignal;
  /** Indicates whether the process should continue to run as long as the timer exists.
   *
   * @default {true}
   */
  persistent?: boolean;
}

/**
 * Resolve a Promise after a given amount of milliseconds.
 *
 * @example
 *
 * ```typescript
 * import { delay } from<EMAIL_ADDRESS> *
 * // ...
 * const delayedPromise = delay(100);
 * const result = await delayedPromise;
 * // ...
 * ```
 *
 * To allow the process to continue to run as long as the timer exists. Requires
 * `--unstable` flag.
 *
 * ```typescript
 * import { delay } from<EMAIL_ADDRESS> *
 * // ...
 * await delay(100, { persistent: false });
 * // ...
 * ```
 */
export function delay(ms: number, options: DelayOptions = {}): Promise<void> {
  const { signal, persistent } = options;
  if (signal?.aborted) {
    return Promise.reject(new DOMException("Delay was aborted.", "AbortError"));
  }
  return new Promise((resolve, reject) => {
    const abort = () => {
      clearTimeout(i);
      reject(new DOMException("Delay was aborted.", "AbortError"));
    };
    const done = () => {
      signal?.removeEventListener("abort", abort);
      resolve();
    };
    const i = setTimeout(done, ms);
    signal?.addEventListener("abort", abort, { once: true });
    if (persistent === false) {
      try {
        // @ts-ignore For browser compatibility
        Deno.unrefTimer(i);
      } catch (error) {
        if (!(error instanceof ReferenceError)) {
          throw error;
        }
        console.error("`persistent` option is only available in Deno");
      }
    }
  });
}

Ok, I understand this:

I have been out of JS/TS for more than three years.
I can only deal with simple issue.

Thank you for your suggestions, I'll try to find and fix the problem!
If I have anything useful, I'll give you a pr :)


Unity temporarily freezes up when opening Visual Studio from MRTKv2 projects

Describe the bug
When using MRTKv2 with Unity and Visual Studio, Unity sometimes temporarily freezes up when opening or switching to the Visual Studio solution(e.g. double-clicking a C# script or selecting Assets->Open C# Project).
When this happens, Unity stays frozen up for a significant amount of time, usually 20+ seconds, sometimes up to a minute.
This doesn't happen every time the Visual Studio solution is opened, but always happens in the following cases:

The first time Visual Studio is opened after loading the Unity project.
The first time Visual Studio is opened after exiting Play Mode in Unity.

To reproduce
Steps to reproduce the behavior:

Open up a Unity project that uses MRTKv2.
Enter, then exit Play Mode in Unity.
From Unity, open the Visual Studio solution for the Unity project, by either:

selecting Assets -> Open C# Project from the menu,
double-clicking a C# script in the Project window, or
double-clicking an entry in the Console window

Unity will now stop responding for a while.

Expected behavior
Unity should not freeze up in the described scenario.
Screenshots
When this happens, Visual Studio sometimes shows the following notification:

Your setup

Unity Version 2019.3.1f1
MRTK Version v2.3.0
Visual Studio Version 16.4.3

Also reproduced with other 2018 and 2019 Unity versions, and other MRTKv2.X versions.
Target platform

HoloLens 2

Additional context
The issue only seems to happen with the combination of Unity + Visual Studio + MRTKv2. This issue does not occur when using VS Code, or in Unity projects not using MRTKv2.

Likely a side effect of the number of assemblies we have. @davidkline-ms more data for possibly reconciling some of our assemblies and reducing the number.

Posting back after a while here - there's some solutions that we're exploring now that should help with this, though we're probably a little ways out (i.e. big-O of months) to having this materialize). Consuming MRTK as a .unitypackage (i.e. potentially mutable sources) means that Unity also does diff detection + project generation against MRTK code despite the likely case that you aren't actually mutating MRTK code means you still end up getting affected by that.

Like @keveleigh says trillion of projects are reloaded in VS. This is really a major performance killer for development with MRTK2.


[rtl,i2c,host] RSTART condition can cause timing violations

Description
In some cases, SDA can be seen to rise synchronously with SCL before then dropping again indicating the RSTART. This looks like a timing violation, although the specification does not explicitly define a setup-time for SDA against this particular edge of SCL.
The specification does seem to imply the violation from the following:

'The data on the SDA line must be stable during the HIGH period of the clock. The HIGH or LOW state of the data line can only change when the clock signal on the SCL line is LOW'
A data set-up time tSU;DAT is defined against the rising edges of SCL for data bits, which probably implies the same to be required for the SCL edge at the end of a transaction before an RSTART.

In testing on hardware (see waveforms captured below), all of the transactions successfully read and write from the target device without error, so hardware seems to be somewhat tolerant of this behaviour. However, some devices require an RSTART between register address and data phases of a read operation, so it is important that this is not decoded as a STOP followed by a START.
Repro
./util/dvsim/dvsim.py hw/ip/i2c/dv/i2c_sim_cfg.hjson -i i2c_host_rx_oversample --tool xcelium --waves shm --fixed-seed<PHONE_NUMBER>
Observe the waveform at t=3700885.617ns

Screenshots

@hcallahan-lowrisc - I believe that the fixes that went into the ECO/RTL change have resolved this? If so please link to the commit and close this. TIA

@hcallahan-lowrisc - I believe that the fixes that went into the ECO/RTL change have resolved this? If so please link to the commit and close this. TIA

Correct, this issue is fixed by https://github.com/lowRISC/opentitan/pull/18729.


Add chapter selection to reading menu

Currently readers can only go to the next or previous chapter when reading. Add functionality to the reading menu that allows them to enter a chapter number and skip to reading that chapter.

Maybe also add special keywords like "beginning" and "latest" so they can jump to the beginning or the end of the chapters.


[Distributed][Workaround] Initializers crash when DA has state and uses the local testing system

Reproducer for rdar://92712849
This for now is only a workaround, while we try to solve the real issue
When the LocalTestingDistributedActorSystem is used and the actor has state, initializers crash.

When pasting a LocalTestingDistributedActorSystem into the test file (removing the locks usage), things work fine.
Sounds like there must be something off cross file / module again here...?

I.e. pasting

/// A `DistributedActorSystem` designed for local only testing.
///
/// It will crash on any attempt of remote communication, but can be useful
/// for learning about `distributed actor` isolation, as well as early
/// prototyping stages of development where a real system is not necessary yet.
public final class LocalTestingDistributedActorSystem: DistributedActorSystem, @unchecked Sendable {
  public typealias ActorID = LocalTestingActorAddress
  public typealias ResultHandler = LocalTestingInvocationResultHandler
  public typealias InvocationEncoder = LocalTestingInvocationEncoder
  public typealias InvocationDecoder = LocalTestingInvocationDecoder
  public typealias SerializationRequirement = Codable

  private var activeActors: [ActorID: any DistributedActor] = [:]

  private var idProvider: ActorIDProvider = ActorIDProvider()
  private var assignedIDs: Set<ActorID> = []

  public init() {}

  public func resolve<Act>(id: ActorID, as actorType: Act.Type)
    throws -> Act? where Act: DistributedActor {
    guard let anyActor = self.activeActors[id] else {
      throw LocalTestingDistributedActorSystemError(message: "Unable to locate id '\(id)' locally")
    }
    guard let actor = anyActor as? Act else {
      throw LocalTestingDistributedActorSystemError(message: "Failed to resolve id '\(id)' as \(Act.Type.self)")
    }
    return actor
  }

  public func assignID<Act>(_ actorType: Act.Type) -> ActorID
    where Act: DistributedActor {
    let id = self.idProvider.next()
    self.assignedIDs.insert(id)
    return id
  }

  public func actorReady<Act>(_ actor: Act)
    where Act: DistributedActor,
    Act.ID == ActorID {
    guard self.assignedIDs.contains(actor.id) else {
      fatalError("Attempted to mark an unknown actor '\(actor.id)' ready")
    }
    self.activeActors[actor.id] = actor
  }

  public func resignID(_ id: ActorID) {
    self.activeActors.removeValue(forKey: id)
  }

  public func makeInvocationEncoder() -> InvocationEncoder {
    .init()
  }

  public func remoteCall<Act, Err, Res>(
    on actor: Act,
    target: RemoteCallTarget,
    invocation: inout InvocationEncoder,
    throwing errorType: Err.Type,
    returning returnType: Res.Type
  ) async throws -> Res
    where Act: DistributedActor,
          Act.ID == ActorID,
          Err: Error,
          Res: SerializationRequirement {
    fatalError("Attempted to make remote call to \(target) on actor \(actor) using a local-only actor system")
  }

  public func remoteCallVoid<Act, Err>(
    on actor: Act,
    target: RemoteCallTarget,
    invocation: inout InvocationEncoder,
    throwing errorType: Err.Type
  ) async throws
    where Act: DistributedActor,
          Act.ID == ActorID,
          Err: Error {
    fatalError("Attempted to make remote call to \(target) on actor \(actor) using  a local-only actor system")
  }

  private struct ActorIDProvider {
    private var counter: Int = 0

    init() {}

    mutating func next() -> LocalTestingActorAddress {
      self.counter += 1
      let id: Int = self.counter
      return LocalTestingActorAddress(parse: "\(id)")
    }
  }
}

public struct LocalTestingActorAddress: Hashable, Sendable, Codable {
  public let address: String

  public init(parse address: String) {
    self.address = address
  }

  public init(from decoder: Decoder) throws {
    let container = try decoder.singleValueContainer()
    self.address = try container.decode(String.self)
  }

  public func encode(to encoder: Encoder) throws {
    var container = encoder.singleValueContainer()
    try container.encode(self.address)
  }
}

public struct LocalTestingInvocationEncoder: DistributedTargetInvocationEncoder {
  public typealias SerializationRequirement = Codable

  public mutating func recordGenericSubstitution<T>(_ type: T.Type) throws {
    fatalError("Attempted to call encoder method in a local-only actor system")
  }

  public mutating func recordArgument<Value: SerializationRequirement>(_ argument: RemoteCallArgument<Value>) throws {
    fatalError("Attempted to call encoder method in a local-only actor system")
  }

  public mutating func recordErrorType<E: Error>(_ type: E.Type) throws {
    fatalError("Attempted to call encoder method in a local-only actor system")
  }

  public mutating func recordReturnType<R: SerializationRequirement>(_ type: R.Type) throws {
    fatalError("Attempted to call encoder method in a local-only actor system")
  }

  public mutating func doneRecording() throws {
    fatalError("Attempted to call encoder method in a local-only actor system")
  }
}

public final class LocalTestingInvocationDecoder: DistributedTargetInvocationDecoder {
  public typealias SerializationRequirement = Codable

  public func decodeGenericSubstitutions() throws -> [Any.Type] {
    fatalError("Attempted to call decoder method in a local-only actor system")
  }

  public func decodeNextArgument<Argument: SerializationRequirement>() throws -> Argument {
    fatalError("Attempted to call decoder method in a local-only actor system")
  }

  public func decodeErrorType() throws -> Any.Type? {
    fatalError("Attempted to call decoder method in a local-only actor system")
  }

  public func decodeReturnType() throws -> Any.Type? {
    fatalError("Attempted to call decoder method in a local-only actor system")
  }
}

public struct LocalTestingInvocationResultHandler: DistributedTargetInvocationResultHandler {
  public typealias SerializationRequirement = Codable
  public func onReturn<Success: SerializationRequirement>(value: Success) async throws {
    fatalError("Attempted to call decoder method in a local-only actor system")
  }

  public func onReturnVoid() async throws {
    fatalError("Attempted to call decoder method in a local-only actor system")
  }

  public func onThrow<Err: Error>(error: Err) async throws {
    fatalError("Attempted to call decoder method in a local-only actor system")
  }
}

// === errors ----------------------------------------------------------------

public struct LocalTestingDistributedActorSystemError: DistributedActorSystemError {
  public let message: String

  public init(message: String) {
    self.message = message
  }
}

to distributed_actor_init_local.swift makes it all work 😕

@swift-ci please test

@swift-ci please smoke test and merge

@swift-ci please smoke test and merge

git checkouts failing

@swift-ci please smoke test and merge

We found the real fix, will revert this with the real fix PR as the real fix is smaller and proper.


CSI Driver for Unity - FC configuration problems

I have three Ubuntu physical hosts that are cabled for FC to a Unity 500 SAN.  Using Rancher to provision kubernetes clusters on these Ubuntu hosts. Each host has it's own 200GB FC LUN with WWN which the Ubuntu host is installed on.  We also want to use this FC initiator to provision Kubernetes LUNS on the Unity 500.
A couple questions:

When I follow the install instructions, the helm install command:  /csi-install.sh --namespace unity --values ./myvalues.yaml  tries to ssh to each host and check the iscsi configuration. Why is this if I'm running FC?  Should this part just be ignored when running FC?

There are problems with the unit-node pods starting up.  The first host in the cluster, the pod unity-node starts up correctly, and says "Got FC Initiators, Checking health of initiators." "FC Health is good for array: apm2342342342".   But on the 2nd and 3rd Ubuntu hosts, that have the 4TB LUN mapped to them shows the error:  REP 0006: rpc error: code = Unavailable desc = runid=6 The node [ah22-myhost-002] is not added to any of the arrays.  Each host when i run "multipath -l"  I can see the mpath 4TB LUN.

@warende  Could you please share the csi driver logs with debug enabled.

https://jira.cec.lab.emc.com/browse/KRV-4695 this issue is resolved . Hence closing the issue.


pubchem pugrest query batches

update query runner to batch pubchem pugrest queries

added a batch query runner and modified application code to use this where available.


test(utilities): Fixed typo in test name

Goal
Fixed typo in test name, does not change any functionality.

:tada: This PR is included in version 1.22.1 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Unreasonable amount of threads of python from dbt power user extension

I am assuming the extension is running through my project but I have noticed the extension is the culprit for running up to 70 Python threads on my machine.
This is most likely because it's trying to run some type of dbt compile in the background to get information about my project but very much don't think it's the right call to be running an this many threads on my machine.
I can provide whatever information/diagnostics we would need to debug this.
Note: This has happened on my MacOS machine as well as a coworker's Windows machine.

Hi @reidwil-jb,
There is some queueing mechanism that shouldn't not run more than one dbt task in parallel, I have not seen the behavior that you describe. Is there any specific circumstance where this happens?
What is the output in the following screen?

Output of my terminal tasks:

Note: my dbt project has 16,000 models :'-)

@mdesmet I've found the culprit - checking out to different git branches from within my zsh shell triggers the dbt power user extension to execute a dbt list.

I assume dbt list generates some artifact that is necessary to make sure the plugin can work correctly so it's imparative
My case might  be a one off issue as the dbt project i'm working with is large
What is the thread level set for the dbt list command?

Now every project uses a single Python process. Therefore I would expect this issue to be resolved. If not please reopen.


Microsoft 365 Multi-Geo Licensing

Hi team
Could you please more explicitly document Microsoft 365 Multi-Geo licensing requirements for resource (room/equipment) and shared mailboxes?
This 3 years old blog post says we must license resource and shared mailboxes
"Licensing" section in this article says if we remove licenses, then mailbox is not moved back to central region.
Sounds like we need to only temporary license resource and shared mailboxes, verify they are in the correct region, and then licenses can be removed.

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

ID: 32b41c7e-29cd-eb5b-36b2-738b3babd08f
Version Independent ID: 22eda3f7-1c04-b3b0-95fd-3474b3f991b2
Content: Microsoft 365 Multi-Geo - Microsoft 365 Enterprise
Content Source: microsoft-365/enterprise/microsoft-365-multi-geo.md
Service: o365-solutions
GitHub Login: @MikePlumleyMSFT
Microsoft Alias: mikeplum

@WayneEwington can you help?

@Brian @.***> This looks like an exchange question - Can you help answer/clarify this?
Thanks, Wayne
From: Mike Plumley @.>
Sent: Tuesday, November 30, 2021 5:21 AM
To: MicrosoftDocs/microsoft-365-docs @.>
Cc: Wayne Ewington @.>; Mention @.>
Subject: Re: [MicrosoftDocs/microsoft-365-docs] Microsoft 365 Multi-Geo Licensing (Issue #7023)
@WayneEwingtonhttps://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2FWayneEwington&data=04|01|wayne.ewington%40microsoft.com|9ace1502394f4d9e65ad08d9b4045174|72f988bf86f141af91ab2d7cd011db47|0|0|637738752978201272|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|3000&sdata=%2BdH0qpIOkAVRGHF5Y6zkf3%2FxpmQnIAjCRNmny6D9iZk%3D&reserved=0 can you help?

You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHubhttps://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2FMicrosoftDocs%2Fmicrosoft-365-docs%2Fissues%2F7023%23issuecomment-982630721&data=04|01|wayne.ewington%40microsoft.com|9ace1502394f4d9e65ad08d9b4045174|72f988bf86f141af91ab2d7cd011db47|0|0|637738752978201272|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|3000&sdata=0vN7L9Ej%2BDbI6%2F43XDGfjnCe%2FI%2FcKkrFQ6yu%2FujAy0c%3D&reserved=0, or unsubscribehttps://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fnotifications%2Funsubscribe-auth%2FACBQKSDWOB3SOXAQBTK2JFLUOTFVRANCNFSM5JBDMSLA&data=04|01|wayne.ewington%40microsoft.com|9ace1502394f4d9e65ad08d9b4045174|72f988bf86f141af91ab2d7cd011db47|0|0|637738752978201272|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|3000&sdata=PSY5BehRT6DtC8ugCg6aQJvXKWtMTQBCxkAnkZT7eDo%3D&reserved=0.
Triage notifications on the go with GitHub Mobile for iOShttps://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fapps.apple.com%2Fapp%2Fapple-store%2Fid1477376905%3Fct%3Dnotification-email%26mt%3D8%26pt%3D524675&data=04|01|wayne.ewington%40microsoft.com|9ace1502394f4d9e65ad08d9b4045174|72f988bf86f141af91ab2d7cd011db47|0|0|637738752978251198|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|3000&sdata=zy9deZNq%2Faspta8L881J79PWEuFi2MxxWsfsHokxSnI%3D&reserved=0 or Androidhttps://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fplay.google.com%2Fstore%2Fapps%2Fdetails%3Fid%3Dcom.github.android%26referrer%3Dutm_campaign%253Dnotification-email%2526utm_medium%253Demail%2526utm_source%253Dgithub&data=04|01|wayne.ewington%40microsoft.com|9ace1502394f4d9e65ad08d9b4045174|72f988bf86f141af91ab2d7cd011db47|0|0|637738752978251198|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|3000&sdata=guKNHCX4nvcEFUTBpeG0JAhl9nq44PHiWpwi%2Beov9ZI%3D&reserved=0.

This question is about "Multi-Geo Capabilities in Office 365" license SKU. Specifically, this docs article does not outline Multi-Geo licensing requirements for resource accounts. Thus, the request to update the article.

Do we have to assign "Multi-Geo Capabilities in Office 365" license SKU to Azure AD user accounts (that represent resource/shared mailboxes in Exchange Online) in order to have these mailboxes moved to Geo location specified in PDL attribute of Azure AD user? (Normally, these accounts are not licensed with Exchange Online licenses)
When we remove "Multi-Geo Capabilities in Office 365" license SKU from Azure AD user accounts (that represent resource/shared mailboxes in Exchange Online), will the mailboxes stay in the Geo location.

@WayneEwington Please reply. Thanks

This question is related to Exchange Online (and not SharePoint Online) and should really be directed @briandaymsft as previously stated.

This is a challenging area, and more documentation would likely do little to provide clarity.
Resource/Room mailboxes are required to have a MG license to be compliant as far as licensing goes. However, the licensing system will not allow the customer to assign these mailboxes a MG license as they usually do not have the necessary pre-req license assigned to them which blocks the assignment. To date we have told customers to keep a sufficient # MG of licenses in reserve in their license pool to cover however many resource/room mailboxes they have moved out of their home geo. It isn't the best situation but all we have right now.

@shivtorov Hope this comment is helpful for you. If you see a documentation update is required, please feel free to open an issue for the same. We proceed here to close it. Thanks for taking out some time to open the issue. Appreciate and encourage you to do the same in future also.


Updated istanbul to version 0.3.21

:rocket:
istanbul just published version 0.3.21, so that’s now up to date in your package.json.
Check that it doesn’t break your code and release the new version of your software safe in the knowledge that it will stay in this working state.

The new version differs by 2 commits (ahead by 2, behind by 0).

5e87c9c: 0.3.21
48dc2de: Updated dependencies to latest

See the full diff.

This pull request was created by greenkeeper.io.
It keeps your software, up to date, all the time.

Tired of seeing this sponsor message? Upgrade to the supporter plan!
You'll also get your pull requests faster :zap:

Current coverage is 100.00%

Merging #6 into master will not affect coverage as of 2b56306

@@            master      #6   diff @@
======================================
  Files            1       1
  Stmts          102     102
  Branches         0       0
  Methods          0       0
======================================
  Hit            102     102
  Partial          0       0
  Missed           0       0

Review entire Coverage Diff as of 2b56306

Powered by Codecov. Updated on successful CI builds.

don't need.... added next release already


Delete input files in model upload

          Delete input files in model upload

Originally posted by @olavis in https://github.com/equinor/pepm-ui/pull/39#discussion_r1285677646

Resolved by #44


Sometimes logins fail with login in progress

I'm submitting a...

[ ] Regression (a behavior that used to work and stopped working in a new release)
[x] Bug report
[ ] Performance issue
[ ] Feature request
[ ] Documentation issue or request
[ ] Other... Please describe:

Browser:

[x] Chrome version XX
[ ] Firefox version XX
[ ] IE version XX
[x] Edge version XX
[ ] Safari version XX

Library version

Library version: 1.2.0-beta.2

Current behavior
Sometimes I can login successfully, but other times it fails and it shows a login is "InProgress" in my Session Storage.  Clearing cookies or clearing session storage won't fix it, but clearing both will.  Opening in "Incognito" mode or "InPrivate" mode will also fix it.
Should I be detecting this weird state and trying to programmatically clear the session storage and cookies?
Expected behavior
It should either log in correctly every time, or it should automatically clear the session state and cookies, or whatever it needs to clear.
Minimal reproduction of the problem with instructions
I still don't understand what is causing my logins to sometimes fail with the "InProgress" status so it's hard to give steps to reproduce.

Manually clearing session seems to work; still need to do more testing...
function logRedirectCallbackErrors(error: MSAL.AuthError, response: MSAL.AuthResponse | undefined) {
        if (error) {
            console.error("Redirect Callback Error: " + error);
            setDeniedReason("Unable to login.")
            setIsAccessDenied(true);
            // Clear session to remove "login in process" error
            sessionStorage.clear();
        }
    }

@JordanMarr Is this happening only with session storage or is it seen for local storage too? Is it possible to share your sample code for authentication so we can try reproducing the issue at our end?

@JordanMarr Is this happening only with session storage or is it seen for local storage too? Is it possible to share your sample code for authentication so we can try reproducing the issue at our end?

My authentication code (as a React hook) is below (my tenant id and authority replaced with placeholders).
I know it's not exactly like the examples, but this is the best I could do to get it working.
import React, { useState, useEffect } from 'react';
import API from './api';
import * as MSAL from 'msal'
import { navigate } from 'hookrouter';

export interface IUser {
    name: string,
    email: string,
    isPM: boolean,
    isAdmin: boolean
}

export const useAuth = () => {
    const msalConfig: MSAL.Configuration = {
        auth: {
            clientId: 'my tenant id',
            authority: 'my authority'
        },
        cache: {
            storeAuthStateInCookie: true
        }
    };

    const tokenReq: MSAL.AuthenticationParameters = {
        scopes: ["api://my tenant id/user_impersonation"]
    };

    const [isAuthenticated, setIsAuthenticated] = useState(false);
    const [isAccessDenied, setIsAccessDenied] = useState(false);
    const [deniedReason, setDeniedReason] = useState("");
    const [iuser, setIuser] = useState<IUser>({ name: "Not Authenticated", email: "-", isPM: false, isAdmin: false });

    const addBearerTokenToRequests = (token: string) => {
        API.interceptors.request.use(req => {
            req.headers['Authorization'] = `Bearer ${token}`;
            return req;
        });
    };

    const handle401Errors = () => {
        API.interceptors.response.use(resp => {
            return resp;
        }, error => {
            if (error.response.status === 401) {
                setDeniedReason(error.response.data);
                setIsAuthenticated(false);
                setIsAccessDenied(true);
                console.error("401 Error: User is not authorized to access this resource. " + error);
            }
            throw error;
        });
    };

    useEffect(() => {

        handle401Errors();
        authenticate();

    }, []);

    return { isAuthenticated, isAccessDenied, deniedReason, user: iuser, logout };

    function urlContains(str: string) {
        return window.location.href.indexOf(str) > -1;
    }

    async function authenticate() {
        let msal = new MSAL.UserAgentApplication(msalConfig);

        let acct = await msal.getAccount();

        if (!acct) { // Users need to login
            try {
                console.log('Redirecting to login...');

                // A handler is required or loginRedirect won't work.
                msal.handleRedirectCallback(logRedirectCallbackErrors);
                navigate('/'); // User must sign in from the root url (must match the redirect url configured in the Azure App Registration)
                msal.loginRedirect(tokenReq);
            } catch (err3) {
                console.error(`Unable to authenticate: ${err3}`);
            }
        } else if (!urlContains('access_token')) { // user id exists - acquire token silently
            try {
                console.log('Acquiring a token silently...');
                let resp = await msal.acquireTokenSilent(tokenReq);
                if (resp.accessToken) {
                    console.log('Acquired an access token.');

                    setIuser({ ...iuser, name: resp.account.name, email: resp.account.userName });
                    addBearerTokenToRequests(resp.accessToken);

                    try {
                        // Get user with claims (isPM, isAdmin, etc)
                        const { data } = await API.get<IUser>('/api/auth/user');

                        // Update return values
                        setIsAuthenticated(true);
                        setIuser(data);
                    } catch (error) {
                        setDeniedReason(error.response.data);
                        setIsAuthenticated(false);
                        setIsAccessDenied(true);
                    }
                } else {
                    console.error('Unable to obtain an access token.');
                    setIsAccessDenied(true);
                }
            } catch (err) {
                try {
                    console.log('Redirecting to login...');

                    // A handler is required or loginRedirect won't work.
                    msal.handleRedirectCallback(logRedirectCallbackErrors);
                    navigate('/'); // User must sign in from the root url (must match the redirect url configured in the Azure App Registration)
                    msal.loginRedirect(tokenReq);
                } catch (err2) {
                    console.error(`Unable to aquire an access token: ${err2}`);
                    setIsAccessDenied(true);
                }
            }
        }
    }

    function logRedirectCallbackErrors(error: MSAL.AuthError, response: MSAL.AuthResponse | undefined) {
        if (error) {
            console.error("Redirect Callback Error: " + error);
            setDeniedReason("Unable to login.")
            setIsAccessDenied(true);
            // Clear session to remove "login in process" error
            sessionStorage.clear();
        }
    }

    async function logout() {
        let msal = new MSAL.UserAgentApplication(msalConfig);
        msal.logout();
    }
}

I ran into this today and found an easy way to repro.

Clear any active sessions from the cache and delete cookies.
Navigate to the site, but before initiating a login disconnect from your internet.
Initiate login. You should encounter a login error since MSAL can't resolve the proper endpoints.
Reconnect the internet, and try to login again. This will fail because "Login in progress".

The only way to successfully login after encountering this is as @JordanMarr said, delete sessionStorage and any cookies.

Did you mean #1042? I had seen that PR earlier but for some reason thought it had already been merged.

Sorry yes. It is #1042. It isn't merged as I think our approach causes issues in some error cases. I will do a new version soon. But as I stated, the use case you mentioned is a corner case and with concurrent requests, we need to identify a stale request vs on going one which is tricky as we do not remember application state. Will reach out once I have a solution in place.

I was able to find another way to repro this issue in a bit more egregious way. These steps will break when using Redirect login method:

Navigate to the site, execute login.
After being redirected to the login page, use the URL bar to navigate back to your page (same session).
Execute login flow again. You will receive ClientAuthError with error code of login_progress_error.

This is example was done with sessionStorage. What's even odder is that this exception does not seem to surface in the custom logger I have configured:
configuration: {
      auth: {
        authority: process.env.REACT_AUTHENTICATION_AUTHORITY,
        clientId: process.env.REACT_AUTHENTICATION_CLIENT_ID || '',
        navigateToLoginRequestUrl: true,
        redirectUri: window.location.origin,
        postLogoutRedirectUri: window.location.origin,
        validateAuthority: true
      },
      system: {
        logger: new Msal.Logger(
          (logLevel, message) => {
            if (logLevel === Msal.LogLevel.Error) {
              if (ai.appInsights) {
                ai.appInsights.trackException({ exception: { name: 'MSAL Error', message } });
              }
            }

            // eslint-disable-next-line no-console
            console.log('[MSAL]', message);
          },
          {
            level: Msal.LogLevel.Verbose,
            piiLoggingEnabled: false
          }
        )
      },
      cache: {
        cacheLocation: 'sessionStorage',
        storeAuthStateInCookie: true
      }
    }

See also:
https://github.com/syncweek-react-aad/react-aad/issues/160

Yes. The above example makes sense. Would you be able to test if I send a private build?

@sameerag Absolutely, would be happy to.

Was this one of the items addressed in Beta 5? I'm assuming not since I can still repro it.
Weird question though, because we've hit this issue again in a new scenario with a corporate customer. On Edge browsers when the user initiates a login, the redirect to login.microsoftonline.com is prevented in the current browser, and instead opens in a new instance of IE 11... Because of this when they complete the login in IE 11 the user receives login_in_progress which seems perfectly valid to me. This is a stretch, but have any of you encountered such an issue before? I'm guessing this company has some sort of group policy causing this. I'm sitll investigating whether this is something we can prevent on our side.

@AndrewCraswell beta-5 isn't released yet. We plan to do it tomorrow and release 1.2.0 around Dec 6-8th.
I did not come across the issue you mentioned on Edge browsers, I can check with my team and reach out.

#1042 is now merged to dev. beta release and a mainline release will follow soon.

@sameerag is this issue fixed in beta?

I'm still having this issue in 1.2.0 with the redirect. I got this from a bad login and now it just loops. I'm using local storage.  There are no cookies set when I encounter this and even if I clear local storage, I'm still stuck in the endless loop. Also, where is it documented that the redirect will return to the initiating page but with a #id_token stuck on my url?

@aappddeevv The loop is probably triggered from AAD where if a given request after failing is retried multiple times. Since this issue is partially addressing the cache clean-up issues, it gets confusing to track a new use case with the same ticket.
Can you please:

Raise a new issue with clear steps of repro for this loop?
Please share the msal version and any other details (browser, config etc) that will be useful for debug

Same applies for anyone following this thread. Please raise a new github issue helping us track different use cases clearly. Closing this ticket.

I have the same issue with B2C sometimes the app open a new login tab and AuthenticationState.InProgress keep in true. Sometimes the new tab is closed automatically after 3 or more minutes. @sameerag Should I open a new ticket?

I still meet the similar issue using react v1.2.1. The page don't redirect to the home page. Just stay on that page with url domain/#id_token=XXX.  And status is inProgress in sessionStorage.

Got the exact same problem as @betterliyu. Why is it even closed?

Same problem as @betterliyu  and @crobin1

I've noticed if you are already logged-in with your Azure AD account somewhere and then browse the web app secured by msal.js in the same browser session or another tab, it's stuck in "In Progress". But if you open  another window of the same browser and try again, it works. Closing completely the browser and reopening it work as well.

@JordanMarr Could you reconsider this issue and reopen it?

@crobin1 Please open a new ticket and our livesite engineer would be happy to help you solve this. Thanks!

@crobin1 @tnorling Created one here: https://github.com/AzureAD/microsoft-authentication-library-for-js/issues/2071


Make LightGMB with just one job to save memory

Else the build might fail on Travis - checking if it will fix #185

Codecov Report

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

@@          Coverage Diff           @@
##           master    #186   +/-   ##
======================================
  Coverage    97.3%   97.3%
======================================
  Files          41      41
  Lines        2487    2487
  Branches      469     469
======================================
  Hits         2420    2420
  Misses         35      35
  Partials       32      32

yay, the first green build today - I hope that's not a coincidence. On there other hand, there were no failed builds due to lightgbm before, right?

Yeah, there were no such failures in past. Maybe the reason is that we're using LightGBM master, so it may start requiring more memory over time to build. We should switch to LightGBM 0.2 as soon as it is released (https://github.com/Microsoft/LightGBM/issues/463). Changes happened too fast though, maybe it is not the cause. Maybe Travis provided more CPU cores for a build, without increasing RAM. Anyways, using 1 process makes sense, thanks for the fix!


mattermost-desktop: Add libnotify to fix notifications

mattermost-desktop is missing the libnotify runtime dependency, so desktop notifications are not shown.
Description of changes

Things done

Built on platform(s)

[X] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

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

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

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

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

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

[x] Fits CONTRIBUTING.md.

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

@ofborg build mattermost-desktop

I did not look into alternatives yet, but this approach was used for element-desktop as well: https://github.com/NixOS/nixpkgs/pull/301522/files

In looking for alterternatives, I found that ultimately, libnotify is loaded via dlopen(3). I guess the proper fix would be to just have it in electron-unwrapped's RPATH, which likely requires some manual patchelf invocation. I can look into that, but it will take a few days until I have access to a machine I can reasonably build electron on.

Can we try that? Using patchelf is highly preferred over LD_LIBRARY_PATH.

@mmarx if you have an idea and a diff to share, I'd have a build machine available to try it.

@SuperSandro2000 Your comment made me think if there could be a RPATH + patchelf solution for #303725 as well?

@SuperSandro2000 Your comment made me think if there could be a RPATH + patchelf solution in electron for #303725 as well?

yeah, that should work as well, it's also dlopening pipewire by default. I'm still traveling, but should be able to come up with a patch tonight.

It's probably a good idea to also check the packages depending on electron for such LD_LIBRARY_PATH workarounds; I'll look into that tomorrow.

Non exhaustive list of package I found from the root of this repo with this command:
grep -R --files-with-matches electron pkgs | xargs grep LD_LIBRARY_PATH

vesktop
tidal-hifi
webcord
jitsi-meet-electron
teams-for-linux
signal-desktop

Would this rpath fix only work for packages using nixpkgs source-built electron or also with packages that ship with it's own bundled electron version, like signal-desktop?

Non exhaustive list of package I found from the root of this repo with this command:
grep -R --files-with-matches electron pkgs | xargs grep LD_LIBRARY_PATH

* `vesktop`

* `tidal-hifi`

* `webcord`

* `jitsi-meet-electron`

* `teams-for-linux`

* `signal-desktop`

thanks, that's a good starting point.

Would this rpath fix only work for packages using nixpkgs source-built electron or also with packages that ship with it's own bundled electron version, like signal-desktop?

I don't see a reason why it wouldn't also work with bundled electron versions, but of course those would need to have their own patchelf invocations.

It looks like some packages also add libpulseaudio to LD_LIBRARY_PATH ...

teams-for-linux
webcord
vesktop

@mmarx I built element-desktop and electron with this PR's branch checked out and notifications and screen sharing works in my test. :+1:

Result of nixpkgs-review pr 303590 run on x86_64-linux 1

8 packages built:

electron
element-desktop
jitsi-meet-electron
standardnotes
super-productivity
teams-for-linux
vesktop
webcord


500 - The request timed out.

No issue when testing on local machine but I got Error 500 - The request timed out. when accessing my ****.azurewebsites.net/api/graphql.

Hi @Maxwise888
I have expanded the instructions in the article to explicitly cover deployment configuration. Please take a look at this new section here.

Mine worked after I followed the guide step by step. There seem to be an issue with deploying using vscode extension, when I did the  npm run build && func azure functionapp publish <APP_NAME> it was all good


HOG featurizer

These commits begin to add a HOG featurizer to Pelops.
Feedback Needed
I'd like some feedback on FeatureProducer() which will probably be the API for this. I had to mangle it a lot compared to its previous version which no longer works with the ChipDataset() class we now have. (For example, it used to have a double for loop, but ChipDataset() now yields chips instead of a list of chips.)
Currently the idea is roughly as follows:
Each child class implements its own produce_features(self, chip) function that takes a single chip and returns an array of features. They also implement set_variables(self) that set whatever internal stuff they need, so far this is only self.feat_size to tell the class how large their feature vectors are.
ResNet50, and Fine-tuning
We will also need to implement a ResNet50 featurizer using this class as well, and the fine-tuned networks will also have to slot in. Does this need extension to handle those cases?

Codecov Report

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

@@           Coverage Diff           @@
##           master      #50   +/-   ##
=======================================
  Coverage   93.03%   93.03%
=======================================
  Files          19       19
  Lines        1191     1191
  Branches      172      172
=======================================
  Hits         1108     1108
  Misses         67       67
  Partials       16       16

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 3abfc77...f69b9dd. Read the comment docs.

here seem to be some calls to functions that are not specific to HOG..
image_features
load_image
load_array
extract_feats_from_chips -> save feats from chips,
why the return True?
FeatureProducer class -> own file
in HOGFeatureProducer.produce_features
should the constants be passed in or are they really constant.  is the value of 16 different in lines 123,124? possibly move to some class of constants.

Agree. I've cleaned out those functions now, they were cruft from the old code. Possible they'll need to be re-implemented, but we should do that as needed instead of keeping them all around.

Sorry I'm late to the party here. I generally like the idea of a refactor but I think the resnet features still needs to be implemented (I might be biased since I was using those functions) before this should be merged. I think it's important since it will end up using many of the functions you are currently removing


import_gds_file() function to support technology file in windows

Description of the feature
Currently import_gds_file() function support GDS file import using technologie and map file only on Linux. With AEDT version 2024R1, techfile and mapfile can be used in AEDT on windows to import GDS file.
We should update import_gds_file() function such we can used techfile and mapfile in windows.
Steps for implementing the feature
Allow to use techfile and mapfile to import GDS in windows
Useful links and references
For information recording python script from AEDT does not expose techfile or mapfile as argument.
Below script using anstranslator is working fine:
@echo off

echo launch SIwave

"C:\Program Files\AnsysEM\v241\Win64\anstranslator.exe" "C:\Data\AFT\IMEC\hbm_dqh.gds" "C:\Data\AFT\IMEC\testautomation\hbm_dqh.aedb" -i=GDSII -t="C:\Data\AFT\IMEC\stackup_file_modifiedNR.ircx" -g="C:\Data\AFT\IMEC\imec_v2.map" -v

echo anstranslator running

pause

@svandenb-dev ,
I suggest to create a function import_gds_with_anstrans() using anstranslator (like in import_layout_pcb()) as I don't think we can update the current import_gds_file().
Please let me know if it is ok.
If so please assign the issue to me

@svandenb-dev @amichel0205 I have created some code for my own use, which resolve this issue and add two more functionalities.
1)Allows user to also import a layer filter file
2) Optional import of a toml config file which will allow the user to perform gds-xml automation like pre-processing, port and setup creation through a simple syntax.
Since this includes a significant amount of code added through a new method, let me know if the config file feature is of interest, and I can push the code for review. Thanks.