PublishCodeCoverageResults@2 fails to write report to reportDirectory

Required Information
Type: Bug
Task Name: PublishCodeCoverageResults@2
Environment

Server: Azure Pipelines
Agent: MS hosted Ubuntu-22.04

Issue Description
PublishCodeCoverageResults@2 produces an invalid command to the underlying program
Ran with the following template
steps:
  - task: UseDotNet@2
    inputs:
      packageType: 'sdk'
      version: '2.1.x'
  - task: PublishCodeCoverageResults@2
    inputs:
      codeCoverageTool: Cobertura
      summaryFileLocation: '$(Agent.TempDirectory)/**/coverage.cobertura.xml'

Error logs
Starting: PublishCodeCoverageResults
==============================================================================
Task         : Publish code coverage results
Description  : Publish any of the code coverage results from a build
Version      : 2.215.0
Author       : Microsoft Corporation
Help         : https://docs.microsoft.com/azure/devops/pipelines/tasks/test/publish-code-coverage-results
==============================================================================
CoveragePublisher.Console 1.0.0
Copyright (C) 2023 CoveragePublisher.Console

ERROR(S):
  Option 'reportDirectory
/home/vsts/work/_temp/c2a6c08c-dd26-417e-925a-9a9502100a9e' is unknown.

  --reportDirectory    (Default: ) Path where html report will be generated.

  --sourceDirectory    (Default: ) List of source directories separated by ';'.

  --timeout            (Default: 120) Timeout for CoveragePublisher in seconds.

  --noTelemetry        (Default: false) Disable telemetry data collection.

  --help               Display this help screen.

  --version            Display version information.

  value pos. 0         Required. Set of coverage files to be published.

Found 2 result(s) matching pattern: /home/vsts/work/_temp/**/coverage.cobertura.xml
/home/vsts/work/_temp/595a46d5-239e-47eb-8b18-452278343573/coverage.cobertura.xml
/home/vsts/work/_temp/_fv-az363-480_2023-02-13_14_17_13/In/fv-az363-480/coverage.cobertura.xml
/opt/hostedtoolcache/dotnet/dotnet /home/vsts/work/_tasks/PublishCodeCoverageResults_2a7ebc54-c13e-490e-81a5-d7561ab7cd97/2.215.0/node_modules/coveragepublisher/CoveragePublisher/CoveragePublisher.Console.dll "/home/vsts/work/_temp/595a46d5-239e-47eb-8b18-452278343573/coverage.cobertura.xml" "/home/vsts/work/_temp/_fv-az363-480_2023-02-13_14_17_13/In/fv-az363-480/coverage.cobertura.xml" --reportDirectory /home/vsts/work/_temp/c2a6c08c-dd26-417e-925a-9a9502100a9e
Finishing: PublishCodeCoverageResults

@etkr, I am also experiencing this issue. Did you find a workaround?

Me too! Here is the job:
- job: Combine_code_coverage_report
    dependsOn:
      - ExperimentationSystem_Tests
      - DataSystem_Build
    steps:
      - task: DownloadPipelineArtifact@2
        inputs:
          artifact: DataSystemCoverage
          path: $(System.DefaultWorkingDirectory)/data_system/
      - task: DownloadPipelineArtifact@2
        inputs:
          artifact: ExpSystemCoverage
          path: $(System.DefaultWorkingDirectory)/experimentation_system/
      - task: UseDotNet@2
        inputs:
          version: "2.1.x"
      - task: PublishCodeCoverageResults@2
        inputs:
          summaryFileLocation: "$(System.DefaultWorkingDirectory)/**/@(Cobertura|coverage).xml"

Same here, task version 2.215.0 fails with the error mentioned above.
As a workaround I now use PublishCodeCoverageResults@1 again.

Ran into the exact same issue. Seems like it's time for a @3.
Why do we need to use a dotnet version that's end of life anyway?

