Problems with font rendering when choosing custom font

Describe your issue
Setting a custom font under Settings > Interface > Font > Choose... causes problems in certain scenarios, seemingly related to the application's inability to differentiate between the first item in the dropdown menu (Segoe UI) and a custom font option.
Example 1
Chatterino can switch correctly between different presets in the font selection dropdown menu (e.g. Segoe UI and Arial), but if Segoe UI is selected and then a custom font is chosen after, it becomes impossible to set the font back to Segoe UI without first switching to Arial.
Reproduction steps:

open settings
if font is not set to Segoe UI (first option), then first set to Arial (second option), then to Segoe UI to reset state
once font is set to Segoe UI, open the font selection dropdown and select "Choose...", then pick any font
notice that the UI updates correctly to match this custom font
open font selection dropdown once again and set back to Segoe UI
at this point you will notice that the initial highlighted option is already Segoe UI, and clicking it does not update the application font (as it is, technically, already selected)

(I am on Windows. If the first font preset is not Segoe UI on other platforms, then please replace "Segoe UI" with whatever occupies the first place in the dropdown menu, for which I suspect the above repro steps will still apply.)
To force the application to go back to Segoe UI, it is necessary to switch the font to a different preset option (e.g. Arial) and then "back" to Segoe UI for it to take.
Example 2
In addition to getting stuck on a custom font option, it is possible to break font rendering through a similar sequence of steps to the above.
Reproduction steps:

open settings
set font to Arial or any preset (non-custom) font
click "Ok" on settings window to save change
open settings again
set font to a custom font with different font dimensions, either wider or narrower (I recommend a fixed-width font like Courier)
discard your changes by clicking "Cancel" on the settings window

The font will revert to your previous selection (e.g. Arial), but each word will remain positioned how it was when the custom font was selected. If the custom font was narrower than your previous selection, then words will now overlap each other; if it was wider, then there will be large gaps between words.
New messages, received after completing the above, appear to be rendered with the correct dimensions. Messages received prior will retain incorrect rendering until something overwrites it (e.g. choosing a new font in the settings).
Example 3
Finally, there is a related visual glitch when selecting a custom font, which I suspect shares a root cause with the above.
Reproduction steps:

open settings
set font to Arial or any custom font
open the font selection dropdown and select "Choose..."

At this point (after opening the custom font selection dialogue, but before committing to a font) the application font in the background will actually  update to the option 1 font from the dropdown—Segoe UI. Once a custom font is selected it will change again to the custom font selected. However, if the custom font is rejected (by clicking "cancel" in the custom font dialogue), then the font will apparently be left as Segoe UI.
OS and Chatterino Version
Windows 10
Chatterino 2.3.3 (commit c8c28d7f5)

Update on behaviour exhibited by Chatterino in example 2: it looks like it's sufficient to increase (or decrease) font size in the settings menu and then cancel out of your changes to bring about the rendering error. If font size is increased, then cancelled, font size does not change but words will be spaced according to the dimensions of the increased font size; similarly (but inverted) for smaller font sizes. Still not sure if this represents a distinct issue from the behaviours described in examples 1 and 3.


The chart is flipped when using rodeostat teensy_shield_v0p1

Hello, we have encounter a problem while using rodeostat teensy_shield_v0p1.
We plot the Current-Voltage chart. Amplitude of Current in palmsens and rodeostat is different but there peak voltage location is more or less same, but the curve is flipped.

In each case , you see current -x axis current is negative, but it should be positive.
 like this.
we've check the connection of the electrodes are correct. May I ask what cause this problem and how to solve it?

What firmware version are you using?

We directly flesh the code inside TEENSY provided at your github location

OK.  The reason I ask is that between hardware versions 0.1 and 0.2 there was a polarity change on output of the transimpedance amplifier.  This is difference in sign between the two hardware versions is handled in firmware. However, in order for this to work properly the firmware needs to be built for the correct hardware version.  The first thing to do is make sure you are building the firmware for the correct hardware version.  This is set using a #define in the ps_hardware_def.h file found in /firmware/libraries/potentiostat sub-directory.  There is a section at the top of this file where is says "Select your hardware version" followed by a number of #defines for selecting the specific hardware version you build for.   If you are using hardware v0.1 with the teensy 3.2 you will probably want to select the HW0P1_TEENSY_10V_MICRO option.  So that this section would look as follows
    // Select your hardware version
    // ---------------------------------------------------------------
    //#define HW0P2_ITSY_BITSY_10V_MICR0
    //#define HW0P2_ITSY_BITSY_10V_MILL10
    // #define HW0P2_TEENSY_10V_MICRO
    #define HW0P1_TEENSY_10V_MICRO
    // #define HW0P1_TEENSY_10V_MILL24
    // #define HW0P1_TEENSY_10V_NANO
    // #define HW0P1_TEENSY_8V_MICRO
    // ---------------------------------------------------------------

After building and uploading the firmware the device can be queried for the hardware variant selected.  When using the web app, after connecting to the device, a section appears on the "Device Connection" page with title "Device Information" and below that is a section displaying the hardware variant string returned by the device upon connection as shown below.

With the Python API you can get this same information using the get_hardware_variant  method.
In the example above the hardware variant string is "10V_microAmpV0.2". The V0.2 at the end indicates that the firmware I was using was built for hardware version V0.2.   If you have built firmware for the V0.1 hardware this string will be something like "10V_microAmpV0.1".

Now we got a proper response. Thanks for your help.


If Date Object input is specified as DateTime type gte, lte, lt,gt operator in include's where  condition  doesn't work

I'm sorry if it's already known, but I can't input Date JS object as DateTime type fields at  where operators using jestPrisma.client in my environment though original prisma client passes tests.
where: {
                  created_at: {
                    gte: {},
                    ~~~
                    lt: {}
                    ~~~~
                  }
},

The photo shows running first test  with prisma-jest, and second with original client.

Version Spec
## node
node: v16.15.0

## DB
Postgresql

## packages
"@quramy/jest-prisma": "^1.3.1",
"jest": "^29.3.1",
"ts-jest": "^29.0.3",
"ts-loader": "^8.0.4",

