[AUTOTITLE] to #fragment uses article title only?

Code of Conduct

[X] I have read and agree to the GitHub Docs project's Code of Conduct

What article on docs.github.com is affected?
I had the impression that AUTOTITLE linking to another page's (sub)heading would render the section heading, but just recently discovered it fills in the page title instead.
Is that intended behavior? It leads to issues as #31789 where the link is correct, but the autotitle makes it seem it's going in circles…
It produces some weird results in context — for example in configuring an apex domain there's a link to Types of GitHub Pages sites, but is titled by the page title as "About GitHub Pages" that is somewhat misleading.
The hovercard also displays the main page title+intro, not the deeplink where it leads.
What changes are you suggesting?
Is there any chance that the AUTOTITLE referencing only certain heading would be rendered with the heading name instead of page name?
Additional information
No response

@janbrasna Good to see you again! 👋
This is a great question, but not one our team can best speak to. Our fantastic support team would be best equipped to address this one! ✨
If there's anything in the documents that you have suggestions for updating, please feel free to open an issue 💛

Just mentioning we came across this under the "Further Reading" section for "Syncing your branch in GitHub Desktop":

@towerofnix Thank you for the heads up! 💛

There is an improvement now that the hovercard previewing the target page shows at least the anchor ID — but not always(?)
I see it here https://docs.github.com/en/code-security/dependabot/dependabot-version-updates/configuration-options-for-the-dependabot.yml-file#docker

But nothing here https://docs.github.com/en/desktop/working-with-your-remote-repository-on-github-or-github-enterprise/syncing-your-branch-in-github-desktop#further-reading

It looks like this condition is the one that's not going through:
(/* <a> */).href.startsWith("".concat(window.location.href.split("#")[0], "#"))

This really just means "if it goes to a hash, and the hash is elsewhere on the current page" - the stuff inside the if block this is part of involves a document.getElementById with the same hash and works with that.
It never applies to a hash link on a different page. (Unfortunately, imo!)


Setting files.associations won't work if path doesn't start with "**"

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

VS Code Version:  1.79.1
OS Version: Windows 11

Steps to Reproduce:

Create the following configuration:

"files.associations": {
    "config/docker/*.cnf": "ini"
}

Create a file config/docker/mariadb.cnf
Files mariadb.cnf is not recognized as INI file

