Solver() Psychology ....

Hello,
In many cases, the Solver() makes brilliant optimization choices (!) however,
in this case, it consistently provides a solution with a very high cost (due to ArcCost), even when the penalties assigned to dropping Orders are very low or even 0.
Very high ArcCost are assigned for traveling from the Start or Endpoint to the Nodes to be served and very low cost between Nodes.
Still, Solver provides a solution that uses these costly segments, where I would expect it to Drop all the Nodes and suffer a much lower penalty.
Any other factor that might affect such decisions?

Not sure to well understand the issue. I think the start and end node are mandatory i.e. imposed to the solver -> vehicle can't start from any node.
If you want this feature please take a look at https://developers.google.com/optimization/routing/routing_tasks#allowing-arbitrary-start-and-end-locations
tldr create dummy/virtual node with cost 0 to any node, (pro tips: you can also avoid to display it in the solution printer)

Thx.
Sure, but I would expect the vehicle not to start at all and take the 'hit' of the (low) Drop Penalty X # of Orders.
In my case, it does perform the route, and gets hit by very high ArcCost

I guess it's mandatory for each vehicles to reach its end node even if they don't visit any nodes.
Question: does the cost from Start Node to End Node also expensive ?

These are two separate Nodes, but at the same location - so 0 cost between these.
Checked some more and this happens also with low costs, there are cases that solver prefers to solve and provides a total cost (for example ~500) rather than skip and have 0 cost.
It does skip all Nodes in some cases... will try to understand what is the difference that can cause such behavior.
BTW: In one case the solver chooses to serve only the first order (index=0 in locations array), but looking at the CostCallback (breakpoint) it seems that the indexes sent to it are never 0. (Run(int first_index, int second_index)).
How can it choose order 0 without ever querying the cost to it, or from it?


mr_note_test: change MR ID used for testing discussion

This patch choose another MR to be used as text dump for testing, since
the last one filled up.
Signed-off-by: Bruno Meneguele<EMAIL_ADDRESS>

It seems today is the day for changing things about live MRs in our gitlab test repos :).
I'm going to merge this PR as soon as the test passes so it unblocks other PRs testing.


Database Backend

The attempt here is to begin to abstract away the database backends and ORMs. The main addition is a new method in backends.db_backend_loader that reads a string in the settings. It is set to load the existing SQLAlchemy backend by default.
Therefore, if your settings were (as in the example):
settings = {
    "DATABASE": {
        "URL": "postgresql://:@localhost/apistar",
        "METADATA": Base.metadata
    }
}

It would be implied as:
settings = {
    "DATABASE": {
        "URL": "postgresql://:@localhost/apistar",
        "METADATA": Base.metadata,
        "BACKEND": "apistar.backends.sqlalchemy.SQLAlchemy"
    }
}

The SQLAlchemy backend should otherwise function as existing. There are two new class level variables (preload_key and commands) to accomplish the same functionality as already existing in App(). Perhaps there will be a better method of handling down the road.
Lastly, there is the beginning of a BaseDatabaseBackend that can be used for further abstraction down the road.
One thing to note ... I did have to remove a type annotation in backends.sqlalchemy.SQLAlchemy. In the build method, I had to remove the annotation for the settings parameter because there was an instantiation of settings problem where the backend was being called before the app.App was created.

Great stuff, thanks so much for taking a start at this! 😄
So, I've got a slightly different approach to this in mind, which I'll talk through here...
Rather than have an explicit set of components that the App handles preloading on App.init, we'll instead allow components to specify preload = True on the class. Then during app init, we'll walk through all the routes and commands, and build any component that's listed as preloading.
With that in mind I'd consider approaching this the other way around... Build out a PeeWee component, ignoring the preloading aspect for now, and just work on the basis that I'll cover that part of the problem.
At least for the moment we won't have a generalized abstraction for database backends, because they all expose different enough APIs that you can't just trivially interchange them. But we will have a decentralized approach where the application doesn't need to know anything about the particulars of the installed database backend - it just automatically gets picked up and loaded during initialization, because it's routed to somewhere in the application. (*)
There's one other minor part to that puzzle, which is making sure that the right set of commands are available to the application, without the developer having to explicitly include them. For that we'll likely have something similar to Flask's blueprints, so that there's a shortcut for registering a bunch of different commands, routes, template dirs etc... However I think that's something we can gloss over for now.
One other thing worth noting is that at some point we'll want to add support for context-manager components. That'd allow use to use eg peewee_backend.Transaction or sqlalchemy.Session and have commit/rollback handled automatically. Again, that's something to consider for the future. For now we'd just want to expose the db instance, and have the developer explicitly use with db.transaction() as txn: inside the view.
I'm very keen on helping out wherever possible here, so please do let me know any questions you have about any of the above. The final thing worth noting is that I'm super keen that we end up pushing alternative backends out as separate third-party packages, rather than bundling everything into the main repo itself. Totally happy for any work to start off as pull requests directly against this repo tho, as that's a perfectly reasonable point from which to progress.
(*) The place where we will end up having generalized abstractions will be cases that can have a common interface that applies to more that one backend. Template rendering (get_template, render), Cache backends (get/set) are examples of cases like those. Perhaps there's also some very minimal amount of interface that's common across database ORMs, but if there is I'm happy for us to cross that bridge at a later date.

Awesome. I was thinking the same that it sort of would be a weird abstraction. I knew this wasn't exactly the right solution, but wanted to hear exactly your feedback like this.
I'll take this idea and try to start running with it.

Also, I had been planning on making the peewee component a 3rd party package. Maybe, with the same logic the SQLAlchemy module also at some point should be broken off.
Another thought I had too though, was as much as possible, it would make sense to try and keep the commands consistent, and, for example, reuse things like create_table just execute the same regardless of the ORM.

I'll take this idea and try to start running with it.

Brill! 👍  👍  👍

as much as possible, it would make sense to try and keep the commands consistent, and, for example, reuse things like create_table just execute the same regardless of the ORM.

Agreed, yup.

Maybe, with the same logic the SQLAlchemy module also at some point should be broken off.

Possibly so. Most likely I'd take a similar approach as have done with REST framework, and make sure that for every big component type we've got at least one built-in option that we guarantee to support as the core functionality, and a range of third-party options, owned by their own maintainers. However, we can take a view on all that as things progress.

As I say, feel free to either start of by issuing your work directly as a pull request against this repo, or else just start out with a third party package in the first place and go from there. Whichever you prefer.

Preloading is getting into place now... https://github.com/tomchristie/apistar/pull/139
Add preload = True to the component class, and it'll be initialized once only, during app.__init__


API for generating the json reference by demand

Ignore this PR. Valerio's API code will be merged through this PR https://github.com/alliance-genome/agr_literature_service/pull/168


feat: monothread content feature

Superseed by: https://github.com/decentraland/godot-explorer/pull/379


new component: DateTimePicker

I'd like to see DateTimePicker component in Flowbite. Something like Mui has.

Yes. I am not sure why it is not included since the documentation itself for the DatePicker, literally starts with:

Start receiving date and time data from your users.

It feels like they started implementing it but they just haven't finished it yet.

The documentation is quite confusing. I was under the impression that the datepicker included the time part as the documentation mentions date and time in the very first line in its page. Looking into the rest of the page then I could not find any reference to time and had to try it out hoping I could get it to work.

Any update on this one? Documentation is still misleading.

We now have a timepicker component: https://flowbite.com/docs/forms/timepicker/.

@zoltanszogyenyi I was looking at the component docs and was wondering if there is an option for 24h clock or is AM/PM the only option?


Recently, it does not accept or reject any password

