This project no longer compiles

I found your project via dzone and it was a good write up but I figured something was wrong when my version of your plugin failed to mvn clean install correctly.
So after cloning and trying running mvn clean install without making any changes
$ mvn clean install
[INFO] Scanning for projects...
[INFO]
[INFO] -------------< com.techshard.filezip:filezip-maven-plugin >-------------
[INFO] Building filezip-maven-plugin Maven Mojo 1.0-SNAPSHOT
[INFO] ----------------------------[ maven-plugin ]----------------------------
[INFO]
[INFO] --- maven-clean-plugin:2.5:clean (default-clean) @ filezip-maven-plugin ---
[INFO]
[INFO] --- maven-resources-plugin:2.6:resources (default-resources) @ filezip-maven-plugin ---
[INFO] Using 'UTF-8' encoding to copy filtered resources.
[INFO] Copying 1 resource
[INFO]
[INFO] --- maven-compiler-plugin:3.1:compile (default-compile) @ filezip-maven-plugin ---
[INFO] Changes detected - recompiling the module!
[INFO] Compiling 1 source file to /mnt/c/Users/aubre/Projects/filezip-maven-plugin/target/classes
[INFO] -------------------------------------------------------------
[ERROR] COMPILATION ERROR :
[INFO] -------------------------------------------------------------
[ERROR] Source option 5 is no longer supported. Use 6 or later.
[ERROR] Target option 1.5 is no longer supported. Use 1.6 or later.
[INFO] 2 errors
[INFO] -------------------------------------------------------------
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time:  7.057 s
[INFO] Finished at: 2020-07-22T17:24:14-04:00
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.1:compile (default-compile) on project filezip-maven-plugin: Compilation failure: Compilation failure:
[ERROR] Source option 5 is no longer supported. Use 6 or later.
[ERROR] Target option 1.5 is no longer supported. Use 1.6 or later.
[ERROR] -> [Help 1]
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoFailureException

something was obviously outdated, so I made some pom updates:
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <groupId>com.techshard.filezip</groupId>
  <artifactId>filezip-maven-plugin</artifactId>
  <packaging>maven-plugin</packaging>
  <version>1.0-SNAPSHOT</version>
  <name>filezip-maven-plugin Maven Mojo</name>
  <url>http://maven.apache.org</url>

  <scm>
    <connection>scm:git:https://github.com/swathisprasad/filezip-maven-plugin.git</connection>
    <developerConnection>scm:git:https://github.com/swathisprasad/filezip-maven-plugin.git</developerConnection>
    <url>https://github.com/swathisprasad/filezip-maven-plugin</url>
    <tag>HEAD</tag>
  </scm>

  <licenses>
    <license>
      <name>Apache 2.0 License</name>
      <url>http://www.apache.org/licenses/LICENSE-2.0.html</url>
      <distribution>repo</distribution>
    </license>
  </licenses>

  <developers>
    <developer>
      <id>techshard-team</id>
      <name>Techshard Team</name>
<EMAIL_ADDRESS>      <organization>Techshard</organization>
    </developer>
  </developers>

  <issueManagement>
    <system>Github</system>
    <url>https://github.com/swathisprasad/filezip-maven-plugin/issues</url>
  </issueManagement>

  <properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <maven.compiler.source>11</maven.compiler.source>
    <maven.compiler.target>11</maven.compiler.target>
  </properties>

  <dependencies>
    <dependency>
      <groupId>org.apache.maven</groupId>
      <artifactId>maven-plugin-api</artifactId>
      <version>3.6.3</version>
    </dependency>
    <dependency>
      <groupId>org.apache.maven.plugin-tools</groupId>
      <artifactId>maven-plugin-annotations</artifactId>
      <version>3.6.0</version>
      <scope>provided</scope>
    </dependency>
    <dependency>
      <groupId>org.apache.maven</groupId>
      <artifactId>maven-project</artifactId>
      <version>2.2.1</version>
    </dependency>
  </dependencies>

  <build>
    <resources>
      <resource>
        <directory>${project.basedir}</directory>
        <includes>
          <include>NOTICE*</include>
          <include>LICENSE*</include>
        </includes>
      </resource>
    </resources>
    <plugins>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-source-plugin</artifactId>
        <version>3.2.0</version>
        <executions>
          <execution>
            <id>attach-sources</id>
            <phase>verify</phase>
            <goals>
              <goal>jar-no-fork</goal>
            </goals>
          </execution>
        </executions>
      </plugin>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-javadoc-plugin</artifactId>
        <version>3.2.0</version>
        <configuration>
          <encoding>UTF-8</encoding>
        </configuration>
        <executions>
          <execution>
            <id>attach-javadoc</id>
            <goals>
              <goal>jar</goal>
            </goals>
          </execution>
        </executions>
      </plugin>
    </plugins>
  </build>
</project>

which resulted in the following error
$ mvn clean install
[INFO] Scanning for projects...
[INFO]
[INFO] -------------< com.techshard.filezip:filezip-maven-plugin >-------------
[INFO] Building filezip-maven-plugin Maven Mojo 1.0-SNAPSHOT
[INFO] ----------------------------[ maven-plugin ]----------------------------
[INFO]
[INFO] --- maven-clean-plugin:2.5:clean (default-clean) @ filezip-maven-plugin ---
[INFO] Deleting /mnt/c/Users/aubre/Projects/filezip-maven-plugin/target
[INFO]
[INFO] --- maven-resources-plugin:2.6:resources (default-resources) @ filezip-maven-plugin ---
[INFO] Using 'UTF-8' encoding to copy filtered resources.
[INFO] Copying 1 resource
[INFO]
[INFO] --- maven-compiler-plugin:3.1:compile (default-compile) @ filezip-maven-plugin ---
[INFO] Changes detected - recompiling the module!
[INFO] Compiling 1 source file to /mnt/c/Users/aubre/Projects/filezip-maven-plugin/target/classes
[INFO]
[INFO] --- maven-plugin-plugin:3.2:descriptor (default-descriptor) @ filezip-maven-plugin ---
[INFO] Using 'UTF-8' encoding to read mojo metadata.
[INFO] Applying mojo extractor for language: java
[INFO] Mojo extractor for language: java found 0 mojo descriptors.
[INFO] Applying mojo extractor for language: bsh
[INFO] Mojo extractor for language: bsh found 0 mojo descriptors.
[INFO] Applying mojo extractor for language: java-annotations
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time:  12.746 s
[INFO] Finished at: 2020-07-22T17:28:51-04:00
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-plugin-plugin:3.2:descriptor (default-descriptor) on project filezip-maven-plugin: Execution default-descriptor of goal org.apache.maven.plugins:maven-plugin-plugin:3.2:d
escriptor failed: Index 10792 out of bounds for length 196 -> [Help 1]
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/PluginExecutionException

So if you have the time to make the project work again, that would be great - otherwise an update to the article on dzone stating that it's outdated and no longer works would be good as well so no one wastes their time like I did

I found your project via dzone and it was a good write up but I figured something was wrong when my version of your plugin failed to mvn clean install correctly.
So after cloning and trying running mvn clean install without making any changes
$ mvn clean install
[INFO] Scanning for projects...
[INFO]
[INFO] -------------< com.techshard.filezip:filezip-maven-plugin >-------------
[INFO] Building filezip-maven-plugin Maven Mojo 1.0-SNAPSHOT
[INFO] ----------------------------[ maven-plugin ]----------------------------
[INFO]
[INFO] --- maven-clean-plugin:2.5:clean (default-clean) @ filezip-maven-plugin ---
[INFO]
[INFO] --- maven-resources-plugin:2.6:resources (default-resources) @ filezip-maven-plugin ---
[INFO] Using 'UTF-8' encoding to copy filtered resources.
[INFO] Copying 1 resource
[INFO]
[INFO] --- maven-compiler-plugin:3.1:compile (default-compile) @ filezip-maven-plugin ---
[INFO] Changes detected - recompiling the module!
[INFO] Compiling 1 source file to /mnt/c/Users/aubre/Projects/filezip-maven-plugin/target/classes
[INFO] -------------------------------------------------------------
[ERROR] COMPILATION ERROR :
[INFO] -------------------------------------------------------------
[ERROR] Source option 5 is no longer supported. Use 6 or later.
[ERROR] Target option 1.5 is no longer supported. Use 1.6 or later.
[INFO] 2 errors
[INFO] -------------------------------------------------------------
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time:  7.057 s
[INFO] Finished at: 2020-07-22T17:24:14-04:00
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.1:compile (default-compile) on project filezip-maven-plugin: Compilation failure: Compilation failure:
[ERROR] Source option 5 is no longer supported. Use 6 or later.
[ERROR] Target option 1.5 is no longer supported. Use 1.6 or later.
[ERROR] -> [Help 1]
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoFailureException

something was obviously outdated, so I made some pom updates:
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <groupId>com.techshard.filezip</groupId>
  <artifactId>filezip-maven-plugin</artifactId>
  <packaging>maven-plugin</packaging>
  <version>1.0-SNAPSHOT</version>
  <name>filezip-maven-plugin Maven Mojo</name>
  <url>http://maven.apache.org</url>

  <scm>
    <connection>scm:git:https://github.com/swathisprasad/filezip-maven-plugin.git</connection>
    <developerConnection>scm:git:https://github.com/swathisprasad/filezip-maven-plugin.git</developerConnection>
    <url>https://github.com/swathisprasad/filezip-maven-plugin</url>
    <tag>HEAD</tag>
  </scm>

  <licenses>
    <license>
      <name>Apache 2.0 License</name>
      <url>http://www.apache.org/licenses/LICENSE-2.0.html</url>
      <distribution>repo</distribution>
    </license>
  </licenses>

  <developers>
    <developer>
      <id>techshard-team</id>
      <name>Techshard Team</name>
<EMAIL_ADDRESS>      <organization>Techshard</organization>
    </developer>
  </developers>

  <issueManagement>
    <system>Github</system>
    <url>https://github.com/swathisprasad/filezip-maven-plugin/issues</url>
  </issueManagement>

  <properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <maven.compiler.source>11</maven.compiler.source>
    <maven.compiler.target>11</maven.compiler.target>
  </properties>

  <dependencies>
    <dependency>
      <groupId>org.apache.maven</groupId>
      <artifactId>maven-plugin-api</artifactId>
      <version>3.6.3</version>
    </dependency>
    <dependency>
      <groupId>org.apache.maven.plugin-tools</groupId>
      <artifactId>maven-plugin-annotations</artifactId>
      <version>3.6.0</version>
      <scope>provided</scope>
    </dependency>
    <dependency>
      <groupId>org.apache.maven</groupId>
      <artifactId>maven-project</artifactId>
      <version>2.2.1</version>
    </dependency>
  </dependencies>

  <build>
    <resources>
      <resource>
        <directory>${project.basedir}</directory>
        <includes>
          <include>NOTICE*</include>
          <include>LICENSE*</include>
        </includes>
      </resource>
    </resources>
    <plugins>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-source-plugin</artifactId>
        <version>3.2.0</version>
        <executions>
          <execution>
            <id>attach-sources</id>
            <phase>verify</phase>
            <goals>
              <goal>jar-no-fork</goal>
            </goals>
          </execution>
        </executions>
      </plugin>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-javadoc-plugin</artifactId>
        <version>3.2.0</version>
        <configuration>
          <encoding>UTF-8</encoding>
        </configuration>
        <executions>
          <execution>
            <id>attach-javadoc</id>
            <goals>
              <goal>jar</goal>
            </goals>
          </execution>
        </executions>
      </plugin>
    </plugins>
  </build>
