Network failure leads to TypeError in retry

I got this traceback after a network failure with urllib3 v1.10 on Linux:
Exception:
Traceback (most recent call last):
  File "/usr/lib64/python3.4/site-packages/requests/packages/urllib3/connection.py", line 135, in _new_conn
    (self.host, self.port), self.timeout, **extra_kw)
  File "/usr/lib64/python3.4/site-packages/requests/packages/urllib3/util/connection.py", line 66, in create_connection
    for res in socket.getaddrinfo(host, port, 0, socket.SOCK_STREAM):
  File "/usr/lib64/python3.4/socket.py", line 533, in getaddrinfo
    for res in _socket.getaddrinfo(host, port, family, type, proto, flags):
socket.gaierror: [Errno -3] Temporary failure in name resolution

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/lib64/python3.4/site-packages/requests/packages/urllib3/connectionpool.py", line 559, in urlopen
    body=body, headers=headers)
  File "/usr/lib64/python3.4/site-packages/requests/packages/urllib3/connectionpool.py", line 345, in _make_request
    self._validate_conn(conn)
  File "/usr/lib64/python3.4/site-packages/requests/packages/urllib3/connectionpool.py", line 782, in _validate_conn
    conn.connect()
  File "/usr/lib64/python3.4/site-packages/requests/packages/urllib3/connection.py", line 215, in connect
    conn = self._new_conn()
  File "/usr/lib64/python3.4/site-packages/requests/packages/urllib3/connection.py", line 144, in _new_conn
    self, "Failed to establish a new connection: %s" % e)
requests.packages.urllib3.exceptions.NewConnectionError: <requests.packages.urllib3.connection.VerifiedHTTPSConnection object at 0x7f86e18d8198>: Failed to establish a new connection: [Errno -3] Temporary failure in name resolution

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/lib64/python3.4/site-packages/pip/basecommand.py", line 211, in main
    status = self.run(options, args)
  File "/usr/lib64/python3.4/site-packages/pip/commands/install.py", line 294, in run
    requirement_set.prepare_files(finder)
  File "/usr/lib64/python3.4/site-packages/pip/req/req_set.py", line 334, in prepare_files
    functools.partial(self._prepare_file, finder))
  File "/usr/lib64/python3.4/site-packages/pip/req/req_set.py", line 321, in _walk_req_to_install
    more_reqs = handler(req_to_install)
  File "/usr/lib64/python3.4/site-packages/pip/req/req_set.py", line 461, in _prepare_file
    req_to_install.populate_link(finder, self.upgrade)
  File "/usr/lib64/python3.4/site-packages/pip/req/req_install.py", line 250, in populate_link
    self.link = finder.find_requirement(self, upgrade)
  File "/usr/lib64/python3.4/site-packages/pip/index.py", line 486, in find_requirement
    all_versions = self._find_all_versions(req.name)
  File "/usr/lib64/python3.4/site-packages/pip/index.py", line 404, in _find_all_versions
    index_locations = self._get_index_urls_locations(project_name)
  File "/usr/lib64/python3.4/site-packages/pip/index.py", line 378, in _get_index_urls_locations
    page = self._get_page(main_index_url)
  File "/usr/lib64/python3.4/site-packages/pip/index.py", line 818, in _get_page
    return HTMLPage.get_page(link, session=self.session)
  File "/usr/lib64/python3.4/site-packages/pip/index.py", line 928, in get_page
    "Cache-Control": "max-age=600",
  File "/usr/lib64/python3.4/site-packages/requests/sessions.py", line 480, in get
    return self.request('GET', url, **kwargs)
  File "/usr/lib64/python3.4/site-packages/pip/download.py", line 373, in request
    return super(PipSession, self).request(method, url, *args, **kwargs)
  File "/usr/lib64/python3.4/site-packages/requests/sessions.py", line 468, in request
    resp = self.send(prep, **send_kwargs)
  File "/usr/lib64/python3.4/site-packages/requests/sessions.py", line 576, in send
    r = adapter.send(request, **kwargs)
  File "/usr/lib64/python3.4/site-packages/cachecontrol/adapter.py", line 46, in send
    resp = super(CacheControlAdapter, self).send(request, **kw)
  File "/usr/lib64/python3.4/site-packages/requests/adapters.py", line 370, in send
    timeout=timeout
  File "/usr/lib64/python3.4/site-packages/requests/packages/urllib3/connectionpool.py", line 609, in urlopen
    _stacktrace=sys.exc_info()[2])
  File "/usr/lib64/python3.4/site-packages/requests/packages/urllib3/util/retry.py", line 226, in increment
    total -= 1
TypeError: unsupported operand type(s) for -=: 'Retry' and 'int'

---
Want to back this issue? **[Post a bounty on it!](https://www.bountysource.com/issues/28318492-network-failure-leads-to-typeerror-in-retry?utm_campaign=plugin&utm_content=tracker%2F192525&utm_medium=issues&utm_source=github)** We accept bounties via [Bountysource](https://www.bountysource.com/?utm_campaign=plugin&utm_content=tracker%2F192525&utm_medium=issues&utm_source=github).

Hmm, yeah, this is less than ideal. How does Retry.total ever end up being an instance of Retry? Let me dive in and see what's going on here.

I can really only see one flow where this might happen at the moment, which is if Retry.from_int is called and we somehow have a retries instance that is not an instance of Retry when it is passed into the function, but is when we instantiate the class. Which seems crazy and should be impossible.
Oh! But maybe it isn't! I think this isn't strictly a urllib3 bug, it's a requests/pip bug. Are your tracebacks complete, @JohannesBuchner, or did you trim them?

I used pip3.4; I did not trim the traceback.

Hmm. It feels like parts of the traceback are missing, but I guess they only go as far back as they got unwound to. Regardless, let me ask this: where did you install pip from?

I've definitely seen this before. That said, this traceback is interesting. urllib3 is vendored into requests, but requests isn't vendored into pip. Very weird.
Also, pip passes its own Retry object iirc. Let me go digging.

Gentoo repos. I used pip to install a local egg directory.

So pip creates its own Retry object. cachecontrol is involved in this traceback though.
  File "/usr/lib64/python3.4/site-packages/requests/sessions.py", line 576, in send
    r = adapter.send(request, **kwargs)
  File "/usr/lib64/python3.4/site-packages/cachecontrol/adapter.py", line 46, in send
    resp = super(CacheControlAdapter, self).send(request, **kw)
  File "/usr/lib64/python3.4/site-packages/requests/adapters.py", line 370, in send
    timeout=timeout

I wonder if there's a bug in the version of cachecontrol that gentoo has packaged.

It's possible, but my concern is more that if pip/requests is providing a Retry object, that because of the shenanigans in kennethreitz/requests#2870, the isinstance check might fail.

I have CacheControl version 0.11.5

@Lukasa from the traceback it would appear gentoo is not unvendoring urllib3. That bug shouldn't be the cause here.

So sounds like this is a pip/requests bug? (Feel free to re-open if I'm mistaken.)


Make chunk manager an option in set_options

It would be useful to have a way to choose a chunk manager if more than one is found (see https://docs.xarray.dev/en/latest/internals/chunked-arrays.html#user-interface for how it works). The use case I have is a codebase that uses Xarray and Dask (and has lots of Dask imports), and which I'd like to be able to run on Cubed too (as well as Dask). Rather than converting it all in one go, it would be easier to convert it to use Xarray-only APIs gradually. The changes involve moving da.map_blocks to xr.apply_ufunc, for example.
Using the the current PR I can have both Dask and Cubed packages installed and switch to use Cubed with xr.set_option(chunk_manager="cubed"). This allows me to run a subset of the tests on Cubed while not having to worry about the rest of the Dask imports in the codebase.
Does this look like a good way to achieve this @TomNicholas?

[ ] Closes #xxxx
[x] Tests added
[ ] User visible changes (including notable bug fixes) are documented in whats-new.rst
[ ] New functions/methods are listed in api.rst

Good idea! I think this should be documented and tested though. It can be documented in the paragraph you linked to, and tested using the options context manager in a simple new test.

Please add a line in the docstring of xr.set_option as well.

Sorry I should have mentioned to add a whatsnew entry - then happy to merge!

Done - thanks @TomNicholas


cuDNN status not initialized

Dear sentdex,
can You help me please? I despair...
When I want to run the test_model.py, always python would not respond when this in the console happend:
E c:\tf_jenkins\home\workspace\release-win\device\gpu\os\windows\tensorflow\stream_executor\cuda\cuda_dnn.cc:359] could not create cudnn handle: CUDNN_STATUS_NOT_INITIALIZED
cuDNN is installed and the %PATH%-variable holds the path to the cuDNN folder...
 Maybe there is my problem....
I hope You can help me!
(Sorry for my bad english knowledgement)

https://i.gyazo.com/bee741277d721a2924e541eb45891ca2.png


Section List does not support multiple columns

Description:
Section List component doesn't allow numColumns property, however styling the content of the SectionList with flex-wrap: 'wrap', an error is received: Warning: flexWrap: 'wrap' is not supported with the VirtualizedList components.Consider using 'numColumns' with 'FlatList' instead.
React Native version:
System:
OS: macOS 10.15.3
CPU: (8) x64 Intel(R) Core(TM) i7-4770HQ CPU @ 2.20GHz
Memory: 413.15 MB / 16.00 GB
Shell: 3.2.57 - /bin/bash
Binaries:
Node: 12.13.1 - /usr/local/bin/node
npm: 6.13.4 - /usr/local/bin/npm
SDKs:
iOS SDK:
Platforms: iOS 13.2, DriverKit 19.0, macOS 10.15, tvOS 13.2, watchOS 6.1
IDEs:
Android Studio: 3.5 AI-191.8<IP_ADDRESS>10548
Xcode: 11.3.1/11C504 - /usr/bin/xcodebuild
npmPackages:
react: 16.9.0 => 16.9.0
react-native: https://github.com/expo/react-native/archive/sdk-36.0.0.tar.gz => 0.61.4
npmGlobalPackages:
create-react-native-app: 2.0.2
react-native: 0.61.5
Steps To Reproduce

Render SectionList,
specify content container style with flexWrap: 'wrap',
see error message

Expected Results
SectionList should receive numColumns prop.
Link to expo snack
<EMAIL_ADDRESS>

I've added a link to an expo snack to reproduce this issue.


Adopt a styleguide

With more contributors we need a style guide to adhere to.
I personally vote for https://github.com/airbnb/javascript as it is sensible, with the addition of specifying a limit of either 80 or 120 characters per line maximum.

:+1:

+1 I propose we adopt AirBnB's style guide wholesale and plan to stay up to date with changes in their style guide. As you noted, it doesn't say anything about character-per-line maximums. This is probably because any decent editor/IDE will have wordwrap, so character limits are unnecessary.

We have 3 yeses, and I believe @berkeleytrue also likes this style guide. I've gone ahead and updated our README.md to reflect that contributions should conform with the AirBnB style guide (and omitted any max characters per line for now).

See PR #310


Setup Cloud9 environment fails as cloudformation stack creation fails

The cloudformation template fails when setting up the cloud9 environment.
I followed the steps in the workshop: https://catalog.us-east-1.prod.workshops.aws/workshops/31676d37-bbe9-4992-9cd1-ceae13c5116c/en-US/installation/not-using-ee/setup-cloud9
and got the following error:

The following errors showed up in the cloudwatch logs:
[ERROR]	2023-06-05T12:29:25.650Z	cd03876b-0d8a-4166-aaeb-e0c01bebd771	An error occurred (IncorrectState) when calling the AssociateIamInstanceProfile operation: There is an existing association for instance i-07e943ccbf113d5f8
Traceback (most recent call last):
  File "/var/task/index.py", line 43, in lambda_handler
    response = ec2.associate_iam_instance_profile(IamInstanceProfile=iam_instance_profile, InstanceId=instance['InstanceId'])
  File "/var/runtime/botocore/client.py", line 530, in _api_call
    return self._make_api_call(operation_name, kwargs)
  File "/var/runtime/botocore/client.py", line 960, in _make_api_call
    raise error_class(parsed_response, operation_name)
botocore.exceptions.ClientError: An error occurred (IncorrectState) when calling the AssociateIamInstanceProfile operation: There is an existing association for instance i-07e943ccbf113d5f8

and
{
    "Status": "FAILED",
    "Reason": "See the details in CloudWatch Log Stream: 2023/06/05/[$LATEST]d8291b9393434b33820461d3ed667311",
    "PhysicalResourceId": "CustomResourcePhysicalID",
    "StackId": "arn:aws:cloudformation:us-east-1:577619097681:stack/C9-Observability-Workshop/3c9715a0-039c-11ee-8fec-0ea25af41d31",
    "RequestId": "f6606300-2ae2-4639-b374-c35c9462872e",
    "LogicalResourceId": "C9BootstrapInstanceLambda",
    "NoEcho": false,
    "Data": {
        "Error": "There was a problem associating IAM profile to the Cloud9 Instance"
    }
}

Same error here when trying to deploy in my own AWS account (not at an AWS event)

This same issue was reported on Feb 1
https://github.com/aws-samples/one-observability-demo/issues/201

@rafaelpereyra , can you take a look at this please?

This is not an issue as we are no longer using Cloud9.
I will close out this issue.


Provide a working local time impl but returns UTC - no time zone

Fixes that localtime toString has no output #46 but is UTC - no time zone offset.

Ok, I think I found part of the issue for sure - https://bugs.openjdk.java.net/browse/JDK-8184233


TypeError: new.target does not define a custom element

Browser: epiphany 3.30 / webkitgtk 2.22.3 which is a bit like safari w.r.t. custom elements.
After upgrading from 1.11.0 to 1.13.1, the message in the title appears at that point:
class HTMLCustomElement extends HTMLElement {
	constructor(me) {
		me = super(me); /* HERE */
		me.init();
		return me;
	}
	init() {}
}

class HTMLElementTemplate extends HTMLCustomElement {
  init() {

  }
  connectedCallback() {

  }
  //.....
}

try with:
constructor(...args) {
  const self = super(...args);
  self.init();
  return self;
}

Alternatively, please follow latest description on how to bring Custom Elements with built-in extends to every browser.
https://github.com/WebReflection/document-register-element#important-how-to-migrate-to-native-v1

yet, both suggestions are more than valid. Don't polyfill browsers that don't need it.


changing explicitness of multiple parameters

section
  parameters {b c : bool}

  definition R : Type₀ := (b = c)

  parameters (b c)
  definition R2 := R
  parameter (c)
  parameter (b)
  definition R3 := R
end

check @R
check @R2
check @R3

Output:
R : Π {b c : bool}, Type₀
R2 : Π {b : bool}, bool → Type₀
R3 : bool → (Π {c : bool}, Type₀)

Expected output:
R : Π {b c : bool}, Type₀
R2 : bool → bool → Type₀
R3 : bool → bool → Type₀

Actually, I would expect R2 and R3 to inherit the implicit arguments from R, I think.

I don't think that expectancy can be generalized. What if I change the definitions of R2 and R3 to some compound term where R occurs? What if in that term also another identifier R' occurs where the parameters b and c are actually explicit?

Good point.


1140 customer account and checkout translation

Changes

Checklist

[ ] the list of features is updated (if it's a feature and it's relevant)
[ ] I followed contributing guidelines

 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: niklaswolf:x: st-mothershipYou have signed the CLA already but the status is still pending? Let us recheck it.

@st-mothership could you resolve the conflicts that appeared recently?

@mkucmus done ;)


Added Normality Calculator

Fixes Issue🛠 #1789
Closes #
Description👨💻
This pull request introduces a Normality calculator to the project. The new feature allows users to input data related to solution concentration and obtain normality calculations. This addition aims to enhance the project's functionality and provide users with a valuable tool for their needs.
Screenshots/GIF📷

@Rakesh9100 This PR is reviewed & can be merged.


adding the CSS and Javascript files

This should add the JavaScript and CSS files.

I think I forgot this step last time.  Now I am hoping for a result.


Prevent third-party keyboards usage

Expected behavior
Verify that the app prevents usage of custom third-party keyboards whenever sensitive data is entered.

[ ] Point 2.5 https://github.com/OWASP/owasp-masvs/blob/master/Document/0x07-V2-Data_Storage_and_Privacy_requirements.md
[ ] Point 6.11 https://github.com/OWASP/owasp-masvs/blob/master/Document/0x11-V6-Interaction_with_the_environment.md

@nivritgupta
Doesn't apply to iOS?

@nivritgupta

@The-Hidden-Hand these days many third party support ios devices as well but I disable any third party to replace the default keyboard.

@nivritgupta
Ok, I was asking because you moved this to Review so I was lost.

So.. i will need to make my florisboard keyboard a system app? 🥲

:thinking:

It's for... security? haha
We can reconsider, but best practices suggest blocking them.

@The-Hidden-Hand yeah, blocking third party keyboards, but probably from google play where many apps are malicious either potentially or just
And when a keyboard becomes third party? If for example i take the same floris and build aosp with it inside 😂
and at the end what is not a third party keyboard? Google keyboard? Swift keyboard? Aosp? First two you can download as third party apps 😂

Alright, let's not make that our responsibility for now and let users decide on their usage.


Add AnalyzeEntitySentiment method to language v1.

Bypassing CircleCI since the target branch is nl, will run it there.


Is there a CLI only option?

So, is the xfce the only option here?
Is it possible to install arch without a desktop environment?

Use 'sudo sh -e installer/main.sh -r arch -t list'
This with list  all of the avalable targets one of which is core or cli-extra which might be closer to what you're looking for.


Uncaught TypeError: Cannot convert undefined or null to object

[Enter steps to reproduce:]

...
...

Atom: 1.21.0 x64
Electron: 1.6.9
OS: Mac OS X 10.13
Thrown From: Remote-FTP package 1.2.1
Stack Trace
Uncaught TypeError: Cannot convert undefined or null to object
At /Users/joseluisfreitasandrade/.atom/packages/Remote-FTP/lib/views/permission-view.js:218

TypeError: Cannot convert undefined or null to object
    at Function.keys (<anonymous>)
    at PermissionView.initialize (/packages/remote-ftp/lib/views/permission-view.js:218:12)
    at /packages/Remote-FTP/node_modules/space-pen/lib/space-pen.js:184:25)
    at /packages/remote-ftp/lib/views/permission-view.js:7:21)
    at HTMLElement.command (/packages/remote-ftp/lib/menus/commands.js:691:28)
    at CommandRegistry.handleCommandEvent (/Applications/Atom.app/Contents/Resources/app/src/command-registry.js:381:36)
    at CommandRegistry.dispatch (/Applications/Atom.app/Contents/Resources/app/src/command-registry.js:266:23)
    at AtomEnvironment.module.exports.AtomEnvironment.dispatchContextMenuCommand (/Applications/Atom.app/Contents/Resources/app/src/atom-environment.js:1354:34)
    at EventEmitter.outerCallback (/Applications/Atom.app/Contents/Resources/app/src/application-delegate.js:348:31)
    at emitThree (events.js:116:13)
    at EventEmitter.emit (events.js:194:7)