When I enter my password and hit enter or OK, there is no feedback that I was entering the correct or incorrect password, the input box just clears my input as if the pop-up had just come up.  I see all my accounts are still there but "Encrypted" but I can't get to them if it doesn't accept my password.  I have cleared my cookies and history, restarted my computer, removed all other extensions to see if any are interfering (which they shouldn't in Chrome), but no luck.

Hi @SparkDustJoe, sorry about that. Can you see a box says 'Some accounts and passphrase do not match.' after you enter password and click OK?

No visual indicators of any kind.
The input box merely empties out with no explanation or feedback no matter
what password was entered, right or wrong.
On Nov 4, 2015 6:24 AM, "Li Zhe"<EMAIL_ADDRESS>wrote:

Hi @SparkDustJoe https://github.com/SparkDustJoe, sorry about that. Can
you see a box says 'Some accounts and passphrase do not match.' after you
enter password and click OK?
—
Reply to this email directly or view it on GitHub
https://github.com/Sneezry/authenticator/issues/33#issuecomment-153690873
.

Please do as follow, and tell me what you can see:
1/ Click the extension icon to open popup page
2/ Right click anywhere on popup page and select Inspect element
3/ Click Console tab in Developer Tools(the last tab on the top of the window)
4/ Move your mouse back to popup page and enter password then hit OK
If the extension went wrong, you should see some red code in Developer Tools window, can you something in red? If so, please paste anything you can see here, thanks.

When I just inspect the element without doing anything first
Error in response to storage.get: TypeError: Cannot read property 'length' of undefined     at Object.jsSHA.getHMAC (chrome-extension://bhghoamapcdpbohphigoooaddinpkbai/totp/jssha-1.31.min.js:11:14553)     at generate (chrome-extension://bhghoamapcdpbohphigoooaddinpkbai/totp/totp.js:71:22)     at updateCode (chrome-extension://bhghoamapcdpbohphigoooaddinpkbai/javascript/popup.js:545:62)     at Object.showCodes [as callback] (chrome-extension://bhghoamapcdpbohphigoooaddinpkbai/javascript/popup.js:678:9)     at chrome-extension://bhghoamapcdpbohphigoooaddinpkbai/javascript/popup.js:66:21handler @ extensions::uncaught_exception_handler:8 extensions::uncaught_exception_handler:8 Error in response to storage.get: Type
And then when I actually try to input a passphrase
Error: Cannot read property 'length' of undefined     at Object.jsSHA.getHMAC (chrome-extension://bhghoamapcdpbohphigoooaddinpkbai/totp/jssha-1.31.min.js:11:14553)     at generate (chrome-extension://bhghoamapcdpbohphigoooaddinpkbai/totp/totp.js:71:22)     at updateCode (chrome-extension://bhghoamapcdpbohphigoooaddinpkbai/javascript/popup.js:545:62)     at showCodes (chrome-extension://bhghoamapcdpbohphigoooaddinpkbai/javascript/popup.js:678:9)     at Object.callback (chrome-extension://bhghoamapcdpbohphigoooaddinpkbai/javascript/popup.js:846:9)     at encryptSecret (chrome-extension://bhghoamapcdpbohphigoooaddinpkbai/javascript/popup.js:797:25)     at HTMLInputElement.document.getElementById.onkeydown (chrome-extension://bhghoamapcdpbohphigoooaddinpkbai/javascript/popup.js:146:9)

Hope this helps...

Perhaps updating the jsSHA library to the latest version and retesting would help?  https://github.com/Caligatio/jsSHA

Hi @SparkDustJoe , sorry I didn't reply you in time.
It seems there is something wrong with chrome.storage.sync.get which is a native method of Chrome. Can you see something in Export/Import box from menu?

I will look at this when I'm in front of the affected machine.  Do you want me to see if it just pops up the box that asks me to import or export my settings, or do you want me to actually test importing and exporting?

I wanna check whether you can see data in export/import box so that I can confirm whether the issue is caused by chrome.storage.sync.get or the data itself.

It does seem to pull the accounts into what looks like JSON, so it is retrieving them (in encrypted format).  And in fact I should export them for safe keeping anyways.

Notice how the last account shows  * * * * * *  instead of Encrypted.  They should ALL be encrypted to the same phrase.  That seems odd.  The JSON shows all as "encrypted":true
{"0ddb7ca3e5c2b7743b7f0ba16e4ae6e4":{"account":"REDACTED","encrypted":true,"index":0,"issuer":"","secret":"REDACTED","type":"totp"},
"0f2cac3d73d1a58c4da6bc19045ecb2f":{"account":"REDACTED","encrypted":true,"index":6,"issuer":"","secret":"REDACTED","type":"totp"},
"287ce6e5180072176653a321f46f7e57":{"account":"REDACTED","encrypted":true,"index":4,"issuer":"","secret":"REDACTED","type":"totp"},
"2c55c2d87ff899a3b20c30bc6bcc3201":{"account":"REDACTED","encrypted":true,"index":2,"issuer":"","secret":"REDACTED","type":"totp"},
"3e60e40e2411b7554af52c887d6d533c":{"account":"REDACTED","encrypted":true,"index":8,"issuer":"","secret":"REDACTED","type":"totp"},
"673420270bfebf31e0d33996a8aa0014":{"account":"DOTDOTDOT","encrypted":true,"index":9,"issuer":"NOTBLANK","secret":"REDACTED","type":"totp"},
"a99d6315b20b2255291f1e9ec506d3c1":{"account":"REDACTED","encrypted":true,"index":7,"issuer":"","secret":"REDACTED","type":"totp"},
"f10fe78783f76c21a01351fd42af0eb6":{"account":"REDACTED","encrypted":true,"index":1,"issuer":"","secret":"REDACTED","type":"totp"},
"f1f382edc9dc6d655fa2c7d2cdefd5b8":{"account":"REDACTED","encrypted":true,"index":3,"issuer":"","secret":"REDACTED","type":"totp"},
"ff5d17fa8cf654d367a08d41f6a2fcb8":{"account":"REDACTED","encrypted":true,"index":5,"issuer":"","secret":"REDACTED","type":"totp"}}

When I remove that last account, I am getting prompts again, but now none of my accounts will decrypt, so they are locked and potentially lost.

I guess the last account secret has illegal format, maybe I need improve the code to reject accepting it. But I do not think this issue may break your passphrase, it's strange...

Hey there, this has happened to me as well. My passphrase is correct but it isn't letting me in - all are encrypted. I don't want to delete the extension as this it is very good.

Hi @photonicpr @SparkDustJoe , I have already started to work on tracking the passphrase issue(https://github.com/Sneezry/authenticator/tree/DO_NOT_USE_THIS_BRANCH), however, I need more test to make the issue reappear.
Zhe Li

Thank you for looking into this Zhe, talk soon.
Avi
mobile:<PHONE_NUMBER>
office:<PHONE_NUMBER>
skype: avi.lambert
On Fri, Nov 27, 2015 at 8:22 AM, Li Zhe<EMAIL_ADDRESS>wrote:

Hi @photonicpr https://github.com/photonicpr @SparkDustJoe
https://github.com/SparkDustJoe , I have already started to work on
tracking the passphrase issue(
https://github.com/Sneezry/authenticator/tree/DO_NOT_USE_THIS_BRANCH),
however, I need more test to make the issue reappear.
Zhe Li
—
Reply to this email directly or view it on GitHub
https://github.com/Sneezry/authenticator/issues/33#issuecomment-160169546
.

Sneezy, any update on progress to de-encrypt or fix the encryption problems with your chrome app?

Hi Sneezry. I have used authenticator with my account mmmglobal. Accidentally the autheticator app become disappear from my computer. When I restore then I lose the code. Could you show me how to back up my code?

I have the same problems
here you can see what I have in console
popup.html:1 Error in response to storage.get: TypeError: Cannot read property 'length' of undefined
at jsSHA.getHMAC (chrome-extension://bhghoamapcdpbohphigoooaddinpkbai/totp/jssha-1.31.min.js:11:14553)
at generate (chrome-extension://bhghoamapcdpbohphigoooaddinpkbai/totp/totp.js:71:22)
at updateCode (chrome-extension://bhghoamapcdpbohphigoooaddinpkbai/javascript/popup.js:545:62)
at Object.showCodes [as callback] (chrome-extension://bhghoamapcdpbohphigoooaddinpkbai/javascript/popup.js:678:9)
at chrome-extension://bhghoamapcdpbohphigoooaddinpkbai/javascript/popup.js:66:21
7popup.html:1 Error in response to storage.get: TypeError: Cannot read property 'length' of undefined
at jsSHA.getHMAC (chrome-extension://bhghoamapcdpbohphigoooaddinpkbai/totp/jssha-1.31.min.js:11:14553)
at generate (chrome-extension://bhghoamapcdpbohphigoooaddinpkbai/totp/totp.js:71:22)
at updateCode (chrome-extension://bhghoamapcdpbohphigoooaddinpkbai/javascript/popup.js:545:62)
at showCodes (chrome-extension://bhghoamapcdpbohphigoooaddinpkbai/javascript/popup.js:678:9)
at Object.callback (chrome-extension://bhghoamapcdpbohphigoooaddinpkbai/javascript/popup.js:846:9)
at encryptSecret (chrome-extension://bhghoamapcdpbohphigoooaddinpkbai/javascript/popup.js:797:25)
at HTMLDivElement.document.getElementById.onclick (chrome-extension://bhghoamapcdpbohphigoooaddinpkbai/javascript/popup.js:124:9)

Please could you make some instructions what to do? Despite I put correct password I dont see anything
I have to use app from mobile phone
I hope I dont loose it too otherwise I get angry since i need it many times a day for different websites

what is the right way of updating the jsSHA library to the latest version and retesting ? https://github.com/Caligatio/jsSHA
I downloaded it and it is a console for creating or publish project on GitHub


fix: add w3.org/ns to DID schema validator

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

Comparison is base (b53738d) 85.46% compared to head (e45a0a8) 85.46%.

Additional details and impacted files
@@           Coverage Diff           @@
##             main      #17   +/-   ##
=======================================
  Coverage   85.46%   85.46%
=======================================
  Files          47       47
  Lines        4574     4574
=======================================
  Hits         3909     3909
  Misses        506      506
  Partials      159      159

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

I'd prefer optional www. after http://, since www.w3id.org is also a valid URL to the same target as w3id.org

We support that as well; this PR adds support for without www.


Fix template issues

Hey there thanks for the PR. Could you please add a description or link to the issue this pr fixes. thanks.


Language settings bug.

Currently, changing the language on the settings page from none to French works as expected.

however, when you exit the app and launch it again, the settings is reverted to the default which is English.

I can fix once #644 is in.


Quick fix for #1265

I am not sure if this is right way, and if error doesn't have any other consequences.
But my quick test says it works.
Fix for #1265

Ok, there is some problem with your Drone setup.

This is based on an older version of wagtail. Could you rebase it onto the latest master?

I just uninstalled and reinstalled - but getting same error

The drone thing could be ignored. The reason it's complaining is your master branch is really old and predates when we added the drone config and enabled flake8 on wagtail.
If you'd like to fix it though. Use git rebase to move that commit on top of the latest master: https://git-scm.com/book/en/v2/Git-Branching-Rebasing

Merged in a0dc8b39a67ec198f5ddfde07d4d12809c2c13c6 (master) and f5f068b10d0e4cc6fd34aa4449cb75fb750117e2 (0.8.x)
Thanks!


Several controls wont clip properly

Hi there,
I am using the latest ImGui.NET package, yet clipping seems to be broken sometimes.

Original imgui seems unaffected and works fine (example_glfw_opengl3 for instance)

I wonder what the problem might be.
Repo to reproduce you can find here https://github.com/deccer/UOStudio - UOStudio.Client.csproj - Imgui's Demo window should be there to check.

 It's all good. :)


feat: SMART-1536 link multisig docs

Add documentation for how to link a multisig wallet

I also want to double check that multisignature is ok, rather than multisig or multi-signature


fix: endpoint path encoding

Issue #

https://github.com/aws-amplify/amplify-swift/issues/2743
Description of changes

let input = PutObjectInput(bucket: "foo", key: "abc+def")
let presignedURL = try await input.presignURL(config: config, expiration: expiration)

Today, this results in https://<host>/abc%252Bdef?<query>. Note that the + is double encoded. This is because the signing implementation encodes the path, then when endpoint.url is called, that encoded path is assigned directly to components.path. This results in a double encoded path when retrieving the url here.
This means the signature is generated with the (correctly) single encoded path abc%2Bdef, but the request is ultimately made with double encoded abc%252Bdef.
The fix is simple, assign the already encoded path to components.percentEncodedPath.
Won't this break non-encoded paths?
Nope 😄
  1> import Foundation

// assign percent encoded path to `percentEncodedPath`
  2> var c1 = URLComponents()
c1: Foundation.URLComponents = {}
  3> c1.scheme = "https"
  4> c1.host = "foo.bar"
  5> c1.percentEncodedPath = "/abc%2Bdef"
  6> c1.url
$R0: Foundation.URL? = "https://foo.bar/abc%2Bdef"

// assign non percent encoded path to `percentEncodedPath`
  7> var c2 = URLComponents()
c2: Foundation.URLComponents = {}
  8> c2.scheme = "https"
  9> c2.host = "foo.bar"
 10> c2.percentEncodedPath = "/abc+def"
 11> c2.url
$R1: Foundation.URL? = "https://foo.bar/abc+def"

// assign non percent encoded path to `path`
12> var c3 = URLComponents()
c3: Foundation.URLComponents = {}
 13> c3.scheme = "https"
 14> c3.host = "foo.bar"
 15> c3.path = "/abc+def"
 16> c3.url
$R3: Foundation.URL? = "https://foo.bar/abc+def"

// to demonstrate today's behavior
 17> c3.path = "/abc%2Bdef"
 18> c3.url
$R4: Foundation.URL? = "https://foo.bar/abc%252Bdef"

Scope

[x] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

A fix is being prepared for this issue; as noted, special characters in S3 keys sometimes do not work for both direct requests and for presigned URLs.  The fix is a little wider scope than just this change to Endpoint though.
I won't be merging this specific PR, but I will keep this ticket open to track resolution of the problem.

@atierian Fix for this issue has merged and will ship in the next SDK release.

Fix for this issue has merged and will ship in the next SDK release.


Version mobile on scrolling

Hello,
For the mobile version, its possible use two fingers for scrolling in text editor ?

added two fingers dragging to the Console, Code Editor, Map Editor
done in .25


Nginx Ingress Controller - Safari 9 craps out with http2

I've literally wasted hours upon hours tracking this down. :-)
Using the nginx controller with SSL, Safari 9 will refuse to load any site. I'm sure this is a bug on Safari's part but I finally tracked it down to http2 in the listen 443 ssl line. I had to create a custom template to remove the http2 lines in order to get Safari (mobile or mac) to load our sites. None of the other browsers including older Safari browsers had an issue. I think http2 support was added in recent Safari version on the latest OS but obviously something is not right. Unfortunately, it wasn't just my local mac safari either as we had customers all over the world complain they couldn't access the sites with safari!
Maybe this should be a setting? Or if there's a known workaround I couldn't figure out?
https://github.com/kubernetes/contrib/blob/master/ingress/controllers/nginx/nginx.tmpl#L157

@alanhartless I think this issue is related to https://forum.nginx.org/read.php?2,266525,266525#msg-266525
Can you check if the logs contains connections errors?
You are right, http2 should be optional. #962 allows this.

https://trac.nginx.org/nginx/ticket/979

It sounds like it; although in our case I couldn't get any indication in the log as to what was happening.


Updates with synonymous and clean code

The checks are failing because you have removed the following
"quanto [(è | c'è | fa)] (caldo | freddo) [(<in>|<the>) <area>]

What about having expansion rules for every entity domain?
Something like:
https://github.com/home-assistant/intents/blob/d397128208d20d69a8fe7a2e09d1d3a21b2894de/sentences/it/_common.yaml#L64

What about having expansion rules for every entity domain? Something like:
https://github.com/home-assistant/intents/blob/d397128208d20d69a8fe7a2e09d1d3a21b2894de/sentences/it/_common.yaml#L64

I think is a good idea!
That was my starting point.

CI test are still not passing

CI test are still not passing

I see all them passed.

CI test are still not passing

I see all them passed.

Now looks good, I can merge!


Getting AttributeError: token_type_hint

Hi!
I'm getting attribute error when trying to revoke access_token without token_type_hint parameter.
I think that the problem is the same as in the issue #364. Breaking commit: https://github.com/idan/oauthlib/commit/539558a02edbadb8d6ef690fb0beb2510a5eeb17.
And here a part of stack trace:
  File "./venv/lib/python2.7/site-packages/oauthlib/oauth2/rfc6749/endpoints/base.py", line 64, in wrapper
    return f(endpoint, uri, *args, **kwargs)
  File "./venv/lib/python2.7/site-packages/oauthlib/oauth2/rfc6749/endpoints/revocation.py", line 65, in create_revocation_response
    self.validate_revocation_request(request)
  File "./venv/lib/python2.7/site-packages/oauthlib/oauth2/rfc6749/endpoints/revocation.py", line 127, in validate_revocation_request
    if (request.token_type_hint and
  File "./venv/lib/python2.7/site-packages/oauthlib/common.py", line 409, in __getattr__
    raise AttributeError(name)
AttributeError: token_type_hint

Yep, it's the same problem, a fix is already in place waiting for review in #362

Nice!

Fixed in #362


Avoid writing duplicate DNS entries to config file

Currently, we store the dbus DNS values in a vector without checking duplicate entries. which allows duplicate entries to be saved if the user supplies same DNS server settings multiple times.
With this commit, we will check duplicate entries and remove them to get a unique list of DNS values.
Tested By: PATCH -d '{"StaticNameServers":["<IP_ADDRESS>", "<IP_ADDRESS>"]}'
https://${bmc_ip}/redfish/v1/Managers/bmc/EthernetInterfaces/eth0
Change-Id: I0c18eb5fec36c4305f1ded4c5e57bbd046ca4576

please paste upstream commit link


Temporal resolve pass doesn't handle shadow mapping well

Temporal resolve pass doesn't handle shadow mapping well, since no motion vector is calculated for it.
Need to figure out a solution.

Fixed by separating shading result frame buffer into 2 frame buffers, punctual illumination result and environment illumination result.
Temporal pad deals with them with different strategies, to minimize noise


Fetch Refactor: Replace rest-hooks: ActionResource

Problem statement
As a report stream developer I want to replace all instances of usage of rest-hooks with react query based hooks.
Dependent on https://app.zenhub.com/workspaces/experience-607d9d5e68b95200150fec37/issues/cdcgov/prime-reportstream/6528
This ticket accomplishes replacement for files downstream of ActionResource:

Reports

What you need to know

ActionResource shape and script types may be available by plugin TSGenerate tracked by issue #7787

Acceptance criteria

[ ] usage of rest-hooks on all mentioned downstream files is replaced with new react query based functionality
[ ] all resource files mentioned are deleted
[ ] create automating testing associated with this feature

To do

Closing because we have replaced all of the remaining Fetch Refactor tickets with updated "Create/Replace Hooks" tickets divided by API area.


⚠ Samsung has degraded performance

In 6a19175, Samsung (https://samsung.com) experienced degraded performance:

HTTP code: 200
Response time: 3189 ms

Resolved: Samsung performance has improved in 4e626b6.


ML/AI on various platforms

NVidia cuda image

https://docs.nvidia.com/datacenter/cloud-native/#overview
https://hub.docker.com/r/nvidia/cuda/tags

Dockerfile
FROM nvidia/cuda:12.2.0-devel-ubi8
CMD nvidia-smi

docker build -t nvidia-smi .
docker run --rm --gpus all nvidia-smi

on older Lenovo P53 P1000 Pascal GP107
Mon Oct  9 20:23:27 2023
+---------------------------------------------------------------------------------------+
| NVIDIA-SMI 535.86.01              Driver Version: 536.67       CUDA Version: 12.2     |
|-----------------------------------------+----------------------+----------------------+
| GPU  Name                 Persistence-M | Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp   Perf          Pwr:Usage/Cap |         Memory-Usage | GPU-Util  Compute M. |
|                                         |                      |               MIG M. |
|=========================================+======================+======================|
|   0  Quadro P1000                   On  | 00000000:01:00.0  On |                  N/A |
| N/A   45C    P8              N/A /  20W |    543MiB /  4096MiB |      4%      Default |

on Lenovo P17 gen 1 RTX-5000 Turing TU104
CUDA Version 12.2.0

Container image Copyright (c) 2016-2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved.

This container image and its contents are governed by the NVIDIA Deep Learning Container License.
By pulling and using the container, you accept the terms and conditions of this license:
https://developer.nvidia.com/ngc/nvidia-deep-learning-container-license

A copy of this license is made available in this container at /NGC-DL-CONTAINER-LICENSE for your convenience.

Mon Oct  9 22:59:17 2023
+---------------------------------------------------------------------------------------+
| NVIDIA-SMI 535.86.01              Driver Version: 536.67       CUDA Version: 12.2     |
|-----------------------------------------+----------------------+----------------------+
| GPU  Name                 Persistence-M | Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp   Perf          Pwr:Usage/Cap |         Memory-Usage | GPU-Util  Compute M. |
|                                         |                      |               MIG M. |
|=========================================+======================+======================|
|   0  Quadro RTX 5000                On  | 00000000:01:00.0  On |                  N/A |
| N/A   53C    P8              14W / 110W |   1565MiB / 16384MiB |      4%      Default |

The key to GPU passthrough to docker is the --gpus variable - if you don't set it you will get the following
$ docker run --rm nvidia-smi

WARNING: The NVIDIA Driver was not detected.  GPU functionality will not be available.
   Use the NVIDIA Container Toolkit to start this container with GPU support; see
   https://docs.nvidia.com/datacenter/cloud-native/ .

/bin/sh: nvidia-smi: command not found

review https://github.com/vectara/hallucination-leaderboard

For z790H asus board and 14900K - keep undervolt protection off (use AI overclocking not Intel Extreme Tuning)
Performance drops to 330ms from 280ms under x57 perf

i9-13900KS at 6.2 GHZ
single RTX-A4500 card
Asus Z790 Hero with 1600watt supply, 6400 dual 32g ram on XMP I
4096 batch/25
2023-12-29 17:49:12.793423: I tensorflow/core/common_runtime/gpu/gpu_device.cc:2022] Could not identify NUMA node of platform GPU id 0, defaulting to 0.  Your kernel may not have been built with NUMA support.
2023-12-29 17:49:12.793436: I external/local_xla/xla/stream_executor/cuda/cuda_executor.cc:887] could not open file to read NUMA node: /sys/bus/pci/devices/0000:01:00.0/numa_node
Your kernel may have been built without NUMA support.
2023-12-29 17:49:12.793447: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1929] Created device /job:localhost/replica:0/task:0/device:GPU:0 with 17782 MB memory:  -> device: 0, name: NVIDIA RTX A4500, pci bus id: 0000:01:00.0, compute capability: 8.6
Downloading data from https://www.cs.toronto.edu/~kriz/cifar-100-python.tar.gz
169001437/169001437 [==============================] - 35s 0us/step
2023-12-29 17:49:51.160147: W tensorflow/core/framework/dataset.cc:959] Input of GeneratorDatasetOp::Dataset will not be optimized because the dataset does not implement the AsGraphDefInternal() method needed to apply optimizations.
Epoch 1/25
2023-12-29 17:49:56.694969: I external/local_xla/xla/stream_executor/cuda/cuda_dnn.cc:454] Loaded cuDNN version 8906
2023-12-29 17:50:00.947534: I external/local_xla/xla/service/service.cc:168] XLA service 0x7fb97425ce20 initialized for platform CUDA (this does not guarantee that XLA will be used). Devices:
2023-12-29 17:50:00.947561: I external/local_xla/xla/service/service.cc:176]   StreamExecutor device (0): NVIDIA RTX A4500, Compute Capability 8.6
2023-12-29 17:50:00.950948: I tensorflow/compiler/mlir/tensorflow/utils/dump_mlir_util.cc:269] disabling MLIR crash reproducer, set env var `MLIR_CRASH_REPRODUCER_DIRECTORY` to enable.
WARNING: All log messages before absl::InitializeLog() is called are written to STDERR
I0000 00:00:1703872200.993064     103 device_compiler.h:186] Compiled cluster using XLA!  This line is logged at most once for the lifetime of the process.
13/13 [==============================] - 41s 808ms/step - loss: 5.4299 - accuracy: 0.0278
Epoch 2/25
13/13 [==============================] - 4s 285ms/step - loss: 4.2069 - accuracy: 0.0712
Epoch 3/25
13/13 [==============================] - 4s 285ms/step - loss: 3.8504 - accuracy: 0.1172
Epoch 4/25
13/13 [==============================] - 4s 285ms/step - loss: 3.4829 - accuracy: 0.1750
Epoch 5/25
13/13 [==============================] - 4s 286ms/step - loss: 3.1631 - accuracy: 0.2380
Epoch 6/25
13/13 [==============================] - 4s 286ms/step - loss: 2.7725 - accuracy: 0.3111
Epoch 7/25
13/13 [==============================] - 4s 286ms/step - loss: 2.3888 - accuracy: 0.3901
Epoch 8/25
13/13 [==============================] - 4s 287ms/step - loss: 2.0793 - accuracy: 0.4557
Epoch 9/25
13/13 [==============================] - 4s 287ms/step - loss: 1.8113 - accuracy: 0.5219
Epoch 10/25
13/13 [==============================] - 4s 288ms/step - loss: 1.5876 - accuracy: 0.5753
Epoch 11/25
13/13 [==============================] - 4s 288ms/step - loss: 1.3336 - accuracy: 0.6312
Epoch 12/25
13/13 [==============================] - 4s 288ms/step - loss: 1.0699 - accuracy: 0.6984
Epoch 13/25
13/13 [==============================] - 4s 289ms/step - loss: 0.9236 - accuracy: 0.7364
Epoch 14/25
13/13 [==============================] - 4s 289ms/step - loss: 0.7571 - accuracy: 0.7804
Epoch 15/25
13/13 [==============================] - 4s 290ms/step - loss: 0.6041 - accuracy: 0.8242
Epoch 16/25
13/13 [==============================] - 4s 290ms/step - loss: 0.6497 - accuracy: 0.8138
Epoch 17/25
13/13 [==============================] - 4s 290ms/step - loss: 0.5552 - accuracy: 0.8316
Epoch 18/25
13/13 [==============================] - 4s 290ms/step - loss: 0.4580 - accuracy: 0.8647
Epoch 19/25
13/13 [==============================] - 4s 290ms/step - loss: 0.3844 - accuracy: 0.8903
Epoch 20/25
13/13 [==============================] - 4s 290ms/step - loss: 0.3997 - accuracy: 0.8838
Epoch 21/25
13/13 [==============================] - 4s 290ms/step - loss: 0.3681 - accuracy: 0.8954
Epoch 22/25
13/13 [==============================] - 4s 291ms/step - loss: 0.3103 - accuracy: 0.9070
Epoch 23/25
13/13 [==============================] - 4s 290ms/step - loss: 0.2674 - accuracy: 0.9209
Epoch 24/25
13/13 [==============================] - 4s 291ms/step - loss: 0.3407 - accuracy: 0.9027
Epoch 25/25
13/13 [==============================] - 4s 291ms/step - loss: 0.3117 - accuracy: 0.9118

see https://github.com/ObrienlabsDev/machine-learning/issues/33


Remove narrow().

We currently have narrow() and narrow_cast().
narrow() will throw an exception, while narrow_cast() just makes it undefined behavior.
narrow() is problematic because it will make debugging difficult, if you really want to throw an exception on narrowing, just use an if statement.

Add bound checking functions.
Add bound asserts.
Add assert_bound_or_return, assert_bound_or_throw.


Simple PullConsumer API MVP

Let's start with trying to make the PullConsumer module usable by end-users and see how far could we go with the following API design, no matter what is happening under the hood (i.e. do whatever is fastest to implement).
I imagine we may eventually expose 2/3 APIs in this library, each meeting a particular use-case:

Simple Pull Consumer API, which basically would require end users to write a GenServer-style module and start it within their supervision trees. It would automatically talk with Gnat connection specified by connection name.
NATS Jetstream Broadway Producer (may end up in separate broadway_jetstream package), which would implement pull consuming on to of GenStage. GenStage handles demands and acknowledges in its own way, so this API probably won't be possible to be implemented on top of Simple Pull Consumer API.
Low-level API, which would consist of building blocks needed for our higher-level APIs. I am keen to make this API public. It will probably look like a set of:

dedicated pub/sub operations
the ack functions will be part of it
it would expose something like the NextMsg function from Go client library: https://github.com/nats-io/jsm.go#consuming

Simple Pull consumer API
Let's focus on the Pull Consumer module a behaviour. Here goes example usage:
defmodule MyApp.Application do
  use Application

  @impl true
  def start(_type, _args) do
    children = [
       # Create NATS connection
       {Gnat.ConnectionSupervisor, ...},
       # Start NATS Jetstream Pull Consumer
       {MyApp.PullConsumer,
        %{
          connection_name: :gnat,
          stream_name: "TEST",
          consumer_name: "TEST"
        }}
     ]
    opts = [strategy: :one_for_one]
    Supervisor.start_link(children, opts)
  end
end

defmodule MyApp.PullConsumer do
  use Jetstream.PullConsumer

  def handle_message(topic, message) do
    # Do some processing with the message.
    :ack
  end
end

defmodule Jetstream.PullConsumer do
  @callback handle_message(topic :: String.t(), message :: Gnat.message()) :: :ack | :nack | :noreply
end

Depending on the return value from handle_message, we will automatically send +NXT, -NAK replies, or do nothing (this case requires verification whether it makes any sense).
In the future we may introduce another action: :async, which would kinda work like :noreply, but the user promises that they will manually call ack etc. functions.

Don't bother with:

Message ordering. Gnat.ConsumerSupervisor doesn't bother, so we would probably have to fix that beforehand.
Failure recovery. Let everything crash and restart from ground up.
Batching & Demands, just pull messages one by one
GenServer-style PullConsumer state, let's assume it will be stateless as for now (so, no state argument in callbacks).
GenServer-style handle_info callback

cc @mmmries @marmor157 @byu

Edit: Added topic argument.

Not to get too pedantic, and while I do see that subject and topic are used often interchangeably, but I believe that NATS uses 'subject-based messaging', not topics.
That is, a topic is a named logical channel (an entity) to which messages are published and subscribed.  RabbitMQ exposes this capacity through "Topic Exchanges" that would act as that logical entity-channel, which receives and route messages based on the routing key (which is more like a NATS subject). Similarly, a topic in Kafka is a modeled as a "logical stream" of partitioned messages.
For example, in a topic based system for Kafka or RabbitMQ, an "ORDERS" topic could receive all CRUD messages for orders in the system.
Although, a specific instance of a subject (e.g. orders) MAY be domain modeled as the equivalent single topic (e.g. orders) in core NATS, it would likely be more common that a large subject hierarchy (e.g the subject-with-wildcard "orders.>") is used to represent a topic (i.e. a logical concept)... And for core NATS, topics are unspecified, and inferred from actual publisher published messages and subscriber subscribed subjects (via code and usage). For example,  a subject of orders.created and orders.canceled could all be subjects for a topic regarding orders.
To project this idea onto Jetstream, we could think of the Stream as the topic, identified  the "Stream Name", which is a made up of messages from a set of defined subjects (akin to rabbitmq routing key).
So in the above API endpoint, the handle_message it would be more proper to use subject for the actual message received.
I do see topic used everywhere in the nats.ex library, so I think I see where this name for the argument came from... But I think it's something that we may want to distinguish when handling actual messages with explicit subjects.

I don't have an opinion on the reuse of Gnat.message() vs Jetstream.message() , or any thoughts about possible advantages or disadvantages .

Now I think we should introduce own type in order to separate Jetstream API from Gnat API.


Fix design of twitter wall

There a lot of things that need improvements. Look for example the screenshots below

[x] scroll bar shows up - it shouldn't!
[x] number of tweets should adapt to size of available screen (compare tweetwall!)
[x] number of tweet should not cover logo or face too much in the sidebar: The face is the important thing! People want to see who is number one
[ ] map view still have lots of issues
[x] open wall in new tab
[ ] a lot more. Please test!

These are known bugs, thanks for creating the issue. I am working on them.

Ok, good! Related to the display length of tweets is https://github.com/loklak/loklak_webclient/issues/253

Are you testing the wall on different layouts? Are you implementing a refreshment of new tweets? The oldest tweet should be substituted by the newest tweet. It looks like a lot of tweets are loaded but are not shown on the wall. You seem to solve this by deactivating the scroll bar. However tweets are still loaded, but why? See below for example.

For the linear layout, 10 tweets are loaded at a time. This is to allow for various screen sizes. On a 1366x768 screen, about 3 tweets are shown. On a 1920x1080 screen, around 5 and a half tweets are shown. This is to give an effect that as your screen height increases, more tweets should be shown. This is exactly the same behavior as that of tweetwall. Only difference is that tweetwall loads 15 tweets, we load 10.

Are you testing the wall on different layouts? Are you implementing a refreshment of new tweets? The oldest tweet should be substituted by the newest tweet.

Yes, I am. It takes approximately 20-30 seconds on average for a tweet to show up on the wall after the tweet is made.

Linear layout: Newest tweet shown at top, tweets shown in descending order of creation time.
Card: Newest tweet at top left
Centre of attraction: Only the latest tweet is shown.

This task is ongoing. So, we continue that one in M3. Good job!

Tasks mentioned originally have been completed.


Using @timestamp in the parameters list for email triggers error

Tried to follow [the documentation] (http://elastalert.readthedocs.org/en/latest/ruletypes.html#alerts) to create an alert and put in custom subject line. This is what I see on the terminal.
Traceback (most recent call last):
  File "/usr/lib/python2.7/runpy.py", line 162, in _run_module_as_main
    "__main__", fname, loader, pkg_name)
  File "/usr/lib/python2.7/runpy.py", line 72, in _run_code
    exec code in run_globals
  File "/root/elastalert/elastalert/elastalert.py", line 1208, in <module>
    client = ElastAlerter(sys.argv[1:])
  File "/root/elastalert/elastalert/elastalert.py", line 75, in __init__
    self.conf = load_rules(self.args)
  File "elastalert/config.py", line 296, in load_rules
    raise EAException('Error loading file %s: %s' % (rule_file, e))
elastalert.util.EAException: Error loading file example_rules/example_blacklist.yaml: Could not parse file example_rules/example_blacklist.yaml: while scanning for the next token
found character '@' that cannot start any token
  in "example_rules/example_blacklist.yaml", line 68, column 3

I tried putting in "@timestamp". It doesn't throw an error but then it shows "<MISSING VALUE>" text in the subject field. Any insights on this?

This is a YAML parse error. You can't use @ at the start of a YAML token without quotes.
>>> import yaml
>>> yaml.load('test: @timestamp')
Traceback (most recent call last):
   ....
yaml.scanner.ScannerError: while scanning for the next token
found character '@' that cannot start any token
>>> yaml.load('test: "@timestamp"')
{'test': '@timestamp'}

I did dig a little into that. Give my below zero knowledge on YAML, I found this SO answer quite helpful. I was wondering if the document can be updated with the correct the syntax?
Also, The <MISSING VALUE> is because it cannot find the @timestamp field?

I will update the documentation.
And yes, that is correct. Though it seems strange that @timestamp would be missing, unless you have also set timestamp_field, in which case the subject arg would need to change as well.

Cool. Thanks!

Fixed by #188


Make a maxOutput prop?

I love what you've done with the project, it is by far the most usable and extendable react-based terminal. I noticed while using react-console-emulator, that the terminal can get very laggy when many high-speed terminal.pushToStdout() occur, and it gets much worse when the terminal output begins to be the length of millions. Implementing a solution using refs would be painful, and I think it would be much more reasonable to add the option for other people to use. I published a fork that implements the max output prop and submitted a pull request #1015.
Would this be something you are willing to implement?

Is there any plan to ever implement this? The pull request only has a single additional line of code, so it isn't much to review if you are worried about reviewing it. I also tested it utilizing the examples which are in the docs.


Integrate newer FrostDB with WAL support

Signed-off-by: Arunprasad Rajkumar<EMAIL_ADDRESS>

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.

cc @brancz @thorfour


[time-sync] network-wide time synchronization service

OpenThread network-wide time synchronization service is an experimental feature, not part of the standard Thread protocol.
Feature Overview:

All the nodes in the same Thread partition sync to the same Thread network-wide time;
Microsecond level time synchronization precision;
Flexible time accuracy and time sync period configuration;
APIs for application layer use case, support both CLI and NCP version.

The feature is wrapped by OPENTHREAD_CONFIG_ENABLE_TIME_SYNC, there's no change to current Thread 1.1 implementation if OPENTHREAD_CONFIG_ENABLE_TIME_SYNC is not enabled.
If OPENTHREAD_CONFIG_ENABLE_TIME_SYNC is enabled, the node could:

Attach to a time sync enabled network, otherwise
Attach to a standard Thread 1.1 network, otherwise
Form a new time sync enabled network

In addition, if OPENTHREAD_CONFIG_TIME_SYNC_ESSENTIAL is also enable, the node could only:

Attach to a time sync enabled network, otherwise
Form a new time sync enabled network

Note:
Currently, the feature is only supported on nRF52840 and posix platforms. And the network time
is only synced among Routers and REEDs, the SEDs will be supported later as an optional feature.

Codecov Report

Merging #2618 into master will increase coverage by 1.23%.
The diff coverage is 70.68%.

@@            Coverage Diff             @@
##           master    #2618      +/-   ##
==========================================
+ Coverage   70.25%   71.48%   +1.23%
==========================================
  Files         206      255      +49
  Lines       26259    35510    +9251
==========================================
+ Hits        18449    25386    +6937
- Misses       7810    10124    +2314

Impacted Files
Coverage Δ

src/core/common/trickle_timer.hpp
100% <ø> (ø)
:arrow_up:

src/core/thread/topology.hpp
89.41% <ø> (ø)
:arrow_up:

src/ncp/ncp_base.hpp
71.42% <ø> (ø)
:arrow_up:

tests/unit/test_mac_frame.cpp
100% <ø> (ø)

src/core/thread/mle.hpp
96.77% <ø> (ø)
:arrow_up:

src/core/thread/mle_tlvs.hpp
95.52% <ø> (ø)
:arrow_up:

src/ncp/ncp_base_mtd.cpp
27.79% <ø> (-1.75%)
:arrow_down:

include/openthread/types.h
100% <ø> (ø)
:arrow_up:

src/ncp/ncp_base.cpp
38.43% <ø> (-1.92%)
:arrow_down:

src/core/thread/thread_netif.hpp
90.32% <ø> (ø)
:arrow_up:

... and 81 more

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update cb2a780...65bf9d7. Read the comment docs.

Ahh, this is an excellent feature! Any guesses when it's going to be merged into the master? I'd be happy to add EFR32 support for this after the merge.

@tomas-c Thanks for showing interest on the new feature. We'll see if there are any new comments or suggestions, and it could be merged after then, thanks.

@chshu, there seems to be some difference in memory and code size even when the feature is not enabled.
Commit ce01258 (this PR).
$ arm-none-eabi-size output/nrf52840/bin/ot-cli-ftd
   text	   data	    bss	    dec	    hex	filename
 169712	    540	  31260	 201512	  31328	output/nrf52840/bin/ot-cli-ftd
$ arm-none-eabi-size output/nrf52840/bin/ot-cli-mtd
   text	   data	    bss	    dec	    hex	filename
 114248	    540	  27300	 142088	  22b08	output/nrf52840/bin/ot-cli-mtd
$ arm-none-eabi-size output/nrf52840/bin/ot-ncp-ftd
   text	   data	    bss	    dec	    hex	filename
 171276	    540	  31712	 203528	  31b08	output/nrf52840/bin/ot-ncp-ftd
$ arm-none-eabi-size output/nrf52840/bin/ot-ncp-mtd
   text	   data	    bss	    dec	    hex	filename
 121212	    540	  27752	 149504	  24800	output/nrf52840/bin/ot-ncp-mtd

Commit 38f206c (commit prior to this PR).
$ arm-none-eabi-size output/nrf52840/bin/ot-cli-ftd
   text	   data	    bss	    dec	    hex	filename
 169520	    540	  31188	 201248	  31220	output/nrf52840/bin/ot-cli-ftd
$ arm-none-eabi-size output/nrf52840/bin/ot-cli-mtd
   text	   data	    bss	    dec	    hex	filename
 114072	    540	  27228	 141840	  22a10	output/nrf52840/bin/ot-cli-mtd
$ arm-none-eabi-size output/nrf52840/bin/ot-ncp-ftd
   text	   data	    bss	    dec	    hex	filename
 171084	    540	  31640	 203264	  31a00	output/nrf52840/bin/ot-ncp-ftd
$ arm-none-eabi-size output/nrf52840/bin/ot-ncp-mtd
   text	   data	    bss	    dec	    hex	filename
 121036	    540	  27680	 149256	  24708	output/nrf52840/bin/ot-ncp-mtd

Is this expected?  Any way we can remove any overhead when this feature is disabled?

@jwhui I have pushed a new commit to reduce code size usage when the feature is not enabled. But unfortunately, the PR will still increase 32/48bytes code size and 72bytes ram size, because:

32/48bytes code size:
Increased by mac_frame.cpp, the original FindPayloadIndex() is separated into two methods SkipSecurityHeaderIndex() and FindPayloadIndex() to process the frames that include IE field. I tried to make the changes simpler, but still increases some code size.

72bytes ram size:
Increased by otRadioFrame, we added a pointer (to the IE info) in otRadioFrame struct, nRF52840 platform has 16 RX buffers and 1 TX frame, so totally, it increase (16 + 1) * 4 = 72bytes.

The details:
Commit ab929c8 (this PR):
$ arm-none-eabi-size output/nrf52840/bin/ot-cli-ftd
   text	   data	    bss	    dec	    hex	filename
 167968	    536	  31260	 199764	  30c54	output/nrf52840/bin/ot-cli-ftd
$ arm-none-eabi-size output/nrf52840/bin/ot-cli-mtd
   text	   data	    bss	    dec	    hex	filename
 113136	    536	  27300	 140972	  226ac	output/nrf52840/bin/ot-cli-mtd
$ arm-none-eabi-size output/nrf52840/bin/ot-ncp-ftd
   text	   data	    bss	    dec	    hex	filename
 169612	    536	  31712	 201860	  31484	output/nrf52840/bin/ot-ncp-ftd
$ arm-none-eabi-size output/nrf52840/bin/ot-ncp-mtd
   text	   data	    bss	    dec	    hex	filename
 120252	    536	  27752	 148540	  2443c	output/nrf52840/bin/ot-ncp-mtd

Commit 64fed1e (before this PR):
$ arm-none-eabi-size output/nrf52840/bin/ot-cli-ftd
   text	   data	    bss	    dec	    hex	filename
 167920	    536	  31188	 199644	  30bdc	output/nrf52840/bin/ot-cli-ftd
$ arm-none-eabi-size output/nrf52840/bin/ot-cli-mtd
   text	   data	    bss	    dec	    hex	filename
 113104	    536	  27228	 140868	  22644	output/nrf52840/bin/ot-cli-mtd
$ arm-none-eabi-size output/nrf52840/bin/ot-ncp-ftd
   text	   data	    bss	    dec	    hex	filename
 169580	    536	  31640	 201756	  3141c	output/nrf52840/bin/ot-ncp-ftd
$ arm-none-eabi-size output/nrf52840/bin/ot-ncp-mtd
   text	   data	    bss	    dec	    hex	filename
 120204	    536	  27680	 148420	  243c4	output/nrf52840/bin/ot-ncp-mtd

Hi @chshu, I tried your timesync changes with posix emulation and I got an exception when I was starting the second thread node:
Program terminated with signal SIGSEGV, Segmentation fault.
#0  ot::Crypto::AesCcm::Payload (this=this@entry=0x7ffd361d5310, plaintext=, ciphertext=ciphertext@entry=0x0, len=len@entry=250,
aEncrypt=aEncrypt@entry=true) at /home/Projects/openthread/examples/../src/core/crypto/aes_ccm.cpp:230
230                byte               = plaintextBytes[i];
(gdb) where
#0  ot::Crypto::AesCcm::Payload (this=this@entry=0x7ffd361d5310, plaintext=, ciphertext=ciphertext@entry=0x0, len=len@entry=250,
aEncrypt=aEncrypt@entry=true) at /home/Projects/openthread/examples/../src/core/crypto/aes_ccm.cpp:230
#1  0x000055c8ea162113 in ot::Mac::Mac::ProcessTransmitAesCcm (aFrame=..., aExtAddress=aExtAddress@entry=0x55c8ea3dd230 ot::sInstanceRaw+14416)
at /home/Projects/openthread/examples/../src/core/mac/mac.cpp:922
#2  0x000055c8ea163dc5 in ot::Mac::otPlatRadioFrameUpdated (aInstance=aInstance@entry=0x55c8ea3d99e0 ot::sInstanceRaw,
aFrame=aFrame@entry=0x55c8ea3e0b80 ) at /home/Projects/openthread/examples/../src/core/mac/mac.cpp:2362
#3  0x000055c8ea198ed3 in radioSendMessage (aInstance=0x55c8ea3d99e0 ot::sInstanceRaw)
at /home/Projects/openthread/examples/../examples/platforms/posix/radio.c:616
#4  platformRadioProcess (aInstance=aInstance@entry=0x55c8ea3d99e0 ot::sInstanceRaw)
at /home/Projects/openthread/examples/../examples/platforms/posix/radio.c:680
#5  0x000055c8ea198353 in PlatformProcessDrivers (aInstance=0x55c8ea3d99e0 ot::sInstanceRaw)
at /home/Projects/openthread/examples/../examples/platforms/posix/platform.c:153
#6  0x000055c8ea151867 in main (argc=2, argv=0x7ffd361d5808) at /home/Projects/openthread/examples/../examples/apps/cli/main.c:94
It seems that it returns NULL for payload because it fails to find the expected element in the frame.
Any ideas?
Many thanks!

@renovatio-systems Thanks a lot for reporting the issue, I just submitted #2837 to fix it, please try again with the change.
(I focused on nRF52840 platform during the feature development, but hadn't verified it on posix platform for some time...）

@chshu many thanks!


Adding Social media icons

I would like to add Github,twitter,Factbook,insta,social media profiles to the side of screen.
@Akshat111111 please assign this issue under gssoc-ext,hacktoberfest-accepted,wob and level2

@Akshat111111  Can I get your social media Handles?

Put it- https://www.linkedin.com/in/akshat-sharma11/
https://github.com/Akshat111111
<EMAIL_ADDRESS>

yeah,  I will do it


Child locations up to 1 level down are able to have a site

Environment

Nautobot version (Docker tag too if applicable): 1.4.5
Python version: 3.8.10
Database platform, version: Postgres 12.12
Middleware(s):

Steps to Reproduce

Create a parent location and attach it to a site
Create a child of the above parent, and attach to a site

Expected Behavior
I expected to be unable to add a child location to a site as I am unable to do so with child locations two levels down, IE the child of a child location.

Observed Behavior
I was able to attach a child location to a site

Based on discussion on Slack, it sounds like this may have happened because the "Floor" LocationType was changed to no longer have the "Building" LocationType as its parent. We probably need to disallow changing the parent of a LocationType that's already in use?


How does a LRU local cache help with multi-epoch training

This is not technically Feature Request, but rather a question about the local cache behavior of StreamingDataset.
I am using StreamDataset to load dataset from S3 in streaming manner. The dataset is large and can't be cached entirely on the each node. At some point, StreamingDataset needs to evict some shards according to its LRU eviction strategy.
Now let's assume that I have a training job that runs two epochs. During the first epoch, StreamingDataset keeps downloading shards from s3 and cached it locally. As training continues, due to the fact that local space is limited, StreamingDataset has to evict some shards which is loaded during early stage of first epoch. (with the reason being that each shard is accessed exactly only once, the LRU eviction strategy now converts to a time based strategy). At the end of first epoch, what's left is the cache is the shards that downloads toward the end.
Now, during the second epoch, StreamingDataset needs to download early shards again because these early shards have already been evicted. Also, as training goes on, the late shards downloaded during the late stage of first epoch are also evicted from the cache, replaced by the shards downloaded during the early stage of second epoch. Consequently the second epoch downloads the whole dataset again and local cache doesn't help at all.
I am wondering if there is any improvement we can do in this scenario? With LRU eviction strategy it seems like the hit rate for local cache could be as low as 0%.

This is a great observation @liangjuf -- you're exactly right. We designed the LRU cache for scenarios where the dataset is so large that it can't all fit onto disk, meaning that you probably are not training for many epochs as well. And because of this, while the LRU cache is great for limiting disk usage intra-epoch training, it's not great when moving between epochs.
Maybe what we could do is have a sort of "snake" approach to the shard ordering during training. What I mean is that let's say you access shards in a particular order during your first epoch. Since you are using the LRU cache, the shards that are needed at the end of your epoch are still on disk. So then you draw samples for your second epoch by reversing the shard access order from the first epoch, meaning that you are able to make use of existing shards in the cache without having to evict them immediately. This would likely be a modification of the StreamingDataset.resample_streams() function here, which is what is called to get the order of shard parts, as well as the mapping from original sample ids to training sample ids. Could probably change the behavior of the function depending on if the epoch arg is even or odd :)
That being said, we likely won't get to this soon since there are some other higher priority items right now. If you wanted to take a stab at this, that would be amazing! Also, it would be great to better understand your use case and dataset size -- are you concerned about egress fees? And is your dataset very, very large?

Thank you for your quick response and pointer. That's helpful.
Our dataset is not crazily large, a couple of TB. I am exploring several dataloaders as well as the locations that data can be stored. I want to benchmark the throughput to make sure that dataloading can keep GPU busy most of time.
My current findings of StreamingDataset is that loading from S3 is significantly slower than loading data from EFS or from host filesystem. That somewhat makes sense - as downloading is expensive. I also find that if the shard is cached, the dataloading is way faster (can be up to 10x). And this leads me to this question: what can we do to make sure cache hit rate as high as possible during the whole training with multiple epochs.

Are you benchmarking throughput along with model training? Or just iterating through the dataloader? Because downloading from a remote location when iterating through just the dataloader will definitely be slower than loading from local disk. You can also allow StreamingDataset to download farther ahead by increasing the predownload arg -- this currently defaults to 8*batch_size. Also, make sure that you're setting the batch_size in your StreamingDataset the same as your DataLoader -- this batch_size is the per-device batch size.
Happy to take a look at some example code you have if you'd like as well.

Currently I am justing iterating through the dataset without the involvement of model, as the variance of model training speed could be big and for now I'd like to assume that the whole system is bottlenecked on the CPU side instead of device side.
Thanks for your answer again and feel free to close this issue.


installation is not clear

i download git repo and trying to run lib from release folder but it is not running.
from where we can get python code.
or please update installation steps.

You can download prebuilt binaries from this directory: https://github.com/AKSarav/Kube-Node-Usage/tree/main/releases
To build the binaries from source run "./build.sh" and have Go in 1.19+ installed. The artifacts are place in the root directory.

I will update the readme little bit more @jainpratik163   and thanks @everflux  for stepping in and assisting.

Hey, same problem here. I also downloaded go to build by myself or trying executing go main.go [options]
But still the same issue.

Am I missing something @SaravEasy ?

This error is due to the Kube Config or connection failure - I can work on the Error part and make it more descriptive. @amilcarrey

@amilcarrey @jainpratik163  I have updated the Error Messages and the Readme files with a few more details. Please download the latest binaries from the latest release 3.0.1 and try

Thanks mate! Works well now, would be greather have a brew installation. If I have time this weekend I will try to open a PR.
Have a nice weekend!


Use udiff format in CI

what about setting PHP_CS_FIXER_FUTURE_MODE=1 instead ?

we want non-future to be tested as well, so maybe for one job on maybe like PHP nightly that makes sense?

Was about to say the same, wouldn't using PHP_CS_FIXER_FUTURE_MODE change other things we don't want to change in CI builds?

huh? following that reasoning I could say "we want non-udiff differ be tested as well"
but this PR is changing options passed to executing fix command, not tests. non-udiff differ is still tested. same, setting FUTURE env for fix command won't affect tests.

It's not a reasoning but a real question: I have no idea what setting PHP_CS_FIXER_FUTURE_MODE really does right now.

Ok I checked and indeed it may be a better alternative, PR updated :)

as in readme, it set udiff and estimating-max by default

Thank you @julienfalque.


Can't find correct data folders when using with VS Codium

🐛 Describe the bug
When attempting to install downloaded data the extension cannot find the correct data folder to put extensions/settings/keybindings in, runs into an error and gives up.
🌴 Visual Studio Code Version : 1.33.0
🌴 Code Settings Sync Version : 3.2.8
🌴 Standard or Insiders : Standard
🌴 OSS or Portable : VS Codium (OSS)
🌴 Operating System : Ubuntu 18.10
🌴 Occurs On: Download
🌴 Proxy Enabled: No
🌴 Gist Id: n/a
📰 To Reproduce
Steps to reproduce the behaviour:

Install VS Codium.
Install shan.code-settings-sync.
Press CTRL + SHIFT + D.
Input GitHub Personal Access Token & Gist ID.
See console for error message.

💪 Expected behaviour
The extension should successfully download and install the extensions/settings/keybindings I uploaded from my previous installation of VS Code, and if it cannot find the correct data folders then it should ask the user to configure the correct locations manually.
📺 Console Error Log

📺  Additional context
The actual data folder locations are ~/.vscode-oss/extensions and ~/.config/VSCodium.

Deleted all the data folders and relaunched VS Codium to regenerate them, then reinstalled the extension and re-ran CTRL + SHIFT + D. This time, it downloaded the settings file successfully, but did not install any extensions (I'm still getting the same error).

Although note that I believe I had been copy/pasting a copy of the Gist ID with a typo in it for the initial attempts, which is probably what caused the HttpError and meant the settings file did not download the first time.

Duplicate of #668

You sure? It's definitely similar, but according to the OP of #668 there were no errors in the console. Here there were. Maybe I'm missing something, but...


Use unsigned for IDs

Signed-off-by: Mrunal Patel<EMAIL_ADDRESS>

Looks good to me.

LGTM.

LGTM


create-react-app 5.0 failed to parse source map

What's the current behavior?
WARNING in ./node_modules/react-big-calendar/lib/css/react-big-calendar.css (./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[5].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[5].use[2]!./node_modules/source-map-loader/dist/cjs.js!./node_modules/react-big-calendar/lib/css/react-big-calendar.css)
Module Warning (from ./node_modules/source-map-loader/dist/cjs.js):
Failed to parse source map from '/node_modules/react-big-calendar/src/sass/variables.scss' file: Error: ENOENT: no such file or directory, open '/node_modules/react-big-calendar/src/sass/variables.scss'
 @ ./node_modules/react-big-calendar/lib/css/react-big-calendar.css 8:6-254 22:17-24 26:7-21 58:25-39 59:36-47 59:50-64 61:4-74:5 63:6-73:7 64:54-65 64:68-82 70:42-53 70:56-70 72:21-28 83:0-224 83:0-224 84:22-29 84:33-47 84:50-64

"react-big-calendar": "0.38.2",

I have the same errors for multiple files.
Using react-scripts 5.0.0 and sass 1.44.0

Getting the same issue after moving to webpack5 and react-scripts 5

Getting the same issue after moving to webpack5 and react-scripts 5

+1

Compiled with problems:X
ERROR in ./node_modules/react-big-calendar/dist/react-big-calendar.esm.js
Module build failed (from ./node_modules/source-map-loader/dist/cjs.js):
Error: ENOENT: no such file or directory, open 'D:\Booking\booking (1)\booking\node_modules\react-big-calendar\dist\react-big-calendar.esm.js'

How can I resolve this issue..? can anyone help to reach the solution..?

How can I resolve this issue..? can anyone help to reach the solution..?

I have a feeling this is a different issue than what this thread is about. But to answer your question: does this file exist at all?


Reduce batch size?

I am given the error below. There are multiple folders and multiple codes. Which one needs to be updated to fix this?
return t.to(device, dtype if t.is_floating_point() or t.is_complex() else None, non_blocking)

torch.cuda.OutOfMemoryError: CUDA out of memory. Tried to allocate 508.00 MiB (GPU 0; 6.00 GiB total capacity; 4.99 GiB already allocated; 0 bytes free; 5.00 GiB reserved in total by PyTorch) If reserved memory is >> allocated memory try setting max_split_size_mb to avoid fragmentation.  See documentation for Memory Management and PYTORCH_CUDA_ALLOC_CONF

@Xaccountantlol, as a workaround, try to use smaller models as was suggested by @Acephalia here. For me, it helped to preload the models on GPU card with 4 Gb VRAM, and the out of memory error went away.

will close this for now since we have too many threads around gpu vram usage


New Features

Create a cli tool to create a godzilla project.
Improve the middlewares
make this web framework faster

add js scripting functionality done ✔


LoRA script missing

Describe the bug
Your blog refers to a LoRA script in the following location, but this does not exist. Can you please look into this?
/training/lora/redpajama-incite-chat-3b.py

Hey @zarandioon , you can find the LoRa scripts in the lora branch for now. There is a PR open :)

@orangetin Thanks for the lora training scripts. I have 2 questions

Do you have an example for merging the lora weights with the original model ? From what I understand that is important in order to use chat frameworks like https://github.com/huggingface/text-generation-inference
A quick test for the results after training showed that the model does not properly stop generating text. Do you append <|endoftext|> to every training example ?

Thanks & kind regards
Alexander

Hey @alexanderfrey ,

This example will merge the lora weights to the base model:

import torch
from peft import PeftModel, PeftConfig
from transformers import AutoModelForCausalLM

peft_model_path ='PEFT_MODEL_OUTPUT_DIR'

config = PeftConfig.from_pretrained(peft_model_path)
model = AutoModelForCausalLM.from_pretrained(config.base_model_name_or_path, return_dict=True, device_map='auto')

# Load the Lora model
model = PeftModel.from_pretrained(model, peft_model_path)

model = model.merge_and_unload()

model.save_pretrained('MERGED_MODEL')

You should set <human> as the stop word for the RedPajama models (use the OIG dataset as an example for formatting your data). You could fine-tune the model with <|endoftext|> at the end of every training example, but that's up to you :)

Let me know if you have any other questions.
Closing issue as the LoRA example scripts have been merged into main: https://github.com/togethercomputer/OpenChatKit/tree/3eba68969f137c34cea92d55c0a040f1b16de3db/training/lora/example


Update config and notifs documentation

Description
Clean up docs and notifications code.
Motivation and Context
It started with changing 1 lines in docs. And I saw a lot of opportunity to up the code quality and out of date docs. So I decided to fix.
Have you tested this? If so, how?
I have run the TestNotificationsTask and I get sensible error messages and I still get emails. The tests should also catch potential mistakes.
Bonus
This also removes the extremely annoying sequence of log messages going something like this (in typical luigi logs):
INFO: Sending error email to<EMAIL_ADDRESS>INFO: Oh wait, no I'm not actually because I'm running from a tty (gotcha! ;p)

ping @henlof who I vaguely recall once mentioning it. ^^

I'm a bit concerned that by removing the message about how to set up e-mail we're making the e-mail feature less discoverable. Perhaps we should add back an updated version of that message?

@daveFNbuck, as for the feature being discoverable. I did consider it, but thought that one should be able to run luigi without that feature too without being bothered all the time. There's already places in the docs mentioning you can use email.  No strong opinion though. :)

Fair enough. LGTM

Ok. I just pushed fixes to all @daveFNbuck's comments. I consider this to be ready to merge once tests pass then. :)

First time we merge a PR with the rebase strategy! :tada:


Cant install

Question
What would you like to ask?
if i write ' npm i or npm install' like this please help me
npm ERR! code 128
npm ERR! command failed
npm ERR! command git ls-remote<EMAIL_ADDRESS>npm ERR<EMAIL_ADDRESS>Permission denied (publickey).
npm ERR! fatal: Could not read from remote repository.
npm ERR!
npm ERR! Please make sure you have the correct access rights
npm ERR! and the repository exists.

I'm not really sure how to solve that problem but I found this  and this.
Hope this help you ^ - ^.

Hello, please download and install gitbash here

Try the solutions above. It should be worked.

aku udah install ini tapi masih bermasalah

aku udah install ini tapi masih bermasalah

@SlavyanDesu  help @VideFrelan

HELP ME

Hi, try:

npm cache clean and after npm install (If needed use npm cache clean --force)
npm config set registry http://registry.npmjs.org/ (change to HTTP) and after npm install
or
npm config set registry https://registry.npmjs.org/ (change to HTTPS) and after npm install

Let us know how everything goes, and have a nice day. :D

Ok, change the version of open-WA directly from packages.json file

Then delete the node_modules directory again and try this:

npm cache clean -f
npm install -g n
n stable

Maybe that will work?

2. npm install -g n

thanks for help me, but
C:\Users\DWI PUTRA\BocchiBot>npm install -g n
npm ERR! code EBADPLATFORM
npm ERR! notsup Unsupported platform for<EMAIL_ADDRESS>wanted {"os":"!win32"} (curren
t: {"os":"win32","arch":"x64"})
npm ERR! notsup Valid OS:    !win32
npm ERR! notsup Valid Arch:  undefined
npm ERR! notsup Actual OS:   win32
npm ERR! notsup Actual Arch: x64
npm ERR!      C:\Users\DWI PUTRA\AppData\Local\npm-cache_logs\2021-05-20T18_36_5
7_558Z-debug.log
C:\Users\DWI PUTRA\BocchiBot>


ts: remove duplicate functions

So a bunch of these functions now exist on web3 but didn't exist there before?

i guess the question is

is the behavior still going to be the same for all of these functions in web3
is it a breaking change for anyone
is there anywhere else that the way these functions are being called needs to change?

1: I mean you're just deleting them so it will be up to anyone handling the migration to the web3 versions, if they use any different set of inputs?
2: ok, i see you've listed it as a breaking change in the changelog,

[ ] Maybe also note in the changelog that these functions are now available via the web3 library and that associated_address is now synchronous
3: I think that just deleting the functions + using typescript should have been enough to raise any compile errors if the functions were being used.


Fixup Bar options

It's now able to be used in the reference app.

What happens to the color and hover options?

Discussed with @ronichoudhury IRL and addressed his question. Basically color and hover are not exposable as field options, but should be and then made part of the options spec. I'll make an issue for this.


Add browser instructions with CDN link.

@bhazzard @dskvr we can use this commit hash which is off of the cdn branch we've created
<script<EMAIL_ADDRESS>integrity="sha384-0nvZuWr1W0MSN5pWlMpm25rItkptSPOA2c6HuvizniLkx5BLn7R9t0LGukX+SCqS" crossorigin="anonymous"></script>

After discussing with several developers, there is a preference for building local packages with webpack. So I'm going to close this and wait for community feedback.


Added reviewersList() in RevisionApiRestClient

Hi!
I added the possibility to retrieve a list of reviewers for a specific revision. Apparently this functionality is supported by the Rest Gerrit API (here).
However, I had to update the RevisionApi class. I hope this is not an issue since the Gerrit API seems to have been changed as well.
Also, I might be totally wrong, but I noticed that RevisionReviewerApi reviewer(String id) seems to not be supported anymore.
I did not touch it yet, but shall we consider to remove it? or might it be useful to support older versions of Gerrit?

However, I had to update the RevisionApi class. I hope this is not an issue since the Gerrit API seems to have been changed as well.

I sync the com.google package from time to time with the official Gerrit sources. You can sync in this change RevisionApi.java in order to get the new method(s). In some special cases, I keep some old code after sync, just for backward compatibility.

Thank you!
How can I do the sync? Is there a standard way to be followed?

How can I do the sync? Is there a standard way to be followed?

Plain copy & paste so far. And then diffing and checking the changes manually.

How can I do the sync? Is there a standard way to be followed?

Plain copy & paste so far. And then diffing and checking the changes manually.

Perfect, thank you!

I checked RevisionApi in the master branch and it seems no such method was added. I had a look also at the stable-3.2 branch to check if maybe it was added in a different version, but it is not there either.
I am officially confused now. I don't understand why it is mentioned in the documentation but not implemented in the RevisionAPI.
I thought it was supposed to work in a similar fashion as the method listReviewers() in the ChangeApi class.
At this point, I think we can close this PRs and postpone the addition of this functionality. What do you think?
After this, I will check if RevisionApi needs to be updated anyway. :D

I checked RevisionApi in the master branch and it seems that no such method was added.

Good point - I'd assume that this just not got added in their API. I think I've seen similar cases in the past. You could open a Gerrit change for the official Gerrit source, but just adding it to the API would not work. In that case, you would also need to create the impl of their API (they use this API for their impl also internally and I've just decided to use the same API for this lib when I've started working on it). But probably before starting working on that source code, you could also ask on their mailing list if it was their intention to not add this to the API or if just nobody has implemented it so far.
Btw, I think this new method should be called reviewers() to be consistent with ChangeApi?

After this, I will check if RevisionApi needs to be updated anyway.
I think we should sync the whole extensions package at some point. This is not documented, and involves some manual "cleanups"... But since we depend now on Java 8 language level, it should be a lot easier.

Thank you, I will open a discussion in their google group (Repo discuss) and see how it goes from there.
Since I guess it might some time for this functionality to be (if possible) included in the current Gerrit API, maybe we could close this PRs and move to this discussion in a related issue. What do you think?
In case, I will post there the outcomes of the discussion with the developers of Gerrit.

Since I guess it might some time for this functionality to be (if possible) included in the current Gerrit API, maybe we could close this PRs and move to this discussion in a related issue. What do you think?

For me, it is fine to keep this PR open for now and keep the discussion here. Thanks for working on this.

I got a reply from the Gerrit developers. Apparently, GET reviewers is a change-based action and not a revision-based action.
So, the main REST endpoint for listing reviewers is change-based: (e.g., https://gerrit-review.googlesource.com/a/changes/gerrit~270296/reviewers/)
I was a bit confused because the API allows to do this: https://gerrit-review.googlesource.com/a/changes/gerrit~270296/revisions/1/reviewers/
However, it is still change-based despite of how it looks like.
If you are interested the thread is available here.
Based on this, I think there is no reason to merge the changes of this PR into the codebase.

@EFregnan Thanks!


During build docker image i am getting issue

ERROR: failed to solve: process "/bin/sh -c set -ex; mkdir -p /myapp/passwordcockpit; cd /myapp/passwordcockpit; git clone -v https://github.com/passwordcockpit/frontend.git /myapp/passwordcockpit; git checkout dev-1.2.0; git pull origin dev-1.2.0" did not complete successfully: exit code: 1

Branch dev-1.2.0 no longer exists, for what reason do you want to download this branch?

Does the issue remain open?


Add multipass instruction and improve k8s commands

This PR add a section for deploying with multipass which utilizes the charm-dev blueprint for faster dev setup. It also fixes the microk8s instructions with the appropriate snap commands. Finally, it updates charmcraft and lxd version to be aligned with the multipass blueprint for consistency.

@maabujayyab could you please take another look?


How to reproduce the results?

Hi, thanks for uploading the code. Could you please write some examples of how to reproduce some results in the paper? Since markdowns barely exist in the code.
For example, how to reproduce:

LS-MNMT that random initialized.
HLT-MT without any pre-trained model or SLP.
HLT-MT that without any pre-trained model but with SLP.

Furthermore, I found it quite ambiguous for your HLT-MT Training example, since you use two_stage_sparse_transformer, what does this stands for? HLT-MT with SLP?
Thank you in advance!

Thanks for your attention.
The final model, with the SLP module and pre-trained model initialization, is in this file (two stage sparse transformer). The SLP module is required in our method.

Without SLP, our model will become a vanilla encoder-decoder Transformer structure.
Without the pre-trained model (XLM-R), our model will be randomly initialized by default.
With the pre-trained model, both the encoder and decoder of our model will be initialized by the pre-trained model.

Thanks for your quick response!
I intended to reproduce the results without pre-trained models (third row in Table 3). If I understand correctly, I can just ignore --pretrained-infoxlm-checkpoint, and set --init-encoder-only --init-decoder-only?
Furthermore, could you let me know which task you used for LS-MNMT? Perhaps it is language_specific_transformer?

I intended to reproduce the results without pre-trained models (third row in Table 3). If I understand correctly, I can just ignore --pretrained-infoxlm-checkpoint, and set --init-encoder-only --init-decoder-only?

Yes. As Line 571 and Line 577 in two_stage_sparse_transformer show, the encoder will be initialized with the XLM-R state dict if we pass the --init-encoder-only parameter to the training script in README. Similarly, if we pass the --init-decoder-only parameter, the decoder will be initialized with the same XLM-R state dict.
Therefore, if you do not want to use the pre-trained models, do not pass --init-encoder-only or --init-decoder-only to the training script.
As for --pretrained-infoxlm-checkpoint, we can ignore this parameter, meaning we do not provide a valid model checkpoint, as mentioned in the code.

Furthermore, could you let me know which task you used for LS-MNMT? Perhaps it is language_specific_transformer?

LS-MNMT: language_specific_transformer.py

I intended to reproduce the results without pre-trained models (third row in Table 3). If I understand correctly, I can just ignore --pretrained-infoxlm-checkpoint, and set --init-encoder-only --init-decoder-only?

Yes. As Line 571 and Line 577 in two_stage_sparse_transformer show, the encoder will be initialized with the XLM-R state dict if we pass the --init-encoder-only parameter to the training script in README. Similarly, if we pass the --init-decoder-only parameter, the decoder will be initialized with the same XLM-R state dict.
Therefore, if you do not want to use the pre-trained models, do not pass --init-encoder-only or --init-decoder-only to the training script.
As for --pretrained-infoxlm-checkpoint, we can ignore this parameter, meaning we do not provide a valid model checkpoint, as mentioned in the code.

Furthermore, could you let me know which task you used for LS-MNMT? Perhaps it is language_specific_transformer?

LS-MNMT: language_specific_transformer.py

Thank you for the details! I tried to reproduce the result, however, I got very different results (many of the language pairs have much worse results than MNMT baseline), could you please provide the detailed hyper-param setting for the 1. HLT-MT without pre-trained models; 2. LS-MNMT.
Because one potential reason could be some parameters need to be changed when applying HLT-MT without the pre-trained model such as: --swap-adapter 0 --start-hard-epoch 1 --hard-adapter 0.5 --end-soft-epoch 5 --disparity-weight 1.0.

I intended to reproduce the results without pre-trained models (third row in Table 3). If I understand correctly, I can just ignore --pretrained-infoxlm-checkpoint, and set --init-encoder-only --init-decoder-only?

Yes. As Line 571 and Line 577 in two_stage_sparse_transformer show, the encoder will be initialized with the XLM-R state dict if we pass the --init-encoder-only parameter to the training script in README. Similarly, if we pass the --init-decoder-only parameter, the decoder will be initialized with the same XLM-R state dict.
Therefore, if you do not want to use the pre-trained models, do not pass --init-encoder-only or --init-decoder-only to the training script.
As for --pretrained-infoxlm-checkpoint, we can ignore this parameter, meaning we do not provide a valid model checkpoint, as mentioned in the code.

Furthermore, could you let me know which task you used for LS-MNMT? Perhaps it is language_specific_transformer?

LS-MNMT: language_specific_transformer.py

BTW, I found --init-encoder-only is commented as if set, don't load the InfoXLM weights and embeddings into decoder, same as --init-decoder-only, so I guess this means if I run HLT-MT without pre-trained model, I should pass them?
Furthermore, I also tried to run without --init-encoder-only & --init-decoder-only, and got the following errors. Could you please double check it?
-- Process 3 terminated with the following error:
Traceback (most recent call last):
File "hlt-mt-env/lib/python3.8/site-packages/torch/multiprocessing/spawn.py", line 69, in _wrap
fn(i, *args)
File "HLT-MT/fairseq/distributed_utils.py", line 333, in distributed_main
main(cfg, **kwargs)
File "HLT-MT/fairseq_cli/train.py", line 77, in main
model = task.build_model(cfg.model)
File "HLT-MT/fairseq/tasks/translation_multi_simple_epoch.py", line 216, in build_model
return super().build_model(args)
File "HLT-MT/fairseq/tasks/fairseq_task.py", line 566, in build_model
model = models.build_model(args, self)
File "HLT-MT/fairseq/models/init.py", line 93, in build_model
return model.build_model(cfg, task)
File "HLT-MT/fairseq/models/transformer_from_pretrained_infoxlm.py", line 67, in build_model
return super().build_model(args, task)
File "HLT-MT/fairseq/models/transformer.py", line 235, in build_model
decoder = cls.build_decoder(args, tgt_dict, decoder_embed_tokens)
File "HLT-MT/fairseq/models/two_stage_sparse_transformer.py", line 411, in build_decoder
return TwoStageSparseDecoder(args, tgt_dict, embed_tokens)
File "HLT-MT/fairseq/models/two_stage_sparse_transformer.py", line 707, in init
assert hasattr(args, "high_langs") and hasattr(args, "low_langs"), "Please set high- and low-resource languages"
AssertionError: Please set high- and low-resource languages

The full implementation of HLT-MT is certainly better than the baseline model, as we claimed in the paper about our method's effectiveness. This repository is all the code of HLT-MT implementation.
Unfortunately, reproducing exactly the same results requires strictly following all the experimental settings, including but not limited to data usage, method implementation, hyper-parameter setup, training settings (such as max epoch, batch size, and learning rate), results evaluation, etc.
In addition, the training process is always coupled with randomness, which helps bring better results but sometimes harms reproducibility, as commonly happens in the field.

As for the specific running errors, please debug on your own.
The implementation of HLT-MT is elaborated on in the paper and our code implementation. As for other experimental settings, we use other code versions described in their own paper and code implementation.

The full implementation of HLT-MT is certainly better than the baseline model, as we claimed in the paper about our method's effectiveness. This repository is all the code of HLT-MT implementation.
Unfortunately, reproducing exactly the same results requires strictly following all the experimental settings, including but not limited to data usage, method implementation, hyper-parameter setup, training settings (such as max epoch, batch size, and learning rate), results evaluation, etc.

This is exactly what I mean by providing the specific hyper-parameter setting, since you have provided the a. data source; b. method implementation (codebase). Yet, hyper-parameters and training settings are not given. Consequently, this makes other researchers harder to reproduce the result. Besides, I'm not asking for the settings for a completely different experimental setup, instead, I'm asking for setups of Table 3 in the paper.

As for the specific running errors, please debug on your own.

I‘m not blaming the author because I cannot reproduce the same result, instead, I'm asking the author for guidance and help. Furthermore, I found the response quite rude since it is your responsibility to provide a clear codebase and guidance for people to reproduce your experiment, otherwise, what is the point of uploading code?

Sorry if you find the wording uncomfortable, we did try to help and guide you, as shown in previous answers.
This codebase is the full version of HLT-MT to show the core ideas of our method. For other settings/methods, we either slightly modify the current codebase or re-implement those methods according to their original papers. These counterparts are not provided here, and we are not maintaining and updating the code now. Although not the whole codebase of all experiments and methods, we believe releasing this final version has certain contributions.

Yet, hyper-parameters and training settings are not given.

The hyper-parameters are provided in the training script in the README document (HLT-MT Training).

Furthermore, I also tried to run without --init-encoder-only & --init-decoder-only, and got the following errors. Could you please double-check it?

As for the presented running errors, whether we do or do not want to use the pre-trained model to initialize the encoder/decoder, there are only several lines to change in the code. If you run the code line by line in the debugging mode, solving AttributeError such as "object has no attribute" should be easy. Specifically, check the Line 711 of two_stage_sparse_transformer where self.high_lang_tensor is defined.


MultiPartInputFile::header doesn't check for out-of-bounds access

Should it throw Iex::ArgExc? Or at least use at()?
https://github.com/AcademySoftwareFoundation/openexr/blob/a00575feb645189354097d9b8808aa3030a800b0/src/lib/OpenEXR/ImfMultiPartInputFile.cpp#L194
const Header & MultiPartInputFile::header(int n) const { return _data->_headers[n]; }

That seems sensible. All methods in MultiPartInputFile and MultiPartOutputFile that take a part number should do bounds checking. Throwing ArgExc would be better than just using at(), so a more informative error message can be thrown and negative values for n can be handled.


docs: v2 fr translations of homepage's new sections and community examples link

Hello @rrousselGit, hope you're doing well.
Description
This PR is an attempt to translate certain sections in docs homepage and some community examples link.

Thanks! Although these aren't really ready so they'll likely change. But that's fine :)

Thanks! Although these aren't really ready so they'll likely change. But that's fine :)

You're welcome.
Oh okay, no worries. It will be a pleasure to re-work on it :)


docs: update README.md

Summary
fixed typo.
Changes

specialiazed -> specialized

User experience

Please share what the user experience looks like before and after this change

Checklist
If your change doesn't seem to apply, please leave them unchecked.

[ ] I have performed a self-review of this change
[ ] Changes have been tested
[ ] Changes are documented

Is this a breaking change?
RFC issue number:
Checklist:

[ ] Migration process documented
[ ] Implement warnings (if it can live side by side)

Acknowledgment
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.
Disclaimer: We value your time and bandwidth. As such, any pull requests created on non-triaged issues might not be successful.

Thanks @eltociear for the PR.


Wrong dates messes up the order of the manga list

Device information

Neko version: v<IP_ADDRESS>
Android phone & version: S21 ultra Android 11

Steps to reproduce
Open the app and go to your library and order it by release date then go to the first one (assuming it's set to show the newest first). If you can't do it try following Ayakashi Triangle or Dandadan, with the English version of the chapters.
Expected behavior
It should  order the mangas by the time a chapter is released, and in each chapter show when it was really released, like in the mangadex website.

Actual behavior
Particularly with MangaPlus Scanlator group it shows the release date for their recent chapters to be December 31 of 2037, putting those chapters first on the list.

Other details
It probably happens because mangadex redirects you to MangaPlus's website when you open their chapters.
And it happens in quite few mangas, all scanlated by them.

I've been having the same issue for days now. My app and android version are the same too. Nearly all of them are MagaPlus and say December 31st 2037 but at least one is from Bilibili and says February 12th 2022.

fixed in <IP_ADDRESS>


Backports to 5.10:  HSEARCH-3163,  HSEARCH-3168,  HSEARCH-2933

Because master is now 5.11, not 5.10.
https://hibernate.atlassian.net/browse/HSEARCH-2933
https://hibernate.atlassian.net/browse/HSEARCH-3168
https://hibernate.atlassian.net/browse/HSEARCH-3163

ah, ok. Good catch! merged.
We normally wait a little bit so to not need backports as there always is a .1 :)