</project>

which resulted in the following error
$ mvn clean install
[INFO] Scanning for projects...
[INFO]
[INFO] -------------< com.techshard.filezip:filezip-maven-plugin >-------------
[INFO] Building filezip-maven-plugin Maven Mojo 1.0-SNAPSHOT
[INFO] ----------------------------[ maven-plugin ]----------------------------
[INFO]
[INFO] --- maven-clean-plugin:2.5:clean (default-clean) @ filezip-maven-plugin ---
[INFO] Deleting /mnt/c/Users/aubre/Projects/filezip-maven-plugin/target
[INFO]
[INFO] --- maven-resources-plugin:2.6:resources (default-resources) @ filezip-maven-plugin ---
[INFO] Using 'UTF-8' encoding to copy filtered resources.
[INFO] Copying 1 resource
[INFO]
[INFO] --- maven-compiler-plugin:3.1:compile (default-compile) @ filezip-maven-plugin ---
[INFO] Changes detected - recompiling the module!
[INFO] Compiling 1 source file to /mnt/c/Users/aubre/Projects/filezip-maven-plugin/target/classes
[INFO]
[INFO] --- maven-plugin-plugin:3.2:descriptor (default-descriptor) @ filezip-maven-plugin ---
[INFO] Using 'UTF-8' encoding to read mojo metadata.
[INFO] Applying mojo extractor for language: java
[INFO] Mojo extractor for language: java found 0 mojo descriptors.
[INFO] Applying mojo extractor for language: bsh
[INFO] Mojo extractor for language: bsh found 0 mojo descriptors.
[INFO] Applying mojo extractor for language: java-annotations
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time:  12.746 s
[INFO] Finished at: 2020-07-22T17:28:51-04:00
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-plugin-plugin:3.2:descriptor (default-descriptor) on project filezip-maven-plugin: Execution default-descriptor of goal org.apache.maven.plugins:maven-plugin-plugin:3.2:d
escriptor failed: Index 10792 out of bounds for length 196 -> [Help 1]
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/PluginExecutionException

So if you have the time to make the project work again, that would be great - otherwise an update to the article on dzone stating that it's outdated and no longer works would be good as well so no one wastes their time like I did

@aubrey-y, the error from first build failure seems to be complaining about Java version. What java version are you using?
Source option 5 is no longer supported. Use 6 or later. [ERROR] Target option 1.5 is no longer supported. Use 1.6 or later.

$ java --version
openjdk 11.0.7 2020-04-14
OpenJDK Runtime Environment (build 11.0.7+10-post-Ubuntu-3ubuntu1)
OpenJDK 64-Bit Server VM (build 11.0.7+10-post-Ubuntu-3ubuntu1, mixed mode, sharing)

Ok thanks! I will check and update the project if required.

$ java --version
openjdk 11.0.7 2020-04-14
OpenJDK Runtime Environment (build 11.0.7+10-post-Ubuntu-3ubuntu1)
OpenJDK 64-Bit Server VM (build 11.0.7+10-post-Ubuntu-3ubuntu1, mixed mode, sharing)

I have updated the plugins, it should work fine now.


Missing license

Hi, I have noticed you are redistributing my kotlin-result library in your core package. This is great and I'm thankful for your use of my library.
The classes include a comment which links back to my repository, which is appreciated, however you are missing the license file that must appear in all copies.
Please can you either depend on this library explicitly from a repository such as Maven Central (to avoid shipping the source yourselves) or include the license? Thanks in advance.

I have removed the in-lined version of your library.

That's fantastic, thanks for the cooperation!


CLI Triager Nomination for Reid Liu

For details on how this process works, please see our contributor roles documentation
Which member are you nominating for a team change?
@reidliu41
Which team are you nominating for this member for?
CLI Triagers
Make your case here: Why should the nominated member be on the proposed team?
Reid has been very active on the project - see the links below - creating many PRs and Issues and doing a lot of nice fit-and-finish work that has improved the overall UX of the project. I think it's fair to say that Reid would be a good candidate for our triage team, as he has demonstrated a familiarity with the code base.
Pull Requests Authored: https://github.com/instructlab/instructlab/pulls?q=is%3Apr+author%3Areidliu41+
Pull Requests Reviewed: https://github.com/instructlab/instructlab/pulls?q=is%3Apr+reviewed-by%3Areidliu41+
Issues Created:         https://github.com/instructlab/instructlab/issues?q=is%3Aissue+author%3Areidliu41+

+1


Uart problem

On v2, uart never return radio receiving message.

Tested in https://python.microbit.org/v/2
In order to test above code, I use another microbit v2 to send radio message and use python serial to read uart message.
send radio code

python code to read uart message

result

I tried the code below in a V1 and a V2. It seems to work with V2 as radio receiver of sender.
I initially received the serial messages with tera term, then used the python below.
micro:bit code
from microbit import *
import radio

radio.on()

uart.write('Hello'+'\n')

while True:

    display.set_pixel( 0, 0, 0 if display.get_pixel(0,0) else 9)

    incoming = radio.receive()
    if incoming != None:
        uart.write(incoming + '\n')
        display.scroll('R')

    if button_a.was_pressed():
        radio.send('flash\n')
        display.scroll('F')

Python to receive serial messages
import subprocess
import shutil
import os
import stat
import distutils.dir_util
import filecmp
import json
import sys
import time

import serial
import serial.tools
import serial.tools.list_ports

PORT=''
#PORT='COM5'

BAUDRATE = 115200
#BAUDRATE = 57600

port = PORT

if len(port) == 0:
  listPortInfo = serial.tools.list_ports.comports(include_links=False)
  port = listPortInfo[0].device

print("PORT " + port)

ser = serial.Serial()
ser.port = port
ser.baudrate = BAUDRATE
ser.bytesize = 8
ser.parity = 'N'
ser.stopbits = 1
ser.timeout = 1
ser.xonxoff = 0
ser.rtscts = 0

ser.open()

ser.flush()

try:
    while True:
        bytesIn = ser.readline()
        print(bytesIn)
        time.sleep(0.1)

except KeyboardInterrupt:
    ser.close()
    print('Close')

Sorry! I give wrong python code.
radio message disappeared if you call uart.write quickly.

Here are the 3 programs, pasted below as text and here as files rather than PNG, so they are easy try out: issue74.zip
I have modified the desktop python script to find the port number, and so that it doesn't print "Hello\n", to make it easier to see "flash\n\n".
If these programs aren't right, please send correct programs.
I can't see what's wrong. What am I missing? Please explain further what the problem is.
Also I tried a dual send/receive program that counts radio messages, and uses is_pressed  rather than was_pressed. This shows that radio messages sent quickly get lost, but it seems to be similar on V1 and V2 and only slightly changed by uart.write. When using was_pressed as the trigger I don't see any lost messages.
Receive
import radio
from microbit import *
radio.on()
while True:
    uart.write('Hello'+'\n')
    incoming = radio.receive()
    if incoming != None:
        uart.write(incoming+'\n')

Transmit
import radio
from microbit import *
radio.on()
while True:
    if button_a.was_pressed():
        radio.send('flash\n')

Desktop
import serial
import serial.tools
import serial.tools.list_ports

PORT=''
#PORT='COM5'

BAUDRATE = 115200

port = PORT

if len(port) == 0:
  listPortInfo = serial.tools.list_ports.comports(include_links=False)
  port = listPortInfo[0].device

ser = serial.Serial(port, BAUDRATE)

normal = b'Hello\n'

try:
    while True:
        data_raw = ser.readline()
        if data_raw != normal:
            print(data_raw)

except KeyboardInterrupt:
    ser.close
    print('Close')

Count radio messages
import radio
from microbit import *

count_receive = 0
count_send = 0

radio.on()

while True:
    uart.write('Hello\n')

    incoming = radio.receive()
    if incoming != None:
        count_receive = count_receive + 1
        uart.write(str(count_receive)+" "+incoming+'\n')

    if button_a.is_pressed():
        count_send = count_send + 1
        radio.send(str(count_send))

If you only print radio message, radio message will not disappear.
But, I need to print uart Hello and radio message at the same time.
The files are shown as follows.
https://drive.google.com/file/d/1aULYjuRjPwa_NaR7A3Rt_R8U-Hhjm1So/view?usp=sharing
That is because I try to create some scratch 3.0 blocks for microbit now.
https://www.youtube.com/watch?v=ywIxgYDro7A
Thus, I find that uart message will make radio message disappear.
I also find a new bug for uart, accelerometer and radio, since I use my scratch blocks.
However, I need time to find what happened.

Thanks. Those files appear to match the ones I typed in. When I test those files, the text "flash" is appearing in the output of the python program between all the "Hello"s, but scrolls off the screen very quickly.
In a Windows Command Prompt, I used the command "python 55.py >pyout.txt" to pipe the python print output into a text file, and pressed the radio sending micro:bit's A button 10 times, before using Ctrl-C to exit the python program. Whether I test with V1s or V2s the pyout.txt file has 10 occurrences of "flash" and several thousand "Hello"s.

Thanks for all the debugging Martin!
@crouse12 did you manage to resolve the issue you were having?

Thanks for all the debugging Martin!
@crouse12 did you manage to resolve the issue you were having?

YES

Great, in that case I'll close this issue. Thanks for the report and the update, and thanks again Martin for the debugging!


🚧Template workflow generation issue

Complete The Item Below

[X] I have updated the title without removing the 🚧 emoji.

Description
When generating the workflow templates using the dotnet cicd GenerateWorkflows command, the unit-test-status-check.yml workflow template is not getting generated.
No errors are being thrown at all.  It just simply is not working.  The only theory I have is that the templates are being generated file by file alphabetically and this file is the last file.  The file is probably somehow just being skipped due to the premature ending of the code.
Acceptance Criteria

[ ] unit-test-status-check.yml workflow template is generated

ToDo Items