Commands
     -4:28.1.0 tree-view:show (atom-workspace.workspace.scrollbars-visible-when-scrolling)
     -4:17.1.0 remote-ftp:permission-selected (span.name.icon.gear-icon.medium-red)
     -0:56.9.0 core:copy (atom-notification.fatal.icon.icon-bug.native-key-bindings.has-detail.has-close.has-stack)

Non-Core Packages
emmet 2.4.3
file-icons 2.1.12
Remote-FTP 1.2.1

Can you tell me what the server service name is? Example: vsFTPd, ProFTPd, PureFTPd, etc...
It is likely that the server will not return these values.

ftpconfig:
"protocol": "sftp",
"host": "ftp.joseluisandrade.com",
"port": 29,
"user": "",
"pass": "",
"promptForPass": false,
"remote": "/home/joseluis/public_html",
"local": "",
"agent": "",
"privatekey": "",
"passphrase": "",
"hosthash": "",
"ignorehost": true,
"connTimeout": 10000,
"keepalive": 10000,
"keyboardInteractive": false,
"remoteCommand": "",
"remoteShell": "",
"watch": [],
"watchTimeout": 500

Yep, in SFTP no implemented. In the new version, you'll get a notification for the moment.
Thanks for report!

I had the same problem today. A quick non-secure fix was to log into the host with ssh and use sudo chmode on the remote folder to fix the permissions. Afterwards this package worked great.


openai-python 1.13.4 with custom http_client breaks OpenAI clients in langchain

Checked other resources

[X] I added a very descriptive title to this issue.
[X] I searched the LangChain documentation with the integrated search.
[X] I used the GitHub search to find a similar question and didn't find it.
[X] I am sure that this is a bug in LangChain rather than my code.
[X] The bug is not resolved by updating to the latest stable version of LangChain (or the specific integration package).

Example Code
Minimum working example:
from langchain_openai import AzureChatOpenAI
import httpx

http_client = httpx.Client()

model = AzureChatOpenAI(
    http_client=http_client,
    api_key="foo",
    api_version="2023-07-01-preview",
    azure_endpoint="https://example.com",
)

Error Message and Stack Trace (if applicable)
Traceback (most recent call last):
  File "/home/ec2-user/environment/test/test-openai.py", line 7, in <module>
    model = AzureChatOpenAI(http_client=http_client, api_key="foo", api_version="2023-07-01-preview", azure_endpoint="https://example.com")
  File "/home/ec2-user/.local/share/virtualenvs/test/lib/python3.10/site-packages/langchain_core/load/serializable.py", line 120, in __init__
    super().__init__(**kwargs)
  File "/home/ec2-user/.local/share/virtualenvs/test/lib/python3.10/site-packages/pydantic/v1/main.py", line 341, in __init__
    raise validation_error
pydantic.v1.error_wrappers.ValidationError: 1 validation error for AzureChatOpenAI
__root__
  Invalid `http_client` argument; Expected an instance of `httpx.AsyncClient` but got <class 'httpx.Client'> (type=type_error)

Description
Due to recent changes in openai-python the way langchain passes custom instances of http_client does not work anymore. The example code shows this behavior for AzureChatOpenAI but it holds for all instances where OpenAI clients are used.
See here for one example of how the custom http_client gets passed to openai-python. LangChain would need to ensure to properly pass an instance of httpx.AsyncClient or httpx.Client.
The reason for the exception are some new type checks in openai-python v1.13.4 (see here).
PS: As a temporary solution, I pinned openai-python to an older version. It is not pinned in langchain_openai (see here).
System Info
System Information
------------------
> OS:  Linux
> OS Version:  #1 SMP Sat Feb 24 09:50:35 UTC 2024
> Python Version:  3.10.12 (main, Nov 10 2023, 12:43:56) [GCC 7.3.1 20180712 (Red Hat 7.3.1-17)]

Package Information
-------------------
> langchain_core: 0.1.31
> langchain: 0.1.11
> langchain_community: 0.0.28
> langsmith: 0.1.25
> langchain_openai: 0.0.8
> langchain_text_splitters: 0.0.1

Packages not installed (Not Necessarily a Problem)
--------------------------------------------------
The following packages were not found:

> langgraph
> langserve

This problem shouldn't exist anymore, you can try the latest version

believe it will still happen because of how we instantiate the AsyncAzureOpenAI client under the hood, will open a fix

I updated to the latest versions but still having this issue when we invoke a chain.
fastapi==0.110.0
httpx==0.27.0
langchain==0.1.12
langchain_community==0.0.28
langchain_core==0.1.32
langchain_openai==0.0.8

Same issue here with latest versions.

It seems that @baskaryan 's patch didn't end up in pypi  Maybe missing a version bump?

