Update Calculator app compileSdk/targetSdk version to latest

Describe the feature/ bug
Update Calculator app compileSdk/targetSdk version to 33 as its recommended to use the latest version
To Reproduce issue or location of your feature
Steps to reproduce the behavior:

Go to '...'
Click on '....'
Scroll down to '....'
See error

Expected behavior
A clear and concise description of what you expected to happen.
Screenshots
If applicable, add screenshots to help explain your problem.
Additional context
Add any other context about the problem here.

Hey! It's basic app so version migration is not necessary, app is working fine!
Feel free to raise a new issue if you have project ideas or want to add new feature into app
Thank you!


Moving validation to model

Raising this as a draft PR to get an idea of what our thinking is.
Things to ignore
Some changes are in the wrong commit, this was after we realised some problems and will be fixed before things get too much further forward.
Variable naming - we haven't done it for some things, again will be fixed
Tests failing - Some tests are failing at the moment, this is due to not calling things properly and is just something we haven't gotten around to yet.
Things to consider
Is this the right approach? There's obviously a lot more functionality to add but does making a new model make the most sense or is there something we haven't considered.
Is it right to make models in models? Because we don't have any new views being made for the ContentGroup model, we've decided to make the SubSection model responsible for creating the ContentGroups. Is there another way to do this that might be better?
How to review
The code is very much incomplete, probably best to look at the commit messages to best understand what it is we want to be doing here and taking the code with a pinch of salt.
⚠ This repo is Continuously Deployed: make sure you follow the guidance ⚠

Woop amazing progress here on a tricky problem.
The first thing that I thought when seeing this was wondering whether you actually want an active record model for the the content. I don't think you need to persist that data to the database as it will end up duplicated (once in sub section other in content group). Instead you can use a plain old Ruby object (PORO) - you could even have it use ActiveModel if you want it to have it's own validations.

Woop amazing progress here on a tricky problem.
The first thing that I thought when seeing this was wondering whether you actually want an active record model for the the content. I don't think you need to persist that data to the database as it will end up duplicated (once in sub section other in content group). Instead you can use a plain old Ruby object (PORO) - you could even have it use ActiveModel if you want it to have it's own validations.

Thanks :)
Plan here would be to remove the content from the content field in subsections so that content groups is the only place it's stored. I think one of the last things that we'll do is to write a rake task that ports everything over as eventually we'd like it so that the content in sub sections isn't used.

Woop amazing progress here on a tricky problem.
The first thing that I thought when seeing this was wondering whether you actually want an active record model for the the content. I don't think you need to persist that data to the database as it will end up duplicated (once in sub section other in content group). Instead you can use a plain old Ruby object (PORO) - you could even have it use ActiveModel if you want it to have it's own validations.

Thanks :)
Plan here would be to remove the content from the content field in subsections so that content groups is the only place it's stored. I think one of the last things that we'll do is to write a rake task that ports everything over as eventually we'd like it so that the content in sub sections isn't used.

I see. I think you might find that throws up in it's own set of complications. You may have a bunch of trouble validating the input for instance.

Hey, I've found some time this afternoon to take a look at how this is progressing. Great job making so much progress with it 👍
There are a few bits that I think you've nailed here such as:

Moving logic out of SubSectionJsonPresenter
Pulling errors out of content group as part of validation
Nice clean integration with the SubSectionJsonPresenter

Whereas there's these bits that I'm a bit concerned about:

Duplication of data storage
ContentGroup seems a pretty hard to understand concept when the first one can skip a heading but others do, it strikes me as potentially a mistake in schema structuring that is proliferating
ContentGroup as a DB model seems to require some pretty heavy overhead for low payoff.
The concerns of the parsing are rather fragmented with the understanding of this rather spread out.

I had a bit of a playaround myself to see what might work better and came up with a class that could be nested in the Coronavirus::SubSection namespace to model this:
class Coronavirus::SubSection::StructuredContent
  HEADER_PATTERN = PatternMaker.call(
    "starts_with hashes then perhaps_spaces then capture(text) and nothing_else",
    hashes: "#+",
    text: '\w.+',
  )

  LINK_PATTERN = PatternMaker.call(
    "starts_with perhaps_spaces within(sq_brackets,capture(label)) then perhaps_spaces and within(brackets,capture(url))",
    label: '\s*\w.+',
    url: '\s*(\b(https?)://)?[-A-Za-z0-9+&@#/%?=~_|!:,.;]+[-A-Za-z0-9+&@#/%=~_|]\s*',
  )

  Header = Struct.new(:text)
  Link = Struct.new(:label, :url)

  attr_reader :items

  def self.error_lines(raw_content)
    return [] unless raw_content

    raw_content.lines.filter_map do |line|
      stripped = line.strip
      next if stripped.empty?

      stripped if !HEADER_PATTERN.match(stripped) && !LINK_PATTERN.match(stripped)
    end
  end

  def self.parseable?(raw_content)
    error_lines(raw_content).empty?
  end

  def self.parse(raw_content)
    items = raw_content.lines.filter_map do |line|
      if (match = HEADER_PATTERN.match(line.strip))
        Header.new(match.named_captures["text"])
      elsif (match = LINK_PATTERN.match(line.strip))
        captures = match.named_captures
        Link.new(captures["label"], captures["url"])
      end
    end

    new(items)
  end

  def initialize(items)
    @items = items
  end

  def links
    items.select { |i| i.is_a?(Link) }
  end

  def groups
    items.each_with_object([]) do |item, memo|
      case item
      when Link
        if memo.empty?
          memo << { title: nil, links: [item] }
        else
          memo.last[:links] << item
        end
      when Header
        memo << { title: item.text, links: [] }
      end
    end
  end
end

You could hook that up to the model like so:
class Coronavirus::SubSection < ApplicationRecord
  # ...
  after_initialize :populate_structured_content
  attr_reader :structured_content

  def content=(content)
    super.tap { populate_structured_content }
  end

  # ...
private

  def populate_structured_content
    @structured_content = if StructuredContent.parseable?(content)
                            StructuredContent.parse(content)
                          end
  end
end

and use it as part of the featured link validation:
  def featured_link_must_be_in_content
    return if featured_link.blank? || !structured_content

    unless structured_content.links.any? { |l| l.url == featured_link }
      errors.add(:featured_link, "does not exist in accordion content")
    end
  end

and use it in the presenter:

  def sub_sections
    sub_section.structured_content.groups do |group|
      {
        title: group[:title],
        list: group[:links].map { |link| build_link(link.title, link.url) }
      }
    end
  end

Closed to make pretty fundamental changes as suggested in https://github.com/alphagov/collections-publisher/pull/1311#issuecomment-796957090


Created Result page

Have you read the Contributing Guidelines on Pull Requests?
YES
Description
Created the Results Page using HTML, CSS, Bootstrap, JQuery. By using this UI Design .
Checklist

[x] I've read the contribution guidelines.
[x] This PR mets all the requirements like Clean Code, proper README and Documentation

Related Issues or Pull Requests
Fixes: #125

Screenshots (if any)

The Frontend looks good, do just check once the alignment responsiveness of the buttons.

Hi @kahanikaar buttons are responsive. But the images are not actually responsive. I used the max width property but still it is not showing much difference. Will you give me suggestion to make them responsive.

@kahanikaar buttons are responsive.

A suggestion, try using bootstrap containers, will be better in making it responsive, and also try using relative values for css fields.

@kahanikaar Please review this. I have made all the necessary changes.

Fixed typo @kahanikaar

@BALaka-18 I have merged the restyled PR you can add the respective points.


Release Google.Cloud.Kms.V1 version 2.1.0

Changes in this release:

Commit 0790924: fix: Add gRPC compatibility constructors
Commit 0ca05f5: chore: Regenerate all APIs using protoc 3.13 and Grpc.Tools 2.31
Commit ad918b1: Add client integrity verification fields to the KMS protos
Commit 6bde7a3: docs: Regenerate all APIs with service comments in client documentation
Commit f83bdf1: fix: Apply timeouts to RPCs without retry
Commit d183f72: docs: change relative URLs to absolute URLs to fix broken links.
Commit 947a573: docs: Regenerate all clients with more explicit documentation

Created release for Google.Cloud.Kms.V1-2.1.0


The day before expiration date

Reproduction:

add a good
then the backend server does get an incorrect value

We decided that we will not send timezone, but rather datetime.


prep_for_subm.sh flag to accept terraform actions

Please add '--accept' or similar flag as user input for prep_for_subm.sh script, to accept Terraform actions, without user interact.

Still relevant.


Merge Discussion #13 & Clarify PID Tune

This may be a merge conflict and auto-update issue with those already running and have a PID TUNE set, possibly implement commented with guidance for those on first setup?


Include tests (and high coverage) for all components remaining after clean

Issue Type