## prisma
prisma                  : 4.7.1
@prisma/client          : 4.7.1
Current platform        : darwin
Query Engine (Node-API) : libquery-engine 272861e07ab64f234d3ffc4094e32bd61775599c (at<EMAIL_ADDRESS>Migration Engine        : migration-engine-cli 272861e07ab64f234d3ffc4094e32bd61775599c (at node_modules/@prisma/engines/migration-engine-darwin)
Introspection Engine    : introspection-core 272861e07ab64f234d3ffc4094e32bd61775599c (at node_modules/@prisma/engines/introspection-engine-darwin)
Format Binary           : prisma-fmt 272861e07ab64f234d3ffc4094e32bd61775599c (at node_modules/@prisma/engines/prisma-fmt-darwin)
Format Wasm             : @prisma/prisma-fmt-wasm 4.7.1-1.272861e07ab64f234d3ffc4094e32bd61775599c
Default Engines Hash    : 272861e07ab64f234d3ffc4094e32bd61775599c
Studio                  : 0.477.0

(Addition)
~It doesn't reproduce it only just to add  created_at Datetime @default(now()) to example-prj' user model.~ I try to find how to reproduce it asap.
I could reproduce it when condition has include: { where: { [$dateFiledName]: { lt: new Date } } }, so on. Both sqlite and postgresql are reproduced so it may have the problem in js layer .
// This is your Prisma schema file,
// learn more about it in the docs: https://pris.ly/d/prisma-schema

generator client {
  provider        = "prisma-client-js"
  previewFeatures = ["clientExtensions"]
}

datasource db {
  provider = "sqlite"
  url      = env("DATABASE_URL")
}

model User {
  id    String @id
  name  String
  posts Post[]
  createdAt DateTime @default(now())
}

model Post {
  id       String @id
  title    String
  author   User   @relation(fields: [authorId], references: [id])
  authorId String
  createdAt DateTime @default(now())
}

/**
 *
 * @jest-environment-options { "verboseQuery": true }
 *
 */
import { PrismaClient } from "@prisma/client";

describe("Should include date type work around", () => {

  /* NG */
  const prisma = jestPrisma.client;
  /* NG */
  //  const prisma = jestPrisma.originalClient;
  /* OK */
  // const prisma = new PrismaClient();

  beforeEach(async () => {
    await prisma.post.create({
      data: {
        id: "post0",
        title: "post",
        author: {
          create: {
            id: "user0",
            name: "quramy",
          },
        },
      },
    });
  });

  test("include api should work using date type condition", async () => {
    const user = await prisma.user.findFirst({
      where: {
        createdAt: {
          lt: new Date(),
          gte: new Date(new Date().getTime() - 1000 * 60 * 60 * 24),
        },
      },
      include: {
        posts: {
          where: {
            createdAt: {
              lt: new Date(),
              gte: new Date(new Date().getTime() - 1000 * 60 * 60 * 24),
            },
          },
        },
      },
    });

    expect(
      (await prisma.post.findFirst({
        where: {
          author: {
            createdAt: {
              lt: new Date(),
              gte: new Date(new Date().getTime() - 1000 * 60 * 60 * 24),
            },
          },
        },
        include: {
          author: {
            include: {
              posts: {
                where: {
                  createdAt: {
                    lt: new Date(),
                    gte: new Date(new Date().getTime() - 1000 * 60 * 60 * 24),
                  },
                },
              },
            },
          },
        },
      }))!.author,
    ).toStrictEqual(user);
  });
});

I confirmed that internal jest-prisma-core originalClient and jest-prisma jestPrisma.originalClient works by force creating  and fetch data with overwriting in node_modules folder. In addition, I noticed that validate method in prisma calls with same data, but slightly different though I don't know why. It may be clues.
Original client

Proxy client(both jestPrisma.client and jestPrisma.originalClient)

I also found invalidChildren' value exists in<EMAIL_ADDRESS>validate method with jest-prisma proxy though manually PrismaClient in jest test case doesn't.

jest-prisma does not touch Date class. I think this is not jest-prisma issue but Jest issue.

@Quramy
I think so, too. I could read all your code in this repository and I know nothing fancy process PrismaClient. Your work is very awesome and I want to use this in our product. So, I keep trying to find the reason. I found objectToArgs in prisma client method results are different so I try to understand where this difference comes from .

I found inserting this.global.Date = Date to setup function in environment entrypoint fix this issue. But, jest may extend it for inspecting Date with matcher, so I don't know whether this fix is appropriate.
    async setup() {
        const jestPrisma = await this.delegate.preSetup();
        await super.setup();
        this.global.jestPrisma = jestPrisma;
        this.global.Date = Date
    }

@Quramy
I create the PR and global.Date is not overwritten, because I don't know how large the influence is.
As I thought it, jestPrisma exports Date constructor from same environment is most safety way. Please check it if you like it.

@tkow Thanks for your investigating and sending the PR.
        this.global.Date = Date

I think this problem is caused by https://github.com/facebook/jest/issues/2549 ( It's famous jest issue, and tooooo long to read 😭 )
And 3rd party jest environments to tackle the issue are published:
e.g. https://www.npmjs.com/package/jest-environment-node-single-context
For now, I don't know whether jest-prisma should extend the "workaround"  environment or not.
But users can weave jest-prisma function to their own environment like this:
import type { Circus } from "@jest/types";
import type { JestEnvironmentConfig, EnvironmentContext } from "@jest/environment";

import { PrismaEnvironmentDelegate } from "@quramy/jest-prisma-core";
import Environment from "jest-environment-node-single-context";

export default class PrismaEnvironment extends Environment {
  private readonly delegate: PrismaEnvironmentDelegate;

  constructor(config: JestEnvironmentConfig, context: EnvironmentContext) {
    super(config, context);
    this.delegate = new PrismaEnvironmentDelegate(config, context);
  }

  async setup() {
    const jestPrisma = await this.delegate.preSetup();
    await super.setup();
    this.global.jestPrisma = jestPrisma;
  }

  handleTestEvent(event: Circus.Event) {
    return this.delegate.handleTestEvent(event);
  }

  async teardown() {
    await Promise.all([super.teardown(), this.delegate.teardown()]);
  }
}

Would you try the above example and confirm to solve your date le / lte / ge / gte problem?

@Quramy
Thank you check and tell me why it happens.
I tested your patch in example application overwrite jest-prisma environment, and it works.
So, what's the way to resolve this you prefer? At least, I think in anyway this library seem to need some patches  for testing all prisma api.
As I thought it, jest-prisma includes jest-environment-node-single-context relatively better than the others in the point of
whether we can test intuitively (no attention and extra config). If you are busy, may I reimplement this referring to the patch?

Thanks for reply and testing.

So, what's the way to resolve this you prefer? At least, I think in anyway this library seem to need some patches for testing all prisma api

Hummm, I'm thinking about this. Please give me some time before I answer the question.

Of course. I bypass this pitfall by extending environment  now as you told me. Thank you.


doc: guides: tfm: Add pages on test suites

Adds notes on how to run the two main test suites for TF-M using
the supplied sample applications.
Signed-off-by: Kevin Townsend<EMAIL_ADDRESS>

I didn't read the already existing comments before making my own, so apologies if I've commented on something that is already resolved.

@microbuilder please address @joerchan's comments

@joerchan Please review again. Thanks for the poke @carlescufi


Compatibility with c++20 standard

Describe the bug
error C2039: 'result_of': is not a member of 'std'
std::result_of is removed in c++20
You are using it in <absl/meta/type_traits.h>
And it is imposible to use absl with c++20 compiler option.
Steps to reproduce the bug
just try compile any cpp and include for example:
#include <absl/container/btree_set.h>
What version of Abseil are you using?
master
What operating system and version are you using
Windows 10 Pro
What compiler and version are you using?
cl.exe  version 19.28.29333 for x64

This is a duplicate of #649, which there is a pending fix for. Let me see if I can push that along.


Nvidia driver build ERROR: Unable to load the kernel module 'nvidia.ko'

I am following How to Run Perception Module on Your Local Computer to install nvidia driver in an Apollo v2.5 docker. However, I encountered the following error in Step 4.
I suspect this is caused by "The kernel was built with gcc version 7.2.0 (Ubuntu 7.2.0-8ubuntu3.2), but the current compiler version is cc (Ubuntu 4.9.4-2ubuntu1~14.04.1) 4.9.4.", as stated in the warning. My host machine is running Ubuntu 18.04.1 LTS.
So can I install gcc v7.2.0 in the docker (rather than 4.9 as configured in install_gcc.sh) and use that to build the nvidia driver?
root@in_dev_docker:/apollo# ./NVIDIA-Linux-x86_64-390.87.run  --no-opengl-files -a -s
Verifying archive integrity... OK
Uncompressing NVIDIA Accelerated Graphics Driver for Linux-x86_64 390.87.........................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................

WARNING: Ignoring CC version mismatch:
         The kernel was built with gcc version 7.2.0 (Ubuntu 7.2.0-8ubuntu3.2), but the current compiler version is cc (Ubuntu 4.9.4-2ubuntu1~14.04.1) 4.9.4.

ERROR: Unable to load the kernel module 'nvidia.ko'.  This happens most frequently when this kernel module was built against the wrong or improperly configured kernel sources, with
       a version of gcc that differs from the one used to build the target kernel, or if another driver, such as nouveau, is present and prevents the NVIDIA kernel module from
       obtaining ownership of the NVIDIA GPU(s), or no NVIDIA GPU installed in this system is supported by this NVIDIA Linux graphics driver release.

       Please see the log entries 'Kernel module load error' and 'Kernel messages' at the end of the file '/var/log/nvidia-installer.log' for more information.

ERROR: Installation has failed.  Please see the file '/var/log/nvidia-installer.log' for details.  You may find suggestions on fixing installation problems in the README available
       on the Linux driver download page at www.nvidia.com.

Below is the detailed log in /var/log/nvidia-installer.log
-> Kernel module compilation complete.
-> Unable to determine if Secure Boot is enabled: No such file or directory
ERROR: Unable to load the kernel module 'nvidia.ko'.  This happens most frequently when this kernel module was built against the wrong or improperly configured kernel sources, with a version of gcc that differs from the one used to build the target kernel, or if another driver, such as nouveau, is present and prevents the NVIDIA kernel module from obtaining ownership of the NVIDIA GPU(s), or no NVIDIA GPU installed in this system is supported by this NVIDIA Linux graphics driver release.

Please see the log entries 'Kernel module load error' and 'Kernel messages' at the end of the file '/var/log/nvidia-installer.log' for more information.
-> Kernel module load error: File exists
-> Kernel messages:
[21026.758335] snd_hda_codec_hdmi hdaudioC1D0: HDMI: invalid ELD data byte 0
[21027.370339] snd_hda_codec_hdmi hdaudioC1D0: HDMI: invalid ELD data byte 44
[21027.494336] snd_hda_codec_hdmi hdaudioC1D0: HDMI: invalid ELD data byte 0
[21034.358280] snd_hda_codec_hdmi hdaudioC1D0: HDMI: invalid ELD data byte 51
[21059.640891] [drm] [nvidia-drm] [GPU ID 0x00000100] Unloading driver
[21059.672548] nvidia-modeset: Unloading
[21059.707289] nvidia-nvlink: Unregistered the Nvlink Core, major device number 238
[21059.897008] Bluetooth: BNEP (Ethernet Emulation) ver 1.3
[21059.897010] Bluetooth: BNEP filters: protocol multicast
[21059.897012] Bluetooth: BNEP socket layer initialized
[21060.052177] nvidia-nvlink: Nvlink Core is being initialized, major device number 238
[21060.052425] nvidia 0000:01:00.0: vgaarb: changed VGA decodes: olddecodes=none,decodes=none:owns=io+mem
[21060.052510] NVRM: loading NVIDIA UNIX x86_64 Kernel Module  390.87  Tue Aug 21 12:33:05 PDT 2018 (using threaded interrupts)
[21060.064695] nvidia-modeset: Loading NVIDIA Kernel Mode Setting Driver for UNIX platforms  390.87  Tue Aug 21 16:16:14 PDT 2018
[21060.067327] [drm] [nvidia-drm] [GPU ID 0x00000100] Loading driver
[21060.067329] [drm] Initialized nvidia-drm 0.0.0 20160202 for 0000:01:00.0 on minor 0
[21060.072395] nvidia-uvm: Loaded the UVM driver in 8 mode, major device number 236
[21060.974050] snd_hda_codec_hdmi hdaudioC1D0: HDMI: invalid ELD data byte 0
[21061.666047] snd_hda_codec_hdmi hdaudioC1D0: HDMI: invalid ELD data byte 50
[21061.730045] snd_hda_codec_hdmi hdaudioC1D0: HDMI: invalid ELD data byte 2
[21061.754050] snd_hda_codec_hdmi hdaudioC1D0: HDMI: invalid ELD data byte 0
[21061.854047] snd_hda_codec_hdmi hdaudioC1D0: HDMI: invalid ELD data byte 0
[21072.909551] VFIO - User Level meta-driver version: 0.3
[21072.914723] Spectre V2 : System may be vulnerable to spectre v2
[21072.914724] nvidia: loading module not compiled with retpoline compiler.
ERROR: Installation has failed.  Please see the file '/var/log/nvidia-installer.log' for details.  You may find suggestions on fixing installation problems in the README available on the Linux driver download page at www.nvidia.com.

@hongkedavid please reference #4636 and let us know if you have any questions. We have not tested Apollo on Ubuntu18 currently and would appreciate if you could try it out and let the community know about your experience. Thank you!

Late reply: Nvidia driver should be built on the host rather than inside Docker.


[Visual Studio Code - Project Manager] ...

Extension
https://www.raycast.com/MarkusLanger/vscode-project-manager
Description
When I open a remote ssh project with this extension (only using raycas). The "search" feature of vscode is broken.
Steps To Reproduce

Open raycast and type "Project Manager"
Hit [enter] to show the listing of saved projects
Open a remote ssh project
Start a global search (cmd + shift + f)
Search for something : it loads, and then show no results

Current Behaviour
No response
Expected Behaviour
No response

@AirOne-dev The extension uses this call => https://github.com/raycast/extensions/blob/a91fe01778cd1f1c32d38637ac9855a0c11fed21/extensions/visual-studio-code-project-manager/src/search-project-manager-projects.tsx#L207
Could you check if your problem also occurs if you call it from your terminal?
code --remote [URL to the project]
I don't have any remote project so I cannot check it.

Seem's to be a vscode bug, i does the same when i execute :
code --remote /ssh-remote+myserver.com/home/me/work/...

something like this seems to work :
code --remote remote_url_here --locale $(osascript -e 'user locale of (get system info)')
(I use osascript because it work for all versions of macos)
(LC_ALL, or others environment variables are not set in my case)

I have same issue.


Website documentation

This pull request will merge all of the documentation currently hosted on the GitHub Pages website. This will make it a bit easier to avoid breaking changes while also make the doc development process more collaborative.
Unfortunately it might not be straightforward to preview the documentation html files, so this may have to happen locally for each developer.
TODO:
Structure function intro page

[ ] General edits
[ ] Add more references for theory and maybe use-cases
[ ] Fill in the rest of the table

Supported data page

[ ] General edits
[ ] Add more detailed information(?)

SWOT example notebook

[ ] General edits

Key terms page

[ ] General edits

This is great!
Some of the places where I see some some work needed (I can assist/lead parts of this!):

[ ] FluidSF Intro: Generalize to include broader utility of structure functions
[ ] Getting Started: Adapt the example to use some real or physically-meaningful synthetic data (i.e., a field with a mean gradient or an oscillatory variation in one direction). This will be more interpretable/useful to a new user?
[ ] Getting Started: Shift after "What are SFs" section for logical progression
[ ] Getting Started: To make more interpretable, add plots of the fields (velocitity, advection) to make it clear what is going on
[ ] What are SFs: Focus discussion on the SFs that can be calculated or are physically useful and/or calculable with the current package (longitudinal/transverse; advective; scalar-blended; second-, third- and higher-order)

I reran the example notebooks that calculated structure functions before the bug fix in #26.


'charmap' codec can't encode characters in position 455-456: character maps to

Tried adding arguement encode="utf-8", in open statement but could not execute program.
After adding arguement encode it gives this error
OSError                                   Traceback (most recent call last)
Cell In[37], line 136
133                 queue.append(link)
134                 seen.add(link)
--> 136 crawl(full_url)
Cell In[37], line 115, in crawl(url)
112 print(url) # for debugging and to see the progress
114 # Save text from the url to a .txt file
--> 115 with open('text/'+local_domain+'/'+url[8:].replace("/", "_") + ".txt", "w",encoding="utf-8") as f:
116
117     # Get the text from the URL using BeautifulSoup
118     soup = BeautifulSoup(requests.get(url).text, "html.parser")
120     # Get the text but remove the tags

Tried adding arguement encode="utf-8", in open statement but could not execute program. After adding arguement encode it gives this error
OSError Traceback (most recent call last) Cell In[37], line 136 133 queue.append(link) 134 seen.add(link) --> 136 crawl(full_url)
Cell In[37], line 115, in crawl(url) 112 print(url) # for debugging and to see the progress 114 # Save text from the url to a .txt file --> 115 with open('text/'+local_domain+'/'+url[8:].replace("/", "_") + ".txt", "w",encoding="utf-8") as f: 116 117 # Get the text from the URL using BeautifulSoup 118 soup = BeautifulSoup(requests.get(url).text, "html.parser") 120 # Get the text but remove the tags

If anyone resolved this problem then please help me.


SCons computation of HOST_ARCH is wrong (Visual Studio)

This issue was originally created at: 2012-12-05 14:10:02.
This issue was reported by: buildsmith.
buildsmith said at 2012-12-05 14:10:02

What is broken:
On 64-bit Windows, support for the recent Visual Studio Express is broken with Python 2.4, 2.5 and 2.7
Why could we get along so far?
Because it always works fine with Python 2.6 (by accident, small defect of Python) and because the issue is more obviously painful with 2012 Express.

buildsmith said at 2012-12-05 14:49:45

How is it broken:
SCons code looks for the machine we build on and decides which compilers  to look for based on that. That is a poor idea. For example, on one Win 7 64-bit machine where I want to compile some 32-bit executable, it will try to find a 64-bit built compiler and tell it to build for 32-bit. That search is bound to fail! Recent Express versions  (and also older non-Express versions) do not have any 64-bit built compiler. The sad thing is that there is a 32-bit built compiler on my 64-bit Windows and that will run just fine for my purpose but SCons will not even  look for it.

As a matter of facts, SCons looks for the wrong vcvars***.bat file. The problem is more obvious with the recent versions of Visual Studio simply because these have more such .bat files to choose from.
Other remarks:
Why does it work fine on Python 2.6? Because with Python 2.6 both platform.machine() and PROCESSOR_ARCHITECTURE wrongly return "x86" on a Win 7 64-bit machine (instead of "amd64").
The ticket #2849 is an instance of this same problem (and can be closed once the changes below are integrated).

The reason why some people say about 2849 that it's fixed and some say it's not is the typical confusion between what you build for and what you build with. What is implemented currently in SCons (2.2.0) is a fall back for what you  build for! This is what the later comments claim and it's true. But the original issue of the ticket is the missing fall back for what you build with. And the reporter is right to claim that it is not fixed yet.
By the way, a fall back for what you build for it's a very poor idea in a production environment. If my customer wants some precise build, say 64-bit binaries, and the build tool changes that behind my back, I'm certainly upset! Notice that the tests will pass OK despite the tool changing what architecture I build for, so the danger to ship out wrong stuff is very real.
How to fix it:
Deceptively simple fix. In get_host_target() in file vc.py change the code:

    host_platform = env.get('HOST_ARCH')
    if not host_platform:
        host_platform = platform.machine()
        # TODO(2.5):  the native Python platform.machine() function returns
        # '' on all Python versions before 2.6, after which it also uses
        # PROCESSOR_ARCHITECTURE.
        if not host_platform:
            host_platform = os.environ.get('PROCESSOR_ARCHITECTURE', '')

with the code:

    # There is no 64-bit version of Visual Studio and the 64/32 bit-ness of MS Windows or Python on this machine really has no relevance at all
    # Background can be found here:
    #      http://blogs.msdn.com/b/ricom/archive/2009/06/10/visual-studio-why-is-there-no-64-bit-version.aspx
    #      http://news.softpedia.com/news/Don-039-t-Hold-Your-Breath-for-64-bit-Visual-Studio-113943.shtml
    # Even if there are out there some 64-bit command line tools, it's not relevant for SCons, which aims to support the Express editions of Visual Studio as well
    host_platform = "x86"
    if env.get('HOST_ARCH'):
        assert env.get('HOST_ARCH')=="x86", "There no 64-bit version of Visual Studio yet. Only the 'x86' host platform is supported"

How did I test:
-- MS VS 6, 2003, 2005, 2008, 2010 and 2012,
-- Express and non-Express versions for 2005 to 2012
-- Win 7 64 bits and Win XP 32-bit (SP3 required)
-- Python 2.5, 2.6 and 2.7 in both 32-bit and 64-bit on the Win 7 machine
Yes, all those combinations makes up for a whole lot of tests. I also tried separately Windows SDK 6.0A.

buildsmith said at 2012-12-05 15:19:18

oops, I messed up the "QA contact" field. Now fixed.

bdbaddog said at 2012-12-05 15:52:57

Don't change the contact info please.

bdbaddog said at 2012-12-06 20:30:08

Please change the summary to indicate what the problem is. Saying "support
problem" is not very descriptive.
Have you read the  man page, specifically this section:
"TARGET_ARCH
Sets the target architecture for Visual Studio compiler (i.e. the arch of the binaries generated by the compiler). If not set, default to $HOST_ARCH, or, if that is unset, to the architecture of the running machine's OS (note that the python build or architecture has no effect). This variable must be passed as an argument to the Environment() constructor; setting it later has no effect. This is currently only used on Windows, but in the future it will be used on other OSes as well. Valid values for Windows are x86, i386 (for 32 bits); amd64, emt64, x86_64 (for 64 bits); and ia64 (Itanium). For example, if you want to compile 64-bit binaries, you would set TARGET_ARCH='x86_64' in your SCons environment.
"
As I read your notes on this it sounds like you are looking for TARGET_ARCH and don't realize it's available.
If I'm missunderstanding your reported issue, please reopen.

buildsmith said at 2012-12-07 01:03:22

Yes, I have to reopen. This ticket is about HOST_ARCH. So I changed the title as you suggested. It now reads:  "Scons computation of HOST_ARCH is wrong"
I have another ticket about the TARGET_ARCH: #2886 and your comment should be copied there in fact. I'll do it. In my paragraph above "By the way..." I alluded to the TARGET_ARCH. I terribly sorry now that I mentioned that. It's not the object
of this ticket.
The object of this ticket is the fact that what SCons gets in the end in the variable host_platform depends on which version of Python you run.
I cannot think of any situation where you want the user-observable SCons behavior to depend on the version of Python.

buildsmith said at 2012-12-07 01:14:33

From the man page:
HOST_ARCH
Sets the host architecture for Visual Studio compiler. If not set, default to the detected host architecture: note that this may depend on the python you are using.
So the dependency on the version of Python is acknowledged, true. And the man page does describe accurately what the code does.
But again, why fool the user and let him think that this is an input  argument at his choice? It is not! We must use the 32-bit built compilers.

buildsmith said at 2012-12-07 01:19:09

We must use the 32-bit built compilers.
I take as granted that the reason is known but may be it's worth repeating. We must use the 32-bit built compilers because this is what Microsoft provides consistently in all versions of Visual Studio and of the SDKs.

buildsmith said this issue blocks #2849 at 2012-12-05 14:49:45.

Hmmm, this issue is listed as blocking #2849, but that one is already closed. Maybe close this too?

Hmmm, this issue is listed as blocking #2849, but that one is already closed. Maybe close this too?

2849 is about not defaulting TARGET_ARCH to HOST_ARCH, but rather realizing when TARGET_ARCH is not set by the user and then searching for an available TARGET_ARCH.  Which can't happen correctly if HOST_ARCH isn't correct. Thus why this ISSUE is marked as blocking #2849 .
If I'm reading this correctly the but is that depending on the version of Python used on a x64 system HOST_ARCH could be X86 if the python was 32bit?

From @mwichmann
PROCESSOR_ARCHITECTURE is x86 inside the 32-bit python
w6432 is AMD64

Hmm.. this wording is still in the manpage though:

If not set, default to the detected host architecture: note that this may depend on the python you are using.

So this needs updating minimally: https://github.com/SCons/scons/blob/master/src/engine/SCons/Tool/msvc.xml#L402

Anybody have clues what the current state is?  A few things have changed as I recall in the handling of *ARCH, the difference between pre-2.7 and 2.7 Python is moot now the floor version is 3.6, VS Express 2012 is a decade old and unsupported, etc.

I created this test SConstruct
env=Environment()

print("HOST_ARCH: %s"%env['HOST_ARCH'])

Then I ran it on 32 and 64 bit python 3.10.
PS C:\Users\Bill\devel\scons\git\scons-bugswork\2884> py -3.10-32 ..\..\as_scons\scripts\scons.py
scons: Reading SConscript files ...
HOST_ARCH: x86_64
scons: done reading SConscript files.
scons: Building targets ...
scons: `.' is up to date.
scons: done building targets.
PS C:\Users\Bill\devel\scons\git\scons-bugswork\2884> py -3.10 ..\..\as_scons\scripts\scons.py
scons: Reading SConscript files ...
HOST_ARCH: x86_64
scons: done reading SConscript files.
scons: Building targets ...
scons: `.' is up to date.
scons: done building targets.

So, if I understand this bug correctly, the current bug is resolved.
@mwichmann thoughts?

TL;DR - I believe that this issue can be closed.  Read on for the gory details...
Results of testing with Python 2.7 in a 64-bit windows vm with scons 2.2.0 and 2.4.0 reveal that there was an "issue" in scons 2.2.0 when the TARGET_ARCH was not specified that was resolved by 2.4.0.
The title of the bug report is somewhat misleading as the HOST_ARCH calculation is technically correct.
As noted earlier, the HOST_ARCH returned in Python 2.7 is different than that returned in python 2.6 and earlier.  The same holds for Python 3.2 and later versus Python 3.1 and earlier.
The environment was initialized in scons 2.2.0 environment.py as:
self._dict['HOST_OS']      = self._dict.get('HOST_OS',None)
self._dict['HOST_ARCH']    = self._dict.get('HOST_ARCH',None)

# Now set defaults for TARGET_{OS|ARCH}
self._dict['TARGET_OS']      = self._dict.get('HOST_OS',None)
self._dict['TARGET_ARCH']    = self._dict.get('HOST_ARCH',None)

Given an empty environment:
env = Environment()

There is a difference in behavior between python 2.6 (and earlier) and python 2.7 when the TARGET_ARCH is not user-defined:

In python 2.6: TARGET_ARCH = 'x86'
In python 2.7: TARGET_ARCH = 'x86_64

Effectively, TARGET_ARCH is forced to a non-None value.  This causes an issue in vc.py.  In the vc.py code, if TARGET_ARCH is not None it is assumed to be a user request.
For python 2.7, vc.py believes the user requested a TARGET_ARCH of x86_64.  As written at the time, the vc.py code does not attempt the x86 targets:
    # If the user hasn't specifically requested a TARGET_ARCH, and
    # The TARGET_ARCH is amd64 then also try 32 bits if there are no viable
    # 64 bit tools installed
    try_target_archs = [target_platform]
    if not req_target_platform and target_platform in ('amd64','x86_64'):
        try_target_archs.append('x86')

This is a problem for the Express versions.
For python 2.6, vc.py believes the user requested a TARGET_ARCH of x86. This would work regardless of full or express version.
Given an environment where the TARGET_ARCH is specified:
env = Environment(TARGET_ARCH='x86')

This works as expected as the TARGET_ARCH initialized value is over-written with the user-defined value.
In scons 2.4.0, the environment initialization appears as it does today:
self._dict['HOST_OS']      = self._dict.get('HOST_OS',None)
self._dict['HOST_ARCH']    = self._dict.get('HOST_ARCH',None)

# Now set defaults for TARGET_{OS|ARCH}
self._dict['TARGET_OS']      = self._dict.get('TARGET_OS',None)
self._dict['TARGET_ARCH']    = self._dict.get('TARGET_ARCH',None)

In scons 2.4.0, an empty environment works as expected with both python 2.6 and python 2.7.
Defining a environment with an explicit TARGET_ARCH request works with both python 2.6 and python 2.7 for scons 2.2.0 and 2.4.0.
In the current version of SCons and only VS2008 Express installed, #2697 still applies due to issues with the initial detection.

Great! Thanks for digging into this!
Closing.
Yes I initially added the TARGET_* logic, and then fixed it as above.
For many settings it is good to be able to tell if the values are defaults or user requested.


Update overview.md

 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.

Thanks for the contribution, this looks good to go in as soon as the CLA is signed.


Crash because that: Callback func in polling thread access invalid address.

When qatdriver configure to Polling mode.
Callback func in polling thread access invalid address, the address value point to a temporary variable in the main thread. which one is already changed by function __longjmp().
Here is the callstack:

Program terminated with signal 11, Segmentation fault.
#0  ASYNC_WAIT_CTX_get_fd (ctx=, key=0x7fda03a6db46, fd=fd@entry=0x7fda01fa6c9c, custom_data=custom_data@entry=0x7fda01fa6ca0) at crypto/async/async_wait.c:73
73              if (curr->del) {
Missing separate debuginfos, use: debuginfo-install bzip2-libs-1.0.6-13.el7.x86_64 elfutils-libelf-0.176-5.el7.x86_64 elfutils-libs-0.176-5.el7.x86_64 glibc-2.17-317.el7.x86_64 libattr-2.4.46-12.el7.x86_64 libcap-2.22-8.el7.x86_64 libgcc-4.8.5-44.el7.x86_64 nss-softokn-freebl-<IP_ADDRESS>-13.el7_1.x86_64 pcre-8.32-15.el7.x86_64 systemd-libs-219-78.el7_9.2.x86_64 xz-libs-5.1.2-12alpha.el7.x86_64 zlib-1.2.7-15.el7.x86_64
(gdb) bt
#0  ASYNC_WAIT_CTX_get_fd (ctx=, key=0x7fda03a6db46, fd=fd@entry=0x7fda01fa6c9c, custom_data=custom_data@entry=0x7fda01fa6ca0) at crypto/async/async_wait.c:73
#1  0x00007fda03a5c82f in qat_wake_job (job=, jobStatus=) at qat_events.c:334
#2  0x00007fda037bf26c in LacPke_MsgCallback () from /opt/quickassist/lib/libqat_s.so
#3  0x00007fda037de617 in adf_user_notify_msgs_poll () from /opt/quickassist/lib/libqat_s.so
#4  0x00007fda037da618 in adf_pollRing () from /opt/quickassist/lib/libqat_s.so
#5  0x00007fda037da977 in icp_adf_pollInstance () from /opt/quickassist/lib/libqat_s.so
#6  0x00007fda037d3b99 in icp_sal_CyPollInstance () from /opt/quickassist/lib/libqat_s.so
#7  0x00007fda03a5e419 in qat_timer_poll_func (ih=) at qat_polling.c:254
#8  0x00007fda06babea5 in start_thread () from /lib64/libpthread.so.0
#9  0x00007fda05aa796d in clone () from /lib64/libc.so.6

variable job in frame 2 is a invaild address.
I saw the codes of 'openssl', 'qat_engine' and 'qatdriver', found the reason is a bug in function: 'qat_dh_compute_key', please confirm.

first, the address for temporary variable 'op_done' is transferd to qatdriver polling thread using function 'cpaCyDhKeyGenPhase2Secet()',

then, qat_pause_job(),  if using API longjmp() in OPENSSL::async_fibre_swapcontext(), all the values in callstack memory would
be stored and the value of 'op_done' point to would be changed.

now, In the polling thread, it will access a invalid address. then Segmentation fault.

i also found that the other code have the same problem like 'qat_dh_generate_key', 'qat_dsa_do_sign' and so on.
I found this problem using QAT_ENGINE: 0.5.46,  I found the master code have the same problem.
I use qatdriver: 1.7.l.<IP_ADDRESS>
please confirm if it's a bug or I don't run it using a right config, thanks.

Sorry for the delayed response, we will check and revert. Meanwhile can you please check latest of all software like qat_engine, driver and Nginx ?

Sorry for the delayed response, we will check and revert. Meanwhile can you please check latest of all software like qat_engine, driver and Nginx ?

Sure, I will try later


V2: Fetch is missing when opening a screen

Currently when opening a workscreen, the components are fetching the data themselves because they are missing. This means that for a short amount of time no data is shown.
It is expected, that the fetches are also sent when the screen is opened like in V1.

please try with latest commit

Works!


add asm cell consumer generation for csv parser

it's now implemented with a table switch, need to benchmark on different file size to see if it will make a different not sure it would make things better because of the push design.

Asm version consistently better on the benchmark
(limit)  (useAsm)  Mode  Cnt          Score         Error  Units
      1      true  avgt   10      19799.247 ±     432.991  ns/op
      1     false  avgt   10      19958.919 ±     368.352  ns/op
     10      true  avgt   10      21594.939 ±     777.935  ns/op
     10     false  avgt   10      22202.692 ±     492.623  ns/op
    100      true  avgt   10      42173.222 ±    1053.612  ns/op
    100     false  avgt   10      45196.533 ±    1020.390  ns/op
   1000      true  avgt   10     281430.281 ±    7971.545  ns/op
   1000     false  avgt   10     309149.270 ±   11200.475  ns/op
  10000      true  avgt   10    2498831.754 ±   69203.347  ns/op
  10000     false  avgt   10    2919753.011 ±   63894.278  ns/op
 100000      true  avgt   10   25377919.258 ±  340549.748  ns/op
 100000     false  avgt   10   28605939.062 ±  446274.418  ns/op
1000000      true  avgt   10  263975515.250 ± 4837885.015  ns/op
1000000     false  avgt   10  329057193.317 ± 7209971.192  ns/op


APIProperties serialization missing field

Description
The field APIProperties::rgpCapture was added years ago but renderdoc_serialize.inl wasn't updated. One of those edge cases where the size check failed due to flag the oversight due to the field appearing prior to other subsequent (conditional) fields. End result is that the RGP Capture menu option is always disabled, even when the target supports it.

I don't know what you mean about conditional fields, but yes this is the difficulty with only coarsely checking on struct size - things can get missed/hidden in padding. Without compiler reflection it's about the best that can be done.

I don't know what you mean about conditional fields

In the struct APIProperties, the last six fields are surrounded by a macro check. I suspect rgpCapture was added after them in time, but before them in location because of the macro check. Otherwise, I'd think the size check would have caught the oversight.
#if !defined(SWIG)
#endif

That macro check is not relevant since it's only used to stop SWIG's parser for picking up those variables and exposing them to python, otherwise it's always true. Either way all the variables there are bools so the order of them doesn't matter - the issue is as I mentioned above, the size of the struct doesn't change when that bool was added due to padding, so there's no assert to fire either way.

Understood. Thanks


Web UI is not exposed

Problem/Motivation
Cannot access the application
Expected behavior
Install the application. Ensure it has started correctly.
Click "Open Web UI"
Expect to see the web UI inside the Home Assistant UI
Actual behavior
Get opened a new window/tab with https://my-home-assistant-domain.example.com:7777 (example domain). Obviously I have not yet opened that port and I do not intend to open that port to the world.
Attempt to access hassio.local:7777, but receive a HTTP Basic Auth prompt, but no instructions are given for the username/password.
Steps to reproduce
Follow the instructions in the README for this repository
github_access_token: '!secret github_token'
ssl: false
certfile: fullchain.pem
keyfile: privkey.pem
system_packages: []
init_commands: []

Proposed changes

(If you have a proposed change, workaround or fix,
describe the rationale behind it)

Click this:

Maybe instead of closing this so quickly, we could have it added to the setup instructions?


add destroy method

There are issues with settings being carried over when rendering a new chart in some situations. This would be resolved by calling codebook.destroy() on a previous version before initiating a new codebook on the same page.

codebook.destroy() should remove all summary table charts, the data listing, and the chart maker chart.


[SPARK-6766][Streaming] Fix issue about StreamingListenerBatchSubmitted and StreamingListenerBatchStarted

This PR includes:

Send StreamingListenerBatchSubmitted when JobSet is submitted
Fix StreamingListenerBatchStarted.batchInfo.processingStartTime
Fix a type: completedaBatchInfos -> completedBatchInfos

cc @tdas

Test build #29849 has started for   PR 5414 at commit 493f978.

Good catch, LGTM :).

Test build #29849 has finished for   PR 5414 at commit 493f978.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.
This patch does not change any dependencies.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/29849/
Test PASSed.

This looks good to me at first glance, but I am concerned that such a thing went unnoticed for so long despite unit tests in StreamingListenerSuite. Let me think whether we can improve the tests. If so, we definitely should add tests as part of this PR so that such a thing cannot happen again.

Overall, I realized that there is not tests for StreamingJobProgressListener, which is my bad. :( We really need to add some tests for the StreamingJobProgressListener which tests some basic aspects like this. Could you add a StreamingJobProgressListenerSuite ?

Could you add a StreamingJobProgressListenerSuite ?

OK. I will add some basic tests for StreamingJobProgressListener

Added some tests to StreamingListenerSuite for this issue, and added StreamingJobProgressListenerSuite for some basic tests of StreamingJobProgressListener.

Test build #29935 has started for   PR 5414 at commit 79b4fed.

Test build #29935 timed out     for PR 5414 at commit 79b4fed     after a configured wait of 120m.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/29935/
Test FAILed.

retest this please

Test build #29937 has started for   PR 5414 at commit 79b4fed.

Test build #29937 has finished for   PR 5414 at commit 79b4fed.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.
This patch does not change any dependencies.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/29937/
Test PASSed.

Test build #29985 has started for   PR 5414 at commit ca0955b.

Collapsed the new unit tests together.

Test build #29985 has finished for   PR 5414 at commit ca0955b.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.
This patch does not change any dependencies.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/29985/
Test PASSed.

Just a few minor comments, otherwise LGTM. Can merge as soon as you update these.

Test build #30019 has started for   PR 5414 at commit 2f85060.

The concerned testsuites have passed, I am merging this to master and 1.3 branch.

I merged it in master, but could not merge it to 1.3 because of conflicts. Could you open another PR to branch 1.3? Would be good to have these bug fixes in 1.3.x

Test build #30019 has finished for   PR 5414 at commit 2f85060.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.
This patch does not change any dependencies.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/30019/
Test PASSed.


Improve support for LaTeX/KaTeX in the Markdown editor: no markup inside math blocks

Hi,
First, :clap: because Marp is awesome. Thanks for this neat software!
Second, I was wondering if it could be possible to improve the support for LaTeX in the editor, specially the way it parses Markdown special characters inside $ ... $ or $$ ... $$ or \( ... \) or \[ ... \] (LaTeX math blocks).
Basically, LaTeX can use *, _ and every possible Markdown syntax inside a math block, but it should not be understood as Markdown markup if it's inside a math block. For instance, $ **x** $ should not show x in bold in the editor pane.
Example
For instance, the following Markdown code:
- Example of math using an underscore: $a_i \in \mathcal{A}_i$
- Now the rest of the text is highlighted in italic, as this $y_j$ underscore was understood as "start italic"...
- And only this will close the underscore $a_i \in \mathcal{A}_i$ underscore was understood as "start italic"...

In GitHub, this issue is not present:

Example of math using an underscore: $a_i \in \mathcal{A}_i$
Now the rest of the text is highlighted in italic, as this $y_j$ underscore was understood as "start italic"...
And only this will close the underscore $a_i \in \mathcal{A}_i$ underscore was understood as "start italic"...

But in Marp, it is:

I don't know if you could use the same Markdown editor as the one used in typora, but their software is also built with electron, and does not have this bug.

Thanks in advance.

The editor is CodeMirror, probably best to file an issue over there.

OK, that's done. Could I ask you to also follow this bug on CodeMirror, and if it is resolved, try to rebuild Marp with the latest version?
Thanks :+1: !

Sadly, they seem to not consider this as bug, and so no solution will come from CodeMirror's maintainers.
Any chance of fixing this inside Marp, on top of CodeMirror gfm mode?


Could not find me.zhanghai.android.materialprogressbar

Error: Could not find me.zhanghai.android.materialprogressbar:library:1.2.0.
Required by:
Search in build.gradle files

Sorry for the inconvenience, forgot to close and release on Sonatype last night. Should be available within half an hour now.

No worries, thanks for the update.  👍

Available on Maven Central now.


I159 controlsystems

this partly solves out the problem

@daren-thomas this branch changes the demand and inputs. While testing, it is necessary to also reload the reference-case data from the other repository


Element is not defined

When starting up my server I am getting an error:
node_modules/clipboard/node_modules/good-listener/node_modules/delegate/node_modules/closest/node_modules/matches-selector/index.js:6
var proto = Element.prototype;
^
ReferenceError: Element is not defined
at Object. (node_modules/clipboard/node_modules/good-listener/node_modules/delegate/node_modules/closest/node_modules/matches-selector/index.js:6:13)
at Module._compile (module.js:435:26)
at Module._extensions..js (module.js:442:10)
at Object.require.extensions.(anonymous function) [as .js] (node_modules/babel-core/lib/api/register/node.js:214:7)
at Module.load (module.js:356:32)
at Function.Module._load (module.js:311:12)
at Module.require (module.js:366:17)
at require (module.js:385:17)
at Object. (node_modules/clipboard/node_modules/good-listener/node_modules/delegate/node_modules/closest/index.js:1:77)
at Module._compile (module.js:435:26)
at Module._extensions..js (module.js:442:10)
at Object.require.extensions.(anonymous function) [as .js] (node_modules/babel-core/lib/api/register/node.js:214:7)
at Module.load (module.js:356:32)
at Function.Module._load (module.js:311:12)
at Module.require (module.js:366:17)
at require (module.js:385:17)
at Object. (node_modules/clipboard/node_modules/good-listener/node_modules/delegate/src/delegate.js:1:77)
at Module._compile (module.js:435:26)
at Module._extensions..js (module.js:442:10)
at Object.require.extensions.(anonymous function) [as .js] (node_modules/babel-core/lib/api/register/node.js:214:7)
at Module.load (module.js:356:32)
at Function.Module._load (module.js:311:12)
[nodemon] app crashed - waiting for file changes before starting...

This is with a react project.

Please provide a minimal example using JSFiddle or something like so we can investigate it properly.

This happens if you do server rendering. If you require clipboard in node it crashes, even if you don't use it.
Example test.js:
var Clipboard = require('clipboard');

$ node test.js

That's because it needs browser APIs.

Yup, solution is to simply bring it in with <script type='text/javascript' src='./clipboard.js'></script> so the server isn't trying to transpile the code that contains undefined browser APIs on the back end.

A solution could be to check if any browser API methods are undefined and simply return nothing in the constructor.

This library is only meant for the browser environment. There's no reason to check if it's undefined or not.
 It's the same case here.

Good call.

I just thought I could require it without using the constructor when the server renders the view and then use the constructor in an event that is triggered in the browser. But I can work around it like you said @roscioli and add it to the html file. Thanks.

Hey guys,
Thanks for the great work on clipboard.js! I understand this library is meant for browser environment only @zenorocha.
However, most of the "modern" JS dev wants to test their app. In our case, here our React Components. React Components that used to be testable in Node land suddenly becomes untestable when depending on Clipboard.js unless we start a headless browser.
I really believe with React being adopted broadly, this request will keep showing up.
I thought what @crudh suggested does not really add a bunch of if everywhere.
As for jQuery, maybe the interest around testing in this scenario is not that big :smile:

Well, I'm open for pull requests. In the meanwhile, you can check https://www.npmjs.com/package/react-clipboard.js

Thanks a lot for your feedback @zenorocha. We are actually using react-clipboard.js which depends on clipboard.js. We therefore have the same errors as @roscioli pointed out.
But as the stack shows, the error is coming from one of clipboard.js dependencies' dependencies called matches-selector. So I'd rather create an issue on their side.
Here's a link to this issue for the record:
https://github.com/component/matches-selector/issues/13
Thanks a lot for your time on this.

Closing this since the issue was filled on matches-selector.

Hi, no, it's not. I have the same error using with React.

@zenorocha  Just wanted to say that I am having the same problem (using react-clipboard, which, as it was mentioned above, depends on clipboard.js).
When I require the clipboard button from react-clipboard, I am getting the following error:
error: uncaughtException: Element is not defined.
The problematic part of the code must be here:
https://github.com/zenorocha/clipboard.js/blob/master/dist/clipboard.js#L11
 * A polyfill for Element.matches()
 */
if (Element && !Element.prototype.matches) {
    var proto = Element.prototype;

    proto.matches = proto.matchesSelector ||
                    proto.mozMatchesSelector ||
                    proto.msMatchesSelector ||
                    proto.oMatchesSelector ||
                    proto.webkitMatchesSelector;
}

Curiously, there is nothing in the source files of Clipboard.js that uses this polyfill for Element.matches; it seems that the toublesome code is added during the build process (by Browserify or Babelify).
Could you perhaps tweak the way the module is packaged for npm?

Here's the fix: https://github.com/zenorocha/clipboard.js/issues/296#issuecomment-381124824


rosdep cannot locate dependencies for [rviz_mesh_plugin]

Your rosdep keys appear to not work on noetic. unless I'm missing something. An attempt to install mesh-tools with the command:
sudo apt install ros-noetic-mesh-tools
also returned the result
Reading package lists... Done
Building dependency tree
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
 ros-noetic-mesh-tools : Depends: ros-noetic-rviz-mesh-plugin but it is not installable
E: Unable to correct problems, you have held broken packages.

Am I missing a repository? Are there any installation instructions for this source?

Have you solved this issue? I am facing the same problem.

I am using melodic and got the same problem

Same issue with ros melodic

I'll fix this soon! Sorry for the delay.

I'd love to use this package, but I am still unable to install it via apt.
I did try building this from source (cloning this repo into the src folder of my catkin workspace, running catkin_make_isolated), but then I cannot import messages. For example:
from mesh_msgs.msgs import MeshGeometry

fails with an error, saying that mesh_msgs is not a valid package name (I'll add the exact error message later this morning when I get into work)
In addition, all of the mesh_tools packages are missing when I do rospack list.

try use  rosdepc

I have the same problem.


[Usage] Faster OCR VQA download.

Describe the issue
Issue: I find download ocr vqa images are slow and I implement a multi-thread download file.
Command:
import concurrent.futures
def download_image(k):
    ext = os.path.splitext(data[k]['imageURL'])[1]
    outputFile = 'images/%s%s' % (k, ext)

    # Only download the image if it doesn't exist
    if not os.path.exists(outputFile):
        ureq.urlretrieve(data[k]['imageURL'], outputFile)

if download == 1:
    # Create the directory if it doesn't exist
    if not os.path.exists('./images'):
        os.mkdir('./images')

    # Create a thread pool and download the images in parallel
    with concurrent.futures.ThreadPoolExecutor() as executor:
        executor.map(download_image, data.keys())

This maybe useful.

https://blog.csdn.net/weixin_46460463/article/details/135537718?csdn_share_tail={"type"%3A"blog"%2C"rType"%3A"article"%2C"rId"%3A"135537718"%2C"source"%3A"weixin_46460463"}

https://blog.csdn.net/weixin_46460463/article/details/135537718?spm=1001.2014.3001.5501

thanks ！！！！

https://blog.csdn.net/weixin_46460463/article/details/135537718?spm=1001.2014.3001.5501

Thanks for posting the method, but some of the images that I downloaded are damaged. Did anyone face the same issue?


Allow failures on the s390x travis job

The s390x travis environment has a lot of issues, this is why we haven't
built wheels for s390x. Additionally, it looks like the configuration of
/tmp in the s390x is not working, users have reported issues with space
limitations [1] and in #75 the job is failing because pip can't use /tmp to
build a numpy wheel. Until all of these are fixed and the ci environment
for s390x is more stable this commit makes the CI job non-blocking.
[1] https://travis-ci.community/t/no-space-left-on-device-for-system-z/5954/10

Coverage remained the same at 81.094% when pulling 2c59f1cabcf35e9d97434a0ab91ed2872b044f96 on mtreinish:allow-failures-s390x into 0e5b7178fd20d4fabed924c554003682d56e9352 on Qiskit:master.


Allow exporting the original coordinate system.

This makes changing coordinate system while exporting optional.

Thx a lot.


Integrate API to Report Fraudulent Number (Fix)

Properly integrate the api so this reporting flow works

The API's are semi integrated so make them work

@muchinon I will like to work on this, please


Allow to configure location of argon2 shared library and headers in setup.py

I am currently trying to package argon2_cffi for Gentoo Linux. I noticed that I am unable to build bindings against system argon2 library. Ideally, I would be able to generate Python bindings for an argon2 library that is installed on my system, instead of compiling another version of argon2.
Is there some way to point setup.py to /usr/include and /usr/lib, in order to reuse an already installed library?

That’s currently not possible and I’m not sure how to make it possible because argon2 tended to break API quite often in the past.   Until very recently, nobody packaged argon2 either, so it wasn’t a legitimate problem at all.

I understand your point. Also most people probably just want to pip install argon2_cffi and have everything work, instead of having to install a library first.
However, I looked a bit further into the issue: In my fork of the project, there is a branch "system-argon2-poc" which contains two commits. One commit simply disables building libargon2 from the submodule. The second commit changes the include and library paths to /usr/include and /usr/lib in _ffi_build.py. I have argon2-20161029 installed on my system.
When I build and install this to a virtualenv, I can import and use the argon2 module:
$ python
Python 3.4.6 (default, Sep 10 2017, 15:00:18)
[GCC 5.4.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import argon2
>>> argon2.hash_password_raw(b'1234')
b"\xb5\xe5'\x0b!r\xae\xe5t\x1a\x82\xf6\xb2\x1f\xa9z"

Do you see a way to make these changes configurable in setup.py?

There turns out to be a setup.py config step, which I didn't know of. I allows specifying things such as include-dirs and library-dirs:
python setup.py config --help

The same options are also available for the build_ext command, which seems to be more recent than config and is already executed when calling the install command. See python setup.py build_ext --help.


Custom stack trace refines

Make LayerStack support to

show forward/backward status
all layer stack shows in one line.
multi thread support
remove the noising output in each line of fatal error output.
add unittest

Please use squash & merge option when merge code.

please update to the latest master

@emailweixu updated


docs?

is there a plan to add documentation soon? do you need help with it?

late response, sorry
Trying to free some time do add docs and and Back/Forward buttons - help appreciated


Documentation update

Add document about transactional semantics for Alcor Caches in general
and spefically about Ignite Caches.

Codecov Report

Merging #611 (9645772) into master (64f5d83) will decrease coverage by 0.02%.
The diff coverage is n/a.

@@             Coverage Diff              @@
##             master     #611      +/-   ##
============================================
- Coverage     31.98%   31.95%   -0.03%
+ Complexity     1249     1247       -2
============================================
  Files           525      525
  Lines         13439    13439
  Branches       1657     1657
============================================
- Hits           4298     4295       -3
- Misses         8555     8558       +3
  Partials        586      586

Impacted Files
Coverage Δ
Complexity Δ

...alcor/portmanager/util/RestParameterValidator.java
43.07% <0.00%> (-3.08%)
13.00% <0.00%> (-1.00%)

...alcor/elasticipmanager/dao/ElasticIpAllocator.java
63.81% <0.00%> (-0.28%)
48.00% <0.00%> (-1.00%)

Continue to review full report at Codecov.

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


HIVE-26305: Upgraded package hadoop-common to version 3.2.3 to avoid …

…CVE-2020-9492

What changes were proposed in this pull request?
Upgraded hadoop-common package to 3.2.3 version

Why are the changes needed?
To avoid CVE-2020-9492

Does this PR introduce any user-facing change?
No

How was this patch tested?
Generated dependency tree

#3279  will solve this

#3279 will solve this

Thanks, @ayushtkn. I'll leave this open until #3279 is merged.


Groups in ACL

Issue description
Adding "Groups" to ACL file only works when using "namespace". I thougt using "node@namespace" would make more sense but when trying this, I get the ERR Could not load the ACL policy error="invalid namespace" path=/etc/headscale/acl.hujson
To Reproduce
Just add a "Groups" section to the acl file and add an entry only with the name of the namespace. That will work, but when you add a host part in front of the namespace, like node@namespace, it throws the mentioned error "invalid namespace"
BTW same issue for "Users" as well.
Context info
headscale v0.12.1
Debian 11, 5.13.19

After getting a bit deeper into the concept, I am not sure if it is working as intended. What I now did, is creating several namespaces (e.g. one for servers and one for clients) and sharing the nodes between the namespaces. With that deployment I am now able to use the "Group" logic in the acl.
Is this just a workaround or is that the way, how groups are working in headscale acl's?

Currently the namespaces are used as user in ACL's. Some work  needs to be done regarding this issue.

Means that sometime it may work as I described and my workaround is obsolete?

Currently the only supported solution is to create multiple namespaces and share the nodes. You're workaround is not obsolete.

ok, further development will show then. Thanks for your answers.


Automatic upgrade

Related to #1649
Now that a notification is available in app to notify the user that an update is available we should figure out a way to automate the upgrade of Portainer.

This sounds like a lovely feature to have, now there is the ability to detect available updates (as shown by the notification), it would seem the next step would be to create the mechanism by which Portainer can "recreate" itself.
I chime in here because I noted in #1649 that there was mention that due to the HTTP API not being available during upgrade that a potential solution could be to spin up a new portainer_self_updater image.
I have fallen into a similar trap of trying to recreate a container and not being able to access the HTTP API during this time, however for my use-case I was recreating the proxy container via which Portainer was being accessed, namely jwilder/nginx-proxy.
So it strikes me that if done mindfully there could be the opportunity to kill two birds with one stone here. My suggestion is that rather than creating a highly specialised/specific portainer_self_updater image, it could be done with a more generic image that allows any container to enable enhanced/remote recreation, force enabled for Portainer, but optionally enabled for any other container.
This would solve both the self upgrade and proxy update use-cases, both of which encounter a disappearing HTTP API during the normal recreation process.
Granted the proxy use-case could alternatively make use of the recreate happening purely server side within the the Portainer container, which a self upgrade could not, but rather than having three different ways to do a recreate for complexity sake it probably makes sense to stick with just two.
I assume there is a good reason recreates rely on a client-server communication, and refactoring it to be completely server side just for the proxy use-case seems like a lot of effort, but tacking it onto a potentially new recreate image could be an easy win.
Please let me know your thoughts.

From a DevOps point of view: make sure this is opt out. I love software that updates itself, but I like to make that choice for when I'm ready.

Thanks for the input guys.
We started the research about this but we rebalanced our resources on other topics.
Here is a summary of this past research though:

Portainer can be deployed as a container and as a binary. The automatic upgrade process might be different here depending on how we approach the automatic update (replace the binary inside the image would be compatible with both deployments. Although our preference is to only support the Docker image.

Ultimately, this feature could also be enabled when Portainer is deployed as a container (by updating the images to include a specific file inside the container like /etc/portainer that we can use to detect if Portainer is running inside a container or not).

This mecanism should be enabled by default with a setting available in the Portainer settings to disable it.

Portainer must be able to identify the container to update. To do so, we can add the concept of "maanged service" inside Portainer by always adding the "io.portainer.managed=portainer" label to the Portainer container during deployment. This would allow Portainer to easily figure out which container is actually running Portainer.

In order to support re-deployment of a new Portainer container, the socket/named pipe bind mount will now be mandatory as Portainer MUST be able to access the environment where it is currently running.

Some thoughts must be added regarding the difference between the upgrade process of a Portainer instance running as a container or running as a service (standalone VS Swarm, different Swarm cluster topology...)

All thoughts and ideas welcome !

Comment from @STaRDoGG
Currently I use a WatchTower container to keep my containers up to date. It's good, but also a little bit quirky to use, i.e. for manually updating a single container.
It would be great if Portainer basically included the WatchTower functions right within it (auto-check for any container updates, and if found, update using the same arguments as the original), and also include the ability to manually check for/update a container just by clicking an "update check" icon in the "Quick Actions" list of icons. Also, a button near the top that does the same if you want to put a check in the checkboxes for several individual containers.

For the record, this is the WatchTower container's repo: https://github.com/containrrr/watchtower

On a related note, if you're also looking for how to self-update Portainer itself, the Organizr container does it very well. https://github.com/causefx/Organizr
I haven't looked but the code might be right in the repo to make things a lot easier to add. Also, the dev, CauseFX is super cool and easy to work with, so he might be willing to help ya along if ya run into any speedbumps. =)
Personally speaking, I do like containers that keep themselves updated, but I also understand wanting the option to opt-out as well.

I'm thinking perhaps have portainer create a second container that it uses to update itself?
For example,

[Env] A container running Portainer v1.5
[UI] User clicks update button in portainer UI
[Portainer] Creates a Portainer-Updater container with /var/docker.sock**:/***docker.sock etc etc access
[Portainer-Updater] Pulls latest portainer image
[Portainer-Updater] Runs some checks
[Portainer-Updater] docker rename current_portainer some_backup_portainer
[Portainer-Updater] stops backup from auto starting
[Portainer-Updater] docker create new portainer
[Portainer-Updater] docker logs newportainer - look for startup ok flag
[UI] New portainer should be up and running
[UI] Prompt to finish update / Always finish automatically
[Portainer] Delete [Portainer-Updater]
User must manually delete some_backup_portainer

This actually applies to more than just the Portainer instance:

Provide the ability for an administrator user to upgrade Portainer to the latest version from within Portainer
Show a notification in Portainer that one or more agent can be updated
Allow an administrator user to update an agent to the latest version from within Portainer
Allow an administrator user to directly upgrade a Portainer CE instance to Portainer BE


Dropdown from view item menu

In our extension, we have custom views with various nodes in the tree:

You can see there are 4 commands on the right-hand side of the node. We would like to add a dropdown to hold those items.
I know it's possible to add commands to the context menu, but you have to right-click to see it. We are worried that new users will not be aware they can right-click on nodes for more options. If we could add a dropdown to the toolbar, it would be more obvious that other commands are available.
For example, in the Source Control view, you have an icon with 3 dots, that opens a dropdown:

It would be great if we could either add to a standard dropdown, or use a command like node.showDropdown when someone clicks on the 3 dots icon.

Right click to see more actions is a pretty typical thing to do, and I worry that it is busy and duplicating functionality to have drop downs in the tree node inline actions when that is exactly what the right click menu is for. @misolori do you have some thoughts on this?

Personally, I'd be in favor of doing this. However, I think we'd need to run this by the team since it does introduce some complexities. Whenever there is a single view in viewlet, we collapse that view title and actions into the header:

So introducing a "global" context menu would mean that we would need to account for these additional context menus and have clear indicators for what actions in the menu are global vs the view.

I have run into a similar requirement where I want the inline group of view/item/context to have a menu like the ... icon. :+1: to this feature request.

The ... menu feels like a good addition here as it will aid in discovery of more actions on items.

This is now possible with submenus
However, there is a bug with using it on inline tree actions: https://github.com/microsoft/vscode/issues/110083


Create account-creation.yml

AWSTemplateFormatVersion: 2010-09-09
Description: 'Account Creation By Control Tower'
Metadata:
AWS::CloudFormation::Interface:
ParameterGroups:
- Label:
default: "General"
Parameters:
- AccountName
- AccountEmail
- ManagedOrganizationalUnit
- Label:
default: "SSO Configuration"
Parameters:
- SSOUserFirstName
- SSOUserLastName
- SSOUserEmail
- Label:
default: "Additional Information"
Parameters:
- CostCentre
- Environment
ParameterLabels:
SSOUserFirstName:
default: "SSO User First Name"
SSOUserLastName:
default: "SSO User Last Name"
SSOUserEmail:
default: "SSO User Email"
CostCentre:
default: "Cost Centre"
Parameters:
AccountName:
Description: "Account name, the new managed Account will be created with this name."
Type: String
AllowedPattern : ".+"
AccountEmail:
Description: "Account email, must be unique for each AWS Account."
Type: String
AllowedPattern : "[^\s@]+@[^\s@]+\.[^\s@]+"
SSOUserFirstName:
Description:  "SSO user first name."
Type: String
AllowedPattern : ".+"
SSOUserLastName:
Description:  "SSO user last name."
Type: String
AllowedPattern : ".+"
SSOUserEmail:
Description: "SSO user email. A new SSO user will be created for this email, if it does not exist. This SSO user will be associated with the new managed Account."
Type: String
AllowedPattern : "[^\s@]+@[^\s@]+\.[^\s@]+"
ManagedOrganizationalUnit:
Description: "Managed organizational unit. The managed Account will be placed under this Organizational Unit."
Type: String
AllowedValues:
- Non-Production
- Production
- Sandbox
CostCentre:
Description: "Corp Cost Centre"
Type: String
MinLength: 6
MaxLength: 6
AllowedPattern : "[0-9]{6}"
Environment:
Description: "Account Environment"
Type: String
AllowedValues:
- Sandbox
- Test
- Dev
- SIT
- Pre-Prod
- Prod
Default: "Sandbox"
AccountType:
Description: "Choose a self managed account or a CCoE managed account."
Type: String
AllowedValues:
- Self Managed Account - Account owner fully accountable for everything in account.
- CCoE Managed Account - CCoE Managed service.
Resources:
CTAccount:
Type: AWS::ServiceCatalog::CloudFormationProvisionedProduct
Properties:
ProductId: "prod-d3m4lvbw5kqx4"
ProvisioningArtifactId: "prod-te2563vcf43p4"
ProvisioningParameters:
- Key: SSOUserEmail
Value: !Ref SSOUserEmail
- Key: AccountEmail
Value: !Ref AccountEmail
- Key: SSOUserFirstName
Value: !Ref SSOUserFirstName
- Key: SSOUserLastName
Value: !Ref SSOUserLastName
- Key: ManagedOrganizationalUnit
Value: !Ref ManagedOrganizationalUnit
- Key: AccountName
Value: !Ref AccountName
- Key: ManagedBy
Value: !Ref AccountType
- Key: CostCentre
Value: !Ref CostCentre
Custom resource fun
CustomResourceLambda:
Type: "AWS::Lambda::Function"
Properties:
Handler: "index.lambda_handler"
Role: !GetAtt CustomResourceExecutionRole.Arn
Code:
ZipFile: !Sub |
import json
import boto3
def lambda_handler(event, context):
print(event)
# Create...
if event['RequestType'] == 'Create':
# Your code
print("Create")
# Deletion event
if event['RequestType'] == 'Delete':
# Even more of your code
print("Delete")

cfnresponse.send(event, context, "SUCCESS", responseData)
return responseData
Runtime: "python3.7"
Timeout: 360
CustomResourceExecutionRole:
Type: AWS::IAM::Role
Properties:
AssumeRolePolicyDocument:
Version: '2012-10-17'
Statement:
- Effect: Allow
Principal:
Service:
- lambda.amazonaws.com
Action:
- sts:AssumeRole
Path: "/"
Policies:
- PolicyName: root
PolicyDocument:
Version: '2012-10-17'
Statement:
- Effect: Allow
Action:
- logs:*
Resource: arn:aws:logs:::*
- Effect: Allow
Action:
- "iam:CreateUser"
Resource:
- "*"
TheResource:
Type: Custom::AccountFactoryV2
DependsOn: [CTAccount]
Properties:
ServiceToken: !GetAtt CustomResourceLambda.Arn
AccountId: !GetAtt CTAccount.Outputs.AccountId

rere


Circuit breaker pattern

Refactor CircuitBreaker Pattern and Add Qos Config in ReRoute

@geffzhang code looks good!
I'm happy to merge this after I have finished the service discovery work.

Fixes #23 and is ok to merge

@TomPallister I merge the code ,but AcceptanceTests should_use_service_discovery_and_load_balance_request could not pass

@geffzhang I will pull the code and look at the tests.

@geffzhang the test is failing because CreateHttpMessageHandler() is broken when qos.ExceptionsAllowedBeforeBreaking is 0. I think Polly needs greater than 0.
Perhaps it would be better to add the QoS configuration to FileReRoute.cs if this is left null the user does not want to use QoS, else use the settings in the QoS configuration. So create a class like below.
public class FileQoS
{
public int ExceptionsAllowedBeforeBreaking { get; set; }
    public TimeSpan DurationOfBreak { get;set; }

    public TimeSpan TimeoutValue { get; set; }

    public TimeoutStrategy TimeoutStrategy { get; set; }

}
Then add Qos property to ReRoute, change constructor to take QoS and expose public Getter.
This is then used in FileOcelotConfigurationCreator.SetUpReRoute(FileReRoute fileReRoute, FileGlobalConfiguration globalConfiguration)
We map FileQos to Qos and populate the ReRoute QoS parameter.
Then when we build the Request in HttpRequestCreator we check to see if we should use QoS. If true call WithQos else don't.
Then in HttpClientBuilder we check if we should use QosS before adding a handler.
QoS should be turned off by default and the user can have the option to turn it on?

@TomPallister I Refactor qos as options，But  another test should_use_global_request_id_and_forward not pass

@geffzhang I will check again when I get home from work :)

@geffzhang RequestIdTests.should_use_global_request_id_and_forward needs UpstreamHttpMethod = "Get" adding to FileReRoute

@geffzhang thank you for helping with Ocelot.

@TomPallister @geffzhang I am new to ocelot , i want to use the x-forwaded filters ,qos and circuit breaker to pivotal cloud foundry so can you please suggest about this .
Qos is just a Json config i believe , x-forwaded i have no idea as of now and how polly will help in pcf . Please suggest


fix(typo): URL to the project

Thanks for merging !
I discovered your lib at Umons and added it to the nix/nixos distribution at https://github.com/NixOS/nixpkgs/pull/352827
There's also something else to fix on this page: https://pypi.org/project/pytorch-bench/
The Homepage link leads to a 404, do you think you can fix it too? This might help other linux distribution packagers in their work.

Thanks a lot ! Should be fixed now :)

excellent, thanks !!!


Improve test coverage

link with TravisCI (https://travis-ci.com/)
link with Coveralls (https://coveralls.io/)

Changes Unknown when pulling da08fe15d37c0e3100c2c221482d79d51d25bb26 on add-test-coverage into ** on master**.

Changes Unknown when pulling e848b95684bf7c0c50129c41e99bf183c117d57c on add-test-coverage into ** on master**.


HR band won't connect to a BT 5.3 phone

Reported by David Scheel.
Fitness machine is Yesoul S3, HR band is possibly Huawei brand, phone is a new model with BT 5.3.

It turned out to be rather a possible lack of documentation. I need documentation and tutorial videos.


Publish 7.4-20211231000913+0000

Publish 7.4-20211231000913+0000

@bot-gradle test and merge

OK, I've already triggered a build for you.


Handle ErrUserProhibitLogin in http git (#7586)

Backport #7586
Fix #7558

After reviewing https://github.com/go-gitea/gitea/pull/7586#discussion_r306445837. I think we should send and 403 and not a 401 response in this case.

I think that would mean that the backport and master were not aligned unless we added another PR to apply that.

The best would be to not merged this backport and do a new PR on master that will be backported. I can do it if you don't have time.

I agree with @sapk that master should be fixed first

see #7591

Ok @sapk and @lafriks that's done.

Thanks @zeripath for your reactivity.


Could you tell me what is the purpose of this project

I am jump from lvgl to this.
I am not a windows developer. So rarely I use vs studio.
My problem is the lvgl simulator contains lvgl 9.0 code. I want to switch to 3.8.x , fast switch from version to version would be great to compare features. when I replace lvgl 3.8.4 eg. it will generate a lot of errors missing files. it is annoying to check file by file. And seems there is no add external folder option in vs studio.
will this mile.project.windows tool help to do so?    can you give me some suggestion?

It simplifies the Visual Studio project configuration and helps people to write a simple configuration for projects.
For LVGL simulator 8.x branch, it uses the old customized version of this project. In 9.x branch, I think we should use the mainline one because it contains more fixes and features.
Kenji Mouri

thanks


@global tag

Which tag can i use in the place of @global?
I read in the documentation, that isn't indicated the use this tag, so i would like to know by which one can i replace?

I think what they mean is that using global is generally not recommended in PHP, and you are instead encouraged to use static class variables, or class constants.

Cool!!! Thank you too much, surged this doubt and I stayed: why not?? Thank you too much again.

Global can lead to strange behaviour that you will not understand in the future. Like where is this value comming from? Who changed my variable.
We are convinced that you should protect your application's state. which you cannot do when everyone has access. This might help: http://stackoverflow.com/questions/5166087/php-global-in-functions

Sure @jaapio , my wish is to use to represent a $_POST value in the method.

Think global should work in that case

Thanks ever so much

Thank you too much


Add option to share this site in social media

Need option to share this calculator site in social media

@DhanushNehru I want to work on this issue...can you assign me?

Sure @JAHANVI128

Hello @DhanushNehru  pls assign me this i want to work on this

@om453 , I guess @JAHANVI128 is already working on it


Add Opt-in metrics for performance tracing on supported runtimes

.NET Core 3.0 adds some really nice APIs for tracking performance metrics easily with the new EventCounter-inherited types and the dotnet-trace and dotnet-counters tools. We should look at providing information to these APIs and tools so that both we and our users can measure the performance of various portions of Avalonia and so we can track perf better without for example having to recompile with ShowFps turned on.
Some example metrics off the top of my head:

Frames per second
Time to first frame
Layout pass duration
Xaml object parse/construction duration

Are those available when targeting netstandard2.0?

I'm not sure if they are (they might be available in an out-of-band package), but since we are already multi-targetting our builds, we could have the metrics light up on runtimes that support them.

So that would work by multitargeting Avalonia.DesktopRuntime to netcoreapp3.0 and providing a service from the locator.

That would work.

We could also implement some builtin infrastructure for measuring the time to first frame by calling [GetProcessTimes])https://docs.microsoft.com/en-us/windows/win32/api/processthreadsapi/nf-processthreadsapi-getprocesstimes)/times.

I was wondering if anything was ever done for this?


Checks after hutch opening

We need to check that the beamstop is in the beam after every time the hutch is open, this is done using the diode on the front of the detector.

Move sample out of the way
Move detector in the correct location
Check beam
Check beamstop

This is probably better done in the set into the default state


docker rename CLI command is not reflected in Kitematic

run docker rename <container> <newname>
Kitematic isn't updated

+1 - just hit it :)
is there a force refresh', or are you hooking into the docekr events`?

Images pulled from cli won't be displayed in kitematic neither

Unfortunately there are no events triggered when a rename happens.
Closing as rename should be done in kitematic


Raspberry pi running tensorflow lite at 0.69 -0.73 fps.

Please make sure that this is an issue related to performance of TensorFlow.
As per our
GitHub Policy,
we only address code/doc bugs, performance issues, feature requests and
build/installation issues on GitHub. tag:performance_template
System information

Have I written custom code (as opposed to using a stock example script provided in TensorFlow): No
OS Platform and Distribution (e.g., Linux Ubuntu 16.04): Raspberry pi 4 8gb ram
Mobile device (e.g. iPhone 8, Pixel 2, Samsung Galaxy) if the issue happens on mobile device:
TensorFlow installed from (source or binary):
TensorFlow version (use command below): using TensorFlow 1.14
Python version: 3.7
Bazel version (if compiling from source):
GCC/Compiler version (if compiling from source):
CUDA/cuDNN version: no
GPU model and memory: no

You can collect some of this information using our environment capture
script
You can also obtain the TensorFlow version with:

TF 1.0: python -c "import tensorflow as tf; print(tf.GIT_VERSION, tf.VERSION)"
TF 2.0: python -c "import tensorflow as tf; print(tf.version.GIT_VERSION, tf.version.VERSION)"

Describe the current behavior
It is giving incredibly low fps. 0.69 for tflite. This is the same when I am running with normal TensorFlow as well.
Describe the expected behavior
at 2 fps or above
Standalone code to reproduce the issue
Provide a reproducible test case that is the bare minimum necessary to generate
the problem. If possible, please share a link to Colab/Jupyter/any notebook.
https://github.com/Dasinator21/Replicate-Error
Github link above to my tflite model as well as the code I am running the model with.
Other info / logs Include any logs or source code that would be helpful to
diagnose the problem. If including tracebacks, please include the full
traceback. Large logs and files should be attached.

Hi There,
We are checking to see if you still need help on this, as you are using an older version of tensorflow which is officially considered end of life . We recommend that you upgrade to the latest 2.x version and let us know if the issue still persists in newer versions. Please open a new issue for any help you need against 2.x, and we will get you the right help.
This issue will be closed automatically 7 days from now. If you still need help with this issue, please provide us with more information.


Typescript bindings

Can you provide typescript bindings, or i can and submit to you ?
Thanks for you greak work

Has anyone got the typescript bindings?


feat(NumberTheory/Harmonic): explicit formula for ζ 1

Mathematically Riemann zeta is not defined at 1, but our construction ascribes a value to ζ 1. This PR calculates the value, and shows that it is not zero.

I'm wondering what this is good for (apart perhaps from completedRiemannZeta₀_one), as it seems that we are talking about "junk values" here that should be irrelevant in applications. @loefflerd, can you explain what purpose you have in mind with this?

I'm wondering what this is good for (apart perhaps from completedRiemannZeta₀_one), as it seems that we are talking about "junk values" here that should be irrelevant in applications. @loefflerd, can you explain what purpose you have in mind with this?

completedRiemannZeta₀ 1 = (γ - Complex.log (4 * ↑π)) / 2 + 1 = OEIS A074760.

When I initially added the statement of the Riemann hypothesis to mathlib, I formalised it as "if s is not a negative even integer, then ζ s ≠ 0". Kevin pointed out that this statement might very well be false if the value for ζ 1 was not well chosen, and took me to task on his public twitter feed for my sloppiness.
So the main motivation of this PR is to clear up this mess by demonstrating that the value we assigned for ζ 1 was nonzero all along.
More generally, there is a convention that "junk" values should be explicit; e.g. we have a lemma div_zero saying that x / 0 = 0, we don't just assign a random value but never disclose what it is. (For this reason I seem to recall one of the reviewers when I first added the zeta function – not sure who, maybe Sebastien? – writing that it would be good if we had a lemma explaining precisely what ζ 1 is.)

OK. It certainly does not hurt to have this, and the value of Λ₀ at 1 could be useful (and it needs the other ones anyway).
I won't "maintainer merge" (yet), so that Kevin has an opportunity to have a look.

maintainer merge

bors r+

LGTM. Thanks David!


remove tfstate ; add tf files to gitignore

The gitignore block was added from here: https://github.com/github/gitignore/blob/master/Terraform.gitignore

I signed it!


Prometheus metrics endpoint

Hey @lthiery,
More as a feature suggestion as an issue - are there any plans to expose some Prometheus endpoints for this?
It would be highly useful to allow metrics and alerts to be configured.
Cheers,
Leo

No concrete plans but it should be not too difficult. I've used this library in other projects such as in virtual-lorawan-device and I think it would drop into here just fine too.
Can you detail what metrics you would like tracked?

Yeah. I have seen it used elsewhere, so I hope it's easy enough. The main thing would be throughput to each configured MUX client and anything that allows you to pick up any discrepancies between the two. No clients connected.
Breakdown by GatewayEUI or frequency might be interesting but not needed.
Thanks for the link to your Virtual Lora Device project. That is perfect timing while I am doing a lot of LNS and integration testing! Might even write some tests into my integrations for that! Nice work! 🙏


Add make_tools.py to generate adb.zip and fastboot.zip.

Change imports to always be relative to the package, e.g. "from adb import ..."
make_tools.py creates standalone, easy to distribute executables meant to be
used in a continuous integration system via various CPU architecture where
having interpreted code is valuable.
Make progressbar optional so both adb.zip and fastboot.zip do not have any hard
dependency except python-libusb.

There are merge conflicts, but otherwise LGTM

Rebased. Thanks for the README.rst -> README.md rename. I should have left out of this PR but doing it upfront is even better.

Hmm, we should include the output of make_tools.py into the releases, I wonder if there's a way to do that automatically?

You mean on github? Good question. I have never done that but I doesn't look too hard; https://developer.github.com/v3/repos/releases/#create-a-release

Ah, I see, you upload arbitrary binary files for the release. Maybe there's tooling, or I'll have to remember to run make_tools.py before each release?

You could use it when you create tags, https://docs.travis-ci.com/user/deployment/releases/

Ah, there we go! Thanks! A travis config to run make_tools.py in before_deploy and then upload the files on tag creation will be the plan then, I'll make an issue now


Enable test disabled in travis

The issue
Since we are moving from travis to azure, let's re-enable the test disabled in travis.
The checklist

[ ] Associated issue
[ ] A news fragment in the news/ directory to describe this fix with the extension .bugfix, .feature, .behavior, .doc. .vendor. or .trivial (this will appear in the release changelog). Use semantic line breaks and name the file after the issue number or the PR #.

LGTM, thanks for taking care of this

Btw you can’t really trust skip reasons per se. if it says it doesn’t work on Travis it really just means it was flaky in Linux test envs. If it says it’s non deterministic, it might work fine now

That's true. Actually this case works even in Travis now.


cmd/compile: invalid recursive type

What version of Go are you using (go version)?
go version go1.11 darwin/amd64
Does this issue reproduce with the latest release?
Yes
What operating system and processor architecture are you using (go env)?

What did you expect to see?
Code compiles without any error with both Go 1.11 and Go 1.10.3.
What did you see instead?
Go 1.11 failed to compile this code with the following error:
On my machine:
❯ go build recur.go
# command-line-arguments
./recur.go:10:6: invalid recursive type Executor
./recur.go:16:29: cannot use callback (type func(*Executor) error) as type Executor in field value
./recur.go:21:19: cannot call non-function e.callback (type Executor)

Go 1.10.3 succeeded without any issue.

Likely a duplicate of https://github.com/golang/go/issues/27232.
/cc @josharian @mdempsky

Likely a duplicate of #27232.

Indeed.
This and #27232 are more in the domain of @mdempsky or @griesemer than me. (And I also don't have much time at the moment, and these seem like important fixes that could use a prompt backport.)

(If this turns out NOT to be a duplicate of #27232, please open a separate backport issue.)

Simpler reproducer, with irrelevant details stripped:
package p

type F = func(E) // compiles if not type alias or moved below E struct

type E struct {
	f F
}

func f() {
	_ = E{func(E) {}}
}

This looks very much like a duplicate of #27232, though with different details. Leaving open until we know more.

Simpler reproducer:
package p

type P = *S

type S struct {
	p P
}

The problem appears to be an incorrectly built type data structure for S after type-checking, such that the type of S.p is S rather than *S. The consequence is the error when calling checkwidth.

Probably a duplicate of #25838. Leaving open for now.


guacone - managing totalSuccess

Description of the PR
Running tests locally, I figured out that guacone collect files prints completed ingesting 0 documents of 1 so I've fixed the total number of successfully ingested file.
PR Checklist

[x] All commits have a Developer Certificate of Origin (DCO) -- they are generated using -s flag to git commit.
[ ] All new changes are covered by tests
[ ] If GraphQL schema is changed, make generate has been run
[ ] If collectsub protobuf has been changed, make proto has been run
[ ] All CI checks are passing (tests and formatting)
[ ] All dependent PRs have already been merged

@jeffmendoza @pxp928 it looks like in the E2E test guacgql took ~1 second to start and so some ingestions failed with ingestPackages failed with error: Post \"http://localhost:8080/query\": dial tcp [::1]:8080: connect: connection refused".
Do you want me to add a sleep 3 in the e2e script before running guacone collect files  just to be safer and make it more reliable?

Yes, a sleep here would be great https://github.com/guacsec/guac/blob/main/internal/testing/e2e/e2e#L36-L40