This issue is also happening when we try to set up a VLLM OpenAI model
    self.model = VLLMOpenAI(
        openai_api_key="EMPTY",
        openai_api_base=config["vLLM_URL"],
        model_name=config["MODEL_NAME"],
        temperature=temperature,
        verbose=True,
        callbacks=[QueueCallback(q)],
        streaming=True,
        http_client=client
      )

langchain-weaviate==0.0.2
langchain-openai==0.1.7
langchain_community==0.2.0
langchain_core==0.2.0
langchain==0.2.0

Looks like the patch may have been azure specific?


fix(router): Link active directive: fix adding CSS class

fixes #2224

@cla-bot check

Thanks @denlysenko this is published in 10.0.2 now 👍


tsconfig.json become not readable

reading tsconfig.json using this module, it's updated and become not readable.
Please, add optional argument(tab or space) to JSON.stringify or add no-update option when read.

There is a lot of work that has gone into tsconfig.json reading here : https://github.com/TypeStrong/atom-typescript/blob/master/lib/main/tsconfig/tsconfig.ts that needs to be pulled in here.
The plan is to make atomts so great for TypeScript that splitting into seperate NPM modules is a near 0 time consuming task. Once that is done I'll upstream those changes here. Till then you can bring in that code base for yourself in your projects if you want. Thank you for your patience :heart:

I was using this and certainly did not expect this to happen. Could you document that this happening in the readme, if you're going to keep it around?

@blakeembrey I've added you as a collab to the repo + owner of the npm package. So do whatever you want :rose:

@blakeembrey you can edit package.json to add your name as the owners as well

Ok, thanks. I really only wanted to abstract the recursively lookup out of my code :stuck_out_tongue:

wanted to abstract the recursively lookup out of my code

Use this : https://github.com/TypeStrong/atom-typescript/blob/master/lib/main/tsconfig/tsconfig.ts#L683-L710

Hi @wilfrem! I've refactored the module and it has no side effects anymore. It should work for you now, please give it a go if you need to resolve or read tsconfig.json still :smile:

thx! :+1:


Simple Command Line Interface (CLI)

Side note: First of all thank you for an awesome gem. Over the past years and I've reached for this gem numerous times for various purposes big and small, its always a joy to use - thank you! 🙌

Simple Command Line Interface (CLI)
Rationale
I've found myself wanting to do a "quick and dirty" crawl of different websites quite often. For example to find 4X, 5XX etc. So far I've written small Ruby scripts using spidr with the things I need.
Many of these use cases could be solved with a fairly simple CLI.
Examples
spidr https://example.com

it supports all Spdir::Agent arguments
spidr --limit=10 --user-agent=myagent https://example.com

you can output multiple values (CSV-style), the columns argument map to methods on page
spidr --columns=code,url,title,content_type,meta_redirect? https://example.com

Usage
Usage: spidr [options] <url>
        --columns=[val1,val2]        Columns in output
        --content-types=[val1,val2]  Formats to output (html, javascript, css, json, ..)
        --[no-]header                Include the header
        --open-timeout=val           Optional open timeout
        --read-timeout=val           Optional read timeout
        --ssl-timeout=val            Optional ssl timeout
        --continue-timeout=val       Optional continue timeout
        --keep-alive-timeout=val     Optional keep_alive timeout
        --proxy-host=val             The host the proxy is running on
        --proxy-port=val             The port the proxy is running on
        --proxy-user=val             The user to authenticate as with the proxy
        --proxy-password=val         The password to authenticate with
        --default-headers=[key1=val1,key2=val2]
                                     Default headers to set for every request
        --host-header=val            The HTTP Host header to use with each request
        --host-headers=[key1=val1,key2=val2]
                                     The HTTP Host headers to use for specific hosts
        --user-agent=val             The User-Agent string to send with each requests
        --referer=val                The number of seconds to pause between each request
        --queue=[val1,val2]          The initial queue of URLs to visit
        --history=[val1,val2]        The initial list of visited URLs
        --limit=val                  The maximum number of pages to visit
        --max-depth=val              The maximum link depth to follow
        --[no-]robots                Respect Robots.txt
    -h, --help                       How to use
        --version                    Show version

todo

Communicate that the --[no-]robots option requires gem install robots?

If you don't want to include this here then this could be a separate gem, something like spidr_cli (~with your blessing~ unless you object?). However it would probably be easier for others to find it if its here.
Thanks!

I've created a spidr_cli gem which includes the above mentioned functionality, plus accept/reject hosts, ports, links and urls arguments and ability to chose what method to use: Spidr::site|host|start_at.

GitHub - https://github.com/buren/spidr_cli
RubyGems - https://rubygems.org/gems/spidr_cli

If you want to get this merged, checkout the CLI class from wordlist.rb. Feel free to copy it's zero-dependency boilerplate CLI code.


Flat Configuration example is not work

