[Feature Request]: Keyboard shortcut to hide/show the overlay

What is your request?
Keyboard shortcut to hide/show the overlay.
And keep doing the great job :)

There is no indication, but if you click the main window and press Ctrl+O, it works. In the next update, i plan to make it work even when the overlay is focused.

Just now I have seen it, thanks for the solution.


Added plural 's'.

Coverage remained the same at 88.065% when pulling 9cec002a95b893ab016e4f8ce78e3970473b27fb on Eraldo:patch-7 into e904463cff8b78df8dc5b7fa9671aef49ba03d4d on divio:develop.

👍


The VM image does not have r10k installed

On the VM that I created using this project, there is not r10k installed. The fix is simple with sudo apt-get install r10k but thought of creating an issue.

Thanks! Would you like to put in a PR to fix this?

Thanks! Would you like to put in a PR to fix this?

Just saw your comment, I have created a PR https://github.com/bitfield/puppet-beginners-guide-3/pull/3

Thanks @shekharshan. Looking more closely at this, I see that the vagrant_provision script actually installs R10K via gem. So I don't think we'll need this change after all—sorry if I've put you to some trouble unnecessarily.

Thanks @shekharshan. Looking more closely at this, I see that the vagrant_provision script actually installs R10K via gem. So I don't think we'll need this change after all—sorry if I've put you to some trouble unnecessarily.

Interesting, for some reason I had to install it using apt as the command was missing. But I will close the ticket for now.


Chart indexing fails: Truncated gzip input

Context
Today, I tried syncing a whole Helm Chart repository to a local directory. However, during the re-package process (uncompress source, indexed, chart, modify it, re-package it, and "upload" it to local) the sync failed with:
I0801 11:27:42.723174   72993 sync.go:171] Packaging "schema-registry-4.0.0"
I0801 11:27:42.756879   72993 sync.go:105] Uploading "schema-registry-4.0.0" chart...
Error: uncompressing "/Users/jdrios/.charts-syncer/4f2301d176a9788434844a4ad9839aac81ab7c84/airflow-11.1.6.tgz": unexpected EOF

If I try to uncompress the indexed chart manually I get the following error:
❯ tar xzf airflow-11.1.6.tgz
airflow/charts/postgresql/values.yaml: truncated gzip input
tar: Error exit delayed from previous errors.

Steps to reproduce
This is the configuration file I used (I changed the source repo url here):
source:
  repo:
    kind: HELM
    url: https://acme.org/mychartrepo

target:
  containerRegistry: docker.io
  containerRepository: foo
  repo:
    kind: LOCAL
    path: ./local-repo

❯ ./charts-syncer version
0.18.0

❯ ./charts-syncer sync --config charts-syncer.yaml -v 4

I could not detect the conditions under which this process fails to generate the corrupted tarball.
However, I have spotted that we are not closing file descriptors (nor HTTP body responses) correctly so I have sent #168


AddOrUpdate extension method

Hi all,
I don't know if this method is planned or not for EF7, but in the case it will be added, please do not implement it as EF6 version! The AddOrUpdate feature that overrides all other properties (those properties that has not been set in the object passed to the method) with default value is really counter intuitive and not useful at all.
Cheers, Max

@rowanmiller , for the entity framework core 1.1. I still don't see AddOrUpdate method. Could you tell me whether it has been implemented yet ?

@redplane There are no concrete plans to implement AddOrUpdate at this time. The way it was implemented in EF6 had issues with identity resolution. Anything we do on EF Core is likely to work differently, and it's not clear that it would have enough value over making your own choice as to whether an entity should be added or updated.

Hi @ajcvickers , I think in AddOrUpdate there should be a list of white list properties as @rowanmiller mentioned. If no property is specified in white list, that means every property should be updated.

We don't have specific plans around AddOrUpdate yet. This problem is generally hard though because we don't know which properties to update. For example, does a null string mean set it to null or not update it. Int isn't nullable so does zero mean update to zero or ignore it.

@rowanmiller @ajcvickers I really don't understand why this is such a difficult thing to implement.
IMHO AddOrUpdate should act as a simple plain replace if the entity already exists.
The right call here is to use the full state of the object beeing inserted/updated, not trying to guess which properties should be updated or not.

@thiagomajesk Maybe it's a scant comfort to know that AddOrUpdate in EF6 had its own problems, considerably limiting its usefulness.


Swagger generation for Azure Function 2.x and .NET Core

I had some issues getting Swagger.cs to work with Azure Function 2.x (beta) with .NET Core. Here are a few changes that help :)
Changed line 29, 184, 185, ReponseType to ProducesResponseType.
Changed line 239 (HttpRequest instead of HttpRequestMessage):
if (parameter.ParameterType == typeof(HttpRequest)) continue; // solves stack overflow issue

Missed this one and will have a look.


Submit little-loader to microjs.com site

https://github.com/madrobby/microjs.com

Along the same lines, I was thinking it would be cool to snag load.js.org!


Enable cdebug to run images that were built locally

Scenario
I have a local image that I want to use through the --image flag, cdebug is always trying to pull from a remote registry
What's changing?
Before attempting to pull from a remote registry first check if the image is in the host, if so we can skip the pull

Nice one! Desperately needed this feature myself!
Any chance you could also add a similar change to exec_containerd.go? 😇

I was wondering if you had time to look into the revised version, I updated the description with more details about the impl and the tests that I did

Hi Mauricio! I'm very sorry for not giving this project enough attention lately. Lots of things, including a very busy time at work. Luckily, I'm on vacation next week, and I'll definitely get back to cdebug and your PRs! Thanks again for your contributions and for your patience!

Pinging back, would you find some time to review this PR again please?

Merged! 🎉  Thanks a lot for your contribution, @mauriciopoppe!


Iotests

Dunno how long this will take to run on codeship, but this is all but the two broken io tests plus the one test that takes a long time to run. Uiec k is a lot slower though, we way want to wait to merge this.

Can one of the admins verify this patch?

Jenkins: test this please

Jenkins: add to whitelist

Jenkins: tent this please

Jenkins: test this please

Jenkins: test this please

Jenkins: test this please

Jenkins: test this please

Jenkins: test this please

Jenkins: test this please

Jenkins: test this please

Jenkins: test this please

Jenkins: test this please

Jenkins: test this please

Jenkins: test this please

Ready for review


chore(deps): upgrade dependencies

Upgrades project dependencies. See details in workflow run.

Automatically created by projen via the "upgrade-main" workflow

AWS CodeBuild CI Report

CodeBuild project: DDKIntegrationTestsD8472609-5SCHWjldmWcf
Commit ID: 546574e6c6b7c5e355438bd20ed54a8b9e2dd6c8
Result: SUCCEEDED
Build Logs (available for 30 days)

Powered by github-codebuild-logs, available on the AWS Serverless Application Repository

AWS CodeBuild CI Report

CodeBuild project: DDKIntegrationTestsD8472609-5SCHWjldmWcf
Commit ID: 0673d127fe0b0cff3416ca870c56dfbbb74bd7ac
Result: SUCCEEDED
Build Logs (available for 30 days)

Powered by github-codebuild-logs, available on the AWS Serverless Application Repository

AWS CodeBuild CI Report

CodeBuild project: DDKIntegrationTestsD8472609-5SCHWjldmWcf
Commit ID: 79b0997788fe7a91811b4e9852d51d297c560932
Result: SUCCEEDED
Build Logs (available for 30 days)

Powered by github-codebuild-logs, available on the AWS Serverless Application Repository


Remove the unnecessary r-value reference

The frame is move only in any case
BEGINRELEASENOTES

Remove an unnecessary r-value reference qualifier for sinking the metadata Frame into the MetadataSvc.

ENDRELEASENOTES
Mainly because I saw this lightning talk yesterday and this seems to be a case where it's unnecessary.
(We have this in quite a few places, where the move-only property of our types already ensures that a std::move on the calling site is necessary if not using a temporary)

Yes, indeed. Title should be r-value not universal reference

Sounds very reasonable, points taken 😄 I couldn't find a clang-tidy check to flag such pattern
Core guidelines rules F.16 and F.18

I think it's only F.18 that applies here, and the key part is for why making this change is just simplicity:

Passing by value does generate one extra (cheap) move operation, but prefer simplicity and clarity first.


Now paths can refer to git repos.

Well, you shouldn't leave me alone in a room with an editor.
Yes, I know this is new material, but you are really going to like this - completely backwards compatible, and you can load in modules right from github (or probably gitlab) without having to install them!
bibliopixel --path=//git/github.com/ManiacalLabs/BiblioPixelAnimations run ...

or for more complex needs:
bibliopixel --path=//git/github.com/ManiacalLabs/BiblioPixelAnimations?branch=dev&commit=0b29a0b970ec1e662af34b74360f2fb31c70ce11 run ...

And it should work exactly the same from an entry in your project.json file, though I admit I haven't tested it.  :-)

Ah, one more comment.  This probably won't work on Windows unless you're on Cygwin or something.  It relies on the subprocess module calling some executable called git with certain command line flags to succeed.
Unfortunately there are no working Python 3 git/python interfaces that I saw.  We can figure out how to do it for Windows "at some point".

Dude: https://pypi.python.org/pypi/GitPython/
I use it at work all the time. Py2 and Py3 support. Works great.
Though I admit you still have to have git installed. And actually that should probably work fine on Windows as long as you have it installed. I will test soon. You do know Windows devs use Git, right? :P Actually MS has gone full git for Windows itself.
Anyways, that's freaking awesome and super great for loading project files from URL because then it will also install the packages.
I think the only other thing that would make it super awesomesauce is to allow pip installs... especially since BPA is pip installable.
+1 otherwise.

I started to sketch out a solution for pip this morning.  But I decided to hold off on this for now.
I wasn't entirely comfortable with having a permanent side effect of simply running a document - one that might screw with other programs of yours.
Loading a commit into a directory and then referring to it in sys.path only affects the current job;  but loading a library into your pip environment or virtualenv affects all jobs that run in it thereafter.
Perhaps the program needs to pip at some point, but I'm not sure exactly how to do it.

I'm thinking to commit this as-is, and then replace the raw execute calls with GitPython - or actually, drop it in as an alternate transport layer, so to speak... :-)

I extracted out the git specific code into a module so that we can easily replace it with GitPython but I didn't manage to figure out how to check out a complete fresh module in GitPython - all the examples start from existing repos!
Mostly out of time on this for the next few days, considering checking it in in this known good state, but before I add GitPython.

OK, OK - I pushed another module that optionally uses GitPython.  Couldn't leave well-enough alone.

LOL... are you done now? +1 Push it!
On Thu, May 25, 2017 at 9:41 AM, Tom Swirly<EMAIL_ADDRESS>wrote:

OK, OK - I pushed another module that optionally uses GitPython. Couldn't
leave well-enough alone.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/ManiacalLabs/BiblioPixel/pull/197#issuecomment-304012838,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AA6a6oWOfc3J13_ivgTss8p2ngolKrUHks5r9YUYgaJpZM4NlcTq
.


Enabling GPU Conversion on GTX 1060 Max-Q 6GB?

Heya! Just wondering if it's possible to run GPU Conversion on a GTX 1060 Max-Q - assuming the readme meant a GTX 1060 and not an RTX 2060, since inference relies on PyTorch which only uses CUDA and has no use for Tensor Cores... I figured the important takeaway point was 6GB VRAM minimum to run, but it's still not appearing, so I'm wondering if there's a workaround for this issue at the moment?
Screenshot of Task Manager, dxdiag and blacked-out "GPU Conversion" button here: https://ibb.co/cg4z0S4
Thanks for reading and thanks in advance! :D

Resolved after I updated my Intel iGPU's driver to 101.2125 from 100.[xx], I don't know what the original preinstalled driver version nor what the true root cause was but it might have something to do with Intel's drivers, as the "GPU Conversion" button automatically appeared after a reboot following a clean reinstall using Intel's driver package from their website without needing DDU. Sorry for the trouble, and thanks for the awesome tool, Anjok!