Hi, everyone!
I did an workaround for this issue.
Im just bypassing the native task and running it as a CmdLine.
Notice the tasks UseDotnet@2 and PublishCodeCoverageResult@2 are nedded for download task dependencies.
`steps:

task: UseDotNet@2
inputs:
packageType: 'sdk'
version: '2.1.x'

task: Npm@1
inputs:
command: 'install'
customCommand: 'Npm install'

task: Npm@1
inputs:
command: 'custom'
customCommand: 'run coverage'
displayName: 'Tests Running'
continueOnError: true

task: PublishCodeCoverageResults@2
condition: eq('true', 'false') # THIS WILL NEVER RUN ONCE IS NEEDE TASK DECLARATION TO DOWNLOAD IT SOURCES
inputs:
summaryFileLocation: PATH/TO/YOUR/COVERAGE.xml

here the magic happens
CREATE A DIR TO USE IN reportDirectory parameter
Run publish as bash command

task: CmdLine@2
displayName: Publish Code Coverage
env: { 'SYSTEM_ACCESSTOKEN': $(System.AccessToken) }
inputs:
script: |
mkdir /home/vsts/work/_temp/cobertura
/opt/hostedtoolcache/dotnet/dotnet find /home/vsts/work/_tasks/ -name CoveragePublisher.Console.dll "PATH/TO/YOUR/COVERAGE.xml" --reportDirectory /home/vsts/work/_temp/cobertura

Ran into the exact same issue. Seems like it's time for a @3. Why do we need to use a dotnet version that's end of life anyway?

My though exactly - this whole thing is just a big facepalm. And why can't the mess be encapsulated instead of irritating all ADO users, after all it's not exactly rocket-science going on here...

Any updates on this?

For the net2.1 requirement, see #17700

I also ran into this issue, please update when possible.

Any ETA on this? How can this still broken since February 13? It's a basic thing people will try to do with their pipelines.

The same on my side

Also seeing this issue:

Hi, everyone! I did an workaround for this issue. Im just bypassing the native task and running it as a CmdLine.

With #17700 there's no longer need to have the .Net 2.1 SDK installed

With #17700 there's no longer need to have the .Net 2.1 SDK installed

But its still in the documentation when I post this comment, so people will use it. See:
https://learn.microsoft.com/en-us/azure/devops/pipelines/tasks/reference/publish-code-coverage-results-v2?view=azure-pipelines

Hi, everyone! I did an workaround for this issue. Im just bypassing the native task and running it as a CmdLine. Notice the tasks UseDotnet@2 and PublishCodeCoverageResult@2 are nedded to download dependencies.
steps:

- task: UseDotNet@2
  inputs:
    packageType: 'sdk'
    version: '2.1.x'

- task: Npm@1
  inputs:
    command: 'install'
    customCommand: 'Npm install'

- task: Npm@1
  inputs:
    command: 'custom'
    customCommand: 'run coverage' #HERE YOU USE YOUR COVERAGE SCRIPT
  displayName: 'Tests Running'
  continueOnError: true

- task: PublishCodeCoverageResults@2
  condition: eq('true', 'false') # THIS WILL NEVER RUN ONCE TASK DECLARATION IS NEEDED TO DOWNLOAD IT SOURCES
  inputs:
    summaryFileLocation: PATH/TO/YOUR/COVERAGE.xml

# here the magic happens
# CREATE A DIR TO USE IN reportDirectory parameter
# Run publish as bash command
- task: CmdLine@2
  displayName: Publish Code Coverage
  env: { 'SYSTEM_ACCESSTOKEN': $(System.AccessToken) } #access token is needed to upload report to azure pipeline tabs
  inputs:
    script: |
      mkdir /home/vsts/work/_temp/cobertura
      /opt/hostedtoolcache/dotnet/dotnet `find /home/vsts/work/_tasks/ -name CoveragePublisher.Console.dll` "PATH/TO/YOUR/COVERAGE.xml" --reportDirectory /home/vsts/work/_temp/cobertura

You are absolutely awesome, thanks literally a ton!

@foxlollato awersome work there!
Do you know if CoveragePublisher.Console.dll accepts a summaryFileLocation that has file matching patterns?
For instance: "PATH/TO/YOUR/**/COVERAGE.xml"

@rafaelbm, i believe it won't work.
A trick is to create an intermediate directory named with the id of the current build, and You'll may use the $(Build.BuildId) variable to reference it in the task.
eg. "PATH/TO/YOUR/$(Build.BuildId)/COVERAGE.xml"

@rafaelbm - it will not work, I managed to workaround it by using a copyFiles step, but this requires splitting path into 2 variables:
  - task: CopyFiles@2
    displayName: "Copy coverage files"
    inputs:
      SourceFolder: "${{ parameters.summaryFilesFolder }}"
      Contents: "${{ parameters.summaryFilesPattern }}"
      TargetFolder: "$(Agent.TempDirectory)/coverage"

  - task: CmdLine@2
    displayName: Publish Code Coverage
    env: { "SYSTEM_ACCESSTOKEN": $(System.AccessToken) } #access token is needed to upload report to azure pipeline tabs
    inputs:
      script: |
        mkdir $(Agent.TempDirectory)/cobertura
        /opt/hostedtoolcache/dotnet/dotnet `find /home/vsts/work/_tasks/ -name CoveragePublisher.Console.dll` `find $(Agent.TempDirectory)/coverage -type f` --reportDirectory "$(Agent.TempDirectory)/cobertura" --sourceDirectory "${{ parameters.pathToSources }}"

So is this task actually working now or should I not waste time trying to get it to work 🗡? Seems that something got updated somewhere and the solution that was presented earlier no longer works.
Seems that something is broken again...
      - task: UseDotNet@2
        displayName: 'Use .NET Core sdk'
        inputs:
          packageType: sdk
          version: 2.1.x
          installationPath: $(Agent.ToolsDirectory)/dotnet

      - task: PublishCodeCoverageResults@2
        condition: eq('true', 'false') # THIS WILL NEVER RUN, TASK DECLARATION IS NEEDED TO DOWNLOAD SOURCES
        inputs:
          summaryFileLocation: '$(Build.SourcesDirectory)/output/coverage.xml'

# Run publish as bash command - task is broken - https://github.com/microsoft/azure-pipelines-tasks/issues/13257
      - task: CmdLine@2
        displayName: Publish Code Coverage
        env: { 'SYSTEM_ACCESSTOKEN': $(System.AccessToken) }
        inputs:
          script: |
            mkdir /home/vsts/work/_temp/JaCoCo
            /opt/hostedtoolcache/dotnet/dotnet `find /home/vsts/work/_tasks/ -name CoveragePublisher.Console.dll` '$(Build.SourcesDirectory)/output/coverage.xml' --reportDirectory /home/vsts/work/_temp/JaCoCo

It's worked flawlessly for the past few months but I get a framework mismatch now ( as if it does not respect that I stated to use 2.1.x earlier...'
It was not possible to find any compatible framework version
The specified framework 'Microsoft.NETCore.App', version '3.1.0' was not found.
  - Check application dependencies and target a framework version installed at:
      /opt/hostedtoolcache/dotnet/
  - Installing .NET Core prerequisites might help resolve this problem:
      https://go.microsoft.com/fwlink/?LinkID=798306&clcid=0x409
  - The .NET Core framework and SDK can be installed from:
      https://aka.ms/dotnet-download
  - The following versions are installed:
      2.1.30 at [/opt/hostedtoolcache/dotnet/shared/Microsoft.NETCore.App]

Tried to use UseDotNet@2 ver 2.x but no dice
The specified framework 'Microsoft.NETCore.App', version '3.1.0' was not found.
  - Check application dependencies and target a framework version installed at:
      /opt/hostedtoolcache/dotnet/
  - Installing .NET Core prerequisites might help resolve this problem:
      https://go.microsoft.com/fwlink/?LinkID=798306&clcid=0x409
  - The .NET Core framework and SDK can be installed from:
      https://aka.ms/dotnet-download
  - The following versions are installed:
      2.2.7 at [/opt/hostedtoolcache/dotnet/shared/Microsoft.NETCore.App]

And of course if you try to use 3.1.x you get:
Starting: Publish Code Coverage
==============================================================================
Task         : Command line
Description  : Run a command line script using Bash on Linux and macOS and cmd.exe on Windows
Version      : 2.212.0
Author       : Microsoft Corporation
Help         : https://docs.microsoft.com/azure/devops/pipelines/tasks/utility/command-line
==============================================================================
Generating script.
========================== Starting Command Output ===========================
/usr/bin/bash --noprofile --norc /home/vsts/work/_temp/8d9f79c5-0d99-47ce-9fd3-d079a8dc37d8.sh
2023-05-25T07:09:14: Loading report '/home/vsts/work/1/s/output/coverage.xml' 1/1 in memory
2023-05-25T07:09:14: Preprocessing report
2023-05-25T07:09:14:   No source directories supplied for 'JaCoCo' coverage file
2023-05-25T07:09:14: Initiating parser for JaCoCo
2023-05-25T07:09:14: Current Assembly: Source/Private
2023-05-25T07:09:15: Current Assembly: Source/Public
2023-05-25T07:09:15: Finished parsing '/home/vsts/work/1/s/output/coverage.xml' 1/1
2023-05-25T07:09:15: Parsing of 1 files completed
2023-05-25T07:09:15: Starting merging result 1
2023-05-25T07:09:15: Finished merging result 1
##[error]Error occured while generating HTML report. Could not load file or assembly 'System.Collections.Immutable, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken='. The located assembly's manifest definition does not match the assembly reference. (0x80131040)
Publishing file coverage data.
Publishing code coverage HTML report.
Uploading 0 files.
File upload succeed.
Published '/home/vsts/work/_temp/JaCoCo' as artifact 'Code Coverage Report_146935'.
Finishing: Publish Code Coverage

I don't think I'll be only one to say that this is getting irritating...

The problem stands. It is at this line:
https://github.com/microsoft/azure-pipelines-tasks/blob/d43e3ff473a318bf8dc727aa425c54a7c936d3e9/Tasks/Common/coveragepublisher/coveragepublisher.ts#L40
The reportDirectory argument is being passed as one argument, it should be two.

Hi, everyone! I did an workaround for this issue. Im just bypassing the native task and running it as a CmdLine. Notice the tasks UseDotnet@2 and PublishCodeCoverageResult@2 are nedded to download dependencies.
steps:

- task: UseDotNet@2
  inputs:
    packageType: 'sdk'
    version: '2.1.x'

- task: Npm@1
  inputs:
    command: 'install'
    customCommand: 'Npm install'

- task: Npm@1
  inputs:
    command: 'custom'
    customCommand: 'run coverage' #HERE YOU USE YOUR COVERAGE SCRIPT
  displayName: 'Tests Running'
  continueOnError: true

- task: PublishCodeCoverageResults@2
  condition: eq('true', 'false') # THIS WILL NEVER RUN ONCE TASK DECLARATION IS NEEDED TO DOWNLOAD IT SOURCES
  inputs:
    summaryFileLocation: PATH/TO/YOUR/COVERAGE.xml

# here the magic happens
# CREATE A DIR TO USE IN reportDirectory parameter
# Run publish as bash command
- task: CmdLine@2
  displayName: Publish Code Coverage
  env: { 'SYSTEM_ACCESSTOKEN': $(System.AccessToken) } #access token is needed to upload report to azure pipeline tabs
  inputs:
    script: |
      mkdir /home/vsts/work/_temp/cobertura
      /opt/hostedtoolcache/dotnet/dotnet `find /home/vsts/work/_tasks/ -name CoveragePublisher.Console.dll` "PATH/TO/YOUR/COVERAGE.xml" --reportDirectory /home/vsts/work/_temp/cobertura

Works for me - one tweak required, which was to change "/opt/hostedtoolcache/dotnet/dotnet" with "$(Dotnet_Root)/dotnet" (as I found the install path used by UseDotNet@2 was different - "/home/build-agent/myagent/_work/_tool/dotnet" in my case)

Same issue and unfortunately the recommended hack with CmdLine@2 task did not work for us because we are having multiple xml reports situated in various job-generated folders.
Tried to copy them all to another folder but still some job-specific GUID folders are created which prevent us from invoking it with the CoveragePublisher.Console.dll

According to @vinayakmsft it has been fixed in master: https://github.com/microsoft/azure-pipelines-tasks/pull/18401#issuecomment-1622946934

task: PublishCodeCoverageResults@2 is getting failed from yesterday

Please suggest

In short based on what I see here and in my own use of PublishCodeCoverageResults:

@2 is broken and--I'll bet--underfunded.
@1 works just fine and doesn't require any special care.
An alternative that's just as easy and more flexible: run the tool from the command line.

I'll go with the middle option for now: @1.

PublishCodeCoverageResults@2 skipping files not publishing report to artifacts yet not failing task. Work fine when files are less then 500.

Following work fine when files are less.


Cannot skip  BWA index generation

Description of the bug
I'm testing fastquorum to as a complement to existing data, therefore I must use the same sequences and index that I used with the previous data.
However as far as I can make out from the code PREPARE_GENOME runs unconditionally and generates a BWA index regardless if it's specified or not in the parameters (bwa): there are neither conditional checks nor task.ext.when definitions to skip this part.
Command used and terminal output
No response
Relevant files
No response
System information

Nextflow: 23.04.2
Hardware: HPC
Executor: slrum
Container Engine: apptainer
OS: Debian
nf-core/fastquorum version: 1.0.0

I had to add ext.when = { !params.bwa } to modules.conf to skip this part, however I would like to know first if it's worth sending a PR or not.

Completed in #58


compatibility with some old version pythons.

Some old version pythons will raise exceptions when use struct.unpack with a memoryview object. In hyper 0.5.0 this exception was raised, and now there will raise a InvalidFrameError , but hyper is not available yet.
Maybe this problem could be easily fixed, just convert memoryview to bytes use memoryview.tobytes()?
Here's my test results:
$ python
Python 2.7.2 (default, Dec  6 2011, 12:12:28)
[GCC 4.4.4 20100726 (Red Hat 4.4.4-13)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import struct
>>> struct.unpack('!4c', memoryview('abcd'))
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
struct.error: unpack requires a string argument of length 4
>>> struct.unpack('!4c', memoryview('abcd').tobytes())
('a', 'b', 'c', 'd')

$ python
Python 2.7.6 (default, Jun 22 2015, 18:00:18)
[GCC 4.8.2] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import struct
>>> struct.unpack('!4c', memoryview('abcd'))
('a', 'b', 'c', 'd')
>>> struct.unpack('!4c', memoryview('abcd').tobytes())
('a', 'b', 'c', 'd')

$ python3
Python 3.5.1 (default, Apr 18 2016, 11:46:32)
[GCC 4.2.1 Compatible Apple LLVM 7.3.0 (clang-703.0.29)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import struct
>>> struct.unpack('!4c', memoryview(b'abcd'))
(b'a', b'b', b'c', b'd')
>>> struct.unpack('!4c', memoryview(b'abcd').tobytes())
(b'a', b'b', b'c', b'd')

Yeah, I'm aware of this problem. =(
Converting memoryviews to bytes unconditionally is not really a great idea because it costs us performance on platforms that don't require it. However, I'm acutely aware that this is a problem on older Python versions such as the one you're using.
With that said, you'll find a lot of HTTP/2 problems with a Python version that old: in particular, you're likely to have a very old OpenSSL as well. While I'm open to pursuing ways of fixing this, are you potentially open to using a Python other than the one your distribution is providing, or asking your distribution to backport this specific fix?

You are right, we also have an old OpenSSL and this cause many other problems. But we run a large system using python 2.7.2 for several years, so update python or OpenSSL version may be a dangerous operation.
Currently our solution is manual maintain a hyper and make patches for some you said "old OpenSSL problems", it's not a perfect way but works well. Thanks for your reply.


codec utf-8 error preventing align

Hi there, I'm using caretta-cli to align all .pdb files in a folder but I get an error message after the files are parsed. I can see that cleaned pdb files are created for all my input pdb but the alignment fails to run. Here is the error message I get:
File "/Users/s1427471/anaconda3/envs/snakes/bin/caretta-cli", line 127, in
app()
File "/Users/s1427471/anaconda3/envs/snakes/bin/caretta-cli", line 108, in align
multiple_alignment.align_from_structure_files(
File "/Users/s1427471/anaconda3/envs/snakes/lib/python3.9/site-packages/caretta/multiple_alignment.py", line 476, in align_from_structure_files
pdb_files = helper.parse_protein_files_and_clean(input_files, output_files.cleaned_pdb_folder)
File "/Users/s1427471/anaconda3/envs/snakes/lib/python3.9/site-packages/caretta/helper.py", line 169, in parse_protein_files_and_clean
protein = parse_structure_file(str(protein_file)).select("protein")
File "/Users/s1427471/anaconda3/envs/snakes/lib/python3.9/site-packages/geometricus/protein_utility.py", line 82, in parse_structure_file
protein = pd.parsePDBStream(f)
File "/Users/s1427471/anaconda3/envs/snakes/lib/python3.9/site-packages/prody/proteins/pdbfile.py", line 313, in parsePDBStream
lines = stream.readlines()
File "/Users/s1427471/anaconda3/envs/snakes/lib/python3.9/codecs.py", line 322, in decode
(result, consumed) = self._buffer_decode(data, self.errors, final)
UnicodeDecodeError: 'utf-8' codec can't decode byte 0x80 in position 3131: invalid start byte
I'm using macOS. Any ideas how to fix this would be much appreciated :)

Fixed: I was trying to parse a hidden .DS_Store file alongside the pdb structures. I followed https://dev.to/vonhyou/remove-dsstore-file-from-git-repo-2g57 to remove the .DS_Store files and prevent them being written again.


Change Buttons on About page

From the original author:

I think it would be better to let the first button on the about page point to Github. Since the Github page contains more than source code, most importantly the binary downloads, I would also name the button different.

You can just name it Website


Highlight funcalls

One feature I quite like of Emacs's go-mode is how it highlights function calls. I use a theme that has very few colors, and highlighting the calls helps to guide my eyes. I replicated the feature for rust-mode. Here's a screenshot.

Thanks for the pull request, and welcome! The Rust team is excited to review your changes, and you should hear from @brotzeit (or someone else) soon.
Please see the contribution instructions for more information.

Thanks for the contribution! But it seems to me that this isn't the default behavior. Look at other language major modes like elisp.
But we could add this as optional feature.

Any opinions on this ? If users like this feature we can merge this anyway...

Does this work with treesitter ? I guess font-locking will change a lot with this new feature.

@gnuvince Now that treesiter mode support is merged, can you see if it works with that: https://github.com/rust-lang/rust-mode?tab=readme-ov-file#tree-sitter ?

I'm gently closing this PR for now as there haven't been any recent updates. However, feel free to reopen it whenever you're ready to pick it up again.


[util] Add a script for formatting header-guards.

While our style guide inherits include guard format from Google C++, it's not really enforced by anyone anywhere. This change adds a script to automatically format files to have the correct guards.
I intend to follow this up with a PR that applies this to all of the SW tree; I'm not sure of the structure of the HW tree, so I'm not sure how I should go about applying it there.
@imphil I want this to run in CI, along with clang-format. What do you think the best approach is? We do some pretty wacky stuff in the clang-format check and I wanted to see if you had opinions on how to approach this.

Done. I'm not a fan of python but it's no big deal.

if this is to be moved into CI, will our recommendation for what to run prior to a commit be updated also?


App couldn't detect my badge

Describe the bug
I have a LED Badge which has its Bluetooth ID: FF:FF:2A:00:19:CA, and app is not able to detect it and send data while other app is able to detect and send data.
Expected behavior
It should detect this device and send data.
Smartphone Info:

Device
Android Version

Redmi 4
Android 7.1.4

Additional context
I tried CoolLED1248 app
Would you like to work on the issue?
YES, if it is a real issue to just an issue with my device. I'm not sure if it is a problem with my badge or with Scanning feature in the app.

@mariobehling @iamareebjamal Shouldn'e this app connect to any badge ? As I'm able to see my device in the bluetooth section but not able to connect it.

This app works for BLE devices

@ShridharGoel I checked in its configuration it said it is a BLE device

Does your badge needs to press any buttons to enable the BLE function?

@cweitat No nothing like that... But I have ordered from Fossasia website..

@iamareebjamal Please Close this

I just ordered a new badge that also uses the CoolLED1248 app and is incompatible with this app. It does not appear to ever be detected.

@lanrat hi sir, would you mind sharing the link of the badge with me?

@lanrat are you talking about the vslab badge? If yes, would you mind contacting me personally. I would like examine the uuid of that badge in order to get it working

I ordered this VBLab one: https://smile.amazon.com/gp/product/B07P5X28JY
I've attached a screenshot of the UUID from the BLE Scanner App

Also, it looks like this tag is 48x12 while the one demoed in this app is 44x11 .
Let me know if you need any other information.

@lanrat yes sir, can you contact me personally regarding this support? I am sure we can get this through easier fast


Java 11 illegal reflective access operation using soft assertions

Summary
I saw the earlier "resolved" issues with reflection in Java 9 and up, but this seems even more fundamental?
WARNING: An illegal reflective access operation has occurred
WARNING: Illegal reflective access by org.assertj.core.api.AbstractSoftAssertions ... to field java.lang.Throwable.detailMessage

Example
SoftAssertions softly = new SoftAssertions();
softly.assertThat("x").isEqualTo("y");
softly.assertAll();

Thanks for reporting.
I am closing this issue because it was already reported, see: https://github.com/joel-costigliola/assertj-core/issues/1165#issuecomment-367473974


update iOS order and links

addressing issues mentioned in #25

checked all links and their validity
removed uselessly mentioned information ("iOS", "open-source" since repo is linked anyway)
commented out Mona (not yet released)
commented out Mastoon (no valid links available)

This is fantastic

This is fantastic

Thanks! :)

@all-contributors please add @Nive9 for maintenance

https://github.com/all-contributors?type=source please add @Nive9 for maintenance

@all-contributors please add @Nive9 for maintenance


Feature/unsteady

Hello @peterdsharpe ! Here is a much cleaner version of the unsteady aero library. I have included examples of some canonical problems as well as a brief description of what is included.
I am not including any of the optimal control stuff right now as I need to reconsider how I designed some of the functions. I am having some difficulty interpolating opti variables and I suspect it might take some time for me to get that sorted.
-Antonios

Hey @peterdsharpe I finally found some time to write an implicit analysis that solves the optimal control problem through an arbitrary transverse gust. The goal is to minimize the lift transient during the gust encounter by pitching. Here are two examples where the lift transient is completely mitigated.

I used the AirfoilInviscid Implicit Analysis as an example class to write this one. Let me know if this is not how the ImplicitAnalysis is meant to be used. :joy:

Haha this is pretty sweet! Great work here! :D
Yes, using AirfoilAnalysis is exactly how ImplicitAnalysis was meant to be used! So glad to see you were able to get it working! I'm hoping to write a tutorial about this soon that will explain some more tricks with ImplicitAnalysis!


Added compose() function declaration

redux/redux.d.ts
to authors(@wbuchwalter @Keats). could you review this PR?
:+1: or :-1:?
check list

[ ] pass the Travic-CI test?

:+1:

@wbuchwalter thanks!
@pdeva thanks mate!


feat: Add support for DMS replication task start_replication_task

Description

Add support for DMS replication task start_replication_task
Bump AWS provider min supported version to v4.6.0 to support start_replication_task

Motivation and Context

Closes #4

How Has This Been Tested?

examples/complete

Screenshots (if appropriate):

:tada: This PR is included in version 1.4.0 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


Add .gitignore, based on kubernetes/kubernetes

Trimmed to remove ignores that are obviously kubernetes specific

👍


Specify option delete-orphans for topic reconcile

Specify topics that should be deleted is pretty complex task especially if they are created with template engine. Ability to remove orphans will make life much easer and remove unnecessary conditions from the template.
I would like to have option to delete all topics that are not managed by the jikkou and option with delete-orphans looks optimal for this purposes.
Right now we have pretty complex template with conditions and it's working solution but it could be simplified if we had option to delete topics that are not in config
template.yaml.jinja
#jinja2: trim_blocks: True, lstrip_blocks: True
{%- macro create_topic(delete=false, name, partitions, replicas, config={}) %}
  - metadata:
      name: "{{ name }}"
      annotations:
        # Annotation to specify that all resources must be deleted.
        jikkou.io/delete: {{ delete }}
    spec:
      partitions: {{ partitions }}
      replicas: {{ replicas }}
      configs:
        {% for key, value in config.items() %}
        "{{ key }}": {{ value }}
        {% endfor %}
{% endmacro %}

apiVersion: kafka.jikkou.io/v1beta2
kind: KafkaTopicList
items:
  {% for topic in values.topics %}
    {% set is_internal = topic.internal | default(false) %}
    {% set is_use_case = topic.use_case | default(false) %}
    {% set is_tenant_support = topic.tenant_support | default(true) and values.configuration.tenant_support %}
    {% if is_internal %}
      {% set delete_topic_origin = topic.remove %}
    {% else %}
      {% set delete_topic_origin = topic.remove or not (values.configuration.create_default_tenant or not is_tenant_support) %}
    {% endif %}
    {% set topic_partitions = topic.partitions | default(values.configuration.topic.partitions) %}
    {% set topic_replicas = topic.replication | default(values.configuration.topic.replicas) %}
    {% call create_topic(delete_topic_origin or topic.use_case, topic.name, topic_partitions, topic_replicas, topic.config) %}{% endcall %}
    {% for use_case in values.use_cases %}
      {% if is_internal %}
        {% set delete_topic_use_case = true %}
      {% else %}
        {% set delete_topic_use_case = topic.remove or is_tenant_support or not is_use_case or use_case.remove %}
      {% endif %}
      {% set topic_name = "{{ topic.name }}.{{ use_case.name }}" %}
      {% call create_topic(delete_topic_use_case, topic_name, topic_partitions, topic_replicas, topic.config) %}{% endcall %}
    {% endfor %}
    {% for tenant in values.tenants %}
      {% set is_tenant_disabled = tenant.remove or not is_tenant_support %}
      {% if is_internal %}
        {% set delete_topic_tenant = true %}
      {% else %}
        {% set delete_topic_tenant = topic.remove or is_tenant_disabled or is_use_case %}
      {% endif %}
      {% set topic_name = "{{ tenant.name }}.{{ topic.name }}" %}
      {% call create_topic(delete_topic_tenant, topic_name, topic_partitions, topic_replicas, topic.config) %}{% endcall %}
      {% for use_case in values.use_cases %}
        {% set topic_name = "{{ tenant.name }}.{{ topic.name }}.{{ use_case.name }}" %}
        {% set is_use_case_disabled = use_case.remove | default(false) or not is_use_case %}
        {% if is_internal %}
          {% set delete_topic_use_case = true %}
        {% else %}
          {% set delete_topic_use_case = is_tenant_disabled or is_use_case_disabled or topic.remove %}
        {% endif %}
        {% call create_topic(delete_topic_use_case, topic_name, topic_partitions, topic_replicas, topic.config) %}{% endcall %}
      {% endfor %}
    {% endfor %}
  {% endfor %}

values.yaml
use_cases:
  - name: usecase1
    remove: false
  - name: usecase2
    remove: false
  - name: usecase3
    remove: false
  - name: usecase4
    remove: true

tenants:
  - name: tenant1
    remove: false
  - name: tenant2
    remove: false
  - name: tenant3
    remove: true

configuration:
  create_default_tenant: true
  tenant_support: true
  topic:
    partitions: 10
    replicas: 1

topics:
  # Should have usecases with tenants (9)
  - name: test
    use_case: true
  # Should have no usecases but with tenants (3 topics)
  - name: test2
  # Should have usecases without tenants (3)
  - name: test3
    use_case: true
    tenant_support: false
  # Should be single (1)
  - name: test4
    internal: true

I understand that it is not safe - but we still have options to validate what will happen with topology with --dry-run

if you agree to have that option - I can implement changes :)

Hi @boris-chistov, thank you very much for your feature proposal. 🙏 I think it's OK to add a delete-oprhans option for the reconciliation of Kafka topics. Also, this should be not too difficult to implement.
I think you will have to modify the following Java classes:

AdminClientKafkaTopicController to define the new property.
TopicChangeComputer : The new option (i.e., the boolean flag will have to be passed to that class. Also, the TopicChangeComputer class extends the ResourceChangeComputer which already supports the deleteOrphans option. So only constructor need to be changed to pass the deleteOrphan flag to the parent class.

Let me know if you have any question about the implementation!


Increase video button size

the video button size increased and the font colour changed to blue as dr. Cleo requested. @niharikaavasthi

checked_on_iPhone-TESTED

checked_on_Windows-TESTED

@niharikaavasthi checked_on_Ipad-TESTED. It is good.

checked_on_Android-TESTED

Checked on windows (EN - Patients) for production. Looks good.

Checked on Windows (EN) for production. Looks good.

Checked on iPhone (EN) TESTED

Tested successfully


#landing-page: users landing page

What does this PR do?

It creates a landing page for users of the website

Description of Task to be completed

add folder structure (css,js,index.html)
add a navbar with links to visit other pages
add h1 tags containing small information about the developer

How should this be manually tested?

git clone the project
open the index.html file in the browser you should see the page

What are the relevant Trello stories?

https://trello.com/c/EcWmS32m/1-user-landing-page

Screenshots (if appropriate)

Hey @nraufu ,
You did nice work, here are the few feedback you might consider working on:

on branch name: consider adding story id.
in PR description: add your git link to make it easy for a reviewer cloning your repo.
-Mobile responsiveness: make the web responsive on small devices.

 User Landing Page


Add Meta app_label to models to fix RemovedInDjango19Warning

Added app_label to taggit.models.TaggedItem and taggit.models.Tag because of RemovedInDjango19Warnings in Django 1.8

RemovedInDjango19Warning: Model class taggit.models.Tag doesn't declare an explicit app_label and either isn't in an application in INSTALLED_APPS or else was imported before its application was loaded. This will no longer be supported in Django 1.9.

This branch has conflicts that must be resolved! plz rebase against master

This needs to be addressed so that Taggit models can properly inherited and customized in DJango 1.9+
without adding Taggit to INSTALLED_APPS.

Closing in favor of https://github.com/alex/django-taggit/pull/420


Adding new Listing --> invalid address

Q
A

Bug report?
[ ]

Feature request?
[ ]

Support request?
[X ]

When i try to add a new Listing i always get the error-message 'invalid address". But the entered address will be displayed correct on the map.

Hi @ThomasEcherer ,
I recommend you to enable the debug mode in src/Cocorico/GeoBundle/Geocoder/Provider/GoogleMapsProvider.php:35.
Then depending on the displayed error check these points:

Have you set your google api key in app/config/parameters.yml?

cocorico_geo.google_place_api_key: ~
cocorico_geo.google_place_server_api_key: ~

Have you correctly set your Google API restrictions in your Google console?

Furthermore since July 2018 Google require that you must enable billing to use Google Map API with $200 USD Google Maps Platform credit available each month.
See https://developers.google.com/maps/documentation/geocoding/usage-and-billing.

Feel free to reopen it if you need

Sorry for the delay.
But it is still not working for me.
My Google API Key is set in the app/config/parameters.yml
cocorico_geo.google_place_api_key: AIzaSyXXXXXXXXXXXXXXXXXXXXXX' cocorico_geo.google_place_server_api_key: AIzaSyXXXXXXXXXXXXXXXXXXXXXX
The Restrictions are set like this:
Application restrictions: None
API Restrictions: Maps Javascript API, Geocoding API
I've set the Debug-Flag in the src/Cocorico/GeoBundle/Geocoder/Provider/GoogleMapsProvider.php.
Copied the Log file 'dev-2018-xx-xx', but couldn find any helpfull informations.
Do i have to restart something? Or do i look in the correct log-file?
I've debugged the google-api stuff, and the address i entered will be processed correctly.
The formatted address contains the lat and lng informations.
But i still get the error that i've entered an invalid address.
What else can i do?
Thanks in advance,
Thomas

I have the same error

Hi,
Same error for me.

@gonzasylv did you resolve the issue?

Have you seen how the information sent by google is being processed in Cocorico?

Not yet, let me review that, thanks Will!

Have you seen how the information sent by google is being processed in Cocorico?
I have seen the javascript log and seems that I need to enable billing.

js?libraries=places&language=en&key=AIzaSyB7G6osSxQOLiIEQY7967s9wwNp4PqPJ4Q:78 You must enable Billing on the Google Cloud Project at https://console.cloud.google.com/project/_/billing/enable Learn more at https://developers.google.com/maps/gmp-get-started Places API error: BillingNotEnabledMapError
Thank you @SchulzWill

hi,
sorry to write on a closed issue, but is there any way to just skip the validation?
thank you


Windows support?

I wonder what block this support listed in Roadmap. Thx

it's not impossible, however some dependency build issues need to be addressed.
see https://github.com/Watfaq/clash-rs/pull/152

you can give it a try if you want https://github.com/Watfaq/clash-rs/releases/tag/v0.1.7

I will have a try in recent few days. Thx

I tested ss config in windows.
I face two issues, which is blocked normal use:

plugin_opts should be plugin-opts, which is not compatible with clash or clash-meta
simple-obfs is deprecated, please use v2ray-plugin instead error was thrown and connection was closed.

I don't known whether it is platform-spec issue.


Support binary files in repository template

I came across this bug only because the test directly accidentally became populated with .pyc files, which obviously don't decode as utf-8.  It isn't strictly needed (since we don't have binary files in the repository template), but we might someday.

LGTM


petab.Problem.from_folder does not set problem.name

To reproduce in pypesto:
petab_problem = petab.Problem.from_folder(test.petab_util.folder_base +
                                                  "Zheng_PNAS2012");
importer = pypesto.PetabImporter(petab_problem)

yes, the problem.model_name was recently deleted. I am currently trying to overcome this in pypesto in https://github.com/ICB-DCM/pyPESTO/tree/fix_petab_amici, by extracting the name differently.

If I remember correctly, reason for deleting was that we want to be able to base a PetabProblem solely on dataframes.

Do we want to add a name to  petab.Problem again or can this be closed?

adding a name again would be a different issue, the above describe one should be fixed.


Migrate data from Airtable to CSV

This removes the dependency of pulling comparison data from Airtable, and moves the data into CSVs stored in src/_data/*.csv. Additionally, it updates the comparison pages to use a clearer JSON format handling the objects.
This enables a developer to build the site locally again, and doesn't require an Airtable account, API tokens, and environment variables.

@mrchone : Would you or someone on the team be able to test this at the preview link to see if creates any new bugs? This will not fix any of the other bugs reported, but should be the same in terms of working/broken as it was before. There should be a preview link above.

Just noting that #357 will be a good one to do in December or early next year when we have a developer staffed.

@mrchone and I both ran some manual tests and everything looks good, except:
Found that the practices data is wrong in this version. Looks like the columns in practices.csv are in a different order than the Airtable, which meant that the data didn't migrate cleanly (i.e. Airtable doesn't let you export column headings). I'll get that fixed and merged in

Data is fixed, and thoroughly reviewed the background checks compare page. The kin page is not drawing the pies, so working on that now.

Data CSVs are now in sync with what was the Airtable production database (also, a Google Drive backup here), and tested both compare pages.


Move InteractionType model to interaction app

This moves and renames the metadata.InteractionType model to interaction.CommunicationChannel.
This serves as an example of how to move models between apps, with working downgrades (as well as upgrades).
This also adds a simple mechanism for registering metadata fixtures (which is only used for interactions for now).
API compatibility is maintained until the front end is updated.

Codecov Report

Merging #508 into develop will increase coverage by 0.02%.
The diff coverage is 100%.

@@             Coverage Diff             @@
##           develop     #508      +/-   ##
===========================================
+ Coverage    96.57%   96.59%   +0.02%
===========================================
  Files          122      124       +2
  Lines         3735     3764      +29
  Branches       340      342       +2
===========================================
+ Hits          3607     3636      +29
  Misses          87       87
  Partials        41       41

Impacted Files
Coverage Δ

datahub/metadata/metadata.py
100% <ø> (ø)
:arrow_up:

datahub/metadata/admin.py
100% <ø> (ø)
:arrow_up:

datahub/interaction/metadata.py
100% <100%> (ø)

datahub/core/management/commands/loadmetadata.py
100% <100%> (ø)
:arrow_up:

datahub/metadata/fixtures.py
100% <100%> (ø)

datahub/interaction/admin.py
100% <100%> (ø)
:arrow_up:

datahub/search/interaction/serializers.py
100% <0%> (ø)
:arrow_up:

Continue to review full report at Codecov.

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


Input data not available for CCC tutorial

In Cell_Cell_Communication Tutorial (notebook)input data used is read from '../data/adata_VCM_EP.h5ad'.
Where can I find adata_VCM_EP.h5ad since it is not available in provided Stereopy_Demo_Data (http://<IP_ADDRESS>:8090/share/dd965cba-7c1f-40b2-a275-0150890e005f)?
Could you consider replacing hardcoded path with wget command that can download the input file. Also, that might be done for all tutorials. Thanks!

We have changed the demo in this tutorial, which will be updated next version.
Ray


Enable MSA on MIPS64 CI

Enabling MSA for the mips64 targets produces the following error:
export RUSTFLAGS= -C target-feature=+msa -C target-cpu=mips64r5
cargo test --target=mips64-unknown-linux-gnuabi64 --release
   Compiling cfg-if v0.1.4
   Compiling nodrop v0.1.12
   Compiling packed_simd v0.1.0 (file:///checkout)
   Compiling arrayvec v0.4.7
LLVM ERROR: Cannot select: 0x7fdaf4d96b60: v2i64 = setcc 0x7fdaf47759c0, 0x7fdaf4d960d0, setlt:ch
  0x7fdaf47759c0: v2f64 = vselect 0x7fdaf4775138, 0x7fdaf479dd00, 0x7fdaf479dc98
    0x7fdaf4775138: v2i64 = setcc 0x7fdaf479dd00, 0x7fdaf479dc98, setlt:ch
      0x7fdaf479dd00: v2f64,ch = load<(load 16 from %stack.29, align 32)> 0x7fdaf46ce6e8, FrameIndex:i64<29>, undef:i64
        0x7fdaf4775000: i64 = FrameIndex<29>
        0x7fdaf479d680: i64 = undef
      0x7fdaf479dc98: v2f64,ch = load<(load 16 from %stack.29 + 16)> 0x7fdaf46ce6e8, 0x7fdaf4775618, undef:i64
        0x7fdaf4775618: i64 = or FrameIndex:i64<29>, Constant:i64<16>
          0x7fdaf4775000: i64 = FrameIndex<29>
          0x7fdaf4d96e38: i64 = Constant<16>
        0x7fdaf479d680: i64 = undef
    0x7fdaf479dd00: v2f64,ch = load<(load 16 from %stack.29, align 32)> 0x7fdaf46ce6e8, FrameIndex:i64<29>, undef:i64
      0x7fdaf4775000: i64 = FrameIndex<29>
      0x7fdaf479d680: i64 = undef
    0x7fdaf479dc98: v2f64,ch = load<(load 16 from %stack.29 + 16)> 0x7fdaf46ce6e8, 0x7fdaf4775618, undef:i64
      0x7fdaf4775618: i64 = or FrameIndex:i64<29>, Constant:i64<16>
        0x7fdaf4775000: i64 = FrameIndex<29>
        0x7fdaf4d96e38: i64 = Constant<16>
      0x7fdaf479d680: i64 = undef
  0x7fdaf4d960d0: v2f64,ch = load<(load 16 from %stack.30)> 0x7fdaf4d96138, FrameIndex:i64<30>, undef:i64
    0x7fdaf46ceaf8: i64 = FrameIndex<30>
    0x7fdaf479d680: i64 = undef
In function: _ZN4core3ops8function6FnOnce9call_once17h22e71f119a5a9c96E
error: Could not compile `packed_simd`.

cc @jcowgill

Clearly an LLVM bug of some kind. Unfortunately I don't work on MIPS anymore and I have no time to investigate it. I'll try and contact someone who may be able to help...

Hi @gnzlbg . One question. Which version of rust were you using?

@draganmladjenovic rust nightly

This boils down to reduce.fmin/fmax being broken on Mips since https://reviews.llvm.org/D46854 https://godbolt.org/g/fBkcai. Even before that reduce.fmin gets expanded to sequence that uses fcmp fast olt irrespective of fast flag  being present during the intrinsic call or not (Might be a bug by itself). The second problem is that since D46854 fcmp fast olt gets treated as fcmp lt which Mips backend can't select on floating point vector types.
I don't know right now what would be a proper solution to this problem. If nothing I will submit the llvm bug report shortly. @gnzlbg  In the meantime, is it ok to work around this in this crate by expanding the reduction manually instead of using intrinsic?

@draganmladjenovic

In the meantime, is it ok to work around this in this crate by expanding the reduction manually instead of using intrinsic?

Yes, that is ok (we already do this for other targets so it should only be a matter of adding some more cfg() macros here and there), I'll try to send a PR that fixes the CI builds.

@gnzlbg

I'll try to send a PR that fixes the CI builds.
Ok, thank you for that . I will submit the llvm bug report shortly so you can reference it.

I will submit the llvm bug report shortly so you can reference it.

Thanks, just post that here, and I'll recycle/rename this issue to keep on tracking that LLVM bug.

Bug submitted at https://bugs.llvm.org/show_bug.cgi?id=38287.

Thanks! So I think I've made some progress in that things now compile, but they fail to link when using mips64r6: https://travis-ci.org/rust-lang-nursery/packed_simd/jobs/407564460#L1318
error: linking with `mips64-linux-gnuabi64-gcc` failed: exit code: 1
  |
  = note: "mips64-linux-gnuabi64-gcc" "-Wl,--as-needed" "-Wl,-z,noexecstack" "-L" "/rust/lib/rustlib/mips64-unknown-linux-gnuabi64/lib" "/checkout/target/mips64-unknown-linux-gnuabi64/release/deps/packed_simd-bc52a852fd902da6.packed_simd0.rcgu.o" "-o" "/checkout/target/mips64-unknown-linux-gnuabi64/release/deps/packed_simd-bc52a852fd902da6" "/checkout/target/mips64-unknown-linux-gnuabi64/release/deps/packed_simd-bc52a852fd902da6.crate.allocator.rcgu.o" "-Wl,--gc-sections" "-pie" "-Wl,-z,relro,-z,now" "-Wl,-O1" "-nodefaultlibs" "-L" "/checkout/target/mips64-unknown-linux-gnuabi64/release/deps" "-L" "/checkout/target/release/deps" "-L" "/rust/lib/rustlib/mips64-unknown-linux-gnuabi64/lib" "-Wl,-Bstatic" "/rust/lib/rustlib/mips64-unknown-linux-gnuabi64/lib/libtest-cd2e845f4c70927d.rlib" "/rust/lib/rustlib/mips64-unknown-linux-gnuabi64/lib/libterm-9eb611101cf4cecf.rlib" "/rust/lib/rustlib/mips64-unknown-linux-gnuabi64/lib/libgetopts-4874943d5732d1b7.rlib" "-Wl,--start-group" "/rust/lib/rustlib/mips64-unknown-linux-gnuabi64/lib/libstd-3f6ab34df8ffd83e.rlib" "/rust/lib/rustlib/mips64-unknown-linux-gnuabi64/lib/libpanic_unwind-a5a7585073f51dde.rlib" "/rust/lib/rustlib/mips64-unknown-linux-gnuabi64/lib/libunwind-003f74338435e0fd.rlib" "/rust/lib/rustlib/mips64-unknown-linux-gnuabi64/lib/liballoc_system-2755128d19d935f8.rlib" "/rust/lib/rustlib/mips64-unknown-linux-gnuabi64/lib/liblibc-b75d74899d2adc7f.rlib" "/rust/lib/rustlib/mips64-unknown-linux-gnuabi64/lib/liballoc-8b879cd22eb4890a.rlib" "/checkout/target/mips64-unknown-linux-gnuabi64/release/deps/libarrayvec-eb8868cfdf72a318.rlib" "/checkout/target/mips64-unknown-linux-gnuabi64/release/deps/libnodrop-f44f02a725192a9d.rlib" "/checkout/target/mips64-unknown-linux-gnuabi64/release/deps/libcfg_if-f697f12200a30b1b.rlib" "/rust/lib/rustlib/mips64-unknown-linux-gnuabi64/lib/libcore-f30fde47d896be92.rlib" "-Wl,--end-group" "/rust/lib/rustlib/mips64-unknown-linux-gnuabi64/lib/libcompiler_builtins-ddc5be726ac41261.rlib" "-Wl,-Bdynamic" "-l" "dl" "-l" "rt" "-l" "pthread" "-l" "gcc_s" "-l" "c" "-l" "m" "-l" "rt" "-l" "pthread" "-l" "util"
  = note: /usr/lib/gcc-cross/mips64-linux-gnuabi64/7/../../../../mips64-linux-gnuabi64/bin/ld: /checkout/target/mips64-unknown-linux-gnuabi64/release/deps/packed_simd-bc52a852fd902da6.packed_simd0.rcgu.o: linking mips:isa64r6 module with previous mips:isa64r2 modules
          /usr/lib/gcc-cross/mips64-linux-gnuabi64/7/../../../../mips64-linux-gnuabi64/bin/ld: /checkout/target/mips64-unknown-linux-gnuabi64/release/deps/packed_simd-bc52a852fd902da6.packed_simd0.rcgu.o: linking -mnan=2008 module with previous -mnan=legacy modules
          /usr/lib/gcc-cross/mips64-linux-gnuabi64/7/../../../../mips64-linux-gnuabi64/bin/ld: failed to merge target specific data of file /checkout/target/mips64-unknown-linux-gnuabi64/release/deps/packed_simd-bc52a852fd902da6.packed_simd0.rcgu.o
          /usr/lib/gcc-cross/mips64-linux-gnuabi64/7/../../../../mips64-linux-gnuabi64/bin/ld: /checkout/target/mips64-unknown-linux-gnuabi64/release/deps/packed_simd-bc52a852fd902da6.crate.allocator.rcgu.o: linking mips:isa64r6 module with previous mips:isa64r2 modules
          /usr/lib/gcc-cross/mips64-linux-gnuabi64/7/../../../../mips64-linux-gnuabi64/bin/ld: /checkout/target/mips64-unknown-linux-gnuabi64/release/deps/packed_simd-bc52a852fd902da6.crate.allocator.rcgu.o: linking -mnan=2008 module with previous -mnan=legacy modules
          /usr/lib/gcc-cross/mips64-linux-gnuabi64/7/../../../../mips64-linux-gnuabi64/bin/ld: failed to merge target specific data of file /checkout/target/mips64-unknown-linux-gnuabi64/release/deps/packed_simd-bc52a852fd902da6.crate.allocator.rcgu.o
          collect2: error: ld returned 1 exit status

error: aborting due to previous error

@draganmladjenovic one thing I forgot mentioned is that as #41 shows, the LLVM error is only triggered if MSA is activated. Without MSA, the experimental reduction min/max intrinsics are lowered correctly.

Huh this is messy. I'm guessing that you are targeting mips64r6 because qemu-mips64 supports  MSA only for I6400. The problem is that mips64r6 is not compatible with previous ISA iterations an cannot be linked together.  I guess you would need the something akin to mips64dsp2 target, named mips64msa or something. The  nan2008 error is because mips64r6 is nan2008 by default. Speaking of nan2008, if remember correctly the qemu-mips for cpu P5600 won't accept non nan2008 binaries, so probably there will be issues with running mips32r5 MSA. I have a vague memory that kernel will allow legacy nan binaries to be run on P5600 under  some compatibility option, so mips32r2, MSA binary should be a valid usecase.
Not sure what to do here. I guess that I could fork the qemu and provide changes needed. Is using prebuilt binaries a option. It will take some time before this changes end up in debian qemu package.
Without MSA, the experimental reduction min/max intrinsics are lowered correctly
Yes it gets lowered to scalar instructions. I will update the llvm issue title to reflect that.

I'm guessing that you are targeting mips64r6 because qemu-mips64 supports MSA only for I6400.

IIRC qemu-mips should support MSA with mips32r5, but in qemu-mips64 MSA is only available for mips64r6.

The problem is that mips64r6 is not compatible with previous ISA iterations an cannot be linked together.

I think that the problem here is that I am trying to link mips64r6 with mips64r2 modules. I thought that the solution would be something like passing some option to the linker to link against mips64r6 modules, or choosing a different cross compilation toolchain that provides a linker for mips64r6.
But from the rest of your comment, I think that I misunderstood the issue.

I guess that I could fork the qemu and provide changes needed

Which changes do you mean? I'd guess that if qemu supported MSA for mips64r5, then we wouldn't have the linker issues. But at some point we might want to test mips64r6 anyways, so resolving the linker issues will need to be done anyways?

I think that the problem here is that I am trying to link mips64r6 with mips64r2 modules. I thought that the solution would be something like passing some option to the linker to link against mips64r6 modules, or choosing a different cross compilation toolchain that provides a linker for mips64r6.
No no that's it. I think you can install *-mipsisa64r6el-linux-gnuabi64, libc6-dev-mips64r6-cross etc.  But in the end for it it to work the whole std crate needs to be recompiled because mips64r2 is binary incompatible with mips64r6.

Which changes do you mean?

I meant adding support for mips64r5 with MSA (at first glance it looks easy).

But at some point we might want to test mips64r6 anyways, so resolving the linker issues will need to be done anyways?

I guess. I think that using mips64r6 requires a new target definition for rustc  [mipsisa64r6{el}-linux-gnuabi64].

But in the end for it it to work the whole std crate needs to be recompiled because mips64r2 is binary incompatible with mips64r6.

Ah! Crap. I see what you mean now.

I think that using mips64r6 requires a new target definition for rustc [mipsisa64r6{el}-linux-gnuabi64].

We should do this anyways. Do you want to open an issue about this in rust-lang/rust and cross-reference it from here, or shall I do that?

I meant adding support for mips64r5 with MSA (at first glance it looks easy).

That would be cool. I'd prefer for your patch to be merged in qemu upstream. I can then fetch qemu from source/nightly and use that in the Docker containers, and then we can switch to the latest ubuntu version in those when the changes make it into a release.

We should do this anyways. Do you want to open an issue about this in rust-lang/rust and cross-reference it from here, or shall I do that?

I would be very grateful if you do that.

I'd prefer for your patch to be merged in qemu upstream.

Is using a github fork a valid stopgap option until changes get to qemu upstream?

Is using a github fork a valid stopgap option until changes get to qemu upstream?

Yes, that would be fine. Ideally we would just upload a Docker container with the fork pre-compiled somewhere, so that we don't have to fetch it and compile-time on every travis run, but that can be done.

I would be very grateful if you do that.

Done: https://github.com/rust-lang/rust/issues/52666

Hi I've talked to some people about this issue.
Short story:
There won't be any mips64r5 + MSA hardware. So for mips64 + MSA the only reasonable thing to test is mips64r6 + MSA.
For mips32 the story is a bit complicated. It turns out that NAN2008 (target-feature="+nan2008") is hard requirement for MSA hardware along with FR=1 (target-feature="+fp64"), albeit not enforced by the compiler. When object is build with nan2008, it the taged as such and it is link incompatible with non-nan2008 objects. (There where some plans to make this more lax, but nothing is accepted into upstream binutils so far).
The Debian doesn't ship the nan2008 mips cross toolchain nor it provides nan2008 package builds. I was able to test a mips32r5 + MSA board and they seem to usually run with kernel option which disables checking of nan2008 flag allowing prebuilt non-nan2008 RFS to be run on them.
So defing mips32r5 + MSA - NAN2008 target for QEMU is out of option, but the providing the option for qemu-usermode to disable nan2008 flag checking might be accepted upstream.
Otherwise we would need use custom mips32 target with rebuilt sysroot for nan2008.

What would need to be done to support a mips64r6 target in rustc upstream, and to be able to test the resulting binaries in qemu ? Is there maybe a cross-compilation toolchain that we could use for that?

Hi,
It seems that libraries and qemu are already included in Debian. Unfortunately I wasn't able to find a package build for gcc-mipsisa64r6-linux-gnuabi64. Will IMG LINUX toolchain form https://www.mips.com/develop/tools/codescape-mips-sdk/download-codescape-mips-sdk-essentials/ do work for you? For rustc I'm hopping we would need no more than new target description.

Yes, that toolchain should work. Is there a Dockerimage containing the toolchain somewhere? If not, we can probably just download it in the mips64 Dockerimages and use it.

Hi @gnzlbg,
No, I don't believe so.


Just.framework missing CFBundleVersion when uploading

This only happens if I use the 0.7.0 version.

hi @j-elmer123. Are you using Carthage or CocoaPods?

hi @j-elmer123. Are you using Carthage or CocoaPods?

Hi @dduan
I'm using Carthage

sorry, forgot to add more info.
Yes I am using Xcode 10 and for iOS app

@j-elmer123 I've fixed the issue. Please clear your Carthage cache and build again. Thanks for reporting.

Thanks for reporting! I've also released 0.7.1 which should more permanently fix this.


AddressBookParser: Added manage command

Merge command was accidentally removed during the previous merge.
Added it back to the parser.

Looks good 👍

Coverage decreased (-0.03%) to 78.484% when pulling 454a25c86b6133693f361c9d96fac69a044f4575 on iMarbles:dev into 7344d9c98f4ceda351150317e1517772a16393cb on CS2103-AY1819S1-W16-2:master.


importing agenda items offers inexisting setting

import an agenda item via a CSV file.
in the field "is_hidden" set a '1' to activate it

result: after the import the item is nit listed as agenda item, but when opening the Quick edit you see that the option to display as agenda item is set.

if you do now nothing but to press "update" in the quick edit (without changing anything) the item gets now really displayed as agenda item.

The bug is that for agenda items there is no is_hidden feature. What is instead necessary is to to specify whether an agenda item is displayed in the agenda as such or not.

Should be done with new agenda table. Please retest.

Confirmed fixed. I will document it when the missing translations I mentioned in PR #2742 are in.


add the option to choose the secondary color in custom theme

Describe your suggested feature
In #160(#269) support for choosing main color was added, but secondary color didn't get added in the end, wish for that to happen please
Other details
No response
Acknowledgements

[X] I have searched the existing issues and this is a new ticket, NOT a duplicate or related to another open or closed issue.
[X] I have written a short but informative title.
[X] If this is an issue with an official extension, I should be opening an issue in the extensions repository.
[X] I have updated the app to version 1.11.2.
[X] I will fill out all of the requested information in this form.

Yes, I already planned on support that. Thanks.


Image in the description-component is stretched and torn

Currently, the description component renders a description about a specific thing using the title, subtitle, image, main content as props. The image which is rendered on the screen appears to be a little stretched and torn out as the one described -

This might be due to hard-coded styles applied to the image and needs to be updated to resize it according to images
I am working on this and will soon generate a PR for the same :)

Resolved!


Add Paddle web serving for PP-TSM and PP-TSN

add paddle web serving for PP-TSM and PP-TSN
refine some docs.
add test serving python chain for python serving

LGTM


Textbox context menu doesn't detect touch keyboard presence

Describe the bug
The keyboard goes over the context menu
Steps to reproduce the bug

Add a textbox in the bottom part of the app;
Long press on it while focused in tablet mode or without a keyboard attached

Expected behavior
Firstly open the keyboard, then display the context menu in the right position (over it)
Screenshots

Version Info
NuGet package version:
2.4.2

Windows app type:
Uwp
| :--------------- | :--------------- |

Windows 10 version
Saw the problem?

| May 2020 Update (19041)            |    |

Device form factor
Saw the problem?

Desktop

Additional context
Not needed

Pretty sure no content appears over on-screen keyboards on any OS by design.

I think long press shouldn't open the keyboard, but I was told this is intended (even if I think this behavior is very bad).

Can this be reopened?

@MarcAnt01, thank you for reporting this issue. Unfortunately we are not currently investigating WinUI2 issues that are not business or security critical (more on the policy here).
I tried this out on WinAppSDK 1.5 / WinUI3 Gallery on a SurfaceBook3 with "Show Touch Keyboard" (in Settings) set to "When no keyboard attached", and the issue does not appear to repro. Tapping in the textbox causes the app window to get repositioned such that the textbox is visible above the onscreen keyboard.


Warning of passing a NULL to non-pointer

While building with catkin_make I get a Warning:
spinnaker_sdk_camera_driver/src/camera.cpp:5:13: warning: passing NULL to non-pointer argument 1 of ‘Spinnaker::CameraPtr::CameraPtr(long int)’ [-Wconversion-null]      pCam_ = NULL;
Does not effect usability but isn't clean code or functionality.

This warning started showing up when we moved to c++11.  I couldn't figure out how to do this in a way to avoid the warning other than suppressing Warnings.  If you can think of a better way, please advise.

That's should be an easy fix, by using nullptr instead of NULL.

@Benefe I think I have tried this in the past and it does get rid of the compilation error.  However, if I remember correctly, it throws a runtime error.  Unfortunately I don't have a camera where I am quarantined to try this.  If you have one, can you try and confirm.


Use @actions/tool-cache for caching versions

Currently everything is done using @actions/cache, but @actions/tool-cache seems more appropriate.

Doesn't actually do anything, unfortunately.


code to check if same order exists?

Hi sorry noobie here is there a piece of code that chekcs if a order laready exists for a a market id and a selection id? I cant find it anywere
Thanks for all thsi code btw
Regards

Post on the slack group.


Arachnid rework

About the PR

This is meant to change arachnids (no surprises there). Changes include:

extra hands
ability to produce silk
changed damage modifiers
1.5 oxy damage instead of 1 (or when compared to old arachnids, instead of 2)
slower hunger drain
5 slash damage claws
removal of bloat

Other changes include:

web structures (for fun!)
tarantulas now drop silk

Media

[X] I have added screenshots/videos to this PR showcasing its changes ingame, or this PR does not require an ingame showcase

https://github.com/space-wizards/space-station-14/assets/85175107/9855dad0-afb8-4333-b000-f87c1abe7d8e
https://github.com/space-wizards/space-station-14/assets/85175107/389b89f3-cddf-4a8b-bc3b-a76bcc8f7d5f
Changelog

:cl: PixelTK
tweak: Arachnids have received several changes. Check your local PR station for more details.

PR should be fine now. Let me know if it's not.

For your information, it was not ok. I forgot to commit like 10 things

i trust that youll keep up on balance with this, sericulture all being defined in prototype is good, LG2M

Can moths eat silk?

Lol, they were already incredibly broken, but you decided to go all the way.

Great feedback.


Fix helm chart cronjob command

The base image for the kosli cli image is now a scratch image and does not have /bin/sh.
This changes the cronjob in the helm chart to use the correct syntax for our image and use /bin/kosli directly.

closed in favour of #141


assert part.status == 'finished'  AssertionError

See for setup details: #6232
Trying out mulitnode xgboost with dask, hitting this problem right away.  I have no errors with dask setup and dashboard looks good, but hitting this:
2020-11-09 23:50:03,150 C: 20% D:76.5GB  M:88.0GB  NODE:LOCAL1      13813  DATA   |   File "/data/jon/h2oai.fullcondatest3/h2oaicore/models.py", line 7076, in dask_fit
2020-11-09 23:50:03,151 C: 20% D:76.5GB  M:88.0GB  NODE:LOCAL1      13813  DATA   |     func(X, y, **kwargs_dask)
2020-11-09 23:50:03,151 C: 20% D:76.5GB  M:88.0GB  NODE:LOCAL1      13813  DATA   |   File "/home/jon/minicondadai/lib/python3.6/site-packages/xgboost/dask.py", line 1080, in fit
2020-11-09 23:50:03,152 C: 20% D:76.5GB  M:88.0GB  NODE:LOCAL1      13813  DATA   |     eval_set, sample_weight_eval_set, verbose)
2020-11-09 23:50:03,152 C: 20% D:76.5GB  M:88.0GB  NODE:LOCAL1      13813  DATA   |   File "/home/jon/minicondadai/lib/python3.6/site-packages/distributed/client.py", line 824, in sync
2020-11-09 23:50:03,152 C: 20% D:76.5GB  M:88.0GB  NODE:LOCAL1      13813  DATA   |     self.loop, func, *args, callback_timeout=callback_timeout, **kwargs
2020-11-09 23:50:03,153 C: 20% D:76.5GB  M:88.0GB  NODE:LOCAL1      13813  DATA   |   File "/home/jon/minicondadai/lib/python3.6/site-packages/distributed/utils.py", line 339, in sync
2020-11-09 23:50:03,153 C: 20% D:76.5GB  M:88.0GB  NODE:LOCAL1      13813  DATA   |     raise exc.with_traceback(tb)
2020-11-09 23:50:03,154 C: 20% D:76.5GB  M:88.0GB  NODE:LOCAL1      13813  DATA   |   File "/home/jon/minicondadai/lib/python3.6/site-packages/distributed/utils.py", line 323, in f
2020-11-09 23:50:03,154 C: 20% D:76.5GB  M:88.0GB  NODE:LOCAL1      13813  DATA   |     result[0] = yield future
2020-11-09 23:50:03,154 C: 20% D:76.5GB  M:88.0GB  NODE:LOCAL1      13813  DATA   |   File "/home/jon/minicondadai/lib/python3.6/site-packages/tornado/gen.py", line 735, in run
2020-11-09 23:50:03,155 C: 20% D:76.5GB  M:88.0GB  NODE:LOCAL1      13813  DATA   |     value = future.result()
2020-11-09 23:50:03,155 C: 20% D:76.5GB  M:88.0GB  NODE:LOCAL1      13813  DATA   |   File "/home/jon/minicondadai/lib/python3.6/site-packages/xgboost/dask.py", line 1046, in _fit_async
2020-11-09 23:50:03,156 C: 20% D:76.5GB  M:88.0GB  NODE:LOCAL1      13813  DATA   |     missing=self.missing)
2020-11-09 23:50:03,156 C: 20% D:76.5GB  M:88.0GB  NODE:LOCAL1      13813  DATA   |   File "/home/jon/minicondadai/lib/python3.6/site-packages/xgboost/dask.py", line 286, in map_local_data
2020-11-09 23:50:03,157 C: 20% D:76.5GB  M:88.0GB  NODE:LOCAL1      13813  DATA   |     assert part.status == 'finished'
2020-11-09 23:50:03,157 C: 20% D:76.5GB  M:88.0GB  NODE:LOCAL1      13813  DATA   | AssertionError

What does this mean? @teju85
I'm running same kind of example as here: https://github.com/dmlc/xgboost/issues/6280
but this time I'm not using the local cuda client, and instead I'm using the CLI for dask-cuda-worker.
Here's cluster from dask dashboard, all healthy:

Nothing in logs shows any problems with dask, just xgboost fails.
Perhaps there is some limitation I'm hitting?
E.g. Only thing "odd" is I'm using 3 2-GPU nodes and 1 1-GPU node together in a single dask cluster.  dask doesn't care, but maybe xgboost cannot handle?
I'm just guessing, but would be good to understand reason for that xgboost error.

E.g. Only thing "odd" is I'm using 3 2-GPU nodes and 1 1-GPU node together in a single dask cluster. dask doesn't care, but maybe xgboost cannot handle?

The assertion is just checking all computation prior to xgboost is done.

I think this is an issue in early pipeline.  Can you try to persist and wait for the data before constructing DaskDMatrix?

I'm closing this for now.  Feel free to reopen when there's a reproducible example.  So far I believe it's due to early pipeline error as the status xgboost's checking is the status of data partition.  No computation in xgboost is performed yet at this stage.  Lazy evaluation can delay the early error into xgboost DMatrix.


[fix] #4065: Prevent pub key spoofing in p2p

Description
Instead of sending just pub key it's now required to send pub key + signature of shared session key to prove ownership of this public key in order to prevent spoofing.

Linked issue

Closes #4065

Benefits
Security bug resolved.

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

2 of 37 (5.41%)  changed or added relevant lines in 3 files are covered.
6933 unchanged lines in 129 files lost coverage.
Overall coverage decreased (-3.2%) to 56.274%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

p2p/src/network.rs
0
2
0.0%

p2p/src/peer.rs
0
33
0.0%

Files with Coverage Reduction
New Missed Lines
%

config/base/derive/src/view.rs
1
99.37%

config/src/block_sync.rs
1
95.0%

config/src/network.rs
1
93.75%

config/src/torii.rs
1
95.45%

config/src/wasm.rs
1
87.5%

core/src/smartcontracts/isi/block.rs
1
87.5%

config/src/kura.rs
2
79.41%

config/src/lib.rs
2
0.0%

ffi/src/option.rs
2
71.43%

config/src/genesis.rs
3
72.92%

Totals

Change from base Build<PHONE_NUMBER>:
-3.2%

Covered Lines:
23001

Relevant Lines:
40873

💛  - Coveralls

and it's not usually done this way

i'm open to your suggestions if you have smt on your mind

I realized that we already have unique shared value called disambiguator which was previously used to decide which of simultaneous connections to preserve.
So i will just use it instead of directly hash of session key.

Looked at what TLS does for a bit:
In 1.2 they server signs various parts of the key-exchange process, but not the key itself: https://github.com/rustls/rustls/blob/1db4506dcfeb4a08b5517eafba84f16084321786/rustls/src/client/tls12.rs#L724-L726. Client's signature verification seems like a kludge, it just signs all the handshake messages: https://datatracker.ietf.org/doc/html/rfc5246#section-7.4.8
In 1.3 they tried to mitigate some attacks regarding tricking the server into signing some partially-controlled data, so they came up with a pretty contrived scheme, but made it symmetric at least: https://datatracker.ietf.org/doc/html/rfc8446#section-4.4.3
In case of iroha, I think the scheme of 1.2 would make sense? In our case it would just signing the public keys used in kx (local_public_key and remote_public_key)

I realized that we already have unique shared value called disambiguator which was previously used to decide which of simultaneous connections to preserve.
So i will just use it instead of directly hash of session key.

It's only 64 bit.. I don't think it's a good idea to rely on it for security

In case of iroha, I think the scheme of 1.2 would make sense? In our case it would just signing the public keys used in kx (local_public_key and remote_public_key)

Yeah, this make sense, i will do that.


Program not deployin

A friend said it works on his computer but on mine, it does not turn on

I am having the opposite problem, this app is deploying for me and I can’t work out how to stop it.

I am having the opposite problem, this app is deploying for me and I can’t work out how to stop it.

Restart it and it will close by itself

I found the problem, it requires a .NET 0.0 installation. Already sent an issue post asking them to make it clearer.

@MattyBalaam my problem is fixed is yours too, can i close this issue?

@MattyBalaam my problem is fixed is yours too, can i close this issue?

I needed to throw my server in the sea to fix my issue, so I now have no way to reproduce. Suggest you close this off and I can create a new issue if I see the issue on my smart fridge.


[DOC] Updation of contributing.md file

File needs to be in following way
Wanted to do the following changes :-
How to contribute (fix bugs, add features)
Steps for submitting changes
Project setup instructions
Rules for code style
Code of conduct for respectful behavior
Enhance the project structure
Add the help and support section
Add the pull request section
Add issue report process section
Also, by adding some symbols file looks more creative.

Hey @Nikhil0-3 , someone is already working on this issue. Feel free to explore the project and raise any new issues!


model: Move features from init of ModelContext to Model

Right now, features are passed to the __init__ method of ModelContext subclasses. Instead, lets make features a part of the config of a dffml.model.model.Model class.

few doubts  :

So after moving it to  config of model we'll be passing features like this ->

dffml train \
-model tfdnnr\
-model-features\
            def:Feature1:float:1 \
            def:Feature2:float:1 \

is this the intented result?
2. Since there is a super().__init__(parent, features) in almost all the ModelContexts ,they need to be changed rit?

@aghinsa Great!
I'm going to preface this with if #228 gets done first, this would be a lot less work.

Yes that is what it will look like on the command line.
Yes, That will need to be changed.
The way it works right now is that features is set from the CLI command (which subclasses from the FeaturesCMD CLI command class):
https://github.com/intel/dffml/blob/50b37429822996d20604c524a3cfc3f802eb1065/dffml/util/cli/cmds.py#L83-L89
That Arg(...) will need to be moved into the args() classmethod of each model, for example:
https://github.com/intel/dffml/blob/50b37429822996d20604c524a3cfc3f802eb1065/model/tensorflow/dffml_model_tensorflow/dnnc.py#L426-L436
A features property of type dffml.feature.feature.Features needs to be added to the ...ModelConfig class of each model, for example:
https://github.com/intel/dffml/blob/50b37429822996d20604c524a3cfc3f802eb1065/model/tensorflow/dffml_model_tensorflow/dnnc.py#L91-L98
Then it needs to be retrieved in the config() classmethod of each model, for example:
https://github.com/intel/dffml/blob/50b37429822996d20604c524a3cfc3f802eb1065/model/tensorflow/dffml_model_tensorflow/dnnc.py#L494-L502
Everywhere self.features is used in a ModelContext use self.parent.config.features (This is not always true, some models change self.features to the subset of applicable features).

If  #228 gets done first, this task pretty much becomes 2, 5, & 7

Ohkay.I'll start with scikit models and for tf models i'll wait till you have merged tfdnnr,sounds okay?

In addition to model.ModelConfig, you'll need to add features to
model/scikit 1
https://github.com/intel/dffml/blob/50b37429822996d20604c524a3cfc3f802eb1065/model/scikit/dffml_model_scikit/scikit_models.py#L106
model/scikit 2
https://github.com/intel/dffml/blob/50b37429822996d20604c524a3cfc3f802eb1065/model/scikit/dffml_model_scikit/scikit_models.py#L117-L138
model/scikit 3
https://github.com/intel/dffml/blob/50b37429822996d20604c524a3cfc3f802eb1065/model/scikit/dffml_model_scikit/scikit_models.py#L156-L160
model/scratch 1
https://github.com/intel/dffml/blob/50b37429822996d20604c524a3cfc3f802eb1065/model/scratch/dffml_model_scratch/slr.py#L23-L25
model/scratch 2
https://github.com/intel/dffml/blob/50b37429822996d20604c524a3cfc3f802eb1065/model/scratch/dffml_model_scratch/slr.py#L216-L242
model/tensorflow 1
https://github.com/intel/dffml/blob/50b37429822996d20604c524a3cfc3f802eb1065/model/tensorflow/dffml_model_tensorflow/dnnc.py#L90-L101
model/tensorflow 2
https://github.com/intel/dffml/blob/50b37429822996d20604c524a3cfc3f802eb1065/model/tensorflow/dffml_model_tensorflow/dnnc.py#L424-L502

Oh!My bad,i had missed the first one .

@pdxjohnny i made the changes for scikit,tensorflow,scratch and corresponding test_cases and all of them passed.But test_cli is failing and i'm not sure what all to change.
python3.7 setup.py test -s tests/test_cli.py.
running test
running egg_info
writing dffml.egg-info/PKG-INFO
writing dependency_links to dffml.egg-info/dependency_links.txt
writing entry points to dffml.egg-info/entry_points.txt
writing requirements to dffml.egg-info/requires.txt
writing top-level names to dffml.egg-info/top_level.txt
reading manifest file 'dffml.egg-info/SOURCES.txt'
reading manifest template 'MANIFEST.in'
writing manifest file 'dffml.egg-info/SOURCES.txt'
running build_ext
test_run (tests.test_cli.TestAccuracy) ... /home/aghinsa/Documents/workspace/prep/global/dffml/dffml/source/json.py:79: DeprecationWarning: dict method will be removed in favor of export
  repo.src_url: repo.dict() for repo in self.mem.values()
ERROR
test_run (tests.test_cli.TestEvaluateAll) ... ERROR
test_run (tests.test_cli.TestEvaluateRepo) ... ERROR
test_run (tests.test_cli.TestListRepos) ... ok
test_csv_label (tests.test_cli.TestMerge) ... /home/aghinsa/Documents/workspace/prep/global/dffml/dffml/source/csv.py:217: DeprecationWarning: dict method will be removed in favor of export
  repo_data = repo.dict()
ok
test_json_label (tests.test_cli.TestMerge) ... ok
test_json_to_csv (tests.test_cli.TestMerge) ... ok
test_run (tests.test_cli.TestOperationsAll) ... ok
test_run (tests.test_cli.TestOperationsRepo) ... ok
test_run (tests.test_cli.TestPredictAll) ... ERROR
test_run (tests.test_cli.TestPredictRepo) ... ERROR
test_run (tests.test_cli.TestTrain) ... ERROR

======================================================================
ERROR: test_run (tests.test_cli.TestAccuracy)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/aghinsa/Documents/workspace/prep/global/dffml/dffml/util/asynctestcase.py", line 46, in run_it
    result = self.loop.run_until_complete(coro(*args, **kwargs))
  File "/usr/local/lib/python3.7/asyncio/base_events.py", line 579, in run_until_complete
    return future.result()
  File "/home/aghinsa/Documents/workspace/prep/global/dffml/tests/test_cli.py", line 420, in test_run
    Accuracy.arg_features.modify(type=feature_load),
AttributeError: type object 'Accuracy' has no attribute 'arg_features'

======================================================================
ERROR: test_run (tests.test_cli.TestEvaluateAll)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/aghinsa/Documents/workspace/prep/global/dffml/dffml/util/asynctestcase.py", line 46, in run_it
    result = self.loop.run_until_complete(coro(*args, **kwargs))
  File "/usr/local/lib/python3.7/asyncio/base_events.py", line 579, in run_until_complete
    return future.result()
  File "/home/aghinsa/Documents/workspace/prep/global/dffml/tests/test_cli.py", line 358, in test_run
    "fake",
  File "/home/aghinsa/Documents/workspace/prep/global/dffml/dffml/util/cli/cmd.py", line 151, in cli
    return [res async for res in cmd.run()]
  File "/home/aghinsa/Documents/workspace/prep/global/dffml/dffml/util/cli/cmd.py", line 151, in <listcomp>
    return [res async for res in cmd.run()]
  File "/home/aghinsa/Documents/workspace/prep/global/dffml/dffml/cli.py", line 366, in run
    async with self.sources as sources, self.features as features:
AttributeError: 'EvaluateAll' object has no attribute 'features'

======================================================================
ERROR: test_run (tests.test_cli.TestEvaluateRepo)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/aghinsa/Documents/workspace/prep/global/dffml/dffml/util/asynctestcase.py", line 46, in run_it
    result = self.loop.run_until_complete(coro(*args, **kwargs))
  File "/usr/local/lib/python3.7/asyncio/base_events.py", line 579, in run_until_complete
    return future.result()
  File "/home/aghinsa/Documents/workspace/prep/global/dffml/tests/test_cli.py", line 382, in test_run
    *subset_urls,
  File "/home/aghinsa/Documents/workspace/prep/global/dffml/dffml/util/cli/cmd.py", line 151, in cli
    return [res async for res in cmd.run()]
  File "/home/aghinsa/Documents/workspace/prep/global/dffml/dffml/util/cli/cmd.py", line 151, in <listcomp>
    return [res async for res in cmd.run()]
  File "/home/aghinsa/Documents/workspace/prep/global/dffml/dffml/cli.py", line 366, in run
    async with self.sources as sources, self.features as features:
AttributeError: 'EvaluateRepo' object has no attribute 'features'

======================================================================
ERROR: test_run (tests.test_cli.TestPredictAll)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/aghinsa/Documents/workspace/prep/global/dffml/dffml/util/asynctestcase.py", line 46, in run_it
    result = self.loop.run_until_complete(coro(*args, **kwargs))
  File "/usr/local/lib/python3.7/asyncio/base_events.py", line 579, in run_until_complete
    return future.result()
  File "/home/aghinsa/Documents/workspace/prep/global/dffml/tests/test_cli.py", line 444, in test_run
    PredictAll.arg_features.modify(type=feature_load),
AttributeError: type object 'PredictAll' has no attribute 'arg_features'

======================================================================
ERROR: test_run (tests.test_cli.TestPredictRepo)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/aghinsa/Documents/workspace/prep/global/dffml/dffml/util/asynctestcase.py", line 46, in run_it
    result = self.loop.run_until_complete(coro(*args, **kwargs))
  File "/usr/local/lib/python3.7/asyncio/base_events.py", line 579, in run_until_complete
    return future.result()
  File "/home/aghinsa/Documents/workspace/prep/global/dffml/tests/test_cli.py", line 473, in test_run
    PredictRepo.arg_features.modify(type=feature_load),
AttributeError: type object 'PredictRepo' has no attribute 'arg_features'

======================================================================
ERROR: test_run (tests.test_cli.TestTrain)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/aghinsa/Documents/workspace/prep/global/dffml/dffml/util/asynctestcase.py", line 46, in run_it
    result = self.loop.run_until_complete(coro(*args, **kwargs))
  File "/usr/local/lib/python3.7/asyncio/base_events.py", line 579, in run_until_complete
    return future.result()
  File "/home/aghinsa/Documents/workspace/prep/global/dffml/tests/test_cli.py", line 399, in test_run
    Train, "arg_features", Train.arg_features.modify(type=feature_load)
AttributeError: type object 'Train' has no attribute 'arg_features'

----------------------------------------------------------------------
Ran 12 tests in 0.037s

FAILED (errors=6)
Test failed: <unittest.runner.TextTestResult run=12 errors=6 failures=0>
error: Test failed: <unittest.runner.TextTestResult run=12 errors=6 failures=0>

from the looks of it, TestEvaluateAll,TestEvaluateRepo doesn't depend on any model ,did i get that wrong?if not,then how do we pass model.config?


minor mistakes in code

we have added choice as 'Just hacking again' but c = q.choice_set.filter(choice_text__startswith='Just hacking') doesn't work after c.delete().

I don't see any issue in this example.


YJDH-404 | KS-Backend: Fix migration conflicts

Description :sparkles:
This migration conflict was caused by merging PR #579 into develop.
Fixes YJDH-404
Issues :bug:
YJDH-404
Testing :alembic:
Screenshots :camera_flash:
Additional notes :spiral_notepad:

After discussing and debugging with @nenonja the failing tests it seems the browser tests are trying to do real login instead of mock login. This should not happen in review environment, so that is most likely a separate problem already present in develop.
Merging as is to fix the migrations in develop.


Make it more clear that mb.help is a thing

how tho

I guess we could sometimes set the status to "mb.help"? Maybe also do "mb.invite" sometimes


Allow sidepanel to be blocking

Wave SDK Version, OS
(e.g. 0.18.0, OSx)
Actual behavior
When a user interaction on a dialog box on top of ui.sde_panel, ui.side_panel closes immediately. If ui.side_panel configured to fire a dismissed event, dismissed event also triggered. So ui.side_panel' dismissed event is also hard to handle.
https://user-images.githubusercontent.com/25351304/139196754-da60423f-9ddc-41b4-9bce-4dc08808713a.mov
Expected behavior
I think it is best to close ui.side_panel only if a certain action executes q.page['meta'].side_panel = None or clicking on Side Panel's close button. So dismissed event wont trigger unexpectedly
Steps To Reproduce
# Meta / SidePanel
# Display a #sidePanel. #meta
# ---
from h2o_wave import main, app, Q, ui

@app('/demo')
async def serve(q: Q):
    if not q.client.initialized:
        q.page['meta'] = ui.meta_card(box='')
        q.page['example'] = ui.form_card(box='1 1 11 10', items=[
            ui.button(name='show_side_panel', label='Order donuts', primary=True)
        ])
        q.client.initialized = True
    else:
        if q.args.show_side_panel:
            q.page['meta'].side_panel = ui.side_panel(title='Welcome to store', items=[
                ui.text('Donuts cost $1.99. Proceed?'),
                ui.buttons([ui.button(name='next_step', label='Next', primary=True)])
            ])
        elif q.args.next_step:
            q.page['meta'].dialog = ui.dialog(
                title='my_dialog',
                items=[
                    ui.text('You will be charged $1.99. Proceed?'),
                    ui.buttons([
                        ui.button(name='cancel', label='Back to safety'),
                        ui.button(name='submit', label='Place order', primary=True),
                    ])
                ]
            )
        elif q.args.submit:
            q.page['example'].items = [ui.message_bar('success', 'Order placed!')]
            q.page['meta'].dialog = None
            q.page['meta'].side_panel = None

        elif q.args.cancel:
            q.page['example'].items = [ui.message_bar('info', 'Order canceled!')]
            q.page['meta'].dialog = None

    await q.page.save()

The issue is resolved by adding blocking property to side panel. Now the dismissed event is not triggered when clicking outside of side panel when blocking=True is specified. However the new implementation won't work for your specific example where side panel is overlapped by dialog. You should avoid implementing multiple overlays in your application as @mturoci has mentioned.
The blocking property works as follows:
True to prevent closing when clicking or tapping outside the side panel. Prevents interacting with the page behind the side panel. Defaults to False.
See the examples below:

blocking=False (default)
https://user-images.githubusercontent.com/23740173/149329423-6e639d94-c908-4ee5-b8c8-fed3d47ae230.mov

blocking=True
https://user-images.githubusercontent.com/23740173/149329460-6728331e-8d20-4265-96ea-9533d0499f25.mov

Please note that the changes were made also to dialog where already existing blocking property now matches the same behaviour as on side panel examples above.
Now the dialog's blocking property works as follows:
True to prevent closing when clicking or tapping outside the dialog. Prevents interacting with the page behind the dialog. Defaults to False.


should add Moment to type definition

as in the docs, set can get  Moment object as input.
should update d.ts

why did you close it?
this is the code:
export function set(date: string | number): void {
...
}

there is no Moment on the function declaration.
and the README says:
MockDate.set(moment('3/30/2000')); // using momentjs

Sorry I missed that. I just updated the documentation to be correct, which is MockDate.set(moment().valueOf()).


API reference on readthedocs

Hello everyone!
Could the API reference page on readthedocs  include the real description the API? At the moment it has no content - only modules hedlines.
Sincerely
Arek

Hey @NoneGG!
Thank you for your response. I don't have any problem with any specific command. Just wanted to make documentation on readthedocks not having so many empty places. Having said that, maybe it would be a good idea to remove those parts from Sphinks generated docs. We should provide a valuable info for our users or skip a doc page at all.
Cheers!
Arek

@halicki
You are right, i will try to optimize this part of doc~
Thank you for your advice.

@halicki
Thank you again for your advice~
New issue is welcomed if you have any other advice.


MLModel conda env not respected in mlflow pyfunc

Describe the problem
The MLMode provides an optional env property  to specify the conda env for model to run. However, this feature is not implemented in the mlflow pyfunc predict or mlflow pyfunc serve.

env in MLmodel
https://github.com/databricks/mlflow/blob/da776472afb638934ed65b7f1422792da4e9c9fe/mlflow/pyfunc/__init__.py#L48

Feedback needed
I would love to contribute a patch to fix the problem but I'd like to know the desired approach to handle this.
My proposed approach is

check current conda env vs desired conda env,

if identical, proceed to run as it is now.
if not, new conda env is created from the provided yaml (as in MLproject).

install mlflow in the newly created env
rerun the CLI in new conda env using os.system('conda activate {desired_conda_env}; {sys.argv}')

Hi Owu. Thanks for pointing this out. We were planning to address this some time soon but if you would like to contribute this change we would definitely appreciate it!
Your approach seems reasonable. I have two comments:

I would not worry about detecting current conda environment. Activating conda environment is fast, the important part is to skip the creation of a new one.  There is already code for handling that, check
https://github.com/databricks/mlflow/blob/cdc796c4ca33e5fbe27fd015df45483be378b4c0/mlflow/projects/__init__.py#L260, you should be able to use that.

Please add no-conda flag to pyfunc calls.

I would consider following workflow:
if the model has conda environment defined and no-conda option is not set:
- check (and create) if you need to create new environment using the code pointed above
- spawn a new process in which you activate desired environment and launch the same mlflow cli command with no-conda option
else run as it is now
Please let us know if you start working on it.

@tomasatdatabricks  PR submitted,  feedback welcome