On the contrary, **/config/docker/*.cnf works as expected, but it would associate also foo/config/docker/test.cnf, which I don't wanto to.

Another use-case of this is that I have the following in my global gitignore:
/.vscode

but obviously some projects use a .vscode directory. Instead of adjusting the project's gitignore file, I instead like to edit .git/info/exclude to the following:
!/.vscode

VSCode doesn't recognize that file as an ignore file, so I would like to add .git/config/exclude: "ignore" to my files.associations which doesn't work.

This feature request is now a candidate for our backlog. The community has 60 days to upvote the issue. If it receives 20 upvotes we will move it to our backlog. If not, we will close it. To learn more about how we handle feature requests, please see our documentation.
Happy Coding!

I pushed a change to document this better: a glob pattern in files.association that contains a path separator (/) will be matched against the full absolute path of the file:
https://github.com/microsoft/vscode/blob/250cb9738b96ff68474aa65f4bbe22cfcaed86e7/src/vs/editor/common/services/languagesAssociations.ts#L214
In other words, relative glob patterns are only supported for simple cases such as *.css.
Leaving this open as feature request.


[FIX: #376] Update UUIDGenerator with new examples

Description
Resolves #376, this time with less messups 😄
Should I also include an example using the uuid module? It seems not needed, but better ask and be safe than sorry.
What does your PR belong to?

[ ] Website
[x] Snippets
[ ] General / Things regarding the repository (like CI Integration)

Types of changes

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

Checklist:

[x] My code follows the code style of this project.
[ ] My change requires a change to the documentation.
[x] I have updated the documentation accordingly.
[x] I have checked that the changes are working properly
[x] I have checked that there isn't any PR doing the same
[x] I have read the CONTRIBUTING document.

possible name change for brevity could be UUIDClient and UUIDNode, or that they could be combined into a single one by saying

Note: on NodeJS instead use crypto.randomBytes(1)[0] instead
in the description, but having two snippets is also perfectly fine


Increase timeout values to prevent test flakiness

Test passes on my local machine but fails in CI/CD:

Adding more time to prevent flakiness.

Great, thank you for the change, hopefully this will reduce flakiness somewhat.
More generally, I wonder if there is a way for us to wring performance-based flakiness out of our tests altogether. It's almost like we want two test execution modes:

general tests: running tests on a system whose performance characteristics are not guaranteed (e. g. a general ci/cd system). in this mode, we will probably want ridiculously long timeouts, and
performance sensitive tests: running tests on a system whose performance characteristics are under "our" control. In this mode, we are concerned with (and test) the performance of the system.

It is a good idea to have some env var like TIMEOUT_COEEFICIENT and use it for all timeout. Set it to 1 by default and to 10 or 100 on CI/CD. All these tests are not performance tests and they are just for functionality. @mfateev, what do you think?


Support for Razor Pages

Hi! This extension looks awesome and far more better than Resharpers File Structure window.
But the support for cshtml / razor pages is missing. could you please enable them as well?
Thank you!

Good suggestion!
Step 1 would be to find a way to parse the structure from the file. For C#/VB CodeNav uses https://www.nuget.org/packages/Microsoft.CodeAnalysis. So I would need a similar nuget package or method for Razor files...


Python import mxnet error

When import mxnet in python, the error occurs:
"OSError: /root/mxnet/python/mxnet/../../lib/libmxnet.so: undefined symbol: _ZN5mxnet7ndarray4CopyIN7mshadow3cpuENS2_3gpuEEEvRKNS2_5TBlobEPS5_NS_7ContextES9_NS_10RunContextE"
I have tried to replace gcc with icc, atlas with openblas and updated ubuntu, still have the error.
I don't know why? Have anybody ran into the same problem?

Note that make clean will not clean mshadow. I would recommend trying
cd mshadow
git pull
make clean
make -j
cd ..

Sorry can't edit comment from a phone.
After pulling and recompiling mshadow you will need to recompile mxnet too.

I fixed it by using Anaconda python.


Suggestion to link or note additional information

I would suggest that it would be beneficial specifically note that the CREDIT INVOICING function is only available for ITALY.
https://docs.microsoft.com/en-us/dynamics365/finance/localizations/emea-ita-credit-invoicing

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

ID: 5d42fb9b-30ef-7398-5369-57fbeba9e516
Version Independent ID: fe08be8e-4f9d-fedd-ee4c-7737245dd581
Content: References to original invoices in credit notes - Finance | Dynamics 365
Content Source: articles/finance/accounts-receivable/original-invoice-numbers-credit-notes.md
Service: dynamics-365-finance
Product: ****
Technology: ****
GitHub Login: @ilkond
Microsoft Alias: ilyako

@jdterrington, @kfend, Credit invoicing is available not only for Italy but for other countries as well.

The Microsoft link suggests that it is only available for the Italy region.
Happy for you to provide a link that tells me otherwise :)
https://docs.microsoft.com/en-us/dynamics365/finance/localizations/emea-ita-credit-invoicing

@jdterrington for example these links:

https://docs.microsoft.com/en-us/dynamics365/finance/localizations/emea-corrective-invoice
https://docs.microsoft.com/en-us/dynamicsax-2012/appuser-itpro/correct-a-posted-free-text-invoice
https://docs.microsoft.com/en-us/dynamics365/finance/localizations/tasks/emea-esp-credit-invoicing
https://docs.microsoft.com/en-us/dynamics365/finance/accounts-receivable/correct-free-text-invoice

I am sorry but I 100% disagree with you.  However I am going to now give up trying to resolve this as you are obviously set in your assumptions.  I will say that if you check with MS, you will not be correct.

Link one - this is not the "CREDIT INVOICE" function that I am talking about.  This is a completely different function for "CORRECTIVE INVOICE".

Link two - This is an old link for AX 2012 and is not relevant for D365FO at all.  And again, it is not the functionality that I am referring to.

Link 3 - this is talking about the "CORRECTIVE INVOICE" functionality, and not the "CREDIT INVOICE" function that I am referring to.

Link 4 - this is talking about the "CORRECTIVE INVOICE" functionality, and not the "CREDIT INVOICE" function that I am referring to.

Regards
James

@jdterrington let's return to your initial concern. Was it about this article https://docs.microsoft.com/en-gb/dynamics365/finance/accounts-receivable/original-invoice-numbers-credit-notes?
You state that it is available only for Italy, correct?

@jdterrington This article is mainly about printing of the references to original invoices in credit notes created for Free text invoices, Customer Invoices or Project invoices.
"Credit invoicing" for Free text invoices (which intersects with Italy-specific article that you provided) is available not only for Italy but also for Austria, Belgium, Denmark, Finland, France, Germany, Iceland, Ireland, Netherlands, Norway, Spain, Sweden, Switzerland and Great Britain. Or for any other country if the mentioned feature "Credit invoicing layout for sales and project invoice reports" is enabled.
So, it is not "beneficial" and even wrong to say that CREDIT INVOICING function is only available for ITALY.


highlight with green color the collection variables for the body

Hey guys! Could it be possible to provide highlight for the body variables, to know that we have those variables setup correctly?

similar to the headers section

https://github.com/usebruno/bruno/assets/819446/5d6a3db5-2161-4929-8a5f-52488f2f38c0

Also, in the same extend. Maybe in the GET/POST url if a variable is set in the Vars tab, also highlight in green.
in this case the movieId:

In a similar vein, if a post-response script has set a variable, it would be nice to see that in green in any request templates.

Closing this as the latest version of Bruno now supports this


Changed api and Sensor filtering

In where I live the widget takes the closest sensor which hasn't posted data since 8 days. Since, the sensor listing results have no info on last seen data I switched it to the /json endpoint instead.
I then proceeded to add a rule on maximum last seen date (4 hours).
If you have any comments feel free to give some feedback.

Love it.
On Mon, Nov 2, 2020 at 7:54 AM Brian Donovan<EMAIL_ADDRESS>wrote:

@eventualbuddha approved this pull request.
Seems reasonable to me.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/jasonsnell/PurpleAir-AQI-Scriptable-Widget/pull/21#pullrequestreview-521758270,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AA4G3ARJHAZS6PDSXEQ46O3SN3I3NANCNFSM4THGMUKQ
.


Review CLAM codebase (Carl)

This is an ongoing process. I've been reviewing the CLAM code base as well as the CHAODA paper. I need to familiarize myself with CHAODA more.

I have a basic understanding of how CLAM works and how to implement our multiclass classifier into the system. Due to the size and complexity of the system, this will likely never truly be "done". But for our purposes of the semester project, it is complete.


Deploy vraptor-site

Taking a look at vraptor-site commit, if I'm not worng vraptor-site isn't deployed since October with "articles and presentations" page.
The download page still with 4.1.1 vraptor's version.
Since we had some improvements on documentation, what about deploy it ?

Done! (actually, I forgot that it's done manually!) Thanks


ServiceMonitor Exit(2147943452) When Using GMSA

ControlService will return error 0x8007041c  when w3svc service is in SERVICE_STOP_PENDING state.

Close the issue since the PR is merged.


New permission default for adding new contributors.

Steps

Go to "sharing" tab on project, click add button
find and add contributors

Expected
Default permission is not admin.
Actual
Default is admin.
Suggestion
Set to read, read+write, or blank making the admin adding contributors pick one of the permissions options themselves.
I would like to discuss this.

I think 'read' is the most sane default. We could do 'no default' but that just seems like more work. Read will never be disastrous, and could save some clicking, but people do still need to pay some attention with it otherwise they'll have to change it.
Of course, if we were to make the contributor tab changes happen immediately rather than having to submit them in a batch, it would be an equivalent amount of work to just add people and then change their permissions on the contributors tab.

:+1: for read as the default - better to ask [for] permission[s] than forgiveness

Talking with Jeff, if default is Read. Then we should think about "request write access" that a read only person can send to the admin.

This would be great if non-contributors could also request access in a read/write/admin capacity. This is a user complaint that I've heard that makes it difficult for people administering the project. They have to do a lot of work to find the right user, which would go away with this mechanism.


(GH-1060) Port over unused docker-api option tty, remove unused option wait

When moving to the docker cli instead of the gem the tty option was not ported over, this commit adds the -tty flag when a the tty transport option is requested. The wait option was added as a workaround which was specific to the docker-api gem and was added after the original PR was raised, this commit removes it as it does not appear to be an issue with the CLI.

PR that introduced tty: https://github.com/puppetlabs/bolt/pull/962
Might not work from windows host, but I guess it never did?

CLA signed by all contributors.


health checks

Adding a proper health check to query on /health would be a nice feature to have. If the api doesn't respond k8s can signal reboot.

I am starting work on this.
My initial plan is to expose the seconds since the last time a ticker was updated.
Current beta example: time_since_last_update{ticker="smooth-love-potion",type="ticker"} 11


Added column that displays a list of the items attached to an attendee on attendee tables.

(Replacing columns displaying counts of cart vs. purchased vs. refunded items.)
Resolved ticket #579. Sorry to jump in on this, but I promised an event we'd prioritize it, so I wanna make sure to follow through.

I'd say the changes look good. Safe to merge and deploy whenever to get it out there for the people who want it.


Taking diff of two array's not working

Taking the diff like so:
var lhs = ["a","a"];
var rhs = ["a"];
var differences = deep.diff(lhs, rhs);
differences.forEach(function (change) {
        deep.applyChange(lhs, true, change);
});

fails when trying to apply that change with this message:
/Users/trich/Sites/deepDiff/index.js:195
, last = change.path.length - 1
^
TypeError: Cannot read property 'length' of undefined
at Function.applyChange (/Users/trich/Sites/deepDiff/index.js:195:27)
at observed (/Users/trich/Sites/deepDiff/examples/example1.js:38:14)
at Array.forEach (native)
at Object. (/Users/trich/Sites/deepDiff/examples/example1.js:37:13)
at Module._compile (module.js:456:26)
at Object.Module._extensions..js (module.js:474:10)
at Module.load (module.js:356:32)
at Function.Module._load (module.js:312:12)
at Function.Module.runMain (module.js:497:10)
at startup (node.js:119:16)

See pull request #43, which provides a fix for this. Even after the pull request, however, this will only work if there is only one diff between lhs and rhs. If you need to apply two array diffs, you must be aware that the order in which you apply diffs determines whether the changes can be made. This is because the diff indicates which index to add/remove/edit, but array indexes change when you delete elements. For example, the code below doesn't work as expected:
var lhs = ["a","a","a"];
var rhs = ["a"];
var differences = deep.diff(lhs, rhs);
differences.forEach(function (change) {
        deep.applyChange(lhs, true, change);
});
// lhs === ["a","a"]

A workaround is to apply changes in the reverse order in which they are given
var lhs = ["a","a","a"];
var rhs = ["a"];
var differences = deep.diff(lhs, rhs);
for (var i = differences.length - 1; i >= 0; i--) {
    deep.applyChange(lhs, true, differences[i]);
}
// lhs === ["a"]

Great tip. To simplify it, you can also write
deep.diff(lhs, rhs).reverse().forEach(function(diffItem) {
  deep.applyChange(lhs, true, diffItem);
});

But there should be a wrapper method to make that easier anyway. I was hoping I could use applyDifffor that matter, but it doesn't accept what I had in mind. (I am just transferring the diff result from one browser window to the other in order to get incremental state persistency)

Oh, I just saw that the @joeldenning has provided is for a different problem (useful for me anyway)

Verified fixed 2017-04-24.


Handle non-string column names

close #254
This is an implementation of option 2 from #254 where we raise an error whenever we see a non str column name. There is also unit test with an integer column name to see that the error is raised.
Since this is one of a few possible solutions, it's marked as WIP until we determine which path we want to follow.

Removing WIP. Note that the main check
if not isinstance(c, (''.__class__, u''.__class__)):
is one of many ways we might want to check for strings in both Python 2 and 3. @rwedge has suggested that we have used
if type(ret) != str:
    ret = ret.encode("utf-8")

elsewhere in Featuretools to ensure that we're consistently encoding things. This solution used fewer lines of code than a try/except block, but I don't have a strong preference for the way we should be doing this.

Codecov Report

Merging #255 into master will increase coverage by <.01%.
The diff coverage is 100%.

@@            Coverage Diff             @@
##           master     #255      +/-   ##
==========================================
+ Coverage   94.15%   94.15%   +<.01%
==========================================
  Files          71       71
  Lines        7644     7652       +8
==========================================
+ Hits         7197     7205       +8
  Misses        447      447

Impacted Files
Coverage Δ

featuretools/entityset/entityset.py
93.63% <100%> (+0.02%)
:arrow_up:

featuretools/tests/entityset_tests/test_es.py
99.35% <100%> (ø)
:arrow_up:

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 6306975...0af98fa. Read the comment docs.

Looks good. Merging


translation bugs on IPTT target vs actual report

Once generated, the level titles aren’t translated, e.g. Quarter 1, Quarter 2

When you click on the table to get the detailed results, Target Period titles aren’t translated, e.g. Quarter 1, Quarter 2

This bug has the same cause as #598, please see note there

Closed in favor of #598


[SPARK-38464][CORE] Use error classes in org.apache.spark.io

What changes were proposed in this pull request?
This PR aims to change exceptions created in package org.apache.spark.io to use error class.
This PR also adds toConf and toConfVal in SparkCoreErrors.
Why are the changes needed?
This is to move exceptions created in package org.apache.spark.io to error class.
Does this PR introduce any user-facing change?
No
How was this patch tested?
Updated existing tests.

+1, LGTM. Merging to master.
Thank you, @bozhang2820.


Outdated cask: security-growler

Outdated cask: security-growler.
Info:

version: 2.2.
appcast url: https://github.com/pirate/security-growler/releases.atom.

Please do not run find_outdated_appcasts unless you are a maintainer.


Add Taptic Engine

can u explain more?

If you have an iPhone 7/7 Plus, it produce a haptic feedback provided by Taptic Engine. I added it to confirm to the user that the selected index was changed

Please make it optional and configurable. I believe that not every person who uses it in his project really wants that.

I made the changes


Lambda trigger creation error

Amplify CLI Version
8.3.0
Question
I'm attempting to create a new Lambda trigger for my DynamoDB model. I had one created previously that was working fine, which I disabled and enabled again manually in the DynamoDB interface. I have been unable to create a new function since and get the below errors:
Resource Name: LambdaEventSourceMappingRestaurant (AWS::Lambda::EventSourceMapping) Event Type: create Reason: Resource handler returned message: "Invalid request provided: Stream not found: arn:aws:dynamodb:ap-southeast-2:....:table/{STREAM_TABLE_NAME} (Service: Lambda, Status Code: 400, Request ID: e89088c7-ab4c-469d-9ee1-84447fb588d0)" (RequestToken: 09cfa484-5827-2108-842a-228a043f2fbc, HandlerErrorCode: InvalidRequest)
Not sure if I have made some mistake by manually deleting rather than using the CLI. Please let me know if you need more detail.
NOTE: I can see in my DynamoDB interface that streams is enabled:

Hey @mnikolic10 :wave: thanks for raising this! When working with Amplify it is typically not recommended to make changes to the Amplify-managed resources in the AWS Console. Can you try re-enabling this trigger using the Amplify CLI? You may need to remove the trigger and re-add the trigger with the CLI

Hey @mnikolic10 👋 thanks for raising this! When working with Amplify it is typically not recommended to make changes to the Amplify-managed resources in the AWS Console. Can you try re-enabling this trigger using the Amplify CLI? You may need to remove the trigger and re-add the trigger with the CLI

I have done this and had no luck, seems like when i re-enabled manually the stream ARN was updated and no longer matches the one being referenced during creation. Not sure if there is a particular CloudFormation template I can update to reference the new one?


Add files via upload

add a photo

Add your personal information at people.html

update both people.html and assets


fix warnings with latest react version

    "react": "16.3.1",
    "react-native": "^0.55.4",
    "react-native-sensors": "^3.0.0",

Thank you for your help @ethanneff 👍 CI fails because prettier is failing 🤔 You can fix it by running npm run format.

Will this break for older RN versions?

Will this break for older RN versions?

no, this is new thing which will be called by RN internals when module is loaded.

Your CI does not like markdown files when no environmental variables are set. The failures are files which I did not touch.

https://travis-ci.org/react-native-sensors/react-native-sensors/builds/388099975?utm_source=github_status&utm_medium=notification

@ethanneff Oh sorry, master is read due to a prettier update 🙈 Fixing this right now, hang on

Forgot to fix it, I think I will get to it this weekend, it is not as simple as it seems

Am I correct in stating that this PR is not in the latest NPM release yet? Using ^3.0.0 I still get these messages.

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Hello World.ts

Is this supposed to be the contents of hello world.ts?

Well I don't know how that happened, I'll fix it later

fixed


Optimize production page load times

I've seen the JS app bundle take a horrendous 30s to get delivered to the front end when deploy to a cluster. It's only 3.2MB, I suspect this may have to do with us just using the simple express static server. We might want to consider moving to a real static file server, and optimizing our files and parallelizing our loads for better page load times. Right now it appears somewhat broken for what should be very small app.
Related: #282 pulled out the css into a separate file, but it was loading the JS bundle significantly slower for some odd reason. Might want to reopen that and investigate.

might be related to https://github.com/fusor/mig-ui/issues/307

@jwmatthews The issue i'm seeing is that it just takes forever to serve the file. The entire bundle is only 3.3MB; on a fiber connection that shouldn't exactly take long...
#307 sounds like a way to optimize the bundle, but wouldn't actually deliver it faster. I know I'm using something of a toy static server in the image.
Don't know much about the referenced webpack technique though so maybe it would help.

Closing this for now since I have not heard any complaints in this regard. I will reopen this if we think this continues to be a source of feedback.

I'm reopening this, the initial production load times remain pretty painful. I suspect there hasn't been much complaint because the bundle is cached so it's only incurred the first time you load the application, but I think we can improve the production image with a real static server.


feat: single resource (resolves #9)

Test on mobile and desktop: https://deploy-preview-25--co-design.netlify.app/resources/accessibility-for-co-designers/

@greatislander this looks great, one question about the subheading "Guide for Community Engagement" - without the icons I find it a bit confusing, but if we don't have time to create/add the icons (i.e. for the resource type and building block), I think it would help to even just unbold the word "for", what do you think @cherylhjli ?

@dayotte The "for" was supposed to be normal weight, good catch. I've fixed it now. Can you review again once the build finishes?


Add an API to enable registration of additional gRPC servers

This PR adds a new variable to the "sigs.k8s.io/usage-metrics-collector/pkg/collector/utilization" package containing the information necessary to register a new gRPC service to both the protobuf and JSON endpoints.

/lgtm
/approve


Upload wheel to PyPI in addition to source

redis-py has been uploading wheels for several versions now. Closing this.


Switch project_name to name for pip 8.1.2

Actually not complete, there were some other changes to.

Tricky. Merge whenever you get it working.

@jonparrott this works for me on 8.1.1 and 8.1.2, so I think it's right, merging. Fixes #6


Suppress popup on autostart after update

Closes #3841
Suppress popup to inform about autostart after update of AG if settings option "Show Last Opened Repository" is set

I think its a confusing feature, rather always have the popup to be consistent 🤷♂

I think it should be a separate option on the settings page - see discussion #3841


MultiQueryRetriever documentation code is not executing

Checklist

[X] I added a very descriptive title to this issue.
[X] I included a link to the documentation page I am referring to (if applicable).

Issue with current documentation:
No response
Idea or request for content:
below's the code which's present in the latest MultiQueryRetriever documentation
from typing import List

from langchain.chains import LLMChain
from langchain.output_parsers import PydanticOutputParser
from langchain.prompts import PromptTemplate
from pydantic import BaseModel, Field

# Output parser will split the LLM result into a list of queries
class LineList(BaseModel):
    # "lines" is the key (attribute name) of the parsed output
    lines: List[str] = Field(description="Lines of text")

class LineListOutputParser(PydanticOutputParser):
    def __init__(self) -> None:
        super().__init__(pydantic_object=LineList)

    def parse(self, text: str) -> LineList:
        lines = text.strip().split("\n")
        return LineList(lines=lines)

output_parser = LineListOutputParser()

QUERY_PROMPT = PromptTemplate(
    input_variables=["question"],
    template="""You are an AI language model assistant. Your task is to generate five
    different versions of the given user question to retrieve relevant documents from a vector
    database. By generating multiple perspectives on the user question, your goal is to help
    the user overcome some of the limitations of the distance-based similarity search.
    Provide these alternative questions separated by newlines.
    Original question: {question}""",
)
llm = OpenAI(temperature=0)

# Chain
llm_chain = LLMChain(llm=llm, prompt=QUERY_PROMPT, output_parser=output_parser)

# Other inputs
question = "What are the approaches to Task Decomposition?"

# Run
retriever = MultiQueryRetriever(
    retriever=vectordb.as_retriever(), llm_chain=llm_chain, parser_key="lines"
)  # "lines" is the key (attribute name) of the parsed output

# Results
unique_docs = retriever.get_relevant_documents(
    query="What does the course say about regression?"
)
len(unique_docs)

the above code is returning below issue
---------------------------------------------------------------------------
ValidationError                           Traceback (most recent call last)
[<ipython-input-22-0cf7a0e69b40>](https://localhost:8080/#) in <cell line: 24>()
     22
     23
---> 24 output_parser = LineListOutputParser()
     25
     26 QUERY_PROMPT = PromptTemplate(

2 frames
[<ipython-input-22-0cf7a0e69b40>](https://localhost:8080/#) in __init__(self)
     15 class LineListOutputParser(PydanticOutputParser):
     16     def __init__(self) -> None:
---> 17         super().__init__(pydantic_object=LineList)
     18
     19     def parse(self, text: str) -> LineList:

[/usr/local/lib/python3.10/dist-packages/langchain_core/load/serializable.py](https://localhost:8080/#) in __init__(self, **kwargs)
    105
    106     def __init__(self, **kwargs: Any) -> None:
--> 107         super().__init__(**kwargs)
    108         self._lc_kwargs = kwargs
    109

[/usr/local/lib/python3.10/dist-packages/pydantic/v1/main.py](https://localhost:8080/#) in __init__(__pydantic_self__, **data)
    339         values, fields_set, validation_error = validate_model(__pydantic_self__.__class__, data)
    340         if validation_error:
--> 341             raise validation_error
    342         try:
    343             object_setattr(__pydantic_self__, '__dict__', values)

ValidationError: 1 validation error for LineListOutputParser
pydantic_object
  subclass of BaseModel expected (type=type_error.subclass; expected_class=BaseModel)

Can you please have a look into and return the correct code rather than suggesting to go through all the files?

🤖
Hey @nithinreddyyyyyy! Great to see you back here. Hope you're doing wonderfully since our last chat! 🚀
The error you're encountering is due to the incorrect usage of the getattr function in the agenerate_queries and generate_queries methods. The getattr function is used to get the attribute of an object. In this case, it's trying to get the attribute self.parser_key (which is "lines") from response["text"]. However, response["text"] is a string and doesn't have a "lines" attribute, which is causing the error.
To resolve this issue, you should parse the response["text"] using the LineListOutputParser to get the lines. Here is the corrected code:
async def agenerate_queries(
        self, question: str, run_manager: AsyncCallbackManagerForRetrieverRun
    ) -> List[str]:
        """Generate queries based upon user input.

        Args:
            question: user query

        Returns:
            List of LLM generated queries that are similar to the user input
        """
        response = await self.llm_chain.acall(
            inputs={"question": question}, callbacks=run_manager.get_child()
        )
        parsed_response = LineListOutputParser().parse(response["text"])
        lines = parsed_response.lines
        if self.verbose:
            logger.info(f"Generated queries: {lines}")
        return lines

def generate_queries(
        self, question: str, run_manager: CallbackManagerForRetrieverRun
    ) -> List[str]:
        """Generate queries based upon user input.

        Args:
            question: user query

        Returns:
            List of LLM generated queries that are similar to the user input
        """
        response = self.llm_chain.call(
            {"question": question}, callbacks=run_manager.get_child()
        )
        parsed_response = LineListOutputParser().parse(response["text"])
        lines = parsed_response.lines
        if self.verbose:
            logger.info(f"Generated queries: {lines}")
        return lines

In this corrected code, LineListOutputParser().parse(response["text"]) is used to parse the response["text"] into a LineList object, and then lines attribute of the LineList object is used to get the lines.
This solution is based on the code in the libs/langchain/langchain/retrievers/multi_query.py file in the LangChain repository.
Please try this solution and let me know if it resolves your issue.
Sources

DOC: Quickstart Code Fails for Retrieval Chain
libs/langchain/langchain/retrievers/multi_query.py

About Dosu
This response is meant to be useful and save you time. It is not meant to be a precise solution, but rather a starting point for your own research.
Help me be more useful! Please leave a 👍 if this is helpful and 👎 if it is irrelevant.
If you want to continue the conversation, start your reply with @dosu-bot.

I don't need this code. I need the below code updated
from typing import List

from langchain.chains import LLMChain
from langchain.output_parsers import PydanticOutputParser
from langchain.prompts import PromptTemplate
from pydantic import BaseModel, Field

# Output parser will split the LLM result into a list of queries
class LineList(BaseModel):
    # "lines" is the key (attribute name) of the parsed output
    lines: List[str] = Field(description="Lines of text")

class LineListOutputParser(PydanticOutputParser):
    def __init__(self) -> None:
        super().__init__(pydantic_object=LineList)

    def parse(self, text: str) -> LineList:
        lines = text.strip().split("\n")
        return LineList(lines=lines)

output_parser = LineListOutputParser()

QUERY_PROMPT = PromptTemplate(
    input_variables=["question"],
    template="""You are an AI language model assistant. Your task is to generate five
    different versions of the given user question to retrieve relevant documents from a vector
    database. By generating multiple perspectives on the user question, your goal is to help
    the user overcome some of the limitations of the distance-based similarity search.
    Provide these alternative questions separated by newlines.
    Original question: {question}""",
)
llm = OpenAI(temperature=0)

# Chain
llm_chain = LLMChain(llm=llm, prompt=QUERY_PROMPT, output_parser=output_parser)

# Other inputs
question = "What are the approaches to Task Decomposition?"

# Run
retriever = MultiQueryRetriever(
    retriever=vectordb.as_retriever(), llm_chain=llm_chain, parser_key="lines"
)  # "lines" is the key (attribute name) of the parsed output

# Results
unique_docs = retriever.get_relevant_documents(
    query="What does the course say about regression?"
)
len(unique_docs)

Can you please update the above code?

This is a regression more details here:
https://github.com/langchain-ai/langchain/issues/17352#issuecomment-1936822930

duplicate of https://github.com/langchain-ai/langchain/issues/17352


Wait and retry if too many requests

A user with 5 trackers configured with his Tractive account reported a problem with the Too Many Requests API response: https://github.com/home-assistant/core/issues/99121#issuecomment-1702549320 I'm trying to find the perfect sleep value when we reach the limit of allowed requests.
@hupfis Sorry to disturb you. If I understand correctly, you have direct contact with Tractive. Maybe you can give some hint how long we should wait before making another request if we get Too Many Requests response?

After testing several possibilities, 3 seconds seems like a good value. I mark the PR as ready for review.

@zhulik Could we go back to reviewing this PR?

@zhulik Could you please look at this change? Users have been waiting for this fix for a really long time.

Thanks!


Move dynamo.optimize to the end of model preparation

Dynamo no longer supports adding amp wrapper after calling compile/optimize as described in https://github.com/pytorch/pytorch/issues/95641.

CC @sgugger

The docs for this PR live here. All of your documentation changes will be reflected on that endpoint.


Correct failed test case for model_visualization_test.py

When running model_visualization_test, I found that there's failed test case,and it shows error as below.

keras/integration_tests/model_visualization_test.py"

plot_model(model, "nested-functional.png", expand_nested=True)

"dot" with args ['-Tpng', '/tmp/tmpv2ec_hvt'] returned code: -6

stdout, stderr:
 b''
b"failed at node 380[1]\ndot: maze.c:313: chkSgraph: Assertion `np->cells[1]' failed.\n"

AssertionError: "dot" with args ['-Tpng', '/tmp/tmpv2ec_hvt'] returned code: -6

An error occurred because some edges represent destinations that do not exist on the dot.
So, I added the logic to remove this kind of edge from dot.

Codecov Report
Attention: Patch coverage is 14.28571% with 6 lines in your changes missing coverage. Please review.

Project coverage is 57.67%. Comparing base (d4a5116) to head (60d8df9).

Files
Patch %
Lines

keras/src/utils/model_visualization.py
14.28%
6 Missing :warning:

:exclamation:  There is a different number of reports uploaded between BASE (d4a5116) and HEAD (60d8df9). Click for more details.
HEAD has 6 uploads less than BASE

Flag
BASE (d4a5116)
HEAD (60d8df9)

keras
4
1

keras-torch
1
0

keras-tensorflow
1
0

keras-jax
1
0

Additional details and impacted files
@@             Coverage Diff             @@
##           master   #20176       +/-   ##
===========================================
- Coverage   79.37%   57.67%   -21.70%
===========================================
  Files         501      501
  Lines       47320    47327        +7
  Branches     8690     8693        +3
===========================================
- Hits        37559    27296    -10263
- Misses       8004    18331    +10327
+ Partials     1757     1700       -57

Flag
Coverage Δ

keras
57.67% <14.28%> (-21.55%)
:arrow_down:

keras-jax
?

keras-numpy
57.67% <14.28%> (-0.01%)
:arrow_down:

keras-tensorflow
?

keras-torch
?

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

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


Make a few changes to how d works

I think you mean stack.push rather than stack.append. I'll fix this a bit later


Make tenant email domain lower-cased when stored

Currently it validates and does everything case-insensitive. But the stored version is original case. Perhaps it should be lower cased in storage.

Looks like the email domain isn't indexed case-insensitively in the tenant email domain index either, making this issue a bit more severe. This probably blocks 12.1.

There was a regression in inviting guests that resulted in host and email domain not being lower-cased when updated. For host this was fine because there was secondary lower-casing when reading the tenant from the DB.
This fix:

Addresses the issue where the host and email domain aren't properly lower cased into the db
Adds the same secondary lower-casing on read for email domain that we already have for host
Updates the email domain index to work case-insensitive, which is proper for domain indexing since domains are by nature case insensitive


Unable to process token

I'm writing an identity provider.  It works with mod_auth_openidc (Ping's project for Apache) and Kubernetes.  I'm trying to integrate it with the asp.net core openid connect provider 1.1.  It will trigger an authentication without issue but when it tries to process the access token I get the following error:
Microsoft.AspNetCore.Hosting.Internal.WebHost:Information: Request starting HTTP/1.1 GET http://localhost:5266/signin-oidc?code=JctHrptAAADQu3j7I9EHnB0MpjqMAVOMssEw9GIDY0qUu%2BdL2bzd%2B3OqP6efp6CdUEQ7uhqrN%2BqqBgx9YVX5N6FpLv%2Fv6ccJD9m0vxace%2FhN8Lx8v6P3pXiu3yrUtbsJxfHL9Z6xpO1bOYHUvacWUus8JUrGdTQYVCpfLpk9Amas6dQ%2FP7HbXUNWUY57P7ppqx%2FfRtBWRypsHh6EevpABC4PIov1Ej%2BCbCScofotq3DO13TvZcfVuPng6B4lkjN5j5f4Omr%2F%2FBGK8sYFfnE0djBRVN%2Fn8r49iqXCkOdV2qqqLaMizjHCbWOXei%2BWF90DF29a3l9gW8iDJjUTafE4BeAQ3gEprreqNMbb6kiHQuTXkDRD7t6AUQsB6gLvjMYu7yAtklGNs6%2FqEju9p0tTcAEr6rb0rZ%2Bp1dDjis1llpmihDSwGNNVBJteCWEOBWO28TKdqV38pElIGVVcrqbpzqO%2BeHTrMQZSJL5C5hL5Sp4jdOHhqtzKer1ziPeZsKcg%2B3T3Zew2bBUwP9O9eBCIqVA9huz9jBJldud9X94xN5cU3O61ucfdqy0kTTiS95DeBLe0N8oZ2qTwrDExfU41BcwyXKChKt61sX1KmcwWgCc3hgkRP60tp2DAsJa9snpMWddIa2kezI7qtuFc%2BVftMO2KGNhTeoYLAZGp2eubYrWA%2BOvi2T6nlEID0CIpvW61Ilh1V8HY%2FSB%2F1UD8oJWViC0a9Ofg7%2BGyptln2i2WaaLjw5PT338%3D&state=CfDJ8ImJlfIQfUZGtC0SyBUvDQTNMzpjQ4bilzj58KJyHkgBnwldL5GuAFHaK7R39iEDNi3q2WbDxxLTWy7YfpDdpn3WCgE36Q5F6ZTSeilItpcvrMP27TccKYiX2XquQrlLKS2cqoOof0jyn1E7gaCJ7hEeiC8uFbgMSaEVmfBPQEIk6IA6tFuB_QAH7lmDGFB0o1GyIgJo_ypRe-pklRuvg2HaN_aVyseoQj4MKQh1QmfSitwLwdQ2edtpeZN5HO5YxSbD2nf6uwxY5Hw9wa-5bxvU_LA9jZ9dMd6ckIe0X62ctC9O_FeLH5AGdicAgVVXa1FRtWwU4CvJoY7Z0fIA_Q-y0n1LdhuX303yJo9c9nzGih5DRXl0K2UjSpZBpfyNlA
Microsoft.AspNetCore.Authentication.OpenIdConnect.OpenIdConnectMiddleware:Error: Exception occurred while processing message.

System.NullReferenceException: Object reference not set to an instance of an object.
   at Microsoft.AspNetCore.Authentication.OpenIdConnect.OpenIdConnectHandler.<GetUserInformationAsync>d__23.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at Microsoft.AspNetCore.Authentication.OpenIdConnect.OpenIdConnectHandler.<HandleRemoteAuthenticateAsync>d__20.MoveNext()
Microsoft.AspNetCore.Authentication.OpenIdConnect.OpenIdConnectMiddleware:Information: Error from RemoteAuthentication: Object reference not set to an instance of an object..
Microsoft.AspNetCore.Diagnostics.DeveloperExceptionPageMiddleware:Error: An unhandled exception has occurred while executing the request

System.AggregateException: Unhandled remote failure. (Object reference not set to an instance of an object.) ---> System.NullReferenceException: Object reference not set to an instance of an object.
   at Microsoft.AspNetCore.Authentication.OpenIdConnect.OpenIdConnectHandler.<GetUserInformationAsync>d__23.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at Microsoft.AspNetCore.Authentication.OpenIdConnect.OpenIdConnectHandler.<HandleRemoteAuthenticateAsync>d__20.MoveNext()
   --- End of inner exception stack trace ---
   at Microsoft.AspNetCore.Authentication.RemoteAuthenticationHandler`1.<HandleRemoteCallbackAsync>d__6.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at Microsoft.AspNetCore.Authentication.RemoteAuthenticationHandler`1.<HandleRequestAsync>d__5.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at Microsoft.AspNetCore.Authentication.OpenIdConnect.OpenIdConnectHandler.<HandleRequestAsync>d__15.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at Microsoft.AspNetCore.Authentication.AuthenticationMiddleware`1.<Invoke>d__18.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at Microsoft.AspNetCore.Authentication.AuthenticationMiddleware`1.<Invoke>d__18.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at Microsoft.AspNetCore.Authentication.AuthenticationMiddleware`1.<Invoke>d__18.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at Microsoft.AspNetCore.Authentication.AuthenticationMiddleware`1.<Invoke>d__18.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at Microsoft.AspNetCore.Authentication.AuthenticationMiddleware`1.<Invoke>d__18.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at Microsoft.AspNetCore.Authentication.AuthenticationMiddleware`1.<Invoke>d__18.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at Microsoft.AspNetCore.Authentication.AuthenticationMiddleware`1.<Invoke>d__18.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at Microsoft.AspNetCore.Authentication.AuthenticationMiddleware`1.<Invoke>d__18.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at Microsoft.AspNetCore.Authentication.AuthenticationMiddleware`1.<Invoke>d__18.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at Microsoft.AspNetCore.Authentication.AuthenticationMiddleware`1.<Invoke>d__18.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at Microsoft.VisualStudio.Web.BrowserLink.Runtime.BrowserLinkMiddleware.<ExecuteWithFilter>d__7.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at Microsoft.AspNetCore.Diagnostics.EntityFrameworkCore.MigrationsEndPointMiddleware.<Invoke>d__5.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at Microsoft.AspNetCore.Diagnostics.EntityFrameworkCore.DatabaseErrorPageMiddleware.<Invoke>d__6.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at Microsoft.AspNetCore.Diagnostics.EntityFrameworkCore.DatabaseErrorPageMiddleware.<Invoke>d__6.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at Microsoft.AspNetCore.Diagnostics.DeveloperExceptionPageMiddleware.<Invoke>d__6.MoveNext()
---> (Inner Exception #0) System.NullReferenceException: Object reference not set to an instance of an object.
   at Microsoft.AspNetCore.Authentication.OpenIdConnect.OpenIdConnectHandler.<GetUserInformationAsync>d__23.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at Microsoft.AspNetCore.Authentication.OpenIdConnect.OpenIdConnectHandler.<HandleRemoteAuthenticateAsync>d__20.MoveNext()<---

Here's the access token returned from the code token exchange:
{"access_token":"eyJraWQiOiJDTj1vaWRjLXNpZywgT1U9dGVzdCwgTz10ZXN0LCBMPXRlc3QsIFNUPXRlc3QsIEM9dGVzdC1DTj1vaWRjLXNpZywgT1U9dGVzdCwgTz10ZXN0LCBMPXRlc3QsIFNUPXRlc3QsIEM9dGVzdC0xNDc5MjA1NTU3MDg4IiwiYWxnIjoiUlMyNTYifQ.eyJpc3MiOiJodHRwczovL29pZGNpZHAudHJlbW9sby5sYW46ODQ0My9hdXRoL2lkcC9PaWRjSWRQIiwiYXVkIjoiZG90bmV0bG9jYWwiLCJleHAiOjE0Nzk3NjM2ODgsImp0aSI6Il9hSG1jSDBBS3B1VTJKSnJYaWF1d1EiLCJpYXQiOjE0Nzk3NjM2MjgsIm5iZiI6MTQ3OTc2MzU2OCwibm9uY2UiOiI2MzYxNTM2MDQyODIxNDk0NDMuTkdZelptRXhNakF0WWpabU5pMDBZVEkwTFdGallXUXRNVGt5WVdZMVpqSmlZbVpqT1RJMU0yWTRaVE10TmpNNFlTMDBOamcxTFdFek16UXRZV0poT1dObVltUm1PVFpoIiwic3ViIjoibW1vc2xleSIsImVtYWlsX3ZlcmlmaWVkIjoidHJ1ZSIsImZpcnN0X25hbWUiOiJNYXR0IiwiZmFtaWx5X25hbWUiOiJNb3NsZXkiLCJlbWFpbCI6Im1hdHQubW9zbGV5QHRyZW1vbG9zZWN1cml0eS10ZXN0LmNvbSJ9.OzTf-UWFkKkSjc5ME_51B7yFM7v5Nte4bKrgxt3w7F_9D3b_ObdCR6KncSKjsKfecwpce8jMsDf5QiTXWYxC3JRsJheh_R0Y5p5xADalhlv7fTRu1qKFs25Ezv0wPhAGedwQhFCAEQZNrUe5zw6_PIUNGslDioTXBmmjZxV_vzV6dX6LqUTn-AGp6Ah0fnLzpRrkldbAqPJJepVtJ_Z8_J7RPWLBnsrw-p2eBU0CcW5yrxYiw-CGbAqbU8rrPPD_UwS6PbtHoWqT0hz82t70j_A84sv5Zvo31ygsklrRVnL9M8-WAwT1i0BaqAZR2AJgLpRbZQVZnxuiDhG7HrQ7vg","expires_in":60,"token_type":"Bearer","id_token":"eyJraWQiOiJDTj1vaWRjLXNpZywgT1U9dGVzdCwgTz10ZXN0LCBMPXRlc3QsIFNUPXRlc3QsIEM9dGVzdC1DTj1vaWRjLXNpZywgT1U9dGVzdCwgTz10ZXN0LCBMPXRlc3QsIFNUPXRlc3QsIEM9dGVzdC0xNDc5MjA1NTU3MDg4IiwiYWxnIjoiUlMyNTYifQ.eyJpc3MiOiJodHRwczovL29pZGNpZHAudHJlbW9sby5sYW46ODQ0My9hdXRoL2lkcC9PaWRjSWRQIiwiYXVkIjoiZG90bmV0bG9jYWwiLCJleHAiOjE0Nzk3NjM2ODgsImp0aSI6Ims5V1pHTVU1Tm9vLW15TXZuVGNqdmciLCJpYXQiOjE0Nzk3NjM2MjgsIm5iZiI6MTQ3OTc2MzU2OCwibm9uY2UiOiI2MzYxNTM2MDQyODIxNDk0NDMuTkdZelptRXhNakF0WWpabU5pMDBZVEkwTFdGallXUXRNVGt5WVdZMVpqSmlZbVpqT1RJMU0yWTRaVE10TmpNNFlTMDBOamcxTFdFek16UXRZV0poT1dObVltUm1PVFpoIiwic3ViIjoibW1vc2xleSIsImVtYWlsX3ZlcmlmaWVkIjoidHJ1ZSIsImZpcnN0X25hbWUiOiJNYXR0IiwiZmFtaWx5X25hbWUiOiJNb3NsZXkiLCJlbWFpbCI6Im1hdHQubW9zbGV5QHRyZW1vbG9zZWN1cml0eS10ZXN0LmNvbSJ9.GFGkY4lYD7yF6lZ1RhpG87E9OUJ8BdmN7XlT0uFhPpRpS_wajToqme3RxuGWnDWruRO2OipjG8qj3MWEHyPBPCUEKKOWsTvcxiXgFl9x1XZtaLqu3aW6UI7j2tfUxzmy5WpG8-zuzp704nBBxxUJ6tZcqACFIOGoKDuYCkHmEtLIPNp077wL_L8VKG--ZG1Ds-Zv7GzXzcXTdGs00oP2NpLT7HVYT-R5P-u62t5fgNffHTTtultw7XAQFHqix_BBvWac0VsG1Qok8LD4tIahUReo7ULYKKIUB-u6kVw4AR3VNtVW9wk59gXbg2Kb2udkZ8CfOcQ9tYZD8dr53y2LFw","refresh_token":"q1bKLFOyUvI1NQh3qvIMMcxPKvFKDqlISUvUL06PKTUwME6BkEo6Sql5yUWVBSWpKUGphaWpxSVAfcG+LiVpZYE5xcURaRFFhW7ZQQEWLiXJUVnhkW4mblHpySGlLlnafomOIQYVTmll5v6OxtrePqnu+Y5BETlZFX5KtQA\u003d"}

here's the output of the provider:
{
  "issuer": "https://oidcidp.tremolo.lan:8443/auth/idp/OidcIdP",
  "authorization_endpoint": "https://oidcidp.tremolo.lan:8443/auth/idp/OidcIdP/auth",
  "token_endpoint": "https://oidcidp.tremolo.lan:8443/auth/idp/OidcIdP/token",
  "userinfo_endpoint": "https://oidcidp.tremolo.lan:8443/auth/idp/OidcIdP/userinfo",
  "revocation_endpoint": "https://oidcidp.tremolo.lan:8443/auth/idp/OidcIdP/revoke",
  "jwks_uri": "https://oidcidp.tremolo.lan:8443/auth/idp/OidcIdP/certs",
  "response_types_supported": [
    "code",
    "token",
    "id_token",
    "code token",
    "code id_token",
    "token id_token",
    "code token id_token",
    "none"
  ],
  "subject_types_supported": [
    "public"
  ],
  "id_token_signing_alg_values_supported": [
    "RS256"
  ],
  "scopes_supported": [
    "openid",
    "email",
    "profile"
  ],
  "token_endpoint_auth_methods_supported": [
    "client_secret_post"
  ],
  "claims_supported": [
    "sub",
    "aud",
    "iss",
    "exp",
    "sub",
    "email_verified",
    "first_name",
    "family_name",
    "email"
  ],
  "code_challenge_methods_supported": [
    "plain",
    "S256"
  ]
}

i don't see a MoveNext anywhere in the code.  Am I missing some piece of data?

What does a response from "jwks_uri": "https://oidcidp.tremolo.lan:8443/auth/idp/OidcIdP/certs", look like?

@brockallen
{"keys":[{"kty":"RSA","kid":"CN=oidc-sig, OU=test, O=test, L=test, ST=test, C=test-CN=oidc-sig, OU=test, O=test, L=test, ST=test, C=test-1479205557088","use":"sig","alg":"RS256","n":"hm1LTDy95eJfDLag27sfBHDZ3ZJqSKHOYOrL2lg2XzXD2CxCXdZwmw9dduArLuvxlwe2RDqXxqD9biURda3rmu9myl6IefRcBuG4v2ojq-dXotnPZ6B8NG_GXF--3MflxPx4LXyx1PHSjjcQ_4Bifym_ck0879_W5E27VWhKC0vue7f8njEWpBTdLVwz_sha9aM8vGahIJEYxefeHKGjEoDrHZq59AvhiBq_xPIukxMg9IA4ZOAYNE2svdNxiDENq9CU6qQWneCnZ6R2kiZuU-tFOqUwDuLd7qymmskAZfMrH68EQj5-GMa2OlcNKH4qaURrBVyzE3HivEpna3Xn6w","e":"AQAB"}]}

@brockallen its actually never calling the userinfo endpoint.  It calls /token then fails

If the user-info request isn't sent then the null ref is coming from this range:
https://github.com/aspnet/Security/blob/dev/src/Microsoft.AspNetCore.Authentication.OpenIdConnect/OpenIdConnectHandler.cs#L758-L775
There are very few things that could null-ref there. One way to debug this is to checkout the Security code (rel or master branch) and add a global.json reference to it in your repo. Then you can put a break point  in the linked method and see what's null.

Perhaps this issue illustrates that there could be more logging here.

PRBKAC - I had implemented userinfo as post instead of get.  Once I added the source to my project and set some break points this became obvious.
great library, very easy to get everything working!

What line caused the null ref? That shouldn't happen regardless of the response.


Using APEX on multinode jobs when HPX_WITH_NETWORKING = OFF

As documented in #4257
https://github.com/STEllAR-GROUP/hpx/pull/4257#issuecomment-575370006
and
https://github.com/STEllAR-GROUP/hpx/pull/4257#issuecomment-575547782
I would like to use apex with user MPI driven jobs. I have modified the init of APEX to use MPI with an experimental (not cleaned up) version looking like
#ifdef HPX_HAVE_APEX
#if !defined(HPX_HAVE_NETWORKING) && defined(HPX_HAVE_LIB_MPI)
        int rank_=0, size_=1, is_initialized_=0;
        // Check if MPI_Init has been called previously
        MPI_Initialized(&is_initialized_);
        if(is_initialized_) {
            MPI_Comm_rank(MPI_COMM_WORLD, &rank_);
            MPI_Comm_size(MPI_COMM_WORLD, &size_);
        }
        else {
            int required, provided;
            required = MPI_THREAD_MULTIPLE;
            MPI_Init_thread(0, nullptr, required, &provided);
            if (provided < MPI_THREAD_FUNNELED) {
                std::cout << "Your MPI installation doesn't allow multiple threads. Exiting.\n";
                std::terminate();
            }
            MPI_Comm_rank(MPI_COMM_WORLD, &rank_);
            MPI_Comm_size(MPI_COMM_WORLD, &size_);
            std::cout << "Initializing mpi on rank " << rank_ << " of " << size_ << std::endl;
        }
        std::cout << "Initializing instrumentation with rank " << rank_ << " of " << size_ << std::endl;
        util::external_timer::init(nullptr, rank_, size_);
#else
        util::external_timer::init(nullptr, hpx::get_locality_id(),
                hpx::get_initial_num_localities());
#endif

I have enabled debugging in OTF2 and I see output from my test
Initializing mpi on rank 0 of 2
Initializing instrumentation with rank 0 of 2
Initializing mpi on rank 1 of 2
Initializing instrumentation with rank 1 of 2
Rank 0 of 2.
Rank 1 of 2.
[OTF2] src/OTF2_Archive.c:93: Entering function 'OTF2_Archive_Open': OTF2_archive/APEX
[OTF2] Active debug module(s): ARCHIVE READER ANCHOR_FILE COLLECTIVES POSIX SION SION_RANK_MAP SION_COLLECTIVES LOCKS
[OTF2] Active debug module(s): ARCHIVE READER ANCHOR_FILE COLLECTIVES POSIX SION SION_RANK_MAP SION_COLLECTIVES LOCKS
[OTF2] src/OTF2_Archive.c:93: Entering function 'OTF2_Archive_Open': OTF2_archive/APEX
[OTF2] src/otf2_collectives.c:102: Entering function 'otf2_collectives_get_rank'
[OTF2] src/otf2_collectives.c:102: Entering function 'otf2_collectives_get_rank'
[OTF2] src/otf2_collectives.c:181: Entering function 'otf2_collectives_bcast': (nil), 0x7ffecb0440c0, 1, INT64, 0
Rank 1 Fudged my_OTF2Bcast
[OTF2] src/otf2_collectives.c:181: Entering function 'otf2_collectives_bcast': (nil), 0x7ffcbbf858f0, 1, INT64, 0
Rank 0 Fudged my_OTF2Bcast

Elapsed time: 0.0599711 seconds
Cores detected: 8
Worker Threads observed: 4
Available CPU time: 0.239884 seconds

Counter                                   : #samples | minimum |    mean  |  maximum |  stddev
------------------------------------------------------------------------------------------------
                    1 Minute Load average :        1      1.100      1.100      1.100      0.000
------------------------------------------------------------------------------------------------

Timer                                                : #calls  |    mean  |   total  |  % total
------------------------------------------------------------------------------------------------
                                           <unknown> :        1      0.006      0.006      2.666
                                       Dataflow Task :        1      0.001      0.001      0.444
hpx::components::server::runtime_support::shutdow... :        1      0.006      0.006      2.650
hpx::components::server::runtime_support::load_co... :        1      0.006      0.006      2.484
hpx::components::server::runtime_support::call_sh... :        2      0.001      0.003      1.176
hpx::agas::server::primary_namespace::colocate_ac... :        2      0.000      0.000      0.083
hpx::actions::action<void (*)(hpx::components::se... :        2      0.000      0.000      0.129
                        async_launch_policy_dispatch :        3      0.000      0.000      0.073
                                           backtrace :        1      0.001      0.001      0.351
   hpx::parallel::execution::parallel_executor::post :        3      0.000      0.001      0.476
                                          run_helper :        1      0.010      0.010      3.988
                                           APEX Idle :                          0.205     85.480
------------------------------------------------------------------------------------------------
                                        Total timers : 18
Closing OTF2 event files...
Writing OTF2 definition files...
[OTF2] src/otf2_file_posix.c:141: File to open: 'OTF2_archive/APEX/4294967296.def'
Writing OTF2 Global definition file...
[OTF2] src/otf2_collectives.c:102: Entering function 'otf2_collectives_get_rank'
Writing OTF2 Node information...
Writing OTF2 Communicators...
[OTF2] src/otf2_file_posix.c:141: File to open: 'OTF2_archive/APEX/0.def'
[OTF2] src/otf2_file_posix.c:141: File to open: 'OTF2_archive/APEX/4294967297.def'
[OTF2] src/otf2_file_posix.c:141: File to open: 'OTF2_archive/APEX/1.def'
[OTF2] src/otf2_file_posix.c:141: File to open: 'OTF2_archive/APEX/4294967298.def'
[OTF2] src/otf2_file_posix.c:141: File to open: 'OTF2_archive/APEX/2.def'
[OTF2] src/otf2_file_posix.c:141: File to open: 'OTF2_archive/APEX/4294967299.def'
[OTF2] src/otf2_file_posix.c:141: File to open: 'OTF2_archive/APEX/3.def'
[OTF2] src/otf2_file_posix.c:141: File to open: 'OTF2_archive/APEX/4294967300.def'
[OTF2] src/otf2_file_posix.c:141: File to open: 'OTF2_archive/APEX/4.def'
[OTF2] src/otf2_collectives.c:102: Entering function 'otf2_collectives_get_rank'
[OTF2] src/otf2_file_posix.c:141: File to open: 'OTF2_archive/APEX/4294967300.evt'
Closing the archive...
[OTF2] src/otf2_collectives.c:102: Entering function 'otf2_collectives_get_rank'
[OTF2] src/otf2_file_posix.c:141: File to open: 'OTF2_archive/APEX.otf2'
[OTF2] src/otf2_file_posix.c:141: File to open: 'OTF2_archive/APEX/4.evt'
[OTF2] src/otf2_file_posix.c:141: File to open: 'OTF2_archive/APEX/4294967299.evt'
[OTF2] src/otf2_file_posix.c:141: File to open: 'OTF2_archive/APEX/3.evt'
[OTF2] src/otf2_file_posix.c:141: File to open: 'OTF2_archive/APEX/4294967298.evt'
[OTF2] src/otf2_file_posix.c:141: File to open: 'OTF2_archive/APEX/2.evt'
[OTF2] src/otf2_file_posix.c:141: File to open: 'OTF2_archive/APEX/4294967297.evt'
[OTF2] src/otf2_file_posix.c:141: File to open: 'OTF2_archive/APEX/1.evt'
[OTF2] src/otf2_file_posix.c:141: File to open: 'OTF2_archive/APEX/4294967296.evt'
[OTF2] src/otf2_file_posix.c:141: File to open: 'OTF2_archive/APEX/0.evt'
[OTF2] src/otf2_file_posix.c:141: File to open: 'OTF2_archive/APEX.def'
done.

but when loaded in vampir, I do not see "Dataflow Task" for example - there may be other tasks missing, but I didn't look for them. The trace shows two ranks, each with 4 threads, but not all tasks are present, or labelled incorrectly?
When I run the same job with mpi ranks =1, then I see the correct task names.
What other functions must I implement to get this to work?
This is a screenshot of the output from a mpi rank node run
rm -rf OTF2_archive && ~/apps/mpich/3.3.1/bin/mpiexec -n 1 bin/scheduler_priority_check_test
Initializing mpi on rank 0 of 1
Initializing instrumentation with rank 0 of 1
Rank 0 of 1.
[OTF2] src/OTF2_Archive.c:93: Entering function 'OTF2_Archive_Open': OTF2_archive/APEX
[OTF2] Active debug module(s): ARCHIVE READER ANCHOR_FILE COLLECTIVES POSIX SION SION_RANK_MAP SION_COLLECTIVES LOCKS
[OTF2] src/otf2_collectives.c:102: Entering function 'otf2_collectives_get_rank'
[OTF2] src/otf2_collectives.c:181: Entering function 'otf2_collectives_bcast': (nil), 0x7ffc9365bb50, 1, INT64, 0
Rank 0 Fudged my_OTF2Bcast

Elapsed time: 0.029733 seconds
Cores detected: 8
Worker Threads observed: 4
Available CPU time: 0.118932 seconds

Timer                                                : #calls  |    mean  |   total  |  % total
------------------------------------------------------------------------------------------------
                                           <unknown> :        1      0.001      0.001      0.922
                                       Dataflow Task :        1      0.001      0.001      0.882
hpx::components::server::runtime_support::shutdow... :        1      0.001      0.001      0.840
hpx::components::server::runtime_support::load_co... :        1      0.006      0.006      5.153
hpx::components::server::runtime_support::call_sh... :        2      0.001      0.003      2.433
hpx::agas::server::primary_namespace::colocate_ac... :        2      0.000      0.000      0.152
hpx::actions::action<void (*)(hpx::components::se... :        2      0.000      0.000      0.248
                        async_launch_policy_dispatch :        3      0.000      0.000      0.144
                                           backtrace :        1      0.001      0.001      0.556
   hpx::parallel::execution::parallel_executor::post :        3      0.000      0.001      0.951
                                          run_helper :        1      0.010      0.010      8.519
                                           APEX Idle :                          0.094     79.198
------------------------------------------------------------------------------------------------
                                        Total timers : 18
Closing OTF2 event files...
Writing OTF2 definition files...
Writing OTF2 Global definition file...
[OTF2] src/otf2_collectives.c:102: Entering function 'otf2_collectives_get_rank'
Writing OTF2 Node information...
Writing OTF2 Communicators...
[OTF2] src/otf2_file_posix.c:141: File to open: 'OTF2_archive/APEX/0.def'
[OTF2] src/otf2_file_posix.c:141: File to open: 'OTF2_archive/APEX/1.def'
[OTF2] src/otf2_file_posix.c:141: File to open: 'OTF2_archive/APEX/2.def'
[OTF2] src/otf2_file_posix.c:141: File to open: 'OTF2_archive/APEX/3.def'
[OTF2] src/otf2_file_posix.c:141: File to open: 'OTF2_archive/APEX/4.def'
Closing the archive...
[OTF2] src/otf2_collectives.c:102: Entering function 'otf2_collectives_get_rank'
[OTF2] src/otf2_file_posix.c:141: File to open: 'OTF2_archive/APEX.otf2'
[OTF2] src/otf2_file_posix.c:141: File to open: 'OTF2_archive/APEX/4.evt'
[OTF2] src/otf2_file_posix.c:141: File to open: 'OTF2_archive/APEX/3.evt'
[OTF2] src/otf2_file_posix.c:141: File to open: 'OTF2_archive/APEX/2.evt'
[OTF2] src/otf2_file_posix.c:141: File to open: 'OTF2_archive/APEX/1.evt'
[OTF2] src/otf2_file_posix.c:141: File to open: 'OTF2_archive/APEX/0.evt'
[OTF2] src/otf2_file_posix.c:141: File to open: 'OTF2_archive/APEX.def'
done.

and this is the vampir view of the two rank run, there is not DataFlow task (among others missing)

@biddisco Thanks.  Can you share that trace so I can see what's going on with it?  I have vampir 9.7.1 installed.  The overview should show a summary of everything in the zoom window, so something strange is afoot.

tl/dr: I pushed some significant fixes and changes to APEX this past week regarding OTF2 support.  Please let me know if the current develop branch of APEX has any remaining unresolved problems. Thanks!
Specifically, the OTF2 thread, region and metric unification process had a bug where if any of those things had a space in the name (like a timer with a space in it), it wouldn't get resolved correctly for any rank other than 0 (and sometimes not even then).  OTF2 requires a global mapping at the end of execution, and that requires a reduction operation.  Unfortunately, distributed HPX implementations without MPI use the filesystem to do the unification.  It's been working, but it's not the best solution.  @weilewei is using this for tracing the HPX implementation of DCA++ and it's now working correctly for that case.

Just bumping this to prevent the stale-bot from getting rid of it. I will test multi-node networking free apex and check that all is working, then close this if it is.

Just bumping this to prevent the stale-bot from getting rid of it. I will test multi-node networking free apex and check that all is working, then close this if it is.

@biddisco any luck?


fix armory kb file names

Thanks for contributing to the Harness Developer Hub! Our code owners will review your submission.
Description

Please describe your changes: __________________________________
Jira/GitHub Issue numbers (if any): ______________________________
Preview links/images (Internal contributors only): __________________

PR lifecycle
We aim to merge PRs within one week or less, but delays happen sometimes.
If your PR is open longer than two weeks without any human activity, please tag a code owner in a comment.
PRs must meet these requirements to be merged:

[ ] Successful preview build.
[ ] Code owner review.
[ ] No merge conflicts.
[ ] Release notes/new features docs: Feature/version released to at least one prod environment.

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you all sign our Contributor License Agreement before we can accept your contribution.1 out of 2 committers have signed the CLA.:white_check_mark: joshua-armory:x: okosun-jYou have signed the CLA already but the status is still pending? Let us recheck it.

Please check the Execution Link of the Pipeline for the Website Draft URL. This is located in the Preview Step behind the Harness VPN and also is available in #hdh_alerts. E.g Website Draft URL: https://unique-id--harness-developer.netlify.app. Current Draft URL is: https://66cde8196d151020cccfcda8--harness-developer.netlify.app

LGTM


ENH: support full dict ingestion for ToEventStream

Codecov Report

Merging #144 into master will increase coverage by 0.11%.
The diff coverage is 95.45%.

@@            Coverage Diff             @@
##           master     #144      +/-   ##
==========================================
+ Coverage   95.52%   95.64%   +0.11%
==========================================
  Files          21       21
  Lines        2505     2524      +19
  Branches      576      583       +7
==========================================
+ Hits         2393     2414      +21
+ Misses         57       56       -1
+ Partials       55       54       -1

Impacted Files
Coverage Δ

shed/tests/test_translation.py
100% <100%> (ø)
:arrow_up:

shed/translation.py
91.96% <88.88%> (+1.13%)
:arrow_up:

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 85cbc32...01f4d58. Read the comment docs.


Implement as drag-and-drop desktop app

Not all users are tech-savvy enough to use command-line tools, what about bringing the concept of "scan & transfer" to regular desktop apps?
There might be a couple of usages, for example:

User launches the app, the main window is just a panel through which they can drag and drop the file(s) onto, or click a good old "Select file(s)" button
User drags the file(s) onto the app icon itself (I think many mac apps work this way)

Afterwards, a QR code is displayed and users can scan & download.
What do you think? Please share your ideas on this, thank you!

I think if the user is on Mac or Windows, many im clients have this file transporter which allows you simply transfer files or other stuff to your phone.
Which skips the scan part, because users have native apps installed both on pc and phone.
However, I suppose there is a need for transferring files from remote server to local, I'm preparing to fork and make a version works on a remote server.

Q: what's your plan of implementing cross platform d&d support? if you found a framework or something that makes that "easy", then i definitely think this is a great feature to implement, otherwise it might be quite complicated to implement (and support across os updates) from scratch. In this second case, the question is: is it worth it? m2c

I think a drag and drop functionality should be implemented simply as it adds to the app experience. You hit the nail on the head when you said that command-line execution of the app can be tedious for the non-tech-savvy. The functionality adds accessibility and ease of use to the app however, it might be fairly difficult to implement,

I'm bookmarking this QML frontend + Golang backend project (a popular clone of Sublime Text), it looks like a good approach: https://github.com/limetext/lime

yeah i was looking at this webview and looks simple and promising :D

What about using andlabs/ui , we do need to package the c library but we can avoid webview this way.

Another GUI library I just came across: https://github.com/fyne-io/fyne

What about using andlabs/ui , we do need to package the c library but we can avoid webview this way.

The only Problem is this has no image Support(only in tables), how would you Show the qr-code in this libary?
When we need Image then i prefere fyne as a Desktop app.

I just clone to c# and add simple graphic ui.
https://github.com/pearl2201/qrcp

Maybe via light API, for example qrcp --api. Then qrcp will print an easily parseable text (process pipeline) that could be handled by additional GUI applications. This will allow GUI to be independent of core program.

@FrontMage

However, I suppose there is a need for transferring files from remote server to local, I'm preparing to fork and make a version works on a remote server.

Check it out: https://github.com/schollz/croc
Add QR support and it's ready.

In case anyone lands here in the future, here's my wrapper
https://github.com/Naheel-Azawy/qrcp-win-ui

Here's my take in Flutter:
https://github.com/faveoled/qrshare


Investigate different fee mechanisms

This issue tracks alternatives for fee mechanisms, that were brought up in #79.

Ideally there should be a fee market for Tx (including messages) that solely depend on supply and demand.
Depending on the demand, validators, are free to include messages that aren't payed for and are not even tied to any account. These messages should always have lower (lowest) priority in the mempool. If the mempool is full incoming messages with no account will simply be dropped. If there is a lot of free capacity, free messages can be included (but there is no guarantee obviously and validator-nodes could be configured to have a minimal fee of course).
Not sure if allowing to allow Messages with no Tx (or with no account) is actually feasible or that important. But we should consider if we want to make this hard requirement or not.

Was this closed accidentally? If not, which PR did resolve it?

This was resolved with #96. If we want to further investigate fee mechanisms we can re-open, but for now it's not on the radar any more.


Errors

Why do you need the fake auth?

For me to develop the service without docker. Without the environment variable, the service does not start if it can not find the secret file.


Add run LLM widget

Description
This PR adds configuration for the RunLLM Widget.
In order to test this out in a staging / PR preview environment we will need to add the domain where the site is deployed to our database for reCAPTCHA verification.
If you could please provide the preview URL to us we can handle this on our end and we will comment here once resolved.
Please ping @agiron123 for this.
Without reCAPTCHA verification set up, the Widget will at least show up on the bottom right hand corner of the docs site.
Review
View the widget

Page to review

Hi @tbedford thanks for opening this up again. I'm testing the preview site and am getting a 404 for the runllm-widget.js file.
Perhaps you have more context on this than I do, the file should show here:
https://quixdocsdev.blob.core.windows.net/pr330/javascripts/runllm-widget.js
I'm unfamiliar with your CI/CD process. Is there another step that needs to happen for this file to be included like the other files in the javascripts folder? Or is there a way you could upload the contents to that path so that we can test against this preview site?

@agiron123 Thanks I can help with this, let me take a look.

@merlin-quix Thanks for the update here Merlin. Let me know if there is anything I can do here to help.

Thanks for all your help here @merlin-quix.
As far as getting answers to show, I have gone ahead and whitelisted your domains:
quixdocsdev.blob.core.windows.net
You should now be able to receive answers from our assistant.

@merlin-quix Regarding configuring the hotkey, you can configure the RunLLM hotkey here:
https://github.com/quixio/quix-docs/blob/8f3a6436987ae3f91750f5860014d07b21d846b9/docs/javascripts/runllm-widget.js#L12
In my testing, I found that the search bar of your production site pops up when I type the s or f key. (search and find, I assume).
This, however, is taking the input focus away from the RunLLM Widget, making it impossible to type a question into the widget. This is a fun use case that I never really accounted for while developing the widget. I'm working on my end to ensure that all inputs are consumed by the widget once open.
I'll let you know once that's ready.


TBB memory bug

Hi parlay maintainers, there seems to be an evasive bug in the integration of parlay and TBB that took me a painful amount of time to catch. The following is a minimal reproducible example:
#include <iostream>
#include "parlaylib-master/include/parlay/primitives.h"
#define vec parlay::sequence

struct MstPrune {
  vec<int> parent;
  vec<vec<int>> mst;
  void operator() (const int eventNregion) {
    int neg1 = -1;
    parent.assign(eventNregion, neg1);
    for (int i = 0, iend = parent.size(); i < iend; ++i) parent[i] = i;
    mst.resize(eventNregion);
    for (int i = 0; i < eventNregion; ++i) mst[i].resize(0);
    for (int i = 0; i < eventNregion; ++i) mst[parent[i]].emplace_back(i);
  }
};

int main(int argc, char* argv[]) {
  vec<int> sizes(argc);
  for (int i = 0; i < argc; ++i) sizes[i] = std::atoi(argv[i]);
  vec<MstPrune> mst(parlay::num_workers());
  parlay::parallel_for(0, argc, [&](auto i)->void {
    auto t = parlay::worker_id();
    mst[t](sizes[i]);
  });
  int S = 0;
  for (auto& m: mst) {
    for (auto& x: m.mst) { for (auto& y: x) S += y; }
  }
  if (S != 77) std::cout << "---------- S = " << S << " ----------\n";
  else std::cout << "S = " << S << ", ";
}

#undef vec

After compiling the code with the following command
g++ -std=c++20 -Ofast -DPARLAY_TBB -ltbb bug.cpp -o bug
and run
for i in {1..1000}; do  ./bug  1  1  1  1 12  1  1  2  2  4  3; done
You should be able to see nondeterministic result varying around the true answer "77".
If we change vec<int> parent; to std::vector<int> parent;, everything works fine.
If we switch to parlay's default thread scheduler, i.e. g++ -std=c++20 -Ofast -pthread bug.cpp -o bug , everything also works fine.
I tested both the latest oneAPI/tbb and an older version. The problem remains the same.
When the code is compiled as a shared library and linked to runtimes, segmentation fault will pop.
Could you help check if the bug is reproducible and provide some assistance?

OK, I closed the issue earlier because the previous example did not illustrate my point. The memory error only occurs when the code is compiled as a shared library and linked to runtimes. As developers who extensively write and link C++ libraries to R and Python, we face an additional layer of complexity. I am now more certain that the problem lies with TBB. I have cleaned and reduced the example to the following:

In the current directory, create bug.cpp with the code below:

// We create a vector of `m` functors (`Struct`), where `m` represents the number of threads.
// Each functor contains a sequence of integers (`x`) and a sequence of sequences (`y`).
// When running in parallel using TBB, allocating memory for `y` can unexpectedly affect
// the memory allocation of `x`, which should not occur.
// Changing the sequence type from `parlay::sequence` to `std::vector` can resolve this issue.
// Alternatively, modifying `y` from a sequence of sequences to a simple sequence of integers
// also eliminates the error.
// The issue likely stems from compatibility problems between TBB and
// Parlay's memory allocator for small objects.

#include <iostream>
#include "parlaylib-master/include/parlay/primitives.h"
#define vec parlay::sequence

struct Struct {
  vec<int> x;
  vec<vec<int>> y; // Oddly, if y is vec<int> instead vec<vec<int>>, everything would work.
  bool operator() ( const int n ) {
    x.resize(n);
    std::iota(x.begin(), x.end(), 0);
    size_t addr = size_t(x.data()); // Record the mem address as an integer.
    int xsize = x.size();
    y.resize(n); // Just allocate y;

    // If the allocation of `parent` is changed or its size is altered,
    //   print message.
    if (size_t(x.data()) != addr or int(x.size()) != xsize) {
      auto s = "Wrong! Why is `x` changed ?\n"
      "The initial address 'x.data()' is " + std::to_string(addr) +
        ", but the current address is " + std::to_string(size_t(x.data())) +
        ".\nThe initial size is " + std::to_string(xsize) +
        ", but the current size is " + std::to_string(x.size()) +
        ".\nThe initial elements are [0, ..., " + std::to_string(xsize) +
        "], but the current elements are [";
      for (int i = 0, iend = x.size(); i < iend; ++i)
        s += std::to_string(x[i]) + ", ";
      s += "].\n\n\n";
      std::cerr << s;
      return false;
    }
    return true;
  }
};

void bug() {
  std::vector<int> ns {1, 1, 1, 1, 12, 1, 1, 2, 2, 4};
  vec<Struct> mstPv(parlay::num_workers());
  parlay::parallel_for(0, ns.size(), [&](auto i)->void {
    auto t = parlay::worker_id();
    mstPv[t](ns[i]);
  });
}
#undef vec

Create main.cpp with the following code:

void bug(void);
int main() {
  for (int i = 0; i < 10000; ++i) bug(); // Run the buggy code 10000 times since the error occurs at random.
}

Run the following 3 sets of commands: use parlay's native thread scheduler, use openmp, and finally use tbb. Everything works fine except for tbb. It will print a large number of messages.

g++ -std=c++20 -shared -pthread -Ofast -fpic bug.cpp -o libbug.so
g++ -std=c++20 -Ofast -L. -lbug  main.cpp  -o  main
export LD_LIBRARY_PATH=.:$LD_LIBRARY_PATH
./main

g++ -std=c++20 -shared -DPARLAY_OPENMP -fopenmp -Ofast -fpic bug.cpp -o libbug.so
g++ -std=c++20 -Ofast -L. -lbug  main.cpp  -o  main
export LD_LIBRARY_PATH=.:$LD_LIBRARY_PATH
./main

g++ -std=c++20 -shared -Ofast -DPARLAY_TBB -ltbb -fpic bug.cpp -o libbug.so
g++ -std=c++20 -Ofast -L. -lbug  main.cpp  -o  main
export LD_LIBRARY_PATH=.:$LD_LIBRARY_PATH
./main

I hope the authors can confirm and resolve this issue:) Our entire system is built on parlay and TBB. We prefer not to abandon TBB, as it serves as the backend for the C++ parallel STL, which includes parallelized algorithms not available in parlay
Thank you!


Navbar doesn't  stay the same in "Through" Layout

I am trying to use the "Through" Layout, which the Navbar should stay the same through different pages. But I cannot make it work. Test link: http://demo.medcomhk.net/f7-test/
I have checked the examples in the Framework7 Docs. In "Navbars & Toolbars Layout" > "Through" Layout", the "Hello" and "World" links I suppose should demonstrate linking to other pages have no response.
In "Mixed" Layout, there is a typo:
 should be

In "Cheat sheet" > "Fixed", .pages.navbar-fixed.navbar-through should be .pages.navbar-fixed.navbar-fixed.

Ok, will check the typos. As for your navbar, don't enable dynamicNavbar to keep it same

Typos are fixed. I guess we can close it for now


[Feature]: Footer Enhancement

PR Description 📜
I have added the footer links and newsletter button
Fixes #4273

Mark the task you have completed ✅

[x] I follow CONTRIBUTING GUIDELINE & CODE OF CONDUCT of this project.
[x] I have performed a self-review of my own code or work.
[x] I have commented my code, particularly in hard-to-understand areas.
[x] My changes generates no new warnings.
[x] I have followed proper naming convention showed in CONTRIBUTING GUIDELINE
[x] I have added screenshot for website preview in assets/images
[x] I have specified the respective issue number for which I have requested the new game.

Add your screenshots(Optional) 📸

Thank you soo much for contributing to our repository 💗

Thank you @ayush-848 ,for creating the PR and contributing to our GameZone 💗
Review team will review the PR and will reach out to you soon! 😇
Make sure that you have marked all the tasks that you are done with ✅.
Thank you for your patience! 😀

Thank you  @ayush-848 , for your valuable time and contribution in our GameZone 💗.
It’s our GameZone, so Let’s build this GameZone altogether !!🤝
Hoping to see you soon with another PR again 😇
Wishing you all the best for your journey into Open Source🚀


Add ability to fork "public" apps

From @trevorturk:

This would be a great way to do something akin to the famous WordPress 5 Minute
Install -- run these couple commands to have a forked live app on Heroku.

I agree, Something like heroku fork --from ruby-getting-started --to my-geting-started would be a nice kick-start for beginners. Maybe it plugs into https://devcenter.heroku.com/articles/getting-started-with-ruby#prepare-the-app somewhere?
However, right now that results in ▸    You do not have access to the app ruby-getting-started.

Right now there is no concept of a public app

Yes, the "Heroku Button" is wonderful!


Add some OSS stuff

Sorry I messed up the commit graph a little!

Ah crap! fixing it

@simoninithomas - This should be good. A merge with rebase would fix the conflicts too.


Changes in the amount of data：after enhancement  of a dataset.

After 3 ways of enhancement  to a dataset, the  amount of dataset is four times as much as it‘s original size? Or the new picture  just replaced the original picture so the size after augmentation is as the same as the original?

@FarranYang Data aug is online, it only changes the current image data, and the original image will not be modified.


Question: Ability to Dump DB

Hey there,
I'm currently working on a project to integrate with Sqitch. I'm in need of doing a simple curl from our repo to grab, say, a structure.sql and then load that up as the structure in the DB for a CI. This way the CI doesn't need to be aware of Sqitch, it just needs the SQL to load up.
Does sqitch ever do a DB dump or the like? This would make application setup quite easy on CIs.

I suggest you post your question to the mail list.


Review UNFCCC, EUCoM, and contextual data

@evanp , please review the csv files in:
[] /data_emissions/country/UNFCCC
[]/data_emissions/city/EUCoM
[] /data_contextual/country/GDP
[] /data_contextual/country/population
[] /data_contextual/country/territory
Thanks! :)

I added DataSourceTag records for UNFCCC; see the PR!

It looks like there are two data sources mixed in the eucom directory? I have been doing one data source per directory. If one of them changes, it seems like you'd only want to update once.

We already included the GDP and Population. I think for Territory, you should drop the boundary polygon which we don't use right now, and just include the area, which we do.

Yes, I drop the polygon from Territory.

Yes, Zhi Yi created the EUCoM dataset by compiling three different datasources. Since I knew which datasource each record came from I chose to retain that information.
There are two publishers and three datasources.


Fixed Amazon Login after Amazon account e-mail change

Amazon and Magento accounts should be compared using Amazon UID, not e-mail, because if you change Amazon account e-mail it creates new Magento customer.

Talking about line 24
if ($amazonProfile && isset($amazonProfile['email'])) {

Added additional check.

Fixed first Amazon login for already existing Magento accounts.

@jonahellison can you review this pull request

@jonahellison @ngrices any update?

Merged and tested, thanks!


Customized Default Django Admin Theme Using Django Unfold

Replaced the default Django admin theme with Django Unfold.
Updated the admin interface to enhance visual appeal and user experience.

Below are the screenshots

To experience this modern django admin
run pip install -r requirements.txt  to install the django unfold then run the server navigate to your admin interface

Kindly add dependency in requirements.txt as well, and push.


Use kitchen-dokken and a more standard Travis setup

Testing syncs with our other cookbooks
Signed-off-by: Tim Smith<EMAIL_ADDRESS>

pinging @rhass


Resource paths with extraneous directory separators can't be matched to the imported asset

Godot Version: 3.0.6 Stable
Windows 10 Home
The project works fine when running from the Godot editor, but upon exporting, I receive the error:
ERROR: No loader found for resource: res://assets//coin.png
At: core/io/resource_loader.cpp:186
I understand this is a topic that has been brought up many times, but I've searched and I haven't been able to find a solution yet.  I've checked file paths and made sure all scenes had the correct content.  It is confusing me cause some resources load meanwhile others don't.
Some help debugging this would be greatly appreciated.
Here are the complete files for the project (This project is from a Packt book on learning Godot):
Maze.zip
Thank you

Works fine in 3.4
I remember there were some changes related to paths, so this was probably fixed.


How to deal with variables in class DependenciesBlock in Webpack 5

Hi,
I'm trying to learn Webpack internals in order to upgrade worker-plugin to Webpack 5 support.
Actually it leverages on Webpack v4 ParserHelpers methods:

toConstantDependency
addParsedVariableToModule

The first is present also in Webpack v5 JavascriptParserHelpers but the second is not. I followed the source code and stumbled into the DependenciesBlock class
The DependenciesBlock class features a this.variables = [] property in Webpack v4 which is missing in the constructor method in Webpack v5.
The same applies to the addVariable method which is present in DependenciesBlock for Webpack v4 but not for Webpack v5. This specific method is the one that is called by the addParsedVariableToModule in Webpack v4 ParserHelpers.
I would like to know if there's a beaten path to follow for this particular update case from Webpack v4 to Webpack v5?
Thanks :100: for the awesome lib!!!

These variables were removed.
You should use InitFragments instead.

Depending on the use case you may be able to use one of the core dependency classes for that.

Or try always using HarmonyImportSpecifierDependency instead of branching

Thanks a lot @sokra! Checking them out

Closing due to inactivity. Please test with latest version and feel free to reopen if still regressions. Thanks!


Removed Cloud Shell quickstart as it doesn't work with this sample.

Would recommend reviewing all samples that have had Cloud Shell included as its use means some steps in the remainder of the quick start / lab / demo are invalid.

@sjwaight,
Thanks for having already signed the Contribution License Agreement. Your agreement was validated by Microsoft. We will now review your pull request.
Thanks,
Microsoft Pull Request Bot

@SyntaxC4 - Please review the proposed changes. Thanks

The doc has been modified accordingly. Thanks. #please-close


commit hook and deleting file

Describe the bug
I tried to delete a file but then git commit failed.
As I do not now the reason exactly I simply moved .git/hooks temporarily to another place, then I was able to add the commit message.
To Reproduce
Steps to reproduce the behavior:

Delete a file
commit
try to "git commit -m asdf"
See error

Expected behavior
Git commit hook should not interfere with usual git actions.

This should have been fixed a few days ago with e7d9abfdcdc49ef6f9f28443ec48bce307fdb0a2
Have you updated since then?

ah sorry indeed, did the merge with master after i realized this.
Thanks for the heads up


The funding address changed using the old wallet.json file

I update the github code , then copy from the old wallet.json . It's "m/86'/0'/0'/0/0" path .  When i use the mint-dft command , the WAITING adress is not same with the wallet.json funding address .
Even i use wallet-init , the mint-dft funding address is not same with the wallet.json address.
Mabey this is something wrong about the code ?

some deployment doesn't support funding address so show another pay2hash address


chore: rename

Notes for Reviewers
This PR fixes #
Signed commits

[ ] Yes, I signed my commits.

Thanks for this, @vishalvivekm 👍
I'll let you determine whether we need to press forth on this PR or not (whether or not there are undone items remaining to complete).