Describe the bug
Using this Flat Configuration example will result in the following error:
Oops! Something went wrong! :(

ESLint: 8.56.0

Error [ERR_MODULE_NOT_FOUND]: Cannot find module '/home/runner/work/eslint-plugin-solid-module-not-found/eslint-plugin-solid-module-not-found/node_modules/eslint-plugin-solid/configs/recommended' imported from /home/runner/work/eslint-plugin-solid-module-not-found/eslint-plugin-solid-module-not-found/eslint.config.js
    at finalizeResolution (node:internal/modules/esm/resolve:255:11)
    at moduleResolve (node:internal/modules/esm/resolve:908:10)
    at defaultResolve (node:internal/modules/esm/resolve:1121:11)
    at ModuleLoader.defaultResolve (node:internal/modules/esm/loader:396:12)
    at ModuleLoader.resolve (node:internal/modules/esm/loader:365:25)
    at ModuleLoader.getModuleJob (node:internal/modules/esm/loader:240:38)
    at ModuleWrap.<anonymous> (node:internal/modules/esm/module_job:85:39)
    at link (node:internal/modules/esm/module_job:84:36)
Error: Process completed with exit code 2.

To Reproduce
see this repo
Expected behavior
no error
Environment (please complete the following information):

OS: Ubuntu 20.04 on WSL2
Node version (v20.10.0):
eslint-plugin-solid version (0.13.0):
eslint version (8.56.0):

Additional context

[ ] I would be willing to contribute a PR to fix this issue

Yeah I have this too. Try this:
import solid from 'eslint-plugin-solid/dist/configs/typescript.js';

If they want us to be able to do 'eslint-plugin-solid/configs/typescript' they need to set an exports field in the package.json...

Thanks for the issue. I think the problem is that package.json is missing the configs directory under the "files" key, so it's not getting bundled with the package.
One of those things that works fine when testing locally but breaks on publish.
Should be a quick fix!

It is getting bundled though:

The issue is you have to add an exports field I think.

Like this:
  "exports": {
    ".": "./dist/index.js",
    "./configs/typescript": "./dist/configs/typescript.js",
  }

Thanks for checking! dist/configs is getting packaged, yes, but not configs (which just re-exports from dist/configs to make the example import path work.
I've been hesitant to add "exports", since it's a breaking change and ESLint plugins are meant to be used with CJS require, but I'll consider it. I just think that's a different issue 🙂

Ah okay, gotcha.

ESLint plugins are meant to be used with CJS require

Hopefully not for long! FlatConfig w/ ESM is the way! 😁

Absolutely, fully support the move to ESM! Just following ESLint's lead 😄 will ship this fix in the next release!

Awesome thanks!

I see this has been closed but the exports field is still no present in current version (0.13.2), so this is still an ongoing issue.

@joshwilsonvu exports field is still no present in 0.14.0.


[BUG] Java Spring for ServiceBus, azure-servicebus-jms-spring-boot-starter, fails to load unless a second undocumented app setting is in place.

Describe the bug
Follow the walkthrough at:
https://docs.microsoft.com/en-us/azure/developer/java/spring-framework/configure-spring-boot-starter-java-app-with-azure-service-bus
This will fail unless the value for:
spring.jms.servicebus.connection-string
is replicated into:
azure.servicebus.jms.connection-string
in the configuration file.
Meanwhile, logged doc bug:
https://github.com/MicrosoftDocs/azure-dev-docs/issues/292
Exception or Stack Trace
Add the exception log and stack trace if available
To Reproduce
Steps to reproduce the behavior:
Code Snippet
Add the code snippet that causes the issue.
Expected behavior
A clear and concise description of what you expected to happen.
Screenshots
If applicable, add screenshots to help explain your problem.
Setup (please complete the following information):

OS: [e.g. iOS]
IDE : [e.g. IntelliJ]
Version of the Library used

Additional context
Add any other context about the problem here.
Information Checklist
Kindly make sure that you have added all the following information above and checkoff the required fields otherwise we will treat the issuer as an incomplete report

[ ] Bug Description Added
[ ] Repro Steps Added
[ ] Setup information Added

Hi, @NickDrouin .
Thank you for your detailed description.
In my understanding, spring.jms.servicebus.connection-string should be right, here is related  java code:
@ConfigurationProperties("spring.jms.servicebus")
public class AzureServiceBusJMSProperties {

    private String connectionString;

    private String topicClientId;
...

That is as per the doc, but not what happens at runtime.
FYI: Doc bug https://github.com/MicrosoftDocs/azure-dev-docs/issues/292 (meanwhile).

Internal Tracking
devdivcsef [387675]

Found it:
@PostConstruct
public void validate() {
    if (!StringUtils.hasText(connectionString)) {
        throw new IllegalArgumentException("'**azure.servicebus.jms.connection-string**' " +
                "should be provided");
    }

}

That is, when the config string is misconfigured, or not parsed by spring; it throws an Illegal Arg Exception that has the wrong setting.
https://github.com/microsoft/azure-spring-boot/blob/e28621035e06a142b67afad2aa4a74d344df5698/azure-spring-boot/src/main/java/com/microsoft/azure/spring/autoconfigure/jms/AzureServiceBusJMSProperties.java#L53

Submitted:

Hi, @NickDrouin , Thank you very much for your PR, I merged it just now.
We will release new version for 2.1.x few weeks later.
Closing this issue.


How to use mix.sass in a loop

Laravel Mix Version: 5.0.4
Node Version: 12.16.1
NPM Version: 6.13.4
OS: Mac Os 10.14.6

Description:
I'm creating WP Blocks, and trying to have each block folder compile the "block.scss" to "block.css".
Nothing I try works though.
The console outputs the correct values. But nothing is compiled.
Steps To Reproduce:
glob('blocks/**/block.scss', function (err, files) {

    if (err) {

        console.log(err);

    } else {

        files.map(function(file) {
            console.log(file);
            console.log(path.dirname(file));
            mix.sass(file, '../' + path.dirname(file));
        });
    }

});

Thanks for the help. :)

In case anyone else is looking for the solution, I solved it.
glob.sync('blocks/**/block.scss').map(function(file) {   mix.sass(file, '../' + path.dirname(file));  });


Tweak Some Unicode-Related Text

Recently, I started writing a formal spec for the V11 feature, UTF-8 string literals. However, as I was reading the Draft V8 Ecma C# spec, it became clear to me that it didn’t say enough and/or wasn’t as clear as it could be w.r.t the (presumed) current intention regarding Unicode support. So, before I go back to writing that V11 feature spec, I created this PR, which contains a set of proposed improvements to the current Ecma spec. Basically, I want a better base on which to add the V11 (and possibly later) extensions. This PR includes the following kinds of edits:

Use grammar rule name instead of the descriptive English equivalent.
Use string instead of "string," as we'll have different kinds of string once UTF-8 support is added.
Use char instead of "character" where that makes it more precise.
Remove duplication of normative text (w.r.t conformance).
Use terms consistently.

I don't expect this to be controversial. The only new normative text has to do with explicitly saying that type string uses UTF-16 encoding.
@jskeet I added you as a reviewer, as I know you have written about some Unicode issues.
@KalleOlaviNiemitalo If you have expertise in this area, I'd appreciate your feedback.

Regarding endianness, if I remove the normative text (and the corresponding entry in the Portability-issues annex) re that, will that resolve most objections to my proposed edits? if so, hopefully we can wrap this up on the next call.

Regarding endianness, if I remove the normative text (and the corresponding entry in the Portability-issues annex) re that, will that resolve most objections to my proposed edits? if so, hopefully we can wrap this up on the next call.

I think I'd need to rereview to get myself back into context, but it would at least be a step in the right direction. (And we have some time before the next call, to do any more back and forth.)

Rex: any chance you'd be able to remove the normative endianness aspects before the meeting? (We may not be able to merge, but it would be easier to discuss.)


chore(extension): update discord link

Update lace to use correct discord link

coverage: 53.17%. remained the same
when pulling 11429ebc55caa6cead762b645aa37ffcfa3afa6d on chore/update-discord-link
into 1784c3b201d07b9a6da925d54b459fa689222eb7 on main.


Config flow does not have 'Garbage Collection' as an option.

Installed with HACS.  Config flow does not show Garbage Collection as an option, and when attempting to add the config to the configuration.yaml file I cannot get the config to validate before restarting.  Attempting to validate just gives me the spinning wheel.  I let it go for an hour before giving up.
Forgive me if this is something simple that I am missing, but I only started my Home Assistant journey 3 days ago.

I think you have to restart HA after adding new integration. After that, after that it is dynamic, you do not have to restart - if you configure it from ConfigFlow.

Thank you.  I have restarted and still have the same issue.
I am using the latest version of HA (updated yesterday) on a Raspberry Pi.  Not sure if that makes a difference?

Ok, so apparently you need to refresh your browser cache, and it will show up. Let me know.  Thanks.
https://hacs.xyz/docs/configuration/basic#clear-your-browser-cache

Thank you!!!  It now appears and I'm setting it up.
Thank you for taking the time to create this and help with setting it up.
Have a (socially distanced) handshake and a thumbs up from me!

I cleared my browser cache and it's still not showing up. Restarted HA, cleared cache, restarted HA again and its still not there. Any ideas?


Don't expose kspy needlessly

Description

Currently kspy is generated always. Even if it is just a minor issue, it would be nice if kspy is not generated at all when not in use.

Done with release 0.2.0-rc01


Fullscreen

Hey @tom-pollak thank you for this extension. I'm testing vscode and I'm trying your extension and is working really good inside neovim.
I was wondering if is possible to toggle Lazygit in full screen, even if I have a vertical split or too many splits?
Right now if I have for example a vertical split, Lazygit appear in the current Editor:

Thanks!

(vscode-neovim ftw!) I don't usually use splits much, that's a great idea 😄 pushed change in v0.1.6 ed49d94

@rodrigore thanks for flagging, super easy fix 🙂 lmk if there's any other issues, change should be pushed in 0.1.8

yeah I can use workbench.action.toggleMaximizeEditorGroup instead of workbench.action.evenEditorWidths which would solve this.
I'll leave the issue open for now, because it also doesn't untoggle perfectly if you change window (e.g. through e or selecting another tab). I'll finish it up soon


Update some URLs that changed due to 0.31.0 release

Signed-off-by: Michele Zuccala<EMAIL_ADDRESS>What type of PR is this?
/kind bug
/kind content
Any specific area of the project related to this PR?
/area documentation
What this PR does / why we need it:
This PR fixes some URLs that became deprecated after 0.31.0 release.
Which issue(s) this PR fixes:
N/A
Special notes for your reviewer:

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by: zuc
To complete the pull request process, please assign rajakavitha1 after the PR has been reviewed.
You can assign the PR to them by writing /assign @rajakavitha1 in a comment when ready.
The full list of commands accepted by this bot can be found here.

Needs approval from an approver in each of these files:

OWNERS

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

[APPROVALNOTIFIER] This PR is APPROVED
This pull-request has been approved by: leogr, zuc
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

OWNERS [leogr]

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment


AttributeError on executing nxt.exe without any arguments

Describe the bug
Running nxt.exe from the command line (without any arguments) results in a traceback.
To Reproduce
Steps to reproduce the behavior:

Go to terminal
Run nxt.exe
See error

Expected behavior
I was expecting the help text to be printed.
Desktop (please complete the following information):

OS: [e.g. Windows 10, Centos 7, OSX]
Version [Graph v1.7, API v0.13.1]

Additional context
(nxtenv) PS C:\pipeline\pyenv> nxt.exe
Traceback (most recent call last):
  File "C:\pipeline\pyenv\nxtenv\Scripts\nxt-script.py", line 33, in <module>
    sys.exit(load_entry_point('nxt-core==0.13.1', 'console_scripts', 'nxt')())
  File "C:\pipeline\pyenv\nxtenv\lib\site-packages\nxt\cli.py", line 245, in main
    if args.which == 'legacy':
AttributeError: 'Namespace' object has no attribute 'which'

Fixed by https://github.com/nxt-dev/nxt/pull/100


document if uses child process or C bindings

I went through some of the code and it looks like this library uses child processes, instead of using C bindings on each platform. is there any use of C bindings here or is it all through child processes?

All child_processes and external vendors as specified in the README.


gpioHardwarePWM() pins and channel ?

Is that right, that you only can use the pins 12,13,18,19 for HardwarePWM and are the pins 12,18/13,19 connected together ?

I've tried that, but it has too much jitter and I've found, that I can use a pwm driver like that PCA9685, but this has too many outputs for my project and is there a pwm driver with only 4-6 outputs with 12bit resolution?

The jitter issue on pigpio generated pwm has come up before.  Has anyone tried registering the pwm outputs to an external D-type flip flop using the pwm peripheral clock on the half phase?  Octal DFF devices are pretty cheap.

What are you driving?
I have only noticed jitter when I sample at 1MHz.  That hammers  the DMA bus with traffic.  I have not noticed jitter at lower sampling rates.
Of course jitter will be present, I'm just wondering if you can quantify the degree.

I've connected one esc to the raspi and set gpioCfgClock(1,0,0); then I've set the samplerate to 250Hz and the resolution to 4000, witch is the max realResolution. Then I've control bldc motor with a pulse between 1000us and 2000us. when the throttle is at the lowest postiton the motor is shaking a little bit, but with hardwarepwm the the motor stops with 0% throttle and the motorspeed was stable.

Have you tried gpioCfgClock(5,0,0)?

yes but it also shake. But when I increment the values a little bit the servo is stable, but not 100% in the 0 degree position.

Is this a continuous rotation servo?  If so that sounds like a dead band calibration problem.

no. Thats also the problem with my esc in the 0 Position it shakes a little bit, but with a little bit of throttle is has a stable rotation.


[FEATURE] ability to disable discord rpc

as you can see, it may crash the game. or someone just doesnt wants to see everyone seeing him playing qsor and they cant turn this thing off

it doesn't crash the game on the latest release. fixed in #39. second one could actually be implemented on the upcoming options in #20.


No change detected with js-array

I try to watch an array in the JS to determine if there was a change, but It doesn't trigger with an array. With a normal string value there is no problem. But if just the content of the array is updated it doesn't observe the change.  If you want to intercept changes I suggest you to have a look at introspected

Ok thanks. I'll take a look. BTW: Amazing work


ONNX export compatible with OpenCV

This PR has changes which let to export trained model to ONNX format compatible with OpenCV (PR https://github.com/opencv/opencv/pull/16925 is required)
Convert to ONNX
python3 export_to_onnx.py --model ssd300_mAP_77.43_v2.pth

Run with OpenCV
import numpy as np
import cv2 as cv

net = cv.dnn.readNet('ssd.onnx')

img = cv.imread('example.jpg')
rows, cols = img.shape[0:2]
inp = cv.dnn.blobFromImage(img, 1.0, (300, 300), mean=(123, 117, 104), swapRB=True)

net.setInput(inp)
out = net.forward()

for detection in out[0,0,:,:]:
    score = float(detection[2])
    if score > 0.5:
        xmin, ymin, xmax, ymax = [int(v) for v in detection[3:] * [cols, rows, cols, rows]]
        cv.rectangle(img, (xmin, ymin), (xmax, ymax), (23, 230, 210), thickness=2)

cv.imshow('Object detection', img)
cv.waitKey()

Or run with OpenVINO
python3 /opt/intel/openvino/deployment_tools/model_optimizer/mo_onnx.py \
  --input_model ssd.onnx \
  --mean_values [123,117,104] \
  --reverse_input_channels \
  --input_shape [1,3,300,300]

@dkurt Hi, do you know how to export the model with prior box node. If I add the prior box node, the error will appear:
output of traced region did not have observable data dependence with trace inputs; this probably indicates your program cannot be understood by the tracer.

Hi, @luoduo21, can you please show the exact source branch version to reproduce? In this PR priors are stored in the constant node.

@dkurt
`       loc = torch.cat([o.view(o.size(0), -1) for o in loc], 1)
conf = torch.cat([o.view(o.size(0), -1) for o in conf], 1)
if self.phase == "test":
output = self.detect(
loc.view(loc.size(0), -1, 4),                   # loc preds
self.softmax(conf.view(conf.size(0), -1,
self.num_classes)),                # conf preds
self.priors.type(type(x.data))                # default boxes
)
    else:
        output = (
            loc.view(loc.size(0), -1, 4),
            conf.view(conf.size(0), -1, self.num_classes),
            self.priors
        )
    return output`

the export code:

torch.onnx.export(net, example, model_path, verbose=True, input_names=['input'], output_names=['priors','boxes', 'scores'],export_params=True)

Maybe onnx doesn't support exporting constant node?

@luoduo21, Can you please share why you need to export it as output? I mean do you want to run SSD and proposed branch not works for your model? You don't have to export raw priors+boxes+scores but you can export post-processed outputs from Detect layer (like in this PR).

@dkurt I want to convert the onnx model to the ncnn model. I tried to add a Detect layer  to export the post-processing directly,Although it can be successful，there are some problems in the process of onnx - > ncnn. So I want to export the three nodes directly。

@dkurt Thanks a lot for providing the code to convert the SSD model to the ONNX format. Unfortunately, I am not able to run your script export_to_onnx.py. Could you please help me understand what I am missing out?
Environment

Ubuntu (WSL): 18.04
PyTorch: 1.5.0+cpu
ONNX: 1.7.0

Issues

Impossible to find the coco_labels.txt file. Fixed using #400
ONNX: RuntimeError: No Op registered for DetectionOutput with domain_version of 9 (see full output below). I didn't manage to solve that one but it looks that it is coming from the changes you did in ./layers/functions/detection.py in the symbolic function.

Traceback (most recent call last):
  File "export_to_onnx.py", line 43, in <module>
    save_model(net, input, args.output)
  File "export_to_onnx.py", line 24, in save_model
    onnx_model_pb = export_to_string(model, input)
  File "export_to_onnx.py", line 19, in export_to_string
    torch.onnx.export(model, inputs, f, export_params=True, opset_version=version)
  File "/mnt/c/Users/lucas/Documents/ssd.pytorch/.env/lib/python3.6/site-packages/torch/onnx/__init__.py", line 168, in export
    custom_opsets, enable_onnx_checker, use_external_data_format)
  File "/mnt/c/Users/lucas/Documents/ssd.pytorch/.env/lib/python3.6/site-packages/torch/onnx/utils.py", line 69, in export
    use_external_data_format=use_external_data_format)
  File "/mnt/c/Users/lucas/Documents/ssd.pytorch/.env/lib/python3.6/site-packages/torch/onnx/utils.py", line 515, in _export
    _check_onnx_proto(proto)
RuntimeError: No Op registered for DetectionOutput with domain_version of 9

==> Context: Bad node spec: input: "262" input: "281" input: "282" output: "283" name: "DetectionOutput_177" op_type: "DetectionOutput" attribute { name: "background_label_id" i: 0 type: INT } attribute { name: "code_type" s: "CENTER_SIZE" type: STRING } attribute { name: "confidence_threshold" f: 0.01 type: FLOAT } attribute { name: "keep_top_k" i: 200 type: INT } attribute { name: "nms_threshold" f: 0.45 type: FLOAT } attribute { name: "num_classes" i: 21 type: INT } attribute { name: "share_location" i: 1 type: INT } attribute { name: "top_k" i: 200 type: INT } attribute { name: "variance_encoded_in_target" i: 0 type: INT }

@LucasVandroux, thanks for feedback! That looks very strage. Can you please try ONNX of version 1.6.0?

@dkurt Thanks for your fast answer! I have the same problem with ONNX 1.6.0. Here is the full output:
python export_to_onnx.py --model ../models/ssd300_mAP_77.43_v2.pth
/mnt/c/Users/lucas/Documents/ssd.pytorch/ssd.py:34: UserWarning: volatile was removed and now has no effect. Use `with torch.no_grad():` instead.
  self.priors = Variable(self.priorbox.forward(), volatile=True)
/mnt/c/Users/lucas/Documents/ssd.pytorch/layers/functions/detection.py:41: TracerWarning: Converting a tensor to a Python index might cause the trace to be incorrect. We can't record the data flow of Python values, so this value will be treated as a constant in the future. This means that the trace might not generalize to other inputs!
  prior_data = prior_data[:prior_data.shape[0] // 2]
/mnt/c/Users/lucas/Documents/ssd.pytorch/layers/functions/detection.py:50: TracerWarning: Converting a tensor to a Python index might cause the trace to be incorrect. We can't record the data flow of Python values, so this value will be treated as a constant in the future. This means that the trace might not generalize to other inputs!
  for i in range(num):
/mnt/c/Users/lucas/Documents/ssd.pytorch/layers/functions/detection.py:58: TracerWarning: Converting a tensor to a Python boolean might cause the trace to be incorrect. We can't record the data flow of Python values, so this value will be treated as a constant in the future. This means that the trace might not generalize to other inputs!
  if scores.size(0) == 0:
Traceback (most recent call last):
  File "export_to_onnx.py", line 43, in <module>
    save_model(net, input, args.output)
  File "export_to_onnx.py", line 24, in save_model
    onnx_model_pb = export_to_string(model, input)
  File "export_to_onnx.py", line 19, in export_to_string
    torch.onnx.export(model, inputs, f, export_params=True, opset_version=version)
  File "/mnt/c/Users/lucas/Documents/ssd.pytorch/.env/lib/python3.6/site-packages/torch/onnx/__init__.py", line 168, in export
    custom_opsets, enable_onnx_checker, use_external_data_format)
  File "/mnt/c/Users/lucas/Documents/ssd.pytorch/.env/lib/python3.6/site-packages/torch/onnx/utils.py", line 69, in export
    use_external_data_format=use_external_data_format)
  File "/mnt/c/Users/lucas/Documents/ssd.pytorch/.env/lib/python3.6/site-packages/torch/onnx/utils.py", line 515, in _export
    _check_onnx_proto(proto)