[X] Change type labels added to this issue.  Refer to the Change Type Labels section below.
[X] Priority label added to this issue.  Refer to the Priority Type Labels section below.
[X] Issue linked to the correct project (if applicable).
[ ] Issue linked to the correct milestone (if applicable).
[ ] Draft pull request created and linked to this issue (only required with code changes).

Issue Dependencies
No response
Related Work
No response
Additional Information:
Change Type Labels

Change Type
Label

Bug Fixes
🐛bug

Breaking Changes
🧨breaking changes

New Feature
✨new feature

Workflow Changes
workflow

Code Doc Changes
🗒documentation/code

Product Doc Changes
📝documentation/product

Priority Type Labels

Priority Type
Label

Low Priority
low priority

Medium Priority
medium priority

High Priority
high priority

Code of Conduct

[X] I agree to follow this project's Code of Conduct.

Closed without doing work.
Reason:
This was fixed with one of the issues in release v1.0.0-preview.8


Error upon receiving a compressed response.

When you pass "Accept-Encoding" header to a supporting endpoint, and it responds with compressed data, it errors during json parse, here.
I'm having trouble finding a mechanism to decorate with this decompression. Any suggestion?

Hi @JustinTRoss, you should not pass this header because this module was not designed for that use case. We could check if the endpoint responds with a "Content-Encoding" header. If the response was compressed, we skip JSON parsing and pass the content as text.

When you say, "you should not pass this header", do you mean "passing that header is not currently supported", or "passing that header is generally a bad practice" ? 😅
You suggestion could work. I figure we'd just switch on Content-Encoding and decode as appropriate, like so: https://github.com/nodejs/undici/discussions/1155#discussioncomment-2005131

I mean it is not supported. I'm not sure if it is a good idea to make this lib responsible for decompressing. It should be enough to get access to the raw body.

Got it. What gives you pause about doing so? Thinking through where we could handle compression, here are the thoughts that lead me to identify this as the place to handle it:

Other http clients handle decompression by default, making it the expectation here.
Handling decompression client-side would require duplicated low-level response handling for every call or creating a wrapper over this lib.
Returning the raw body would be the first such leakage of implementation detail of using Undici. It would require consumers understand and interact with Undici, which seems undesirable to me. Alternatively, we could return something like body.text(), but this would incur an unnecessary performance hit of stream -> blob -> text before -> stream -> json.

Something that may mitigate worry is to provide an escape hatch to communicate desire to prevent decompression, similar to what is used for fetch:
fetch(url, {
    compress: false,
    headers: { "accept-encoding": "gzip" },
});

I see your points and I agree with most of them but this library isn't a general-purpose HTTP client. It was developed for internal communication. Just for clarification. You request compression support right? If your API compresses content by default this is a violation of the protocol.
If you create a PR that adds compression support similar to

You suggestion could work. I figure we'd just switch on Content-Encoding and decode as appropriate, like so: https://github.com/nodejs/undici/discussions/1155#discussioncomment-2005131

I'd be happy to review it. Please have in mind that this library is optimized for performance. Requests that don't require decompression should not be impacted by any means.

Got it. Makes sense. Yes, compression was requested 😅 .
Definitely agreed regarding not impacting requests without a requirement for compression.
@jsudhakar-gdrx opened a PR that achieve this end. 🎉


z.object.pick could accept arrays

When using .pick or .omit, it would be nice to have the method also accept an array with strings with keys to pick/omit. For example:
z.object({
  name: z.string(),
  address: z.string(),
  phone: z.string()
}).pick(['name', 'phone']);

Has anyone thought of that? Any drawbacks? I would be happy to contribute.

That's been proposed and I'm opposed: https://github.com/colinhacks/zod/issues/1563


feat: use Google API to download files

Use the Google API to download files instead of anonymous HTTP requests (but still leave the old code... will probably deprecate in v3).
Google will block your anonymous requests after a certain amount of time, so this provides a more reliable way to download files.

Will also close #11


bestfit in java

Have you read the Contributing Guidelines on Pull Requests?
yes
Description
Fixes #6423
Checklist

[x] I've read the contribution guidelines.
[x] I've checked the issue list before deciding what to submit.
[x] I've edited the README.md and link to my code.

Related Issues or Pull Requests
issue #6423

@HarshCasper  @ankitaggarwal23  Can you please review my pr

@HarshCasper @ankitaggarwal23  can you please review my pr


fix(fetch): PUT/POSTs were failing

Anything with a request body (content-length > 0) was failing when excluded from fetch tracing instrumentation due to using the initial input object instead of the created/normalized Request.
Creating a new request from an old request consumes the old request unless explicitly
cloned, which would throw an error when the old, original request was passed to fetch!
I also made it slightly more explicit by not aliasing any existing names or relying on arguments.

Thanks!


Samples folder is hard to find and not a common place to look for examples.

What would you like to be cleaned:
We should move config/samples/* to a top level directory.  I'm unclear if we have code/docs that reference this so I want this as a separate issue from where it was brought up.
Why is this needed:
https://github.com/kubernetes-sigs/kueue/pull/778#discussion_r1195871208
As this project matures I think we should start putting example integrations in an examples directory so people can glance quickly and see how to use other workloads.

+1

We can update the links where needed, but I don't think the docs link to them. They have their own inline examples.


Fixed issue with string tokens parsed as vars.

While playing with the examples in the Essential-AntLang book, I experienced a minor issue with strings. In the antlang repl it gave something like the following when printing the stack trace:
--> "some_string"
Undefined Variable
Traceback (most recent call last):
  File "antlang.py", line 251, in <module>
    print(evaluate(line))
  File "antlang.py", line 245, in evaluate
    return AntLang(do(ast))
  File "antlang.py", line 157, in do
    xast = [do(x, ws) for x in ast]
  File "antlang.py", line 157, in <listcomp>
    xast = [do(x, ws) for x in ast]
  File "antlang.py", line 230, in do
    else: raise Exception('Undefined Variable')
Exception: Undefined Variable
quit? (y/n)

In the Python interpreter, before the fix:
>>> import antlang as ant
>>> ant.lexer('"some_string"')
[('str', ''), ('var', 'some_string'), ('str', '')]

After the possible fix:
>>> import antlang as ant
>>> ant.lexer('"some_string"')
[('str', 'some_string')]

Thank you for fixing this bug, the regex was indeed wrong.


Realtime scanner log file name.

The name of the log file from realtime scanner seems strange (e.g. 2018-07-13.0.log). Is this correct?

Oh, ok. Thus I'm closing this issue now.


Documentation for Class Google_Service_Slides_PresentationsPages_Resource

Hello,
I noticed that the documentation for the Pages Resource has an error.
https://developers.google.com/resources/api-libraries/documentation/slides/v1/php/latest/class-Google_Service_Slides_PresentationsPages_Resource.html
It states that the typical usage is
$pages = $slidesService->pages;
When in fact the usage is
$pages=$slidesService->presentations_pages;

Fixed in https://github.com/googleapis/google-api-php-client-services/commit/3bf818b9b643a4cd979fba52a0dc515edb9d5d95


Add props to control sidebar's collapsed state in DashboardLayout component

Summary
This feature request is to enhance the DashboardLayout component by adding two new props:
collapsed: A boolean prop that controls the initial state of the sidebar (collapsed or expanded).
onToggleSidebar: A function prop that allows toggling the sidebar’s collapsed state from outside the DashboardLayout component.
This setup will make the sidebar’s state externally controllable, enabling more dynamic and flexible UI behaviors in various responsive scenarios.
Examples
import React, { useState } from 'react';
import DashboardLayout from './DashboardLayout';
const AppProvider = () => {
const [isSidebarCollapsed, setIsSidebarCollapsed] = useState(false);
const handleToggleSidebar = (collapsed) => {
setIsSidebarCollapsed(collapsed);
};
return (

{/* Application Content */}

);
};
export default AppProvider;
Motivation
This feature will improve DashboardLayout’s flexibility and control by allowing parent components to manage and toggle the sidebar’s collapsed state. With responsive design requirements, many apps need to control the sidebar's visibility dynamically based on user interactions or screen size. This enhancement will make DashboardLayout more adaptable for complex UI requirements and enhance user experience across devices. The issue i face is i need a state to ensure the sidebar is collapsed or not to manage the responsiveness of design of rendered children comp
Search keywords: sidebar toggle, sidebar collapsed state, DashboardLayout, Material-UI, Toolpad sidebar, responsive sidebar, toggle sidebar from parent, sidebar props

Agree with providing a way to access the state of the sidebar, and also imperatively setting it. An alternative way of doing this is through a useSidebar hook:
const { collapsed, setCollapsed } = useSidebar();