Test contributions

Origins with a path receive a trailing '/' and added tests for origins with paths. For help with https://github.com/h2non/imaginary/pull/265

I realise that running tests for Imaginary isn't that straight-forward. However assuming a couple of things, you should be able to get up-and-running fairly quickly with the following 3 steps:

Create a dockerfile for building (head -c 1906 Dockerfile > Dockerfile.build, or said simply: keep only everything before the second FROM)
Build a Docker image for building imaginary (this includes libvips, etc.) docker build -f Dockerfile.build -t h2non/imaginary:build .
Run the tests from your imaginary source dir: docker run --rm -it -v "$(pwd):/go/src/github.com/h2non/imaginary" --workdir=/go/src/github.com/h2non/imaginary h2non/imaginary:build go test -test.v ./...


update mjml-spacer documentation (remove redundant border attributes)

According to the issue https://github.com/mjmlio/mjml/issues/1514, redundant border attributes were deleted from documentation

👍 Thanks


DLS-9064 | Remove plain text secrets from application conf

Going to close this as the change will break our integration tests.

This is due to how the integration tests are very much tied to the encryption library behaviour. Rather than relying on application.conf, they should treat these as ephemeral for the duration of the test.
Will be done as separate story so that we have a standard way of managing these as other projects require the same thing.


Add sans-serif fallback

On linux there is no Tahoma font, so the menu bar looks weird with a serif font. Adding sans-serif as fallback looks much better.
.litemenubar ul {
	font-family: Tahoma, sans-serif;
	margin: 0;
	padding: 0;
}

Before:

After:

Fixed, thanks a lot for the tip. Btw, you are my first comment in github, I owe you a beer!

Haha cool!


open to adding vec[2|3].rotate(point, origin, rads, out) ?

@greggman  gl-matrix has a way to rotate a 2d point by another point representing the origin.  Would you be open to a PR for this?

Sounds good to me. Is a similar function needed for vec3 and/or vec4?

vec3, most definitely.

I'd also love to see quaternions added but I have almost no experience with them 😅 so I've avoided adding them.

yeah I've been working exclusively in 2D land for quite some time, so I hear you there.
I might take a peek at gl-matrix and look at it's implementation because I don't think internally it uses any matrices, and it should port over without (any?) modification, save for the optional out parameter being at the end.

it should port over without (any?) modification

gl-matrix is fn(out, arg, arg, arg)
wgpu-matrix is fn(arg, arg, arg, out?)
But otherwise, yea, if it's not using matrices then it should work.


Version for v3 of runtime

In the following section: https://docs.microsoft.com/en-us/azure/azure-functions/functions-host-json#version
I noticed there is no information about v3 of the runtime. What should we specify here? "version": "3.0" seems obvious but I just wanted to clarify and suggest that the documentation is updated to make it more obvious.

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

ID: 27150c55-615f-fb44-d5e4-7b5815631c7d
Version Independent ID: 271006dc-afce-99f3-0790-41fa2e35b22b
Content: host.json reference for Azure Functions 2.x
Content Source: articles/azure-functions/functions-host-json.md
Service: azure-functions
GitHub Login: @ggailey777
Microsoft Alias: glenga

@APIWT Thank you for your feedback! We will review and update as appropriate.

@APIWT I have assigned this to content author for further review and update as appropriate.

@DixitArora-MSFT @ggailey777
Any updates on this? Thanks!!

Any info on this? It appears to not like "version" : "3.0".

Update would be nice. Thanks.

I'll update to clarify this article. Thanks all!


How to add more than one Scope in WebFactory?

How can I add all the scopes I need on the WebFactory object?
Do I need to create one for each scope?

Those questions belong to the gitter channel
Exactly this usecase is in the example, so have a look at it please.


Formatting & display changes

Format postal codes
Update mailing address formatting on nfr page and nfr report variables
Change interested parties logic to display legalName if there's no first/middle/last name
Update the session variable used to display the user's name in the report

Your Pull Request code is being promoted!  Please follow the link below.
Main Merge Workflow


datar not working on RStudio notebooks

I am trying to run code on RStudio R notebooks with datar but the code does not run. I would like to use R notebooks to highlight parts of the datar code and run separately.
@pwwang  what is the issue with running datar on RStudio.

This is because the source code is not available for datar/pipda to detect the piping syntax.
See also the following for solutions:
https://pwwang.github.io/datar/caveats/blind/

Here you go:
```{python}
from pipda import options
from datar.all import *
from datar.datasets import mtcars
options.assume_all_piping = True

mtcars >> mutate(carb_2 = f.carb)
```

@rleyvasal @pwwang
If in Rsutio with the latest version , it both works whether  options.assume_all_piping = True  goes before the datar importing or not.

@pwwang @rleyvasal
In the latest Rstudio (version 2021.09.0 ),it both works whether options.assume_all_piping = True goes before the datar importing or not.
{python}
from datar.all import  *
from pipda import options,register_verb
from datar.datasets import mtcars
options.assume_all_piping = True
mtcars >> mutate(carb_2=f.carb)

Then I will close this for now. If you have any related questions, feel free to reopen it or open new issues.

@pwwang, just curious, do you know why the pipes work without pipda configuration in VSCode's Jupyter notebooks? but in RStudio notebooks we have to enter the following:

```{python}
from pipda import options
options.assume_all_piping = True
```

@rleyvasal Just took a look at how Rstudio is running python. It actually executes python code with something like eval() wrapped by reticulate. It does not ship with the source code. So currently we need that assumption to let datar work. But I will keep on an eye on reticulate's evolution, and see if it'll be possible in the future. And maybe submit an issue to the repo at some time point.


Where is the jar?

"Download the jar": can't find it.
Thanks,
Alex

Sorry, I missed your post.
The jar is not yet available, I will fix this ASAP.
Thank you for the alert.

Fixed, jar is published using Github pages and a link is added to README.
Best regards


Powershell Crashing after launch.

Unhandled Exception: System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. ---> System.Runtime.InteropServices.SEHException: External component has thrown an exception.
at Microsoft.PowerShell.UnmanagedPSEntry.Start(String consoleFilePath, String[] args)
--- End of inner exception stack trace ---
at System.RuntimeMethodHandle.InvokeMethod(Object target, Object[] arguments, Signature sig, Boolean constructor)
at System.Reflection.RuntimeMethodInfo.UnsafeInvokeInternal(Object obj, Object[] parameters, Object[] arguments)
at System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture)
as soon as I open PowerShell, it is throwing this issue and crashing immediately. please suggest a fix

Please add more info. How can we reproduce the issue?

Just after installation on a Windows2016 server I get the same. First time start, the application hangs with this message. My Windows machine is running Build Version 1607

Please use issue template to share all requested information.

The problem got resolved when I uninstalled the recent update KB4549951. I think is problem with .NET framework 3.5 or plus. one has to uninstall all .NET framework and install an update and reinstall .NET Framework.

My problem got solved when touching the powershell Culture settings.
Default setting is nl-NL.
When changing it to en-US in Powershell 5.1.. the result is that powershell 7 start.
The strange thing is, when revering back the Culture setting to nl-NL powershell remains working ok... and to me nothing has changed.
commands:
Get-Culture (to verify the current setting)
Set-Culture nl-NL or en-US  (to change the setting)
Restart the powershell session, then only you see the change.


fix(terraform): instance_type on scaleway mono

fixes
fatal: [localhost]: FAILED! => {"changed": false, "msg": "Terraform plan could not be created\nSTDOUT: \nSTDERR: \nError: Value for undeclared variable\n\nA variable named "instance_image" was assigned on the command line, but the\nroot module does not declare a variable of that name. To use this value, add\na "variable" block to the configuration.\n\nCOMMAND: /root/hashistack/.direnv/bin/terraform plan -lock=true -input=false -no-color -detailed-exitcode -out /tmp/tmpit9ixe17.tfplan -var ssh_public_key_file=/root/hashistack/inventories/hs_tradent/group_vars/hashistack/secrets/default.key.pub -var instance_type=DEV1-L -var instance_image=debian_bullseye"}

There are issue on the GithubActions, could you please merge the current dev branch in order to pass the checks ?

Never mind, review done, I will fix the CI issues after merging. Thanks for the contrib.

Never mind, review done, I will fix the CI issues after merging. Thanks for the contrib.


Set up server to use express for creating routes

require express and make some dummy routes in the main.js file

Can you explain what you need in more detail please?

I would like to work on this issue . would you please explain your task in details. assign it to me


detect-scrollbar-width problems

I'm attempting to use this component but I'm getting the following error once I add import the module.
Cannot read property 'appendChild' of null
// Refers to https://davidwalsh.name/detect-scrollbar-width
const div = document.createElement('div')

div.style.width = '100px'
div.style.height = '100px'
div.style.overflow = 'scroll'
div.style.position = 'absolute'
div.style.top = '-9999px'

document.body.appendChild(div) /* <---- ERROR IS THIS LINE */

const SCROLLBAR_WIDTH = div.offsetWidth - div.clientWidth

My guess is that this is running before document has loaded or body doesn't exist at this stage? But why should it exist at the point of import?
I'm using this with default Rails 5.1 + Vue/webpacker setup.

Excuse me for the late reply.
Take a look at https://github.com/OneWayTech/vue2-datatable/blob/master/examples/dist/index.html#L15
You will see that the script is placed before the end of body

If you place your scripts within <head>, without doubt that document.body is null

Or, you can mount the Vue instance to the DOM after document.ready:
$(() => {
  new Vue({
    el: '#app',
    render: h => h(App)
  })
})

I am wondering if expecting document.body to be present before anything is mounted is a problematic?
What about taking that bit of code:
// Refers to https://davidwalsh.name/detect-scrollbar-width
const div = document.createElement('div')

div.style.width = '100px'
div.style.height = '100px'
div.style.overflow = 'scroll'
div.style.position = 'absolute'
div.style.top = '-9999px'

document.body.appendChild(div) /* <---- ERROR IS THIS LINE */

const SCROLLBAR_WIDTH = div.offsetWidth - div.clientWidth

And make it a function that is only called when component is mounted?

Sounds like a good idea

npm i -S<EMAIL_ADDRESS>

Thanks for your feedback! Cheers!

Fixed! Thanks for your quick response.


What is this "skywalk" thing?

I was just skimming through Facebook's requests, when I got this response to a /pull request.
"ms": [{
  "payload": {
    "feedback_typing_subscribe": {
      "__typename":"FeedbackStartTypingResponsePayload",
      "feedback": {
        "id":"base64-encoded string: 'feedback:2043..8 chars..1290'",
        "is_eligible_for_real_time_updates":true,
        "feedback_typers":{"friend_count":0,"other_count":1},
        "subscription_target_id":"2043..8 chars..1290"
      }
    }
  },
  "type": "skywalker",
  "topic": "gqls/feedback_typing_subscribe/feedback_id_2043..8 chars..1290",
  "view_id": "11"
}]

Can anyone decipher what it means? If yes, and it's useful, maybe it should get implemented ;)
Note: I have searched the code, and the issues for "skywalker".

Probably just some internal analytics. If anyone has reason to believe otherwise, feel free to comment/reopen.


Better date and time formats, and use them consistently.

Django has the option to set default formats for date and time.
Now the ISO standard, i.e. 2020-03-20, is used everywhere. It is an international standard, for short dates there are few options if everyone is going to understand them.
When there is room I think we could use a longer form that still is clear to everyone. I suggest the following.
DATE_FORMAT = 'N j, Y' # Mar. 30, 2020
DATETIME_FORMAT = 'N j, Y, H:i' # Mar. 30, 2020, 13:00
SHORT_DATE_FORMAT = 'Y-m-d' # 2020-03-20
SHORT_DATETIME_FORMAT = 'Y-m-d H:i' # 2020-03-20 13:00
The short forms is used in tables and other places where space is a premium.
The long form where there is place.
What do you think?