RuntimeError: No Op registered for DetectionOutput with domain_version of 9

==> Context: Bad node spec: input: "262" input: "281" input: "282" output: "283" name: "DetectionOutput_177" op_type: "DetectionOutput" attribute { name: "background_label_id" i: 0 type: INT } attribute { name: "code_type" s: "CENTER_SIZE" type: STRING } attribute { name: "confidence_threshold" f: 0.01 type: FLOAT } attribute { name: "keep_top_k" i: 200 type: INT } attribute { name: "nms_threshold" f: 0.45 type: FLOAT } attribute { name: "num_classes" i: 21 type: INT } attribute { name: "share_location" i: 1 type: INT } attribute { name: "top_k" i: 200 type: INT } attribute { name: "variance_encoded_in_target" i: 0 type: INT }

The full list of python packages I am using is as follow:
pip list

future (0.18.2)
numpy (1.18.5)
onnx (1.6.0)
opencv-python (<IP_ADDRESS>)
Pillow (7.1.2)
pip (9.0.1)
pkg-resources (0.0.0)
protobuf (3.12.2)
setuptools (39.0.1)
six (1.15.0)
torch (1.5.0+cpu)
torchvision (0.6.0+cpu)
typing-extensions (<IP_ADDRESS>)

And here the end of my git log:
git log

commit 1c02c5f68a325a3f8e5ec27341c778b4cf0d59af (HEAD -> pr/462)
Author: Dmitry Kurtaev<EMAIL_ADDRESS>Date:   Sat Mar 28 18:06:52 2020 +0300

    ONNX export compatible with OpenCV

commit 5b0b77faa955c1917b0c710d770739ba8fbff9b7 (origin/master, origin/HEAD, master)
Author: Degroot<EMAIL_ADDRESS>Date:   Mon Mar 11 14:43:06 2019 -0700

    Update .dim() to .size(0) in eval.py for compatibility with latest .dim() functionality

