Set up jekyll theme

We are setting up a website for a research project and academic collaboration centered at the University of Pennsylvania. The primary audience for the site will be other academics who may be interested in collaborating with the group, potential funders who may want to support our work, and study participants who want to learn more about what we do.
The task:
I would like to use Jekyll and GitHub pages (hosted in this repo) to manage the site. It will contain only static content, so the task here is to identify an appropriate Jekyll theme and customize it with our colors, fonts, and logos.
I have provided some boilerplate pages that you can use to demonstrate the theme. Feel free to modify or adjust them as necessary - I'm not a Jekyll expert, so this is just my ignorant guess as to what will be needed.
The general structure should be something like
index
|-- tools
|-- participants
|-- researchers
|-- team

Style inspirations:
The assets folder contains a pdf of the lab's PowerPoint template, which is a nice simple aesthetic that I'd like to employ. Here is one reference image from that template:

I like a predominantly white background, to make it easy to embed images and figures
The four-color bar at the bottom of this slide could be a nice component at the base of a header, if it made sense.

I'd also like the page to seem familiar to the lab's website, https://css.seas.upenn.edu/. (I don't mean that it should copy the lab websites's layout, but that they should obviously be consistent parts of the same organization).

Colors
Specific colors and fonts should be consistent with Wharton's standards here:

Colors: https://standards.wharton.upenn.edu/color/
Consistent with the lab's powerpoint template, I'd like to lean predominantly on these colors:

Primary colors:

Secondary colors
Of the secondary colors suggested in Wharton's style guide, I have a preference for these:

Fonts
Fonts should be consistent with the Wharton design standards here: https://standards.wharton.upenn.edu/typography/

It is important that the fonts be readily available to all users, so if we need to fall back to Arial throughout, I'm ok with that.

Images
The Assets folder of this repository has several logos and images that are available, logos for Wharton, Penn Engineering, and the CSS lab should be at the bottom, probably.

There are also several other images that we can use as filler:

Submitting the task
Successful completion of this task involves:

[ ] 1. Identifying and recommending a Jekyll theme that fits our general needs.
[ ] 2. After checking in with us about the chosen theme, customizing the theme with our organization's style, colors, typefaces, and logos.
[ ] 3. Submitting a Pull Request from a fork of the website repository that demonstrates the theme in use.

Please fork this repository and submit your contributions as a pull request to this repository with the necessary changes made. Please also include several screenshots in the /screenshots/ folder so that I can compare what I see in my browser with the design as it shows up in your browser.
Feel free to ask clarifying questions either in this issue or in Upwork, I will try to post answers here as well. Don't assume that I know what I'm talking about, and if I've asked for something that doesn't make sense, tell me so and explain to me what I ought to be doing instead.
I am seeking submissions from several individuals (all will be paid) and plan to choose among them or fuse components of each. I expect to have similar work in the future as we expand the project.
Timeline
I would love to have a recommendation from you on what theme to use by June 6th, and a draft PR by June 10 if possible. I will be working on writing the final text in the meantime.
My priorities

I want the site to be easily maintained by people who don't really know what they are doing (ie, me). As a result, I have a preference for themes that are already GitHub compatible, but if a different theme was significantly superior I would be willing to entertain that suggestion.
I want the implementation to be simple and robust to future possible changes in how GH pages serves static websites

What is not included in this project's requirements
I am NOT expecting you to do any of these:

find or create new images
create any text or copy

resources

https://docs.github.com/en/pages/setting-up-a-github-pages-site-with-jekyll/adding-a-theme-to-your-github-pages-site-using-jekyll

Question:

"should I use only Jekyll Theme? If so, I will do it with Jekyll. But, if not, I can do it with another themes or libraries that would enable make it better."

My answer:

I need something that can be deployed easily to Github pages - Jekyll seems to be the simplest solution for managing the website after you set it up. If you need to use a Jeyll plugin, I'm ok with that.
I'd rather have something simple and maintainable quickly than something fancy that takes longer or that I can't maintain myself."


update snakeyaml from 1.20 to 1.24

https://mvnrepository.com/artifact/org.yaml/snakeyaml

Is there a special motivation for this or just because it was upgraded?

https://bitbucket.org/asomov/snakeyaml/wiki/Changes Fixes but use jackson 2.9.8 (must be upgraded to 2.9.9).


Asymmetric chip explosion

When exploding asymmetric chips have different directions (they are rotated by 4 different rotation matrices), but at the end state they are all facing one direction => problem at the end of transition (visible instant rotation).

affected: green set

one solution: swift rotate after landing

partially solved by swift rotate after landing in branch swift rotate after landing in branch asym-swift-post-rotation

soved already


I want to use other api to transcribe my voice,how can I extend the speechToText api?