const onClick = () => { if(!collapsed) { setCollapsed(); }

This will enable components across the app to be able to access (and imperatively set) the sidebar's state instead of having to share props.

@Mohammad-210 are you planning to work on this create a PR? If not, I can help with the PR

a controlled prop makes sense to me. a hook will be constraint to descendants only, which is probably too limiting.

@vikasgurjar I'm swamped with other tasks, I won't get to it.But I'm planning to fix it, but I haven't started yet. Feel free to create the PR!. if help needed let me know ..!

@Janpot from what I understand, controlled prop will have to be passed down to every child that needs it. Also even in that case these props will be constraint to descendants only

I'm thinking of using useNavigation instead of useSidebar for consistency as we already have a prop called 'hideNavigation'

const { collapsed, setCollapsed } = hideNavigation();

const onClick = () => { if(!collapsed) { setCollapsed(); }

@bharatkashyap I'm thinking of using useNavigation instead of useSidebar for consistency as we already have a prop called 'hideNavigation'

const { collapsed, setCollapsed } = hideNavigation();

const onClick = () => { if(!collapsed) { setCollapsed(); }

I discussed this with @mnajdova and we came to the conclusion that a controlled prop makes sense to begin with, while a hook/context can be implemented by users themselves if they need it as long as the prop is present. We could make an issue to collect upvotes on the hook feature request, to see if there is enough interest in providing that out of the box.
Let's focus on adding a controlled prop as part of this issue 👍🏻

A controlled prop as suggested sounds good!
sidebarCollapsed and onToggleSidebar sound good as possible prop names for DashboardLayout.
Feel free to create a PR, or we can get to it eventually.

@apedroferreira I think eventually sidebarCollapsed can replace defaultSidebarCollapsed in future. Do you think we will deprecate the prop? If so, should we add the warning for the same?

@apedroferreira I think eventually sidebarCollapsed can replace defaultSidebarCollapsed in future. Do you think we will deprecate the prop? If so, should we add the warning for the same?

I think they would both stay with different purposes: sidebarCollapsed if you want that state the be controlled, and defaultSidebarCollapsed just to set the initial value if you want to leave it uncontrolled.
sidebarCollapsed would always take priority if set.

@apedroferreira @bharatkashyap I got some time to work on this. I was wondering what's the use of onToggleSidebar prop? Will it act as just a callback for whenever there is a state change for sidebarCollapsed state?

@apedroferreira @bharatkashyap I got some time to work on this. I was wondering what's the use of onToggleSidebar prop? Will it act as just a callback for whenever there is a state change for sidebarCollapsed state?

Yes, it should run when the menu button on the top-right is clicked and by default toggle the sidebarCollapsed state.


Make /show command sortable by alphabetical or numerical order

As title above, allow the GM to sort by highest number in the /show command list or alphabetical order.

Done.
/show (/sh) sorts numerically
/showa (/sha) sorts alphabetically


juicefs sync error：juicefs sync  --dirs  -f --threads 10   /mnt/kkk/1.txt nfs://<IP_ADDRESS>:/mnt/hhh/1.txt --debug

When the 1.txt file already exists in the DST NFS directory，juicefs sync error happened。

JuiceFS version： 1.2.0-rc1+2024-06-03.f5bf1d03e88
----cmd/sync.go ---- The bug may occur here
375        store, err := object.CreateStorage(name, endpoint, accessKey, secretKey, token)
376        if name == "nfs" && err != nil {
377                p := u.Path
378                for err != nil && strings.Contains(err.Error(), "MNT3ERR_NOENT") {
379                        p = filepath.Dir(p)
380                        store, err = object.CreateStorage(name, u.Host+p, accessKey, secretKey, token)
381               }
382               if err == nil {
383                        store = object.WithPrefix(store, u.Path[len(p):])
384                }
385        }

When the 1.txt file already exists in the destination NFS directory, line 375 does not return an MNT3ERR_NOTDIR error as expected. Instead, it returns nil and the go-nfs-client proceeds to mount the NFS storage client normally, even in an abnormal situation. Subsequently, an error arises during the data copying process.

It's more like a bug (or maybe by design, IDK) of NFS server, because it returns OK for mount request with a regular file as the dirpath here.

error log:
2024/06/07 18:01:31.704360 juicefs[94967] : maxprocs: Leaving GOMAXPROCS=32: CPU quota undefined [maxprocs.go:47]
2024/06/07 18:01:31.704652 juicefs[94967] : Debug agent listening on <IP_ADDRESS>:6060 [main.go:321]
2024/06/07 18:01:31.704737 juicefs[94967] : Creating file storage at endpoint /mnt/kkk/1.txt [object_storage.go:167]
2024/06/07 18:01:31.704952 juicefs[94967] : Creating nfs storage at endpoint <IP_ADDRESS>:/mnt/hhh/1.txt [object_storage.go:167]
2024/06/07 18:01:31.731339 juicefs[94967] : Prometheus metrics listening on <IP_ADDRESS>:39805 [mount.go:135]
2024/06/07 18:01:31.731967 juicefs[94967] : Syncing from file:///mnt/kkk/1.txt to nfs://root@<IP_ADDRESS>:/mnt/hhh/1.txt [sync.go:1342]
2024/06/07 18:01:31.732039 juicefs[94967] : maxResults: 1000, defaultPartSize: 5242880, maxBlock: 10485760 [sync.go:767]
2024/06/07 18:01:31.732082 juicefs[94967] : Iterating objects from file:///mnt/kkk/1.txt with prefix  start "" [sync.go:81]
2024/06/07 18:01:31.732155 juicefs[94967] : Listing objects from file:///mnt/kkk/1.txt marker "" [sync.go:110]
2024/06/07 18:01:31.746930 juicefs[94967] : Try 1 failed: NFS3ERR_NOTDIR [sync.go:190]
2024/06/07 18:01:31.748298 juicefs[94967] : Try 2 failed: NFS3ERR_NOTDIR [sync.go:190]
2024/06/07 18:01:32.763607 juicefs[94967] : Try 3 failed: NFS3ERR_NOTDIR [sync.go:190]

We will leave this issue as it is for now, because it is not simple and is only encountered in a very specific scenario.


rename the service protocol extensions

Rename the service protocol extensions; this will keep ahead of a breaking change in the service protocol. Companion PR here: https://github.com/flutter/flutter/pull/1729.
@danrubel

(TBR)

LGTM


Nanosecond permission by default

@sirupsen could you give a bit more details on this?

I have no idea what this is referring to. Going to close.


Changing DiscreteSignal.envelope to return 0. for times outside sample range

Summary
Closes #90, causing the DiscreteSignal.envelope to return 0.0 for any time input outside of the sample range.
Details and comments
This is achieved by adding a float 0 to the start and end of the sample list, and changing the clipping accordingly. This is preferable (at first pass) to using jax conditionals due to the dependence on a DeviceArray.

Comparing the padding method vs a conditional approach, I observed a modest speedup from the padding approach, at least for a simple test case of sampling from a very simple signal n times, with ns up to 10,000,000. For example, at n=10,000,000 the sampling time for the padding approach is 1.69 and the conditional approach is 1.93. These differences can be observed in the attached python file (in text form for GitHub).
signal_demo.txt

I guess lets proceed with the padding method. I'm still a little bit weirded out by how it will impact sample manipulation in the various methods, but if we're careful it should be fine I think.


Need help for using this plugin with cordova code push

Platform: iOS
After downloading and installing the latest package using code push, we restart the app. But when we restart the app, it crashes because of
File FileUploadManager.m:
- (void)start
{
    NSURLSessionConfiguration *     configuration;

    NSParameterAssert(self.session == nil);                 // This line
...

So I was thinking if there is any way we can stop the session through the plugin before restarting the app, because I see a stop method in the same file.

This seems to be related to reloading of the page:
https://github.com/spoonconsulting/cordova-plugin-background-upload/issues/22

@imabasghar Can you try v1.0.13 on npm? This should fix your issue


Add ParsePackageIndexFromJSON

This add a function to parse an apkIndex in json format
This will be use read the apkindex from gcs instead going to the LoadBalancer

i will add a test


[gui] DockWidgets (again)

Applications should be able to decide where DockWidgets should appear. The current default is good for PyMca (obviously because it was PyMca's default) but I think it is not for silx view.
I'm afraid silx view (or NXdataView) should always show the sliders under the plot irrespective of plot size.

Should this be considered closed by #2214 ?

Yes, there is not much things we can do.


[HW]  Ananya Banerjee |  Cassandra Workshop

Name: Ananya Banerjee
Email<EMAIL_ADDRESS>Linkedin Profile: https://www.linkedin.com/in/ananya-b-982a6b51/
Attach the homework screenshots below for both step II and step III:

Looks great Ananya, thank you. I also noticed I just graded your TODO app as well. Nice to see you getting through these. Are you finding them useful? Is there anything you would like to see different in our content?

Hey Ananya Banerjee, great job! Congrats! Here is your badge! https://api.badgr.io/public/assertions/-Zv3-WEPTfamW1IT3YEzQg

Looks great Ananya, thank you. I also noticed I just graded your TODO app as well. Nice to see you getting through these. Are you finding them useful? Is there anything you would like to see different in our content?

@SonicDMG ...Definitely David...the content that is being curated for the workshops is very apt and serves a good starting point for developers like me..working as a backend developer for most of the time in my career with basic knowledge on web development , it was initially overwhelming for me when I had to start off with frontend libraries like Angular/React...most often we get tutorials covering the core topics but haven't come across live projects and use cases . You guys are doing great . This was my first stint at working with  NoSQL database (Cassandra) especially after working all the 7 years in IT with RDMBS (Oracle).I plan to take up the learning path for cassandra certification @Datastax and intend to complete it within a month or so . Moreover, I am looking forward to the Tiktok clone workshop this week !!!...You guys are doing great for the learning community...Just a suggestion , I was looking for some workshop dedicated to GraphQL and client(Apollo GraphQL). since I am very new to it .Thanks so much :)

Just a suggestion , I was looking for some workshop dedicated to GraphQL and client(Apollo GraphQL). since I am very new to it .Thanks so much :)

The Netflix clone that we are doing next week will cover graphQL BTW

Thank you so much for your feedback. I really appreciate you taking the time to write up your thoughts. I'm really happy to hear our content is helping you get some needed information. As far as getting your C* certification, that's wonderful. Always feel free to come and reach out (especially on Discord) if you ever have any questions or need anything.


Impossible to kumite

Impossible to view/edit the translation - undefined method `name' for nil:NilClass

Looks like there was a server error! (500)
We have taken note of the situation and will be looking into it.
If you would like to supply us with some details as to how this happened please visit our Github issues list. This will help us get things fixed faster.

Closing old issue. Please open a new one if this issue is still there.


GetOrigin() string extension

Hi,
I'm playing around with the InMemory Setup for IS4 and using the Postman ChromeApp to evaluate the different scenarios. Unfortuantely Postman seems to be restricted to the CORS Policy of Chrome and the IS4 gets "chrome-extension://fhbjgbiflinjbdggehcddcbncdddomop" as the origin header. I added the "fhbjgbiflinjbdggehcddcbncdddomop" string as allowed origin in the InMemoryClient Settings, but the CorsPolicy implementation of the InMemoryClient is using the string extension GetOrigin() to check the allowed cors origins and only accepts http or https protocols. Doesn't it make sense to ignore the protocol in this scenario at all?
Many thanks for your work. IS4 is really a great product!

Does Postman really honor the same origin policy? Isn't it really just a native app? I guess I'm confused since it's all about making HTTP requests in the browser to arbitrary web sites...

I just checked it again. It seems that the version of postman (chrome app), which I am using, is going to retire.  There is a new standalone app of postman without this origin issue. That solves my problem. Thank you for your support!
In spite of this, shouldn't the GetOrigin() extension ignore the protocol? Maybe the old Postman chrome app is not the only affected client.

In spite of this, shouldn't the GetOrigin() extension ignore the protocol

Not so sure -- the only context in which same-origin policy & CORS makes sense is a browser and Ajax calls, which should all be under http/s.


AppImage - Workspace Location doesn't open GTK folder selection

Issue
When opening the AppImage during the "Create New Workspace", the "choose folder" button doesn't open GTK dialog to choose path.
Environment
Version: 0.16.2
Deployment mode: AppImage
OS: Archlinux - Linux 6.10.4-zen2-1-zen
Dependancy locally installed:

cairo 1.18.0-2
desktop-file-utils 0.27-1
gcc-libs 14.2.1+r32+geccf707e5ce-1
gdk-pixbuf2 2.42.12-1
glib2 2.80.4-1
glibc 2.40+r16+gaa533d58ff-2
gtk3 1:3.24.43-1
hicolor-icon-theme 0.18-1
libsoup3 3.4.4-1
openssl 3.3.1-1
webkit2gtk-4.1 2.44.2-1

Step to reproduce

Open AppImage
Create New Workspace
Click on Workspace Location - Choose folder

Thanks for the detailed report. I'll try debugging this by pulling a VM. Ideally dialog should open across all OSes since it does nothing special.

With pleasure. Feel free to ask any complementary information.
A fallback alternative under Linux would may be to allow path edit as text box.

With pleasure. Feel free to ask any complementary information.
A fallback alternative under Linux would may be to allow path edit as text box.

Yep! Since the dialog just gives back the path string anyway.
And i have checks in place to see if the path exists or not.
Will spend some time today to see if the dialog is salvageable or will give the fallback!
Ty for patience!

@celi28  I'm thinking about something like this, should work out IMO. I'll add some validations in, but since it's not a frequent use case, I can go a bit lenient
https://github.com/user-attachments/assets/fc41beea-5268-4bfd-9ccb-83a8128251f6

@celi28 Would you be willing to try this version out
It has the above thing in place, let me know if it works out for you. This is a pre-release, so if it does work out for you, I can package it tomorrow and release it with the other improvements.
Feedback is appreciated!

@celi28 Would you be willing to try this version out
It has the above thing in place, let me know if it works out for you. This is a pre-release, so if it does work out for you, I can package it tomorrow and release it with the other improvements.
Feedback is appreciated!

Works fluently. Thanks for your quick fix :)

@celi28 Would you be willing to try this version out

It has the above thing in place, let me know if it works out for you. This is a pre-release, so if it does work out for you, I can package it tomorrow and release it with the other improvements.

Feedback is appreciated!

Works fluently. Thanks for your quick fix :)
I let you close this issue when you will push back the fix.

Lets goooooo! I'll build and deploy 0.16.3 for everyone. Will comment here when it's up so you can also download it since there's a few things added in post this beta build.
Appreciate It!

Released in v0.16.3.
Please download the latest version! @celi28


Support explict failures

I would like a fail resource that will allow me to explicitly state when execution should fail. For example, if I have a module that only supports Linux, I would like to be able to have something like:
switch "do-linux-stuff" {
  case "redhat" {
    // ...
  }
  case "debian" {
    // ...
  }
  default {
    fail {
      reason = "{{platform.OS}}: unsupported platform"
    }
  }
}

The behavior should be just like any other failing task, causing things that depend on it to fail with an appropriate reason, e.g. (dependency check failed on "do-linux-stuff")

I could use this. Right now I am hacking with something like this, but it doesn't work very well:
  default {
     task "unsupported-platform" {
       check = "/bin/false"
       apply = "/bin/false"
     }
  }

Would we maybe want to produce a warning that no conditionals have matched as a default behavior?

I wonder if this would actually make sense as a health check type thing:
switch "example-switch" {
  case "false" "example-case" { }
}

check.task "ensure-example" {
  check = "not (eq 0 ( {{lookup `macro.switch.example-switch.ran`}} ) )"
  message = "needed at least 1 branch of example-switch to have been executed, but none were"
}

Another option that might work eventually, although it would depend on what we do for passing the graph into the tasks, would be something like:
check.conditional "ensure-example" {
  switch = "example-switch"
  evaluated-branch = any // we could use a specific case name here if we wanted maybe?
  message = "we expected any branch to have been executed, but none were"
}


Add deprecation notice to v1 README

NB. Audit test failure but ignoring as this is a deprecation notice on an old version branch so only needs addressing if we have to go back and work on v1.


oc-dump-plugin via packagist for composer installation

Could you make the plugin available on packagist for automatic composer installations? I was unable to find it there.

It works :) it's
composer require inetis/dump-plugin


Is the current version compatible with patch 12.22?

just that or if needs update for offset.

For me it's working, but some bug pop out.

I'm using the oldest version, I downloaded the newest and window still pop out


Show a warning when a Flutter module depends on a plugin that only has Android v1 plugins

Since v1 plugins are written with the assumption that it will be used in full-Flutter scenarios and may have unexpected behavior in add-to-app cases.

As discussed offline today, consider adding this warning in the upcoming release when Flutter modules and pointing add-to-app users to a warning in flutter.dev/go/android-plugin-migration when V1 only plugins are used.
cc @mjohnsullivan @csells


UNLOGGED TABLE's in postgresql.

It makes a lot of sense to turn cache table into UNLOGGED TABLE for postgresql. Or provide an option to do so.
UNLOGGED TABLES turn off WAL completely. Writting into table gets a significant boost and data sizes will be smaller and will require less vacuum.
But data is easily lost, can't be synched with replicas or will not be backed. All of these drawbacks don't seem like a big problem if youre dealing with cache.
https://www.crunchydata.com/blog/postgresl-unlogged-tables
binlog in mysql functions the same, but it is not a table-specific setting.
Should we implement support for UNLOGGED TABLES? It's easy to turn on or off, at least in PG.

Unlogged tables will make you writes faster but it don't means less vacuum, what happens is the vacuum impact is not too big because the changes are not written to the WAL.
There are other tricks you can do in Postgres to reduce the WAL impact like turning off the synchronous_commit, increasing the commit_delay to a value greater than zero... and on COW filesystems you can turn of the full_page_writes.


Hidden Subscribe button

I notice that the Follow (subscribe) option is pushed to the far end corner of the page, and is barely visible. It will be helpful to make it a bit more visible.
Just a suggestion - you may bring it up on par with Like us, Follow us...

Thanks @Videhi for checking our site for bugs. This wordpress blog is as of now not reachable anymore, it has been replaced by the real site that is being launched tonight/tomorrow. Sorry this wasn't clearer before!


[Question/Feedback]: How can I easily identify all specific severity level alerts and disable them?

Check for previous/existing GitHub issues

[X] I have checked for previous/existing GitHub issues

Description
Hi,
As in the title, I am looking for the easiest way to identify and disable all level 4 severity alerts without having to go through the alzArm.param.json and disable them one by one. Example of some of the verbose alerts I would like to disable:

Potentially I would be looking at disabling level 3 as well.
Is there an easy way to do this, or do I need to manually go through, find them all, disable them all?
CTRL + F "4" in the alzArm.param.json only returns 5 hits (PDNSZQueryVolumeAlertSeverity, PIPPacketsInDDoSAlertSeverity, PIPBytesInDDoSAlertSeverity, PIPPacketsInDDoSAlertSeverity, PIPBytesInDDoSAlertSeverity) - was hoping this would return more, allowing me to easily identify all L4 alerts
Am I missing something?
Thank you in advance.

Hi @Brunoga-MS,
Thanks for getting back to me. Is there somewhere where I can look up this information to find out the severity level of each alert based on the variables in the alzArm.param.json file? I am happy to manually go through each alert and disable the verbose or informational ones but is it possible to deduce the associated severity level without deploying / triggering them?
Thanks,
Greg

Hi @Greg-Court ,
all the severity params ends with Severity", so you can simply search for that string.

Adjust the value considering the following mapping table:

Thanks,
Bruno.

Hello @Greg-Court ,
is there any further help needed on this one? if not, can it be closed?
Thanks,
Bruno.


XHR Cache Debugging info

James:

I would like to see more (or clearer) warnings/errors about using XHR Cache from SSR.
Like:

if it fails to parse / is invalid
if the cache causes an error that didn't happen server side (maybe? Might not be practical to figure that out)
if things aren't happening in the order they need to / if there's a problem with what executes server side vs what happens client side (I don't know if that's problematic, but if it is, details about that could be logged)
Essentially need to know why it's not using XHR Cache when it should be

Back story: I'm experiencing a loading 'flash' in my app right now and it seems to be making the api requests on load instead of using the cache from SSR. I haven't started digging into the XHR Cache to check if something is broken because I didn't think about it being the cause or think to check the network specifically for those ajax calls until now. Warning/error messages would have helped identify that sooner as the cause and might point to where the problem is specifically

if it fails to parse / is invalid

That at least sounds like a bug.
To the general point, can-zone could have a warning for when the cache is full but a request isn't part of the cache.

@James0x57 @justinbmeyer My above comment is the only actionable thing I got from this. I'm going to create an issue in can-zone about adding that warning. Let me know if there's anything else than can be done to aid with this.


Consider adding IPv6 tunnel info to the new Status page

Reported by reporter on 12 Feb 2011 08:57 UTC
The new Status front page looks nice. Thanks.
You might consider including 6in4 or 6to4 tunnel info in the IPv6 Wan section info. Currently it does not seem to count 6in4 tunnels as proper Wan interfaces, so info about them is not shown in the status page. IPv4 Wan info is shown correctly, but IPv6 is just shown as "Not connected".
For most users, the various tunnels will probably be the main IPv6 Wan connection form in the next few months. So, info about them would be nice.

I've recently updated from Attitude Adjustment to BarrierBreaker. I use an sixxs ipv6 tunnel to access IPv6 networks. But my WAN IPv6 Status gives the status "Not connected", in Attitude Adjustment I didn't have this problem.

I have originally reported this in 2011, and I feel that it has been fixed already. to large enough extent


Cannot invoke "java.io.File.toPath()" because the return value of "org.apache.maven.project.MavenProject.getBasedir()" is null

Describe the bug
Installed diktat 2.0 into a multimodule maven project as per the github page. Copied the diktat plugin settings from the multimodule example and changed the version to be 2.0.0 explicitly.
Expected behavior
mvn diktat:check runs and generates data about the project.
Observed behavior
Plugin fails with Cannot invoke "java.io.File.toPath()" because the return value of "org.apache.maven.project.MavenProject.getBasedir()" is null
Steps to Reproduce
I have a multimodule project with kotlin already configured. I went to the top-level project (the parent) and installed diktat, and ran mvn diktat:check - and got the error described above.
I did nothing but install diktat and run mvn diktat:check.
Environment information

diktat version: 2.0
build tool (maven/gradle): maven 3.9.6
how is diktat run (CLI, plugin, etc.): cli, mvnw; also, IDEA (using the maven wrapper, so 3.9.6)
kotlin version: 1.9.21
operating system: MacOS
link to a project (if your project is public): I'm sorry, it's not public.

@jottinger hey once again! Have you tried to run it with the same layout as we have in examples? I am checking our multi-module example and everything works well...
May be you did not add diktat-analysis.yml configuration or have some huge differences between example an your project layout?

I added a diktat-analysis.yml to the project, yes, although the "see how we do it here" didn't point that out clearly. (Always assume your users are idiots!) I have four modules; all follow the same conventions for kotlin; all mirror pretty tightly (as far as I can see) the multi-module example you have.

I THOUGHT it might have been because one of the projects has no actual kotlin to check - src/main/kotlin and src/test/kotlin exist, but were empty (it's a placeholder project for transitive dependencies). So I added files in those trees just to give it something to look for; same problem, and it doesn't really seem related to the error anyway.


ADD README OF THE PAGE

I have given your README a completely new look and added simplified text that is highly useful for new contributors. I incorporated the text you provided and made sure it enhances the overall appeal of the document. Please review my changes and let me know if there are any issues. If you have any concerns, feel free to assign me to the relevant issue, and I will address it as soon as possible.

HII PLEASE ASSIGN ME THE ISSUE  @B4CKF1SH @SahilAnower

Please assign it to me I am pupil at cf @roshan1337d

@PatilHarshh I am working on it, you can give ideas if you want

@SahilAnower @saimaheshtaduri  please assign it to me i will send you PR tomorrow

@Ayush-Tibrewal assigned this to you. Happy GSSoC, good luck 🚀

@SahilAnower @saimaheshtaduri please assign it to me i will send you PR tomorrow

Don't forget to remove Google Kickstart from Readme as it exists only in our memories now.

can we collaborate ? @Ayush-Tibrewal  @roshan1337d

@PatilHarshh I m done with this task,
If there is changes needed
we can collaborate.
Thank you


METRON-1730: Update steps to run pycapa on Centos 6

Contributor Comments
https://issues.apache.org/jira/browse/METRON-1730
This is piggybacking off of the Kerberos work in https://github.com/apache/metron/pull/1136.  I took the steps I outlined in https://github.com/apache/metron/pull/1130#issuecomment-407653513, as needed for testing PCAP, and added them to the Pycapa README. I also fixed some href links that weren't working in the docbook version of the site.
To test, run through the install procedure installed in the README. Run the sample command provided for producing pcap data to kafka and verify records are being written.
Pull Request Checklist
For all changes:

[x] Is there a JIRA ticket associated with this PR? If not one needs to be created at Metron Jira.
[x] Does your PR title start with METRON-XXXX where XXXX is the JIRA number you are trying to resolve? Pay particular attention to the hyphen "-" character.
[x] Has your PR been rebased against the latest commit within the target branch (typically master)?

For code changes:

[x] Have you included steps to reproduce the behavior or problem that is being changed or addressed?

[x] Have you included steps or a guide to how the change may be verified and tested manually?

[x] Have you ensured that the full suite of tests and checks have been executed in the root metron folder via:
mvn -q clean integration-test install && dev-utilities/build-utils/verify_licenses.sh

[x] Have you verified the basic functionality of the build by building and running locally with Vagrant full-dev environment or the equivalent?

For documentation related changes:

[x] Have you ensured that format looks appropriate for the output in which it is rendered by building and verifying the site-book? If not then run the following commands and the verify changes via site-book/target/site/index.html:
cd site-book
mvn site

Note:
Please ensure that once the PR is submitted, you check travis-ci for build issues and submit an update to your PR as soon as possible.
It is also recommended that travis-ci is set up for your personal repository such that your branches are built there before submitting a pull request.

+1, thanks for cleaning this up, it's super helpful to have this cleanly working again, especially as the PCAP UI has been shaping up.


Mac OS User GUI implementation

The first issue faced was the "Unsupported device, Only tested on windows". Once three lines of code were commented out to fix the previous issue, as in the screenshot is where we get stuck, that is when we are trying to connect to the rasperry pi via GUI-serial comms. I'm assuming the issue is primarily because on a mac the serial connection and ssh for pi can be achieved only when using g_ether not g_serial in the config files.

Are there other options in the serial port dropdown menu? The selected option does not look right

Hi Ramy,
No there are no other options, we even tried refreshing and restarting.
Cheers,
Adlin.
On Fri, Feb 26, 2021 at 9:19 AM Ramy ElMallah<EMAIL_ADDRESS>wrote:

Are there other options in the serial port dropdown menu? The selected
option does not look right
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/RamyE/SFU_ML/issues/9#issuecomment-786780191, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AO527I4T354UOH34AYCEYM3TA7JZBANCNFSM4YIYZR2A
.

--
Regards,
Adlin Sharon Alwyn
MASc Candidate, Mechatronics Systems Engineering,
Simon Fraser University.

I am not quite sure why you have to use g_ether rather than g_serial? That won't allow serial communication over the USB otg

SSH is irrelevant of all the usb otg configs so it should work anyways. Using g_serial is necessary to have serial communication (and I think for the com port to show as well)

I will try again, and let you know. I remember when I looked online for
serial communication most Mac users used g_ether to ensure internet
connection can be shared to the Pi. I’ll update my SD and let you know what
I find.
Cheers,
Adlin.
On Fri, Feb 26, 2021 at 9:20 AM Ramy ElMallah<EMAIL_ADDRESS>wrote:

I am not quite sure why you have to use g_ether rather than g_serial? That
won't allow serial communication over the USB otg
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/RamyE/SFU_ML/issues/9#issuecomment-786781087, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AO527I6YBBVRPG57FNHKAF3TA7J7HANCNFSM4YIYZR2A
.

--
Regards,
Adlin Sharon Alwyn
MASc Candidate, Mechatronics Systems Engineering,
Simon Fraser University.

I believe g_ether is an alternative to your WiFi connection. So, if after changing it, the SSH doesn't work anymore, there may be a problem with the wpa_supplicant.conf. The RPi needs to be connected to the network wirelessly for the purpose of this

Okay, thanks for letting me know, I’ll keep an eye out for it.
On Fri, Feb 26, 2021 at 9:28 AM Ramy ElMallah<EMAIL_ADDRESS>wrote:

I believe g_ether is an alternative to your WiFi connection. So, if after
changing it, the SSH doesn't work anymore, there may be a problem with the
wpa_supplicant.conf. The RPi needs to be connected to the network
wirelessly for the purpose of this
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/RamyE/SFU_ML/issues/9#issuecomment-786785228, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AO527IYW4KMDCJWTCL3AVXTTA7K3ZANCNFSM4YIYZR2A
.

--
Regards,
Adlin Sharon Alwyn
MASc Candidate, Mechatronics Systems Engineering,
Simon Fraser University.

Hi Ramy,
So the g_serial worked both with wifi and ssh, and the GUI picked up a USB
connection but the error still persists. Here's the attached screenshot.
Also I've cc'd my lab partner in the email.
Regards,
Adlin Alwyn
On Fri, Feb 26, 2021 at 9:34 AM Adlin Sharon<EMAIL_ADDRESS>wrote:

Okay, thanks for letting me know, I’ll keep an eye out for it.
On Fri, Feb 26, 2021 at 9:28 AM Ramy ElMallah<EMAIL_ADDRESS>wrote:

I believe g_ether is an alternative to your WiFi connection. So, if after
changing it, the SSH doesn't work anymore, there may be a problem with the
wpa_supplicant.conf. The RPi needs to be connected to the network
wirelessly for the purpose of this
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/RamyE/SFU_ML/issues/9#issuecomment-786785228, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AO527IYW4KMDCJWTCL3AVXTTA7K3ZANCNFSM4YIYZR2A
.

--
Regards,
Adlin Sharon Alwyn
MASc Candidate, Mechatronics Systems Engineering,
Simon Fraser University.

Sorry sent in the wrong screenshot.
Regards,
Adlin Alwyn
On Fri, Feb 26, 2021 at 10:34 AM Adlin Sharon<EMAIL_ADDRESS>wrote:

Hi Ramy,
So the g_serial worked both with wifi and ssh, and the GUI picked up a USB
connection but the error still persists. Here's the attached screenshot.
Also I've cc'd my lab partner in the email.
Regards,
Adlin Alwyn
On Fri, Feb 26, 2021 at 9:34 AM Adlin Sharon<EMAIL_ADDRESS>wrote:

Okay, thanks for letting me know, I’ll keep an eye out for it.
On Fri, Feb 26, 2021 at 9:28 AM Ramy ElMallah<EMAIL_ADDRESS>wrote:

I believe g_ether is an alternative to your WiFi connection. So, if
after changing it, the SSH doesn't work anymore, there may be a problem
with the wpa_supplicant.conf. The RPi needs to be connected to the network
wirelessly for the purpose of this
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/RamyE/SFU_ML/issues/9#issuecomment-786785228, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AO527IYW4KMDCJWTCL3AVXTTA7K3ZANCNFSM4YIYZR2A
.

--
Regards,
Adlin Sharon Alwyn
MASc Candidate, Mechatronics Systems Engineering,
Simon Fraser University.

I can't see a screenshot, but if it is the same error about setting a buffer size, please try commenting out that line and try again

Hi Ramy,
Sounds good, I'll try.  Here again is the screenshot btw. Can you confirm
if what you see in the serial port of the GUI is correct?
[image: Screen Shot 2021-02-26 at 10.28.33 AM.png]
Regards,
Adlin Alwyn
On Fri, Feb 26, 2021 at 11:00 AM Ramy ElMallah<EMAIL_ADDRESS>wrote:

I can't see a screenshot, but if it is the same error about setting a
buffer size, please try commenting out that line and try again
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/RamyE/SFU_ML/issues/9#issuecomment-786834644, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AO527I5FPXD6KBM76O67BXDTA7VUHANCNFSM4YIYZR2A
.

Still cannot see the screenshot, would you mind uploading it in a comment directly rather than through an email reply?

There you go

Done!
Regards,
Adlin Alwyn
On Fri, Feb 26, 2021 at 11:05 AM Ramy ElMallah<EMAIL_ADDRESS>wrote:

Still cannot see the screenshot, would you mind uploading it in a comment
directly rather than through an email reply?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/RamyE/SFU_ML/issues/9#issuecomment-786837298, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AO527IYDOQUOSJTGRJI4E2DTA7WIBANCNFSM4YIYZR2A
.

This may not be the right serial port (not sure what the right one should
show up as though), can you show what other options you have in the
dropdown menu? You can also try to unplug it and refresh the list and see
which one shows up when u plug it that was not in the list before.
On Fri, 26 Feb 2021 at 11:07, Adlinalwyn<EMAIL_ADDRESS>wrote:

Done!
Regards,
Adlin Alwyn
On Fri, Feb 26, 2021 at 11:05 AM Ramy ElMallah<EMAIL_ADDRESS>wrote:

Still cannot see the screenshot, would you mind uploading it in a comment
directly rather than through an email reply?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/RamyE/SFU_ML/issues/9#issuecomment-786837298, or
unsubscribe
<
https://github.com/notifications/unsubscribe-auth/AO527IYDOQUOSJTGRJI4E2DTA7WIBANCNFSM4YIYZR2A
.

—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/RamyE/SFU_ML/issues/9#issuecomment-786838209, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/ABQJJGAHF7DCZCASGYBBL5DTA7WPJANCNFSM4YIYZR2A
.

So did everything you and here's what I got

Also when I checked on what the usb that shows is, this is what i find.

And that is the correct location of the pi

interesting 🤔 it's likely the right port then. What other errors do you get after commenting out the set_buffer_size?

So it seems to be working now, but looking for a lab1model, which isn't there, the directory only has labTestmodel on the pi.

Sorry It works after I commented out the set_buffer thing, just wont find the model. :/ did i miss a step somewhere. I have setup the pi to run the code automatically.

You will need to transfer your trained model to the saved_models folder on
the RPi and then enter its name in the model field
On windows, I use WinSCP, try to find an alternative for mac to transfer
files over SCP, I assume there will be a lot of them.
On Fri, Feb 26, 2021 at 11:54 AM Adlinalwyn<EMAIL_ADDRESS>wrote:

Sorry It works after I commented out the set_buffer thing, just wont find
the model. :/ did i miss a step somewhere. I have setup the pi to run the
code automatically.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/RamyE/SFU_ML/issues/9#issuecomment-786861128, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/ABQJJGAHVRD5FEBJIVUNXQ3TA7367ANCNFSM4YIYZR2A
.

Yes, Sounds good. Thank you so much Ramy, I'll take it from here and email you if anything else comes up. But seems like the issue is dealt with. Thanks again.

Great! I'll keep this issue open for now, please let me know when you have it fully working (getting results) and then we can close the issue.

Completed one entire process, I'm assuming we can't run more than one input field at a time?

Why not? You should see a dialog box after pressing Start Processing asking
which features/input fields you want to use
On Fri, Feb 26, 2021 at 12:20 PM Adlinalwyn<EMAIL_ADDRESS>wrote:

[image: Screen Shot 2021-02-26 at 12 18 55 PM]
https://user-images.githubusercontent.com/62631843/109350797-fccb2d00-782c-11eb-8963-0ad1decb98ee.png
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/RamyE/SFU_ML/issues/9#issuecomment-786873410, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/ABQJJGHW5LVZXEQC75ZCQPLTA77BPANCNFSM4YIYZR2A
.

When i check all three or two input fields - it throws the following error.

That's because the model you selected was trained with one feature, so you
need to select the same feature. Just use a model trained with more
features. There is a section about this error in the troubleshooting
section of the manual.
On Fri, Feb 26, 2021 at 12:24 PM Adlinalwyn<EMAIL_ADDRESS>wrote:

When i check all three or two input fields - it throws the following error.
[image: Screen Shot 2021-02-26 at 12 23 37 PM]
https://user-images.githubusercontent.com/62631843/109351116-8d097200-782d-11eb-8020-21a5fcf0777b.png
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/RamyE/SFU_ML/issues/9#issuecomment-786875367, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/ABQJJGDNBSHVULI4O7CE7GDTA77QVANCNFSM4YIYZR2A
.

Makes 100% sense. Thanks Ramy, for your patience and time.


traceback.print_exc() shows stacktrace of cython layer, but traceback.print_stack() does not

print_exc()
hello.pyx
import traceback

try:
    raise
except:
    traceback.print_exc()

=>
Traceback (most recent call last):
  File "hello.pyx", line 4, in hello (hello.c:1050)
    raise

print_stack()
hello.pyx
import traceback

traceback.print_stack()

=>
  File "/home/sonots/.pyenv/versions/3.6.1/lib/python3.6/traceback.py", line 186, in print_stack
    print_list(extract_stack(f, limit=limit), file=file)

This does not show File "hello.pyx", line 4, in hello (hello.c:1050)

This is because in Cython one doesn't really have Python frames (we just insert fake ones when an exception is raised).
There are similar issues for using inspect to try to get at a Cython caller. It's probably infeasible, and certainly a performance hit, to create/inject these frames on every function call.

Is there a more general feature request that we can check on regarding this? The documentation says
"Currently we generate fake tracebacks as part of exception propagation, but don’t fill in locals and can’t fill in co_code. To be fully compatible, we would have to generate these stack frame objects at function call time (with a potential performance penalty). We may have an option to enable this for debugging."

Hi, could this be related to the strange behavor of warnings raised from Cython? If fake Python frames are only generated for raised exceptions, then I can see why warnings are not able to correctly refer to a line in a pyx file.
We asked a corresponding question on the cython-user list.
https://groups.google.com/forum/#!topic/cython-users/hLNi1y4-Htg

Hi, could this be related to the strange behavor of warnings raised from Cython? If fake Python frames are only generated for raised exceptions, then I can see why warnings are not able to correctly refer to a line in a pyx file.

Indeed. Effectively, it's as if warnings raised from Cython have stacklevel=2 by default. The only way around would be to special-case warn in the Cython compiler to insert a fake stack frame just like raise does.

...and even if Cython special-cases warn(), that still wouldn't fix cases where warnings are raised indirectly. Consider this example from the Python docs:
def deprecation(message):
    warnings.warn(message, DeprecationWarning, stacklevel=2)

Suppose that deprecation() is implemented in a plain Python file. Then calling deprecation() from Cython would hit the same bug. Since Cython doesn't know what deprecation() does, there is no way for Cython to fix that.

You could try if enabling profiling support fixes this.

 Since that sounds like something I could easily do myself, I am wondering why it would be a problem to just automatically do this in traceback itself.
(If that slows print_stack() down I doubt anyone cares, you don't usually call print_stack() when in a performance hotspot unless you have other issues to deal with than performance)

why doesn't Cython somehow get traceback.print_stack() to throw an exception

How would you do that?

Since that sounds like something I could easily do myself

Could you show your proof of concept for that?

Well as I said before, it was just a naive suggestion. I tried it now and it doesn't work, it traces back only up to the function where the error was thrown, which is essentially useless when doing it inside some dedicated get_backtrace function.

Trackebacks are added as the exception propagates upwards; for debugging you could simply raise an exception to see where you are.

Of course I could, but that falls super flat once you have any more complex scenario (like, any case where you need a bunch of tracebacks at different places to get a bigger picture). It would be really useful if there was a way to get traceback.print_stack() to work, no matter how slow it is.
Maybe I'm the only one who needs that sometimes, but I definitely do, and it's a real pain that in Cython I can't make it work...

Another scenario where raising exceptions aren't really a useful approach to this is in a hang check, where I usually print a backtrace to the log. Raising an exception there is just not a useful thing to do since there are some cases where an action just takes way longer but isn't stuck, so a random kill doesn't do any good. The backtrace however is very useful, for getting a starting point for where the performance problem is.
Summed up, there are a few cases where an exception either just doesn't cut it, or makes the process exceptionally more painful. (Exaggerated to make my point: of course I can debug everything with just print, but I'll still need 10x the time compared to when I have proper tools.)

Okay, so right now I'm in this situation:

I need to see the backtrace of a function being called most likely when it shouldn't be
This is amidst 20+ other calls to this function

This has left me with the following things I've tried:

traceback.print_stack() doesn't work
pdb doesn't work (wrong backtrace)
throwing an error might work, but I can't do that because I don't know which of the calls is the one I'm interested in. I'd need to compile in a counter, recompile and rerun 20 times or something like that, to assemble all the backtraces manually. since not all of this code might even be fully deterministic (python sets, events triggered by wayland/X11 outside of my control, ...) this approach is close to useless for the more complex cases
gdb with python debugging tools + cython code compiled with debug symbols I would need to set a breakpoint but I don't even know where, also I would need to stop at every occurrence and print it out instead of being able to get a quick overview of all backtraces with one run through which I can scroll through, making this also complicated, error-prone, and super inefficient

Quite frankly, I feel like my best option is just to avoid Cython where I can!
If there was just an optional flag, even just at compile time applying to everything and making everything 10x slower, that would universally enable traceback.print_stack() this would fundamentally improve my debugging situation. Like, magnitudes! I'm afraid at some point things will be so undebuggable for me that I will spend most of my bugfixing time fighting with this limitation. (see below for details on why I often need to debug scenarios like this)
I understand if this is a resources issue since after all this is an open-source community effort, but it sounds like this issue isn't even really taking into consideration.
Therefore: would you possibly consider rethinking the usefulness of this? Are there any other options I have that are less of a nightmare to use?

 The event propagations can get very complicated very quickly, and seeing backtraces is super-essential to get an overview if any of these shouldn't be happening because there are tens if not hundreds firing with relatively simple things like a complex layout being resized. And debugging this is the main thing to look at for tons of issues like bad perf, wrong layouts, back-and-forth interactions that shouldn't be happening, ... which are also the class of bugs that are hardest to debug in a complex UI framework, so having Cython have such a major negative impact here is really making me question my increasing usage of it

The problem isn't so much the usefulness of traces, it's that Cython doesn't use the stack frames since it's not Python code in the first place. It would be theoretically possible to add a directive that makes Cython functions add/remove dummy frames whilst they're running, which would make that work. Someone just needs to implement it.

Cython already has Python tracing support which you could enable and use. Write your own profiling or tracing function and have it print the names of the functions that it passes through.

Is that tracing function something that checks debug symbols? What happens if I try to backtrace out of actual python (not-cython) code and it goes back into Cython, or the other way around? That sounds potentially complicated

https://stackoverflow.com/questions/8315389/how-do-i-print-functions-as-they-are-called
Stack traces might also "just work" when profiling is enabled, since Cython uses frames for it. If not, then enabling them with a new directive probably isn't difficult.

This also claims to support Cython: https://pypi.org/project/hunter/

https://stackoverflow.com/questions/8315389/how-do-i-print-functions-as-they-are-called
Anything but regular backtraces bubbling upwards is way less useful to me. I need to filter as much as I can since there is so much going on, so I really only want the call traces ending up at a certain spot (like where'd I trigger traceback.print_stack()) and not all of them. It might still help but it's not really a replacement of the same usefulness

Stack traces might also "just work" when profiling is enabled, since Cython uses frames for it. If not, then enabling them with a new directive probably isn't difficult.

That sounds very useful! That'd be very cool, I'll check it out if enabling profiling already helps. Would that be "profile": True? If it doesn't then a new directive really would be super awesome! I also saw a mention of "linetracing": True - maybe a doc section about how to use traceback.print_stack() specifically would be useful if we ever figure this out so others can find how to do it via google

This also claims to support Cython: https://pypi.org/project/hunter/

Nice, that sounds like the next best option! Although it would of course be cooler if traceback.print_stack() worked with the right compile options without an external lib, but hey I'll take what I can :smile:

Ok, I just tried to get this work with the following options:
DEBUG_BUILD=True
...

            cythonize(
                full_path,
                include_path=[os.path.join(os.path.dirname(
                os.path.abspath(__file__)), "src")],
                gdb_debug=DEBUG_BUILD,
                compiler_directives={
                    'always_allow_keywords': True,
                    'boundscheck': True,
                    'language_level': 3,
                    'profile': DEBUG_BUILD,
                    'linetrace': DEBUG_BUILD,
                }
            )

This is the result:
DEBU 2019-5-4-06:45:01+0 wobblui: EVENT TRIGGER: relayout ON <wobblui.ImageButton original_image='/home/jonas/.local/lib/python3.7/site-packages/wobblui-2018.8.post2-py3.7-linux-x86_64.egg/wobblui/img/folder.png'>
  File "./main.py", line 20, in <module>
    main()
  File "/home/jonas/.local/lib/python3.7/site-packages/myprog/main.py", line 122, in main
    event_loop(app_cleanup_callback=app_clean)

(The traceback should be at least 3 entries long with 2+ .pyx entries, so sadly it doesn't work...)

Is what I tested there useful? Just making sure I actually tried the right thing regarding Stack traces might also "just work" when profiling is enabled hoping it helps establishing whether a new option would make sense or not


RemoveRecipientMention does not remove a Skype bot mention

Version
All versions (including V3)
Describe the bug
When a bot is @mentioned on the Skype channel, it will receive a mention.Text in the following format:
Skype
Text: "healthtest  this is just a test"
{{
  "mentioned": {
    "id": "28:2bc5b54d-5d48-4ff1-bd25-03dcbb5ce918"
  },
  "text": "<at id=\"28:2bc5b54d-5d48-4ff1-bd25-03dcbb5ce918\">healthtest</at>"
}}

Due to this, ActivityExtensions.RemoveRecipientMention does nothing on Skype.  Other channels send @mentions in this format:
Teams
Text:"<at>healthtest</at> this is a test\n"
{{
  "mentioned": {
    "id": "28:2bc5b54d-5d48-4ff1-bd25-03dcbb5ce918",
    "name": "healthtest"
  },
  "text": "<at>healthtest</at>"
}}

To Reproduce
Steps to reproduce the behavior:

Add a bot to a Skype group chat
@mention the bot
Call turnContext.Activity.RemoveRecipientMention();
Echo the text back to the user
Notice that the bot @mention is not removed

Expected behavior
Either 1) the skype connector service should send @mentions in a format similar to teams or 2) the RemoveRecipientMention should handle Skype @mentions
Screenshots

Additional context
Ugly workaround for Skype bots:
            foreach (var mention in turnContext.Activity.GetMentions().Where(mention => mention.Mentioned.Id == turnContext.Activity.Recipient.Id))
            {
                int index = mention.Text.IndexOf('>');
                var nextIndex = mention.Text.IndexOf('<', index);
                var mentionText = mention.Text.Substring(index + 1, nextIndex - index - 1);
                turnContext.Activity.Text = turnContext.Activity.Text.Replace(mentionText, "").Trim();
            }

[bug]

Opened PR #1935 for this - saw it thought it would probably be a quick fix. I have changed the logic to first grab the mentioned display name using a regex and strip it, which should work for all channels. Then clean up any left over empty  tags.
Altered to....
foreach (var mention in activity.GetMentions().Where(mention => mention.Mentioned.Id == id))
            {
                var mentionNameMatch = Regex.Match(mention.Text, @"(?<=<at.*>)(.*?)(?=<\/at>)", RegexOptions.IgnoreCase);
                if (mentionNameMatch.Success)
                {
                    activity.Text = activity.Text.Replace(mentionNameMatch.Value, string.Empty);
                    activity.Text = Regex.Replace(activity.Text, "<at></at>", string.Empty, RegexOptions.IgnoreCase);
                }
            }


Inference on own data

I want to run the inference on our data using dales p retrained weights. my data classes is similar to dales data classes. how can i convert my data into proper format. or how can i run the inference on my data.

Please have a look at the guidelines for creating your own dataset.
An important rule (that I will make clearer in future releases) for creating your own dataset is that your points must have labels within $[0, C]$, where:

$C$ is your BaseDataset's num_classes
giving the $C$ label to a point marks it as void/ignored/unlabeled (whichever you call it) and will exclude it from metrics and losses computation
all labels $[0, C - 1]$ are assumed to be present in your dataset and will be used in metrics and losses computation

To this end, I recommend you make sure the output of your read_single_raw_cloud  method never has labels outside of your $[0, C]$ range. Besides, if some labels in $[0, C - 1]$ are not useful to you (ie absent from your dataset), I recommend you densely remap your labels to another $[0, C_2 - 1]$ range (you can use torch_geometric.nn.pool.consecutive.consecutive_cluster for that, for instance), while making sure you only use the label $C_2$ for void/ignored/unlabeled points.


setItem triggers Fingerprint on Android

The following code (from the docs) triggers the fingerprint auth in Android while in iOs does not triggers (correctly) the Face ID.
Using v6 @next
I did expect a validation to retrieve the data, but not to store it for first time. Is it right? what is the expectation?
import SInfo from 'react-native-sensitive-info';

const savingFirstData = await SInfo.setItem('key1', 'value1', {
    sharedPreferencesName: 'mySharedPrefs',
    keychainService: 'myKeychain',
    touchID: true, //add this key
    showModal: true, //add this key
    kSecAccessControl: 'kSecAccessControlBiometryAny' // optional - Add support for FaceID
});

@mCodex This issue was reported before: https://github.com/mCodex/react-native-sensitive-info/issues/226
Nevertheless, while on iOs everything runs smooth, Android user experience is not that good (like require 2 times the fingerprint because of 1 get and a successive set).
Playing with the options (adding them in get or set) produces very different effects depending in the platform.
For example, iOs ignores the options (see example above) during the set, while Android honors them.

@artola it would be great if we could save into the keystore without having to use the fingerprint. Then the problem of seeing the fingerprint modal two times would be solved.
Thanks for your work!

@mCodex If the library is somehow upgraded for Api level 30 supporting setUserAuthenticationParameters it would allow us to pass the timeout and auth type required, with a timeout of several seconds will allow to set/get without invoking again and again the auth.
https://developer.android.com/reference/android/security/keystore/KeyGenParameterSpec.Builder#setUserAuthenticationParameters(int, int)
Just after setting the requirement for auth, add the extra options herein:
https://github.com/mCodex/react-native-sensitive-info/blob/1575f8992ff7113443199bce5a3fb1e11392878d/android/src/main/java/br/com/classapp/RNSensitiveInfo/RNSensitiveInfoModule.java#L367

Thanks for pointing this out. I totally agree with you thinking about UX is not good.
I'd like to fix this, because I'm very concerned about UX stuff.

hi @mCodex and @artola do you have any plans of working on this?


Break afu_platform_config into multiple modules

One module for loading JSON dbs
One module for emitting configuration files
Teach Python zipper to handle sources that are updated by CMake

No new behavior -- just significant refactoring. The module was getting way too big. The zipped image uses exactly the same CMake macro used by the packager.
Tests pass: http://sw-pert.altera.com/pert/pert.php?test_run_id=2174446

Hi Michael, can you please add Tracy and I to the reviews?
This project involves several other users too.

@abelardojarab, no it isn't changing any arguments or semantics. It's just cleanup.

@abelardojarab, it says you requested changes, but I can't find them. Where?


[kibana] add support for loadBalancerSourceRanges

[x] Chart version not bumped (the versions are all bumped and released at the same time)
[ ] README.md updated with any new values or changes
[x] Updated template tests in ${CHART}/tests/*.py
[ ] Updated integration tests in ${CHART}/examples/*/test/goss.yaml

Since this is a community submitted pull request, a Jenkins build has not been kicked off automatically. Can an Elastic organization member please verify the contents of this patch and then kick off a build manually?

jenkins test this please

@jmlrt thank you for your review.
i might update README.md with wrong procudure.
i hope this is still a valid pull request.

jenkins test this please


Sphinx setup should be stricter

I noticed that some of the docs pages are unreachable when navigating from the main RTD page. In particular, I know that there's history.rst that is only accessible if one knows the URL upfront.
I tracked this to https://github.com/pypa/setuptools/pull/2097 which removes entries from the TOC but doesn't reintroduce them in other places.
Sphinx has a few toggles that make it nitpicky about warnings. I think this should be enabled in the CI to prevent such problems in the future. This should catch implicit orphan pages as well as dead references or typos.

I take the blame for a lot of breaking links as I ran out of steam in the middle of the docs revamp. I think jaraco felt that the halfway efforts still made a readable documentation and decided to merge them anyways, and fix the issues subsequently. See (here)[https://github.com/pypa/setuptools/issues/2093#issuecomment-697985806] for the context
I do plan on making more changes here and there to fix those issues and am happy to see the doc is receiving more supports and attention:)

@alvyjudy please hold on with your PRs. I've got a huge change fixing many refs and enforcing the checks incoming. Let's merge it first so that the CI would verify any further changes automatically.

Here you go: https://github.com/pypa/setuptools/pull/2427.


[SlashTags] Add file and files kwargs to the send override

Modifies http/httpclient.py's send_message method to use form/file kwargs to request rather than json. This mimics the existing behavior for how files are sent in dpy.
This PR is not extensively tested, I advise ensuring this does not break existing behavior and that the new behavior works as expected prior to merging.
Thanks to @aikaterna for testing and fixing the bugs that were found during testing.

Thanks for the PR!


Remove scalars from the SDFG init signature.

Adds SDFG.init_signature that is used for code generation.

FPGA failure doesn't look related


Make _Stub classes concrete by reiterating all of the methods

Generated _Stub classes are intended to be concrete. Generate
non-abstract stubs for all of the methods in order to accomplish this.
This is kind of ugly, but so it goes.

lgtm thanks! This change makes sense.


dotnet restore on debian 9 dotnet sdk 2.0.3 fails to download any packages

I downloaded the minimal install of debian 9 and installed it using defaults.
Then I followed the directions for installing dotnet sdk. I ran:
export PATH=$PATH:$HOME/dotnet
mkdir test0
cd test0
dotnet new mvc
dotnet restore

The restore command printed out:
  Restoring packages for /home/dvogel/test0/test0.csproj...
  Restore completed in 39.83 ms for /home/dvogel/test0/test0.csproj.
  Restore completed in 60.96 ms for /home/dvogel/test0/test0.csproj.

That output looked successful at first but a subsequent dotnet build will fail due to missing packages. The $HOME/.nuget/packages directory is empty.
Here's an OVA exported from virtualbox: http://acfa3ee7d7a82c5cc99c3982b6dab6ab.s3.amazonaws.com/dotnet-devel1.ova (password is "microsoft" for both the root and dvogel accounts).
The PATH change seems suspect because nothing is actually installed into $HOME/dotnet and the dotnet commands don't seem to create any files in that directory.

Issue moved to dotnet/cli #8203 via ZenHub