commit ad98ca4f83ebd7e690825b8bb067419030bda992
Author: Miguel Morales<EMAIL_ADDRESS>Date:   Mon Mar 11 15:35:33 2019 -0600

    Update README.md (#235)

    Link to webyclip.com is broken

Would some other information help you as well?

So, I tried the following steps:
git clone https://github.com/dkurt/ssd.pytorch --branch opencv_support --depth 1
cd ssd.pytorch
wget https://s3.amazonaws.com/amdegroot-models/ssd300_mAP_77.43_v2.pth
python3 export_to_onnx.py --model ssd300_mAP_77.43_v2.pth

with torch==1.4.0 and onnx==1.6.0
It reports some warnings but produces .onnx file
Also tried torch=1.5.0 and can confirm that it throws
RuntimeError: No Op registered for DetectionOutput with domain_version of 9

==> Context: Bad node spec: input: "262" input: "281" input: "282" output: "283" name: "DetectionOutput_177" op_type: "DetectionOutput" attribute { name: "background_label_id" i: 0 type: INT } attribute { name: "code_type" s: "CENTER_SIZE" type: STRING } attribute { name: "confidence_threshold" f: 0.01 type: FLOAT } attribute { name: "keep_top_k" i: 200 type: INT } attribute { name: "nms_threshold" f: 0.45 type: FLOAT } attribute { name: "num_classes" i: 21 type: INT } attribute { name: "share_location" i: 1 type: INT } attribute { name: "top_k" i: 200 type: INT } attribute { name: "variance_encoded_in_target" i: 0 type: INT }

Thanks for note! So, for current state or PR you may try torch 1.4.0 only

For those who might be interested in getting directly the ONNX file and the OpenVINO files, I uploaded them here: link.

where is the file export_to_onnx.py? I don't see it in the repository...

where is the file export_to_onnx.py? I don't see it in the repository...

As this merge request hasn't yet been merged into the original repository, you will not find it there but in the fork of the repository: https://github.com/dkurt/ssd.pytorch/blob/opencv_support/export_to_onnx.py

So, I tried the following steps:
git clone https://github.com/dkurt/ssd.pytorch --branch opencv_support --depth 1
cd ssd.pytorch
wget https://s3.amazonaws.com/amdegroot-models/ssd300_mAP_77.43_v2.pth
python3 export_to_onnx.py --model ssd300_mAP_77.43_v2.pth

with torch==1.4.0 and onnx==1.6.0
It reports some warnings but produces .onnx file
Also tried torch=1.5.0 and can confirm that it throws
RuntimeError: No Op registered for DetectionOutput with domain_version of 9

==> Context: Bad node spec: input: "262" input: "281" input: "282" output: "283" name: "DetectionOutput_177" op_type: "DetectionOutput" attribute { name: "background_label_id" i: 0 type: INT } attribute { name: "code_type" s: "CENTER_SIZE" type: STRING } attribute { name: "confidence_threshold" f: 0.01 type: FLOAT } attribute { name: "keep_top_k" i: 200 type: INT } attribute { name: "nms_threshold" f: 0.45 type: FLOAT } attribute { name: "num_classes" i: 21 type: INT } attribute { name: "share_location" i: 1 type: INT } attribute { name: "top_k" i: 200 type: INT } attribute { name: "variance_encoded_in_target" i: 0 type: INT }

Thanks for note! So, for current state or PR you may try torch 1.4.0 only

Hi, thanks for your work for converting the SSD to onnx model.
Follow your suggestions, I also adjust my corresponding softwares version, and it does work for converting proposed model like ssd300_mAP_77.43_v2.pth.
But when I employ your repo "https://github.com/dkurt/ssd.pytorch/tree/opencv_support" to train a new ssd model, and employ the convert file, it fails.
The error is shown as follows:
"  File "/home/llq/Desktop/ssd/2ssd_another/layers/box_utils.py", line 187, in nms
keep = scores.new(scores.size(0)).zero_().long()
TypeError: expected Float (got Long)"
I have tried to fix it, however, I failed, could you please provide some advice?

So, I tried the following steps:
git clone https://github.com/dkurt/ssd.pytorch --branch opencv_support --depth 1
cd ssd.pytorch
wget https://s3.amazonaws.com/amdegroot-models/ssd300_mAP_77.43_v2.pth
python3 export_to_onnx.py --model ssd300_mAP_77.43_v2.pth

with torch==1.4.0 and onnx==1.6.0
It reports some warnings but produces .onnx file
Also tried torch=1.5.0 and can confirm that it throws
RuntimeError: No Op registered for DetectionOutput with domain_version of 9

==> Context: Bad node spec: input: "262" input: "281" input: "282" output: "283" name: "DetectionOutput_177" op_type: "DetectionOutput" attribute { name: "background_label_id" i: 0 type: INT } attribute { name: "code_type" s: "CENTER_SIZE" type: STRING } attribute { name: "confidence_threshold" f: 0.01 type: FLOAT } attribute { name: "keep_top_k" i: 200 type: INT } attribute { name: "nms_threshold" f: 0.45 type: FLOAT } attribute { name: "num_classes" i: 21 type: INT } attribute { name: "share_location" i: 1 type: INT } attribute { name: "top_k" i: 200 type: INT } attribute { name: "variance_encoded_in_target" i: 0 type: INT }

Thanks for note! So, for current state or PR you may try torch 1.4.0 only

Hi, thanks for your work for converting the SSD to onnx model.
Follow your suggestions, I also adjust my corresponding softwares version, and it does work for converting proposed model like ssd300_mAP_77.43_v2.pth.
But when I employ your repo "https://github.com/dkurt/ssd.pytorch/tree/opencv_support" to train a new ssd model, and employ the convert file, it fails.
The error is shown as follows:
"  File "/home/llq/Desktop/ssd/2ssd_another/layers/box_utils.py", line 187, in nms
keep = scores.new(scores.size(0)).zero_().long()
TypeError: expected Float (got Long)"
I have tried to fix it, however, I failed, could you please provide some advice?

Hello,
Thank you for the script to convert the model and the instructions. I am able to do the conversion to ONNX (opsets 9, 10 and 11) as well as to Intel IR formats.
However, I am not able to inference the converted ONNX models (opsets 9, 10, 11) with onnxruntime. I tried both 1.4.0 and 1.6.0 versions of onnxruntime.
Here is the error message that I get:
File "/home/buvana/base_ort.py", line 92, in
m = ONNXNet(model)
File "/home/buvana/base_ort.py", line 10, in init
self.ort_session_f = ort.InferenceSession(onnx_path_f)
File "/home/buvana/venv/lib64/python3.6/site-packages/onnxruntime/capi/session.py", line 158, in init
self._load_model(providers or [])
File "/home/buvana/venv/lib64/python3.6/site-packages/onnxruntime/capi/session.py", line 177, in _load_model
self._sess.load_model(providers)
onnxruntime.capi.onnxruntime_pybind11_state.InvalidGraph: [ONNXRuntimeError] : 10 : INVALID_GRAPH : This is an invalid model. Error in Node: : No Op registered for DetectionOutput with domain_version of 10
Please provide your suggestions.

Hello,
Thank you for the script to convert the model and the instructions. I am able to do the conversion to ONNX (opsets 9, 10 and 11) as well as to Intel IR formats.
However, I am not able to inference the converted ONNX models (opsets 9, 10, 11) with onnxruntime. I tried both 1.4.0 and 1.6.0 versions of onnxruntime.
Here is the error message that I get:
File "/home/buvana/base_ort.py", line 92, in
m = ONNXNet(model)
File "/home/buvana/base_ort.py", line 10, in init
self.ort_session_f = ort.InferenceSession(onnx_path_f)
File "/home/buvana/venv/lib64/python3.6/site-packages/onnxruntime/capi/session.py", line 158, in init
self._load_model(providers or [])
File "/home/buvana/venv/lib64/python3.6/site-packages/onnxruntime/capi/session.py", line 177, in _load_model
self._sess.load_model(providers)
onnxruntime.capi.onnxruntime_pybind11_state.InvalidGraph: [ONNXRuntimeError] : 10 : INVALID_GRAPH : This is an invalid model. Error in Node: : No Op registered for DetectionOutput with domain_version of 10
Please provide your suggestions.

@abuvaneswari, Proposed solution won't work with ONNXRuntime. It's only for OpenCV and OpenVINO.

@abuvaneswari, Proposed solution won't work with ONNXRuntime. It's only for OpenCV and OpenVINO.

So, I tried the following steps:
git clone https://github.com/dkurt/ssd.pytorch --branch opencv_support --depth 1
cd ssd.pytorch
wget https://s3.amazonaws.com/amdegroot-models/ssd300_mAP_77.43_v2.pth
python3 export_to_onnx.py --model ssd300_mAP_77.43_v2.pth

with torch==1.4.0 and onnx==1.6.0
It reports some warnings but produces .onnx file
Also tried torch=1.5.0 and can confirm that it throws
RuntimeError: No Op registered for DetectionOutput with domain_version of 9

==> Context: Bad node spec: input: "262" input: "281" input: "282" output: "283" name: "DetectionOutput_177" op_type: "DetectionOutput" attribute { name: "background_label_id" i: 0 type: INT } attribute { name: "code_type" s: "CENTER_SIZE" type: STRING } attribute { name: "confidence_threshold" f: 0.01 type: FLOAT } attribute { name: "keep_top_k" i: 200 type: INT } attribute { name: "nms_threshold" f: 0.45 type: FLOAT } attribute { name: "num_classes" i: 21 type: INT } attribute { name: "share_location" i: 1 type: INT } attribute { name: "top_k" i: 200 type: INT } attribute { name: "variance_encoded_in_target" i: 0 type: INT }

Thanks for note! So, for current state or PR you may try torch 1.4.0 only

Hi, thanks for your work for converting the SSD to onnx model.
Follow your suggestions, I also adjust my corresponding softwares version, and it does work for converting proposed model like ssd300_mAP_77.43_v2.pth.
But when I employ your repo "https://github.com/dkurt/ssd.pytorch/tree/opencv_support" to train a new ssd model, and employ the convert file, it fails.
The error is shown as follows:
" File "/home/llq/Desktop/ssd/2ssd_another/layers/box_utils.py", line 187, in nms
keep = scores.new(scores.size(0)).zero_().long()
TypeError: expected Float (got Long)"
I have tried to fix it, however, I failed, could you please provide some advice?

I converted this line:
keep = scores.new(scores.size(0)).zero_().long()
to
keep = torch.zeros(scores.size(), dtype=torch.int64)
and solved.


NR-281089 chore: bump nri-flex

closed in favor of https://github.com/newrelic/infrastructure-agent/pull/1885


Addressing some Issues

BubbleNormal Widget-

Added optional [leading] widget for non senders
Added optional [trailing] widget for sender
Added [margin] and [padding] properties
Added tap callbacks such as [onTap], [onDoubleTap] and [onLongPress].
Change the text to SelectableText

BubbleNormalImage Widget-

Added optional [leading] widget for non senders
Added optional [trailing] widget for sender
Added [margin] and [padding] properties
Added tap callbacks such as [onTap] and [onLongPress].

Other -
Updated the ChangeLog
Updated the documentation within code to be easier to read Updated the env to allow support for latest sdk
Updated package version to 1.6.0
Updated the environment to allow support for latest sdk
Support up to date dependencies
Run dart format to ensure proper file formats
Issues it addresses:

#12
#14
#20

@JohnF17 please change target to the dev branch

You have already switched it to dev branch though 👀


DumpReader - Exposing dump file handles (EnumerateHandles)

Added MINIDUMP_HANDLES_STREAM class:
MINIDUMP_HANDLES_STREAM uses stream of MINIDUMP_STREAM_TYPE.HandleDataStream type for reading MINIDUMP_HANDLE_DATA_STREAM structure, from which handles information extracted.
GetHandles:
Extracts handles from given stream pointer, returns an IEnumerable of MiniDumps.
MiniDump: wrapped class  for MINIDUMP_HANDLE_DESCRIPTOR, MINIDUMP_HANDLE_DESCRIPTOR_2

Looks good! I've made a few comments on the diff, please address them and we'll be good to merge.

Casting ObjectNameRva to uint:
objectName = _contex.GetString(new DumpNative.RVA() { Value = (uint)handle.ObjectNameRva });
I am casting it to uint only because the GetString function accepts DumpNative.RVA type parameter with Value property of type uint.
DumpHandleInfo class:
DumpHandleInfo is just a wrapper class to MINIDUMP_HANDLE_OBJECT_INFORMATION structure, I really don't know how the clients should use it, the only information that I get from MINIDUMP_HANDLE_OBJECT_INFORMATION InfoType, NextInfoRva and sizeOfInfo, no pointers to actual structures. I am obtaining this information by do-while iteration based on NextInfoRva offset.

OK, so do you think the RVA type has to be ulong? I modified DumpReader because it didn't support >4GB dumps at all, perhaps I should have changed that part as well. If RVA is an address within the dump, then yeah -- it can be >4GB, and has to be a ulong.
Re the DumpHandleInfo class, you actively read information from it based on its type and assign fields like the mutex owner, process id, thread id, that kind of stuff. It's just that the exact variant of the structure you're getting depends on the type field -- which is fine, and you can have users extract it themselves, but you need to expose the address of the struct from which they can extract it. It's the address from which you're getting the MINIDUMP_HANDLE_OBJECT_INFORMATION structure.


migrations: add check for vmi equal to nil

Add check if VMI is nil in IsMigrating. This function could be called in different places of the code where the vmi object can be empty and this causes a panic.
Release note

NONE

Did we observe a panic?

@jean-edouard  @xpivarc do you feel comfortable in approving this pr?

/approve
Sorry for the double LGTM!


Hello everyone - ⭐Chen Zhuo's Website

https://chord-chen-30.github.io/2020/09/11/Hello-2017/
More than blogs

ok

We'll return in a moment.

Nice blog!


Copy Button Doesn't Show

I might be missing something but all I get is "Select Source and Destination file and characters". I have both file and character selected in both source and destination but I'm not getting anything. I just want to add that I'm no coder and I don't use Github much so I'm not sure if there are steps that I've missed

Having the same issue

Having the same issue

I found one on the nexus (nexus mods) that works like a dream. I hate to post against all the work that this guy's done, and I'm certainly not trying to stop people using this one. I have no doubt that it works, it might just be a system requirement issue or the fact that I'm unfamiliar with this stuff. But if you're struggling it might be worth a look, there's also a video tutorial with it

Found out the problem, the source and the destination can't be the same file. So just make a copy of your save files and use that as the source.


Create a mono repo between landmass and bevy_landmass.

Now these repos will be one, making it easier to modify both!

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

Project coverage is 97.6%. Comparing base (4aa560c) to head (d9aa8c5).

Additional details and impacted files

Files
Coverage Δ

crates/bevy_landmass/src/util.rs
100.0% <100.0%> (ø)

crates/landmass/src/agent.rs
96.1% <ø> (ø)

crates/landmass/src/agent_test.rs
100.0% <ø> (ø)

crates/landmass/src/astar.rs
93.9% <ø> (ø)

crates/landmass/src/astar_test.rs
98.1% <ø> (ø)

crates/landmass/src/avoidance.rs
95.6% <ø> (ø)

crates/landmass/src/avoidance_test.rs
99.1% <ø> (ø)

crates/landmass/src/debug.rs
98.5% <ø> (ø)

crates/landmass/src/debug_test.rs
100.0% <ø> (ø)

crates/landmass/src/geometry.rs
100.0% <ø> (ø)

... and 18 more


chat with repo workflow issue

talk about the whole session of chatting with the repo

especially for the details of workflow

27th Dec
Waiting for completion
Searching and summary

technical route

graph TB
    Start(start) --> Open[question query]
    Open --> Put[RAG]
    Put[RAG] --> IsFit{LLM fit for logic}

    IsFit -->|LLM fit for logic| Close[Send to LLM with relevant information]
    Close --> End(output)

    IsFit -->|unfit| CloseB[No relevant infor]
   CloseB --> End2(NO solution)

UML graph
Explaination

ps:

                                                                                developer: Yang Lee

RAG part

langchain
llamaindex

流程概览

开始（Start）

流程的起始点，接收用户的问题或查询。

问题查询（Open）

初步分析用户的问题。
判断问题类型（如编程问题、数据查询、技术指导等）。

使用RAG系统（Put[RAG]）

RAG系统处理问题，确定是否存在已知的解决方案或相关信息。
利用RAG系统的大规模文档检索能力来寻找可能的答案或信息。

LLM适用性判断（IsFit）

判断问题是否适合用LLM（如GPT-4）逻辑处理。
考虑问题的复杂性、具体性以及是否需要深入的逻辑推理。

适用LLM逻辑处理（Close[发送相关信息至LLM]）

将问题和RAG系统找到的相关信息一起送至LLM处理。
LLM进行深入分析和处理，生成解决方案或答案。

输出结果（End）

将LLM处理的结果呈现给用户。
结果可能包括解决方案、建议或其他相关信息。

不适用LLM逻辑处理（CloseB[没有相关信息]）

如果问题不适合用LLM逻辑处理，或RAG系统未找到相关信息。
提供标准回复或引导用户寻找其他资源。

无解决方案（End2）

通知用户此问题当前没有可行的解决方案。
可能建议用户寻求其他渠道的帮助或等待进一步的研究。

流程概览

开始（Start）

流程的起始点，接收用户的问题或查询。

问题查询（Open）

初步分析用户的问题。
判断问题类型（如编程问题、数据查询、技术指导等）。

使用RAG系统（Put[RAG]）

RAG系统处理问题，确定是否存在已知的解决方案或相关信息。
使用向量数据库和字段精确搜索等多种手段综合检索

LLM相关性判断（IsFit）

由LLM判断资料是否和Query相关

适用LLM逻辑处理（Close[发送相关信息至LLM]）

将问题和RAG系统找到的相关信息一起送至LLM处理
LLM生成解决方案或答案

输出结果（End）

不适用LLM逻辑处理（CloseB[没有相关信息]）

提供标准无信息回复，或引导用户寻找其他资源

无解决方案（End2）

通知用户此问题当前没有可行的解决方案
可能建议用户寻求其他渠道的帮助

LLM相关性判断（IsFit）这方面你的意思是把多路召回的结果都送给LLM但是不要它回答？而是给出一个相关性判断？

Why Chroma? What is the advantage of it compared to others?
The "tech route" seems to be a standard RAG. What will be the difficulties?

Why Chroma? What is the advantage of it compared to others?
The "tech route" seems to be a standard RAG. What will be the difficulties?

@LOGIC-10 @Guo-Zhang
well , first for the Chroma. I don't think this is an important thing in this design system. that's not a big deal. whatever you choose Chroma,  pinecone or weaviate.   all of these are fine. so we just need a vector db, so never mind.
and second, frankly speaking, the tech route is just a draft based on my previous knowledge, i will correct it, i know it has a lot of problems, so I just list a formal one. based on what I searched, there are a lot of difficulties.
far from now, here is my summary source:
https://innovation64.github.io/2023/12/27/RAG/
I need more time to get to know the repo and code tools,
base all of  the above things,that I maybe can design an initial draft chat with repo system
so please be patient, I'm doing more research on it and will give you guys a solution eventually

Here is code part without rag sys Answer by GPT4

Identify File Types: Determine the types of files you want to process. This may include source code files (.py, .js, .java, etc.), configuration files (.xml, .json, .yml), documentation files (.md, .txt), and others.

Access Repository Contents via GitHub API: Use the GitHub API to access the contents of the repository. The key API endpoint to use is:

GET /repos/{owner}/{repo}/contents/{path}: This retrieves the contents of a specific path within the repository. If the path is a directory, it returns a list of all files and subdirectories within it.

Recursively Traverse the Repository: To get files from all directories in the repository, recursively traverse each directory. For each directory, use the API endpoint to retrieve its contents and download the relevant files.

Download and Store Files: Download the content of each identified file, which may require handling different file formats and possibly converting them to a uniform format for processing.

Preprocess Files for LLM: Depending on the file type and the intended processing, you might need to preprocess the files. For source code, this might include extracting comments or code snippets. For documentation, it might involve converting markdown or HTML to plain text.

Feed Files into LLM: Once preprocessed, feed the content into the Large Language Model. The LLM can be used for various tasks like code analysis, generating documentation, summarizing changes, etc.

Process LLM Output: Use the output from the LLM as needed, which could include generating insights, automating tasks, or further analyzing the content.

Remember to comply with GitHub's terms and API rate limits. Also, consider the computational resources and potential costs if processing a large number of files or performing complex analysis.

This analysis is really too superficial.
I think the 6 steps I mentioned in the meeting that night were very clear and specific, including the technical details and precautions for each item. I suggest that you ask @Umpire2018 for the recording files of the meeting, and then explore more possibilities and try different details based on my existing solution instead of starting from scratch. I believe this will greatly improve your efficiency.

This analysis is really too superficial.
I think the 6 steps I mentioned in the meeting that night were very clear and specific, including the technical details and precautions for each item. I suggest that you ask @Umpire2018 for the recording files of the meeting, and then explore more possibilities and try different details based on my existing solution instead of starting from scratch. I believe this will greatly improve your efficiency.

@LOGIC-10
I know, I'm still designing a chat repo with rag sys, but not put it into issue. and I will check out the 6 steps you mentioned that night, to make sure that i would not lose something

That's great. Looking forward to your implementation in several days.

RAG part

langchain
llamaindex(recommended)

👨👩👧👦 Who is LlamaIndex for?
LlamaIndex provides tools for beginners, advanced users, and everyone in between.
Our high-level API allows beginner users to use LlamaIndex to ingest and query their data in 5 lines of code.
For more complex applications, our lower-level APIs allow advanced users to customize and extend any module—data connectors, indices, retrievers, query engines, reranking modules—to fit their needs.
@innovation64 个人认为对 RAG 系统提出的讨论已经足够，接下来就可以使用现成的框架去进行开发了。目前看来使用 llamaindex , Chroma 是比较好的选择。Let's do it!
那么你对此问题的分工有什么见解？比如说是否你先来开始，后续有什么需要我去做的你再指派给我？

RAG part

langchain
llamaindex(recommended)

👨👩👧👦 Who is LlamaIndex for?
LlamaIndex provides tools for beginners, advanced users, and everyone in between.
Our high-level API allows beginner users to use LlamaIndex to ingest and query their data in 5 lines of code.
For more complex applications, our lower-level APIs allow advanced users to customize and extend any module—data connectors, indices, retrievers, query engines, reranking modules—to fit their needs.
@innovation64 个人认为对 RAG 系统提出的讨论已经足够，接下来就可以使用现成的框架去进行开发了。目前看来使用 llamaindex , Chroma 是比较好的选择。Let's do it!
那么你对此问题的分工有什么见解？比如说是否你先来开始，后续有什么需要我去做的你再指派给我？

ok,i will try it first

目前进度，用gradio搭建基本的chatbot完毕
目前功能

多轮对话
gradio UI
目前只使用openai API 没有增加rag

RAG部分

基本流程运行出现OOD

默认的llamaindex的嵌入模型生成repo的index会显存益处（我电脑没啥显存），尝试小数据处理解决bug中

用gradio搭建基本的chatbot完毕

也许可以先从命令行 Chat 开始，之后再考虑前端的事情。

目前进度

基本的gradio 交互页面已完成
基本的rag pipeline已完成
尚未接入向量数据库,正在完善本地保存讲，json化向量接入数据库
正在进行对于代码chunck，目前参考
目前代码较乱还没有封装整合暂时不宜PR

🚀cool，你可以创建一个分支chat_with_repo，我们可以看着分支进行参考和下一步讨论，这样会更清晰。

目前进度 January 4th

完成基本交互界面
完成基本多轮对话界面
完成Automering 检索算法的 RAG
完成数据库存储

剩余任务

前置query的规范
数据库更新触发机制
代码文件chunk单独分类与合并树节点向量化

Finished in #32 .


Roll engine 38ac5f30a702..33b0082b1e5b (3 commits)

https://github.com/flutter/engine/compare/38ac5f30a702...33b0082b1e5b
git log 38ac5f30a7026e870619c2e8e8c99c070d74036f..33b0082b1e5b296fc553cbcd67400a9efccc25f8 --no-merges --oneline
33b0082b1 Roll src/third_party/skia a022b0fdc441..7217e22822b2 (1 commits) (flutter/engine#10200)
4ee453d24 Roll fuchsia/sdk/core/linux-amd64 from NDQim5iXsGvfeCYhlEPR_KlvZv33t_0m7BMA41mj8HQC to RbDm6nqefHOlinm0ulXGeQqpMp1hMsBIpfrBAElpkhwC (flutter/engine#10199)
19760216a Roll fuchsia/sdk/core/mac-amd64 from gXIxRFXOagEFKXR0YCwZPnoFd5HsrVLysQ2gQyvtk3kC to vBbEgWegVmypZ-HnXDLc8NopkD3SLzco2m6F5USDhLUC (flutter/engine#10198)
The AutoRoll server is located here: https://autoroll.skia.org/r/flutter-engine-flutter-autoroll
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md
If the roll is causing failures, please contact the current sheriff (cbracken@google.com), and stop
the roller if necessary.

Trybots failed. These were the failed builds: https://cirrus-ci.com/task/4738313557114880 , https://cirrus-ci.com/task/5864213463957504

Commit queue failed; closing this roll.


Either way too slow or stucked into infinite loop

I tried it on xml files that are thousands of lines and are similar to help me better focus on the discrepancies between the two.
But it does not work.
After more than 10 minutes, still no results.
Also it would be nice to add on the docs, how the outputs are formatted. As of now, we don't know what to expect.

Please upload example files, so I can look into it.


Dimension error in default setting

Hi, I tried to run the code, but found a dimension error.
I changed output dimension in train function, and it worked well.
I modified output.view(-1) to output.view(1,-1).
The full error message is attached below.

ValueError                                Traceback (most recent call last)
 in ()
15
16 for epoch in range(1, n_epochs + 1):
---> 17     loss = train(*random_training_set())
18     loss_avg += loss
19
 in train(inp, target)
6     for c in range(chunk_len):
7         output, hidden = decoder(inp[c], hidden)
----> 8         loss += criterion(output.view(-1), target[c])
9
10     loss.backward()
/anaconda/lib/python3.6/site-packages/torch/nn/modules/module.py in call(self, *input, **kwargs)
204
205     def call(self, *input, **kwargs):
--> 206         result = self.forward(*input, **kwargs)
207         for hook in self._forward_hooks.values():
208             hook_result = hook(self, input, result)
/anaconda/lib/python3.6/site-packages/torch/nn/modules/loss.py in forward(self, input, target)
319         _assert_no_grad(target)
320         return F.cross_entropy(input, target,
--> 321                                self.weight, self.size_average)
322
323
/anaconda/lib/python3.6/site-packages/torch/nn/functional.py in cross_entropy(input, target, weight, size_average)
531                 for each minibatch.
532     """
--> 533     return nll_loss(log_softmax(input), target, weight, size_average)
534
535
/anaconda/lib/python3.6/site-packages/torch/nn/functional.py in nll_loss(input, target, weight, size_average)
498         f = _functions.thnn.NLLLoss2d(size_average, weight=weight)
499     else:
--> 500         raise ValueError('Expected 2 or 4 dimensions (got {})'.format(dim))
501     return f(input, target)
502
ValueError: Expected 2 or 4 dimensions (got 1)

Thanks, turns out that .view is not necessary at all (the shape is already 1 x N).


doc: flesh out the conversion to ScalaTest docs a good deal

Link back to relevant information elsewhere in the docs
Add tactical tips
Explain differences in build.sbt between MUnit and ScalaTest
Add some structure to the now-copious information

Hopefully this will encourage adoption!
Note that I was not able to test locally; I could not get the build running. I want to to test that the headers looked okay, and that the links worked. However, I was fairly careful about putting in the links, so I expect it should be fine. If you are at all nervous about it, you may want to render it and see if it is okay.

Thank you for this pr! It may take a couple weeks for me to look into this since I’ll be away on holidays

@olafurpg Thanks for letting me know. I've taken these notes now while I'm fresh, so I'm in no rush. Enjoy your holidays!


Allow to be fully client-sided

Currently, as it stands, if you are using the mod you cannot join a host who lacks the mod - even after disabling all host related config options. If nothing else, this could perhaps be implemented with a networking toggle in config (akin to what is used in darmuhsTerminalStuff, which features a ModNetworking toggle in config to allow for fully client-sided use).

Hey @throwitaway99,
I have added an experimental option for disabling networking via NetworkingEnabled in 1.2.2.
It is experimental as we did briefly test it and it should allow for joining hosts who do not have the mod, BUT any action / command that requires it will error out.
This will most likely be part of 1.3.0 as it will require some host/client testing with different scenarios and all :)

Hello @remiX-
I know it's currently experimental, but I thought I'd report a serious bug for the feature currently: if you disable networking, and host a game, you'll be unable to quit the game through the menu (I was forced to ALT+F4). However, if you are not the host, then you can quit normally (at least in my testing in LAN - though I tested the hosting part solo both online & in LAN).

@remiX-
The issue seems to be deeper than I had tested initially. When disabling networking, if you join a host who lacks mod, upon making the ship leave the moon & return to orbit, the game will become soft-locked and nobody playing will be able to land the ship. The lever will be stuck on 'the ship is currently landing'. Unfortunately, this means, with networking disabled, that playing sessions isn't really possible, unless the host leaves & remakes the game every time the game auto-saves after the results screen.

Hey @throwitaway99.
I have just released a v1.3.0 which should show up in 10-20 mins

I know it's currently experimental, but I thought I'd report a serious bug for the feature currently: if you disable networking, and host a game, you'll be unable to quit the match through the menu (I was forced to ALT+F4)

Lol yep, sorry XD!
I only noticed this now (an hour ago as of this post) and hadn't checked this post as I've been quite busy :(
It was due to SaveGame triggering and trying to save file for the host but that won't occur with SaveFile being tied to the one Networking instance - this has been disabled now as of 1.3.0.

However, if you are not the host, then you can quit normally (at least in my testing in LAN - though I tested the hosting part both online & in LAN with no other mods installed).

Oh wow this is good to know, thanks! I've never thought of actually trying LAN for local testing... I'll start doing this.

The issue seems to be deeper than I had tested initially. When disabling networking, if you join a host who lacks mod, upon making the ship leave the moon & return to orbit, the game will become soft-locked and nobody playing will be able to land the ship. The lever will be stuck on 'the ship is currently landing'. Unfortunately, this means, with networking disabled, that playing sessions isn't really possible, unless the host leaves & remakes the game every time the game auto-saves after the results screen.

Hmm, this is interesting. Will test this tomorrow asap, thanks for the headsup.
The initial tests I did with a friend we didn't even think of hitting the lever I think lol :/
If you get to try v1.3.0 let me know pls :D

Hello, @remiX- - I thought I'd add some more stuff I've learned through testing on the latest v1.3.0.
It appears that the quitting / soft-locked bugs are now completely fixed, which is awesome! However, I have some additional bugs / suggestions to offer based on my testing w/ networking disabled. For instance, the additional monitors do not seem to work properly, especially as a host. Here is what I have discovered (QC = QualityCompany, and GeneralImprovements = GI):
QC (while hosting) = LootCredits monitor displaying normally, Info monitor pitch black (however, with networking enabled, it seems to all work just fine - although it seems to show me on Day 1 despite being on Day 23 (with 0 days left regarding quota), and I would perhaps like some clarification on what the 'Gained' value refers to)
QC + GI (while hosting) = both monitors pitch black (this seems to be the case even with networking disabled)
However, when not hosting (even if connected to a host who lacks the mod, which is how I tested), it seems that both combinations display the monitors - though the Info monitor will display 'Disabled', despite the Info monitor option being enabled. I presume it is not working because networking is disabled. If so, it would be nice if the Info monitor worked fully client-sided with networking disabled, since it is a really cool unparalleled monitor feature that GeneralImprovements does not offer. Speaking of GeneralImprovements, perhaps it would be good to look into how they implement these sorts of features, since I've noticed that they implement everything pretty seamlessly without the need for a network toggle for fully client-sided use, although of course this mod offers features that GeneralImprovements does not.

Thanks  @throwitaway99

QC (while hosting) = LootCredits monitor displaying normally, Info monitor pitch black (however, with networking enabled, it seems to all work just fine - although the Info monitor seems to show me on Day 1 despite being on Day 23 (with 0 days left regarding quota), and I would perhaps like some clarification on what the 'Gained' value refers to)

Yep so the Info monitor when not at the company displays info about the current run - I should probably add this into the docs somewhere lol
On day: x - how many days into current quota
Quota start: x - how much you started the current quota at (since last time selling and meeting quota)
Gained: x - how much you have gained in the current quota (i.e. currentTotalLoot - quotaStart)
The issue is that this is saved via a file on the Hosts' side, and clients receive it for that save. Clients joining don't have 'their own save' so it would be a bit tricky as I am not sure on what the Client can use to uniquely identify the host's save etc - so I just marked it as 'disabled'.

The reason it's black in the beginning as nothing updates it in the beginning

QC + GI (while hosting) = both monitors pitch black (this seems to be the case even with networking disabled)

Will need to run with GI again myself. I've noticed when I have GI enabled sometimes QC monitors do not show at all, it could be timing related and how GI controls the monitors as it does have way more expansive monitor operations xD
We do (possibly) want to move away from the monitors and move into a separate HUD - at least for the 'InfoMonitor'. Loot & Time make sense in the ship but can have many conflicts as a lot of mods do that (I think).

However, when not hosting (even if connected to a host who lacks the mod, which is how I tested), it seems that both combinations display the monitors - though the Info monitor will display 'Disabled', despite the Info monitor option being enabled. I presume it is not working because networking is disabled.

Yep as per screenshot above, it uses a persistant file on the host's side for this. Will be a bit tricky to get this info on the clients side with networking disable / host not having the mod :(
The initial intent behind 'InfoMonitor' was purely for selling but had no use when doing actual runs - so I had added some little info which was primarily QuotaStart and Gained to give it some life.
Let me know if you have any ideas on how we could make it work for clients with networking disable ^^

If so, it would be nice if the Info monitor worked fully client-sided with networking disabled, since it is a really cool unparalleled monitor feature that GeneralImprovements does not offer.

Are you talking about the InfoMonitor info during run or info @ company for selling needs? :)

Speaking of GeneralImprovements, perhaps it would be good to look into how they implement these sorts of features, since I've noticed that they implement everything pretty seamlessly without the need for a network toggle for fully client-sided use, although of course this mod offers features that GeneralImprovements does not, so I don't know how feasible such an implementation would be.

Will have another look at GI, I know they have a lot of monitor options in config so will see what they use - do they have a day saving?

Hello, @remiX-
Thank you for clarifying everything. I was a bit too quick with my testing, and I hadn't realized just how the InfoMonitor worked. I did more testing afterward and found that it seems to work perfectly (it was the selling part in particular that I liked). If you do end up switching to a HUD for the InfoMonitor, it would perhaps be nice to keep a config option to have it as a monitor.
However, I did notice what's potentially(?) an issue. I haven't tested it too thoroughly, though it's regarding how the target works on the monitor (and resetting it). I'm not sure if it's intentional behavior, but when setting a target, it seems to persist after leaving & rejoining. It would be nice if it could reset to the quota by default (or maybe a config/command of some kind).

Hey @throwitaway99

Thank you for clarifying everything. I was a bit too quick with my testing, and I hadn't realized just how the InfoMonitor worked.

No problem haha :) And sorry, we haven't explained it at all anyway. This mod initially was just made for me and a couple of friends but then we thought we may as well make it available. The automated selling + target + overtime calculations are intended for quicker runs so you don't have to spend too much time @ The Company selling. Like when you reach 10k quota it takes forever to sell manually.

What I found odd, though, is that the behavior where the LootCredits and Info monitors are completely black w/ GeneralImprovements only seems to occur when hosting.

If you do end up switching to a HUD for the InfoMonitor, it would perhaps be nice to keep a config option to have it as a monitor for those who want it (hopefully with the bugs worked out), though a HUD that persists on-screen when at the company would be incredibly useful.

Yep we'd definitely keep an option to keep it as a Monitor :)

Also, I need some clarification: how exactly does the target work

Haha, I've made a note to explain this more. I'll also add an explanation upon setting target <amount> in the terminal.

If I set the target to 875 (so a single credit beyond what I already have), it gives me a needed value of 131. I find that this is rather confusing, and I do not know how it works.

Loool nice find!
So this is a bug that we've never noticed. It seems to occur when target is above quota needed but you also have a lot of current credits in possession (we usually try to spend all after selling, so we usually never have any money to have noticed this XD)
Offhand, the issue is most likely it's trying to calculate the needed amount but then subtracting how many credits you have currently. So it should be an easy fix: if needed < quota then needed = quota
Can replicate this easily in my modding save with a much higher quota as well:

I have now added an explanation to the target when using it from the Terminal. Check it out when I do the next release 📦
A simple example is looking at very first quota and spending 55 credits initially (1 pro flashlight + 1 shovel). So you're left with 5 credits.
In the end your current credits plus the calculated overtime should equal the desired target.

I figured out how to reproduce the issue. With UseBetterMonitors set to true, and every ShipMonitor number filled out except for 3 & 4 (in this case, I tested by filling every empty monitor with ProfitQuota, and I left 3 & 4 blank for QC's LootCredits and Info monitors), you should be able to see that the LootCredits and Info monitors are pitch black when hosting.

I'll have a look at this sometime, I had only tested without "UseBetterMonitors" enabled :D
GI is probably doing some hiding of existing monitors when spawning up the additional 4.

Letting this auto-complete after the PR as a lot has happened in this issue and a lot has come out of it, so thanks a bunch :D
It is quite interesting how we can solve the thing with GI disabling the text on non-GI owned monitors.
That said, I've released the latest 1.3.1 which should resolve a couple of the teething networking issues you brought up after  1.3.0.
Let me know if you still find anything strange :D  This was all done with just me host and solo-testing so hopefully all is well!


Resetting the zoom on a line chart that has null values does not work

Bug report
Codepen
https://codepen.io/NotInspired/pen/rNORMYY
Explanation

What is the behavior you expect?
When clicking on the reset zoom button, the chart should be re-rendered as it was originally drawn.
What is happening instead?
The chart goes blank.
What error message are you getting?
None

Looks like it is fixed on version 3.19.2!


Updated CKEditor to 4.5.11

Coverage remained the same at 82.486% when pulling 243fa8c61b262f4d915939a239226ffff9bdc8bf on vxsx:feature/upgrade-ckeditor-4-5-11 into ebcd3039f4db2ea79c9a0f714b515dceff9ed6d3 on divio:master.


Updating lambda watcher to use new CloudAux>=1.3.3 code.

New CloudAux code gathers much more data about lambda functions.

[ ] Update documentation to contain newly required lambda permissions.

Coverage increased (+0.005%) to 63.303% when pulling 6c20f58fde7e1b21f24a3fa0a4bcf28a636be727 on lambda_function into 45deeb01108556dcf34234817c6bdcecc86fb458 on develop.

Coverage increased (+0.005%) to 63.303% when pulling fc8fcc0055435bbd0e3f5808e4acbf8becaca307 on lambda_function into 45deeb01108556dcf34234817c6bdcecc86fb458 on develop.


Add expanded pixel color channel depth options #1

1st Stage

Adds ability to specify pixel depth using template arguments
Uses pixel_traits for color space convertions instead of relying on 8-bit
Changes some formatting

From #513

Cool.  I assume you are still working on this.  So far it seems sensible.  But could you try to avoid making whitespace only changes?  I looked over it and it's harder to review than needed since a lot of the changes aren't really changes, but just modified whitespace.
Also, another thing to watch out for is that the existing image processing routines aren't disturbed.  For instance, it's likely that there are some routines with contracts that say something like "I'll take in any RGB pixel" and maybe there is something about them that only makes sense for 8bit pixels.  Finding that kind of thing will require some looking around and testing.  Also, if you are going to make it templated you might as well let RGB pixels contain floats since I know people will ask for that.  Although that might complicate things.

Sorry about the whitespace changes if you want I'll seperate it into 2 commits; One for formatting and one for then changes.
I could also just do one with the real changes, but the new file seems to me to be more readable.
Notes:
I reworked the alpha blending, as the compiler should take care of promoting types.
For some of the color space conversations that used HSL2RGB and RGB2HSL, I only allowed 8-bit using std::is_same
It might be better to use an optional external lib like imagemagick if further conversations are necessary using the new types.
I didn't touch serialization yet, since I don't want to mess up backwords compatibility.
So far the changes don't use the expanded color depth. I'll still need to add the commits that do.

Yeah, don't include formatting in this PR.  Maybe in another one later on.
I don't want to add any dependencies, especially for something as minor as color conversion.  And in any event, the current behavior needs to be preserved so existing code doesn't break, especially the unit tests which aren't passing for this PR.
Also, one of the important things about assign_pixel() and it's related tools is that they are able to convert from any pixel type to any other.  So that's definitely required.  For instance, the reason load_image() works on any image type is because it calls assign_pixel() to store the pixel value into the output image.  But if some color space conversions aren't allowed then things like load_image() will fail in ways users won't understand and are generally irritating.  The need to support all possible combinations of color space conversions is one of the main reasons why I was, and am, a bit wary about trying to have templated pixels.  But if you get it all working that would be super :)

You can ignore whitespace on review on Github https://github.com/blog/967-github-secrets


Add summary to event posts

For some reason event posts don't show summary text, they should

@tibetsprague I found out that hideDetails controls wether or not the text is shown. Removing this restores the summary but it may impact something else -- I don't know the history behind it. Advice?
It's set here: https://github.com/Hylozoic/hylo-evo/blob/12c9e125097c5c3c821ff7975b803c457cc1f04b/src/components/PostCard/EventBody/EventBody.js#L65
And referenced here: https://github.com/Hylozoic/hylo-evo/blob/12c9e125097c5c3c821ff7975b803c457cc1f04b/src/components/PostCard/PostDetails/PostDetails.js#L47

yeah this was from before my time. seems obvious to just undo it. there must have been some UI reason that having the event summary text was deemed undesirable. maybe just a little testing needed.

Adding my notes here for posterity:
PostDetails uses the boolean expanded to control how much of the body to show. The same variable name is used elsewhere. The hideDetails was used in EventBody as a prop to PostDetails.