[ ] Bug (https://github.com/mxstbr/react-boilerplate/blob/master/.github/CONTRIBUTING.md#bug-reports)
[x] Feature (https://github.com/mxstbr/react-boilerplate/blob/master/.github/CONTRIBUTING.md#feature-requests)

Description
This pertains the 3.4 branch (since that's all I've messed with) and running npm run clean. The cleaning process removes the tests from the components that it does leave behind, so it's impossible to get a production build of the clean app without changing the coverage settings or adding the tests back in (with modifications). It would be better if a clean app came with minimal tests to meet coverage requirements, guided by the assumption that a clean app really shouldn't fail any of the npm scripts as written. I understand that this might not be easy to achieve given that some of the components referred to in the tests no longer exist, but that could mean that either the sample should be refactored so that that can't happen, or a different test file should be dropped in during clean (probably harder to do). For some of the components left behind, such as App, NotFoundPage and LanguageProvider, the boilerplate was considered common enough not to clean out so there should be tests on all of that boilerplate. Keeping these tests around would at least stop the coverage from plummeting right off the bat.
Steps to reproduce

npm run clean
See that tests are gone from app.
npm run build
See that build fails because of low coverage

Versions

Node/NPM: 7.3.0
Browser: Chrome 56

@neverfox Thanks for reporting this 😄
It has been addressed in #1414, which is waiting to be merged and expected to be included in the 3.4 release.


Feature: Redox rev.2.0WHS

Feature: Redox rev.2.0WHS
Added new PCB revision supporting Kailh hot-swap sockets and improved range (fixed ground plane to avoid the YJ-14015 antenna area).

Does the removal of the ground plane in the back of the NRFmicro make a difference in range?

Hi @Pastitas,
I should rephrase that because it’s a little misleading. It should make a difference but I have to properly test it to support the statement.
I recently switched from rev.1.0W with wood and steel case to rev.2.0WHS with a fully 3D printed one keeping the same batteries and range/reception vastly improved (no more double key presses, no missing key presses). Having changed two variables at the same time (case and ground plane) I can’t say which of the two had the biggest impact but, from past experiences, I tend to think that the case is the major actor here.


Support IDLE argument on xpending method (redis >= 6.2.0)

I did not notice that it is the same PR as #1750, let's close it


Error when implementing New JSON provider

When I am trying to create a own JSON provider with the below configuration I get the below error
  <appender name="jsonAppender" class="ch.qos.logback.core.rolling.RollingFileAppender">
        <File>${LOG_PATH}</File>
        <encoder class="net.logstash.logback.encoder.LogstashEncoder">
            <fieldNames><message>[ignore]</message></fieldNames>
            <providers  class="config.CustomMessageJsonProvider">
                <pattern>
                    <pattern>
                      {"jsonmessage": "%jsonmessage"}
                    </pattern>
                </pattern>
             </providers>
        </encoder>

ERROR in ch.qos.logback.core.joran.spi.Interpreter@8:26 - no applicable action for [pattern], current ElementPath  is [[configuration][appender][encoder][providers][pattern]]
[ERROR] ERROR in ch.qos.logback.core.joran.spi.Interpreter@9:30 - no applicable action for [pattern], current ElementPath  is [[configuration][appender][encoder][providers][pattern][pattern]]
[ERROR] ERROR in ch.qos.logback.core.joran.util.PropertySetter@4091598f - A "config.CustomMessageJsonProvider" object is not assignable to a "net.logstash.logback.composite.JsonProviders" variable.
[ERROR] ERROR in ch.qos.logback.core.joran.util.PropertySetter@4091598f - The class "net.logstash.logback.composite.JsonProviders" was loaded by
[ERROR] ERROR in ch.qos.logback.core.joran.util.PropertySetter@4091598f - [java.net.URLClassLoader@1be9f0ba] whereas object of type
[ERROR] ERROR in ch.qos.logback.core.joran.util.PropertySetter@4091598f - "config.CustomMessageJsonProvider" was loaded by [java.net.URLClassLoader@1be9f0ba].
[ERROR] -> [Help 1]

Below is My java file. I am trying to give a new field name jsonmessage and trying to ignore the field message.
    import java.io.IOException;

     public class CustomMessageJsonProvider extends AbstractFieldJsonProvider<ILoggingEvent>
                                  implements FieldNamesAware<LogstashFieldNames> {

    public static final String FIELD_MESSAGE = "jsonmessage";

    public CustomMessageJsonProvider() {
        setFieldName(FIELD_MESSAGE);
    }

    @Override
    public void writeTo(JsonGenerator generator, ILoggingEvent event) throws IOException {
        System.out.println("Sawyer"+ event.getFormattedMessage());
        JsonWritingUtils.writeStringField(generator, getFieldName(), event.getFormattedMessage());

    }

    @Override
    public void setFieldNames(LogstashFieldNames fieldNames) {
        setFieldName(fieldNames.getMessage());
    }
     }

To add a custom provider you would use this
<encoder class="net.logstash.logback.encoder.LogstashEncoder">
    <provider  class="...">

(Your example uses the element name providers, but when using LogstashEncoder, the element name is just provider)

Below is the error I get still with provider class
'
[ignore]

                <pattern>
                    {"jsonmessage": "%jsonmessage"}
                </pattern>

        </provider>
    </encoder>'

[ERROR] ERROR in ch.qos.logback.core.joran.spi.Interpreter@9:30 - no applicable action for [pattern], current ElementPath  is [[configuration][appender][encoder][provider][pattern]]

Your xml configuration is trying to set a field named pattern, but your CustomMessageJsonProvider class doesn't have a field named pattern

I have declared in the above class as
public static final String FIELD_MESSAGE = "jsonmessage";

So after creating the Provider should I include it inside the logstash-encoder package or can i have this class independent

Got it !!


question about paper

Hello, very interesting job.
I have a question: for compression simulator g, if we remove it and replace g^{-1} with a regular neural network to de-compress, will the entire model still work properly? (lambda_3 and lambda_5 loss removed correspondingly)

Thank you for your interest.
If $g$ is removed and $g^{-1}$ is replaced with a regular neural network, I think the entire model will still work properly. But the performance may reduces if the compression restoration network is not specificly designed.
In fact, $g^{-1}$ in our work can also be seen as a bi-directionally optimized compression restoration network that we also do its inverse $(g^{-1})^{-1}=g$ to simulator the compression distoration and apply corresponding loss functions. Since bi-directionally optimized INN is better than mono-directionally optimized SR networks, I believe $g$ will work better than usual networks.
Besides, in this work we don't force the distribution of the HF (high-frequency) split output of $f$ (and also the HF split input of $f^{-1}$), this components is generated by $g^{-1}$ with the sampled GMM signal and compressed image. If $g^{-1}$ is replaced with regular network, the HF component may need some further guidance.

I understand better, thank you.
Additionally, the paper states that $\lambda_5$ * $L_{rel}$ can use other compression methods, such as WebP. But during training, differentiable jpeg compression was used, wouldn't this cause conflicts between g and g-1?

Yes it will cause conflict. Using differentiable jpeg for training WebP model is sub-optimal, but it's hard to implement each compression algorithm differentiable.
Some reasons for what our model achieve satisfying performance on WebP:

WebP is somehow similar to JPEG. In our experiments on some other compression formats, I found the model performs well at the beginning, but gradually drops. But on WebP the performance is as steady as JPEG.
DIFFJPEG is also not exactly the same to real JPEG, it works more like a "gradient bridge". In some works, the authors may directly set the gradient=1 for non-diffirentiable operations, and it also works well.

thank you for your reply ! it help me a lot,


The license and code of conduct are duplicated

We have one in the repo and one in the docs, e.g. https://github.com/arosen93/quacc/blob/main/LICENSE.md and https://github.com/arosen93/quacc/blob/main/docs/src/dev/license.md. We should have the docs just link to the main repo entry.

Closed because I don't want to switch to Sphinx.


Lexical argument shadows the dynamic variable

Got several compiler warnings, will send a PQ fixing it.
fstar-mode.el:89:1:Warning: Lexical argument shadows the dynamic variable string
fstar-mode.el:89:1:Warning: Lexical argument shadows the dynamic variable string
fstar-mode.el:2327:1:Warning: Lexical argument shadows the dynamic variable string
fstar-mode.el:2331:1:Warning: Lexical argument shadows the dynamic variable string

Hmm. What context are you testing this in? I can't repro these warnings in emacs 24.5, 25, or 26.

On 08.11.2017 21:06, Clément Pit-Claudel wrote:

Hmm. What context are you testing this in? I can't repro these
warnings in emacs 24.5, 25, or 26.

Being on
GNU Emacs <IP_ADDRESS> (i686-pc-linux-gnu, GTK+ Version 3.14.5) of 2017-01-02

Proof General was incorrectly adding a (defvar string) a while ago, causing this warning. It was fixed on the PG side.  Thank for the report!


Issue on page /12_image_analysis_basics/02_Working_with_images.html - data

Hey @haesleinhuepf,
working through the section "12_image_analysis_basics/02_Working_with_images" I found the "blobs.tif" using Fiji, but I am not sure where I would find the dataset "banana020.tif" for the exercise?
Have I missed any links to data?
Thank you for the fantastic course.
Eli

Hi Eli @ElisabethKugler ,
the image is located here: https://github.com/haesleinhuepf/BioImageAnalysisNotebooks/blob/main/data/banana/banana0020.tif
In the course we use this exercise indeed to make the students search for data in the repository and teach them the concepts of folders and paths. But I agree, a hint would make sense there to make the reader search in the right directory.
Thanks for the feedback!
Robert

Many thanks for the swift reply @haesleinhuepf!
Ah, yes I think it would be good to just hint people to the fact that these notebooks are built on a course as well as image.sc discussions. e.g. "Looking for things" and "discussing solutions" is part of this :)
I was naturally looking for it in Fiji (as for blobs and hela-cells), so maybe just a hint for the banana file would be enough.
Thanks!


Support python 3.8

Fix https://github.com/tr11/wagtail-graphql/issues/11

I've started using this change on our site and it's working nicely so far

Actually one correction: I think mypy will also need updating, otherwise one of it's dependencies (typed_ast) isn't installable in Python 3.8


[Feature Request]: Retry Install "Install-Prerequisites " and  "Install-WinGet" / fixing missing Config folder

The request
I had 2 Problems and created fixes for it.
I dont know if other had it and if it helps:
First because of missing firewall rules etc or bad connection sometimes some installations from the:
Install-Prerequisites
Install-WinGet
In the Winget-AutoUpdate-Install.ps1 did not work probably so i did add them as extra general funktions and call them as error handling in:
Winget-Upgrade.ps1
Also Other Problem
I had sometimes the Folder Config missing.
So i did recreate it in the Confirm-Installation.ps1
My code is not the best and other can Probably fix it up but maybe it can be added.
Is your feature request related to a problem?
In Winget-Upgrade.ps1 at the end
  else {
	Write-ToLog "Critical: Winget Komponenten Fehlen" "red"
   	Install-Prerequisites
	Install-WinGet
	$TestWinget = Get-WingetCmd
	if ($TestWinget) {

	Write-ToLog "Critical: Winget wurde Nachinstalliert und ist beim naechsten mal einsetzbar" "red"
	}

	else {

        Write-ToLog "Critical: Winget not installed or detected and couldnt be installed, exiting..." "red"
        New-Item "$WorkingDir\logs\error.txt" -Value "Winget not installed or detected and couldnt be installed" -Force
        Write-ToLog "End of process!" "Cyan"
        Exit 1
    	}

In Confirm-Installation.ps1 at the start

	$ConfigDir = Join-Path -Path $WorkingDir -ChildPath "Config"
	# Überprüfe, ob das Verzeichnis existiert
	if (-not (Test-Path -Path $ConfigDir -PathType Container)) {
    # Das Verzeichnis existiert nicht, also legen wir es an
    New-Item -Path $ConfigDir -ItemType Directory
    Write-Host "Das Verzeichnis $ConfigDir wurde erfolgreich erstellt."
	}
	else {
    Write-Host "Das Verzeichnis $ConfigDir existiert bereits."
	}

Additional information
No response

And a other Question :D
In the Update-App.ps1  do we need now a --source winget  option ? or general source option
In the other Winget-Install/winget-install.ps1 von Romanitho he added the -s winget to his script because sometimes Winget seems to have problems now without the source.

I had 2 Problems and created fixes for it.
I dont know if other had it and if it helps:

Hello (and thanks for reporting/engaging in this project)!
To my knowledge, the config folder nowadays is only used to save the notif.xml for Toast messages and is automatically created when they appear.
The forcing of another try to install could be useful if the scenario you described is an issue (but I've never had/heard of anyone having that problem until now).
You could end a successful install with (to directly run winget-upgrade.ps1 again):
               Write-ToLog 'Re-run WAU'
               Start-Process -FilePath powershell -ArgumentList "-NoProfile -ExecutionPolicy Bypass -Command `"$WorkingDir\winget-upgrade.ps1`""
               exit

As for the @user1722 question 👍:
https://github.com/Romanitho/Winget-AutoUpdate/pull/402#issuecomment-1727070453

Thanks for answering :D
well the network Problems occured only in like 1-2 PC`s from 400-500 but it happend because they lost connection in a dumb moment etc. Or maybe VPN problems/Hotel internet ....
So i wanted it to fix itself in that case and run with the next scheduled task. what it did that way :D
If i call it to fast maybe connection is not back so iam ok with waiting to try it over the next days till it gets a clean connection.
I think if more or bigger companies would use it that could happen also for them.
For the config folder it happend only because of problems with writing permissions in the User Context. But i dont find a script that creates the folder if its not in the initial install but maybe i also just dont see it :D

Hi,
It depends how you deploy WAU 😅
With SCCM or Intune for instance, you have detection method to check WAU installation. So if installation failed, it retries 😊
For the config folder, it was used in the past for the WAU config stuffs. Now, all is based in registry. As @KnifMelti said, it is only used for notification for users when WAU runs in system context.
Basically, we could clean things up by remove that folder and put the notif xml at WAU root folder (or not at all if ServiceUI.exe is retained as another solution on next releases)

Thanks for answering :D yeah i could and should probably fix my Intune detection then if the other things are also installed.


MXNet shared weights

Hello,
I've tried this tool recently, and feel it's really wonderful. But i find that there is some room for improvement of visualization when weights are sharing between convs in mxnet.
In the below, i share the weights of three convs. While the weight id of both the middle and the right conv are id: [563,0] , the left conv's weight id is id: stage4_unit2_conv1_weight.

By guessing, I can figure out the left conv weight id is id: [563,0]. But it will be much better if the weight id of the original conv is given in digital form explicitly as well, along with its string name.
Thank you~

Can you share a file to reproduce the issue?

Thanks for timly reply, the model file are sharing here.

conv_weights_sharing.json.zip

@huangh12 can you verify the fix? Steps here.

Problem is fixed. Thx！


Fixes issue #206 - typo in install command

🔗 Linked issue 206

❓ Type of change

[X] 📖 Documentation (updates to the documentation or readme)
[X] 🐞 Bug fix (a non-breaking change that fixes an issue)
[ ] 👌 Enhancement (improving an existing functionality)
[ ] ✨ New feature (a non-breaking change that adds functionality)
[ ] 🧹 Chore (updates to the build process or auxiliary tools and libraries)
[ ] ⚠ Breaking change (fix or feature that would cause existing functionality to change)

📚 Description

There is a typo in the install command where there is a space that was deleted. If user copy/paste existing command it will not work. This PR fixes this issue.

Just wanted to add I just got hit by this bug, took me a moment to solve but would be great if this was merged for others who also get stuck!


ARCH-223: Change is_hit/is_miss to is_found.

Description:
Change is_hit/is_miss to is_found.
Note: I am updating to 1.0.0 because of the breaking change.  No one is using this except ecommerce yet, and I will fix that.
JIRA:
ARCH-223
Merge checklist:

[x] All reviewers approved
[x] CI build is green
[x] Version bumped
[ ] Changelog record added
[x] Documentation updated (not only docstrings)
[ ] Commits are squashed
[x] PR author is listed in AUTHORS

Post merge:

[ ] Create a tag
[ ] Check new version is pushed to PyPi after tag-triggered build is
finished.
[ ] Delete working branch (if not needed anymore)

@nasthagiri: I added the data dict in a separate commit to make it simpler to review.


Issues with type definitions

Background
I would like to use jodit in one of my angular projects. At first I tried jodit-angular but it seems it's based on an old version of angular (8.x) and an old version of jodit. So I consider either contributing to that project or creating an own angular component with jodit.
That's why I had a look on the v12 branch and I'm curious why Jodit is imported via "require(...)" instead of import like it should be done in those days (see here).
Because jodit does have Typescript definitions I wonder why it isn't used. That's why I created a test project here.
Questions

What is the way to properly import Jodit in Typescript project? The way I did it should work, but didn't (see m here)

I get the following error:
Error: node_modules/jodit/types/core/dom/lazy-walker.d.ts:7:26 - error TS2307: Cannot find module 'jodit/core/event-emitter/eventify' or its corresponding type declarations.

7 import { Eventify } from 'jodit/core/event-emitter/eventify';
                           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Error: node_modules/jodit/types/core/ui/button/button/button.d.ts:8:27 - error TS2307: Cannot find module 'jodit/core/ui/element' or its corresponding type declarations.

8 import { UIElement } from 'jodit/core/ui/element';
                            ~~~~~~~~~~~~~~~~~~~~~~~

Error: node_modules/jodit/types/core/ui/button/button/button.d.ts:10:22 - error TS2420: Class 'UIButton' incorrectly implements interface 'IUIButton'.
  Type 'UIButton' is missing the following properties from type 'IUIButton': jodit, j, setParentView, i18n, and 31 more.

10 export declare class UIButton extends UIElement implements IUIButton {
                        ~~~~~~~~

Error: node_modules/jodit/types/core/ui/element.d.ts:7:31 - error TS2307: Cannot find module 'jodit/core/component' or its corresponding type declarations.

7 import { ViewComponent } from 'jodit/core/component';
                                ~~~~~~~~~~~~~~~~~~~~~~

Error: node_modules/jodit/types/core/ui/element.d.ts:8:28 - error TS2307: Cannot find module 'jodit/core/traits' or its corresponding type declarations.

8 import { Elms, Mods } from 'jodit/core/traits';
                             ~~~~~~~~~~~~~~~~~~~

and a lot more.

How do you create type definitions for typescript? Am I correct that you create a part of it manually and another part of it using tsc? (see here)
What do you think about using rollup.js? It can make the creation of TS and JS libraries very easy and offers creating packages with high compatibility. Here is a demo I created some time ago.

You cannot use Jodit types in your runtime code.
You can include the original TypeScript code:
import { UIElement } from 'jodit/src/core/ui/element';
console.log(UIElement);

Or use runtime
import type { UIElement as IUIElement } from 'jodit/core/ui/element';
import {Jodit} from "jodit"
const UIElement: IUIElement = Jodit.modules.UIElement;
console.log(UIElement);

Issue is solved with the latest version.

having hard time with Jodit in angular 15 project:
Error: node_modules/jodit/types/plugins/enter/interface.d.ts:6:16 - error TS2436: Ambient module declaration cannot specify relative module name.
6 declare module '../../types/events' {
project is here:
https://github.com/jeffschulzusc/jodit-angular/tree/v15
anyone know how i can resolve this build error ?
thanks much

resolved:
To avoid TS2436 error on ng build, must set
"skipLibCheck": true
in tsconfig.json.
Could the Jodit team build the npm package with stricter typing and not use relative paths ?
thanks for the awesome editor :)


Update to 1.19.2

Update IntegratedNBT to Minecraft 1.19.2.
I also switched over to getting dependencies from curse-maven (curseforge) as I think that is easier.

Oh my god I love you.


readme update

Codecov Report
Patch and project coverage have no change.

Comparison is base (92f032b) 83.87% compared to head (85af184) 83.87%.

:mega: This organization is not using Codecov’s GitHub App Integration. We recommend you install it so Codecov can continue to function properly for your repositories. Learn more
Additional details and impacted files
@@            Coverage Diff            @@
##             master     #146   +/-   ##
=========================================
  Coverage     83.87%   83.87%
  Complexity       51       51
=========================================
  Files            21       21
  Lines           155      155
=========================================
  Hits            130      130
  Misses           25       25

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.

@rultor merge

@h1alexbel OK, I'll try to merge now. You can check the progress of the merge here

@rultor merge

@h1alexbel Done! FYI, the full log is here (took me 2min)


Use TypealizR to localize TypealizR

There should be support for localized errors and warnings emitted by the source-generator.

TypealizR -> TypealizR (>= 0.6.1).	TypealizR

Maybe this is the time to introduce a CLI, which could generate code outside of Roslyn as a standalone tool.

sticking to plain-old ResX-files with code-generation for now...


As a user, I want to be able to view a page in Hathitrust by clicking its thumbnail or page number in a search result so that I can quickly and easily see my search result in its full context.

dev notes

[x] thumbnail is a link
[x] page number is a link
note: still need the "why" here

testing notes

[x] After a search that returns results, preview images should link to HathiTrust, as should page numbers, which are displayed above snippets.
[x] After a search within a book ( a search on the book detail view page), results should appear with a thumbnail of the page and page number that are both links

Leaving this off awaiting test, as I discovered a subset of hathitrust volumes that have order not as an integer (as it ought to be), but as a string i.e.:
https://babel.hathitrust.org/cgi/imgsrv/image?id=uc1.$b14645;seq=UCAL_$B14645_00000036;width=450

Will have to re-add handling for this possibility that I thought had been rendered redundant.

@bwhicks it's possible I'm indexing the wrong value from the METS xml file. Either way, I think it probably makes sense to correct it at index time rather than display time.

@bwhicks I think I figured out what's going on. I changed the structure of the page ids slightly, so the old records are not getting updated/overwritten in the Solr index.  Not sure the best way to handle it. Maybe we add a flag to the index script to clear the index first (or just clear pages)?

@rlskoeser So that's why some have the old style with extra text? Either way, I think the flag is the way to go.

Thumbnails and page numbers both link correctly on initial search result page (list view), item detail/"view all x pages" page, and after conducting a new "search within the volume" from the item detail page. Yay!
It opens in a new tab, which is great. @rlskoeser the Hathi page does "flash" an image of the cover before loading the correct page, but this happens on the old site too, and is probably just Hathi cycling through the book as it loads? It doesn't bother me that much, I just thought I'd note it.

@mnaydan I think that is just how the Hathi viewer loads, and not something we can control. Doesn't hurt to note it, though.


[Flaky Test] E2E Test Suite ManagedSeed Tests

How to categorize this issue?

/area testing
/kind flake
Which test(s)/suite(s) are flaking:
E2E Test Suite.[It] ManagedSeed Tests Create Shoot, Create ManagedSeed, Delete ManagedSeed, Delete Shoot [ManagedSeed, default]
CI link:
https://prow.gardener.cloud/view/gs/gardener-prow/logs/ci-gardener-e2e-kind/1557814589771485184
https://prow.gardener.cloud/view/gs/gardener-prow/logs/ci-gardener-e2e-kind/1557874988453728256
https://prow.gardener.cloud/view/gs/gardener-prow/logs/ci-gardener-e2e-kind/1558841527571058688
Also see: https://testgrid.k8s.io/gardener-gardener#ci-gardener-e2e-kind&sort-by-flakiness=&width=20
Reason for failure:
In all three linked failures, the shoot fails to be created within a 10m timeout.
Anything else we need to know:

/assign

There seem to be more flakes with a different kind of error than the one addressed by https://github.com/gardener/gardener/pull/6488:

https://prow.gardener.cloud/view/gs/gardener-prow/pr-logs/pull/gardener_gardener/6523/pull-gardener-e2e-kind/1559910191724498944
https://prow.gardener.cloud/view/gs/gardener-prow/pr-logs/pull/gardener_gardener/6515/pull-gardener-e2e-kind/1559838461253390336
https://prow.gardener.cloud/view/gs/gardener-prow/pr-logs/pull/gardener_gardener/6513/pull-gardener-e2e-kind/1559831243707650048

In all three instances, all steps are successful until Wait for Seed to be deleted which times out after 10m.
  Timed out after 600.001s.
  Expected success, but got an error:
      <*errors.errorString | 0xc00026f130>: {
          s: "seed \"/seed-js6jk\" is not deleted yet: Failed to delete Seed Cluster (2 errors occurred:\n\t* task \"Destroy dependency-watchdog-probe\" failed: error while waiting for all resources to be deleted: retry failed with context deadline exceeded, last error: resource garden/dependency-watchdog-probe still exists:\nCould not clean all old resources: 1 error occurred: deletion of old resource \"apps/v1/Deployment/garden/dependency-watchdog-probe\" is still pending\n\t* task \"Destroying managed ingress DNS record (if existing)\" failed: Failed to delete DNSRecord garden/seed-ingress: retry failed with context deadline exceeded, last error: DNSRecord garden/seed-ingress is still present\n\n).",
      }
      seed "/seed-js6jk" is not deleted yet: Failed to delete Seed Cluster (2 errors occurred:
      	* task "Destroy dependency-watchdog-probe" failed: error while waiting for all resources to be deleted: retry failed with context deadline exceeded, last error: resource garden/dependency-watchdog-probe still exists:
      Could not clean all old resources: 1 error occurred: deletion of old resource "apps/v1/Deployment/garden/dependency-watchdog-probe" is still pending
      	* task "Destroying managed ingress DNS record (if existing)" failed: Failed to delete DNSRecord garden/seed-ingress: retry failed with context deadline exceeded, last error: DNSRecord garden/seed-ingress is still present

      ).
  In [It] at: /home/prow/go/src/github.com/gardener/gardener/test/e2e/managedseed/create_delete.go:125

Unfortunately, it's hard to debug this flake without logs, events, etc. from the shoot itself.
We might want to look into the respective items from https://github.com/gardener/gardener/issues/6016 soon.
Luckily, I was able to observe the failure from https://prow.gardener.cloud/view/gs/gardener-prow/pr-logs/pull/gardener_gardener/6522/pull-gardener-e2e-kind/1560573365364723712 in the prow cluster right when it happened.
I observed the following interesting things:
provider-local in CrashLoopBackOff
DNSRecords were marked for deletion provider-local was not acting on it, because it was in CrashLoopBackOff:
$ k -n garden get dnsrecord
NAME                            TYPE    DOMAIN NAME                                                      RECORD TYPE   STATUS      AGE
aggregate-prometheus-4b8abbe7   local   p-seed.ingress.seed-2fflb.garden.external.local.gardener.cloud   A             Succeeded   22m
grafana-fa8f29bd                local   g-seed.ingress.seed-2fflb.garden.external.local.gardener.cloud   A             Succeeded   22m
seed-ingress                    local   *.ingress.seed-2fflb.garden.external.local.gardener.cloud        A             Succeeded   21m

$ k -n garden get dnsrecord seed-ingress -oyaml
apiVersion: extensions.gardener.cloud/v1alpha1
kind: DNSRecord
metadata:
  annotations:
    confirmation.gardener.cloud/deletion: "true"
    gardener.cloud/timestamp: 2022-08-19 11:03:36.585690213 +0000 UTC
  creationTimestamp: "2022-08-19T10:43:22Z"
  deletionGracePeriodSeconds: 0
  deletionTimestamp: "2022-08-19T10:43:31Z"
  finalizers:
  - extensions.gardener.cloud/dnsrecord
  generation: 2
  name: seed-ingress
  namespace: garden
  resourceVersion: "7556"
  uid: ecb97931-eb5f-4b77-b7b4-3fad5b92f07e
spec:
  name: '*.ingress.seed-2fflb.garden.external.local.gardener.cloud'
  recordType: A
  secretRef:
    name: seed-ingress
    namespace: garden
  type: local
  values:
  - <IP_ADDRESS>
status:
  conditions:
  - lastTransitionTime: "2022-08-19T10:43:22Z"
    lastUpdateTime: "2022-08-19T10:43:22Z"
    message: Record was created successfully in infrastructure at least once
    reason: Success
    status: "True"
    type: Created
  lastOperation:
    description: Successfully reconciled DNSRecord
    lastUpdateTime: "2022-08-19T10:43:22Z"
    progress: 100
    state: Succeeded
    type: Create
  observedGeneration: 1

$ k -n extension-provider-local-54xmq get po
NAME                                                 READY   STATUS             RESTARTS       AGE
gardener-extension-provider-local-759bd58d76-8fvpn   0/1     CrashLoopBackOff   8 (5m1s ago)   21m

$ k -n extension-provider-local-54xmq logs gardener-extension-provider-local-759bd58d76-8fvpn
{"level":"info","ts":"2022-08-19T11:05:25.322Z","logger":"controller-runtime.metrics","msg":"Metrics server is starting to listen","addr":":8080"}
{"level":"info","ts":"2022-08-19T11:05:25.323Z","logger":"local-shoot-webhook","msg":"Adding webhook to manager"}
...
Error: could not add webhooks to manager: could not create webhooks: could not get REST mapping from GroupVersionKind 'druid.gardener.cloud/v1alpha1, Kind=Etcd': no matches for kind "Etcd" in version "druid.gardener.cloud/v1alpha1"
...
{"level":"error","ts":"2022-08-19T11:05:25.335Z","msg":"Error executing the main controller command","error":"could not add webhooks to manager: could not create webhooks: could not get REST mapping from GroupVersionKind 'druid.gardener.cloud/v1alpha1, Kind=Etcd': no matches for kind \"Etcd\" in version \"druid.gardener.cloud/v1alpha1\"","stacktrace":"main.main\n\t/go/src/github.com/gardener/gardener/cmd/gardener-extension-provider-local/main.go:34\nruntime.main\n\t/usr/local/go/src/runtime/proc.go:250"}

I assume, that VPA killed the pod which led t
We might want to delay deletion of the Etcd CRD in the seed deletion flow until all ControllerInstallations are gone or even manage and delete them together with the extension CRDs.

@timebertt should we close this now, since it was moved to Completed GQF Tasks or what is the status?

I wanted to observe the test for another week. I haven't seen any more instances of this flake, so we can close this.
/close


Setting opacity to undefined results in infinite loop

Describe the bug
Hello, I think I found a bug in Openlayers 6.0.0-beta.13, or at least unexpected behaviour that is not happening in ol version 5. If I set opacity to undefined on a TileLayer PluggableMap.render() will be called over and over again. At first I thought it is related to https://github.com/openlayers/openlayers/issues/9211 since I ran into an infinite loop, but it is unrelated.
To Reproduce
With ol6, if a layer is defined like this:
const layer = new TileLayer({
  source: new OSM()
});
l.setOpacity(undefined);

const map = new Map({
  layers: [layer],
  target: 'map',
  view: new View({
    center: [0, 0],
    zoom: 2
  })
});

this will eventually result in an infinite loop. This happened in a project where layers are generated dynamically, undefined was set purely by accident.
The infinite loop occurs in https://github.com/openlayers/openlayers/blob/master/src/ol/PluggableMap.js#L1259-L1262 where animate is never set to false.
From what I can tell is that when undefined is set in https://github.com/openlayers/openlayers/blob/master/src/ol/layer/Base.js#L107, state.opacity is set to NaN for TileLayers. This is forwarded to https://github.com/openlayers/openlayers/blob/master/src/ol/renderer/canvas/TileLayer.js#L380-L396 when alpha is calculated. The difference between between ol5 and 6 would be:
openlayers 6:
const alpha = opacity * (transition ? tile.getAlpha(uid, frameState.time) : 1);
openlayers 5:
const alpha = transition ? tile.getAlpha(uid, frameState.time) : 1;
Since opacity is NaN, in line 392 alpha will always be NaN and never be comparable to 1 and frameState.animate will always stay true.
This bug seems easy to fix, but I can't come up with a pull request since I am not too familiar with the codebase and I have no idea what role opacity plays here, why it was introduced as a function parameter etc, but a simple isNaN check should do it.
Expected behavior
Setting opacity to undefined on a layer should not result in an infinite loop.

Thanks for identifying this problem and writing up a great bug report.
I think the easiest fix would be to check for a number (between 0 and 1) as early as possible in the setter.

Hello,
by checking in the setter you mean something like this?
setOpacity(opacity) {
  this.set(LayerProperty.OPACITY, (typeof opacity === 'number' && (opacity >= 0 && opacity <= 1)) ? opacity : 1);
}

The fallback to 1 seems to go along with e.g. the constructor of Base.js.
However, if something like this is done it seems to contradict with layer.test.js, the it('returns a layerState with clamped values' test will fail. It seems that setting negative or too high numbers is fixed by the clamp method. So is it preferred to do the sanitizing of the value insinde clamp or just leave it in the setter and alter the tests?
Or, to be consistent with the current tests that check for the correct behaviour of clamping the opacity value, a simple check for a number in the setter would suffice?
setOpacity(opacity) {
  this.set(LayerProperty.OPACITY, (typeof opacity === 'number') ? opacity : 1);
}

This will stop the loop for undefined, but I have a hard time understanding the code in TileLayer.js because any other value for opacity besides 1 results in the same loop, since e.g. 0.5 * 1 is still 0.5...

@alihuber I agree the logic in the tile layer renderer looks suspicious.  What we mean to be doing is checking whether the tile opacity during a fade-in transition is not 1 – instead of whether the layer opacity is not 1.
In #9864 I created a fix for this.  In addition, I made it so setting opacity to a non-numeric value throws.  We are not consistent in enforcing valid types or ranges of values for layer properties.  But I think it makes sense to fail fast(er) in this case.  Ideally this would have pointed more quickly to a change you could make in your application, rather than having to dive deep into debugging an issue in the library.
Thanks for your work identifying the problem and suggesting a fix.


RSDK-2015 Cleanup carto remnants

This is part of: https://github.com/viamrobotics/viam-orb-slam3/pull/18
This will not pass linting. Linting will be done in another PR.

This PR removes references to carto code and removes the concept of SLAMLibraries and slam.Mode (defined in rdk/services/slam/slam_libraries.go) as those are no longer relevant to orbslam.

@kkufieta

Is it possible for you to reverse the order of PRs? First the linter one, and then this one?

I have just changed the linter PR to no longer be based on top of this. It now no longer matters what order they are merged in. Both can be reviewed and merged in parallel.

@kkufieta @tessavitabile Commit https://github.com/viamrobotics/viam-orb-slam3/pull/19/commits/c2355ce253fa8648a4b6f40010c2b53541349b9f removes the global variable BinaryLocation and instead uses the variable orbslamService.executableName. I think this is superior because it gets rid of global state (that could easily cause race conditions that are hard to debug). Do you have any thoughts on whether this is a good or bad change?


disable notification's sounds on a per notification basis

very short question: is there a way for android notifications to make sure a given notification is not playing any sound at all while not deactivating sounds globally through configuration at push.init?

@ebarault Yeah, you can send the empty string. I just updated the docs:
https://github.com/phonegap/phonegap-plugin-push/blob/master/docs/PAYLOAD.md#sound


Added samples for remaining functions in readme

@florianchrometz Kindly check this.
Closes #2

Thanks @0xlarmideh!

@florianchrometz Please add hacktoberfest-accepted to this PR. Thanks.


Test Getting Started Accessibility

Testing #115896

[ ] anyOS @isidorn
[ ] anyOS @gregvanl

Complexity: 3
Create Issue

This iteration we worked on improving the accessibility of the getting started editor, please verify that it is keyboard navigable and able to be understood with a screen reader.

Opened via Help => Getting Started
Opened via "workbench.startupEditor": "gettingStarted" on a new window

Great progress from when I tried it out last time, though I could still find a couple of issues.


API: contracts in wallet API

Need to discuss if we need contracts support in default API and implement if necessary.

Before this change there were 2 folders in AppData (with spaces and without). One was used for apps cache. Please test that now only one folder present and 'appcache' folder is inside it.

Before this change there were 2 folders in AppData (with spaces and without). One was used for apps cache. Please test that now only one folder present and 'appcache' folder is inside it.

Added new method invoke_contract. Docs are updated.
Please test the new method, also test all the API (a lot of changes).
Need to consider automation (@beam-mw )

Change the letter "H" in Shader from uppercase to lowercase.

checked


Aura's Do Not Correctly Account for Creature Size in Radius

According to the aura rules they are an emanation type area effect: https://2e.aonprd.com/MonsterAbilities.aspx?ID=5
According to the emanation rules they start measuring the specified distance from the outer edge of the source creature's square(s): https://2e.aonprd.com/Rules.aspx?ID=357
The areas displayed in the creature compendiums have the distance correct based on what is in the creature's stat block, however the circle template drawn around their token starts measuring from the centre of the creature token rather than its outer edge.
Example: Hound of Tindalos is a medium creature with a 30' aura Ripping Gaze.  Placing the hound on a map the aura only extends out from the hound 5 squares (25') instead of the expected 6 squares (30').  The same can be seen with the Ravager of Tindalos (large version of the hound with the same aura) and it's aura only going 5 squares out from it instead of the expected 6.
For most small, medium, and large creatures this means that the aura is functionally 5' too small when being drawn on the map.  For huge and gargantuan creatures their auras are 10' too small as drawn on the map.
I'm not sure if Tiny creatures should work like Small creatures in this case or if they should be left as is (based on how their reach works).
If the radius of the drawn circle is a separate data value from the displayed radius in the text this is hopefully a quick batch update to add 5' or 10' to the drawn circle radius value, if they are the same this may be a more challenging issue to fix depending on how stuff is setup on the back end.

Looks fine to me:

This is what I'm seeing for auras on them in my world on Foundry V11 Build 313 with PF2e 5.6.2 grabbing fresh copies of the creatures out of the Bestiary Browser

You're starting the measurement five feet away from the creature in each case, so it will of course be five fewer feet than expected.

From what I understand emanations start measuring from outside of the creature so your screenshot is correct there should be 6 squares in the area not counting the token's space.  But in mine I only have 5 squares not counting the token's space.

The background obscures it, but I also count six squares in your first screenshot. Compare with https://2e.aonprd.com/Images/Rules/Rules354.png for reference.


Update translations for 3.1.4

Version 3.1.4 is finally ready!! So now it has come the time to update our translations for this release.
This is a call to all our translators to update their respective translations. Please create separate pull requests for each language:

French

@goanpeca

Japanese

@sohnishi

Portuguese (Brazilian)

@manipuladordedados

Russian

@burrbull
@Qlogin

Spanish

@ccordoba12

Important notes:

I can only wait for you until Saturday (April 22) at 00:00 am UTC for your pull requests. Fortunately there are only 3 new (but important) strings to translate, so your job is quite easy ;-)

Don't forget to do your PRs against the 3.1.x branch.

Dear @ccordoba12
I'm new to github and confused little.
Which branch should I fork from and PR against?
Fork from 3.1.x and PRs to 3.1.x?

Fork from 3.1.x and PRs to 3.1.x?

Yes, please. That's the idea.


Component: ScrollableContainer

The newest and shiniest stuff coming from design includes a revamped scrollable shadow effect.
In this PR:

We already had the effect implemented for the layout on SidePanel, so we extract that into a custom hook: useScrollShadow
We create a new component ScrollableContainer, meant to replace Scrollable completely at some point.
Add deprecation notes to Scrollable

useScrollShadow
The hook is provided in case you need extra control and ScrollableContainer is a bit restrictive for your needs, do notice you have to add your own layout styles to the container and its elements (header, footer, body).
For an example of how to use it, check SidePanel.layout and the new ScrollableContainer
ScrollableContainer
Powered by the aforementioned hook, this a very simple container that has the layout styles and effects already in place for you, all you have to provide is content (header and/or footer + body).

Note that "look" styles (background, spacing, corners, etc) are up to you, ScrollableContainer just makes sure the top and bottom sections are fixed to their respective positions, the body scrolls and the shadow effects are added.

@jakubjanczyk Added you to make sure SidePanel stuff is not broken :)
@jaredmcdaniel Added you to check the UI as @digitaldesigner is out for a few days

Sweet! Just a couple things from me @tinkertrain ...

I believe the header should always have a single line box-shadow "border"?

Codepen (with border)

Storybook (without)

Lets update the box-shadow transition timing to 0.2s like the codepen vs 0.5s here.

@jaredmcdaniel Thanks for looking! Both things taken care of 👍

Hey @plbabin @tinkertrain Is this component supposed to eventually handle the UI elements like present on the Conversation View page?

Because if so, can this currently handle the transition from the inline header/footer to the fixed header/footer? We are currently handling this via the useShouldShowFixedHeader hook in conjunction with the ScrollableContent component.
Also will this implementation handle browser resizing?

@TerrenceLJones Currently it doesn't handle that transition, but the internal mechanisms should allow me to add it. I can work on that next.
I don't quite understand about "handling" browser resizing, the container can have any width (directly as a prop or you could use styled components) and you should be able to use media queries too, also both the header and footer have their widths set to 100%.
This story has the width as 70%. Is there anything else beyond that I'm not considering?


unexpected difference in output for linear_regression_raw vs. epochs.average()

Describe the bug
I noticed that when I use linear_regression_raw, this returns a dict of evokeds. However, when I perform the method epochs.average(by_event_type=True), this returns a list of evokeds. I know that there's a major release coming soon so I was wondering if we wanted to keep this pattern or if we wanted to standardize it so that they would both output the same type.

oh ok, wouldn't we want to change the behavior of linear_regression_raw then? It diverges from the list of evoked patterns. no strong feelings about it, just noticed the different output pattern

honestly I don't feel any urge changing this but I don't use these very
often myself so...

Message ID: @.***>

agreed, not that big of a concern. will close


Remove nodeSelector support for egress gateway for az aks mesh command.

This checklist is used to make sure that common guidelines for a pull request are followed.
Related command
az aks mesh enable-egress-gateway -g myRG -n myCluster
General Guidelines

[x] Have you run azdev style <YOUR_EXT> locally? (pip install azdev required)
[x] Have you run python scripts/ci/test_index.py -q locally? (pip install wheel==0.30.0 required)
[x] My extension version conforms to the Extension version schema

For new extensions:

[ ] My extension description/summary conforms to the Extension Summary Guidelines.

About Extension Publish
There is a pipeline to automatically build, upload and publish extension wheels.
Once your pull request is merged into main branch, a new pull request will be created to update src/index.json automatically.
You only need to update the version information in file setup.py and historical information in file HISTORY.rst in your PR but do not modify src/index.json.

Thank you for your contribution! We will review the pull request and get back to you soon.

Queued live test to validate the change.

test_aks_azure_service_mesh_enable_disable
test_aks_azure_service_mesh_with_ingress_gateway
test_aks_azure_service_mesh_with_egress_gateway
test_aks_azure_service_mesh_with_pluginca
test_aks_azure_service_mesh_get_revisions
test_aks_azure_service_mesh_get_upgrades

BTW, case test_aks_azure_service_mesh_get_revisions is still filtered out by default (src/aks-preview/azcli_aks_live_test/configs/ext_matrix_default.json), do you think it's the time to add it back?
        "service mesh, missing feature registration for new resource type": [
            "test_aks_azure_service_mesh_get_revisions"
        ],


Fix #1775

This PR generate tmp array and add to &EG(symbol_table).

@sergeyklay It's ok.

@dreamsxin Segmentation fault (core dumped) Travis for all PHP 7.x versions. Did you see

@sergeyklay Check

Thank you


[v2.7] Included k3d cluster creation/import into our integration testing setup.

Issue:
 https://github.com/rancher/qa-tasks/issues/614
Problem
 This to increase test coverage for our integration tests, and not all tests going into the validation package we need a fast way to have a downstream cluster to test against.
Solution
 Import a k3d cluster to test against.
Testing
 Drone integration tests
Engineering Testing
Manual Testing

Automated Testing

QA Testing Considerations

Regressions Considerations

Backport: https://github.com/rancher/rancher/pull/40310

@superseb I had to make some changes to the Dockerfile in order to be able to run k3d as an import cluster in our integration testing. Would really appreciate a review. Thank you!

@superseb could I get another review on this? Thank you!

@igomez06 Looking at the build log, it logs an enormous amount of things, is this expected? I'd prefer to keep it as little as possible (only log errors). https://drone-pr.rancher.io/rancher/rancher/27287/3/2

Hi @superseb yes that is expected, but only for this PR run. This is coming from these tests https://github.com/rancher/rancher/tree/release/v2.7/tests/v2/integration/steveapi. We made updates to the json files so when the integration tests are ran, it won't modify those files and therefore not have that huge git diff anymore.
These tests are now ran against the k3d cluster rather than the local cluster, and before the changes it would modify the json files after every test run. So we modified the json to have a generic api/hostname so it will no longer modify them after every run.

One newline nit, the /script and /package parts are fine by me.
PR needs a rebase due to conflicts.

@cmurphy @superseb I rebased my PR would appreciate one more review. Thank you!

@igomez06 looks like it needs a rebase again :open_mouth:

@igomez06 looks like it needs a rebase again 😮

Sorry a big PR was just merged. This will be the last rebase I promise :sweat_smile:

fyi I sometimes see some instability related to creating the downstream k3d cluster https://drone-pr.rancher.io/rancher/rancher/27931/3/2  Failed Cluster Preparation: Failed Network Preparation: failed to create cluster network: docker failed to create new network 'k3d-auto-k3d-cluster-jdivk': Error response from daemon: Failed to program FILTER chain: iptables failed: iptables --wait -I FORWARD -o br-24d47de82769 -j DOCKER: iptables: Resource temporarily unavailable.\n (exit status 4) \n\x1b[31mERRO\x1b[0m[0000] Failed to create cluster >>> Rolling Back    \n\x1b[36mINFO\x1b[0m[0000] Deleting cluster 'auto-k3d-cluster-jdivk'    \n\x1b[31mERRO\x1b[0m[0000] failed to get cluster: No nodes found for given cluster \n\x1b[31mFATA\x1b[0m[0000] Cluster creation FAILED, also FAILED to rollback changes! \n: exit status 1"

fyi I sometimes see some instability related to creating the downstream k3d cluster https://drone-pr.rancher.io/rancher/rancher/27931/3/2  Failed Cluster Preparation: Failed Network Preparation: failed to create cluster network: docker failed to create new network 'k3d-auto-k3d-cluster-jdivk': Error response from daemon: Failed to program FILTER chain: iptables failed: iptables --wait -I FORWARD -o br-24d47de82769 -j DOCKER: iptables: Resource temporarily unavailable.\n (exit status 4) \n\x1b[31mERRO\x1b[0m[0000] Failed to create cluster >>> Rolling Back \n\x1b[36mINFO\x1b[0m[0000] Deleting cluster 'auto-k3d-cluster-jdivk' \n\x1b[31mERRO\x1b[0m[0000] failed to get cluster: No nodes found for given cluster \n\x1b[31mFATA\x1b[0m[0000] Cluster creation FAILED, also FAILED to rollback changes! \n: exit status 1"

This looks like a docker networking issue. Does this happen a lot?

Every once in a while, maybe 1/10 times

Every once in a while, maybe 1/10 times

I'll take a deeper look and see what I can find. Thanks for the heads up.


chore: index.ts object keys should be in alphabetical order

We want all of the object keys in lib/index.ts to be in alphabetical order. Is there a way to configure prettier to do that or is there another lint plugin?

This comes with eslint itself. You can check the sort-keys and sort-imports
rule.
https://eslint.org/docs/latest/rules/sort-keys
https://eslint.org/docs/latest/rules/sort-imports
On Fri, Sep 27, 2024, 21:56 Aubrey Quinn @.***> wrote:

We want all of the object keys in lib/index.ts to be in alphabetical
order. Is there a way to configure prettier to do that or is there another
lint plugin?
—
Reply to this email directly, view it on GitHub
https://github.com/microsoft/eslint-plugin-fluentui-jsx-a11y/issues/124,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AE2HCOWFCNTD4VXO3N4O5XLZYWBLTAVCNFSM6AAAAABO7PV5DSVHI2DSMVQWIX3LMV43ASLTON2WKOZSGU2TGMZRGM4DIOA
.
You are receiving this because you are subscribed to this thread.Message
ID: @.***>

I can take this up


Supporting FIPS build on CentOS 7

Title: Support building Envoy with the FIPS compliant borringssl library on CentOS 7
Description:
Hi gang,
I'm working on getting a FIPS compliant build of Envoy to work on CentOS 7 through the Tetrate getEnvoy pipeline.  I hit a roadblock however when the build tried to run a script defined in boringssl_fips.genrule_cmd.  This script was written to only work on Ubuntu, as the libraries pulled in will only work if glibc 2.18 is present on this host.
In order to get around this, I forked the Envoy repo and made modifications to this script to ensure that it worked on both CentOS and Ubuntu.  I was capable of successfully building a CentOS 7 version of Envoy FIPS with this change in the Tetrate getEnvoy repo, and it shouldn't impact any existing build pipelines in the Envoy repo.
Here's the link to the code I've modified on a fork of Envoy:
https://github.com/Fchateauvert/envoy/pull/2
Note that this PR is not ready for review, and is just here to present the direction I am taking with this new feature.
I was wondering if this is the right approach to accomplish this, or if there are any aspects of Envoy I may have missed in this change.
External Links
Tetrate Repository

There's a couple reason that BoringSSL FIPS doesn't work CentOS 7.
The policy docs: https://github.com/envoyproxy/envoy/issues/16678
States that:

The cryptographic module is also supported on the following operational environments for which
operational testing and algorithm testing was not performed:
• Linux 4.X executing on x86_64 architecture;
• Linux 4.X executing on POWER9 architecture;
• Linux 5.X executing on x86_64 architecture; and
• Linux 5.X executing on POWER9 architecture.

CentOS 7 never met this, also it specifies that LLVM should be download from official LLVM website so I don't think using llvm-toolset-7.0 would appropriate.

@Fchateauvert I was working on a similar task and I ended up with the same approach, although I was completely patching the whole script for the purposes of the build. Your solution looks great. Please follow up with a PR for this to become upstream.
However, we should still note that what we end up is not a FIPS verified library according to the PDF pointed out at the beginning of the script:
https://csrc.nist.gov/CSRC/media/projects/cryptographic-module-validation-program/documents/security-policies/140sp3678.pdf


feat: added escaping for: for to adapt windows path

Description

On Windows platforms, colons are used in paths as part of the drive letter, which can cause incorrect parsing as command arguments. Escaped colons (\:) are handled here so that they can be properly escaped
Motivation and Context

Adaptation changes made for Windows platform support for kitex
Related Issue

fix https://github.com/cloudwego/kitex/issues/469

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

hi，感谢提议。但现在我们暂时还没考虑支持 windows 场景。等后续开始适配 windows 了我们再系统性的做支持。


Issue with RATA Run Data

Issue:

User edits/updates RATA Run Data, clicks Save and Close
System throws the following error even though Operating Level Code is not applicable to RATA Run Data

Issue resolved. The system no longer displays the operating level code error for Rata run data


Tracking issue for 0.3.0

I've decided to release 0.2.0 faster because Components have a good progress and could be released soon 🎉
Expected features:

[x] Components #91
[x] Fragments #36
[ ] Manual tree generating example #82
[x] Add headers to fetch #66
[ ] Add more formats (BSON, TOML, YAML, XML partially)
[ ] Add tutorial and more docs
[ ] Fix code format
[ ] Add clippy to travis check

@krircc Resonable! I've planned experiments with router to 0.4.0.

I'd personally recommend against clippy being required until it is integrated into rustup, unless you know of a way to download the binary directly. It adds a lot of time to install it first and is annoying. Also, it's not hard to fix clippy lints once every month or so.
rustfmt :+1: since that is now in rustup.

What are you thinking regarding the tutorial/docs? Honestly at this stage in the project I would just do the following:

Link to some articles describing the elm/react architecture. Honestly the language concepts are largely the same
Add a few more docs around the examples, especially READMEs or at least main.rs docstrings describing what they are even trying to do.
(maybe) do a brief step-by-step tutorial which is basically a copy/paste of an elm tutorial.

I wouldn't try to be "totally documented" at this point. Honestly, someone who knows elm can figure this out pretty quickly (I could!).

Also, I would say that more formats (bson, toml, etc) seems like it should be super low priority to me. JSON is the language of the web (in my experience). Router seems much more useful personally.


[Bug] Issue with android crosswalk

If you are using crosswalk to speed up your android app it only works after first closing the app and then opening it again, then the preview shows.

To easily get an crosswalk app running you can see this post:
http://ionicframework.com/blog/crosswalk-comes-to-ionic/

If I click the sleep button (power button) and click it again it also works.

I can confirm this is still happening. Does anyone have any insight into a potential fix? As far as I can tell the fragment is being displayed BELOW the crosswalk activity, but I do not know how to properly bring it to front.

This is still very relevant. Any news on this issue?

I have same issue with crosswalk 18+ beta. I can show camera on ionic view just when using "toBack" parameter as true on startCamera but when I use false the plugin don't show camera square.
Another thing when I using toBack false on startCamera I'm not able to put the camera square when I want with x,y parameters.
Anyone have a solution?

Same issue here with Crosswalk 18+ and 19+ . As soon as we add crosswalk into the project (cordova plugin add cordova-plugin-crosswalk-webview) , the camera preview will never show anymore.
Does anybody have a clue how to hotfix such issue?

Ok, I managed to make the camera preview work with Crosswalk 18+ by adjusting following settings in config.xml of the cordova project: xwalkZOrderOnTop set to false and CrosswalkAnimatable set to true. The part of config.xml looks like this:
<preference name="xwalkVersion" value="18+" />
<preference name="xwalkCommandLine" value="--disable-pull-to-refresh-effect" />
<preference name="xwalkMode" value="embedded" />
<preference name="xwalkMultipleApk" value="true" />
<preference name="xwalkZOrderOnTop" value="false" />
<preference name="CrosswalkAnimatable" value="true" />


WIP: do not merge - testing PR for test automation

jenkins/superCI comment

Status: failure, return code = 1
Result url: https://da.gd/yiCXb
Comment: This is testing CI

jenkins/superCI comment

Status: failure, return code = 1
Result url: https://da.gd/4pCn
Comment: This is testing CI

jenkins/superCI comment

Status: failure, return code = 1
Result url: https://da.gd/QM8oW
Comment: This is testing CI

jenkins/superCI comment

Status: failure, return code = 1
Result url: https://da.gd/pyYAX
Comment: This is testing CI

jenkins/superCI comment

Status: failure, return code = 1
Result url: https://da.gd/ihgu
Comment: This is testing CI

jenkins/superCI comment

Status: failure, return code = 1
Result url: https://da.gd/sgAW
Comment: This is testing CI

jenkins/superCI comment

Status: failure, return code = 1
Result url: https://da.gd/01AH
Comment: This is testing CI

@jscotka can we close this?

jenkins/superCI comment

Status: failure, return code = 1
Result url: https://da.gd/BeJjV
Comment: This is testing CI

jenkins/superCI comment

Status: failure, return code = 1
Result url: https://da.gd/BeJjV
Comment: This is testing CI

jenkins/superCI comment

Status: failure, return code = 1
Result url: https://da.gd/BeJjV
Comment: This is testing CI

jenkins/superCI comment

Status: failure, return code = 1
Result url: https://da.gd/BeJjV
Comment: This is testing CI

jenkins/superCI comment

Status: failure, return code = 1
Result url: https://da.gd/BeJjV
Comment: This is testing CI

jenkins/superCI comment

Status: failure, return code = 1
Result url: https://da.gd/BeJjV
Comment: This is testing CI

jenkins/superCI comment

Status: success, return code = 0
Result url: https://da.gd/azLeM
Comment: This is testing CI

jenkins/superCI comment

Status: success, return code = 0
Result url: https://da.gd/azLeM
Comment: This is testing CI

Closing this, since CI is working now. Feel free to reopen if needed


Update the SCSS linter errorformat

Seems like the scss-lint format has changed, this updated rule should
cope with the new schema.

Thanks!

Thank you!
2016-07-28 8:19 GMT+10:00 Daniel Hahler<EMAIL_ADDRESS>
Thanks!
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/neomake/neomake/pull/520#issuecomment-235739282, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AEVRD-C5VszLQJZ9iIjW9b3TISSdRTVUks5qZ9lugaJpZM4JUMOr
.


Lua 5.4 support

Lua 5.4 is officially released, what is needed to support it in luacov and cluacov too?

the rockspec has a constraint on Lua 5.1 - 5.3, while there is an older rockspec (0.11 version) that does not set a constraint. This currently results in the old 0.11 version being installed on a Lua 5.4 installation by LuaRocks.
Other than that LuaCov itself seems to work fine, but cluacov requires some work. I did a cheap copy-paste experiment, but that didn't work, the tests kept failing.
@hishamhm how to move this forward?

experiment here: https://github.com/luarocks/cluacov/pull/1

Closed by #84!


fix: add languageOptions to ChildContext

Currently the plugin loses languageOptions when creating a child context (when using a flat config). This causes errors when plugin tries to use the default parser, i.e. languageOptions.parser
I've also created a reproduction for this bug

I extracted the logic of creating the context cache key into a separate function, and also made a function for obtaining a hash for options with its caching (since adding 2 more global variables for parser.meta doesn't seem so good)

This pr seems similar with https://github.com/import-js/eslint-plugin-import/pull/2829 but with additional cache and both should fix https://github.com/import-js/eslint-plugin-import/issues/2556#issuecomment-1663038247

I can confirm both https://github.com/import-js/eslint-plugin-import/issues/2556#issuecomment-2119520339:
    { // https://github.com/import-js/eslint-plugin-import/issues/2556#issuecomment-2119520339
        plugins: { 'import-x': { rules: pluginImportX.rules } },
        rules: pluginImportX.configs.recommended.rules,
    },
    pluginImportX.configs.typescript,

and this pr
+++ a/package.json
+        "eslint-plugin-import-x": "https://github.com/kosmotema/eslint-plugin-import-x#head=fix/child-context-language-options",

with
    ...compat.config(pluginImportX.configs.recommended), // https://github.com/un-ts/eslint-plugin-import-x/issues/29#issuecomment-2148843214
    pluginImportX.configs.typescript, // no need of wrapping in compat.config() since there's no pluginImportX.configs.typescript.plugins

will address https://github.com/import-js/eslint-plugin-import/issues/2556#issuecomment-1663038247

Refactored a bit context hashing:

now all cached properties are declared when the object is created
also I decided to use dequal instead of JSON.stringify and store the actual values in the cache instead of their json

A little more on the second point:
I've noticed that settings and languageOptions (for flat config) often doesn't change when childContext is called again (i.e. they're referentially equal). So it seems that jsoning the values each time is often unnecessary and inefficient, and we can just use deep equal approach for comparing (which will handle the referentially equality case faster)

Found and fixed the bug that causes this test to fail. For some reason I thought before that parserPath and languageOptions are exclusive (i.e. if there is languageOptions, parserPath will be nullish). It turned out that it is not quite so :(
Now to get a real parser, an algorithm similar to getParser is used
Also decided to switch from hashing approach to the versioning one. Since we already use deep equality to compare context options, it seems that hashing is not really necessary. So we can simply increment the version when some options change, and return that version as a string

Since we already use deep equality to compare context options, it seems that hashing is not really necessary. So we can simply increment the version when some options change, and return that version as a string

This reminds me of a package https://www.npmjs.com/package/stable-hash that does exactly that, IMHO we can use this package instead of self implementing this!


Docs page on numpy to xarray

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

I think this is a good addition, should we continue?

Yes it looks great!

It looks like I didn't quite finish it (the last sentence trails off, and the table has very few entries). Others feel free to push commits to fix that and merge.


Changing a import and a few odds and ins.

Made a couple of changes...

Changes the pcs.packets.ipv4 import
Added ipv6 icmp next header code
Changed the import for CommonV1

So I am still having issues with import, not sure if I am the only one experiencing these issues.  Some of these code changes reflect the changes that I had to do to resolve import issues.  I am running on a fresh FreeBSD build (HEAD).
Also, not sure  why 2 commits are showing up.
Added code to allow icmpv6 chaining
Added function for calc_length and fixed calc_sum


SSR Manifest Support

@N0tExisting I can try to do it, but it would be nice to have an example of repo or even better a specification of how it should work

From what I have seen it seems to be:
interface SSRManifest {
  [file: string]: string[] // (the emitted files?)
}
```

I studied how SSR works in Vite, and you actually need to specify files yourself, just manually point to them. Manifest is generated based on build.rollupOptions.input field, so it all comes down to manually defining your inputs. Using this library for that is redundant IMHO


Please fix "module print_color not found" and add booru autotagger

Hello! I installed standalone for one PC but I can't do it on another because "module print_color not found" when I try to run after install.
Also please add booru autotagger (like on A1111) because it spend much time to write every tag especially when you tag 1K images dataset for lora.
Thanks.

I had the same issue.
and fixed it by reinstalling all packages below [Please install the followings first:] on the readme page.
I hope it works.


Revamping awesome-azd site

Revamping UX improvements and adding additional features based on the proposed design

https://github.com/Azure/awesome-azd/issues/28

@savannahostrowski moving to Gallium


Enable Python Interactive for use as a debugging console

I think this is related to / mentioned deep in the comments here, but I'm not convinced they're quite duplicates.

I think it'd be tremendously useful to be able to also select Python Interactive as your debug terminal, essentially launching a Python Interactive window at a breakpoint with the state of your program loaded into it, giving you access to your variables. That way plotting functions and visualizations could be made use of pretty easily as a way of debugging. This varies slightly from the current "Debug Current File in Python Interactive window", which would run your entire script in Python Interactive, in that you are still able to configure the debugger launch.json. For my specific use case it would allow passing in command line args to the script, while still being able to debug in Python Interactive.
At a high level, I can see two ways of it happening:

Use only Python Interactive and allow it to continue execution of the code as the full debug tool.
Use the main debug terminal for the debugging flow, but at a breakpoint launch the Python Interactive window that opens preloaded with the current program state. At that point, the Python Interactive window is essentially detached from debugger, but at least has the data from the program at that time, allowing for more native exploring of the variables. Once the user continues debugging, the current Python Interactive window is either updated or a new one is launched at the next breakpoint.

My current work around is just to write a data frame to a .csv in the current debugger, then load it into Python Interactive - which works well enough, but I think it'd be really helpful if they were somehow integrated!
Thank you for making this product so awesome to use!

Hi,
I am using VScode Python for remote debugging, because Pycharm blocks this feature in its community edition.
I would love to make VScode my main IDE for Python, because I like the idea to have one Editor for all languages.
But the missing interactive debug console is a showstopper for me.
Hitting a breakpoint and dropping into an IPython Console is an essential feature for a Python IDE:
https://www.jetbrains.com/help/pycharm/using-debug-console.html
Actually also the good old pydev can do it:
https://www.pydev.org/manual_adv_debug_console.html
Best Regards

@Steph71 not sure what you're missing. The IPython console is available when using the interactive window for debugging. Click the 'Debug Cell' code lens over top of your code. All output will be sent to the interactive window.

Perhaps you're talking about being able to eval in the ipython console. That's not currently supported (as the kernel is busy with the cell that's running). You can eval in the debug console at the same time though. Output is then duplicated in the interactive window and the debug console:

Or perhaps you're asking for a switch to 'interactive' after you've already started debugging. This won't likely be supported any time soon (I mentioned this in one of the comments above). We'd have to transfer the state of the python app you launched into a jupyter kernel.

Maybe it's worth restating what I thought when I created this issue and what I've learned thanks to some comments from others.
The initial hope was to have an additional option in the launch.json file under console that allowed you to pick "Python Interactive". The idea was then, when a debug breakpoint was hit, instead of working in the debug console, a Python Interactive window would open with your variables in the workspace, and you could play around in Python Interactive as you desired. I have no idea if this is feasible or not, but sounds not particularly likely.
In lieu of this feature, there was a great suggestion above to run:
from IPython import embed; embed()
in the Debug Console as soon as a breakpoint hit. You could then click "Terminal" and have an embedded IPython console running with all your workspace variables available. There are some differences between the IPython console and Interactive Python, but functionally they work pretty similarly. This method accomplishes pretty much everything I was hoping for, just with a bit of manual interaction and without the friendliness of the Python Interactive interface.
You can then, for example, run (in your embedded IPython console):
import matplotlib.pyplot as plt
plt.ion()
Then you can then create and explore plots with your data from the state of your script at the debug breakpoint. The downside here is that the embedded IPython console essentially blocks the debugger, so you can't interact with any of the Variables on the VSCode side until you terminate the IPython session. Even still, I think this is a very helpful alternative.
So one suggestion may be just to automate that from IPython import embed; embed() call. So maybe in the launch.json file, you can select "IPython Terminal" as your console, and basically behind the scenes that line of code runs for you and pops up the IPython console. Not sure. But like I said, running from IPython import embed; embed() accomplishes most all of what I'm looking for, and I encourage others to try that out and see what they think!

The idea was then, when a debug breakpoint was hit, instead of working in the debug console, a Python Interactive window would open with your variables in the workspace, and you could play around in Python Interactive as you desired. I have no idea if this is feasible or not, but sounds not particularly likely.

Actually this idea is pretty feasible. Switching to this console after starting isn't, but starting the debuggee with the interactive window should be doable. It would essentially run your entire process as a cell.
In lieu of that, your other workaround sounds good too.

Hi,
thanks for all the answers.
I tried to run my code in the interactive window ... but I do not see, how I would set a breakpint there and step in and through functions.
the suggested way
from IPython import embed; embed()
does basically what I am looking for, but it has some downsides:
1.) I have to type or paste the command whenever I need the interactive console, then I have to switch windows
2.) The main debug process is stalled, so I if I want to step one line in my original code, I need to exit the Ipython console, do the step, then start the console again ...
3.) The pycharm debug console is giving me nice features like

its just allways there, when I hit a breakpoint
syntax highlighting
it remembers my commonly used functions, and properties for a specific datatype and puts them on top of the tab completion list

to me this sounds more like a workaround than a feature ... but this is probably just the difference bewteen a generic editor, enabled with some plugin to support a language and an IDE, specifically build to develop in a language ...
Best Regards
Stephan

@rchiodo

but starting the debuggee with the interactive window should be doable. It would essentially run your entire process as a cell.

This would be exactly what I'm looking for :)

@Steph71

I tried to run my code in the interactive window ... but I do not see, how I would set a breakpint there and step in and through functions.

Setting a breakpoint is the same as setting breakpoints without the interactive window. You click in the gutter or hit F9.

As you step of if you hit F5, the breakpoints should hit. This should also work with breakpoints in other files. It's running the same debugger as non interactive.

but this is probably just the difference bewteen a generic editor, enabled with some plugin to support a language and an IDE, specifically build to develop in a language ...

I agree it's not ideal. We should implement what @jbeyer16 asked for, set the console for any debug session to 'interactive' and then it just runs the entire file you have open in the interactive window. This would also require changes to the interactive window so you could input during debugging (the mismatch you may be referring to between a full IDE and an editor).
I'd argue that VS code is an IDE, it's just the scenario you're asking for wasn't implemented yet.

@rchiodo
ah, now I got it debug ... but actually its the same issue here ... while debugging the interactive window is not interactive but frozen.
If the option @jbeyer16 is proposing is feasable, that would be a big step forward ... actually the  Interavtive window is even somehwhat better than the ipython console as plots can be directly plotted to the window instead having them floating around ...
So I will watch this issue and hope for that getting resolved the one or the other way ... probably its worth looking how the pydev people are doing that, as jetbrains are just using their code ...

I'd second @jbeyer16 's suggestion.

This would be a great feature! I just started using vscode debugging and got used to PyCharm way of doing things. So, any news on it?

It's on our backlog but no news on when we'll get to it.

i love it.
i love debug python file using ipython console like pycharm.
so i do not like the debuging way for python now when i use vs-code.

@JanHomann @jbeyer16
When following the steps of launching: from IPython import embed; embed()
I am not getting a second external window pop up after trying to display my plot. Anything I am missing here?
My steps:

from IPython import embed; embed()
import matplotlib.pyplot as plt
plt.imshow(...) + plt.show()

@Steph71 not sure what you're missing. The IPython console is available when using the interactive window for debugging. Click the 'Debug Cell' code lens over top of your code. All output will be sent to the interactive window.

Perhaps you're talking about being able to eval in the ipython console. That's not currently supported (as the kernel is busy with the cell that's running). You can eval in the debug console at the same time though. Output is then duplicated in the interactive window and the debug console:

When trying to debug an individual cell, I still can't interrogate data and plot new aspects while debugging the cell. The debug cell does allow me to step through the existing code and see variables states, but I still don't see how I can plot new things dynamically?

@aksg87 I think you might have to create the figure explicitly before plotting.
from IPython import embed; embed()
import matplotlib.pyplot as plt
plt.ion()
plt.figure()
plt.plot([1,2], [3,3])

seems to work for me.

In my use case, it's one keybinding away on Jupyter: Debug Current File in Interactive Window command, but I wouldn't like to waste students' time to set these up. Alas, no default is provided.
launch.json only allows old-school terminal with big payload (that one is distracting, for when you press F5).

Just created a bounty on Bountysource for this issue, would really love to see this as a feature:
https://app.bountysource.com/issues/98730134-enable-python-interactive-for-use-as-a-debugging-console

It seems like there are a lot of different possibilities discussed here, but one of them seems to be: use IPython in the debug console.  I would sure love to see this feature as well.  I don't want to debug in a Jupyter type interface.  I just want to set a breakpoint and when I hit it, I can use IPython to inspect things.  Maybe this is already possible but if so the setup is not well documented.
As others have said, this is a major limitation of using VS Code for Python, esp. data science type tasks

In my use case, it's one keybinding away on Jupyter: Debug Current File in Interactive Window command, but I wouldn't like to waste students' time to set these up. Alas, no default is provided. launch.json only allows old-school terminal with big payload (that one is distracting, for when you press F5).

How can I keep using the interactive terminal while debugging the current file in the Interactive Window?

I have a situation where during a debugging session I would like to interact with the images using matplotlib.
Problems:

There is still a long process after that, so I can not wait for the current cell to finish.
Also my code base is fairly large, so I can not start splitting it into Jupyter cells.

The way I am dealing with this is logging the images to file (.jpg, .png, etc) in an oldschool OpenCV C++ style. That is not interactive at all, and I always need to convert the images to unsigned chars before saving it to .jpg. Matploblib lets me visualize arrays with any datatype as image using plt.imshow

You simply type your expressions into the debug console instead of the edit box for the interactive window.
Internally the interactive window is listening to the output of a cell running. So we do something like this:
    const request = kernel.requestExecute(`Your code that submitted for the entire cell');
    request.onOutput((o) => this.sendOutputToView(o))

So it won't accept another request (which is what the input box sends).
However the debug console window does something different. There's a separate thread in the kernel that the debugger inserts and it evaluates whatever you type on that thread. So it's not blocked.
However the output from that eval ends up getting sent back to our code as an output.
Here's an example of me printing something from the debug console as I'm debugging a cell:

Sorry! is the feature suggested by @jbeyer16 available now?

Actually, I just found out that the feature exist in vs code. see solution from this stackoverflow thread.

Actually, I just found out that the feature exist in vs code. see solution from this stackoverflow thread.

This is not what this question / feature request is about. @jbeyer16 was not asking for any interactive debugger, but for the debugger to run in what the Python extension calls the Python Interactive console.

I'm wondering, would that still work for outputs? Yesterday Don said that running code via the debugger does not run in "inside the kernel", and I don't know exactly what he means by that, but maybe outputs are what would be missing.

As far as I remember, running evals in the debugger thread still causes the output to go to the currently running cell.
You can test this by just evaling something in the debug console while debugging the interactive window.

Another vote for this feature!

It has been more than 4 years since this post appeared. Any update on when it is going to be implemented?
One thing that (hopefully) is easy to implement is to have a better support for the %pdb magic command of IPython

I just published package that is my attempt at solving this problem.
The idea is to make it easy to save all local and global variables at a specific point during the debug process to disc and then load them again into an interactive window (and even close the interactive window and load them again and again if needed).
https://github.com/v4lue4dded/debugsnap/
https://pypi.org/project/debugsnap/
first install the package into the env you want to debug:
pip install debugsnap

then start a debugging session using the interactive window environment where you want to debug:

(this doesn't have a keyboard shortcut by default, Ctrl +Shift + Enter is my recommendation.
Go a breakpoint in the code where you want to save the snapshot and there open the debug consol:

Saving the Debugging Snapshot:
In your debug session, save the current snapshot. from debugsnap import save_snapshot
 save_snapshot(local_vars=locals(), global_vars=globals())

** Warning:** By default a new folder named tmp_save_snapshot will be created in your ~ directory and the shapshot files (containing the global variables, local variables and information about any variable that could not be saved for any reason) will be saved there. To change the storage location you have to provide a storage_path.

Loading the Debugging Snapshot:
In a new Python session or an interactive environment, load the saved snapshot: from debugsnap import load_snapshot
 global_vars, local_vars = load_snapshot()
 globals().update(global_vars)
 locals().update(local_vars)

Now you have all the variables that where present at the breakpoint in an interactive window.
PS: follow the links for info on how to make the saving and loading code into VSCode snippets

We'll consider it in the next triage meeting.

@IanMatthewHuff I understand it's a while ago, but do you remember what the outcome was in the triage meeting?

Sorry to bother you again @IanMatthewHuff, but did you have the chance to check what the outcome was of the last triage meeting? Or are you no longer involved and is it better to contact someone else?

Ian is not on the project anymore.
With the number of upvotes, this is something we would love to implement, it's just hard to find the time.
It would be great to see more feedback on @v4lue4dded's solution posted above to know if that is in the right direction.

@b-a0 I don't know if this will help:
After some growing frustration with the interactive mode not being similar enough to Spyder IDE, I decided to make VS Code more similar to it by myself.

Install ipython and some nice extra stuff by doing pip install ipykernel
I start my development by simply typing ipython in a terminal.
I created a shortcut that sends the selected text to the terminal and another one that execute %run name_of_the_file (ask chatgpt help if you need. I say that because I did it)
I set breakpoints by writing breakpoint in the code. When you hit a breakpoint, you should get a ipdb debugger instance. When you are in the debugging, just type interact and you have a full ipython console. The cool thing is that all of the shortcuts I defined also just work.
The only thing I was never able to figure out was a way to have plots being open by vs code. The plots now just open as other windows, which does not work for remote development.

I don't want to criticize the interactive mode, but as @amunger themselves said, they do not have time to develop this debugging feature, which for me is essential. I spent most of my time developing in debugging mode and I want the same dynamic that one gets of of IPython.
Also, in another point instead of improving the interactive mode, the Python team of VS Code (which not the same as the Jupyter team of VS Code, which developed the Interactive mode) has been dedicating resources to create an integrated REPL that (last time I checked ) does not address many of the issues that the community seems to have with the interactive mode, including the one on this thread...
In my opinion, IPython is a phenomenal project, with very good people working on it, and is the best REPL for Python. The vanilla version is not as complete, but is super powerful.

Ian is not on the project anymore.
Thanks for clarifying and sorry for the bother to Ian.

It would be great to see more feedback on @v4lue4dded's solution posted above to know if that is in the right direction.

In spirit this is the functionality, but debugsnap is a bit clunky to use, especially if I'm working on multi-GB variables that need to be written out and loaded in.
Perhaps it's a slightly silly/rude description, but I think the best way of showing what I am looking for (I hope it matches what this issue is about) is to download Spyder, write a script, set a breakpoint and start debugging.


Ensure ~SCRBundleExtension does not throw

It's possible for the bundle to be stopped before ~SCRBundleExtension accesses the bundle, causing an exception to be thrown and an abort. This change ensures the destructor does not throw.

Codecov Report

Merging #761 (9b8d71d) into development (c141557) will decrease coverage by 0.45%.
The diff coverage is 100.00%.

Additional details and impacted files

@@               Coverage Diff               @@
##           development     #761      +/-   ##
===============================================
- Coverage        89.90%   89.44%   -0.46%
===============================================
  Files              231      223       -8
  Lines            13863    12772    -1091
===============================================
- Hits             12463    11424    -1039
+ Misses            1400     1348      -52

Impacted Files
Coverage Δ

...ompendium/DeclarativeServices/src/SCRActivator.cpp
93.54% <100.00%> (+24.50%)
:arrow_up:

...ium/DeclarativeServices/src/SCRBundleExtension.cpp
100.00% <100.00%> (ø)

...ramework/include/cppmicroservices/FrameworkEvent.h
0.00% <0.00%> (-100.00%)
:arrow_down:

...endium/ServiceComponent/src/ComponentException.cpp
0.00% <0.00%> (-100.00%)
:arrow_down:

...m/ServiceComponent/src/ServiceComponentRuntime.cpp
0.00% <0.00%> (-100.00%)
:arrow_down:

...iveServices/src/metadata/MetadataParserFactory.hpp
66.66% <0.00%> (-13.34%)
:arrow_down:

...m/DeclarativeServices/src/manager/BundleLoader.cpp
63.82% <0.00%> (-6.32%)
:arrow_down:

...mework/src/service/ServiceReferenceBasePrivate.cpp
86.22% <0.00%> (-5.91%)
:arrow_down:

...pendium/tools/SCRCodeGen/ManifestParserFactory.hpp
83.33% <0.00%> (-5.56%)
:arrow_down:

framework/src/service/ServiceListeners.cpp
95.10% <0.00%> (-4.90%)
:arrow_down:

... and 96 more