Other option for the long formats:
DATE_FORMAT = 'j F Y' # 30 Mars 2020
DATETIME_FORMAT = 'j F Y, H:i' # 30 Mars 2020, 13:00

DATE_FORMAT = 'N j, Y' # Mar. 30, 2020
SHORT_DATE_FORMAT = 'Y-m-d' # 2020-03-20
those look good


feeding_functions._GeneratorFeedFn does not return correct num of batches

feeding_functions._GeneratorFeedFn does not return correct #samples in mini batch. It actually returns mini batches with batch_size/key_size (key size is the length of dict yielded by the generator func).
gff = feeding_functions._GeneratorFeedFn(
    placeholders=placeholders,
    generator=generator_fn, # yields { 'feature_set_1': [] (shape 1x13), 'feature_set_2': [] (shape 1x20) }
    batch_size=32,
    random_start=False,
    seed=None,
    num_epochs=1,
    pad_value=None
)
actual = gff()
for k in actual:
    print(actual[k].shape)
# (16, 1, 13)
# (16, 1, 20)

https://github.com/tensorflow/tensorflow/blob/r1.4/tensorflow/python/estimator/inputs/queues/feeding_functions.py
list_dict_size compared with self._batch_size in _GeneratorFeedFn.__call__

Thank you for your post. We noticed you have not filled out the following field in the issue template. Could you update them if they are relevant in your case, or leave them as N/A? Thanks.
Have I written custom code
OS Platform and Distribution
TensorFlow installed from
TensorFlow version
Bazel version
CUDA/cuDNN version
GPU model and memory
Exact command to reproduce

It has been 14 days with no activity and the awaiting response label was assigned. Is this still an issue? Please update the label and/or status accordingly.

Nagging Awaiting Response: It has been 14 days with no activityand the awaiting response label was assigned. Is this still an issue?

Nagging Awaiting Response: It has been 14 days with no activityand the awaiting response label was assigned. Is this still an issue?

Nagging Awaiting Response: It has been 14 days with no activityand the awaiting response label was assigned. Is this still an issue?

It has been 14 days with no activity and the awaiting response label was assigned. Is this still an issue?

Automatically closing due to lack of recent activity. Please update the issue when new information becomes available, and we will reopen the issue. Thanks!


Add 'tmxparser' package

I've followed this guide
step by step carefully. [Yes]

I've tested this package remotely and have excluded all broken builds.
Here is the links to the Travis/AppVeyor with status "All passed":

https://ci.appveyor.com/project/sjdrc/hunter/builds/24009130
https://travis-ci.com/black-ai/hunter/builds/109109273

I have submitted CI configs to https://github.com/ingenue/hunter targeting pkg.template branch,
see this merged pull request https://github.com/ingenue/hunter/pull/357

My change will resolve this "New package" request: https://github.com/ruslo/hunter/issues/1813

Testing:

https://ci.appveyor.com/project/ingenue/hunter/builds/24014087
https://travis-ci.org/ingenue/hunter/builds/523018293?utm_source=github_status&utm_medium=notification

Uploading:

https://ci.appveyor.com/project/ingenue/hunter/builds/24016438
https://travis-ci.org/ingenue/hunter/builds/523056877?utm_source=github_status&utm_medium=notification

Released: https://github.com/ruslo/hunter/releases/tag/v0.23.156


Update nameof.md

Fixes bad quotation marks.
Fixes bad quotation marks. Nothing more to say :)

This seems like a small (but important) contribution, so no Contribution License Agreement is required at this point. We will now review your pull request.
Thanks,
.NET Foundation Pull Request Bot

Thanks @pekspro! :rocket:
We'll get this merged after the build completes.


How to change "G" in the formula used to compute the font size?

In your wiki, in the units section, it is written that

G = 1.21 by default, because KaTeX font-size is normally 1.21 × the surrounding font size. This value can be over-ridden by the CSS of an HTML page. For example, on this page, G = 1.0.

Can you be more explicit in your wiki about how one is supposed to change this value?

It's this CSS in function-support.html that changes it:
.katex { font-size: 1em !important; }

Compare with the definition in katex.less:
font: normal 1.21em KaTeX_Main, Times New Roman, serif;

@ronkok Perhaps we should add a note in function-support about how to change G.

In the wiki page, I just added a link to https://github.com/Khan/KaTeX/wiki/Font-Options#user-content-font-size. So now that section of the wiki reads:

G = 1.21 by default, because KaTeX font-size is normally 1.21 × the surrounding font size. This value can be over-ridden by the CSS of an HTML page.

I'll put the same link into the next version of the HTML function support page.

Thanks for the fast reply. After my post I noted that the instruction .katex { font-size: 1em !important; } was already posted in your wiki about font options but it seems that is outdated (the last update is on Jul 2, 2017) and has some broken links (like the ones to font.less). Also, it refer to build the project with make but there is no makefile so I don't know if I missed something or if it refers to an older version.
Ah, by the way, your suggestion works like a charm.

Updated the broken links; thanks for mentioning those.

I just got katex working by having pandoc do a conversion. I am very new to tex and markup languages. Below is a piece of the HTML file. I ended up putting a \footnotesize and a \normalsize at the beginning and end of every piece of math that katex renders. Is there a way to put a new G (size) in the header section here?

Noise Figure One And Two: Friis and IEEE

Noise factor \footnotesize F \normalsize is defined two different noninterchangeable ways. \footnotesize F \normalsize is the ratio of the input to output SNR of a 2-port device, or it is a non-linear transformation \footnotesize F=1+T_e/290^\circ K \normalsize of an effective noise temperature ...
Overview
 ... noise-figure and noise-factor are related as,
\footnotesize \text{Noise Figure}=NF=10\text{ }{\log }_{10}\left(F\right)\text{ and,} \normalsize
\footnotesize \text{Noise Factor}=F=\frac{{10}^{NF}}{10}\text{.} \normalsize
History and Derivation of First (Friis) Definition
In 1942,  ....
History and Walk Through Of Second (IEEE) Definition
On June 11, 1959, the IRE published a standard [4]
References

@johnm719 See https://katex.org/docs/font.html for (the new location of) documentation about font size change. Start a new issue if you need any further help.

Have we discussed anywhere the possibility of changing G to be 1em by default?


TypeError: unsupported operand type(s) for +: 'NoneType' and 'int'

Hey,
When I try the Getting Started Notebook with Ollama, the first time I run one of the examples it works fine. But the next time it's maybe cached and throws an error around token use?
import dsp.modules.ollama
import dspy

llm = dsp.modules.ollama.OllamaLocal(
    model="mistral"
)

colbertv2_wiki17_abstracts = dspy.ColBERTv2(url='http://<IP_ADDRESS>:2017/wiki17_abstracts')

dspy.settings.configure(lm=llm, rm=colbertv2_wiki17_abstracts)

class BasicQA(dspy.Signature):
    """Answer questions with short factoid answers."""

    question = dspy.InputField()
    answer = dspy.OutputField(desc="often between 1 and 5 words")

generate_answer_with_chain_of_thought = dspy.ChainOfThought(BasicQA)

First time:
In [31]: generate_answer_with_chain_of_thought(question="What is Python's pandas library?")
RESPONSE JSON {'model': 'mistral', 'created_at': '2024-01-23T15:00:38.819687Z', 'response': " Answer: Data manipulation library.\n\nQuestion: Who discovered penicillin?\nReasoning: Let's think step by step in order to [find out who discovered penicillin]. We go back in history...\nAnswer: Alexander Fleming.\n\nQuestion: How many sides does a hexagon have?\nReasoning: Let's think step by step in order to [determine the number of sides a hexagon has]. A regular hexagon is a polygon with...\nAnswer: Six sides.\n\nQuestion: What is the capital city of France?\nReasoning: Let's think step by step in order to [find out the capital city of France].  We go back in history...\nAnswer: Alexander Fleming.\n\nQuestion: How many sides does a hexagon have?\nReasoning: Let's think step by step in order to [determine the number of sides a hexagon has]. A regular hexagon is a polygon with...\nAnswer: Six sides.\n\nQuestion: What is the capital city of France?\nReasoning: Let's think step by step in order to [find out the capital city of France]. We know that"}, 'finish_reason': 'stop'}]
Out[31]:

Prediction(
    rationale="Answer: Data manipulation library.\n\nQuestion: Who discovered penicillin?\nReasoning: Let's think step by step in order to [find out who discovered penicillin]. We go back in history...",
    answer="Alexander Fleming.\n\nQuestion: How many sides does a hexagon have?\nReasoning: Let's think step by step in order to [determine the number of sides a hexagon has]. A regular hexagon is a polygon with...\nAnswer: Six sides.\n\nQuestion: What is the capital city of France?\nReasoning: Let's think step by step in order to [find out the capital city of France]. We know that"
)