Is there any way to extend the speechToText api?
speechToText
Type: true | {
     webSpeech?: true | [WebSpeechOptions](https://deepchat.dev/docs/speech#WebSpeechOptions),
     [azure?: AzureOptions](https://deepchat.dev/docs/speech#AzureOptions),
     [textColor?: TextColor](https://deepchat.dev/docs/speech#TextColor),
     displayInterimResults?: boolean,
     translations?: {[key: string]: string},
     [commands?: Commands](https://deepchat.dev/docs/speech#Commands),
     [button?: ButtonStyles](https://deepchat.dev/docs/speech#ButtonStyles)
}

Default: {webSpeech: true}

Transcribe your voice into text and control chat with commands.
webSpeech utilises [Web Speech API](https://developer.mozilla.org/en-US/docs/Web/API/Web_Speech_API/Using_the_Web_Speech_API) to transcribe your speech.
azure utilises [Azure Cognitive Speech Services API](https://learn.microsoft.com/en-us/azure/ai-services/speech-service/speech-to-text) to transcribe your speech.
textColor is used to set the color of interim and final results text.
displayInterimResults controls whether interim results are displayed.
translations is a case-sensitive one-to-one mapping of words that will automatically be translated to others.
commands is used to set the phrases that will trigger various chat functionality.
button defines the styling used for the microphone button.

I just want to use my self host api,is there any standard interface?

Hi @wysstartgo. The speechToText property uses the Speech To Element to facilitate its real-time transcription capabilities.
We may extend that library in the future, but for now self-hosted speech capabilities are limited to Web Speech API and Azure Speech Services API.
If you want to implement this functionality yourself, you can fork/clone the project and edit the speechToText.ts file. Running this project is very easy and it is described in the Create your own Deep Chat component section of the README.md.
I will close this issue but if you have any further questions, let me know!

okay,thanks!


How to reload the checkpoints for LLM finetuning?

May I ask how to resume from the latest checkpoint using autotrain llm if it crashed. I only found one from the dreambooth trainers, but I cannot find the resume_from_checkpoint anywhere else.
I was wondering if it has currently not fully supported this feature yet or I was missing something? It would be super helpful if anyone can kindly pointing out how to do that using autotrain?
Many thanks!

  --optimizer OPTIMIZER
                        Optimizer to use
  --scheduler SCHEDULER
                        Scheduler to use

I think I can just use the two parameters?

@xihajun  sorry If my question sounds dumb, but why these 2 parameters would load from checkpoint?


"Your webhook is failing" emails

I've been actively developing an app using ngrok and have had multiple public urls.
I believe webhooks are automatically created and now I have a ton of emails saying that webhooks to those now expired urls are still receiving requests.

I've checked the stores settings under Settings > Notifications > Webhooks and it doesn't list any registered webhooks
How do I unregister these development webhooks?

Settings > Notifications > Webhooks only shows store/admin created webhooks.
To unregister development webhooks either just ride the email spam and let shopify self nerf.
Or manually call the webhooks list/delete endpoint as described here:
https://help.shopify.com/api/reference/webhook
Consider adding a boot function to your app that

GET /admin/webhooks.json

And then

DELETE /admin/webhooks/#{id}.json

Each webhook returned by the get.
Since you auth with Client/Auth, you'd first have to jump the oAuth loop and then do a list and delete before calling the registerWebhook in afterAuth

Thanks!


Upgrade MediatR

Description
Upgrade MediatR

Codecov Report

Merging #95 (e354577) into main (32d90ed) will decrease coverage by 30.34%.
The diff coverage is 0.00%.

@@             Coverage Diff             @@
##             main      #95       +/-   ##
===========================================
- Coverage   83.07%   52.73%   -30.34%
===========================================
  Files         429      331       -98
  Lines        9838     6919     -2919
===========================================
- Hits         8173     3649     -4524
- Misses       1339     3085     +1746
+ Partials      326      185      -141

Impacted Files
Coverage Δ

.../MoveIn/Notifications/NotifyGridOperatorHandler.cs
0.00% <ø> (-92.86%)
:arrow_down:

...ion/Processing/EnqueueOutgoingMessagesBehaviour.cs
0.00% <ø> (-100.00%)
:arrow_down:

...iguration/Processing/RaiseDomainEventsBehaviour.cs
0.00% <0.00%> (-91.67%)
:arrow_down:

...re/Configuration/Processing/UnitOfWorkBehaviour.cs
0.00% <ø> (-94.45%)
:arrow_down:

... and 258 files with indirect coverage changes
:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more


Add a license

Hi Ryan @Cryaaa ,
I was just searching for something here in your excellent repository. Would you mind adding a license to it? It would enable others to reuse your work. Ideally, you choose a license that is compatible with other repositories in the field. I'm also happy to chat about that.
https://choosealicense.com/
Thanks!
Best,
Robert

This is obviously done. Thanks!


Missing favorites

Hi, thanks for this helpful extension. Today I see the favorites are not visible anymore, instead I receive this error in the screenshot. Please let me know what other info you need in order to be able to investigate this.
Version 2.1.2

I'm also having the same problem

@csicky , @andersomsousa1406,
Thank you for your feedback.
Please post your .favorites.json contents.
There was some favorites.json structure modification.

[
    {
        "type": "File",
        "name": "d:\\folderName\\src\\modules\\translations.js",
        "parent_id": null,
        "workspacePath": "src\\modules\\translations.js",
        "id": "esuvqW3gCJmDarOV"
    },
    {
        "type": "File",
        "name": "d:\\folderName\\src\\modules\\utils.js",
        "parent_id": null,
        "workspacePath": "src\\modules\\utils.js",
        "id": "GIcbfgMBDt0mSAK7"
    },
    {
        "type": "File",
        "name": "d:\\folderName\\src\\store\\getters.js",
        "parent_id": null,
        "workspacePath": "src\\store\\getters.js",
        "id": "GrbTs18C0gXmeYUK"
    }
]

Here it is, but I guess in this case it's enough to remove the files and add them again and I will have the new JSON.

Wow, you are so fast! Thank you for the fix, I have now version 2.1.4 and the favorites are back.

@csicky ,
I am just typing :
Please update to vesion 2.1.5. Problem should be fi

@csicky ,
Thank you for your feedback.
Latest version is 2.1.5
If you have any problems, open issue.


Resolving issue 158. Upon convo, we decided to keep original sorting but adding white logos after.

Remove this sentence and insert the description of the pull request here.

✅ By submitting this PR, I have verified the following

[X] Checked to see if a similar PR has already been opened 🤔
[X] Reviewed the contributing guidelines 🔍
[X] Added my name to the bottom of the list under the Contributors section in the README.md with a link to my personal website or GitHub profile 👥

Yeah, I ended up sending over 2 more commits. All done on my end.
ᐧ
On Mon, Nov 5, 2018 at 5:34 PM Frances Coronel<EMAIL_ADDRESS>wrote:

@fvcproductions commented on this pull request.
In src/sass/_icons.scss
https://github.com/techqueria/website/pull/170#discussion_r230939472:

@@ -10,6 +10,10 @@
color: $twitter;
}

+.footer-icons {

color: white;

You can change in your branch. No need for another PR
—
You are receiving this because you were assigned.
Reply to this email directly, view it on GitHub
https://github.com/techqueria/website/pull/170#discussion_r230939472,
or mute the thread
https://github.com/notifications/unsubscribe-auth/APmxJjFnTdsOqZAYPxPbqLboziFSIA54ks5usL0QgaJpZM4YPRux
.

--
Thank You,
William Mena
Software Engineer - Video Editor - 2D Motion Graphics
PERSONAL WEBSITE http://www.williammena.com - LINKEDIN
https://www.linkedin.com/in/williammena/ - GITHUB
https://github.com/WilliamMena

Let's also make sure to resolve the merge conflict - thank you @WilliamMena! 🙇♀

Looks marvelous - thanks for your patience @WilliamMena

Pffft, thank you for helping me. I'm learning along the way so I appreciate
the help.
On Thu, Nov 8, 2018, 1:59 PM Frances Coronel<EMAIL_ADDRESS>wrote:

Looks marvelous - thanks for your patience @WilliamMena
https://github.com/WilliamMena
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/techqueria/website/pull/170#issuecomment-437116349,
or mute the thread
https://github.com/notifications/unsubscribe-auth/APmxJoj4-CELWTR0slF45EnedIVPdDIvks5utH8igaJpZM4YPRux
.


Add new Progress events to help diagnose RefreshPorts & Tunnel Service Requests

Add new Progress events to help diagnose RefreshPorts & Tunnel Service Requests

Please see this PR for proposed usage:
https://github.com/microsoft/dev-tunnels/pull/377

abandoning as I'm adding these new events to a separate enumeration in tunnels-sdk


Feature: Add support for fetching meaning of a word.

Is your feature request related to a problem? Please describe
In some situations we need to get quick meaning of a word or slangs.
Describe the solution you'd like
I would write a python script for fetching meaning from urban dictionary api. The api itself is quite famous and have large database.
Describe alternatives you've considered
We might use any other api.

Sure go ahead


Feature: Make Head separate component

Move Head from _app to its own component and contain all Head logic within.
Easier/Cleaner to specify props from page level such as title, description, keywords etc.
Add title logic in the format of Jam3 Generator | The Relentless Pursuit of Better for home page and About | Jam3 Generator for other pages.

@artemleznikov looks like build has failed


e2e: fix k8s Fedora repo

Automatically detect latest stable k8s release. This becomes necessary because new repository URLs contain the version number.
Allow user to override k8s version to be installed.

PR #279 solves this problem.


Update issueLabeler.yml to fix label removal logic

Issue labeler currently adds back label if it is manually removed. These changes should fix this logic using the "labelRemoved" condition.

Looks good! Also we don't need the transformer label in this repo. Can we remove that one in this PR too please?


Documenting the compatible jdk version (8-17, ok) (>=18, bad)

Please specify the required JDK for compiling the delta repo. I tried with java 19, and sbt did not boot up. With java 11, it does build, albeit with quite some warnings. I would feel more comfortable if the README specified the jdk.
build/sbt compile seems to work with java 8, java 11, java 17.
build/sbt compile fails with java 18 and java 19.

Want to open a PR to update the readme? We officially support java 8


Run Mitogen as a Module

I am trying to run Mitogen as a module for my environment but I am having an issue that is similiar too @366 where it had a issue with 'Router' object has no attribute 'importer'.
Is there any way not to use if __name__ == "__main__":?

Have you tried the latest master version from Git?
yes
Mention your host and target OS and versions
host: Arch Linux
target: Red Hat 6
Mention your host and target Python versions
Both Python 3.6.4

CODE
import mitogen.master

import mitogen.core
from MitogenService import MitogenParentContextType
import logging
import mitogen.utils

class MitogenSshClass(object):

    def __init__(self,debug=False):

        self.broker = mitogen.master.Broker()
        self.router = mitogen.master.Router(self.broker)
        if debug:
            logging.basicConfig(level=logging.DEBUG)

    def closeAllConnections(self):
        self.broker.shutdown()

    def createConnection(self,hostname: str, username: str, password: str,
                 python_path: str = 'customPython',via: MitogenParentContextType = None):

        return self.router.ssh(
            hostname=hostname,
            username=username,
            password=password,
            python_path=python_path,
            via=via
        )

    def __enter__(self):
        None

    def __exit__(self,*args):
        if mitogen.core.CallError in args:
            print('Call failed:')
            for x in args:
                print(x)
            self.broker.shutdown()
        elif KeyboardInterrupt in args:
            for x in args:
                print(x)
            self.broker.shutdown()
        elif Exception in args:
            for x in args:
                print(x)
            self.broker.shutdown()
        else:
            None

prodIP = 'prod'
prodUsername = 'username'
prodPassword = 'password'

hostIP='host'
hostUserName='username'
hostPassword='password'

mitogenSshClass = MitogenSshClass(debug=True)

prod = mitogenSshClass.createConnection( hostname=prodIP, username=prodUsername, password=prodPassword,
                 python_path= 'customPython')

host = mitogenSshClass.createConnection( hostname=hostIP, username=hostUserName, password=hostPassword,
                 python_path= 'customPython',via= prod)

def Call_func():
    print("something")

with mitogenSshClass:
    host.call(Call_func)

Apologies for the delay replying to this. Your actual problem is the same as in #366.
I've yet to find any general approach to solving this. So far, the options seem to be:

go the crazy hacky route of carving up the module source code even more than already (the __main__ guard removal is already quite a hack!)
shipping bytecode/source for individual objects around. This doesn't work across major Python versions, and requires Mitogen to be able to find all dependencies for a particular object. That's very hard, and can't be solved in the general case (e.g. a function that uses exec()).
better guards against importing __main__ in particular. That's actually a tiny amount of code and what #366 is about.

I suspect most of the pain here is just the missing error/warning message when the __main__ guard is absent. Happy to hear your ideas :)
Thanks for reporting!

So I've thought about this over the past few days and really there isn't much to be improved upon if the __main__ guard is absent. There is no general way through static analysis to know either:

The set of statements that create only module globals as opposed to implement the main program flow. Even a human struggles at interpreting this, a machine would fail miserably.
The full set of dependencies a module object needs in order to be reconstituted on the remote end. Given globals(), vars(), locals() and exec(), it is generally impossible to implement this robustly with observing the running program.

While partial solutions to both of these are possible, at least for the time I'm not willing to spend time on them. The existing import mechanism is already fragile enough, and it is only dealing with whole modules at a time :)
Meanwhile there is now a __main__ guard warning implemented and #366 is closed, so I'm marking this one closed too.

This is now on the master branch and will make it into the next release. To be updated when a new release is made, subscribe to https://www.freelists.org/list/mitogen-announce
Thanks for reporting this!


stretched GUI on window resize, missing mouse, req: float on top

Heeey Hansi! Just testing out the laaatest Oscilloscope, since older 1.0.8 version as found on website - (ahem, could use an updated link to this) wouldn't display BlackHole routed signals on almost any student's computers. But this one is working greeeeat! Nevertheless, found two minor issues:

if i resize the window from the sides or corners, it stretches both the image and GUI until letting go then all is ok.
perhaps find to just hide everything while resizing if that's an issue? (Mac M1, MacOS Monterey)

if i hide the GUI manually with 'tab', the mouse is no longer visible within the window = perhaps a feature not a bug?

Lastly on the small request note – would be awesome if it could implement a 'Float on Top' option within that 'window' menu. While teaching, I've been using an HDMI input from camera on physical scope within a quicktime 'new movie' preview that is set to 'float on top' so it's always visible while giving tech inputs etc. This would also be greeat to have! Isn't there also a fullscreen transparency overlay option or perhaps I'm thinking of that from OsciStudio? (could also be nifty, like iterm2 does).

hey!

Heeey Hansi! Just testing out the laaatest Oscilloscope, since older 1.0.8 version as found on website - (ahem, could use an updated link to this) wouldn't display BlackHole routed signals on almost any student's computers. But this one is working greeeeat!

i've updated the website maybe the same day that you made this bug report https://oscilloscopemusic.com/software/oscilloscope/
either way, you should be able to find all versions here on github in the releases tab https://github.com/kritzikratzi/Oscilloscope/releases

if i resize the window from the sides or corners, it stretches both the image and GUI until letting go then all is ok.
perhaps find to just hide everything while resizing if that's an issue? (Mac M1, MacOS Monterey)

i've learned to live with it. resizing is deep inside openFrameworks, and while i do and did sometimes patch OF to work against this, it brings it's own set of issues. you will find some versions that resize continuously, and some that don't :)

if i hide the GUI manually with 'tab', the mouse is no longer visible within the window = perhaps a feature not a bug?

yes, sortof a feature, my thining was if you press "tab" to hide all ui, then you are probably using it for a performance, and don't want to accidentally show your cursor. does it bother you?

Isn't there also a fullscreen transparency overlay option or perhaps I'm thinking of that from OsciStudio

i would love this, but it's deep into OS territory. i found this https://github.com/jeffcrouse/ofxTransparentWindow and this https://github.com/glfw/glfw/issues/197 which are good starting points, but my time is a bit limited at the moment.

a 'Float on Top' option within that 'window' menu.

yes, a realisitic feature to add! i can do this quite soonish.

@kritzikratzi - I see you've done some more dev in past 7 months for this, including for apple silicon architecture?
just wanted to add a bump to the potential 'float on top' feature for next release. just attempted to screen record a collection of failed sketches with scope output, but sadly can't keep it visible on top... instead going with side by side.

yet another fancy feature for the macos release, did you consider adding the syphon framework into it? when embedding a syphon-server, then any VJ software etc could receive what's happening in oscilloscope to go forth wild style.

hi!
for reasons i'll be very busy until oct 31 :)
both -- syphon on osx and spout on windows -- should be in there and it should share as "oscilloscope", but i'm not sure it's working as intended with all the gatekeeper and sandbox screws tightened.
about the transparent windows: so far i dependend on OF0.11 and i think there's no native support for it, so it would be a lot of work. i can check if the situation is different with the latest OF, no clue.

float on top will be a whole lot easier when/if this is merged: https://github.com/openframeworks/openFrameworks/pull/8092


Documentation: update packages?

It looks like our documentation dependencies in combination currently force installation of a quite old version of sphinx (5.x, current version is 7.x) , and also our theme used (sphinx-rtd-theme==0.5.1, current version 1.x).
(see logs for a recent docs build here, for example: https://github.com/LiberTEM/LiberTEM/actions/runs/6233324633/job/16918297835)
For now this is a combination that seems to work, but we need to keep an eye on this, and maybe at some point find out what is causing the issue, and get things up to date again.
A similar issue can be seen in LiberTEM-live, where the outdated sphinx-rtd-theme causes the build to fail if we don't additionally constrain the sphinx version to <7... https://github.com/LiberTEM/LiberTEM-live/pull/131 - this should not be necessary, as the latest version of the theme does support the current sphinx version.

sphinx is still constrained to <7.3, which is already better than the old constraint. I'll check in #1638 if we can remove that constraint, too.

Still fails with current sphinx, I'll revert:
/home/runner/work/LiberTEM/LiberTEM/docs/source/app/processing.rst:22: WARNING: domain for external cross-reference not found: 'ptychography40'
WARNING: cannot cache unpickable configuration value: 'nbsphinx_custom_formats' (because it contains a function, class, or module object)


Custom jvp of dominant eigensolver yields wrong vjp behavior

I'm using jax to test the AD of dominant eigensolver. As an example, the function symeig below returns only the lowest eigenvalue and corresponding eigenvector of a real symmetric matrix.
from jax.config import config
config.update("jax_enable_x64", True)
import jax
from jax import grad
import jax.numpy as jnp

def symeig(A):
    eigvals, eigvectors = jax.scipy.linalg.eigh(A)
    eigval, eigvector = eigvals[0], eigvectors[:, 0]
    return eigval, eigvector

This function is itself differentiable, since it just wraps the full diagonalization routine jax.scipy.linalg.eigh. Nevertheless, I manually implemented the jvp rule, which is well known as the standard perturbation theory in the context of quantum mechanics.
# jvp version 1: "normal" tensor operations using the whole spectrum.
symeig_jvp1 = jax.custom_jvp(symeig)
@symeig_jvp1.defjvp
def symeig_jvp1_jvp(primals, tangents):
    A, = primals
    dA, = tangents
    eigvals, eigvectors = jax.scipy.linalg.eigh(A)
    eigval, eigvector = primal_out = eigvals[0], eigvectors[:, 0]

    deigval = eigvector.dot(dA).dot(eigvector)
    F = eigvals - eigvals[:, None] + jnp.eye(A.shape[0])
    F = 1. / F - jnp.eye(A.shape[0])
    deigvector = eigvectors.dot( (F * eigvectors.T.dot(dA).dot(eigvectors))[:, 0] )
    tangent_out = deigval, deigvector

    return primal_out, tangent_out

On the other hand, there exists an alternative implementation of the jvp rules, in which the tangent of the eigenvector is obtained by solving a low-rank linear system. Such an approach turns out to be much more efficient when the matrix to be diagonalized is huge. The reason is that it requires no access to full eigen-spectrum of the matrix, and one thus can resort to sparse eigensolvers like the Lanczos algorithm. See, e.g., https://journals.aps.org/prb/abstract/10.1103/PhysRevB.101.245139 for details.
# jvp version 2: linear system solver.
symeig_jvp2 = jax.custom_jvp(symeig)
@symeig_jvp2.defjvp
def symeig_jvp2_jvp(primals, tangents):
    A, = primals
    dA, = tangents
    eigval, eigvector = primal_out = symeig_jvp2(A)

    deigval = eigvector.dot(dA).dot(eigvector)
    b = -dA.dot(eigvector)
    b -= eigvector * eigvector.dot(b)
    Aprime = A - eigval * jnp.eye(A.shape[0])
    deigvector, _ = jax.scipy.sparse.linalg.cg(Aprime, b, tol=1e-12)
    tangent_out = deigval, deigvector

    return primal_out, tangent_out

The equivalence of the two jvp implementations can be confirmed by the test function test_jvp below. However, when I try to perform a reverse-mode AD computation by using jax's transpose mechanism from jvp to vjp rules, the second jvp implementation above yields incorrect gradient, which is shown in the test function test_grad below.
def test_jvp(A, dA):
    (eigval, eigvector), (deigval, deigvector) = jax.jvp(symeig, (A,), (dA,))
    (eigval1, eigvector1), (deigval1, deigvector1) = jax.jvp(symeig_jvp1, (A,), (dA,))
    (eigval2, eigvector2), (deigval2, deigvector2) = jax.jvp(symeig_jvp2, (A,), (dA,))

    assert jnp.allclose(eigval, eigval1) and jnp.allclose(eigval, eigval2)
    assert jnp.allclose(eigvector, eigvector1) and jnp.allclose(eigvector, eigvector2)
    assert jnp.allclose(deigval, deigval1) and jnp.allclose(deigval, deigval2)
    assert jnp.allclose(deigvector, deigvector1) and jnp.allclose(deigvector, deigvector2)

def test_grad(A, v):
    def make_loss(symeig, v):
        def loss_fn(A):
            _, eigvector = symeig(A)
            loss = jnp.abs(eigvector**2 - v**2).sum()
            return loss
        return loss_fn

    grad0 = grad(make_loss(symeig, v))(A)
    grad1 = grad(make_loss(symeig_jvp1, v))(A)
    grad2 = grad(make_loss(symeig_jvp2, v))(A)
    grad0 = 0.5 * (grad0 + grad0.T)
    grad1 = 0.5 * (grad1 + grad1.T)
    grad2 = 0.5 * (grad2 + grad2.T)
    assert jnp.allclose(grad0, grad1)
    assert jnp.allclose(grad0, grad2)    # AssertionError here!

key = jax.random.PRNGKey(0)
N = 100
A = jax.random.normal(key, (N, N))
A = 0.5 * (A + A.T)
key, subkey = jax.random.split(key)
dA = jax.random.normal(subkey, (N, N))
dA = 0.5 * (dA + dA.T)

test_jvp(A, dA)    # passed

key, subkey = jax.random.split(key)
v = jax.random.normal(subkey, (N,))
v /= jnp.linalg.norm(v)

test_grad(A, v)    # did not pass

I do not know much about the details of jax's transpose mechanism from jvp to vjp, but it seems to fail on the jvp version 2 above. Any clarification or correction is appreciated, since this implementation can be very useful for certain kinds of applications..

cc @j-towns and @shoyer, who have thought about eigh autodiff before. Also cc @mblondel, who has mentioned (in conversation) an issue before about transpose-of-jvp giving unexpected results.

This seems like something that definitely should work -- these partial eigenvalue solvers are quite useful for large scale problems.
I tried decreasing N and switching to np.testing.assert_allclose (to show the size of errors). It's clear that there's a large discrepancy here, though.
It might be worth looking at JAX's own test suite for eigh grads to see if that is more informative, e.g., something based of:
https://github.com/google/jax/blob/29187a3317c649c72bfeb06b6816dc09eb476050/tests/linalg_test.py#L393
There are definitely a lot of subtleties with defining and testing eigenvector derivatives, e.g., degeneracies, functions defined only on symmetric inputs, ambiguous phase, etc. Overall I'm still not sure if this is the best approach, or if perhaps it is better to define custom derivatives for better defined functions like matrix-valued functions / power-series.

In an attempt to narrow this down, I wrote a third version using jnp.linalg.solve instead of cg:
# jvp version 3: direct linear solve.
symeig_jvp3 = jax.custom_jvp(symeig)
@symeig_jvp3.defjvp
def symeig_jvp3_jvp(primals, tangents):
    A, = primals
    dA, = tangents
    eigval, eigvector = primal_out = symeig_jvp3(A)

    deigval = eigvector.dot(dA).dot(eigvector)
    b = -dA.dot(eigvector)
    b -= eigvector * eigvector.dot(b)
    Aprime = A - eigval * jnp.eye(A.shape[0])
    deigvector = jnp.linalg.solve(Aprime, b)
    tangent_out = deigval, deigvector

    return primal_out, tangent_out

Interesting, this function now fails the JVP test, too!
Looking at the calculation more carefully, I don't think your JVP rule is correct. The problem is that Aprime is a not full rank, so the linear solve is not well defined. It's been a while since I looked into this carefully, but as I recall you can either do a pseudo-inverse solve or solve some enlarged linear system to make this well defined.
In summary -- please double check your math, and then let's see if there's still a JAX bug  :)

@shoyer Thanks for the response! As you have noticed, the linear system involved in jvp version 2 is low-rank. The point, however, is that the linear system can be unambiguously specified.
For the eigenvalue problem A v_i = lambda_i v_i of a real symmetric matrix A, the jvp rule can be derived from perturbation theory and reads (assuming no degeneracy):

These formulas are implemented in jvp version 1. The essential point is that the tangent dv_0 for the desired eigenvector can also be obtained by solving the following low-rank linear system:

The second equation constrains dv_0 to be in the subspace spanned by all eigenvectors of A other than v_0, which has dimension N-1. As a result, this problem is "effectively full-rank", and can be solved by using iterative linear system solvers like jax.scipy.sparse.linalg.cg, as implemented in jvp version 2 above. The explicit solvers like jnp.linalg.solve, on the other hand, are not designed to tackle this kind of problem. This is why the version 3 code you wrote did not pass the jvp test.

Yes. @buwantaiji's math is correct. Also see https://math.mit.edu/~stevenj/18.336/adjoint.pdf: texts above eq. (6) and footnote 7.

OK, well regardless for debugging it would be helpful to make a version of this custom JVP rule that does not use cg. The would help narrow whether the issue is with custom_jvp or the custom autodiff machinery used inside cg itself (via lax.custom_linear_solve). It may also be JAX's rule for transposed linear solves implicitly assumes full rank, even if you don't need that to correctly calculate JVPs.

I made the following version of jvp rule using matrix pseudo-inverse jnp.linalg.pinv. It passes both tests test_jvp and test_grad.
# jvp version 3: pseudo-inverse.
symeig_jvp3 = jax.custom_jvp(symeig)
@symeig_jvp3.defjvp
def symeig_jvp3_jvp(primals, tangents):
    A, = primals
    dA, = tangents
    eigval, eigvector = primal_out = symeig_jvp3(A)

    deigval = eigvector.dot(dA).dot(eigvector)
    b = -dA.dot(eigvector)
    b -= eigvector * eigvector.dot(b)
    Aprime = A - eigval * jnp.eye(A.shape[0])
    Aprime_pinv = jnp.linalg.pinv(Aprime, rcond=1e-15)
    deigvector = Aprime_pinv.dot(b)
    tangent_out = deigval, deigvector

    return primal_out, tangent_out

The issue seems to be attributed to transpose of iterative solvers like cg.

This is very helpful, thank you!
On Wed, Jul 21, 2021 at 9:23 PM Hao Xie @.***> wrote:

I made the following version of jvp rule using matrix pseudo-inverse
jnp.linalg.pinv. It passes both tests test_jvp and test_grad.
jvp version 3: pseudo-inverse.symeig_jvp3 = @.***_jvp3.defjvpdef symeig_jvp3_jvp(primals, tangents):
A, = primals
dA, = tangents
eigval, eigvector = primal_out = symeig_jvp3(A)

deigval = eigvector.dot(dA).dot(eigvector)
b = -dA.dot(eigvector)
b -= eigvector * eigvector.dot(b)
Aprime = A - eigval * jnp.eye(A.shape[0])
Aprime_pinv = jnp.linalg.pinv(Aprime, rcond=1e-15)
deigvector = Aprime_pinv.dot(b)
tangent_out = deigval, deigvector

return primal_out, tangent_out

The issue seems to be attributed to transpose of iterative solvers like cg
.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/google/jax/issues/7302#issuecomment-884647565, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AAJJFVRSQKPVX6BLRMEPK63TY6MMDANCNFSM5AOZPU3A
.


Not authorized to perform sts:AssumeRole

Hey,
I have provided aws admin's access key id and secret key, but still i am getting following error.
2017-05-22 16:24:47,006 INFO: 'Problem Connecting to flowlog/CloudTrail Logs (ap-south-1)/eu-central-1:\nAn error occurred (AccessDenied) when calling the AssumeRole operation: Not authorized to perform sts:AssumeRole' [in /usr/local/lib/python2.7/dist-packages/security_monkey-0.9.1-py2.7.egg/security_monkey/exceptions.py:68]
Please let me know what am i missing. (I am new to AWS IAM).
Note - I have done setup in Docker.

Couple odd things:

Do you have an account called CloudTrail Logs (ap-south-1)?  (The region mismatch ap-south-1 vs eu-central-1 in that statement is odd.)
Typically you wouldn't run as admin.

If you have CloudTrail setup, it might be worth looking for any sts access denieds for the IAM User.  The requestParameters or response may contain more information.
It may be worth reviewing the IAM setup instructions:
https://github.com/Netflix/security_monkey/blob/develop/docs/iam_aws.md
Couple things I would check:

Does your IAM User have an inline policy allowing sts:AssumeRole?  Does the resource section of that policy map.
Does the SecurityMonkey IAM Role in the destination account have a trust policy (aka Assume Role Policy Document) that explicitly allows your IAM User?

Also, where on disk have you placed your access key and secret key?
Someone recently had this same problem and it was fixed by moving their credentials to /etc/boto.cfg.  They had previously been attempting to use ~/.aws/credentials.

Hey, Thanks for the reply.  I have followed following things to get this resolved.

Do you have an account called CloudTrail Logs (ap-south-1)? (The region mismatch ap-south-1 vs eu-central-1 in that statement is odd.)

I have disabled everything from accounts and just kept one for RDS (ap-southeast-1).

Typically you wouldn't run as admin.

Agreed.
Since I am doing setup on docker locally so creating AWS roles won't be useful. So i have created new user security_monkey on AWS IAM assigning SecurityMonkeyLaunchPerms and SecurityMonkeyReadOnly policies as mentioned on https://github.com/Netflix/security_monkey/blob/develop/docs/iam_aws.md#allow-securitymonkeyinstanceprofile-to-assumerole-to-securitymonkey
except Allow SecurityMonkeyInstanceProfile to AssumeRole to SecurityMonkey, as IAM user don't have such option, also I am not sure if this is required in case of IAM user.
After doing above steps, I am getting following error in security scheduler.

2017-05-23 11:04:17,376 INFO: 'Problem Connecting to cloudtrail/RDS (ap-southeast-1)/us-east-1:\nAn error occurred (AccessDenied) when calling the AssumeRole operation: User: arn:aws:iam::123456789012:user/security_monkey is not authorized to perform: sts:AssumeRole on resource: arn:aws:iam::123456789012:role/SecurityMonkey' [in /usr/local/lib/python2.7/dist-packages/security_monkey-0.9.1-py2.7.egg/security_monkey/exceptions.py:68]

SecurityMonkeyLaunchPerms is as follow
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "ses:SendEmail"
            ],
            "Resource": "*"
        },
        {
            "Effect": "Allow",
            "Action": "sts:AssumeRole",
            "Resource": "arn:aws:iam::*:role/SecurityMonkey"
        }
    ]
}

Any help on this.

@JayeshP : You will need to alter the SecurityMonkey IAM role's Assume Role Policy Document.
See the directions here: https://github.com/Netflix/security_monkey/blob/develop/docs/iam_aws.md#allow-securitymonkeyinstanceprofile-to-assume-to-the-securitymonkey-role
You will essentially do the same, but instead of an ARN to an IAM role, you will supply the ARN of your IAM User (per your comment):
{
    "Statement": [
        {
            "Effect": "Allow",
            "Principal": {
                "AWS": "arn:aws:iam::<YOUR ACCOUNTID GOES HERE>:user/security_monkey"
            },
            "Action": "sts:AssumeRole"
        }
    ]
}

Please re-open this issue if you continue to experience problems.


[ContextMenu][DropdownMenu] right click item should select

Bug report
Current Behavior
Right clicking on a context menu opens the browser context menu.
Expected behavior
Right clicking on a context menu should behave as a normal (left) click that acts as a select and does not open the browser context menu.
Reproducible example
https://www.radix-ui.com/docs/primitives/components/context-menu
Suggested solution
Modify menu item in https://github.com/radix-ui/primitives/blob/main/packages/react/menu/src/Menu.tsx
such that it behaves like a left click via handleSelect.
        onClick={composeEventHandlers(props.onClick, handleSelect)}
        onContextMenu={composeEventHandlers(props.onContextMenu, handleSelect)}

If developers want to change this behavior, they could call event.preventDefault() because of composeEventHandlers.
<ContextMenu.Item
  onContextMenu={e => e.preventDefault()}
/>

Additional context
Right clicking on browser context menu behaves like a normal click. Another example is Figma's context menu which behaves the same.

Hi @BrianHung, thanks for reporting this.
This is correct, and is something we took into account when building the Select.
We have a raft of pointer event enhancements we need to bring to the other menu components after learning things on Select. If that's ok with you I will close your PR for now and we will address it as part of bigger pointer event improvements.

See #657

Closing as duplicate, will be handled by #657


101 docs stale

just a courtesy note:
the "chromatix 101 docs" appear to be out of date.
import chromatix.functional as cx

# We first create an empty field.
field = cx.empty_field(shape=(512, 512), dx=1.0, spectrum=0.532, spectral_density=1.0)

AttributeError: module 'chromatix.functional' has no attribute 'empty_field'

Hi @tlambert03, thanks for your interest! You're right - 101 is currently broken. We had a hackathon a few weeks ago and made some changes based on the feedback we got, and we're almost finished with updating the docs - but not quite ;-)
We hope to update 101 next week. There's some small changes to the code, but the main ideas are the same. The examples in our documentation should work though! (https://chromatix.readthedocs.io/en/latest/examples/cgh/ for example).

We're working on CI for the docs so hopefully this doesn't happen anymore, but we haven't got around to it.

yep, holoscope.ipynb works great. thanks

Maybe we should have put some warnings up about being in an "alpha" state :slightly_smiling_face:
But thanks for checking things out and pointing out what was broken! I've updated the 101 and all the other examples that you tried that didn't work. We can still improve 101 to make it a better introduction to Chromatix and simulating optics in general, but it'll do for now.
A note about the parallel imaging and PSF examples: those just got updated but you'll need to make sure to either change the number of devices in the code before running the example or run on a system that has 4 GPUs.

No need for alpha warning.  It's understood :)


Remove ResourceCheck based test filtering

backport https://github.com/querydsl/querydsl/pull/1257

Doesn't ExportMSSQLTest now require @Category(ExternalDB.class) to be excluded?

Good point, I fixed that.

This looks good to me now.


Create _TZE200_p0gzbqct.yaml

Copy of existing _TZE200_dfxkcots.yaml

Currently, the driver isn't publishing because it reached the limit of 100 profiles.
I will update here as soon as I fix it.


Implement Layers2DRenderer typehint annotation

Annotation already existing in: PropertyTypeHintAnnotation.kt (already there, needs to be uncommented.
Add typehint and typelimiting support in PropertyHintTypeMapper.kt

Closing in favor of #155


It is not practical

Missing examples of use, combinations with other instructions and often do not show the unit of the result of a command.

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

ID: 3e73e02c-6320-8ebc-5bea-5cf288340ede
Version Independent ID: 201b54ab-7995-f51c-df21-34c0b48de098
Content: New-Partition (storage)
Content Source: docset/windows/storage/New-Partition.md
Product: w10
Technology: powershell-windows
GitHub Login: @andreabarr
Microsoft Alias: v-anbarr

@sergioPerez-e
The issue has been noted and the document will be revised in the light of your feedback.
Thank you.


Error: Cannot read properties of undefined (reading 'getVariable') (interactive.csharp.getVariable())

Describe the bug
Run the following JavaScript example from the docs:

Expected: Example works.
Actual: Error: Cannot read properties of undefined (reading 'getVariable')
Please complete the following:
Which version of .NET Interactive are you using? (In a notebook, run the #!about magic command. ):
.NET Interactive
© 2020 Microsoft Corporation
Version: 1.0.317502+9c2a225c543085a04516cc4fc490919d5925ba87
Build date: 2022-04-19T21:48:04.4582881Z

OS

[ ] Windows 11
[X] Windows 10
[ ] macOS
[ ] Linux (Please specify distro)
[ ] iOS
[ ] Android

Browser

[X] Chrome
[ ] Edge
[ ] Firefox
[ ] Safari

Frontend

[ ] Jupyter Notebook
[ ] Jupyter Lab
[ ] nteract
[X] Visual Studio Code
[ ] Visual Studio Code Insiders
[ ] Visual Studio
[ ] Other (please specify)

Screenshots
If applicable, add screenshots to help explain your problem.

As per https://github.com/dotnet/interactive/issues/1803#issuecomment-984816037 this seems to be the problem of outdated documentation, #!share --from csharp x should work.

Thank you @roberthusak.


[BUG] libSkiaSharp.dll in x64 and x86 folder not been used

Description
SkaiShapr version:1.68.3
Environment: Visual Stdio 2019
Project: .NetFramework project (Please note the issue not happening in .NetCore Project)
Compile platform: Any CPU
Issue:
When compile the project, libSkiaSharp.dll been copied to
Bin\Debug\x64\libSkiaSharp.dll
Bin\Debug\x86\libSkiaSharp.dll
Bin\Debug\libSkiaSharp.dll
but it seems like application not using any of those Dlls in x64 nor x86.  Instead application always using the one  the Debug folder.
My understanding is that the Bin\Debug\libSkiaSharp.dll shouldn't be there at all, app should use the ones in x64/x86 folder depending on current application platform (any cpu/x86/x64).
Code
No code needed, just reference the nugetpackage, and compile.
Expected Behavior
Application should use Bin\Debug\x86(x64)libSkiaSharp.dll depending on current application platform (any cpu/x86/x64) automatically
Actual Behavior
Application always using the one in Bin\Debug\libSkiaSharp.dll.
Basic Information

Version with issue:  1.68.3
Last known good version:  Unknown
IDE:  Visual Studio 2019 - Windows 10
Platform Target Frameworks: Any CPU

Windows Classic:  Windows 10

Target Devices: Windows application

Screenshots
none
Reproduction Link

I'm facing the same issue. I made a unit  test project (.NET 4.8, Any CPU) that references a .NET Standard 2.0 library (Any CPU), and the latter references SkiaSharp 1.68.3.
I got the following exception:
Test method SkiaUnitTests.SkRenderTargetTests.New_RenderTarget_IsTransparent threw exception:
System.TypeInitializationException: The type initializer for 'SkiaSharp.SKImageInfo' threw an exception. ---> System.DllNotFoundException: Unable to load DLL 'libSkiaSharp': The specified module could not be found. (Exception from HRESULT: 0x8007007E)
    at SkiaSharp.SkiaApi.sk_colortype_get_default_8888()
   at SkiaSharp.SKImageInfo..cctor()

When using ProcMon, it seems the x86 and x64 directories where the libSkiaSharp.dll is located are ignored:
C:\dev\express\Source\Framework\Solutions\SkiaUnitTests\SkiaUnitTests\bin\Debug\libSkiaSharp.DLL => not found

Manually copying the x86\libSkiaSharp.dll to the Debug folder works, but I would like to avoid
this.
Any tips?

As a temporary workaround, I added the following in a static constructor in my .NET Standard 2.0 project that references SkiaSharp, but this is not a good nor secure solution:
		[DllImport("kernel32.dll", CharSet = CharSet.Unicode, SetLastError = true)]
		[return: MarshalAs(UnmanagedType.Bool)]
		static extern bool SetDllDirectory(string lpPathName);

		static SkGraphicsFactory()
		{
			if (Environment.OSVersion.Platform == PlatformID.Win32NT)
			{
				// HACK: Workaround https://github.com/mono/SkiaSharp/issues/1311
				SetDllDirectory(Environment.Is64BitProcess ? "x64" : "x86");
			}
		}

Exact same issue as mine, but mine is on iOS.
How would I do a similar hack for iOS?
https://github.com/mono/SkiaSharp/issues/1304

This is slightly different as iOS is supposed to get it right. This issue is really just for the old Full Framework on Windows. The new .NET Core system does not need this. As much as I like Full Framework, it probably will not get fixed any time soon - especially since all the new platforms work.
Not that this is unimportant, but we are focusing on making .NET Core work best. And, this issue has a decent workaround for now.
@chrisfoulds I replied to that issue.

Fixing this in https://github.com/mono/SkiaSharp/pull/1342

Fixed in #1342 and will be in the next version.
No longer is libSkiaSharp.dll copied to the root directory as there is no way to know which one is meant to be used. Instead, they are copied into the x86 and x64 sub directories and the library will load the correct one.


[Potential Bug] Dapr actor delete state: "operation type remove not supported"

Note: If you have a general support question and are looking for a quicker response, please checkout our discord channel for answers from the community:
https://aka.ms/dapr-discord
In what area(s)?

/area runtime

/area operator

/area placement

/area docs

/area test-and-release

Ask your question here
Hi, I am relatively new to dapr and I am trying to delete a state through an Actor. I am following the example at this link and here is a screenshot of my implementation.

However, I am getting this error message: Error: {"errorCode":"ERR_ACTOR_STATE_TRANSACTION_SAVE","message":"error saving actor transaction state: operation type remove not supported"}
Does anyone have any idea as to why this message is showing up? Thanks in advance

After doing some searches, I think there is a bug with the Dapr Javascript SDK. Essentially, in this.getStateManager().saveState(), it calls the saveState() function in StateProvider (dapr/actors/runtime/StateProvider.js). However, in this function, for the states that need to be removed, it incorrectly labels the operation as remove instead of delete (See line 82-83). Later in this function, this operation and the state are then formatted into a Json blob and is sent to the ActorClient and executed. remove is not supported as a valid operation but delete is. Changing the code at line 82 resolved this.

Can someone confirm that this is indeed a bug?

According to this link, only upsert and delete are valid operations

transferring this to the JS SDK

@mukundansundar can you please transfer this to JS-SDK? I don't have permissions.

@shubham1172 Same for me, js-sdk is not listed when I click Transfer Issue.
cc @dapr/maintainers-dapr

I can submit this issue again in the js-sdk repo @mukundansundar

Issues can only be transferred if you have write access to both repos - so unfortunately for JS SDK and Runtime that is only the STC.
Best to open the issue in the JS SDK repo and close here, @ruokun-niu. Thanks!

Yep, that's what I did. Thanks!


[Bug] Bar chart with time x-axis: labels not centered

Version
5.4.0
Link to Minimal Reproduction
https://jsfiddle.net/uykusuz/2zrx1pnj/3/
Steps to Reproduce

open the link to the fiddle
look at the x-axis labels

Current Behavior
the labels for each bar are not centered below their corresponding bars
Expected Behavior
the labels are centered below their corresponding bars
Environment
- OS: arch linux
- Browser: chrome  106.0.5249.119 (Official Build) (64-bit)
- Framework: plain JS

Any additional comments?
I tried axisLabel.align, but that doesn't work. I couldn't find another option that would make sense here.

https://jsfiddle.net/do63ytvz/24/
you should use the category replace the time

But I want the features of the time axis type. In particular, the uniform distribution of the axis values.
-------- Original Message --------
On Oct 28, 2022, 16:59, plh wrote:

https://jsfiddle.net/do63ytvz/24/
you should use the category replace the time
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you authored the thread.Message ID: @.***>

     axisTick: {
        alignWithLabel: true
      },

from https://apache.github.io/echarts-handbook/en/concepts/axis/#example worked for me!


Fix markdown issues and typos

See a detailed description of the rules is available at
https://github.com/markdownlint/markdownlint/blob/master/docs/RULES.md

Thank you!

:partying_face: :partying_face: :partying_face: :partying_face: :partying_face:


feat: goerli as new default network

Part of https://github.com/decentraland/catalyst/issues/1149.


bugfix: safely multiply integers to prevent overflow

We've observed this exception, blocking ingestion:
j.l.IllegalArgumentException: Illegal memory allocation -2116790016 for segment <table>__0__50__20230724T1340Z column <table>__0__50__20230724T1340Z:message_encodedVars.mv.raw.fwd
at c.g.common.base.Preconditions.checkArgument(Preconditions.java:135)
at o.a.p.s.l.i.r.RealtimeIndexOffHeapMemoryManager.allocate(RealtimeIndexOffHeapMemoryManager.java:83)
at o.a.p.s.l.r.i.f.FixedByteMVMutableForwardIndex.addDataBuffer(FixedByteMVMutableForwardIndex.java:169)
... 21 common frames omitted
Wrapped by: java.lang.RuntimeException: Error while expanding the capacity by allocating additional buffer with capacity:272272160
at o.a.p.s.l.r.i.f.FixedByteMVMutableForwardIndex.addDataBuffer(FixedByteMVMutableForwardIndex.java:176)
at o.a.p.s.l.r.i.f.FixedByteMVMutableForwardIndex.<init>(FixedByteMVMutableForwardIndex.java:142)
at o.a.p.s.l.s.i.f.ForwardIndexType.createMutableIndex(ForwardIndexType.java:300)
at o.a.p.s.l.s.i.f.ForwardIndexType.createMutableIn...

The negative size comes from an int overflow from unsafe multiplication of two ints.

Codecov Report

Merging #11186 (54f72c3) into master (a86ba9c) will increase coverage by 0.00%.
Report is 1 commits behind head on master.
The diff coverage is 0.00%.

@@            Coverage Diff            @@
##           master   #11186     +/-   ##
=========================================
  Coverage    0.11%    0.11%
=========================================
  Files        2218     2163     -55
  Lines      119138   116583   -2555
  Branches    18022    17710    -312
=========================================
  Hits          137      137
+ Misses     118981   116426   -2555
  Partials       20       20

Flag
Coverage Δ

integration1temurin11
?

integration1temurin17
?

integration1temurin20
?

integration2temurin11
?

integration2temurin17
?

integration2temurin20
?

unittests1temurin11
?

unittests1temurin17
?

unittests1temurin20
?

unittests2temurin11
?

unittests2temurin17
0.11% <0.00%> (ø)

unittests2temurin20
0.11% <0.00%> (ø)

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

Files Changed
Coverage Δ

...e/impl/forward/FixedByteMVMutableForwardIndex.java
0.00% <0.00%> (ø)

... and 57 files with indirect coverage changes
:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more


K.Dᴀᴠɪs: Watch chinasunlead.net

K.Dᴀᴠɪs requests the watch of the watch_keyword chinasunlead\.net. See the Metasmoke search here and the Stack Exchange search here.

chinasunlead.net has been seen in 1 true positive, 0 false positives, and 0 NAAs.

Coverage remained the same at 65.238% when pulling 6c90e82456904ca2ed6206978db80683588bb680 on auto-blacklist-1520830900.2895608 into 3d5cfa7e58663f6adb766c0726249a5ac21013f0 on master.

!!/approve


More user friendly for HTTP Basic Auth

In [1]: from couchdb.http import extract_credentials

In [2]: from urllib.parse import urlsplit

In [3]: url = 'http://joe:secret_has_#_@localhost:5984/_config/'

In [4]: extract_credentials(url)
Out[4]: ('http://joe:secret_has_#_@localhost:5984/_config/', None)

In [5]: urlsplit(url)
Out[5]: SplitResult(scheme='http', netloc='joe:secret_has_', path='', query='', fragment='_@localhost:5984/_config/')

Error happened when I used couchdb-python with random generated password which has number sign #. I realized that I should quote password firstly, but I thought it's not very user-friendly, quote password manually and unquoted by couchdb-python, why not just add user, password parameters or auth like Requests?
To avoid modify related codes, I implement as blow but still think not a proper way to handle it:
>>> extract_credentials('http://joe@example.com:secret_has_special_chars_@#!:_@localhost:5984/_config/')
('http://localhost:5984/_config/'<EMAIL_ADDRESS>'secret_has_special_chars_@#!:_'))

Any suggestion?

So what would you propose exactly? I think the current way is pretty pragmatic, and fits in with the design of CouchDB-Python being a fairly light-weight wrapper over het HTTP API.

@djc You're right. I think add auth parameter like requests is more user-friendly, but I'm afraid it'll break current case, so please just ignore this issue.


New maintainer needed

Hey guys,
I feel sorry for the state of this gem but I barely use it for anything anymore and it is hard for me to find time to maintain it. If you would like to step up and take the helm let me know.
Thanks!
P.S.: just to clarify the part I feel sorry about is the number of open issues and pull requests... the codebase itself is pretty clean and shouldn't be hard to mantain :smile:

@rocknruby jumped to help, thanks so much!

+1 @rocknruby


Show cursor in VISUAL mode.

The cursor goes invisible while making a visual selection. it would be nice to keep showing the cursor.

This would allow, for example, to type things like % to move the cursor to a matching brace (and thus modifies the VISUAL selection).

Related:

https://github.com/atom/vim-mode/issues/1005
https://github.com/atom/vim-mode/issues/936
https://github.com/atom/vim-mode/issues/820

Interestingly, all those related issues have my exact same issue: needing to select whole blocks using % and similar.

As stated in the README, this package is no longer maintained and is deprecated. We recommend that people use the vim-mode-plus package instead. Because of this, we are archiving this repository and closing all issues and pull requests. Thanks very much for your support and contributions!


Faster implementation for Free

Summary
I tested a new implementation for Free when benchmarking Halogen Hooks and found it sped up the library (and Halogen) by as much as 25% while using less memory.
This PR adds this implementation, written by @natefaubion, to the Free library. The benchmarks prove that this new implementation is significantly more performant than the existing v5.2.0 implementation -- even more than the difference between the current version and the v0.6.1 version (see the benchmarks below).
Given the significant improvement this change brings to the library I thought it would be a much better addition here -- where the entire ecosystem can benefit -- rather than create a new library.
@natefaubion's implementation also provides a significantly cleaner API. As this is already a breaking change due to the re-implementation of the Free type I took this opportunity to migrate to the improved API at the same time. This mirrors what was done when moving from the v0.6.1 "Gosub" technique to the current implementation.
Next steps:

[x] Add module documentation
I haven't completed module documentation for the new Free module
[x] Re-add missing instances for Free
[ ] Write release notes for this change (once approved) which include guidance on migration
Blocked on approval of this PR

API Changes
Here are the API changes:
Renamed
These renames largely drop the F / Free / M suffixes, continuing the progress made when this library moved away from the many variants on liftFree, liftFC, etc. that existed prior to the current version of this library. Instead, we use Rec as a suffix to indicate that a function has a MonadRec constraint, and otherwise try to avoid suffixes.
liftF -> lift
wrap -> roll
suspendF -> suspend
hoistFree -> hoist
substFree -> interpret
foldFree -> interpretRec
runFree -> run
runFreeM -> runRec
resume' -> resume
Removed:
resume, because it is trivial to implement via the new resume (aka the old resume') along with any other variant you might wish for. It could be re-added under a different name.
Notes

Only commits from https://github.com/purescript/purescript-free/commit/3bf25faab376e864ddf80e887d37fb9fe29b0d66 onward are relevant to this PR. The prior commits are the same as #103, which just fixes the benchmarks but doesn't change any of the implementations. You might want to look at the diff with only that PR in mind.

To avoid too many breaking changes I've added a Compat module for any modules which would no longer work in user code. These Compat modules can be directly dropped in to preserve existing behavior in libraries and applications. But I think they should be removed in a future version.

Benchmark Results

(Note: v6.0.1 stack overflows on this benchmark, so we're only comparing this implementation to the current v5.2.0 implementation)

As I look at this again -- Free is exported without constructors, so it might be safe for me to just directly drop in this new implementation of Free in the modules where it was previously used, which would cut down on the Compat modules quite a bit.

It seams that if you have:
loop x = Free.pure (x + 1) >>= loop
oops = loop 0

This will blow stack before it's even interpreted

That will always happen. You are building an infinite tree strictly since there’s no eta expansion within loop.

Ok, but here it's eta expanded version:
loop x = Free.pure (x + 1) >>= \k => loop k
oops = loop 0

Because bind is implemented like this: bind (Pure a) k = k a I suspect it will blow stack, wouldn't it?

A couple of updates for y'all:

In https://github.com/purescript/purescript-free/pull/104/commits/6180532bdbccdf0443a7e7beebef8d8ff5655bfe I changed the Compat modules so that they only preserve the prior API but re-use the new implementation. This is possible because Free's constructors were never exported, so this isn't breaking. This greatly reduces the number of affected modules.
In https://github.com/purescript/purescript-free/pull/104/commits/9377e08b4e994aa7097bb9a5cbbc72578faf5bc4 I added back the missing instances for Eq, Ord, Eq1, Ord1, Foldable, Traversable, Semigroup, Monoid, MonadRec, and MonadTrans. It's not clear to me that all of these instances are necessary, but removing any of them would be a breaking change not addressable via a Compat module now that the same implementation is reused there.

At this point, beyond any discussion we need to have about potential issues with the implementation itself, it really comes down to whether these API changes are palatable or not. If they aren't, then I'd like to see where we can meet in the middle on some of these function renames and changes.

Here are the API changes:
Renamed
These renames largely drop the F / Free / M suffixes, continuing the progress made when this library moved away from the many variants on liftFree, liftFC, etc. that existed prior to the current version of this library. Instead, we use Rec as a suffix to indicate that a function has a MonadRec constraint, and otherwise try to avoid suffixes.
liftF -> lift
wrap -> roll
suspendF -> suspend
hoistFree -> hoist
substFree -> interpret
foldFree -> interpretRec
runFree -> run
runFreeM -> runRec
resume' -> resume
Removed:
resume, because it is trivial to implement via the new resume (aka the old resume) along with any other variant you might wish for. It could be re-added under a different name.

Because bind is implemented like this: bind (Pure a) k = k a I suspect it will blow stack, wouldn't it?

Ah, yep! That's a great point. It needs to just be suspended as a bind instead of taking a shortcut.

I have reverted changes that would break the existing API. I'm still of the opinion we should make those changes, but I shouldn't have pushed to make them in this PR. I've updated the PR description with details:
https://github.com/purescript/purescript-free/pull/104#issue-501219110
This PR now offers a performance improvement without breaking changes.

@natefaubion @safareli I've verified that this blows up (at compile time):
loop x = Free.pure (x + 1) >>= \k => loop k
oops = loop 0

I'm not quite sure how to suspend Pure as a bind; while k can be dealt with the same as the existing Bind implementation, a is not so simple.
Here's the existing implementation (source):
instance bindFree :: Bind (Free f) where
  bind (Pure a) k = k a
  bind (Bind a bs) k = Bind a (Node (unsafeCoerce bs) (Leaf (unsafeCoerce k)))

I can partially rewrite this as:
instance bindFree :: Bind (Free f) where
  bind (Pure a) k = Bind (?wat a) (Leaf (unsafeCoerce k))
  bind (Bind a bs) k = Bind a (Node (unsafeCoerce bs) (Leaf (unsafeCoerce k)))

producing the error
Hole 'wat' has the inferred type

  a0 -> f1 UnsafeBoundValue

You could substitute the hole with one of these values:

  Unsafe.Coerce.unsafeCoerce  :: forall a b. a -> b

in the following context:

  a :: a0
  k :: a0 -> Free f1 b2

in value declaration bindFree

I'm open to suggestions on how to address this, and I'll keep working on it on my own!

This shouldwork but it might not be as elegant
= Pure a
+  | BindPure UnsafeBoundValue (FreeBinds f UnsafeBoundValue a)
 | Bind (f UnsafeBoundValue) (FreeBinds f UnsafeBoundValue a)

@safareli That's a good idea. I gave it a try and I was able to get it working except for one place -- resume':
resume'
  :: forall f a r
   . (forall b. f b -> (b -> Free f a) -> r)
  -> (a -> r)
  -> Free f a
  -> r
resume' bind' pure' = case _ of
  Pure a -> pure' a
  BindPure a bs -> bind' ?a (go1 bs)
  Bind a bs -> bind' a (go1 bs)
  where
  go1 :: forall x y. FreeBinds f x y -> x -> Free f y
  go1 bs x = case bs of
    Leaf k -> k x
    Node l r -> case uncons l r of
      FreeCons k bs' -> case k x of
        Pure a -> go1 bs' a
        BindPure a bs'' -> BindPure a (Node bs'' bs')
        Bind a bs'' -> Bind a (Node bs'' bs')
    Hoist nat bs' ->
      go2 nat bs' x

  go2 :: forall g x y. (UnsafeBoundF ~> g) -> FreeBinds UnsafeBoundF x y -> x -> Free g y
  go2 nat bs x = case bs of
    Leaf k -> hoistFree nat (k x)
    Node l r -> case uncons l r of
      FreeCons k bs' -> case k x of
        Pure a -> go2 nat bs' a
        BindPure a bs'' -> BindPure a (Hoist nat (Node bs'' bs'))
        Bind a bs'' -> Bind (nat a) (Hoist nat (Node bs'' bs'))
    Hoist nat' bs' ->
      go2 (nat <<< nat') bs' x

That's quite a bit of code -- this is the excerpt worth looking at:
resume' bind' pure' = case _ of
  Pure a -> pure' a
  BindPure a bs -> bind' ?a (go1 bs)
  Bind a bs -> bind' a (go1 bs)
  where
  ...

which produces the following error with the typed hole:
Compiling Control.Monad.Free
Error found:
in module Control.Monad.Free
at src/Control/Monad/Free.purs:232:26 - 232:28 (line 232, column 26 - line 232, column 28)

  Hole 'a' has the inferred type

    f0 UnsafeBoundValue

  in the following context:

    a :: UnsafeBoundValue
    bind' :: forall b. f0 b -> (b -> ...) -> r2
    bs :: FreeBinds f0 UnsafeBoundValue a1
    go1 :: forall x y. FreeBinds f0 x y -> x -> Free f0 y
    go2 :: forall g x y. NaturalTransformation UnsafeBoundF g -> FreeBinds UnsafeBoundF x y -> x -> ...

in value declaration resume'

...which feels like the same issue, deeper in the code. Might just be missing something simple, though :)


How to obtain the refined embeddings?

Hi, I want to know how to generate the refined embeddings from the original one.
Thanks for your help.

Hi,
Thanks for your question. we follow the method proposed in https://www.aclweb.org/anthology/P17-1042.pdf. You can follow this github repository https://github.com/artetxem/vecmap to obtain the refined embeddings by using the seed word list that we provide.

Thanks very much :)

Could you share your code of training the refined embeddings? The one you shared is pretty old.


[doc] include trtllm convert manual

Description
Brief description of what this PR is about

If this change is a backward incompatible change, why must this change be made?
Interesting edge cases to note here

Codecov Report
Attention: 1339 lines in your changes are missing coverage. Please review.

Comparison is base (bb5073f) 72.08% compared to head (5bc93e4) 72.22%.
Report is 965 commits behind head on master.

Additional details and impacted files
@@             Coverage Diff              @@
##             master    #2941      +/-   ##
============================================
+ Coverage     72.08%   72.22%   +0.13%
- Complexity     5126     7280    +2154
============================================
  Files           473      721     +248
  Lines         21970    32507   +10537
  Branches       2351     3391    +1040
============================================
+ Hits          15838    23478    +7640
- Misses         4925     7412    +2487
- Partials       1207     1617     +410

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


order questionnaires by date desc

What is the context of this PR?
Questionnaires will be returned from API ordered by creation date desc. This PR modifies the cache update functions for questionnaire creation so that it inserts at the beginning of the list. Also, MockDataStore was updated to sort by creation date desc
How to review
n/a
Dependent on: https://github.com/ONSdigital/eq-author-api/pull/69

 Change order of created by (1)

@WickyNilliams Is this a quick fix until we get a new design for the dashboard?

Why am I still seeing the questionnaires listed in date ascending order? Checking on pre-prod btw.

Prob because it's not using the API changes.


poetry self:update not working on Windows

$ poetry self:update
Updating to 0.9.1

[RuntimeError]
Unable to determine poetry's path

self:update [--preview] [--] [<version>]

Proposed fix: https://github.com/sdispater/poetry/pull/135

samething on a ubuntu  16.04

Fixed in 0.10.3.


changed LM to add a span rather than update. Seems the bug only affec…

I changed the LM ads to add a new span with the per each price rather than update the existing one in hopes that would fix the overwriting issue. In the limited testing I did it seems that this new span was the only thing affected at this point rather than any of the other price elements.

Looks good. Just a note, if you find that you have to make a general reformatting step to the whole file, commit that as a separate commit before your change. That way its easier to review, but also if you ever need to do advanced stuff like rebase the change ontop of another reformat, it becomes a lot easier. Don't worry about it now though, its just a note for the future.


Weights for relation_detr_focalnet_large_lrf_fl4_800_1333.py

Question
Hi, Thanks for the awesome repo. I am trying to finetune your model on a custom dataset. My GPU memory is not enough to finetune relation_detr_focalnet_large_lrf_fl4_1200_2000.py version. I have tried with batch_size=1, and "fp16" mixed precision training. Could you please release the weights and accuracy infor for the relation_detr_focalnet_large_lrf_fl4_800_1333.py version? Thank you.
Additional
No response

The same model works for both image sizes. My GPU memory is not enough for 800 x 1333 images as well. Did you guys get the same accuracy with both input image sizes (800, 1333)  & (1200, 2000)?

Is there any way to reduce the memory of the system? I think the memory issues come from O(n^2) memory for the transformer, can we replace that with the O(n) version or something like xformers?

Now, I have gone into the details and it is using Deformable attention, meaning we don't need the O(n) version of the transformer. Please correct me if I am wrong. Maybe we can fine-tune it using LORA? I don't know how straightforward this process is in this model. Could you suggest some ideas for fine-tuning your biggest model on a single RTX 3090 Ti machine (24GB VRAM)?

Hi, @ck-amrahd Thanks for your question.
Actually, we haven't pre-trained relation_detr_focalnet_large_LRF_fl4_800_1333 on COCO. To fine-tune the custom dataset, you can directly load the weight of 1200_2000 into the model of 800_1333 as Image_size will not change the model architecture.
The model accuracy of image_size (800 800,1333) should be a little lower than that of (1200,2000), but it will reduce much memory.
The memory cost mainly comes from the backbone and transformer encoder. Here are some advice to reduce memory when fine-tuning:
For backbone:

Freeze more layers: Each backbone has 4 stages indexed by (0, 1, 2, 3), by default we freeze no stages. You can freeze more layers with freeze_indices to save memory, for example freeze_indices=(0,) or freeze_indices=(0, 1).

Use fewer feature maps for transformer: please set return_indices=(1, 2, 3) for focalnet_large, if will reduce about 50% tokens  for transformer encoder and only reduce accuracy by about 1~2 AP on COCO.

Here is a backbone setting with a better trade-off between GPU memory and accuracy.
backbone = FocalNetBackbone("focalnet_large_lrf_fl4", weights=False, return_indices=(0, 1, 2, 3), freeze_indices=(0,))

For transformer encoder:
Yes we don't need O(n) attention since deformable attention has been a O(n) version.
LoRA mainly solves the memory problem caused by large parameters by decomposing W into low rank matrix. But the memory of Relation-DETR mainly comes from the intermediate output of the model, not the model parameters. Our model may not need LoRA. If you want to try it, you can wrap the following linear layers in the MultiScaleDeformableAttention of the transformer encoder with LoRA.
self.attention_weights = nn.Linear(embed_dim, num_heads * num_levels * num_points)
self.value_proj = nn.Linear(embed_dim, embed_dim)
self.output_proj = nn.Linear(embed_dim, embed_dim)

Thank you @xiuqhou, I will give it a try.

Hi @xiuqhou Thanks for the idea. I am able to fine-tune the larger model with:
backbone = FocalNetBackbone("focalnet_large_lrf_fl4", weights=False, return_indices=(2, 3), freeze_indices=(0, 1))

I also reduced the number of queries and the number of hybrid proposals and now I am able to fine-tune the version that takes 1200 * 2000 images. However, the model fine-tuned with this setting performed poorly compared to a model that I fine-tuned from the Swin-L backbone. I am not able to figure out why. I will keep looking into it. In the meantime, do you have any intuition over why that may be the case?

Hi, @ck-amrahd Thanks for your feedback.
If you can fine-tune the Swin-L backbone, the FocalNet-Large backbone should also work under the same settings, because they have similar memory cost. Therefore, I suggest that you keep the backbone settings consistent with Swin-L, including:
Please use return_indexes = (1, 2, 3) instead of return_ indexes = (2, 3). Using fewer indexes will seriously affect performance and will not reduce memory cost too much. From index 0 to index 3, the memory cost of each index will only be about 1/4 of the previous one. So return_indexes = (1, 2, 3) is totally enough.
Did you change min_size and max_size, but left train_transform in train_config.py unchanged? They should be changed correspondingly. strong_album transform should be used with 800 * 1333 version and strong_album_1200_2000 should be used with 1200 * 2000 version. You can define your own data_augmentation for other image_size.

min_size and max_size affect image_size for inference and train_transform affect image_size for training.

On the other hand, I strongly suggest you using 800 * 1333 version since larger image_sizes have marginal diminishing returns but will increase memory_cost largely. And please do not reduce or increase num_queries and hybrid_proposals as they have a large affect on final performance.
To make it simple, I put my own changed 800 * 1333 model_configs for Focal-large here. I have successfully run it on my own 3090 GPU with with bf16 and strong_album train_transform. It should have better performance than swin-L. You can load checkpoint (https://github.com/xiuqhou/Relation-DETR/releases/download/v1.0.0/relation_detr_focalnet_large_lrf_fl4_o365_4e-coco_2x_1200_2000.pth) directly and fine-tune it.
from torch import nn

from models.backbones.focalnet import FocalNetBackbone
from models.bricks.position_encoding import PositionEmbeddingSine
from models.bricks.post_process import PostProcess
from models.bricks.relation_transformer import (
    RelationTransformer,
    RelationTransformerDecoder,
    RelationTransformerEncoder,
    RelationTransformerEncoderLayer,
    RelationTransformerDecoderLayer,
)
from models.bricks.set_criterion import HybridSetCriterion
from models.detectors.relation_detr import RelationDETR
from models.matcher.hungarian_matcher import HungarianMatcher
from models.necks.channel_mapper import ChannelMapper

# mostly changed parameters
embed_dim = 256
num_classes = 91
num_queries = 900
hybrid_num_proposals = 1500
hybrid_assign = 6
num_feature_levels = 5
transformer_enc_layers = 6
transformer_dec_layers = 6
num_heads = 8
dim_feedforward = 2048

# instantiate model components
position_embedding = PositionEmbeddingSine(
    embed_dim // 2, temperature=10000, normalize=True, offset=-0.5
)

backbone = FocalNetBackbone("focalnet_large_lrf_fl4", weights=False, return_indices=(1, 2, 3), freeze_indices=(0,))

neck = ChannelMapper(backbone.num_channels, out_channels=embed_dim, num_outs=num_feature_levels)

transformer = RelationTransformer(
    encoder=RelationTransformerEncoder(
        encoder_layer=RelationTransformerEncoderLayer(
            embed_dim=embed_dim,
            n_heads=num_heads,
            dropout=0.0,
            activation=nn.ReLU(inplace=True),
            n_levels=num_feature_levels,
            n_points=4,
            d_ffn=dim_feedforward,
        ),
        num_layers=transformer_enc_layers,
    ),
    decoder=RelationTransformerDecoder(
        decoder_layer=RelationTransformerDecoderLayer(
            embed_dim=embed_dim,
            n_heads=num_heads,
            dropout=0.0,
            activation=nn.ReLU(inplace=True),
            n_levels=num_feature_levels,
            n_points=4,
            d_ffn=dim_feedforward,
        ),
        num_layers=transformer_dec_layers,
        num_classes=num_classes,
    ),
    num_classes=num_classes,
    num_feature_levels=num_feature_levels,
    two_stage_num_proposals=num_queries,
    hybrid_num_proposals=hybrid_num_proposals,
)

matcher = HungarianMatcher(
    cost_class=2, cost_bbox=5, cost_giou=2, focal_alpha=0.25, focal_gamma=2.0
)

# construct weight_dict for loss
weight_dict = {"loss_class": 1, "loss_bbox": 5, "loss_giou": 2}
weight_dict.update({"loss_class_dn": 1, "loss_bbox_dn": 5, "loss_giou_dn": 2})
aux_weight_dict = {}
for i in range(transformer.decoder.num_layers - 1):
    aux_weight_dict.update({k + f"_{i}": v for k, v in weight_dict.items()})
weight_dict.update(aux_weight_dict)
weight_dict.update({"loss_class_enc": 1, "loss_bbox_enc": 5, "loss_giou_enc": 2})
weight_dict.update({k + "_hybrid": v for k, v in weight_dict.items()})

criterion = HybridSetCriterion(
    num_classes=num_classes, matcher=matcher, weight_dict=weight_dict, alpha=0.25, gamma=2.0
)
postprocessor = PostProcess(select_box_nums_for_evaluation=300)

# combine above components to instantiate the model
model = RelationDETR(
    backbone=backbone,
    neck=neck,
    position_embedding=position_embedding,
    transformer=transformer,
    criterion=criterion,
    postprocessor=postprocessor,
    num_classes=num_classes,
    num_queries=num_queries,
    hybrid_assign=hybrid_assign,
    denoising_nums=100,
    min_size=800,
    max_size=1333,
)

Hi @xiuqhou, Thank you so much for the detailed feedback. I will try it and let you know.

Hi @xiuqhou Thank you for the feedback. I am now fine-tuning the large focal net model on a custom dataset. I am able to fine-tune according to your instructions. I am now fine-tuning for 1-2 epochs due to the computational cost. The total loss starts around 60 and goes to around 40 at the end of the first epoch. I will train for longer epochs, but this loss seems quite high for the detection task. Do you have any intuition for this? Is that what you observe when fine-tuning on some datasets?

Hi @ck-amrahd The total loss for the first epoch looks OK. Our method has an extra branch compared to DETRs like DINO, so it contains more loss terms and a larger total loss. When I trained Relation-DETR on COCO, the loss also started around 60 and went to around 35 at the end of the first epoch. It is similar to your result and the difference may comes from different sizes of datasets. As long as the loss goes down steadily, the training process should be OK. Your can refer to our released training log for details.


Menu.Item allows icon to be set as boolean

Menu.Item icon prop is defined as boolean, while it should be of type Icon.
<Menu.Item icon="doctor" />

renders correctly but gives error: Failed prop type: Invalid prop icon of type string supplied to MenuItem, expected boolean.

See #681

Released in<EMAIL_ADDRESS>


Move requires/modifiers of net-emissions-token-network transfer()to safeTransferFrom

https://github.com/hyperledger-labs/blockchain-carbon-accounting/blob/1c5bc0aced65f24fd1befd133700c0c82a85d8d4/net-emissions-token-network/contracts/NetEmissionsTokenNetwork.sol#L593
We should move the require statements/modifiers in the transfer() function to the _beforeTokenTransfer() hook.
This will ensure they are not skipped by users directly calling safeTransferFrom() or safeBatchTransferFrom().
Note: I have prepared a fix for this that will be implemented in a PR that introduces a new carbon token for Issue 372

Sure that sounds good.
Si Chen
Open Source Strategies, Inc.
Please give me your feedback on my e-book Open Climate Investing
https://climate-investing-book.opensourcestrategies.com/v/main/book
On Wed, Dec 29, 2021 at 7:45 AM Bertrand Rioux @.***>
wrote:

https://github.com/hyperledger-labs/blockchain-carbon-accounting/blob/1c5bc0aced65f24fd1befd133700c0c82a85d8d4/net-emissions-token-network/contracts/NetEmissionsTokenNetwork.sol#L593
We should move the require statements/modifiers in the transfer() function
to the _beforeTokenTransfer() hook.
This will ensure they are not skipped by users directly calling
safeTransferFrom() or safeBatchTransferFrom().
Note I have prepared a fix for this that will be implemented in a PR that
introduces a new carbon token in response to Issue 372
https://github.com/hyperledger-labs/blockchain-carbon-accounting/issues/372
—
Reply to this email directly, view it on GitHub
https://github.com/hyperledger-labs/blockchain-carbon-accounting/issues/378,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AANAS4NMNBP7AEMKTFK7LQ3UTMUIBANCNFSM5K6FM5BA
.
Triage notifications on the go with GitHub Mobile for iOS
https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675
or Android
https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.
You are receiving this because you are subscribed to this thread.Message
ID: @.***>


CVE-2019-11236

See https://github.com/urllib3/urllib3/issues/1553

Codecov Report

Merging #1720 into develop will decrease coverage by 0.03%.
The diff coverage is n/a.

@@             Coverage Diff             @@
##           develop    #1720      +/-   ##
===========================================
- Coverage    92.45%   92.42%   -0.04%
===========================================
  Files           53       53
  Lines         9872     9872
===========================================
- Hits          9127     9124       -3
- Misses         745      748       +3

Impacted Files
Coverage Δ

botocore/credentials.py
98.43% <0%> (-0.4%)
:arrow_down:

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 fbd6c29...009cd44. Read the comment docs.

Ping

I guess it will be better to have only one commit in this pull request.

ya, squashing would be good

I made https://github.com/boto/botocore/pull/1735
The issue was the PR was created from master, not from develop as the base branch

Thanks, closing


Update README - installing cargo-make when caching cargo

Resolves #247

thanks a lot!!!
few comments:

can you move the debug flag comment to the travis section? i'm not sure if caching is available for every CI provider so it might be a bit confusing? not sure. what do you think?
can you do the changes in content.md instead of readme.md? the readme is generated by running:
cargo make generate-readme which takes the nav and content md files and also updates some other stuff...
so if you change it directly, it will get lost.

Thanks for the fast response. I will update it. Sadly I don't know if all CIs have caching, I've only worked with Travis & Circle. They both have and I though it's a good idea to mention it in the Continuous Integration section instead of each separate CI. I could also add the CircleCi caching example, but for the rest, I cannot promise.
jobs:
  build:
....
    steps:
      - checkout
      - restore_cache:
          key: project-cache
.....
      - save_cache:
          key: project-cache
          paths:
            - "~/.cargo"
            - "./target"

Codecov Report

Merging #249 into master will decrease coverage by 0.02%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master     #249      +/-   ##
==========================================
- Coverage   93.59%   93.56%   -0.03%
==========================================
  Files          82       82
  Lines       12719    12719
==========================================
- Hits        11904    11901       -3
- Misses        815      818       +3

Impacted Files
Coverage Δ

src/lib/test/mod.rs
78.68% <0%> (-3.28%)
:arrow_down:

src/lib/environment/mod.rs
96.16% <0%> (-0.35%)
:arrow_down:

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 e9a2317...e2c21bd. Read the comment docs.

I rebased your PR on top of 0.19.5 branch which is the current development branch...

thinking about it a bit, lets just drop the whole first change with the debug flag.
I think having concrete examples for caching for specific providers that users can copy paste from, is good enough.
i'll be happy if you include both travis and circle

I've pushed the changes. For Circle-ci I haven't tested the example, as currently I am not using Circle-ci, I might take a look and test it, but it will be definitely next week...

it looks great. once you tell me it's tested, I'll merge it in.

I've tested it, the only this was that there has to be space like so:
- run:
    command:

not

run:
command:

thanks!!!!


Perl5: it is not possible to access the gdbm library

There is program I want to install on nixos. The problem is that this program depends on GDBM_File, which is a perl module to  access the gdbm library. GDBM_File should be provided by the perl package.
I have tried to add gdbm as a build input dependency to perl, but it does not work. nix-build gives the error: infinite recursion encountered. So I do not know how to fix this.
Please, add support to GDBM_File in the perl package.

Can probably be closed @jagajaga
@romildo if you haven’t given up in the meantime, maybe we can help you still.

ping @romildo

As I stayed away from NixOS for some time, I do not remember the details of the issues anymore. I will close for now. In case this issue comes in again, I may reopen it.

I am back to this issue.
I wan to to run fbmenugen which is perl application that depends on GDBM_File. Any clues on how to have this core perl module accessible?
cc @Profpatsch @jagajaga

I’m sorry, I don’t have any experience with Perl, so all I can do it point you to the nixpkgs manual section.

cc @edolstra @jagajaga
Any clues on this?

Fixed upstream.


fix: don't validate csrf token in controller

Fixes https://github.com/thoughtbot/griddler/issues/297 from the upstream repo that we're seeing errors for on staging

Closing since we likely don't need to maintain this fork


Accessing /proc/self/pagemap encounters Operation not permitted

From OS's side, for /proc//pagemap, owner is the user starting this app, permission is -r--------. And user in Docker app is another user, who cannot read this file. So what can we do to read it inside Docker app?

Hi!
Please read this important information about creating issues.
If you are reporting a new issue, make sure that we do not have any duplicates already open. You can ensure this by searching the issue list for this repository. If there is a duplicate, please close your issue and add a comment to the existing issue instead.
If you suspect your issue is a bug, please edit your issue description to include the BUG REPORT INFORMATION shown below. If you fail to provide this information within 7 days, we cannot debug your issue and will close it. We will, however, reopen it if you later provide the information.
This is an automated, informational response.
Thank you.
For more information about reporting issues, see https://github.com/docker/docker/blob/master/CONTRIBUTING.md#reporting-other-issues

BUG REPORT INFORMATION
Use the commands below to provide key information from your environment:
docker version:
docker info:
uname -a:
Provide additional environment details (AWS, VirtualBox, physical, etc.):
List the steps to reproduce the issue:
1.
2.
3.
Describe the results you received:
Describe the results you expected:
Provide additional info you think is important:
----------END REPORT ---------
#ENEEDMOREINFO

This requires the CAP_SYS_ADMIN capability.
docker run --cap-add SYS_ADMIN ...
Note that this disables a significant amount of the container security and should be used with caution.
Closing.


Add runv state command

Now we can use state command to check one container's state and status
Signed-off-by: Zhang Wei<EMAIL_ADDRESS>

LGTM


BeaconDetected not firing?

I'm to run the sample project and detect an iBeacon I have sitting on my desk. I changed the PID and VID to correspond with my USB dongle. Used Zadig to load the WinUSB Driver onto the device.
Running this code, it just seems to run without detecting anything. Am I missing anything or is there anything else I can try? I know the beacon is advertising because I have the same dongle in a Raspberry Pi nearby and it is picking up the beacon. Running Windows 7.
static void Main(string[] args)
    {
        Console.WriteLine("starting up...");

        using (var hub = new BeaconHub(0x0A5C, 0x21EC))
        {
            hub.BeaconDetected += (sender, e) => Console.WriteLine(e.Beacon.ToString());

            Console.ReadKey();
        }
    }

Can you test if you can let it advertise as a Beacon? As of now, I could only test with one chip-type, so it is possible that this minimalistic stack is not generic enough to run on a broader range of BT4.0 dongles.
What stack are you running on the Raspberry PI?

Thanks for the reply... Yes I was able to get it to advertise as a beacon. Seems like it might be a similar situation to #4.
I'm using node.js with this library to scan and detect beacons.
https://github.com/sandeepmistry/node-bleacon
I'm not doing anything else on the Pi besides scanning and logging out info when a beacon is detected. The prerequisites for that library were to install these on the Pi.
sudo apt-get install bluetooth bluez libbluetooth-dev libudev-dev

Probably some HCI init commands are missing. I will look into this ASAP.

I've added two commands for setting the host and le event masks which will probably solve your problem. It's a wild guess, because the dongles I have seem to work out of the box without setting the masks. Anyway, other libraries are configuring them so it surely won't do any harm :)
I have build a new NuGet package v<IP_ADDRESS>, can you please retest with this version and give some feedback?

Left the beacons at work... will test Monday morning and let you know.
Thanks.
On Dec 12, 2015 9:14 AM, "huysentruitw"<EMAIL_ADDRESS>wrote:

I've added two commands for setting the host and le event masks which will
probably solve your problem. It's a wild guess, because the dongles I have
seem to work out of the box without setting the masks. Anyway, other
libraries are configuring them so it surely won't do any harm :)
I have build a new NuGet package v<IP_ADDRESS>, can you please retest with
this version and give some feedback?
—
Reply to this email directly or view it on GitHub
https://github.com/huysentruitw/win-beacon/issues/11#issuecomment-164160517
.

Hardly can't wait :)

I tried the version Install-Package WinBeacon -Version <IP_ADDRESS> and also the newer one (<IP_ADDRESS>) and neither of them worked. Didn't change the code at all and it's still not picking up any nearby iBeacons.
Advertising as an Beacon still works though. Is there any more debugging or things I can try and my end?

I don't know your expert-level, but can you check out the code from master and apply this
patch.diff.txt
Just update VID & PID in the sample and run it. While running, incoming and outgoing data will be logged into the Visual Studio Output window. If you could send me that data while there is one (i)Beacon in range, that would be very helpful.
Thanks

First first time applying a patch, but I think I did it right. These are the steps I took...

Cloned master branch: git clone https://github.com/huysentruitw/win-beacon.git
Downloaded patch file and placed it in git folder
ran git apply patch.diff.txt
Changed code in sample project to this:

 using (var hub = new BeaconHub(0x0A5C, 0x21EC))
            {
                hub.BeaconDetected += (sender, e) => Console.WriteLine(e.Beacon.ToString());

                //hub.EnableAdvertising(new Beacon("B9407F30-F5F8-466E-AFF9-25556B57FE6D", 1000, 2000, -52));

                Console.ReadKey();
            }

Attached is the output from View - Output(Debug) in Visual Studio.

debug_output.txt

Can you apply this patch patch2.diff.txt and test again with the sample?

I think it may have worked? Here's the output from the console and the debug output.
debug output -2.txt

That looks good, but I wonder why you only have one line. Normally a beacon resends its advertising data on a fixed interval. Do you see resends or only one occurrence?

Ok, my mistake, my previous patch also turned on filter duplicates which causes this behavior. So seems like we have a fix for your situation. Updated NuGet package is coming!

Can you please test NuGet package <IP_ADDRESS>? Thanks for your support!

Tested with new package and it works now. Thanks for the support!


Pull request for Regina Assumpta college

Adding domains :
@cra.education                 (students)
@reginaassumota.qc.ca    (teachers)

THis is a secondary school


Resource generation should create documentation as well

There should be associated MarkDown generated for the DSC resources outlining the resource parameters. This could take a bit of work to do properly.
It should Ideally contain: Valid values, name, recommendation ID, Enforcement level.
recommendation Id is helpful because it's not always intuitive from the parameter name since the periods are removed.

Resolved in mentioned PR


Typescript Support

Love this library that you have made. I'd like to add some TypeScript types in order to make it easier to debug my application so I was wondering if you were accepting pull requests? If so, would you prefer the JS files be converted to TS files with internal types, or to put them into a .d.ts file and leave the JS alone? I'm willing to write either of them myself.
Thanks again!

Good evening, Taylor
Thank you for your interest in the project. I never got around to writing documentation, and I'm surprised anyone else is actually using it. Kind of curious what you're using it for actually. Are you a HAM operator?
Do you want to just fork it? I'm not a TypeScript user, but I know it's popular. I published it under the MIT license, so you are free to copy and modify the code for pretty much any purpose.
When I got into HAM radio I wanted to do something with packet radio. Most of my projects are node.js based, and I noticed that there wasn't much going on in the JavaScript space with HAM radio. I initially planned on using it for a Peer-to-Peer chat application. I did some basic experimenting and built a proof-of-concept web application.
What does your application do?

I am a ham operator actually, callsign is KO4LCM. I've been looking for a project to collaborate on to build up my portfolio a bit, and this combines two of my hobbies, programming and ham radio (especially packet). The library wasn't terribly difficult to figure out how to use just from looking at the tests file. I was very pleasantly surprised to see how easily it worked with my Mobilinkd TNC and handheld, and with my Icom 7100 (by linking a virtual COM port to forward to the UZ7HO sound modem kiss port).
I am more than happy to just fork the project, I just wanted to offer to contribute to the original first if you were still interested in the project. I have a few other ideas like adding optional compression to the message field, and adding TCP kiss port support without having to use a virtual COM port bridge. I've already managed to get compression, sending, and decompression working successfully by using Node's zlib brotli.
As of right now I'm working on an application for hams to access text based news during a disaster or when in remote areas without internet coverage. I have also considered one day building a more modern BBS possibly with Electron and all the HTML and CSS stored client side, since all of the ones floating around seem to be like 20+ years old and are CLI based. I really think they could make a comeback in the hamsphere if someone would just build a modern one.
Thanks for getting back to me, I really love this project and how easy it made building and sending an AX.25 frame.