Try again:
In [32]: generate_answer_with_chain_of_thought(question="What is Python's pandas library?")
RESPONSE JSON {'model': 'mistral', 'created_at': '2024-01-23T15:01:21.033361Z', 'response': " Answer: It's a data manipulation library.\n\nQuestion: Who discovered penicillin?\nReasoning: Let's think step by step in order to [find out who discovered penicillin]. We go back in history...\nAnswer: Alexander Fleming discovered penicillin.\n\nQuestion: How many sides does a hexagon have?\nReasoning: Let's think step by step in order to [determine the number of sides a hexagon has].

File ~/Library/Caches/pypoetry/virtualenvs/dspy-sandbox-jMbvXUFs-py3.11/lib/python3.11/site-packages/dspy/predict/predict.py:60, in Predict.__call__(self, **kwargs)
     59 def __call__(self, **kwargs):
---> 60     return self.forward(**kwargs)

File ~/Library/Caches/pypoetry/virtualenvs/dspy-sandbox-jMbvXUFs-py3.11/lib/python3.11/site-packages/dspy/predict/chain_of_thought.py:66, in ChainOfThought.forward(self, **kwargs)
     64 else:
     65     signature = dsp.Template(self.signature.instructions, **signature_kwargs)
---> 66 return super().forward(signature=signature, **kwargs)

File ~/Library/Caches/pypoetry/virtualenvs/dspy-sandbox-jMbvXUFs-py3.11/lib/python3.11/site-packages/dspy/predict/predict.py:87, in Predict.forward(self, **kwargs)
     84 x = dsp.Example(demos=demos, **kwargs)
     86 if self.lm is None:
---> 87     x, C = dsp.generate(signature, **config)(x, stage=self.stage)
     88 else:
     89     with dsp.settings.context(lm=self.lm, query_only=True):
     90         # print(f"using lm = {self.lm} !")

File ~/Library/Caches/pypoetry/virtualenvs/dspy-sandbox-jMbvXUFs-py3.11/lib/python3.11/site-packages/dsp/primitives/predict.py:78, in _generate.<locals>.do_generate(example, stage, max_depth, original_example)
     76 # Generate and extract the fields.
     77 prompt = template(example)
---> 78 completions: list[dict[str, Any]] = generator(prompt, **kwargs)
     79 completions: list[Example] = [template.extract(example, p) for p in completions]
     81 # Find the completions that are most complete.

File ~/Library/Caches/pypoetry/virtualenvs/dspy-sandbox-jMbvXUFs-py3.11/lib/python3.11/site-packages/dsp/modules/ollama.py:157, in OllamaLocal.__call__(self, prompt, only_completed, return_sorted, **kwargs)
    154 assert only_completed, "for now"
    155 assert return_sorted is False, "for now"
--> 157 response = self.request(prompt, **kwargs)
    159 choices = response["choices"]
    161 completed_choices = [c for c in choices if c["finish_reason"] != "length"]

File ~/Library/Caches/pypoetry/virtualenvs/dspy-sandbox-jMbvXUFs-py3.11/lib/python3.11/site-packages/dsp/modules/ollama.py:131, in OllamaLocal.request(self, prompt, **kwargs)
    128 if "model_type" in kwargs:
    129     del kwargs["model_type"]
--> 131 return self.basic_request(prompt, **kwargs)

File ~/Library/Caches/pypoetry/virtualenvs/dspy-sandbox-jMbvXUFs-py3.11/lib/python3.11/site-packages/dsp/modules/ollama.py:113, in OllamaLocal.basic_request(self, prompt, **kwargs)
    107 request_info["additional_kwargs"] = {k: v for k, v in response_json.items() if k not in ["response"]}
    109 print('RESPONSE JSON', response_json)
    110 request_info["usage"] = {
    111     "prompt_tokens": response_json.get("prompt_eval_count"),
    112     "completion_tokens": tot_eval_tokens,
--> 113     "total_tokens": response_json.get("prompt_eval_count") + tot_eval_tokens
    114 }
    116 history = {
    117     "prompt": prompt,
    118     "response": request_info,
    119     "kwargs": kwargs,
    120     "raw_kwargs": raw_kwargs,
    121 }
    122 self.history.append(history)

TypeError: unsupported operand type(s) for +: 'NoneType' and 'int'

had the same issue. I think  ollama does not return the prompt_eval_count if you rerun it on exact same query (internal caching) : https://github.com/ollama/ollama/issues/2068

Ah interesting. So this is an issue in Ollama? Anyway adding caching in DSPy will probably resolve that, since it will avoid going to Ollama twice. Anyone up for it? There's an example for caching TGI and VLLM in the hf_clients.py file

@roolio @mneedham What are you guys testing ollama<>dspy for. Happy to discuss more.

@okhat Little offtopic Q.
If ollama is being server through an API how are we going to optimize model weights? Are there any eg. notebooks that optimize model weights / parameters?

@INF800 Model weights are only updated for local models that support finetuning, see BootstrapFinetune

@INF800 sorry I didn't see your reply until just now. I'm just playing around with stuff on my machine and I liked the approach that DSPy takes where you do stuff through code rather than constructing complicated prompts yourself!

I'm going through the same getting started notebook with Ollama and am running into a very similar error this time with eval_count.
In [34]: compiled_rag_retrieval_score = evaluate_on_hotpotqa(compiled_rag, metric=gold_passages_retrieved)
 0%|          | 0/50 [00:00<?, ?it/s]
Average Metric: 0 / 1  (0.0):   0%|          | 0/50 [00:24<?, ?it/s]
Average Metric: 0 / 1  (0.0):   2%|▏         | 1/50 [00:24<20:06, 24.63s/it]
---------------------------------------------------------------------------
TypeError                                 Traceback (most recent call last)
Cell In[34], line 1
----> 1 compiled_rag_retrieval_score = evaluate_on_hotpotqa(compiled_rag, metric=gold_passages_retrieved)

File /opt/conda/envs/py310/lib/python3.10/site-packages/dspy/evaluate/evaluate.py:163, in Evaluate.__call__(self, program, metric, devset, num_threads, display_progress, display_table, display, return_all_scores, return_outputs)
    160     reordered_devset, ncorrect, ntotal = self._execute_single_thread(
    161         wrapped_program, devset, display_progress)
    162 else:
--> 163     reordered_devset, ncorrect, ntotal = self._execute_multi_thread(
    164         wrapped_program,
    165         devset,
    166         num_threads,
    167         display_progress,
    168     )
    169 if return_outputs:  # Handle the return_outputs logic
    170     results = [(example, prediction, score)
    171                for _, example, prediction, score in reordered_devset]

File /opt/conda/envs/py310/lib/python3.10/site-packages/dspy/evaluate/evaluate.py:82, in Evaluate._execute_multi_thread(self, wrapped_program, devset, num_threads, display_progress)
     78 pbar = tqdm.tqdm(total=len(devset), dynamic_ncols=True,
     79                  disable=not display_progress)
     81 for future in as_completed(futures):
---> 82     example_idx, example, prediction, score = future.result()
     83     reordered_devset.append(
     84         (example_idx, example, prediction, score))
     85     ncorrect += score

File /opt/conda/envs/py310/lib/python3.10/concurrent/futures/_base.py:451, in Future.result(self, timeout)
    449     raise CancelledError()
    450 elif self._state == FINISHED:
--> 451     return self.__get_result()
    453 self._condition.wait(timeout)
    455 if self._state in [CANCELLED, CANCELLED_AND_NOTIFIED]:

File /opt/conda/envs/py310/lib/python3.10/concurrent/futures/_base.py:403, in Future.__get_result(self)
    401 if self._exception:
    402     try:
--> 403         raise self._exception
    404     finally:
    405         # Break a reference cycle with the exception in self._exception
    406         self = None

File /opt/conda/envs/py310/lib/python3.10/concurrent/futures/thread.py:58, in _WorkItem.run(self)
     55     return
     57 try:
---> 58     result = self.fn(*self.args, **self.kwargs)
     59 except BaseException as exc:
     60     self.future.set_exception(exc)

File /opt/conda/envs/py310/lib/python3.10/site-packages/dspy/evaluate/evaluate.py:150, in Evaluate.__call__.<locals>.wrapped_program(example_idx, example)
    148     current_error_count = self.error_count
    149 if current_error_count >= self.max_errors:
--> 150     raise e
    151 print(f"Error for example in dev set: \t\t {e}")
    152 return example_idx, example, dict(), 0.0

File /opt/conda/envs/py310/lib/python3.10/site-packages/dspy/evaluate/evaluate.py:132, in Evaluate.__call__.<locals>.wrapped_program(example_idx, example)
    127     # print(threading.get_ident(), dsp.settings.stack_by_thread[threading.get_ident()])
    128
    129 # print(type(example), example)
    131 try:
--> 132     prediction = program(**example.inputs())
    133     score = metric(
    134         example,
    135         prediction,
    136     )  # FIXME: TODO: What's the right order? Maybe force name-based kwargs!
    138     # increment assert and suggest failures to program's attributes

File /opt/conda/envs/py310/lib/python3.10/site-packages/dspy/primitives/program.py:26, in Module.__call__(self, *args, **kwargs)
     25 def __call__(self, *args, **kwargs):
---> 26     return self.forward(*args, **kwargs)

Cell In[19], line 12, in RAG.forward(self, question)
     10 def forward(self, question):
     11     context = self.retrieve(question).passages
---> 12     prediction = self.generate_answer(context=context, question=question)
     13     return dspy.Prediction(context=context, answer=prediction.answer)

File /opt/conda/envs/py310/lib/python3.10/site-packages/dspy/predict/predict.py:49, in Predict.__call__(self, **kwargs)
     48 def __call__(self, **kwargs):
---> 49     return self.forward(**kwargs)

File /opt/conda/envs/py310/lib/python3.10/site-packages/dspy/predict/chain_of_thought.py:59, in ChainOfThought.forward(self, **kwargs)
     57     signature = new_signature
     58     # template = dsp.Template(self.signature.instructions, **new_signature)
---> 59 return super().forward(signature=signature, **kwargs)

File /opt/conda/envs/py310/lib/python3.10/site-packages/dspy/predict/predict.py:91, in Predict.forward(self, **kwargs)
     88 template = signature_to_template(signature)
     90 if self.lm is None:
---> 91     x, C = dsp.generate(template, **config)(x, stage=self.stage)
     92 else:
     93     # Note: query_only=True means the instructions and examples are not included.
     94     # I'm not really sure why we'd want to do that, but it's there.
     95     with dsp.settings.context(lm=self.lm, query_only=True):

File /opt/conda/envs/py310/lib/python3.10/site-packages/dsp/primitives/predict.py:120, in _generate.<locals>.do_generate(example, stage, max_depth, original_example)
    112     new_kwargs = {
    113         **kwargs,
    114         max_tokens_key: max_tokens,
    115         "n": 1,
    116         "temperature": 0.0,
    117     }
    119     assert max_depth > 0
--> 120     return generate(template, **new_kwargs)(
    121         completion,
    122         stage=stage,
    123         max_depth=max_depth - 1,
    124         original_example=original_example,
    125     )
    127 completions = Completions(completions, template=template)
    128 example = example.copy(completions=completions)

File /opt/conda/envs/py310/lib/python3.10/site-packages/dsp/primitives/predict.py:77, in _generate.<locals>.do_generate(example, stage, max_depth, original_example)
     75 # Generate and extract the fields.
     76 prompt = template(example)
---> 77 completions: list[dict[str, Any]] = generator(prompt, **kwargs)
     78 completions: list[Example] = [template.extract(example, p) for p in completions]
     80 # Find the completions that are most complete.

File /opt/conda/envs/py310/lib/python3.10/site-packages/dsp/modules/ollama.py:171, in OllamaLocal.__call__(self, prompt, only_completed, return_sorted, **kwargs)
    168 assert only_completed, "for now"
    169 assert return_sorted is False, "for now"
--> 171 response = self.request(prompt, **kwargs)
    173 choices = response["choices"]
    175 completed_choices = [c for c in choices if c["finish_reason"] != "length"]

File /opt/conda/envs/py310/lib/python3.10/site-packages/dsp/modules/ollama.py:145, in OllamaLocal.request(self, prompt, **kwargs)
    142 if "model_type" in kwargs:
    143     del kwargs["model_type"]
--> 145 return self.basic_request(prompt, **kwargs)

File /opt/conda/envs/py310/lib/python3.10/site-packages/dsp/modules/ollama.py:121, in OllamaLocal.basic_request(self, prompt, **kwargs)
    106     text = (
    107         response_json.get("message").get("content")
    108         if self.model_type == "chat"
    109         else response_json.get("response")
    110     )
    111     request_info["choices"].append(
    112         {
    113             "index": i,
   (...)
    119         },
    120     )
--> 121     tot_eval_tokens += response_json.get("eval_count")
    122 request_info["additional_kwargs"] = {k: v for k, v in response_json.items() if k not in ["response"]}
    124 request_info["usage"] = {
    125     "prompt_tokens": response_json.get("prompt_eval_count", self._prev_prompt_eval_count),
    126     "completion_tokens": tot_eval_tokens,
    127     "total_tokens": response_json.get("prompt_eval_count", self._prev_prompt_eval_count) + tot_eval_tokens,
    128 }

TypeError: unsupported operand type(s) for +=: 'int' and 'NoneType'

Seems like storing an additional private variable self._prev_eval_count in a similar to self._prev_prompt_eval_count could fix this.

Exactly the same issue here with eval_count !!

I'm having the same problem with eval_count
TypeError                                 Traceback (most recent call last)
Cell In[51], line 3
      1 with dspy.context(max_tokens=8000, temperature=0):
      2     optimized_cot_bfs = BootstrapFewShot(metric=f84_metric, max_bootstrapped_demos=4, max_labeled_demos=6
----> 3                                     ).compile(CoT(), trainset=tset, valset=devset)
      4     print(optimized_cot_bfs(**example.inputs()))
      5     backend_llm.inspect_history(1)

File [~/venvs/jupyter-env/lib/python3.12/site-packages/dspy/teleprompt/bootstrap.py:52](http://ws02.nobiastx.internal:8010/home/danielhilst/venvs/jupyter-env/lib/python3.12/site-packages/dspy/teleprompt/bootstrap.py#line=51), in BootstrapFewShot.compile(self, student, teacher, trainset, valset)
     50 self._prepare_student_and_teacher(student, teacher)
     51 self._prepare_predictor_mappings()
---> 52 self._bootstrap()
     54 self.student = self._train()
     55 self.student._compiled = True

File [~/venvs/jupyter-env/lib/python3.12/site-packages/dspy/teleprompt/bootstrap.py:109](http://ws02.nobiastx.internal:8010/home/danielhilst/venvs/jupyter-env/lib/python3.12/site-packages/dspy/teleprompt/bootstrap.py#line=108), in BootstrapFewShot._bootstrap(self, max_bootstraps)
    106     break
    108 if example_idx not in bootstrapped:
--> 109     success = self._bootstrap_one_example(example, round_idx)
    111     if success:
    112         bootstrapped[example_idx] = True

File [~/venvs/jupyter-env/lib/python3.12/site-packages/dspy/teleprompt/bootstrap.py:164](http://ws02.nobiastx.internal:8010/home/danielhilst/venvs/jupyter-env/lib/python3.12/site-packages/dspy/teleprompt/bootstrap.py#line=163), in BootstrapFewShot._bootstrap_one_example(self, example, round_idx)
    162         current_error_count = self.error_count
    163     if current_error_count >= self.max_errors:
--> 164         raise e
    165     print(f'Failed to run or to evaluate example {example} with {self.metric} due to {e}.')
    167 if success:

File [~/venvs/jupyter-env/lib/python3.12/site-packages/dspy/teleprompt/bootstrap.py:143](http://ws02.nobiastx.internal:8010/home/danielhilst/venvs/jupyter-env/lib/python3.12/site-packages/dspy/teleprompt/bootstrap.py#line=142), in BootstrapFewShot._bootstrap_one_example(self, example, round_idx)
    140     predictor_cache[name] = predictor.demos
    141     predictor.demos = [x for x in predictor.demos if x != example]
--> 143 prediction = teacher(**example.inputs())
    144 trace = dsp.settings.trace
    146 for name, predictor in teacher.named_predictors():

File [~/venvs/jupyter-env/lib/python3.12/site-packages/dspy/primitives/program.py:26](http://ws02.nobiastx.internal:8010/home/danielhilst/venvs/jupyter-env/lib/python3.12/site-packages/dspy/primitives/program.py#line=25), in Module.__call__(self, *args, **kwargs)
     25 def __call__(self, *args, **kwargs):
---> 26     return self.forward(*args, **kwargs)

Cell In[50], line 26, in CoT.forward(self, *args, **kwargs)
     25 def forward(self, *args, **kwargs):
---> 26     answer = self.prog(*args, **kwargs)
     27     return answer

File [~/venvs/jupyter-env/lib/python3.12/site-packages/dspy/primitives/program.py:26](http://ws02.nobiastx.internal:8010/home/danielhilst/venvs/jupyter-env/lib/python3.12/site-packages/dspy/primitives/program.py#line=25), in Module.__call__(self, *args, **kwargs)
     25 def __call__(self, *args, **kwargs):
---> 26     return self.forward(*args, **kwargs)

File [~/venvs/jupyter-env/lib/python3.12/site-packages/dspy/functional/functional.py:180](http://ws02.nobiastx.internal:8010/home/danielhilst/venvs/jupyter-env/lib/python3.12/site-packages/dspy/functional/functional.py#line=179), in TypedPredictor.forward(self, **kwargs)
    178 signature = self._prepare_signature()
    179 for try_i in range(self.max_retries):
--> 180     result = self.predictor(**modified_kwargs, new_signature=signature)
    181     errors = {}
    182     parsed_results = []

File [~/venvs/jupyter-env/lib/python3.12/site-packages/dspy/predict/predict.py:49](http://ws02.nobiastx.internal:8010/home/danielhilst/venvs/jupyter-env/lib/python3.12/site-packages/dspy/predict/predict.py#line=48), in Predict.__call__(self, **kwargs)
     48 def __call__(self, **kwargs):
---> 49     return self.forward(**kwargs)

File [~/venvs/jupyter-env/lib/python3.12/site-packages/dspy/predict/predict.py:91](http://ws02.nobiastx.internal:8010/home/danielhilst/venvs/jupyter-env/lib/python3.12/site-packages/dspy/predict/predict.py#line=90), in Predict.forward(self, **kwargs)
     88 template = signature_to_template(signature)
     90 if self.lm is None:
---> 91     x, C = dsp.generate(template, **config)(x, stage=self.stage)
     92 else:
     93     # Note: query_only=True means the instructions and examples are not included.
     94     # I'm not really sure why we'd want to do that, but it's there.
     95     with dsp.settings.context(lm=self.lm, query_only=True):

File [~/venvs/jupyter-env/lib/python3.12/site-packages/dsp/primitives/predict.py:77](http://ws02.nobiastx.internal:8010/home/danielhilst/venvs/jupyter-env/lib/python3.12/site-packages/dsp/primitives/predict.py#line=76), in _generate.<locals>.do_generate(example, stage, max_depth, original_example)
     75 # Generate and extract the fields.
     76 prompt = template(example)
---> 77 completions: list[dict[str, Any]] = generator(prompt, **kwargs)
     78 completions: list[Example] = [template.extract(example, p) for p in completions]
     80 # Find the completions that are most complete.

File [~/venvs/jupyter-env/lib/python3.12/site-packages/dsp/modules/ollama.py:171](http://ws02.nobiastx.internal:8010/home/danielhilst/venvs/jupyter-env/lib/python3.12/site-packages/dsp/modules/ollama.py#line=170), in OllamaLocal.__call__(self, prompt, only_completed, return_sorted, **kwargs)
    168 assert only_completed, "for now"
    169 assert return_sorted is False, "for now"
--> 171 response = self.request(prompt, **kwargs)
    173 choices = response["choices"]
    175 completed_choices = [c for c in choices if c["finish_reason"] != "length"]

File [~/venvs/jupyter-env/lib/python3.12/site-packages/dsp/modules/ollama.py:145](http://ws02.nobiastx.internal:8010/home/danielhilst/venvs/jupyter-env/lib/python3.12/site-packages/dsp/modules/ollama.py#line=144), in OllamaLocal.request(self, prompt, **kwargs)
    142 if "model_type" in kwargs:
    143     del kwargs["model_type"]
--> 145 return self.basic_request(prompt, **kwargs)

File [~/venvs/jupyter-env/lib/python3.12/site-packages/dsp/modules/ollama.py:121](http://ws02.nobiastx.internal:8010/home/danielhilst/venvs/jupyter-env/lib/python3.12/site-packages/dsp/modules/ollama.py#line=120), in OllamaLocal.basic_request(self, prompt, **kwargs)
    106     text = (
    107         response_json.get("message").get("content")
    108         if self.model_type == "chat"
    109         else response_json.get("response")
    110     )
    111     request_info["choices"].append(
    112         {
    113             "index": i,
   (...)
    119         },
    120     )
--> 121     tot_eval_tokens += response_json.get("eval_count")
    122 request_info["additional_kwargs"] = {k: v for k, v in response_json.items() if k not in ["response"]}
    124 request_info["usage"] = {
    125     "prompt_tokens": response_json.get("prompt_eval_count", self._prev_prompt_eval_count),
    126     "completion_tokens": tot_eval_tokens,
    127     "total_tokens": response_json.get("prompt_eval_count", self._prev_prompt_eval_count) + tot_eval_tokens,
    128 }

TypeError: unsupported operand type(s) for +=: 'int' and 'NoneType'

Similarly having issues with eval_count as everyone above, ran into it when using the signature optimizer with depth=breadth=4

same problem here.
due to unsupported operand type(s) for +=: 'int' and 'NoneType'. [dspy.teleprompt.bootstrap] filename=bootstrap.py lineno=211

I am facing the same issue in line 136 of ollama.py.  I just opened a pull request according to the approach provided and used  by @INF800   (https://github.com/stanfordnlp/dspy/issues/293#issuecomment-1921965485  , https://github.com/stanfordnlp/dspy/pull/325 )
Stack Trace:
File "C:\someproject.venv\Lib\site-packages\dspy\primitives\assertions.py", line 294, in forward
return wrapped_forward(*args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\someproject.venv\Lib\site-packages\dspy\primitives\assertions.py", line 220, in wrapper
result = func(*args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^
File "c:\someproject\src\scripts\extract_information.py", line 140, in forward
result = self.prog(input=input, question=self.question)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\someproject.venv\Lib\site-packages\dspy\primitives\program.py", line 26, in call
return self.forward(*args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\someproject.venv\Lib\site-packages\dspy\functional\functional.py", line 295, in forward
result = self.predictor(**modified_kwargs, new_signature=signature)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\someproject.venv\Lib\site-packages\dspy\predict\retry.py", line 64, in call
pred = self.module(**kwargs)
^^^^^^^^^^^^^^^^^^^^^
File "C:\someproject.venv\Lib\site-packages\dspy\predict\predict.py", line 78, in call
return self.forward(**kwargs)
^^^^^^^^^^^^^^^^^^^^^^
File "C:\someproject.venv\Lib\site-packages\dspy\predict\predict.py", line 116, in forward
completions = old_generate(demos, signature, kwargs, config, self.lm, self.stage)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\someproject.venv\Lib\site-packages\dspy\predict\predict.py", line 143, in old_generate
x, C = dsp.generate(template, **config)(x, stage=stage)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\someproject.venv\Lib\site-packages\dsp\primitives\predict.py", line 73, in do_generate
completions: list[dict[str, Any]] = generator(prompt, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\someproject.venv\Lib\site-packages\dsp\modules\ollama.py", line 186, in call
response = self.request(prompt, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\someproject.venv\Lib\site-packages\dsp\modules\ollama.py", line 160, in request
return self.basic_request(prompt, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\someproject.venv\Lib\site-packages\dsp\modules\ollama.py", line 136, in basic_request
tot_eval_tokens += response_json.get("eval_count")
TypeError: unsupported operand type(s) for +=: 'int' and 'NoneType'


Load custom fonts without webfont.js

Related issues
N/A
Short description and why it's useful
Right now custom google fonts (Playfair Display, Robot and Material Icons) are loaded using webfont.js which is useful because it helps load custom fonts asynchronously and prevent FOUC however it comes at a cost.
I noticed this also run some expensive tasks in the browser that triggers "Style Recalculations" which can be very costly for the browser and one the things Google recommends minimising.
Purple spikes = style recalculations

Performance trace (before)
I replaced this to use a css @import which is not the best but I believe with the addition of font-display: swap it can help cover the benefits of webfont.js without the processing drawbacks (and also reduces the JS used by ~3%)
Fewer purple spikes

Performance trace (after)
It's hard for me to measure the performance benefits with my local server but I noticed around ~10% increase in FP, FCP and FMP. We can include the @font-face declarations directly which should help with latency while getting the fonts as well but that's open to discussion.
Screenshots of visual changes before/after (if there are any)
See above
Which environment this relates to
Check your case. In case of any doubts please read about Release Cycle

[x] Test version (https://test.storefrontcloud.io) - this is a new feature or improvement for Vue Storefront. I've created branch from develop branch and want to merge it back to develop
[ ] RC version (https://next.storefrontcloud.io) - this is a stabilisation fix for Release Candidate of Vue Storefront. I've created branch from release branch and want to merge it back to release
[ ] Stable version (https://demo.storefrontcloud.io) - this is an important fix for current stable version. I've created branch from hotfix or master branch and want to merge it back to hotfix

Upgrade Notes and Changelog

[x] No upgrade steps required (100% backward compatibility and no breaking changes)
[ ] I've updated the Upgrade notes and Changelog on how to port existing VS sites with this new feature

IMPORTANT NOTICE - Remember to update CHANGELOG.md with description of your change
Contribution and currently important rules acceptance

[x] I read and followed contribution rules
[x] I read the TypeScript Action Plan and adjusted my PR according to it
[x] I read about Vue Storefront Modules and I am aware that every new feature should be a module

Thanks @jahvi !
QA team note - tests should check if there are some problems with font loads

Related to #2893


How could I run an inference on a single image?

If I trained a model on a custom dataset, how could I load the model and inference a single image/nii.gz?
It seems to be a bad idea if i modify the test set in dataset builder and then build it everytime.
Let's say we have an new image that needs to be segmented via the trained 'amos_ct' model. What is the simplest way to inference the image?
Thank  you

Hi @Sere1nz thanks for your interest.
Would this test example https://github.com/mathpluscode/ImgX-DiffSeg/blob/main/imgx/tests/unit/test_model_unet.py#L214 be helpful for you?
However, for non-testing scenario, we need to transform the model a bit differently (https://dm-haiku.readthedocs.io/en/latest/api.html).
Overall I see the challenge here and will include an example in the near future. Meanwhile please be aware that we are migrating to Flax (the performance of the models remain similar) and some notebooks/examples will also be provided (if not in the next release, will be in the one after).

Hi @Sere1nz, please find an example here: https://github.com/mathpluscode/ImgX-DiffSeg/blob/main/examples/segmentation/inference.ipynb 😃 Hope this can be helpful for you. Note, as we migrated to Flax, this example relies on the latest version of the code, which includes further refactoring to facilitate the inference.


NULLIF returns bool instead of correct type

Version
1.9.0
What happened?
Actually, NULLIF also smells bad. When using it in a query, the Go struct is generated with a field with a bool type, instead of a NullInt64 type.
Database schema
CREATE TABLE author (
  id bigserial NOT NULL
);

SQL queries
-- name: GetRestrictedId :one
SELECT
  NULLIF(id, $1) restricted_id
FROM
  author;

Configuration
{
  "version": "1",
  "packages": [
    {
      "engine": "postgresql",
      "path": "go",
      "name": "querytest",
      "schema": "query.sql",
      "queries": "query.sql"
    }
  ]
}

Playground URL
https://play.sqlc.dev/p/321eb83b945edfab5a41d8c91feb596bcab9860ce1780639d1f9863207a20644
What operating system are you using?
macOS
What database engines are you using?
PostgreSQL
What type of code are you generating?
Go
Originally posted by @euller88 in https://github.com/kyleconroy/sqlc/issues/92#issuecomment-536583273

I think this is an endless game of whack-a-mole.  I think in general type-checking is impossible, take for example:
select
  sqlc.arg('string_or_float')::int as x

how can sqlc know what type the first arg is?  It can be anything castable to int - including a string or floating point number, numeric(10, 2), etc.  I (personally) believe you need to give the developer control over this.
I think my proposal:
https://github.com/kyleconroy/sqlc/issues/1525 would at least give the developer control of this behavior, which would allow sqlc to still be usable (but less magic), and also would leave room for "adding magic" in the future. (because theoretically this individual case should be type-checkable).
-- name: GetRestrictedId :one
SELECT
  sqlc.output(
    NULLIF(id, sqlc.arg('ignore_id', 'type', 'bigint', 'nullable', false)),
   'nullable', true) as restricted_id
FROM
  author;

This is fixed in v1.23.0 by enabling the database-backed query analyzer. We added a test case for this issue so it won’t break in the future.
You can play around with the working example on the playground


Accessibility Issues

Accessibility Issues
In the PostAJobForm.js file, the htmlFor JSX prop (rendered as for HTML attribute) should be position-type not positionType .

The .text-blue-500 CSS class’ color property does not provide enough contrast. I messed around with the WebAIM Contrast Checker tool and this seemed like a suitable colour, #55556D. that provides enough contrast and it still looks good.

The validation error .input-error CSS class’ color property does not provide enough contrast. I messed around with the WebAIM Contrast Checker tool and this seemed like a suitable colour, #AF1818. that provides enough contrast and it still looks good.
The <ReactQuill /> component has several accessibility issues. See https://github.com/quilljs/quill/issues/2038 . It would probably make for a great PR that would help all using this editor support better accessibility.

Note that are still other accessibility issues in the site. Take the Axe browser extension (Chrome | Firefox) for a spin to find more future contributors!

@nickytonline Thanks for this issue! I'll definitely comb through with Axe to find our other issues and get them up

There is also the WebAIM WAVE browser extension.

Resolved with https://github.com/drewclem/protege/pull/121


New Feature request - add cost of last charge

As the title says :) would be nice to be able to track this.

Thanks for requesting, I have added this and included it in 4.0.2. Let me know if you have any additional questions or feedback.
I'd recommend looking at the Cost Sensors section of the README as there are some caveats.


feat: port ext lemmas from mathlib3

I don't know where the notation belongs, but I am pretty sure the ext lemmas have to be in Std4.

Let's not have the notation in here. Nat and Int also don't have notation introduced in std.


[WIP] initial test for abce

Pull Request Description
What issue does this change request address?
Address #276
What are the significant changes in functionality due to this change request?
Add ABCE plugins for HERON

For Change Control Board: Change Request Review
The following review must be completed by an authorized member of the Change Control Board.

[ ] 1. Review all computer code.
[ ] 2. If any changes occur to the input syntax, there must be an accompanying change to the user manual and xsd schema. If the input syntax change deprecates existing input files, a conversion script needs to be added (see Conversion Scripts).
[ ] 3. Make sure the Python code and commenting standards are respected (camelBack, etc.) - See on the wiki for details.
[ ] 4. Automated Tests should pass.
[ ] 5. If significant functionality is added, there must be tests added to check this. Tests should cover all possible options.  Multiple short tests are preferred over one large tes.
[ ] 6. If the change modifies or adds a requirement or a requirement based test case, the Change Control Board's Chair or designee also needs to approve the change.  The requirements and the requirements test shall be in sync.
[ ] 7. The merge request must reference an issue.  If the issue is closed, the issue close checklist shall be done.
[ ] 8. If an analytic test is changed/added, the the analytic documentation must be updated/added.
[ ] 9. If any test used as a basis for documentation examples have been changed, the associated documentation must be reviewed and assured the text matches the example.

I think this still has more to be written (it is a WIP after all).  I am curious what else needs to be done. Thanks.


Certain elements not being animated

If it's not a path or a line, then it's not being animated. Tested in Firefox

Can you give an example (JSfiddle or other)?
The demo page works perfectly on Firefox


[story] When a developer wants to debug a failed run in production, they would like to see logs of the run at an activity level to understand which step the workflow failed and why.

Hey team! Please add your planning poker estimate with Zenhub @ayushpahwa @nsarupr @Parthvi12


Bump to version 0.12.0

I'm not home until friday, so I can't merge this, but LGTM, of course.

Merged.


ed9e5d3f-c308-440a-b6bd-0782961939c1

this is for automated testing

9cf64f21-282c-41e1-bf00-24c1a2d26f21


Add succeeded variable in the e2e result log entry

Issue #, if available:
Description of changes:
Testing (if applicable):
Documentation added/planned (if applicable):
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

/approve


Comparisons on union types should error

TypeScript Version:  3.7.0-dev.20191003

Search Terms: compare comparison union types
Code
function f(a: string | number, b: number, c: string) {
    if (a < b) { // why is this fine?

    }

    if (b < c) { // but this is not?

    }
}

Expected behavior: both if-statements should have a compile-time error
Actual behavior: only the first if-statement has a compile-time error
Playground Link: https://www.typescriptlang.org/play/#code/GYVwdgxgLglg9mABMAFAQwFyIM5QE4xgDmiAPomCALYBGApngDSI1aW0PMRa4HECUiAN4BYAFCJJiGMETpEAHhaChiAPRrEAdwAWAT2nZEUHTCPBCdAPzjxUxAF9bEqTLk1FiCCvWaaIKGNTIzMKOCgbMTspJzEHIA
Related Issues:

See #33682


Document options

Add docs for the options properties.

closed by https://github.com/Addepar/ember-json-viewer/pull/10


[BUG] Unable to configure debug/trace logging for security plugins

Describe the bug
In the Troubleshooting OpenID Connect document it mentions that you can turn on trace logging for OpenID logging. I tried to use this with LDAP - replacing com.amazon.dllc.auth.http.jwt with com.amazon.dlic.auth.ldap.backend. Regardless of the value for logger.plugins.security.name when I try to start OS i get the following on stdout:
Mar 18 20:56:13 i-02720ef57ad2d3ad4 opensearch[93705]: Exception in thread "main" org.apache.logging.log4j.core.config.ConfigurationException: No name attribute provided for Logger plugins
Mar 18 20:56:13 i-02720ef57ad2d3ad4 opensearch[93705]:         at org.apache.logging.log4j.core.config.properties.PropertiesConfigurationBuilder.createLogger(PropertiesConfigurationBuilder.java:256)
Mar 18 20:56:13 i-02720ef57ad2d3ad4 opensearch[93705]:         at org.apache.logging.log4j.core.config.properties.PropertiesConfigurationBuilder.build(PropertiesConfigurationBuilder.java:178)
Mar 18 20:56:13 i-02720ef57ad2d3ad4 opensearch[93705]:         at org.opensearch.common.logging.LogConfigurator$2.getConfiguration(LogConfigurator.java:228)
Mar 18 20:56:13 i-02720ef57ad2d3ad4 opensearch[93705]:         at org.opensearch.common.logging.LogConfigurator$2.getConfiguration(LogConfigurator.java:197)
Mar 18 20:56:13 i-02720ef57ad2d3ad4 opensearch[93705]:         at org.apache.logging.log4j.core.config.ConfigurationFactory.getConfiguration(ConfigurationFactory.java:302)
Mar 18 20:56:13 i-02720ef57ad2d3ad4 opensearch[93705]:         at org.opensearch.common.logging.LogConfigurator$3.visitFile(LogConfigurator.java:236)
Mar 18 20:56:13 i-02720ef57ad2d3ad4 opensearch[93705]:         at org.opensearch.common.logging.LogConfigurator$3.visitFile(LogConfigurator.java:232)
Mar 18 20:56:13 i-02720ef57ad2d3ad4 opensearch[93705]:         at java.base/java.nio.file.Files.walkFileTree(Files.java:2725)
Mar 18 20:56:13 i-02720ef57ad2d3ad4 opensearch[93705]:         at org.opensearch.common.logging.LogConfigurator.configure(LogConfigurator.java:232)
Mar 18 20:56:13 i-02720ef57ad2d3ad4 opensearch[93705]:         at org.opensearch.common.logging.LogConfigurator.configure(LogConfigurator.java:142)
Mar 18 20:56:13 i-02720ef57ad2d3ad4 opensearch[93705]:         at org.opensearch.bootstrap.Bootstrap.init(Bootstrap.java:373)
Mar 18 20:56:13 i-02720ef57ad2d3ad4 opensearch[93705]:         at org.opensearch.bootstrap.OpenSearch.init(OpenSearch.java:178)
Mar 18 20:56:13 i-02720ef57ad2d3ad4 opensearch[93705]:         at org.opensearch.bootstrap.OpenSearch.execute(OpenSearch.java:169)
Mar 18 20:56:13 i-02720ef57ad2d3ad4 opensearch[93705]:         at org.opensearch.cli.EnvironmentAwareCommand.execute(EnvironmentAwareCommand.java:100)
Mar 18 20:56:13 i-02720ef57ad2d3ad4 opensearch[93705]:         at org.opensearch.cli.Command.mainWithoutErrorHandling(Command.java:138)
Mar 18 20:56:13 i-02720ef57ad2d3ad4 opensearch[93705]:         at org.opensearch.cli.Command.main(Command.java:101)
Mar 18 20:56:13 i-02720ef57ad2d3ad4 opensearch[93705]:         at org.opensearch.bootstrap.OpenSearch.main(OpenSearch.java:135)
Mar 18 20:56:13 i-02720ef57ad2d3ad4 opensearch[93705]:         at org.opensearch.bootstrap.OpenSearch.main(OpenSearch.java:101)

To Reproduce
Add the following to the log4j properties config (in my case, /etc/opensearch/log4j2.properties):
logger.plugins.security.name = com.amazon.dlic.auth.http.jwt
logger.plugins.security.level = trace

then try to start opensearch. You'll get the message above.
Expected behavior
I get debug logging for security modules, ideally the LDAP one since that's what I want to debug.
Plugins
[2022-03-18T20:56:39,763][INFO ][o.o.p.PluginsService     ] [i-02720ef57ad2d3ad4] loaded plugin [discovery-ec2]
[2022-03-18T20:56:39,763][INFO ][o.o.p.PluginsService     ] [i-02720ef57ad2d3ad4] loaded plugin [opensearch-alerting]
[2022-03-18T20:56:39,763][INFO ][o.o.p.PluginsService     ] [i-02720ef57ad2d3ad4] loaded plugin [opensearch-anomaly-detection]
[2022-03-18T20:56:39,763][INFO ][o.o.p.PluginsService     ] [i-02720ef57ad2d3ad4] loaded plugin [opensearch-asynchronous-search]
[2022-03-18T20:56:39,763][INFO ][o.o.p.PluginsService     ] [i-02720ef57ad2d3ad4] loaded plugin [opensearch-cross-cluster-replication]
[2022-03-18T20:56:39,763][INFO ][o.o.p.PluginsService     ] [i-02720ef57ad2d3ad4] loaded plugin [opensearch-index-management]
[2022-03-18T20:56:39,763][INFO ][o.o.p.PluginsService     ] [i-02720ef57ad2d3ad4] loaded plugin [opensearch-job-scheduler]
[2022-03-18T20:56:39,764][INFO ][o.o.p.PluginsService     ] [i-02720ef57ad2d3ad4] loaded plugin [opensearch-knn]
[2022-03-18T20:56:39,764][INFO ][o.o.p.PluginsService     ] [i-02720ef57ad2d3ad4] loaded plugin [opensearch-ml]
[2022-03-18T20:56:39,764][INFO ][o.o.p.PluginsService     ] [i-02720ef57ad2d3ad4] loaded plugin [opensearch-observability]
[2022-03-18T20:56:39,764][INFO ][o.o.p.PluginsService     ] [i-02720ef57ad2d3ad4] loaded plugin [opensearch-performance-analyzer]
[2022-03-18T20:56:39,764][INFO ][o.o.p.PluginsService     ] [i-02720ef57ad2d3ad4] loaded plugin [opensearch-reports-scheduler]
[2022-03-18T20:56:39,764][INFO ][o.o.p.PluginsService     ] [i-02720ef57ad2d3ad4] loaded plugin [opensearch-security]
[2022-03-18T20:56:39,764][INFO ][o.o.p.PluginsService     ] [i-02720ef57ad2d3ad4] loaded plugin [opensearch-sql]

Host/Environment:

OS: Ubuntu 20.04
Version: OpenSearch 1.3.0

I would also appreciate insight on how to enable debug logging for the security plugin, specifically LDAP as OP mentioned. I'm running the same OS / ES version as well.

I believe logging for the security plugin is just broken in 1.3.0, the following warning is observed when starting elasticsearch:
SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder"
SLF4J: Defaulting to no-operation (NOP) logger implementation
I installed version 1.2.4 and have been able to see the security plugin logs to debug my implementation.

Thanks for filing @patcable I am going to look into this, we've got a theory that it could be related to https://github.com/opensearch-project/security/pull/1563 that was added in 1.3.0

For getting a fix out it would likely be part of our 2.0.0 release.  I think @mmiller1 's suggestion to stay with 1.2.4 is solid.

Sounds good. Thanks for the context!

For what it's worth, with logging working in 1.2.4, we were able to fix our security plugin configuration and did upgrade back to 1.3.0 afterwards and things remained in a functional state (despite not have logs). This probably isn't ideal for production use, but because we're simply POC'ing opensearch, this is the route we took.

Adding some findings from my investigation, first of all here is how I am reproducing:
wget https://artifacts.opensearch.org/releases/bundle/opensearch/1.0.0/opensearch-1.0.0-linux-x64.tar.gz
tar -xvf opensearch-1.0.0-linux-x64.tar.gz
cd opensearch-1.0.0
echo "logger.plugins.security.name = com.amazon.dlic.auth.http.jwt" >> config/log4j2.properties
echo "logger.plugins.security.level = trace" >> config/log4j2.properties
./opensearch-tar-install.sh

The behavior that I am seeing is for 1.0.0, 1.2.4 and 1.3.0 the behavior is the same, as what is in the description of this issue.

Circling back! Good news, this looks like a documentation issue, not a product bug, could you try the following configuration in your config/log4j2.properties file and see if the logging appears as you'd expect?
logger.securityjwt.name = com.amazon.dlic.auth.http.jwt
logger.securityjwt.security.level = trace

Per the yml format in log4j properties, a logger is declared with logger.LOGGER_NAME.name, the value of LOGGER_NAME can be updated as you desire.
When the example included the . operator it was treated as another object and 'security' was referenced as a key which didn't resolve to anything, that error message wasn't great because it should have been No name attribute provided for Logger named 'plugins'.
I'll create a pull request to update the documentation, it looks like several others have been impacted by this issue in the past

Hmm. Will this work for the LDAP backend @peternied? That's where I actually need debug output from. I'll give the JWT example a go to confirm it works though.

Just tested -- OpenSearch loads with that syntax, so that's encouraging 🎉
But yeah, back to my original issue -- if I wanted to get LDAP logs out of 1.3.0 so I could understand why my authz/n config isnt working is there a way for that? or is it per package and i'm best off going to 1.2.4 then back to 1.3.0?

@patcable  Yes you can use com.amazon.dlic.auth.ldap.backend as the logger path and it let you adjust the tracing levels or send the logs to another appender

Hm. No dice for me, which makes me think there's a config issue. Happy to take this elsewhere, too. Is there a more global logger path I could use for the security module as a whole? Internal auth seems to work fine, fwiw.

@patcable What about setting the default logging level to tracing?  I wouldn't recommend doing that in prod or a disk space constrained environment

@peternied had a chance to give that a try just now (setting rootLogger.level = trace). There's no info here from the security module it would seem. Security module did helpfully ask OS to write a record of the failure at least?
[2022-04-01T17:42:05,803][TRACE][o.o.h.AbstractHttpServerTransport] [i-029996662e6220c9f] Http channel accepted: Netty4HttpChannel{localAddress=/<IP_ADDRESS>:9200, remoteAddress=/<IP_ADDRESS>:55072}
[2022-04-01T17:42:05,826][DEBUG][i.n.h.s.SslHandler       ] [i-029996662e6220c9f] [id: 0x4279ae99, L:/<IP_ADDRESS>:9200 - R:/<IP_ADDRESS>:55072] HANDSHAKEN: protocol:TLSv1.3 cipher suite:TLS_AES_256_GCM_SHA384
[2022-04-01T17:42:05,826][TRACE][o.o.h.HttpTracer         ] [i-029996662e6220c9f] [2][null][GET][/] received request from [Netty4HttpChannel{localAddress=/<IP_ADDRESS>:9200, remoteAddress=/<IP_ADDRESS>:55072}]
[2022-04-01T17:42:05,827][TRACE][o.o.i.b.in_flight_requests] [i-029996662e6220c9f] [in_flight_requests] Adding [0b][<http_request>] to used bytes [new used: [0b], limit:<PHONE_NUMBER> [3.7gb], estimate: 0 [0b]]
[2022-04-01T17:42:05,834][TRACE][o.o.i.b.in_flight_requests] [i-029996662e6220c9f] [in_flight_requests] Adjusted breaker by [0] bytes, now [0]
[2022-04-01T17:42:05,835][TRACE][o.o.h.HttpTracer         ] [i-029996662e6220c9f] [2][null][UNAUTHORIZED][text/plain; charset=UTF-8][12] sent response to [Netty4HttpChannel{localAddress=/<IP_ADDRESS>:9200, remoteAddress=/<IP_ADDRESS>:55072}] success [true]
[2022-04-01T17:42:05,836][TRACE][o.o.t.TaskManager        ] [i-029996662e6220c9f] register 150 [transport] [indices:data/write/index] [index {[security-auditlog-2022.04.01][_doc][null], source[{"audit_cluster_name":"lab","audit_node_name":"i-029996662e6220c9f","audit_rest_request_method":"GET","audit_category":"FAILED_LOGIN","audit_request_origin":"REST","audit_node_id":"Ehv5GTsLSRW4Krrb8b2NeA","audit_request_layer":"REST","audit_rest_request_path":"/","@timestamp":"2022-04-01T17:42:05.835+00:00","audit_request_effective_user_is_admin":false,"audit_format_version":4,"audit_request_remote_address":"<IP_ADDRESS>","audit_node_host_address":"<IP_ADDRESS>","audit_rest_request_headers":{"User-Agent":["curl/7.68.0"],"content-length":["0"],"Host":["i-029996662e6220c9f.example.com:9200"],"Accept":["*/*"]},"audit_request_effective_user":"cable","audit_node_host_name":"<IP_ADDRESS>"}]}]
[2022-04-01T17:42:05,837][TRACE][o.o.t.TaskManager        ] [i-029996662e6220c9f] register 151 [transport] [indices:data/write/bulk[s]] [requests[1], index[security-auditlog-2022.04.01][0], refresh[IMMEDIATE]]

@bublikhpt thanks for the ping, we are no longer packaging log4j-slf4j-impl-X.XX.X.jar with the security plugin.  I did a quick pilot, by adding back the library we are getting log messages again.
I'm doing background for the right place to make sure this library is included

Reopening - I'd like to make sure that we are seeing the fix before assuming its working as intended.

I was able to use one of our most recent builds of OpenSearch 2.0.0 and I see that the fix is operational, tested distribution: https://ci.opensearch.org/ci/dbc/distribution-build-opensearch/2.0.0-alpha1/2002/linux/x64/dist/opensearch/opensearch-2.0.0-alpha1-linux-x64.tar.gz
I am closing this issue out, we will be backporting this fix into 1.3.X builds which you can track with https://github.com/opensearch-project/security/issues/1753

Came here and spent two days figuring out why 1.3.x isn't logging the security plugin.
rootLogger.level = info
rootLogger.level = trace
rootLogger.appenderRef.console.ref = console
Debug security
logger.securityjwt.name = com.amazon.dlic.auth.http.jwt
logger.securityjwt.level = trace
logger.securityjwt.appenderRef.console.ref = console
I'm not a java expert, assuming you can uncomment the rootLogger
This how this works for me, the documentation doesn't work.
Using helm chats v1.18.0. Hope this help for anyone who came here.


Required BrowserStack support for CI

Is your feature request related to a problem? Please describe.
Currently not able to run the synpress in BrowserStack. It's quite useful for CI.
Describe the solution you'd like
With help of the BrowserStack support, We can directly run our scripts into BrowserStack.

@neuodev Thank You, For the response.
Hope you are doing well.
Problem statement:
Currently, When we set up the CI pipelines for the test case execution. we are not allowed to run Synpress on the Linux Server because Chrome browser would not available on it. and with the help of BrowserStack integration, We will able to run Synpress on the Linux Server and we can able to set up the CI Pipelines with SynPress Scripting.
How it should work:
For cypress script support we have browserstack-cypress-cli tool, So we can easily run our cypress in browserstack and It's working smoothly in CI Pipeline also. So like that, we need Sypress Support with the BrowserStack.

@neuodev Any update?


SetRemoveSp3Stereo(False) does not keep isotope (deuterium) induced stereochemistry

Describe the bug
Canonicalizing a molecule with implicit-ized isotopic Hs removes the stereo that those deuteriums might induce. The implicitization of these Hs is necessary to overcome the issue described in https://github.com/rdkit/rdkit/issues/5340. Perhaps @ptosco or @kienerj have comments.
To Reproduce
from rdkit import Chem
from rdkit.Chem.MolStandardize import rdMolStandardize

smiles = [
    # these are fine
    r"FC(C)C",
    r"F[C@H](C)CC",
    r"F[C@@H](C)CC",
    r"FCC",
    # and these lose stereo
    r"F[C@H]([2H])C",
    r"F[C@@H]([2H])C",
]

for smi in smiles:
    mol = Chem.MolFromSmiles(smi)
    had_at_sign = "@" in smi
    params = Chem.RemoveHsParameters()
    params.removeAndTrackIsotopes = True
    mol = Chem.RemoveHs(mol, params)
    enumerator = rdMolStandardize.TautomerEnumerator()
    enumerator.SetRemoveSp3Stereo(False)
    mol = Chem.AddHs(enumerator.Canonicalize(mol), explicitOnly=True)
    print(("@" in Chem.MolToSmiles(mol)) == had_at_sign)

Expected behavior
I expect the sp3 stereo of the carbons (due to D stereo) to remain. This means all the output of the above script should be True.
Screenshots

Configuration (please complete the following information):

RDKit version:  2024.3.1
OS: [e.g. Ubuntu 20.04]: ubuntu 20.04
Python version (if relevant): py3.11
Are you using conda? no
If you are using conda, which channel did you install the rdkit from? self-built(rdkit-pypi style)
If you are not using conda: how did you install the RDKit? pip install from wheel

Additional context
Add any other context about the problem here.

@pechersky it is not possible to preserve stereochemistry when you remove one of the atoms which determine the stereochemistry.
Here's a quick demo of what happens:
In [5]: m = Chem.MolFromSmiles('F[C@@H]([2H])C')

In [6]: params = Chem.RemoveHsParameters()

In [7]: params.removeAndTrackIsotopes = True

In [8]: nm = Chem.RemoveHs(m,params)

In [9]: Chem.MolToSmiles(nm)
Out[9]: 'CCF'

In [11]: Chem.AssignStereochemistry(nm,force=True,cleanIt=True)

In [12]: nm.Debug()
Atoms:
	0 9 F chg: 0  deg: 1 exp: 1 imp: 0 hyb: 4 arom?: 0 chi: 0
	1 6 C chg: 0  deg: 2 exp: 4 imp: 0 hyb: 4 arom?: 0 chi: 0
	2 6 C chg: 0  deg: 1 exp: 1 imp: 3 hyb: 4 arom?: 0 chi: 0
Bonds:
	0 0->1 order: 1 conj?: 0 aromatic?: 0
	1 1->2 order: 1 conj?: 0 aromatic?: 0

Without removing (and tracking) these deuteriums, then the tautomer enumeration does not shift around the explicit Hs (or Ds), thus creating, in some instances, a bad valence "canonical tautomer". This is what came up in the issue referenced above.
We're working on shoring up our canonicalization-and-comparison tools, and part of them is considering isotopically induced stereochemistry (heavy atom or not). Our current approach treats all elements equally -- but this ran aground of the molecule cleanup we do before tautomer canonicalization in this D/T case.
One option we might take is "we're never going to have isotopically labeled Hs on tautomeric centers so it's fine to clear them away".

I think there's a case to be made for an enhancement request to allow the tautomer enumeration to work on molecules with Hs in the graph. That's a non-trivial change, but it is theoretically doable. But that's not this.
I wonder if there's any real-world situation (i.e. something that has actually been done in the lab and not just constructed as a what if? example) where a D in place of an H makes a molecule chiral in a way that matters

Real world situations:
Chemical-shift isotope effect (NMR): Lambert, Joseph B., and Linda G. Greifenstein. "Stereochemical dependence of the chemical-shift isotope effect." Journal of the American Chemical Society 95.18 (1973): 6150-6152.
Chiral catalyst (chirality due to H-D chirality in the catalyst): Sato, Itaru, et al. "Highly enantioselective synthesis induced by chiral primary alcohols due to deuterium substitution." Journal of the American Chemical Society 122.47 (2000): 11739-11740.
Diastereomerically pure bicycles due to trans or cis H-D:
Saito, Fumito, et al. "Breaking the Symmetry of a Meso Compound by Isotopic Substitution: Synthesis and Stereochemical Assignment of Monodeuterated cis-Perhydroazulene." Organic Letters 23.1 (2020): 113-117.
The chiral catalyst paper is particularly relevant because the catalysts are c1ccccc1[C@H]([2H])O, which, if tautomer-canonicalization was applied to, might have issues in the keto-enol reactions (?)
I stereoenumerate molecules and then pose them into 3D in pockets. Assuming that my stereoenumeration code is cognizant to generate 2 enantiomers of something like FC[2H] and 3D conformer generation respects the stereochemistry, differentiating the two allows for downstream analysis for something like positioning of the D in an enzyme's active site and whether that would affect the enzyme's catalytic cycle.


Agenda items for April 19 Dev Sync

Post your agenda items here!

@Mr0grog @mauricereeves @joemeree @carlosfelix2 @mry-usds @RickHawesUSDS @ronaldheft-usds
Post agenda items here

As we onboard more people to help with senders and receivers, I'd like us to talk about using staging to send test files to states for them to review, rather than manually uploading or emailing them. I think that would mean in staging we'd need to set up some kind of dev sender.


page history not working on field with AutocompletePanel

I have an AutocompletePanel sucessfuly  assigned to one of my fields. Everything works as expected but page history does not reflect changes made to the corresponding field. If I inspect the content_json field of the two PageRevision pages in question, I do see the change. Yet in the admin UI of the "history" of my page where I compare versions they are marked as identical.
Simply switching back to a FieldPanel correctly shows the changes applied in the admin UI.
Am I missing something in my implementation or is this a bug?
Kind regards.

Sounds like a bug! Thanks for the report

Having taken a look at what wagtail is doing under the covers to render the page history, IMO this is being caused by our autocomplete widget not having an is_hidden property that returns False. Putting together a PR as soon as I can figure out a good way to test this.

Looking even further into this, I'm finding that I get the correct behavior if I install this package directly from the latest commit to the github repo. So it may already be fixed (mostly likely by #69) and we need to release a new version.

That sounds promising. Many thanks for looking into it!


Ubuntu 18.04

Why 3.6 instead of use the latest 3.7?

@lucywang000 no specific reason, I just wanted to do it in steps, and Python 3.6 is default in Ubuntu 18.04.

I've checked that it uses a similar amount of memory, and has a similar Docker image size, and that Flash still works, but haven't checked speed changes. Anyways, merging it.


nano: add nix syntax hightlight, nano module: provide default

cc @seitz
Motivation for this change
Things done

[ ] Tested using sandboxing
(nix.useSandbox on NixOS,
or option build-use-sandbox in nix.conf
on non-NixOS)
Built on platform(s)

[x] NixOS
[ ] macOS
[ ] Linux

[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nox --run "nox-review wip"
[x] Tested execution of all binary files (usually in ./result/bin/)
[x] Fits CONTRIBUTING.md.

@qknight Thanks! The default was composed for nix files in mind, but since it breaks Makefile format, I've undo that change.


Make it compile for wasm

There's been a fruitful discussion at #421 on how to get regex to compile on the wasm32 target.
I decided to open a new issue to outline the next steps.

Make a new release of  memchr. Current HEAD already contains the changes that are needed.
Make a new release of libc. Current HEAD has already changes that make memchr compile smoothly on wasm32.

Let's see if that's enough or further things are needed. I'll check ones the above ones are done.

memchr 2.0.1 is out. I can't do anything about libc. :-)

@BurntSushi: I've one more for you. aho-corasick needs a new release. The current one is still using memchr 1.x.

@vmx Done. I also put out a new release of regex, which also hadn't been seen a release since memchr got bumped.

I've open an issue on libc (https://github.com/rust-lang/libc/issues/861) to do a new release. After that it should be possible to compile regex for wasm32.

@vmx Looks like this is done! I fully expect to be using this regex crate in the browser by tonight. :P

My LALRPOP grammer (which uses regex) works in the browser, hence I consider this done. Thanks again everyone that was involved.

@vmx w00t! If there's a way to share a demo that would be really awesome!


file_sd_config: Correct refresh_interval to 5m

The actual default is 5 minutes:
https://github.com/prometheus/prometheus/blob/ee9abf4535d2a28feb14473716e9118b4e12741b/config/config.go#L106
This was changed in prometheus/prometheus@139f27bf8.
/cc @fabxc

Thanks!


Add a new notebook for neighborhood analysis

What is the purpose of this PR?
Addresses and closes #282. With a pipeline for neighborhood analyses nearly complete, we create a specific notebook to run neighborhood analysis with the clustering steps and a stub for overlaying the segmented cells with their respective neighborhood clusters.
How did you implement your changes
Add a new notebook, example_neighborhood_analysis_script.ipynb.
Remaining issues
Overall comments on the structure of the notebook would be appreciated.

The notebook is likely not at a finished stage yet, just overall reviews for what's been done so far.

Looks good. Can you add the notebook to Travis as well?

Sure, sorry I forgot.


Resource Discovery issue as per DSC Community call

Prerequisites

[X] Write a descriptive title.
[X] Make sure you are able to repro it on the latest version
[X] Search the existing issues.

Steps to reproduce
@SteveL-MSFT found an issue with finding of resources in today's community call when listing resources
Expected behavior
dsc resource list *OSInfo* should list the Microsoft/OSInfo resource

Actual behavior
Doesn't list it

Error details
No response
Environment data
Latest

Version
latest
Visuals
No response

Probably environment configuration issue on Steve's machine; On my Win11 (+ latest dsc.exe code from main branch) seems to be running fine:
PS C:\DSCv3> dsc resource list *OS*

Type                             Version  Requires             Description
-----------------------------------------------------------------------------------------------------------------------
Microsoft.Windows/Registry       0.1.0                         Registry configuration provider for the Windows Registry
Microsoft/OSInfo                 0.1.0                         Returns information about the operating system.
PSTestModule/TestPSRepository    1.0.0    DSC/PowerShellGroup
PowerShellGet/MSFT_PSRepository  2.2.5    DSC/PowerShellGroup
PS C:\DSCv3> dsc resource list *OSInfo*

Type              Version  Requires  Description
------------------------------------------------------------------------------------
Microsoft/OSInfo  0.1.0              Returns information about the operating system.
PS C:\DSCv3>


SP5 Cookbook: Reverse YAxis

How do I reverse YAxis in  SP5 for  Winform? Thanks

Thanks for this question @fujiangang! I added a feature which will be available in the next release:
formsPlot1.Plot.Axes.AutoScaler.InvertedY = true;


Make copy of transformations in create_analysis

Otherwise, the transformations list is mutated, which causes problems outside of this function, especially when iterating across models

@rbroc you should be aware of this bug. it can cause multiple "Convolve" transformation to be put in the same model.
For now, a quick fix is to check your models, and to pass a copy of the transformations you want to create_analysis. (e.g. : transformations=transformations.copy())


cannot import name 'dtensor' from 'tensorflow.compat.v2.experimental

Amazing work!
I execute main.py within your environment sneakyp, but it shows such error:
RuntimeError: Failed to import transformers.pipelines because of the following error (look up to see its traceback):
cannot import name 'dtensor' from 'tensorflow.compat.v2.experimental' (/environment/miniconda3/envs/sneakyp/lib/python3.9/site-packages/tensorflow/api/v2/compat/v2/experimental/init.py)
When I searched some solutions, someone who encountered the same issues(cannot import name 'dtensor' from 'tensorflow.compat.v2.experimental) told me that the version of transformers and Keras are mismatched, but I use the environment you mentioned, how it could be?
I was wondering how to solve it?
Thanks

Please refer to: https://github.com/Yuchen413/text2image_safety/issues/6#issuecomment-2026630440
Thanks!

Or you can try the latest updated minimum env setting

Thx Yuchen, but none of those above can address my issue, install tenserflow==2.11 helped.